diff -pruN 3.20.0-2/History.rdoc 3.21.1-1/History.rdoc
--- 3.20.0-2/History.rdoc	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/History.rdoc	2024-08-22 09:52:50.000000000 +0000
@@ -1,3 +1,65 @@
+=== 3.21.1 / 2024-07-09
+
+* 1 bug fix:
+
+  * Fix errors created when string literals are frozen.
+
+=== 3.21.0 / 2024-01-15
+
+* 18 minor enhancements:
+
+  * (internal) Added simple RubyLexer#comment.
+  * (internal) Removed RubyLexer#comments and #ignore_body_comments.
+  * (internal) Removed RubyParser#comments.
+  * (internal) Renamed files from lib/ruby##_parser.* to lib/ruby_parser##.*
+  * (internal) Renamed lib/ruby3_parser.yy to lib/ruby_parser3.yy
+  * (internal) Renamed lib/ruby_parser.yy to lib/ruby_parser2.yy
+  * Added tentative 3.2 support. (torrocus)
+  * Made `rake compare` a multitask (28s -> 10s!!).
+  * Made `rake compare` depend on `generate` (from clean: 28s -> 18s).
+  * No longer package versioned .y files.
+  * Overhaul of parser/lexer comment processing.
+  * Parser productions for k_class/k_module/k_def carry their comment with them.
+  * Restructured build tasks to utilize Hoe's .yy support! 8.5s -> 1.2s!!!
+  * RubyParser new_(class|module|defn|defs) handle comment processing via sexp.
+  * RubyParser new_(class|module|defn|defs) handle normalizing production sexps.
+  * RubyParser#next_token clears out lexer's comment when applicable.
+  * Simplified parser productions for defn_head, defs_head. No more normalizing.
+  * Updated `rake compare` steps for lrama in ruby 3.3+.
+
+* 6 bug fixes:
+
+  * Cleaned out cruft from `rake compare` code.
+  * Fixed compare/normalize.rb for lrama differences.
+  * Made `parser` task depend on `isolate` task to pick up racc generator.
+  * Made racc a runtime dependency (was dev only) now that ruby 3.3 doesn't ship with the racc runtime. (wildmaples)
+  * Updated README.rdoc updating instructions to match current filenames.
+  * Updated compare versions and added 3.3.
+
+=== 3.20.3 / 2023-07-11
+
+* 2 minor enhancements:
+
+  * Added Parser#in_argdef and integrated into 3.x parsers.
+  * Improved tools/munge.rb to handler MRI 3.2 output
+
+* 2 bug fixes:
+
+  * Fixed process_dots to properly deal with paren-less forward_args. (eric1234)
+  * Fixed tools/ripper.rb to properly print ripper sexp at the end
+
+=== 3.20.2 / 2023-06-06
+
+* 1 bug fix:
+
+  * 3.2: fixed parsing of f(*) and f(**). (agrobbin)
+
+=== 3.20.1 / 2023-05-16
+
+* 1 minor enhancement:
+
+  * Fixes Sexp#line_max in parser for many constructs: paren_args, arrays of various sorts, calls, classes, modules, etc.
+
 === 3.20.0 / 2023-03-04
 
 * 1 major enhancement:
diff -pruN 3.20.0-2/Manifest.txt 3.21.1-1/Manifest.txt
--- 3.20.0-2/Manifest.txt	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/Manifest.txt	2024-08-22 09:52:50.000000000 +0000
@@ -11,35 +11,25 @@ gauntlet.md
 lib/.document
 lib/rp_extensions.rb
 lib/rp_stringscanner.rb
-lib/ruby20_parser.rb
-lib/ruby20_parser.y
-lib/ruby21_parser.rb
-lib/ruby21_parser.y
-lib/ruby22_parser.rb
-lib/ruby22_parser.y
-lib/ruby23_parser.rb
-lib/ruby23_parser.y
-lib/ruby24_parser.rb
-lib/ruby24_parser.y
-lib/ruby25_parser.rb
-lib/ruby25_parser.y
-lib/ruby26_parser.rb
-lib/ruby26_parser.y
-lib/ruby27_parser.rb
-lib/ruby27_parser.y
-lib/ruby30_parser.rb
-lib/ruby30_parser.y
-lib/ruby31_parser.rb
-lib/ruby31_parser.y
-lib/ruby32_parser.rb
-lib/ruby32_parser.y
-lib/ruby3_parser.yy
 lib/ruby_lexer.rb
 lib/ruby_lexer.rex
 lib/ruby_lexer.rex.rb
 lib/ruby_lexer_strings.rb
 lib/ruby_parser.rb
-lib/ruby_parser.yy
+lib/ruby_parser2.yy
+lib/ruby_parser20.rb
+lib/ruby_parser21.rb
+lib/ruby_parser22.rb
+lib/ruby_parser23.rb
+lib/ruby_parser24.rb
+lib/ruby_parser25.rb
+lib/ruby_parser26.rb
+lib/ruby_parser27.rb
+lib/ruby_parser3.yy
+lib/ruby_parser30.rb
+lib/ruby_parser31.rb
+lib/ruby_parser32.rb
+lib/ruby_parser33.rb
 lib/ruby_parser_extras.rb
 test/test_ruby_lexer.rb
 test/test_ruby_parser.rb
diff -pruN 3.20.0-2/README.rdoc 3.21.1-1/README.rdoc
--- 3.20.0-2/README.rdoc	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/README.rdoc	2024-08-22 09:52:50.000000000 +0000
@@ -65,15 +65,15 @@ You can also use Ruby19Parser, Ruby18Par
 
 To add a new version:
 
-* New parser should be generated from lib/ruby[3]_parser.yy.
-* Extend lib/ruby[3]_parser.yy with new class name.
+* New parser should be generated from lib/ruby_parser[23].yy.
+* Extend lib/ruby_parser[23].yy with new class name.
 * Add new version number to V2/V3 in Rakefile for rule creation.
 * Add new `ruby_parse "x.y.z"` line to Rakefile for rake compare (line ~300).
 * Require generated parser in lib/ruby_parser.rb.
 * Add new V## = ::Ruby##Parser; end to ruby_parser.rb (bottom of file).
 * Add empty TestRubyParserShared##Plus module and TestRubyParserV## to test/test_ruby_parser.rb.
 * Extend Manifest.txt with generated file names.
-* Add new version number to sexp_processor's pt_testcase.rb in all_versions
+* Add new version number to sexp_processor's pt_testcase.rb in all_versions.
 
 Until all of these are done, you won't have a clean test run.
 
diff -pruN 3.20.0-2/Rakefile 3.21.1-1/Rakefile
--- 3.20.0-2/Rakefile	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/Rakefile	2024-08-22 09:52:50.000000000 +0000
@@ -1,6 +1,5 @@
 # -*- ruby -*-
 
-require "rubygems"
 require "hoe"
 
 Hoe.plugin :seattlerb
@@ -15,38 +14,34 @@ Hoe.add_include_dirs "../../oedipus_lex/
 Hoe.add_include_dirs "../../ruby2ruby/dev/lib"
 
 V2   = %w[20 21 22 23 24 25 26 27]
-V3   = %w[30 31 32]
+V3   = %w[30 31 32 33]
 
 VERS = V2 + V3
 
 ENV["FAST"] = VERS.last if ENV["FAST"] && !VERS.include?(ENV["FAST"])
 VERS.replace [ENV["FAST"]] if ENV["FAST"]
 
+racc_flags = nil
+
 Hoe.spec "ruby_parser" do
   developer "Ryan Davis", "ryand-ruby@zenspider.com"
 
   license "MIT"
 
-  dependency "sexp_processor", "~> 4.16"
-  dependency "rake", [">= 10", "< 15"], :developer
-  dependency "oedipus_lex", "~> 2.6", :developer
-
-  # NOTE: Ryan!!! Stop trying to fix this dependency! Isolate just
-  # can't handle having a faux-gem half-installed! Stop! Just `gem
-  # install racc` and move on. Revisit this ONLY once racc-compiler
-  # gets split out.
-
-  dependency "racc", "~> 1.5", :developer
+  dependency "sexp_processor", "~>  4.16"
+  dependency "racc",           "~>  1.5"
+  dependency "rake",           [">= 10",  "< 15"], :developer
+  dependency "oedipus_lex",    "~>  2.6", :developer
 
   require_ruby_version [">= 2.6", "< 4"]
 
   if plugin? :perforce then     # generated files
     VERS.each do |n|
-      self.perforce_ignore << "lib/ruby#{n}_parser.rb"
+      self.perforce_ignore << "lib/ruby_parser#{n}.rb"
     end
 
     VERS.each do |n|
-      self.perforce_ignore << "lib/ruby#{n}_parser.y"
+      self.perforce_ignore << "lib/ruby_parser#{n}.y"
     end
 
     self.perforce_ignore << "lib/ruby_lexer.rex.rb"
@@ -55,7 +50,7 @@ Hoe.spec "ruby_parser" do
   if plugin?(:racc)
     self.racc_flags << " -t" if ENV["DEBUG"]
     self.racc_flags << " --superclass RubyParser::Parser"
-    # self.racc_flags << " --runtime ruby_parser" # TODO: broken in racc
+    racc_flags = self.racc_flags
   end
 end
 
@@ -84,34 +79,30 @@ def unifdef?
   EOM
 end
 
-V2.each do |n|
-  file "lib/ruby#{n}_parser.y" => "lib/ruby_parser.yy" do |t|
-    unifdef?
-    cmd = 'unifdef -tk -DV=%s -UDEAD %s > %s || true' % [n, t.source, t.name]
-    sh cmd
-  end
+def racc?
+  @racc ||= system("which racc") or abort <<~EOM
+    racc not found! `gem install racc`
+  EOM
+end
 
-  file "lib/ruby#{n}_parser.rb" => "lib/ruby#{n}_parser.y"
+generate_parser = proc do |t|
+  unifdef?
+  racc?
+  n = t.name[/\d+/]
+  sh "unifdef -tk -DV=%s %s | racc %s /dev/stdin -o %s" % [n, t.source, racc_flags, t.name]
+  maybe_add_to_top t.name, "# frozen_string_literal: true"
 end
 
-V3.each do |n|
-  file "lib/ruby#{n}_parser.y" => "lib/ruby3_parser.yy" do |t|
-    unifdef?
-    cmd = 'unifdef -tk -DV=%s -UDEAD %s > %s || true' % [n, t.source, t.name]
-    sh cmd
-  end
+V2.each do |n|
+  file "lib/ruby_parser#{n}.rb" => "lib/ruby_parser2.yy", &generate_parser
+end
 
-  file "lib/ruby#{n}_parser.rb" => "lib/ruby#{n}_parser.y"
+V3.each do |n|
+  file "lib/ruby_parser#{n}.rb" => "lib/ruby_parser3.yy", &generate_parser
 end
 
 file "lib/ruby_lexer.rex.rb" => "lib/ruby_lexer.rex"
 
-task :parser do |t|
-  t.prerequisite_tasks.grep(Rake::FileTask).select(&:already_invoked).each do |f|
-    maybe_add_to_top f.name, "# frozen_string_literal: true"
-  end
-end
-
 task :generate => [:lexer, :parser]
 
 task :clean do
@@ -119,8 +110,8 @@ task :clean do
         Dir["diff.diff"] + # not all diffs. bit me too many times
         Dir["coverage.info"] +
         Dir["coverage"] +
-        Dir["lib/ruby2*_parser.y"] +
-        Dir["lib/ruby3*_parser.y"] +
+        Dir["lib/ruby_parser2*.y"] +
+        Dir["lib/ruby_parser3*.y"] +
         Dir["lib/*.output"])
 end
 
@@ -140,74 +131,78 @@ end
 
 task :isolate => :phony
 
-def in_compare
-  Dir.chdir "compare" do
-    yield
-  end
-end
-
-def dl v
+def dl v, f
   dir = v[/^\d+\.\d+/]
   url = "https://cache.ruby-lang.org/pub/ruby/#{dir}/ruby-#{v}.tar.xz"
-  path = File.basename url
-  unless File.exist? path then
-    system "curl -O #{url}"
-  end
+
+  warn "Downloading ruby #{v}"
+  system "curl -s -o #{f} #{url}"
 end
 
+task :parser => :isolate
+
+multitask :compare_build
+task :compare_build => :generate
+task :compare => :compare_build
+
 def ruby_parse version
   v         = version[/^\d+\.\d+/].delete "."
-  rp_txt    = "rp#{v}.txt"
-  mri_txt   = "mri#{v}.txt"
-  parse_y   = "parse#{v}.y"
-  tarball   = "ruby-#{version}.tar.xz"
-  ruby_dir  = "ruby-#{version}"
-  diff      = "diff#{v}.diff"
-  rp_out    = "lib/ruby#{v}_parser.output"
-  _rp_y     = "lib/ruby#{v}_parser.y"
-  rp_y_rb   = "lib/ruby#{v}_parser.rb"
-
-  c_diff    = "compare/#{diff}"
-  c_rp_txt  = "compare/#{rp_txt}"
-  c_mri_txt = "compare/#{mri_txt}"
-  c_parse_y = "compare/#{parse_y}"
-  c_tarball = "compare/#{tarball}"
+  diff      = "compare/diff#{v}.diff"
+  rp_txt    = "compare/rp#{v}.txt"
+  mri_txt   = "compare/mri#{v}.txt"
+  parse_y   = "compare/parse#{v}.y"
+  tarball   = "compare/ruby-#{version}.tar.xz"
+  ruby_dir  = "compare/ruby-#{version}"
+  rp_out    = "lib/ruby_parser#{v}.output"
+  rp_y_rb   = "lib/ruby_parser#{v}.rb"
   normalize = "compare/normalize.rb"
 
-  file c_tarball do
-    in_compare do
-      dl version
-    end
+  file tarball do
+    dl version, tarball
   end
 
   desc "fetch all tarballs"
-  task :fetch => c_tarball
+  task :fetch => tarball
 
-  file c_parse_y => c_tarball do
-    in_compare do
-      extract_glob = case
-                     # defs/id.def
-                     when version > "3.2" then
-                       "{id.h,parse.y,tool/{id2token.rb,lib/vpath.rb},defs/id.def}"
-                     when version > "2.7" then
-                       "{id.h,parse.y,tool/{id2token.rb,lib/vpath.rb}}"
-                     else
-                       "{id.h,parse.y,tool/{id2token.rb,vpath.rb}}"
-                     end
-      system "tar Jxf #{tarball} #{ruby_dir}/#{extract_glob}"
-
-      Dir.chdir ruby_dir do
-        if File.exist? "tool/id2token.rb" then
-          args = version < "3.2" ? "--path-separator=.:./ id.h" : ""
-          sh "ruby tool/id2token.rb #{args} parse.y | expand > ../#{parse_y}"
-        else
-          sh "expand parse.y > ../#{parse_y}"
-        end
-
-        ruby "-pi", "-e", 'gsub(/^%pure-parser/, "%define api.pure")', "../#{parse_y}"
-      end
-      sh "rm -rf #{ruby_dir}"
+  file parse_y => tarball do
+    extract_glob = case
+                   when version > "3.3" then
+                     "{id.h,parse.y,tool/{id2token.rb,lrama},defs/id.def}"
+                   when version > "3.2" then
+                     "{id.h,parse.y,tool/id2token.rb,defs/id.def}"
+                   when version > "2.7" then
+                     "{id.h,parse.y,tool/{id2token.rb,lib/vpath.rb}}"
+                   else
+                     "{id.h,parse.y,tool/{id2token.rb,vpath.rb}}"
+                   end
+    system "tar xf #{tarball} -C compare #{File.basename ruby_dir}/#{extract_glob}"
+
+    # Debugging a new parse build system:
+    #
+    # Unpack the ruby tarball in question, configure, and run the following:
+    #
+    # % touch parse.y; make -n parse.c
+    # ...
+    # echo generating parse.c
+    # /Users/ryan/.rubies.current/bin/ruby --disable=gems ./tool/id2token.rb parse.y | \
+    #       ruby ./tool/lrama/exe/lrama -oparse.c -Hparse.h - parse.y
+    #
+    # Then integrate these commands into the mess below:
+
+    d = ruby_dir
+    cmd = if version > "3.2" then
+            "ruby #{d}/tool/id2token.rb #{d}/parse.y | expand > #{parse_y}"
+          else
+            "ruby #{d}/tool/id2token.rb --path-separator=.:./ #{d}/id.h #{d}/parse.y | expand | ruby -pe 'gsub(/^%pure-parser/, \"%define api.pure\")'  > #{parse_y}"
+          end
+
+    sh cmd
+
+    if File.exist? "#{d}/tool/lrama" then # UGH: this is dumb
+      rm_rf "compare/lrama"
+      sh "mv #{d}/tool/lrama compare"
     end
+    sh "rm -rf #{d}"
   end
 
   bison = Dir["/opt/homebrew/opt/bison/bin/bison",
@@ -215,46 +210,48 @@ def ruby_parse version
               `which bison`.chomp,
              ].first
 
-  file c_mri_txt => [c_parse_y, normalize] do
-    in_compare do
+  file mri_txt => [parse_y, normalize] do
+    if version > "3.3" then
+      sh "./compare/lrama/exe/lrama -r all -ocompare/parse#{v}.tab.c #{parse_y}"
+    else
       sh "#{bison} -r all #{parse_y}"
-      sh "./normalize.rb parse#{v}.output > #{mri_txt}"
-      rm ["parse#{v}.output", "parse#{v}.tab.c"]
+      mv Dir["parse#{v}.*"], "compare"
     end
+
+    sh "#{normalize} compare/parse#{v}.output > #{mri_txt}"
+    rm ["compare/parse#{v}.output", "compare/parse#{v}.tab.c"]
   end
 
   file rp_out => rp_y_rb
 
-  file c_rp_txt => [rp_out, normalize] do
-    in_compare do
-      sh "./normalize.rb ../#{rp_out} > #{rp_txt}"
-    end
+  file rp_txt => [rp_out, normalize] do
+    sh "#{normalize} #{rp_out} > #{rp_txt}"
   end
 
   compare = "compare#{v}"
+  compare_build = "compare_build#{v}"
 
   desc "Compare all grammars to MRI"
   task :compare => compare
+  task :compare_build => compare_build
 
-  file c_diff => [c_mri_txt, c_rp_txt] do
-    in_compare do
-      sh "diff -du #{mri_txt} #{rp_txt} > #{diff}; true"
-    end
+  task compare_build => diff
+
+  file diff => [mri_txt, rp_txt] do
+    sh "diff -du #{mri_txt} #{rp_txt} > #{diff}; true"
   end
 
   desc "Compare #{v} grammar to MRI #{version}"
-  task compare => c_diff do
-    in_compare do
-      system "wc -l #{diff}"
-    end
+  task compare => diff do
+    system "wc -l #{diff}"
   end
 
   task :clean do
-    rm_f Dir[c_mri_txt, c_rp_txt]
+    rm_f Dir[mri_txt, rp_txt]
   end
 
   task :realclean do
-    rm_f Dir[c_parse_y, c_tarball]
+    rm_f Dir[parse_y, tarball]
   end
 end
 
@@ -297,10 +294,11 @@ ruby_parse "2.3.8"
 ruby_parse "2.4.10"
 ruby_parse "2.5.9"
 ruby_parse "2.6.10"
-ruby_parse "2.7.7"
-ruby_parse "3.0.5"
-ruby_parse "3.1.3"
-ruby_parse "3.2.1"
+ruby_parse "2.7.8"
+ruby_parse "3.0.6"
+ruby_parse "3.1.4"
+ruby_parse "3.2.2"
+ruby_parse "3.3.0"
 
 task :debug => :isolate do
   ENV["V"] ||= VERS.last
Binary files 3.20.0-2/checksums.yaml.gz.sig and 3.21.1-1/checksums.yaml.gz.sig differ
diff -pruN 3.20.0-2/compare/normalize.rb 3.21.1-1/compare/normalize.rb
--- 3.20.0-2/compare/normalize.rb	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/compare/normalize.rb	2024-08-22 09:52:50.000000000 +0000
@@ -84,6 +84,7 @@ def munge s
 
              "' '",             "tSPACE", # needs to be later to avoid bad hits
 
+             "ε",               "none", # bison 3+
              "%empty",          "none", # newer bison
              "/* empty */",     "none",
              /^\s*$/,           "none",
@@ -201,6 +202,8 @@ ARGF.each_line do |line|
     break
   when /^Terminals/ then               # yacc
     break
+  when /^State \d/ then                # lrama
+    break
   when /^\cL/ then                     # byacc
     break
   else
diff -pruN 3.20.0-2/data.tar.gz.sig 3.21.1-1/data.tar.gz.sig
--- 3.20.0-2/data.tar.gz.sig	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/data.tar.gz.sig	2024-08-22 09:52:50.000000000 +0000
@@ -1 +1,2 @@
-PFVʿxO)(n'M2$x/멀oѝ/gshl؉G=UkhU_s@9<6/.C+kdsH+2@r(#aĥ7xbVewF@RYb@5oJr^.CT[0g|5c_dQ3Sq{/iKdBj訙W] %EDTh<E_腽cdr
\ No newline at end of file
+k;KU?ans8blB.N#0_S,!c'=(@cys%"BR,ӽȥfR9jLEiBٰȑoZ푦/|k`qv=jMXj
+ȑx[*΂l29DDoٻ?}9jpNM᭼(:dE}ȦzGS#z4\=fB
\ No newline at end of file
diff -pruN 3.20.0-2/debian/changelog 3.21.1-1/debian/changelog
--- 3.20.0-2/debian/changelog	2023-07-07 04:41:43.000000000 +0000
+++ 3.21.1-1/debian/changelog	2025-11-04 18:20:22.000000000 +0000
@@ -1,3 +1,11 @@
+ruby-ruby-parser (3.21.1-1) unstable; urgency=medium
+
+  * Team upload.
+  * New upstream release.
+  * Update Standards-Version to 4.7.2, no changes needed.
+
+ -- Simon Quigley <tsimonq2@debian.org>  Tue, 04 Nov 2025 12:20:22 -0600
+
 ruby-ruby-parser (3.20.0-2) unstable; urgency=medium
 
   * Add Breaks for ruby-ruby2ruby (<< 2.5~)
diff -pruN 3.20.0-2/debian/control 3.21.1-1/debian/control
--- 3.20.0-2/debian/control	2023-07-07 04:41:43.000000000 +0000
+++ 3.21.1-1/debian/control	2025-11-04 18:18:32.000000000 +0000
@@ -9,7 +9,7 @@ Build-Depends: debhelper-compat (= 13),
                rake,
                ruby-minitest,
                ruby-sexp-processor (>= 4.17~)
-Standards-Version: 4.6.2
+Standards-Version: 4.7.2
 Vcs-Git: https://salsa.debian.org/ruby-team/ruby-ruby-parser.git
 Vcs-Browser: https://salsa.debian.org/ruby-team/ruby-ruby-parser
 Homepage: https://github.com/seattlerb/ruby_parser
diff -pruN 3.20.0-2/debian/gbp.conf 3.21.1-1/debian/gbp.conf
--- 3.20.0-2/debian/gbp.conf	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/debian/gbp.conf	2025-11-04 18:17:30.000000000 +0000
@@ -0,0 +1,4 @@
+[DEFAULT]
+debian-branch = debian/latest
+upstream-branch = upstream/latest
+pristine-tar = True
diff -pruN 3.20.0-2/debian/salsa-ci.yml 3.21.1-1/debian/salsa-ci.yml
--- 3.20.0-2/debian/salsa-ci.yml	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/debian/salsa-ci.yml	2025-11-04 18:17:30.000000000 +0000
@@ -0,0 +1,3 @@
+---
+include:
+  - https://salsa.debian.org/ruby-team/meta/raw/master/salsa-ci.yml
diff -pruN 3.20.0-2/lib/ruby20_parser.rb 3.21.1-1/lib/ruby20_parser.rb
--- 3.20.0-2/lib/ruby20_parser.rb	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/lib/ruby20_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,10973 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby20Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -521,     8,    85,    86,    87,    12,    78,  -521,  -521,  -521,
-    79,    80,  -521,  -521,  -521,    83,  -521,    81,    82,    84,
-    33,    34,    76,    77,  -521,   564,  -521,  -521,  -521,    88,
-    31,    30,   115,   114,   116,   117,  -521,  -521,    22,  -521,
-  -521,  -521,  -521,  -521,    11,    49,    10,    13,   119,   118,
-   120,   109,    60,   111,   110,   112,   825,   113,   121,   122,
-  -109,   107,   108,  -110,    45,    46,    44,  -521,  -521,  -521,
-  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,
-  -521,   564,  -103,  -521,  -521,  -521,    43,  -521,  -521,    36,
-   824,  -521,    62,    63,  -521,  -521,    64,  -521,    38,  -521,
-     3,  -521,    48,  -521,  -521,  -521,  -521,  -521,  -521,  -521,
-    23,  -521,   281,  -521,   123,   105,    95,    97,    98,    99,
-   101,  -117,  -116,   641,    96,   106,  -521,  -521,  -521,  -521,
-   564,  -521,    89,  -521,  -524,    93,   100,   102,  -521,   127,
-  -521,  -524,  -524,  -524,   126,   564,  -524,  -524,  -524,  -103,
-  -524,   733,   564,  -112,   221,   222,   221,   222,  -524,  -112,
-  -524,  -524,  -524,   221,   222,  -100,  -114,   281,  -101,  -111,
-  -524,  -524,  -113,  -524,  -524,  -524,  -524,  -524,   334,   335,
-   221,   222,   -95,  -535,  -103,  -105,   640,  -103,  -114,  -113,
-   879,  -115,  -111,   -81,   230,   127,   537,   538,  -103,   283,
-   126,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,
-  -524,  -524,  -524,  -524,  -524,   281,   644,  -524,  -524,  -524,
-   745,  -524,  -524,   218,   746,  -524,  -108,  -107,  -524,  -524,
-   231,  -524,   278,  -524,   281,  -524,  -109,  -524,  -524,  -524,
-  -524,  -524,  -524,  -524,   127,  -524,   231,  -524,   219,   126,
-  -614,   127,  -105,   231,   283,  -614,   126,  -615,  -103,   127,
-  -524,  -524,  -524,  -524,   126,  -524,   127,  -524,  -300,   940,
-   231,   126,  -524,  -112,  -524,  -300,  -300,  -300,  -112,   643,
-  -114,  -300,  -300,  -111,  -300,  -114,  -113,  -105,  -111,   825,
-  -105,  -113,    95,  -105,  -104,   878,  -106,  -102,   220,   278,
-    96,  -105,   283,  -536,  -300,  -300,   227,  -300,  -300,  -300,
-  -300,  -300,   227,   276,   841,   228,   855,   472,   571,   226,
-   842,   283,   625,   824,  -521,   228,   625,   542,   224,   816,
-   223,  -521,   271,  -611,   332,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,   221,
-   222,  -300,  -300,  -300,  -612,   667,  -110,  -108,  -535,  -300,
-   851,   855,  -300,   817,   661,  -618,   625,  -300,  -117,  -300,
-  -117,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -117,  -300,
-  -116,  -300,  -112,   627,   626,   625,  -521,   627,   626,   623,
-  -437,  -618,   788,  -521,  -300,  -300,  -618,  -106,  -611,  -300,
-  -100,   662,  -521,  -618,  -618,  -618,  -300,  -524,  -115,  -618,
-  -618,  -109,  -618,   611,  -524,  -524,  -114,  -112,  -618,  -612,
-  -611,  -618,  -524,  -524,   613,  -618,   333,   627,   626,   628,
-  -614,   625,  -618,  -618,  -618,  -618,  -618,  -618,  -618,  -618,
-   231,  -612,  -531,  -437,  -618,   911,   627,   626,   366,  -531,
-  -437,  -618,  -618,   803,  -114,   790,  -614,   621,   620,  -437,
-  -618,   221,   222,  -618,  -618,  -618,  -618,  -618,  -618,  -618,
-  -618,  -618,  -618,  -618,  -618,  -618,  -618,  -437,  -618,  -618,
-  -618,  -618,  -530,   668,   268,   269,   625,  -618,   391,  -530,
-  -618,   614,   627,   626,   633,  -618,   394,  -618,  -111,  -618,
-  -618,  -618,  -618,  -618,  -618,  -618,  -111,  -618,  -618,  -618,
-   397,  -536,   607,   625,   604,   603,   602,   611,   605,   267,
-   266,   625,  -618,  -618,   630,  -104,   542,  -618,   613,   722,
-  -618,   400,   721,  -532,  -618,   661,  -113,  -618,  -618,  -618,
-  -532,   923,  -618,  -618,  -618,   417,  -618,   627,   626,   638,
-   609,   593,   613,  -101,   422,  -618,  -618,  -618,  -618,   618,
-   617,   621,   620,   471,  -110,   473,  -618,  -618,  -107,  -618,
-  -618,  -618,  -618,  -618,   627,   626,   645,  -103,   722,  -116,
-  -529,   724,   627,   626,  -526,   621,   620,  -529,  -112,   474,
-   780,  -526,   604,   603,   602,   614,   605,  -618,  -618,  -618,
-  -618,  -618,  -618,  -618,  -618,  -618,  -618,  -618,  -618,  -618,
-  -618,   230,   662,  -618,  -618,  -618,  -527,   818,  -618,   614,
-   503,  -618,   512,  -527,  -618,  -618,   515,  -618,   775,  -618,
-   517,  -618,   803,  -618,  -618,  -618,  -618,  -618,  -618,  -618,
-  -528,  -618,  -618,  -618,   621,   620,   607,  -528,   604,   603,
-   602,   611,   605,  -343,  -105,   -80,  -618,  -618,  -618,  -618,
-  -343,  -618,   613,  -618,  -300,  -114,   851,   855,  -618,  -343,
-  -113,  -300,  -300,  -300,  -102,   231,  -300,  -300,  -300,   589,
-  -300,   527,   227,   528,   609,  -111,   590,   535,   251,   469,
-  -300,  -300,  -300,   618,   617,   621,   620,   127,   470,   288,
-  -300,  -300,   126,  -300,  -300,  -300,  -300,  -300,   780,   231,
-   604,   603,   602,   722,   605,   780,   724,   604,   603,   602,
-   248,   605,   278,   127,   250,   249,   246,   247,   126,   614,
-   539,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,   543,   775,  -300,  -300,  -300,
-  -533,   819,  -300,   775,   544,  -300,   251,  -533,  -300,  -300,
-   231,  -300,   779,  -300,   251,  -300,  -533,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,   127,  -300,   571,  -300,   607,   126,
-   604,   603,   602,   611,   605,   130,   131,   132,   133,   134,
-  -300,  -300,  -300,  -300,   613,  -300,   248,  -300,  -300,   410,
-   250,   249,  -300,   419,  -115,  -300,  -300,  -300,   421,   420,
-   576,  -300,  -300,  -534,  -300,   780,   609,   604,   603,   602,
-  -534,   605,   251,   577,   632,   618,   617,   621,   620,  -534,
-   722,   127,   636,   724,  -300,  -300,   126,  -300,  -300,  -300,
-  -300,  -300,   127,   639,   227,   642,   780,   126,   604,   603,
-   602,   534,   605,   775,   248,   649,  -275,   651,   250,   249,
-   532,   614,   779,   652,   231,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -291,
-   251,  -300,  -300,  -300,   775,   667,  -291,   231,   659,  -300,
-  1042,   127,  -300,   779,   660,  -291,   126,  -300,   278,  -300,
-   672,  -300,  -300,  -300,  -300,  -300,  -300,  -300,   251,  -300,
-   251,  -300,   248,   251,   227,   227,   250,   249,   246,   247,
-   251,   546,   575,   679,  -300,  -300,  -618,  -300,   231,  -300,
-   470,   573,   231,  -618,  -618,  -618,  -300,   417,  -115,  -618,
-  -618,   607,  -618,   604,   603,   602,   611,   605,   227,   231,
-   780,  -618,   604,   603,   602,   655,   605,   613,   -95,   698,
-   231,   549,  -618,  -618,   653,  -618,  -618,  -618,  -618,  -618,
-   780,  -301,   604,   603,   602,   709,   605,   715,  -301,   609,
-   900,   901,   718,   231,   902,   121,   122,  -301,   618,   617,
-   621,   620,   725,  -618,  -618,  -618,  -618,  -618,  -618,  -618,
-  -618,  -618,  -618,  -618,  -618,  -618,  -618,   227,   775,  -618,
-  -618,  -618,  -301,   668,   748,   726,   517,  -618,   729,  -301,
-  -618,   718,   718,   750,   614,  -618,   571,  -618,  -301,  -618,
-  -618,  -618,  -618,  -618,  -618,  -618,   718,  -618,  -618,  -618,
-   752,   757,   607,   227,   604,   603,   602,   611,   605,  -300,
-  1026,   763,  -618,  -618,   766,  -618,  -300,  -618,   613,   750,
-  -436,  -615,   767,  -300,  -618,  -300,  -113,  -436,  -436,  -436,
-  -300,   769,  -436,  -436,  -436,  -615,  -436,   251,   771,  -300,
-   609,   773,   783,   784,   785,  -436,  -436,  -436,  -533,   618,
-   617,   621,   620,   261,   262,  -533,  -436,  -436,   791,  -436,
-  -436,  -436,  -436,  -436,  -533,   792,  -276,   804,   503,   248,
-  -534,   254,   503,   250,   249,   246,   247,  -534,   231,   252,
-   821,   253,   271,   830,   832,   614,  -534,  -436,  -436,  -436,
-  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,
-  -436,   515,   227,  -436,  -436,  -436,  -291,   517,  -436,  1032,
-   278,  -436,   709,  -291,  -436,  -436,   231,  -436,  1030,  -436,
-   278,  -436,  -291,  -436,  -436,  -436,  -436,  -436,  -436,  -436,
-   278,  -436,  -436,  -436,   227,   709,  -301,   251,   251,   855,
-   718,  1026,   231,  -301,   231,   895,  -436,  -436,  -309,  -436,
-   750,  -436,  -301,   896,   231,  -309,  -309,  -309,  -436,   905,
-  -309,  -309,  -309,   607,  -309,   604,   603,   602,   611,   605,
-  -300,  -277,   231,   910,  -309,  -309,   927,  -300,   709,   613,
-  -275,   932,  -615,   718,  -309,  -309,  -300,  -309,  -309,  -309,
-  -309,  -309,  1007,   718,   604,   603,   602,   718,   605,   231,
-  1007,   609,   604,   603,   602,   718,   605,   718,   231,   954,
-   618,   617,   621,   620,   231,  -309,  -309,  -309,  -309,  -309,
-  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,   766,
-   957,  -309,  -309,  -309,   959,   961,  -309,   963,   288,  -309,
-   963,   231,  -309,  -309,   970,  -309,   614,  -309,  -278,  -309,
-   971,  -309,  -309,  -309,  -309,  -309,  -309,  -309,   766,  -309,
-   974,  -309,   130,   131,   132,   133,   134,   130,   131,   132,
-   133,   134,   977,   979,  -309,  -309,  -292,  -309,   981,  -309,
-   231,   983,   718,  -292,  -292,  -292,  -309,   757,  -292,  -292,
-  -292,   780,  -292,   604,   603,   602,   611,   605,  1003,  1004,
-  1013,  1014,  -292,  -292,  -292,  1024,  1027,   613,   841,  1033,
-  1043,   963,  -292,  -292,   963,  -292,  -292,  -292,  -292,  -292,
-   130,   131,   132,   133,   134,   963,   766,  1050,  1052,   609,
-  1054,  1056,  1056,   715,   718,   718,  1014,  -615,  -614,   231,
-   621,   620,   963,  -292,  -292,  -292,  -292,  -292,  -292,  -292,
-  -292,  -292,  -292,  -292,  -292,  -292,  -292,  1078,  1056,  -292,
-  -292,  -292,  1056,  1056,  -292,  1056,   nil,  -292,   nil,   nil,
-  -292,  -292,   nil,  -292,   614,  -292,   nil,  -292,   nil,  -292,
-  -292,  -292,  -292,  -292,  -292,  -292,   nil,  -292,   nil,  -292,
-   922,   nil,   604,   603,   602,   923,   605,   nil,   nil,   nil,
-   nil,   nil,  -292,  -292,  -292,  -292,   613,  -292,  -639,  -292,
-   nil,   nil,   nil,   nil,  -292,  -639,  -639,  -639,   nil,   nil,
-  -639,  -639,  -639,   nil,  -639,   251,   nil,   nil,   609,   nil,
-   nil,   nil,   nil,  -639,  -639,  -639,   nil,   618,   617,   621,
-   620,   261,   262,   nil,  -639,  -639,   nil,  -639,  -639,  -639,
-  -639,  -639,   nil,   nil,   nil,   nil,   nil,   248,   nil,   254,
-   nil,   250,   249,   246,   247,   231,   nil,   252,   nil,   253,
-   nil,   nil,   nil,   614,   nil,  -639,  -639,  -639,  -639,  -639,
-  -639,  -639,  -639,  -639,  -639,  -639,  -639,  -639,  -639,   nil,
-   nil,  -639,  -639,  -639,   nil,   nil,  -639,   nil,   278,  -639,
-   nil,   nil,  -639,  -639,   nil,  -639,   nil,  -639,   nil,  -639,
-   nil,  -639,  -639,  -639,  -639,  -639,  -639,  -639,   nil,  -639,
-  -639,  -639,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -639,  -639,  -619,  -639,   nil,  -639,
-   nil,   nil,   nil,  -619,  -619,  -619,  -639,   nil,  -619,  -619,
-  -619,   607,  -619,   604,   603,   602,   611,   605,   nil,   nil,
-   nil,  -619,  -619,  -619,  -619,   nil,   nil,   613,   nil,   nil,
-   nil,   nil,  -619,  -619,   nil,  -619,  -619,  -619,  -619,  -619,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   609,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   618,   617,
-   621,   620,   nil,  -619,  -619,  -619,  -619,  -619,  -619,  -619,
-  -619,  -619,  -619,  -619,  -619,  -619,  -619,   nil,   nil,  -619,
-  -619,  -619,   nil,   nil,  -619,   nil,   nil,  -619,   nil,   nil,
-  -619,  -619,   nil,  -619,   614,  -619,   nil,  -619,   nil,  -619,
-  -619,  -619,  -619,  -619,  -619,  -619,   nil,  -619,  -619,  -619,
-   780,   nil,   604,   603,   602,   611,   605,   nil,   nil,   nil,
-   nil,   nil,  -619,  -619,  -619,  -619,   613,  -619,  -620,  -619,
-   nil,   nil,   nil,   nil,  -619,  -620,  -620,  -620,   nil,   nil,
-  -620,  -620,  -620,   nil,  -620,   251,   nil,   nil,   609,   nil,
-   nil,   nil,   nil,  -620,  -620,  -620,  -620,   nil,   nil,   621,
-   620,   261,   262,   nil,  -620,  -620,   nil,  -620,  -620,  -620,
-  -620,  -620,   nil,   nil,   nil,   nil,   nil,   248,   nil,   254,
-   nil,   250,   249,   246,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   614,   nil,  -620,  -620,  -620,  -620,  -620,
-  -620,  -620,  -620,  -620,  -620,  -620,  -620,  -620,  -620,   nil,
-   nil,  -620,  -620,  -620,   nil,   nil,  -620,   nil,   nil,  -620,
-   nil,   nil,  -620,  -620,   nil,  -620,   nil,  -620,   nil,  -620,
-   nil,  -620,  -620,  -620,  -620,  -620,  -620,  -620,   nil,  -620,
-  -620,  -620,   780,   nil,   604,   603,   602,   611,   605,   nil,
-   nil,   nil,   nil,   nil,  -620,  -620,  -620,  -620,   613,  -620,
-  -639,  -620,   nil,   nil,   nil,   nil,  -620,  -639,  -639,  -639,
-   nil,   nil,  -639,  -639,  -639,   nil,  -639,   nil,   nil,   nil,
-   609,   nil,   nil,   nil,   nil,  -639,  -639,   nil,   nil,   nil,
-   nil,   621,   620,   nil,   nil,   nil,  -639,  -639,   nil,  -639,
-  -639,  -639,  -639,  -639,   780,   nil,   604,   603,   602,   611,
-   605,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   613,   nil,   nil,   nil,   nil,   614,   nil,   251,   255,   256,
-   257,   258,   268,   269,   263,   264,   259,   260,  -639,  -640,
-  -640,   nil,   609,   261,   262,  -639,   nil,   nil,   nil,   nil,
-   278,  -639,   nil,   621,   620,   nil,   nil,   nil,   nil,   248,
-   nil,   254,   nil,   250,   249,   246,   247,   267,   266,   252,
-   nil,   253,  -639,  -639,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  -639,   614,   nil,   nil,
-   nil,  -639,   306,    85,    86,    87,    12,    78,  -639,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   115,   114,   116,   117,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   656,    11,    49,   308,    13,   119,
-   118,   120,   109,    60,   111,   110,   112,   nil,   113,   121,
-   122,   nil,   107,   108,   nil,    45,    46,    44,   251,   255,
-   256,   257,   258,   268,   269,   263,   264,   259,   260,   nil,
-   244,   245,   nil,   nil,   261,   262,   nil,    43,   nil,   nil,
-   310,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
-   248,   nil,   254,    48,   250,   249,   246,   247,   267,   266,
-   252,    23,   253,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   265,   nil,
-  -250,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   306,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   656,    11,    49,   308,    13,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   251,   255,   256,   257,   258,
-   268,   269,   263,   264,   259,   260,   nil,   244,   245,   nil,
-   nil,   261,   262,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   248,   nil,   254,
-    48,   250,   249,   246,   247,   267,   266,   252,    23,   253,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   265,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   306,    85,    86,    87,
-    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,
-   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
-    49,   308,    13,   119,   118,   120,   109,    60,   111,   110,
-   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,
-    46,    44,   251,   255,   256,   257,   258,   268,   269,   263,
-   264,   259,   260,   nil,   244,   245,   nil,   nil,   261,   262,
-   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,    38,   248,   nil,   254,    48,   250,   249,
-   246,   247,   267,   266,   252,    23,   253,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   265,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   306,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,    13,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   251,
-   255,   256,   257,   258,   268,   269,   263,   264,   259,   260,
-   nil,   244,   245,   nil,   nil,   261,   262,   nil,    43,   nil,
-   nil,   310,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   248,   nil,   254,    48,   250,   249,   246,   247,   267,
-   266,   252,    23,   253,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   265,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,   120,
-   109,    60,   111,   110,   112,   nil,   113,   121,   122,   nil,
-   107,   108,   nil,    45,    46,    44,   251,   255,   256,   257,
-   258,   268,   269,   263,   264,   259,   260,   nil,   244,   245,
-   nil,   nil,   261,   262,   nil,    43,   nil,   nil,   310,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,    38,   248,   nil,
-   254,    48,   250,   249,   246,   247,   267,   266,   252,    23,
-   253,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   231,   265,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   308,    13,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   251,   255,   256,   257,   258,   268,   269,
-   263,   264,   259,   260,   nil,   244,   245,   nil,   nil,   261,
-   262,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   248,   nil,   254,    48,   250,
-   249,   246,   247,   267,   266,   252,    23,   253,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   265,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   306,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   115,   114,   116,   117,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,
-    13,   119,   118,   120,   109,    60,   111,   110,   112,   nil,
-   113,   121,   122,   nil,   107,   108,   nil,    45,    46,    44,
-   251,   255,   256,   257,   258,   268,   269,   263,   264,   259,
-   260,   nil,   244,   245,   nil,   nil,   261,   262,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   248,   nil,   254,    48,   250,   249,   246,   247,
-   267,   266,   252,    23,   253,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   265,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   251,   255,   256,
-   257,   258,   268,   269,   263,   264,   259,   260,   nil,   244,
-   245,   nil,   nil,   261,   262,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   248,
-   nil,   254,    48,   250,   249,   246,   247,   267,   266,   252,
-    23,   253,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   265,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,
-   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,   308,    13,   119,   118,   120,   109,    60,
-   111,   110,   112,   nil,   113,   121,   122,   nil,   107,   108,
-   nil,    45,    46,    44,   251,   255,   256,   257,   258,   268,
-   269,   263,   264,   259,   260,   nil,  -640,  -640,   nil,   nil,
-   261,   262,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   248,   nil,   254,    48,
-   250,   249,   246,   247,   267,   266,   252,    23,   253,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   306,    85,    86,    87,    12,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
-   308,    13,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   251,  -640,  -640,  -640,  -640,   268,   269,   nil,   nil,
-  -640,  -640,   nil,   nil,   nil,   nil,   nil,   261,   262,   nil,
-    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,    38,   248,   nil,   254,    48,   250,   249,   246,
-   247,   267,   266,   252,    23,   253,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,     8,    85,    86,    87,    12,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   115,   114,   116,   117,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,   119,
-   118,   120,   109,    60,   111,   110,   112,   nil,   113,   121,
-   122,   nil,   107,   108,   nil,    45,    46,    44,   251,  -640,
-  -640,  -640,  -640,   268,   269,   nil,   nil,  -640,  -640,   nil,
-   nil,   nil,   nil,   nil,   261,   262,   nil,    43,   nil,   nil,
-    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
-   248,   nil,   254,    48,   250,   249,   246,   247,   267,   266,
-   252,    23,   253,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   306,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   308,    13,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   251,  -640,  -640,  -640,  -640,
-   268,   269,   nil,   nil,  -640,  -640,   nil,   nil,   nil,   nil,
-   nil,   261,   262,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   248,   nil,   254,
-    48,   250,   249,   246,   247,   267,   266,   252,    23,   253,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   306,    85,    86,    87,
-    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,
-   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
-    49,   308,    13,   119,   118,   120,   109,    60,   111,   110,
-   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,
-    46,    44,   251,  -640,  -640,  -640,  -640,   268,   269,   nil,
-   nil,  -640,  -640,   nil,   nil,   nil,   nil,   nil,   261,   262,
-   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,    38,   248,   nil,   254,    48,   250,   249,
-   246,   247,   267,   266,   252,    23,   253,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   306,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,    13,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   251,
-  -640,  -640,  -640,  -640,   268,   269,   nil,   nil,  -640,  -640,
-   nil,   nil,   nil,   nil,   nil,   261,   262,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   248,   nil,   254,    48,   250,   249,   246,   247,   267,
-   266,   252,    23,   253,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,   120,
-   109,    60,   111,   110,   112,   nil,   113,   121,   122,   nil,
-   107,   108,   nil,    45,    46,    44,   251,  -640,  -640,  -640,
-  -640,   268,   269,   nil,   nil,  -640,  -640,   nil,   nil,   nil,
-   nil,   nil,   261,   262,   nil,    43,   nil,   nil,    36,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,    38,   248,   nil,
-   254,    48,   250,   249,   246,   247,   267,   266,   252,    23,
-   253,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   308,    13,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   251,   255,   256,   257,   258,   268,   269,
-   nil,   nil,   259,   260,   nil,   nil,   nil,   nil,   nil,   261,
-   262,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   248,   nil,   254,    48,   250,
-   249,   246,   247,   267,   266,   252,    23,   253,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   306,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   115,   114,   116,   117,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,
-    13,   119,   118,   120,   109,    60,   111,   110,   112,   nil,
-   113,   121,   122,   nil,   107,   108,   nil,    45,    46,    44,
-   251,   255,   256,   257,   258,   268,   269,   263,   nil,   259,
-   260,   nil,   nil,   nil,   nil,   nil,   261,   262,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   248,   nil,   254,    48,   250,   249,   246,   247,
-   267,   266,   252,    23,   253,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   261,   262,   nil,    43,   nil,   nil,    36,
-   nil,   251,    62,    63,   nil,   nil,    64,   nil,    38,   248,
-   nil,   254,    48,   250,   249,   246,   247,   261,   262,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   248,    96,   106,   nil,   250,   249,   246,
-   247,   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,
-   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,   308,    13,   119,   118,   120,   109,    60,
-   111,   110,   112,   nil,   113,   121,   122,   nil,   107,   108,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   306,    85,    86,    87,    12,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
-   308,    13,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   306,    85,    86,    87,    12,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   115,   114,   116,   117,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,
-   118,   120,   109,    60,   111,   110,   112,   nil,   113,   121,
-   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
-    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   306,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   308,    13,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   306,    85,    86,    87,
-    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,
-   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
-    49,   308,    13,   119,   118,   120,   109,    60,   111,   110,
-   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   306,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,    13,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,   120,
-   109,    60,   111,   110,   112,   nil,   113,   121,   122,   nil,
-   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   308,    13,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   306,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   115,   114,   116,   117,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,
-    13,   119,   118,   120,   109,    60,   111,   110,   112,   nil,
-   113,   121,   122,   nil,   107,   108,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,    10,    13,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   780,    64,   604,
-   603,   602,   923,   605,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   613,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   609,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   621,   620,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   614,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   297,   nil,   295,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   297,   nil,   295,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   299,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   297,   nil,
-   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   300,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,   323,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   319,   nil,   nil,   315,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   314,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,   nil,   nil,   329,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   319,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   780,    64,   604,
-   603,   602,   611,   605,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   613,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   331,   nil,   nil,    89,   609,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   621,   620,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   614,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   780,    64,   604,   603,   602,   923,   605,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   613,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   609,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   621,   620,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   614,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   780,
-    64,   604,   603,   602,   923,   605,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   613,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   609,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   621,   620,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   614,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   780,    64,   604,   603,   602,
-   923,   605,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   613,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   609,   nil,    93,   100,   102,    85,    86,
-    87,    12,    78,   nil,   621,   620,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   614,   nil,
-    11,    49,   nil,    13,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   780,    64,   604,
-   603,   602,   923,   605,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   613,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   609,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   621,   620,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
-   614,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   127,   nil,   nil,   nil,   nil,   126,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,    36,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,    10,    13,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   410,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   nil,    13,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   427,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   427,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   297,   nil,   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   231,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   299,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   297,   nil,
-   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   300,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   299,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   297,   nil,   295,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   300,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   297,   nil,   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   231,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   nil,    13,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,   323,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   319,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   530,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,   nil,   nil,
-   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   319,   nil,   nil,   315,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   549,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   297,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,   119,   118,
-   120,   578,    60,   111,   110,   579,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   580,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,   323,   nil,   nil,   119,   118,   120,   578,    60,   111,
-   110,   579,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   580,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   297,   nil,   295,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   692,   nil,   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   295,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,    12,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   410,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,   323,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   319,   nil,   nil,   315,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   297,   nil,   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,   323,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   319,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   297,   nil,   295,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   796,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   297,   nil,   295,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   299,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   692,   nil,   295,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   300,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,   323,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   319,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,   nil,   nil,
-   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   319,   nil,   nil,   315,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   427,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   299,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   692,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   300,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   860,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   297,   nil,   295,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   299,   113,   121,   122,   nil,   107,   108,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   295,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   300,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,   323,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
-   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   985,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
-   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,
-   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
-   nil,   113,   121,   122,   nil,   107,   108,   nil,   nil,   nil,
-   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   992,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
-   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
-   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   997,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
-   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
-   nil,   323,   nil,   nil,   119,   118,   120,   109,    60,   111,
-   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
-   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   985,   nil,   nil,   242,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
-   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
-   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
-   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
-    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
-   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   297,   nil,   295,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   300,    93,   100,   102,   185,   196,   186,   209,
-   182,   202,   192,   191,   212,   213,   207,   190,   189,   184,
-   210,   214,   215,   194,   183,   197,   201,   203,   195,   188,
-   nil,   nil,   nil,   204,   211,   206,   205,   198,   208,   193,
-   181,   200,   199,   nil,   nil,   nil,   nil,   nil,   180,   187,
-   178,   179,   175,   176,   177,   138,   140,   137,   nil,   139,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,
-   nil,   166,   148,   149,   150,   157,   154,   156,   nil,   nil,
-   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,   160,
-   161,   155,   153,   145,   168,   146,   nil,   nil,   174,   105,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   167,   185,
-   196,   186,   209,   182,   202,   192,   191,   212,   213,   207,
-   190,   189,   184,   210,   214,   215,   194,   183,   197,   201,
-   203,   195,   188,   nil,   nil,   nil,   204,   211,   206,   205,
-   198,   208,   193,   181,   200,   199,   nil,   nil,   nil,   nil,
-   nil,   180,   187,   178,   179,   175,   176,   177,   138,   140,
-   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   171,   nil,   166,   148,   149,   150,   157,   154,
-   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,
-   158,   159,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,
-   165,   164,   160,   161,   155,   153,   145,   168,   146,   nil,
-   nil,   174,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   167,   185,   196,   186,   209,   182,   202,   192,   191,
-   212,   213,   207,   190,   189,   184,   210,   214,   215,   194,
-   183,   197,   201,   203,   195,   188,   nil,   nil,   nil,   204,
-   211,   206,   375,   374,   376,   373,   181,   200,   199,   nil,
-   nil,   nil,   nil,   nil,   180,   187,   178,   179,   370,   371,
-   372,   368,   140,   111,   110,   369,   nil,   113,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   171,   nil,   166,   148,   149,
-   150,   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,
-   nil,   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,
-   382,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,
-   nil,   147,   169,   165,   164,   160,   161,   155,   153,   145,
-   168,   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   167,   185,   196,   186,   209,   182,
-   202,   192,   191,   212,   213,   207,   190,   189,   184,   210,
-   214,   215,   194,   183,   197,   201,   203,   195,   188,   nil,
-   nil,   nil,   204,   211,   206,   205,   198,   208,   193,   181,
-   200,   199,   nil,   nil,   nil,   nil,   nil,   180,   187,   178,
-   179,   175,   176,   177,   138,   140,   407,   406,   139,   nil,
-   408,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   nil,
-   166,   148,   149,   150,   157,   154,   156,   nil,   nil,   151,
-   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   163,   162,   nil,   147,   169,   165,   164,   160,   161,
-   155,   153,   145,   168,   146,   nil,   nil,   174,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   167,   185,   196,
-   186,   209,   182,   202,   192,   191,   212,   213,   207,   190,
-   189,   184,   210,   214,   215,   194,   183,   197,   201,   203,
-   195,   188,   nil,   nil,   nil,   204,   211,   206,   205,   198,
-   208,   193,   181,   200,   199,   nil,   nil,   nil,   nil,   nil,
-   180,   187,   178,   179,   175,   176,   177,   138,   140,   nil,
-   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   171,   nil,   166,   148,   149,   150,   157,   154,   156,
-   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,
-   159,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,
-   164,   160,   161,   155,   153,   145,   168,   146,   nil,   nil,
-   174,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   167,   185,   196,   186,   209,   182,   202,   192,   191,   212,
-   213,   207,   190,   189,   184,   210,   214,   215,   194,   183,
-   197,   201,   203,   195,   188,   nil,   nil,   nil,   204,   211,
-   206,   205,   198,   208,   193,   181,   200,   199,   nil,   nil,
-   nil,   nil,   nil,   180,   187,   178,   179,   175,   176,   177,
-   138,   140,   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   171,   nil,   166,   148,   149,   150,
-   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,
-   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,
-   147,   169,   165,   164,   160,   161,   155,   153,   145,   168,
-   146,   nil,   nil,   174,   105,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   167,   185,   196,   186,   209,   182,   202,
-   192,   191,   212,   213,   207,   190,   189,   184,   210,   214,
-   215,   194,   183,   197,   201,   203,   195,   188,   nil,   nil,
-   nil,   204,   211,   206,   205,   198,   208,   193,   181,   200,
-   199,   nil,   nil,   nil,   nil,   nil,   180,   187,   178,   179,
-   175,   176,   177,   138,   140,   nil,   nil,   139,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   nil,   166,
-   148,   149,   150,   157,   154,   156,   nil,   nil,   151,   152,
-   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   163,   162,   nil,   147,   169,   165,   164,   160,   161,   155,
-   153,   145,   168,   146,   nil,   nil,   174,   nil,   nil,   nil,
-   nil,   449,   453,   nil,   nil,   450,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   171,   167,   166,   148,   149,
-   150,   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,
-   nil,   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,
-   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,
-   nil,   147,   169,   165,   164,   160,   161,   155,   153,   145,
-   168,   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,   456,
-   460,   nil,   nil,   455,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   171,   167,   166,   148,   149,   150,   157,
-   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,
-   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,
-   169,   165,   164,   160,   161,   155,   153,   145,   168,   146,
-   nil,   nil,   174,   nil,   nil,   nil,   nil,   501,   453,   nil,
-   nil,   502,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   171,   167,   166,   148,   149,   150,   157,   154,   156,
-   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,
-   159,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,
-   164,   160,   161,   155,   153,   145,   168,   146,   nil,   nil,
-   174,   nil,   nil,   nil,   nil,   673,   453,   nil,   nil,   674,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,
-   167,   166,   148,   149,   150,   157,   154,   156,   nil,   nil,
-   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,
-   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,   160,
-   161,   155,   153,   145,   168,   146,   nil,   nil,   174,   nil,
-   nil,   nil,   nil,   675,   460,   nil,   nil,   676,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   167,   166,
-   148,   149,   150,   157,   154,   156,   nil,   nil,   151,   152,
-   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,   nil,
-   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   163,   162,   nil,   147,   169,   165,   164,   160,   161,   155,
-   153,   145,   168,   146,   nil,   nil,   174,   nil,   nil,   nil,
-   nil,   702,   453,   nil,   nil,   703,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   171,   167,   166,   148,   149,
-   150,   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,
-   nil,   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,
-   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,
-   nil,   147,   169,   165,   164,   160,   161,   155,   153,   145,
-   168,   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,   705,
-   460,   nil,   nil,   706,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   171,   167,   166,   148,   149,   150,   157,
-   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,
-   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,
-   169,   165,   164,   160,   161,   155,   153,   145,   168,   146,
-   nil,   nil,   174,   nil,   nil,   nil,   nil,   673,   453,   nil,
-   nil,   674,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   171,   167,   166,   148,   149,   150,   157,   154,   156,
-   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,
-   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,
-   164,   160,   161,   155,   153,   145,   168,   146,   nil,   nil,
-   174,   nil,   nil,   nil,   nil,   675,   460,   nil,   nil,   676,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,
-   167,   166,   148,   149,   150,   157,   154,   156,   nil,   nil,
-   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,
-   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,   160,
-   161,   155,   153,   145,   168,   146,   nil,   nil,   174,   nil,
-   nil,   nil,   nil,   740,   453,   nil,   nil,   741,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   167,   166,
-   148,   149,   150,   157,   154,   156,   nil,   nil,   151,   152,
-   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,   nil,
-   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   163,   162,   nil,   147,   169,   165,   164,   160,   161,   155,
-   153,   145,   168,   146,   nil,   nil,   174,   nil,   nil,   nil,
-   nil,   742,   460,   nil,   nil,   743,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   171,   167,   166,   148,   149,
-   150,   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,
-   nil,   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,
-   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,
-   nil,   147,   169,   165,   164,   160,   161,   155,   153,   145,
-   168,   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,   798,
-   453,   nil,   nil,   799,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   171,   167,   166,   148,   149,   150,   157,
-   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,
-   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,
-   169,   165,   164,   160,   161,   155,   153,   145,   168,   146,
-   nil,   nil,   174,   nil,   nil,   nil,   nil,   801,   460,   nil,
-   nil,   800,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   171,   167,   166,   148,   149,   150,   157,   154,   156,
-   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,
-   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,
-   164,   160,   161,   155,   153,   145,   168,   146,   nil,   nil,
-   174,   nil,   nil,   nil,   nil,   864,   460,   nil,   nil,   865,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,
-   167,   166,   148,   149,   150,   157,   154,   156,   nil,   nil,
-   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,
-   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,   160,
-   161,   155,   153,   145,   168,   146,   nil,   nil,   174,   nil,
-   nil,   nil,   nil,   501,   453,   nil,   nil,   502,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   167,   166,
-   148,   149,   150,   157,   154,   156,   nil,   nil,   151,   152,
-   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,   nil,
-   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   163,   162,   nil,   147,   169,   165,   164,   160,   161,   155,
-   153,   145,   168,   146,   nil,   922,   174,   604,   603,   602,
-   923,   605,   922,   nil,   604,   603,   602,   923,   605,   nil,
-   nil,   613,   nil,   nil,   nil,   nil,   167,   nil,   613,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   609,   nil,   618,   617,   621,   620,   nil,   nil,   nil,   618,
-   617,   621,   620,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1060,   460,   nil,   nil,  1059,   nil,   nil,   nil,   614,   nil,
-   nil,   nil,   nil,   170,   171,   614,   166,   148,   149,   150,
-   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,
-   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   278,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,
-   147,   169,   165,   164,   160,   161,   155,   153,   145,   168,
-   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,  1063,   453,
-   nil,   nil,  1064,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   171,   167,   166,   148,   149,   150,   157,   154,
-   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,
-   158,   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,
-   165,   164,   160,   161,   155,   153,   145,   168,   146,   nil,
-   nil,   174,   nil,   nil,   nil,   nil,  1065,   460,   nil,   nil,
-  1066,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   171,   167,   166,   148,   149,   150,   157,   154,   156,   nil,
-   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,
-   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,
-   160,   161,   155,   153,   145,   168,   146,   nil,   922,   174,
-   604,   603,   602,   923,   605,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,   167,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   609,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   618,   617,   621,   620,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   614 ]
-
-racc_action_check = [
-   109,     2,     2,     2,     2,     2,     2,   109,   109,   109,
-     2,     2,   109,   109,   109,     2,   109,     2,     2,     2,
-     2,     2,     2,     2,   109,   349,   109,   109,   109,     2,
-     2,     2,     2,     2,     2,     2,   109,   109,     2,   109,
-   109,   109,   109,   109,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,     2,     2,   680,     2,     2,     2,
-   357,     2,     2,   358,     2,     2,     2,   109,   109,   109,
-   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   109,   350,   702,   109,   109,   109,     2,   109,   109,     2,
-   680,   109,     2,     2,   109,   109,     2,   109,     2,   109,
-     1,   109,     2,   109,   109,   109,   109,   109,   109,   109,
-     2,   109,    65,   109,     3,     2,     2,     2,     2,     2,
-     2,   361,   576,   398,     2,     2,   109,   109,   109,   109,
-   931,   109,     2,   109,   112,     2,     2,     2,   109,   349,
-   109,   112,   112,   112,   349,   936,   112,   112,   112,   702,
-   112,   566,   861,   740,    17,    17,   465,   465,   112,  1063,
-   112,   112,   112,   713,   713,   357,  1064,    29,   358,  1076,
-   112,   112,  1065,   112,   112,   112,   112,   112,    44,    44,
-   760,   760,   697,   234,   702,   703,   398,   702,   741,   742,
-   761,   743,   862,   697,    22,   350,   329,   329,   702,    65,
-   350,   112,   112,   112,   112,   112,   112,   112,   112,   112,
-   112,   112,   112,   112,   112,   682,   401,   112,   112,   112,
-   580,   112,   112,    13,   580,   112,   361,   576,   112,   112,
-    22,   112,    29,   112,   324,   112,   234,   112,   112,   112,
-   112,   112,   112,   112,   931,   112,   465,   112,    15,   931,
-  1065,   566,   703,   713,    29,   742,   566,   743,   740,   936,
-   112,   112,   112,   112,   936,   112,   861,   112,   455,   861,
-   760,   861,   112,  1063,   112,   455,   455,   455,  1063,   401,
-  1064,   455,   455,  1076,   455,  1064,  1065,   703,  1076,   831,
-   703,  1065,    92,   741,   742,   761,   743,   862,    16,   324,
-    92,   703,   682,   235,   455,   455,    27,   455,   455,   455,
-   455,   455,    19,    27,   714,    20,   998,   237,   998,    19,
-   714,   324,   634,   831,   368,   433,   385,   471,    19,   673,
-    18,   368,    25,   578,    40,   455,   455,   455,   455,   455,
-   455,   455,   455,   455,   455,   455,   455,   455,   455,   348,
-   348,   455,   455,   455,   579,   455,   235,    20,    41,   455,
-   728,   728,   455,   674,   798,   705,   387,   455,    20,   455,
-   237,   455,   455,   455,   455,   455,   455,   455,   433,   455,
-   471,   455,   673,   634,   634,   637,   578,   385,   385,   385,
-   836,   864,   634,   578,   455,   455,   456,   455,   578,   455,
-    41,   799,   578,   456,   456,   456,   455,   579,   455,   456,
-   456,    41,   456,   763,   579,   369,   674,   798,   705,   579,
-   578,   456,   369,   579,   763,   705,    43,   387,   387,   387,
-   705,   392,   456,   456,   705,   456,   456,   456,   456,   456,
-    49,   579,   370,   836,   864,   820,   637,   637,    73,   370,
-   836,   864,   705,   907,   799,   637,   864,   763,   763,   836,
-   864,   754,   754,   456,   456,   456,   456,   456,   456,   456,
-   456,   456,   456,   456,   456,   456,   456,   836,   864,   456,
-   456,   456,   371,   456,    47,    47,   395,   456,    99,   371,
-   456,   763,   392,   392,   392,   456,   100,   456,   820,   456,
-   456,   456,   456,   456,   456,   456,   907,   456,   456,   456,
-   101,    42,   383,   403,   383,   383,   383,   383,   383,    47,
-    47,   389,   456,   456,   389,   456,   333,   456,   383,   555,
-   675,   102,   555,   372,   456,   449,   456,   675,   675,   675,
-   372,   971,   675,   675,   675,   135,   675,   395,   395,   395,
-   383,   383,   971,    42,   216,   675,   675,   675,   675,   383,
-   383,   383,   383,   236,    42,   238,   675,   675,   333,   675,
-   675,   675,   675,   675,   403,   403,   403,   449,   556,   333,
-   373,   556,   389,   389,   374,   971,   971,   373,   449,   239,
-   896,   374,   896,   896,   896,   383,   896,   675,   675,   675,
-   675,   675,   675,   675,   675,   675,   675,   675,   675,   675,
-   675,   243,   450,   675,   675,   675,   375,   675,   675,   971,
-   277,   675,   292,   375,   675,   675,   293,   675,   896,   675,
-   296,   675,   657,   675,   675,   675,   675,   675,   675,   675,
-   376,   675,   675,   675,   766,   766,   593,   376,   593,   593,
-   593,   593,   593,    50,   450,   309,   675,   675,   675,   675,
-    50,   675,   593,   675,   676,   450,  1034,  1034,   675,    50,
-   675,   676,   676,   676,   657,   311,   676,   676,   676,   378,
-   676,   312,   233,   313,   593,   657,   378,   319,   492,   233,
-   676,   676,   676,   593,   593,   593,   593,     5,   233,   322,
-   676,   676,     5,   676,   676,   676,   676,   676,  1013,   323,
-  1013,  1013,  1013,   560,  1013,   609,   560,   609,   609,   609,
-   492,   609,   328,   303,   492,   492,   492,   492,   303,   593,
-   330,   676,   676,   676,   676,   676,   676,   676,   676,   676,
-   676,   676,   676,   676,   676,   334,  1013,   676,   676,   676,
-   316,   676,   676,   609,   335,   676,   338,   316,   676,   676,
-   344,   676,   609,   676,   477,   676,   316,   676,   676,   676,
-   676,   676,   676,   676,   354,   676,   355,   676,   757,   354,
-   757,   757,   757,   757,   757,     9,     9,     9,     9,     9,
-   676,   676,   676,   676,   757,   676,   477,   676,   800,   356,
-   477,   477,   676,   137,   676,   800,   800,   800,   137,   137,
-   360,   800,   800,   317,   800,   775,   757,   775,   775,   775,
-   317,   775,   478,   362,   391,   757,   757,   757,   757,   317,
-   849,   870,   394,   849,   800,   800,   870,   800,   800,   800,
-   800,   800,   874,   397,   318,   400,   895,   874,   895,   895,
-   895,   318,   895,   775,   478,   423,   425,   428,   478,   478,
-   318,   757,   775,   430,   444,   800,   800,   800,   800,   800,
-   800,   800,   800,   800,   800,   800,   800,   800,   800,   320,
-   493,   800,   800,   800,   895,   800,   320,  1005,   447,   800,
-  1005,   945,   800,   895,   448,   320,   945,   800,   457,   800,
-   467,   800,   800,   800,   800,   800,   800,   800,   479,   800,
-   480,   800,   493,   481,   336,   359,   493,   493,   493,   493,
-   482,   336,   359,   498,   800,   800,   801,   800,   505,   800,
-   336,   359,   509,   801,   801,   801,   800,   524,   800,   801,
-   801,   758,   801,   758,   758,   758,   758,   758,   432,   525,
-   779,   801,   779,   779,   779,   432,   779,   758,   526,   529,
-   531,   536,   801,   801,   432,   801,   801,   801,   801,   801,
-  1014,   535,  1014,  1014,  1014,   540,  1014,   550,   535,   758,
-   786,   786,   551,   552,   786,   786,   786,   535,   758,   758,
-   758,   758,   557,   801,   801,   801,   801,   801,   801,   801,
-   801,   801,   801,   801,   801,   801,   801,   582,  1014,   801,
-   801,   801,   746,   801,   582,   558,   561,   801,   563,   746,
-   801,   567,   568,   582,   758,   801,   569,   801,   746,   801,
-   801,   801,   801,   801,   801,   801,   570,   801,   801,   801,
-   584,   587,   767,   984,   767,   767,   767,   767,   767,   706,
-   984,   595,   801,   801,   596,   801,   706,   801,   767,   984,
-    30,   706,   598,   865,   801,   706,   801,    30,    30,    30,
-   865,   599,    30,    30,    30,   865,    30,   497,   600,   865,
-   767,   607,   615,   619,   622,    30,    30,    30,   989,   767,
-   767,   767,   767,   497,   497,   989,    30,    30,   641,    30,
-    30,    30,    30,    30,   989,   644,   650,   658,   663,   497,
-   990,   497,   669,   497,   497,   497,   497,   990,   677,   497,
-   678,   497,   681,   685,   687,   767,   990,    30,    30,    30,
-    30,    30,    30,    30,    30,    30,    30,    30,    30,    30,
-    30,   689,   991,    30,    30,    30,   993,   691,    30,   991,
-    30,    30,   699,   993,    30,    30,   701,    30,   991,    30,
-   704,    30,   993,    30,    30,    30,    30,    30,    30,    30,
-   707,    30,    30,    30,  1025,   708,  1033,   711,   712,   730,
-   736,  1025,   739,  1033,   762,   777,    30,    30,    31,    30,
-  1025,    30,  1033,   778,   781,    31,    31,    31,    30,   793,
-    31,    31,    31,   769,    31,   769,   769,   769,   769,   769,
-  1066,   795,   797,   805,    31,    31,   829,  1066,   835,   769,
-   845,   846,  1066,   850,    31,    31,  1066,    31,    31,    31,
-    31,    31,   954,   856,   954,   954,   954,   863,   954,   867,
-  1042,   769,  1042,  1042,  1042,   871,  1042,   872,   873,   880,
-   769,   769,   769,   769,   881,    31,    31,    31,    31,    31,
-    31,    31,    31,    31,    31,    31,    31,    31,    31,   882,
-   886,    31,    31,    31,   887,   889,    31,   890,    31,    31,
-   892,   894,    31,    31,   904,    31,   769,    31,   906,    31,
-   913,    31,    31,    31,    31,    31,    31,    31,   914,    31,
-   916,    31,   307,   307,   307,   307,   307,   343,   343,   343,
-   343,   343,   917,   918,    31,    31,    60,    31,   920,    31,
-   921,   922,   944,    60,    60,    60,    31,   951,    60,    60,
-    60,   771,    60,   771,   771,   771,   771,   771,   952,   953,
-   968,   969,    60,    60,    60,   982,   985,   771,   987,   992,
-  1009,  1010,    60,    60,  1011,    60,    60,    60,    60,    60,
-   523,   523,   523,   523,   523,  1012,  1015,  1018,  1019,   771,
-  1020,  1021,  1023,  1029,  1039,  1040,  1048,  1059,  1060,  1062,
-   771,   771,  1071,    60,    60,    60,    60,    60,    60,    60,
-    60,    60,    60,    60,    60,    60,    60,  1072,  1073,    60,
-    60,    60,  1074,  1075,    60,  1083,   nil,    60,   nil,   nil,
-    60,    60,   nil,    60,   771,    60,   nil,    60,   nil,    60,
-    60,    60,    60,    60,    60,    60,   nil,    60,   nil,    60,
-   824,   nil,   824,   824,   824,   824,   824,   nil,   nil,   nil,
-   nil,   nil,    60,    60,    60,    60,   824,    60,   451,    60,
-   nil,   nil,   nil,   nil,    60,   451,   451,   451,   nil,   nil,
-   451,   451,   451,   nil,   451,   547,   nil,   nil,   824,   nil,
-   nil,   nil,   nil,   451,   451,   451,   nil,   824,   824,   824,
-   824,   547,   547,   nil,   451,   451,   nil,   451,   451,   451,
-   451,   451,   nil,   nil,   nil,   nil,   nil,   547,   nil,   547,
-   nil,   547,   547,   547,   547,   824,   nil,   547,   nil,   547,
-   nil,   nil,   nil,   824,   nil,   451,   451,   451,   451,   451,
-   451,   451,   451,   451,   451,   451,   451,   451,   451,   nil,
-   nil,   451,   451,   451,   nil,   nil,   451,   nil,   451,   451,
-   nil,   nil,   451,   451,   nil,   451,   nil,   451,   nil,   451,
-   nil,   451,   451,   451,   451,   451,   451,   451,   nil,   451,
-   451,   451,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   451,   451,   460,   451,   nil,   451,
-   nil,   nil,   nil,   460,   460,   460,   451,   nil,   460,   460,
-   460,   957,   460,   957,   957,   957,   957,   957,   nil,   nil,
-   nil,   460,   460,   460,   460,   nil,   nil,   957,   nil,   nil,
-   nil,   nil,   460,   460,   nil,   460,   460,   460,   460,   460,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   957,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   957,   957,
-   957,   957,   nil,   460,   460,   460,   460,   460,   460,   460,
-   460,   460,   460,   460,   460,   460,   460,   nil,   nil,   460,
-   460,   460,   nil,   nil,   460,   nil,   nil,   460,   nil,   nil,
-   460,   460,   nil,   460,   957,   460,   nil,   460,   nil,   460,
-   460,   460,   460,   460,   460,   460,   nil,   460,   460,   460,
-   959,   nil,   959,   959,   959,   959,   959,   nil,   nil,   nil,
-   nil,   nil,   460,   460,   460,   460,   959,   460,   461,   460,
-   nil,   nil,   nil,   nil,   460,   461,   461,   461,   nil,   nil,
-   461,   461,   461,   nil,   461,   483,   nil,   nil,   959,   nil,
-   nil,   nil,   nil,   461,   461,   461,   461,   nil,   nil,   959,
-   959,   483,   483,   nil,   461,   461,   nil,   461,   461,   461,
-   461,   461,   nil,   nil,   nil,   nil,   nil,   483,   nil,   483,
-   nil,   483,   483,   483,   483,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   959,   nil,   461,   461,   461,   461,   461,
-   461,   461,   461,   461,   461,   461,   461,   461,   461,   nil,
-   nil,   461,   461,   461,   nil,   nil,   461,   nil,   nil,   461,
-   nil,   nil,   461,   461,   nil,   461,   nil,   461,   nil,   461,
-   nil,   461,   461,   461,   461,   461,   461,   461,   nil,   461,
-   461,   461,   961,   nil,   961,   961,   961,   961,   961,   nil,
-   nil,   nil,   nil,   nil,   461,   461,   461,   461,   961,   461,
-   500,   461,   nil,   nil,   nil,   nil,   461,   500,   500,   500,
-   nil,   nil,   500,   500,   500,   nil,   500,   nil,   nil,   nil,
-   961,   nil,   nil,   nil,   nil,   500,   500,   nil,   nil,   nil,
-   nil,   961,   961,   nil,   nil,   nil,   500,   500,   nil,   500,
-   500,   500,   500,   500,   963,   nil,   963,   963,   963,   963,
-   963,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   963,   nil,   nil,   nil,   nil,   961,   nil,   475,   475,   475,
-   475,   475,   475,   475,   475,   475,   475,   475,   500,   475,
-   475,   nil,   963,   475,   475,   500,   nil,   nil,   nil,   nil,
-   500,   500,   nil,   963,   963,   nil,   nil,   nil,   nil,   475,
-   nil,   475,   nil,   475,   475,   475,   475,   475,   475,   475,
-   nil,   475,   500,   500,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   500,   963,   nil,   nil,
-   nil,   500,    36,    36,    36,    36,    36,    36,   500,   nil,
-   nil,    36,    36,   nil,   nil,   nil,    36,   nil,    36,    36,
-    36,    36,    36,    36,    36,   nil,   nil,   nil,   nil,   nil,
-    36,    36,    36,    36,    36,    36,    36,   nil,   nil,    36,
-   nil,   nil,   nil,   nil,   437,    36,    36,    36,    36,    36,
-    36,    36,    36,    36,    36,    36,    36,   nil,    36,    36,
-    36,   nil,    36,    36,   nil,    36,    36,    36,   437,   437,
-   437,   437,   437,   437,   437,   437,   437,   437,   437,   nil,
-   437,   437,   nil,   nil,   437,   437,   nil,    36,   nil,   nil,
-    36,   nil,   nil,    36,    36,   nil,   nil,    36,   nil,    36,
-   437,   nil,   437,    36,   437,   437,   437,   437,   437,   437,
-   437,    36,   437,   nil,   nil,   nil,    36,    36,    36,    36,
-    36,    36,   nil,   nil,   nil,    36,    36,   nil,   437,   nil,
-   437,   nil,   nil,    36,   nil,   nil,    36,    36,    36,   218,
-   218,   218,   218,   218,   218,   nil,   nil,   nil,   218,   218,
-   nil,   nil,   nil,   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,   443,   218,   218,   218,   218,   218,   218,   218,   218,
-   218,   218,   218,   218,   nil,   218,   218,   218,   nil,   218,
-   218,   nil,   218,   218,   218,   443,   443,   443,   443,   443,
-   443,   443,   443,   443,   443,   443,   nil,   443,   443,   nil,
-   nil,   443,   443,   nil,   218,   nil,   nil,   218,   nil,   nil,
-   218,   218,   nil,   nil,   218,   nil,   218,   443,   nil,   443,
-   218,   443,   443,   443,   443,   443,   443,   443,   218,   443,
-   nil,   nil,   nil,   218,   218,   218,   218,   218,   218,   nil,
-   nil,   nil,   218,   218,   nil,   443,   nil,   nil,   nil,   nil,
-   218,   nil,   nil,   218,   218,   218,   242,   242,   242,   242,
-   242,   242,   nil,   nil,   nil,   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,   242,
-   242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
-   242,   nil,   242,   242,   242,   nil,   242,   242,   nil,   242,
-   242,   242,    24,    24,    24,    24,    24,    24,    24,    24,
-    24,    24,    24,   nil,    24,    24,   nil,   nil,    24,    24,
-   nil,   242,   nil,   nil,   242,   nil,   nil,   242,   242,   nil,
-   nil,   242,   nil,   242,    24,   nil,    24,   242,    24,    24,
-    24,    24,    24,    24,    24,   242,    24,   nil,   nil,   nil,
-   242,   242,   242,   242,   242,   242,   nil,   nil,   nil,   242,
-   242,   nil,    24,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   242,   242,   242,   310,   310,   310,   310,   310,   310,   nil,
-   nil,   nil,   310,   310,   nil,   nil,   nil,   310,   nil,   310,
-   310,   310,   310,   310,   310,   310,   nil,   nil,   nil,   nil,
-   nil,   310,   310,   310,   310,   310,   310,   310,   nil,   nil,
-   310,   nil,   nil,   nil,   nil,   nil,   310,   310,   310,   310,
-   310,   310,   310,   310,   310,   310,   310,   310,   nil,   310,
-   310,   310,   nil,   310,   310,   nil,   310,   310,   310,   290,
-   290,   290,   290,   290,   290,   290,   290,   290,   290,   290,
-   nil,   290,   290,   nil,   nil,   290,   290,   nil,   310,   nil,
-   nil,   310,   nil,   nil,   310,   310,   nil,   nil,   310,   nil,
-   310,   290,   nil,   290,   310,   290,   290,   290,   290,   290,
-   290,   290,   310,   290,   nil,   nil,   nil,   310,   310,   310,
-   310,   310,   310,   nil,   nil,   nil,   310,   310,   nil,   290,
-   nil,   nil,   nil,   nil,   310,   nil,   nil,   310,   310,   310,
-   315,   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,
-   315,   nil,   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,   315,   315,   315,   315,   315,   315,   315,
-   315,   315,   315,   315,   315,   nil,   315,   315,   315,   nil,
-   315,   315,   nil,   315,   315,   315,   496,   496,   496,   496,
-   496,   496,   496,   496,   496,   496,   496,   nil,   496,   496,
-   nil,   nil,   496,   496,   nil,   315,   nil,   nil,   315,   nil,
-   nil,   315,   315,   nil,   nil,   315,   nil,   315,   496,   nil,
-   496,   315,   496,   496,   496,   496,   496,   496,   496,   315,
-   496,   nil,   nil,   nil,   315,   315,   315,   315,   315,   315,
-   nil,   nil,   nil,   315,   315,   496,   496,   nil,   nil,   nil,
-   nil,   315,   nil,   nil,   315,   315,   315,   342,   342,   342,
-   342,   342,   342,   nil,   nil,   nil,   342,   342,   nil,   nil,
-   nil,   342,   nil,   342,   342,   342,   342,   342,   342,   342,
-   nil,   nil,   nil,   nil,   nil,   342,   342,   342,   342,   342,
-   342,   342,   nil,   nil,   342,   nil,   nil,   nil,   nil,   nil,
-   342,   342,   342,   342,   342,   342,   342,   342,   342,   342,
-   342,   342,   nil,   342,   342,   342,   nil,   342,   342,   nil,
-   342,   342,   342,   548,   548,   548,   548,   548,   548,   548,
-   548,   548,   548,   548,   nil,   548,   548,   nil,   nil,   548,
-   548,   nil,   342,   nil,   nil,   342,   nil,   nil,   342,   342,
-   nil,   nil,   342,   nil,   342,   548,   nil,   548,   342,   548,
-   548,   548,   548,   548,   548,   548,   342,   548,   nil,   nil,
-   nil,   342,   342,   342,   342,   342,   342,   nil,   nil,   nil,
-   342,   342,   nil,   548,   nil,   nil,   nil,   nil,   342,   nil,
-   nil,   342,   342,   342,   352,   352,   352,   352,   352,   352,
-   nil,   nil,   nil,   352,   352,   nil,   nil,   nil,   352,   nil,
-   352,   352,   352,   352,   352,   352,   352,   nil,   nil,   nil,
-   nil,   nil,   352,   352,   352,   352,   352,   352,   352,   nil,
-   nil,   352,   nil,   nil,   nil,   nil,   nil,   352,   352,   352,
-   352,   352,   352,   352,   352,   352,   352,   352,   352,   nil,
-   352,   352,   352,   nil,   352,   352,   nil,   352,   352,   352,
-   802,   802,   802,   802,   802,   802,   802,   802,   802,   802,
-   802,   nil,   802,   802,   nil,   nil,   802,   802,   nil,   352,
-   nil,   nil,   352,   nil,   nil,   352,   352,   nil,   nil,   352,
-   nil,   352,   802,   nil,   802,   352,   802,   802,   802,   802,
-   802,   802,   802,   352,   802,   nil,   nil,   nil,   352,   352,
-   352,   352,   352,   352,   nil,   nil,   nil,   352,   352,   nil,
-   802,   nil,   nil,   nil,   nil,   352,   nil,   nil,   352,   352,
-   352,   353,   353,   353,   353,   353,   353,   nil,   nil,   nil,
-   353,   353,   nil,   nil,   nil,   353,   nil,   353,   353,   353,
-   353,   353,   353,   353,   nil,   nil,   nil,   nil,   nil,   353,
-   353,   353,   353,   353,   353,   353,   nil,   nil,   353,   nil,
-   nil,   nil,   nil,   nil,   353,   353,   353,   353,   353,   353,
-   353,   353,   353,   353,   353,   353,   nil,   353,   353,   353,
-   nil,   353,   353,   nil,   353,   353,   353,   912,   912,   912,
-   912,   912,   912,   912,   912,   912,   912,   912,   nil,   912,
-   912,   nil,   nil,   912,   912,   nil,   353,   nil,   nil,   353,
-   nil,   nil,   353,   353,   nil,   nil,   353,   nil,   353,   912,
-   nil,   912,   353,   912,   912,   912,   912,   912,   912,   912,
-   353,   912,   nil,   nil,   nil,   353,   353,   353,   353,   353,
-   353,   nil,   nil,   nil,   353,   353,   nil,   912,   nil,   nil,
-   nil,   nil,   353,   nil,   nil,   353,   353,   353,   562,   562,
-   562,   562,   562,   562,   nil,   nil,   nil,   562,   562,   nil,
-   nil,   nil,   562,   nil,   562,   562,   562,   562,   562,   562,
-   562,   nil,   nil,   nil,   nil,   nil,   562,   562,   562,   562,
-   562,   562,   562,   nil,   nil,   562,   nil,   nil,   nil,   nil,
-   nil,   562,   562,   562,   562,   562,   562,   562,   562,   562,
-   562,   562,   562,   nil,   562,   562,   562,   nil,   562,   562,
-   nil,   562,   562,   562,   476,   476,   476,   476,   476,   476,
-   476,   476,   476,   476,   476,   nil,   476,   476,   nil,   nil,
-   476,   476,   nil,   562,   nil,   nil,   562,   nil,   nil,   562,
-   562,   nil,   nil,   562,   nil,   562,   476,   nil,   476,   562,
-   476,   476,   476,   476,   476,   476,   476,   562,   476,   nil,
-   nil,   nil,   562,   562,   562,   562,   562,   562,   nil,   nil,
-   nil,   562,   562,   nil,   nil,   nil,   nil,   nil,   nil,   562,
-   nil,   nil,   562,   562,   562,   565,   565,   565,   565,   565,
-   565,   nil,   nil,   nil,   565,   565,   nil,   nil,   nil,   565,
-   nil,   565,   565,   565,   565,   565,   565,   565,   nil,   nil,
-   nil,   nil,   nil,   565,   565,   565,   565,   565,   565,   565,
-   nil,   nil,   565,   nil,   nil,   nil,   nil,   nil,   565,   565,
-   565,   565,   565,   565,   565,   565,   565,   565,   565,   565,
-   nil,   565,   565,   565,   nil,   565,   565,   nil,   565,   565,
-   565,   486,   486,   486,   486,   486,   486,   486,   nil,   nil,
-   486,   486,   nil,   nil,   nil,   nil,   nil,   486,   486,   nil,
-   565,   nil,   nil,   565,   nil,   nil,   565,   565,   nil,   nil,
-   565,   nil,   565,   486,   nil,   486,   565,   486,   486,   486,
-   486,   486,   486,   486,   565,   486,   nil,   nil,   nil,   565,
-   565,   565,   565,   565,   565,   nil,   nil,   nil,   565,   565,
-   nil,   nil,   nil,   nil,   nil,   nil,   565,   nil,   nil,   565,
-   565,   565,   646,   646,   646,   646,   646,   646,   nil,   nil,
-   nil,   646,   646,   nil,   nil,   nil,   646,   nil,   646,   646,
-   646,   646,   646,   646,   646,   nil,   nil,   nil,   nil,   nil,
-   646,   646,   646,   646,   646,   646,   646,   nil,   nil,   646,
-   nil,   nil,   nil,   nil,   nil,   646,   646,   646,   646,   646,
-   646,   646,   646,   646,   646,   646,   646,   nil,   646,   646,
-   646,   nil,   646,   646,   nil,   646,   646,   646,   487,   487,
-   487,   487,   487,   487,   487,   nil,   nil,   487,   487,   nil,
-   nil,   nil,   nil,   nil,   487,   487,   nil,   646,   nil,   nil,
-   646,   nil,   nil,   646,   646,   nil,   nil,   646,   nil,   646,
-   487,   nil,   487,   646,   487,   487,   487,   487,   487,   487,
-   487,   646,   487,   nil,   nil,   nil,   646,   646,   646,   646,
-   646,   646,   nil,   nil,   nil,   646,   646,   nil,   nil,   nil,
-   nil,   nil,   nil,   646,   nil,   nil,   646,   646,   646,   744,
-   744,   744,   744,   744,   744,   nil,   nil,   nil,   744,   744,
-   nil,   nil,   nil,   744,   nil,   744,   744,   744,   744,   744,
-   744,   744,   nil,   nil,   nil,   nil,   nil,   744,   744,   744,
-   744,   744,   744,   744,   nil,   nil,   744,   nil,   nil,   nil,
-   nil,   nil,   744,   744,   744,   744,   744,   744,   744,   744,
-   744,   744,   744,   744,   nil,   744,   744,   744,   nil,   744,
-   744,   nil,   744,   744,   744,   488,   488,   488,   488,   488,
-   488,   488,   nil,   nil,   488,   488,   nil,   nil,   nil,   nil,
-   nil,   488,   488,   nil,   744,   nil,   nil,   744,   nil,   nil,
-   744,   744,   nil,   nil,   744,   nil,   744,   488,   nil,   488,
-   744,   488,   488,   488,   488,   488,   488,   488,   744,   488,
-   nil,   nil,   nil,   744,   744,   744,   744,   744,   744,   nil,
-   nil,   nil,   744,   744,   nil,   nil,   nil,   nil,   nil,   nil,
-   744,   nil,   nil,   744,   744,   744,   755,   755,   755,   755,
-   755,   755,   nil,   nil,   nil,   755,   755,   nil,   nil,   nil,
-   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,   755,
-   755,   755,   755,   755,   755,   755,   755,   755,   755,   755,
-   755,   nil,   755,   755,   755,   nil,   755,   755,   nil,   755,
-   755,   755,   489,   489,   489,   489,   489,   489,   489,   nil,
-   nil,   489,   489,   nil,   nil,   nil,   nil,   nil,   489,   489,
-   nil,   755,   nil,   nil,   755,   nil,   nil,   755,   755,   nil,
-   nil,   755,   nil,   755,   489,   nil,   489,   755,   489,   489,
-   489,   489,   489,   489,   489,   755,   489,   nil,   nil,   nil,
-   755,   755,   755,   755,   755,   755,   nil,   nil,   nil,   755,
-   755,   nil,   nil,   nil,   nil,   nil,   nil,   755,   nil,   nil,
-   755,   755,   755,   756,   756,   756,   756,   756,   756,   nil,
-   nil,   nil,   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,   756,   756,   756,   756,
-   756,   756,   756,   756,   756,   756,   756,   756,   nil,   756,
-   756,   756,   nil,   756,   756,   nil,   756,   756,   756,   490,
-   490,   490,   490,   490,   490,   490,   nil,   nil,   490,   490,
-   nil,   nil,   nil,   nil,   nil,   490,   490,   nil,   756,   nil,
-   nil,   756,   nil,   nil,   756,   756,   nil,   nil,   756,   nil,
-   756,   490,   nil,   490,   756,   490,   490,   490,   490,   490,
-   490,   490,   756,   490,   nil,   nil,   nil,   756,   756,   756,
-   756,   756,   756,   nil,   nil,   nil,   756,   756,   nil,   nil,
-   nil,   nil,   nil,   nil,   756,   nil,   nil,   756,   756,   756,
-   787,   787,   787,   787,   787,   787,   nil,   nil,   nil,   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,   787,   787,   787,   787,   787,   787,   787,
-   787,   787,   787,   787,   787,   nil,   787,   787,   787,   nil,
-   787,   787,   nil,   787,   787,   787,   491,   491,   491,   491,
-   491,   491,   491,   nil,   nil,   491,   491,   nil,   nil,   nil,
-   nil,   nil,   491,   491,   nil,   787,   nil,   nil,   787,   nil,
-   nil,   787,   787,   nil,   nil,   787,   nil,   787,   491,   nil,
-   491,   787,   491,   491,   491,   491,   491,   491,   491,   787,
-   491,   nil,   nil,   nil,   787,   787,   787,   787,   787,   787,
-   nil,   nil,   nil,   787,   787,   nil,   nil,   nil,   nil,   nil,
-   nil,   787,   nil,   nil,   787,   787,   787,   826,   826,   826,
-   826,   826,   826,   nil,   nil,   nil,   826,   826,   nil,   nil,
-   nil,   826,   nil,   826,   826,   826,   826,   826,   826,   826,
-   nil,   nil,   nil,   nil,   nil,   826,   826,   826,   826,   826,
-   826,   826,   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,
-   826,   826,   826,   826,   826,   826,   826,   826,   826,   826,
-   826,   826,   nil,   826,   826,   826,   nil,   826,   826,   nil,
-   826,   826,   826,   494,   494,   494,   494,   494,   494,   494,
-   nil,   nil,   494,   494,   nil,   nil,   nil,   nil,   nil,   494,
-   494,   nil,   826,   nil,   nil,   826,   nil,   nil,   826,   826,
-   nil,   nil,   826,   nil,   826,   494,   nil,   494,   826,   494,
-   494,   494,   494,   494,   494,   494,   826,   494,   nil,   nil,
-   nil,   826,   826,   826,   826,   826,   826,   nil,   nil,   nil,
-   826,   826,   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,
-   nil,   826,   826,   826,   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,
-   495,   495,   495,   495,   495,   495,   495,   495,   nil,   495,
-   495,   nil,   nil,   nil,   nil,   nil,   495,   495,   nil,   843,
-   nil,   nil,   843,   nil,   nil,   843,   843,   nil,   nil,   843,
-   nil,   843,   495,   nil,   495,   843,   495,   495,   495,   495,
-   495,   495,   495,   843,   495,   nil,   nil,   nil,   843,   843,
-   843,   843,   843,   843,   nil,   nil,   nil,   843,   843,   nil,
-   nil,   nil,   nil,   nil,   nil,   843,   nil,   nil,   843,   843,
-   843,   855,   855,   855,   855,   855,   855,   nil,   nil,   nil,
-   855,   855,   nil,   nil,   nil,   855,   nil,   855,   855,   855,
-   855,   855,   855,   855,   nil,   nil,   nil,   nil,   nil,   855,
-   855,   855,   855,   855,   855,   855,   nil,   nil,   855,   nil,
-   nil,   nil,   nil,   nil,   855,   855,   855,   855,   855,   855,
-   855,   855,   855,   855,   855,   855,   nil,   855,   855,   855,
-   nil,   855,   855,   nil,   855,   855,   855,   484,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   484,   484,   nil,   855,   nil,   nil,   855,
-   nil,   485,   855,   855,   nil,   nil,   855,   nil,   855,   484,
-   nil,   484,   855,   484,   484,   484,   484,   485,   485,   nil,
-   855,   nil,   nil,   nil,   nil,   855,   855,   855,   855,   855,
-   855,   nil,   nil,   485,   855,   855,   nil,   485,   485,   485,
-   485,   nil,   855,   nil,   nil,   855,   855,   855,   868,   868,
-   868,   868,   868,   868,   nil,   nil,   nil,   868,   868,   nil,
-   nil,   nil,   868,   nil,   868,   868,   868,   868,   868,   868,
-   868,   nil,   nil,   nil,   nil,   nil,   868,   868,   868,   868,
-   868,   868,   868,   nil,   nil,   868,   nil,   nil,   nil,   nil,
-   nil,   868,   868,   868,   868,   868,   868,   868,   868,   868,
-   868,   868,   868,   nil,   868,   868,   868,   nil,   868,   868,
-   nil,   868,   868,   868,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   868,   nil,   nil,   868,   nil,   nil,   868,
-   868,   nil,   nil,   868,   nil,   868,   nil,   nil,   nil,   868,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,   nil,
-   nil,   nil,   868,   868,   868,   868,   868,   868,   nil,   nil,
-   nil,   868,   868,   nil,   nil,   nil,   nil,   nil,   nil,   868,
-   nil,   nil,   868,   868,   868,   878,   878,   878,   878,   878,
-   878,   nil,   nil,   nil,   878,   878,   nil,   nil,   nil,   878,
-   nil,   878,   878,   878,   878,   878,   878,   878,   nil,   nil,
-   nil,   nil,   nil,   878,   878,   878,   878,   878,   878,   878,
-   nil,   nil,   878,   nil,   nil,   nil,   nil,   nil,   878,   878,
-   878,   878,   878,   878,   878,   878,   878,   878,   878,   878,
-   nil,   878,   878,   878,   nil,   878,   878,   nil,   878,   878,
-   878,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   878,   nil,   nil,   878,   nil,   nil,   878,   878,   nil,   nil,
-   878,   nil,   878,   nil,   nil,   nil,   878,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   878,   nil,   nil,   nil,   nil,   878,
-   878,   878,   878,   878,   878,   nil,   nil,   nil,   878,   878,
-   nil,   nil,   nil,   nil,   nil,   nil,   878,   nil,   nil,   878,
-   878,   878,   879,   879,   879,   879,   879,   879,   nil,   nil,
-   nil,   879,   879,   nil,   nil,   nil,   879,   nil,   879,   879,
-   879,   879,   879,   879,   879,   nil,   nil,   nil,   nil,   nil,
-   879,   879,   879,   879,   879,   879,   879,   nil,   nil,   879,
-   nil,   nil,   nil,   nil,   nil,   879,   879,   879,   879,   879,
-   879,   879,   879,   879,   879,   879,   879,   nil,   879,   879,
-   879,   nil,   879,   879,   nil,   879,   879,   879,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   879,   nil,   nil,
-   879,   nil,   nil,   879,   879,   nil,   nil,   879,   nil,   879,
-   nil,   nil,   nil,   879,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   879,   nil,   nil,   nil,   nil,   879,   879,   879,   879,
-   879,   879,   nil,   nil,   nil,   879,   879,   nil,   nil,   nil,
-   nil,   nil,   nil,   879,   nil,   nil,   879,   879,   879,   928,
-   928,   928,   928,   928,   928,   nil,   nil,   nil,   928,   928,
-   nil,   nil,   nil,   928,   nil,   928,   928,   928,   928,   928,
-   928,   928,   nil,   nil,   nil,   nil,   nil,   928,   928,   928,
-   928,   928,   928,   928,   nil,   nil,   928,   nil,   nil,   nil,
-   nil,   nil,   928,   928,   928,   928,   928,   928,   928,   928,
-   928,   928,   928,   928,   nil,   928,   928,   928,   nil,   928,
-   928,   nil,   928,   928,   928,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   928,   nil,   nil,   928,   nil,   nil,
-   928,   928,   nil,   nil,   928,   nil,   928,   nil,   nil,   nil,
-   928,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   928,   nil,
-   nil,   nil,   nil,   928,   928,   928,   928,   928,   928,   nil,
-   nil,   nil,   928,   928,   nil,   nil,   nil,   nil,   nil,   nil,
-   928,   nil,   nil,   928,   928,   928,   929,   929,   929,   929,
-   929,   929,   nil,   nil,   nil,   929,   929,   nil,   nil,   nil,
-   929,   nil,   929,   929,   929,   929,   929,   929,   929,   nil,
-   nil,   nil,   nil,   nil,   929,   929,   929,   929,   929,   929,
-   929,   nil,   nil,   929,   nil,   nil,   nil,   nil,   nil,   929,
-   929,   929,   929,   929,   929,   929,   929,   929,   929,   929,
-   929,   nil,   929,   929,   929,   nil,   929,   929,   nil,   929,
-   929,   929,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   929,   nil,   nil,   929,   nil,   nil,   929,   929,   nil,
-   nil,   929,   nil,   929,   nil,   nil,   nil,   929,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   929,   nil,   nil,   nil,   nil,
-   929,   929,   929,   929,   929,   929,   nil,   nil,   nil,   929,
-   929,   nil,   nil,   nil,   nil,   nil,   nil,   929,   nil,   nil,
-   929,   929,   929,   941,   941,   941,   941,   941,   941,   nil,
-   nil,   nil,   941,   941,   nil,   nil,   nil,   941,   nil,   941,
-   941,   941,   941,   941,   941,   941,   nil,   nil,   nil,   nil,
-   nil,   941,   941,   941,   941,   941,   941,   941,   nil,   nil,
-   941,   nil,   nil,   nil,   nil,   nil,   941,   941,   941,   941,
-   941,   941,   941,   941,   941,   941,   941,   941,   nil,   941,
-   941,   941,   nil,   941,   941,   nil,   941,   941,   941,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   941,   nil,
-   nil,   941,   nil,   nil,   941,   941,   nil,   nil,   941,   nil,
-   941,   nil,   nil,   nil,   941,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   941,   nil,   nil,   nil,   nil,   941,   941,   941,
-   941,   941,   941,   nil,   nil,   nil,   941,   941,   nil,   nil,
-   nil,   nil,   nil,   nil,   941,   nil,   nil,   941,   941,   941,
-   988,   988,   988,   988,   988,   988,   nil,   nil,   nil,   988,
-   988,   nil,   nil,   nil,   988,   nil,   988,   988,   988,   988,
-   988,   988,   988,   nil,   nil,   nil,   nil,   nil,   988,   988,
-   988,   988,   988,   988,   988,   nil,   nil,   988,   nil,   nil,
-   nil,   nil,   nil,   988,   988,   988,   988,   988,   988,   988,
-   988,   988,   988,   988,   988,   nil,   988,   988,   988,   nil,
-   988,   988,   nil,   988,   988,   988,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   988,   nil,   nil,   988,   nil,
-   nil,   988,   988,   nil,   nil,   988,   nil,   988,   nil,   nil,
-   nil,   988,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   988,
-   nil,   nil,   nil,   nil,   988,   988,   988,   988,   988,   988,
-   nil,   nil,   nil,   988,   988,   nil,   nil,   nil,   nil,   nil,
-   nil,   988,   nil,   nil,   988,   988,   988,   995,   995,   995,
-   995,   995,   995,   nil,   nil,   nil,   995,   995,   nil,   nil,
-   nil,   995,   nil,   995,   995,   995,   995,   995,   995,   995,
-   nil,   nil,   nil,   nil,   nil,   995,   995,   995,   995,   995,
-   995,   995,   nil,   nil,   995,   nil,   nil,   nil,   nil,   nil,
-   995,   995,   995,   995,   995,   995,   995,   995,   995,   995,
-   995,   995,   nil,   995,   995,   995,   nil,   995,   995,   nil,
-   995,   995,   995,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   995,   nil,   nil,   995,   nil,   nil,   995,   995,
-   nil,   nil,   995,   nil,   995,   nil,   nil,   nil,   995,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   995,   nil,   nil,   nil,
-   nil,   995,   995,   995,   995,   995,   995,   nil,   nil,   nil,
-   995,   995,   nil,   nil,   nil,   nil,   nil,   nil,   995,   nil,
-   nil,   995,   995,   995,  1001,  1001,  1001,  1001,  1001,  1001,
-   nil,   nil,   nil,  1001,  1001,   nil,   nil,   nil,  1001,   nil,
-  1001,  1001,  1001,  1001,  1001,  1001,  1001,   nil,   nil,   nil,
-   nil,   nil,  1001,  1001,  1001,  1001,  1001,  1001,  1001,   nil,
-   nil,  1001,   nil,   nil,   nil,   nil,   nil,  1001,  1001,  1001,
-  1001,  1001,  1001,  1001,  1001,  1001,  1001,  1001,  1001,   nil,
-  1001,  1001,  1001,   nil,  1001,  1001,   nil,  1001,  1001,  1001,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1001,
-   nil,   nil,  1001,   nil,   nil,  1001,  1001,   nil,   nil,  1001,
-   nil,  1001,   nil,   nil,   nil,  1001,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1001,   nil,   nil,   nil,   nil,  1001,  1001,
-  1001,  1001,  1001,  1001,   nil,   nil,   nil,  1001,  1001,   nil,
-   nil,   nil,   nil,   nil,   nil,  1001,   nil,   nil,  1001,  1001,
-  1001,  1002,  1002,  1002,  1002,  1002,  1002,   nil,   nil,   nil,
-  1002,  1002,   nil,   nil,   nil,  1002,   nil,  1002,  1002,  1002,
-  1002,  1002,  1002,  1002,   nil,   nil,   nil,   nil,   nil,  1002,
-  1002,  1002,  1002,  1002,  1002,  1002,   nil,   nil,  1002,   nil,
-   nil,   nil,   nil,   nil,  1002,  1002,  1002,  1002,  1002,  1002,
-  1002,  1002,  1002,  1002,  1002,  1002,   nil,  1002,  1002,  1002,
-   nil,  1002,  1002,   nil,  1002,  1002,  1002,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1002,   nil,   nil,  1002,
-   nil,   nil,  1002,  1002,   nil,   nil,  1002,   nil,  1002,   nil,
-   nil,   nil,  1002,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1002,   nil,   nil,   nil,   nil,  1002,  1002,  1002,  1002,  1002,
-  1002,   nil,   nil,   nil,  1002,  1002,   nil,   nil,   nil,   nil,
-   nil,   nil,  1002,   nil,   nil,  1002,  1002,  1002,     8,     8,
-     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,   nil,
-   nil,     8,   nil,     8,     8,     8,     8,     8,     8,     8,
-   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,     8,
-     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,   nil,
-     8,     8,     8,     8,     8,     8,     8,     8,     8,     8,
-     8,     8,   nil,     8,     8,     8,   nil,     8,     8,   nil,
-     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,     8,
-   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,   nil,
-   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,   nil,
-     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,
-   nil,     8,     8,     8,    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,
-   nil,    23,    23,    23,    23,    23,    23,    23,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-    23,    23,    23,    23,    23,    23,    23,    23,   nil,    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,   979,    23,   979,
-   979,   979,   979,   979,    23,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   979,   nil,   nil,   nil,    23,    23,    23,
-    23,    23,    23,   nil,   nil,   nil,    23,    23,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   979,   nil,    23,    23,    23,
-    32,    32,    32,   nil,    32,   nil,   979,   979,    32,    32,
-   nil,   nil,   nil,    32,   nil,    32,    32,    32,    32,    32,
-    32,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,    32,
-    32,    32,    32,    32,   nil,   nil,    32,   nil,   nil,   nil,
-   979,   nil,   nil,    32,   nil,   nil,    32,    32,    32,    32,
-    32,    32,    32,    32,    32,    32,    32,    32,   nil,    32,
-    32,   nil,    32,    32,    32,   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,
-    32,    32,   nil,   nil,    32,   nil,    32,   nil,    32,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,   nil,
-   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,    32,    32,    32,    32,    33,    33,    33,   nil,
-    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,
-   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
-   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
-   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,
-   nil,   nil,    33,    33,    33,    33,    33,    33,    33,    33,
-    33,    33,    33,    33,   nil,    33,    33,   nil,    33,    33,
-    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,
-    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
-    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,
-   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,
-    33,    33,    34,    34,    34,   nil,    34,   nil,   nil,   nil,
-    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,    34,    34,    34,    34,
-   nil,    34,    34,   nil,    34,    34,    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,
-    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,    34,    34,    34,    34,    34,
-    34,   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,    34,    34,    34,    34,    37,    37,
-    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,   nil,
-   nil,    37,   nil,    37,    37,    37,    37,    37,    37,    37,
-   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
-    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,
-   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,    37,
-    37,    37,   nil,    37,    37,    37,   nil,    37,    37,   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,    37,   nil,   nil,    37,    37,
-   nil,   nil,    37,   nil,    37,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,
-    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
-   nil,    37,    37,    37,    38,    38,    38,   nil,    38,   nil,
-   nil,   nil,    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,   nil,
-    38,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,
-    38,    38,    38,    38,    38,    38,    38,    38,   nil,    38,
-    38,    38,   nil,    38,    38,   nil,   nil,   nil,    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,  1043,    38,  1043,
-  1043,  1043,  1043,  1043,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1043,   nil,   nil,   nil,    38,    38,    38,
-    38,    38,    38,   nil,   nil,   nil,    38,    38,   nil,   nil,
-   nil,    38,   nil,   nil,    38,  1043,   nil,    38,    38,    38,
-    45,    45,    45,   nil,    45,   nil,  1043,  1043,    45,    45,
-   nil,   nil,   nil,    45,   nil,    45,    45,    45,    45,    45,
-    45,    45,   nil,   nil,   nil,   nil,   nil,    45,    45,    45,
-    45,    45,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
-  1043,   nil,   nil,    45,   nil,   nil,    45,    45,    45,    45,
-    45,    45,    45,    45,   nil,    45,    45,    45,   nil,    45,
-    45,   nil,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,   nil,   nil,
-    45,    45,   nil,  1052,    45,  1052,  1052,  1052,  1052,  1052,
-    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,  1052,
-   nil,   nil,   nil,    45,    45,    45,    45,    45,    45,   nil,
-   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,   nil,   nil,
-    45,  1052,   nil,    45,    45,    45,    46,    46,    46,   nil,
-    46,   nil,  1052,  1052,    46,    46,   nil,   nil,   nil,    46,
-   nil,    46,    46,    46,    46,    46,    46,    46,   nil,   nil,
-   nil,   nil,   nil,    46,    46,    46,    46,    46,    46,    46,
-   nil,   nil,    46,   nil,   nil,   nil,  1052,   nil,   nil,    46,
-   nil,   nil,    46,    46,    46,    46,    46,    46,    46,    46,
-   nil,    46,    46,    46,   nil,    46,    46,   nil,    46,    46,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    46,   nil,   nil,    46,   nil,   nil,    46,    46,   nil,  1054,
-    46,  1054,  1054,  1054,  1054,  1054,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    46,  1054,   nil,   nil,   nil,    46,
-    46,    46,    46,    46,    46,   nil,   nil,   nil,    46,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,    46,  1054,   nil,    46,
-    46,    46,    48,    48,    48,   nil,    48,   nil,  1054,  1054,
-    48,    48,   nil,   nil,   nil,    48,   nil,    48,    48,    48,
-    48,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,    48,
-    48,    48,    48,    48,    48,    48,   nil,   nil,    48,   nil,
-   nil,   nil,  1054,   nil,   nil,    48,   nil,   nil,    48,    48,
-    48,    48,    48,    48,    48,    48,   nil,    48,    48,    48,
-   nil,    48,    48,   nil,    48,    48,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,
-   nil,   nil,    48,    48,   nil,  1056,    48,  1056,  1056,  1056,
-  1056,  1056,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    48,  1056,   nil,   nil,   nil,    48,    48,    48,    48,    48,
-    48,   nil,   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,    48,  1056,   nil,    48,    48,    48,    62,    62,
-    62,    62,    62,   nil,  1056,  1056,    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,  1056,   nil,
-    62,    62,   nil,    62,    62,    62,    62,    62,    62,    62,
-    62,    62,   nil,    62,    62,    62,   nil,    62,    62,   nil,
-    62,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    62,   nil,   nil,    62,   nil,   nil,    62,    62,
-   nil,   nil,    62,   nil,    62,   nil,   nil,   nil,    62,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,   nil,
-   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,   nil,
-    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,
-   nil,    62,    62,    62,    67,    67,    67,   nil,    67,   nil,
-   nil,   nil,    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,  1078,    67,  1078,
-  1078,  1078,  1078,  1078,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,  1078,   nil,   nil,   nil,    67,    67,    67,
-    67,    67,    67,   nil,   nil,   nil,    67,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,  1078,   nil,    67,    67,    67,
-    68,    68,    68,   nil,    68,   nil,  1078,  1078,    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,
-  1078,   nil,   nil,    68,   nil,   nil,    68,    68,    68,    68,
-    68,    68,    68,    68,   nil,    68,    68,    68,   nil,    68,
-    68,   nil,    68,    68,    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,   nil,   nil,   nil,   nil,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,
-   nil,   nil,   nil,    68,    68,    68,    68,    68,    68,   nil,
-   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,   nil,   nil,
-    68,   nil,   nil,    68,    68,    68,    71,    71,    71,   nil,
-    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
-   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
-   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
-   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
-   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
-   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
-    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
-    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
-    71,    71,    72,    72,    72,   nil,    72,   nil,   nil,   nil,
-    72,    72,   nil,   nil,   nil,    72,   nil,    72,    72,    72,
-    72,    72,    72,    72,   nil,   nil,   nil,   nil,   nil,    72,
-    72,    72,    72,    72,    72,    72,   nil,   nil,    72,   nil,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
-    72,    72,    72,    72,    72,    72,   nil,    72,    72,    72,
-   nil,    72,    72,   nil,   nil,   nil,    72,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,
-   nil,   nil,    72,    72,   nil,   nil,    72,   nil,    72,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,    72,
-    72,   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,   nil,
-   nil,   nil,    72,   nil,   nil,    72,    72,    72,   125,   125,
-   125,   125,   125,   nil,   nil,   nil,   125,   125,   nil,   nil,
-   nil,   125,   nil,   125,   125,   125,   125,   125,   125,   125,
-   nil,   nil,   nil,   nil,   nil,   125,   125,   125,   125,   125,
-   125,   125,   nil,   nil,   125,   nil,   nil,   nil,   nil,   nil,
-   125,   125,   125,   125,   125,   125,   125,   125,   125,   125,
-   125,   125,   nil,   125,   125,   125,   nil,   125,   125,   nil,
-   125,   125,   125,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   125,   nil,   nil,   125,   nil,   nil,   125,   125,
-   nil,   nil,   125,   nil,   125,   nil,   nil,   nil,   125,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   125,   nil,   nil,   nil,
-   nil,   125,   125,   125,   125,   125,   125,   nil,   nil,   nil,
-   125,   125,   nil,   nil,   nil,   nil,   nil,   125,   125,   nil,
-   nil,   125,   125,   125,   130,   130,   130,   nil,   130,   nil,
-   nil,   nil,   130,   130,   nil,   nil,   nil,   130,   nil,   130,
-   130,   130,   130,   130,   130,   130,   nil,   nil,   nil,   nil,
-   nil,   130,   130,   130,   130,   130,   130,   130,   nil,   nil,
-   130,   nil,   nil,   nil,   nil,   nil,   nil,   130,   nil,   nil,
-   130,   130,   130,   130,   130,   130,   130,   130,   nil,   130,
-   130,   130,   nil,   130,   130,   nil,   130,   130,   130,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   130,   nil,
-   nil,   130,   nil,   nil,   130,   130,   nil,   nil,   130,   nil,
-   nil,   nil,   nil,   nil,   130,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   130,   nil,   nil,   nil,   nil,   130,   130,   130,
-   130,   130,   130,   nil,   nil,   nil,   130,   130,   nil,   nil,
-   nil,   nil,   nil,   nil,   130,   nil,   nil,   130,   130,   130,
-   131,   131,   131,   nil,   131,   nil,   nil,   nil,   131,   131,
-   nil,   nil,   nil,   131,   nil,   131,   131,   131,   131,   131,
-   131,   131,   nil,   nil,   nil,   nil,   nil,   131,   131,   131,
-   131,   131,   131,   131,   nil,   nil,   131,   nil,   nil,   nil,
-   nil,   nil,   nil,   131,   nil,   nil,   131,   131,   131,   131,
-   131,   131,   131,   131,   nil,   131,   131,   131,   nil,   131,
-   131,   nil,   131,   131,   131,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   131,   nil,   nil,   131,   nil,   nil,
-   131,   131,   nil,   nil,   131,   nil,   nil,   nil,   nil,   nil,
-   131,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   131,   nil,
-   nil,   nil,   nil,   131,   131,   131,   131,   131,   131,   nil,
-   nil,   nil,   131,   131,   nil,   nil,   nil,   nil,   nil,   nil,
-   131,   nil,   nil,   131,   131,   131,   132,   132,   132,   nil,
-   132,   nil,   nil,   nil,   132,   132,   nil,   nil,   nil,   132,
-   nil,   132,   132,   132,   132,   132,   132,   132,   nil,   nil,
-   nil,   nil,   nil,   132,   132,   132,   132,   132,   132,   132,
-   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,   nil,   132,
-   nil,   nil,   132,   132,   132,   132,   132,   132,   132,   132,
-   nil,   132,   132,   132,   nil,   132,   132,   nil,   132,   132,
-   132,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   132,   nil,   nil,   132,   nil,   nil,   132,   132,   nil,   nil,
-   132,   nil,   nil,   nil,   nil,   nil,   132,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   132,   nil,   nil,   nil,   nil,   132,
-   132,   132,   132,   132,   132,   nil,   nil,   nil,   132,   132,
-   nil,   nil,   nil,   nil,   nil,   nil,   132,   nil,   nil,   132,
-   132,   132,   133,   133,   133,   nil,   133,   nil,   nil,   nil,
-   133,   133,   nil,   nil,   nil,   133,   nil,   133,   133,   133,
-   133,   133,   133,   133,   nil,   nil,   nil,   nil,   nil,   133,
-   133,   133,   133,   133,   133,   133,   nil,   nil,   133,   nil,
-   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   133,
-   133,   133,   133,   133,   133,   133,   nil,   133,   133,   133,
-   nil,   133,   133,   nil,   133,   133,   133,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,
-   nil,   nil,   133,   133,   nil,   nil,   133,   nil,   nil,   nil,
-   nil,   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   133,   nil,   nil,   nil,   nil,   133,   133,   133,   133,   133,
-   133,   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,   nil,
-   nil,   nil,   133,   nil,   nil,   133,   133,   133,   134,   134,
-   134,   134,   134,   nil,   nil,   nil,   134,   134,   nil,   nil,
-   nil,   134,   nil,   134,   134,   134,   134,   134,   134,   134,
-   nil,   nil,   nil,   nil,   nil,   134,   134,   134,   134,   134,
-   134,   134,   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,
-   134,   134,   nil,   134,   134,   134,   134,   134,   134,   134,
-   134,   134,   nil,   134,   134,   134,   nil,   134,   134,   nil,
-   134,   134,   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   134,   nil,   nil,   134,   nil,   nil,   134,   134,
-   nil,   nil,   134,   nil,   134,   nil,   nil,   nil,   134,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   nil,
-   nil,   134,   134,   134,   134,   134,   134,   nil,   nil,   nil,
-   134,   134,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,
-   nil,   134,   134,   134,   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,
-   nil,   219,   219,   219,   219,   219,   219,   219,   nil,   nil,
-   219,   nil,   nil,   nil,   nil,   nil,   nil,   219,   nil,   nil,
-   219,   219,   219,   219,   219,   219,   219,   219,   nil,   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,
-   219,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   219,   nil,   nil,   219,   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,   nil,   220,   220,   220,
-   220,   220,   220,   220,   nil,   nil,   220,   nil,   nil,   nil,
-   nil,   nil,   nil,   220,   nil,   nil,   220,   220,   220,   220,
-   220,   220,   220,   220,   nil,   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,   220,   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,   nil,   nil,   nil,
-   220,   nil,   nil,   220,   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,   nil,   221,   221,   221,   221,   221,   221,   221,
-   nil,   nil,   221,   nil,   nil,   nil,   nil,   nil,   nil,   221,
-   nil,   nil,   221,   221,   221,   221,   221,   221,   221,   221,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   221,   nil,   nil,   221,
-   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,   nil,   222,
-   222,   222,   222,   222,   222,   222,   nil,   nil,   222,   nil,
-   nil,   nil,   nil,   nil,   nil,   222,   nil,   nil,   222,   222,
-   222,   222,   222,   222,   222,   222,   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   222,   nil,   nil,   222,   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,   nil,   223,   223,   223,   223,   223,
-   223,   223,   nil,   nil,   223,   nil,   nil,   nil,   nil,   nil,
-   nil,   223,   nil,   nil,   223,   223,   223,   223,   223,   223,
-   223,   223,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   223,   nil,
-   nil,   223,   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,
-   nil,   224,   224,   224,   224,   224,   224,   224,   nil,   nil,
-   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,
-   224,   224,   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,
-   224,   nil,   224,   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,   nil,   nil,   nil,   224,   nil,   224,   224,   224,   224,
-   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,   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,   228,   nil,
-   nil,   nil,   nil,   228,   228,   228,   228,   228,   228,   nil,
-   nil,   nil,   228,   228,   nil,   nil,   nil,   nil,   nil,   nil,
-   228,   nil,   nil,   228,   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,   nil,   229,   229,   229,   229,   229,   229,   229,
-   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,   229,
-   nil,   nil,   229,   229,   229,   229,   229,   229,   229,   229,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   229,   nil,   nil,   229,
-   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,   nil,   230,
-   230,   230,   230,   230,   230,   230,   nil,   nil,   230,   nil,
-   nil,   nil,   nil,   nil,   nil,   230,   nil,   nil,   230,   230,
-   230,   230,   230,   230,   230,   230,   nil,   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,   230,   nil,   nil,   nil,
-   nil,   nil,   230,   nil,   nil,   230,   230,   230,   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,   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,   241,   nil,   nil,   nil,
-   nil,   241,   241,   241,   241,   241,   241,   nil,   nil,   nil,
-   241,   241,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
-   nil,   241,   241,   241,   244,   244,   244,   nil,   244,   nil,
-   nil,   nil,   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,   244,   nil,   nil,   nil,   nil,   244,   244,   244,
-   244,   244,   244,   nil,   nil,   nil,   244,   244,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   244,   244,   244,
-   245,   245,   245,   nil,   245,   nil,   nil,   nil,   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,   245,   nil,
-   nil,   nil,   nil,   245,   245,   245,   245,   245,   245,   nil,
-   nil,   nil,   245,   245,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   245,   245,   245,   246,   246,   246,   nil,
-   246,   nil,   nil,   nil,   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,   246,   nil,   nil,   nil,   nil,   246,
-   246,   246,   246,   246,   246,   nil,   nil,   nil,   246,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,   246,   nil,   nil,   246,
-   246,   246,   247,   247,   247,   nil,   247,   nil,   nil,   nil,
-   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,
-   247,   nil,   nil,   nil,   nil,   247,   247,   247,   247,   247,
-   247,   nil,   nil,   nil,   247,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   247,   247,   247,   248,   248,
-   248,   nil,   248,   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,
-   nil,   248,   248,   248,   248,   248,   248,   nil,   nil,   nil,
-   248,   248,   nil,   nil,   nil,   nil,   nil,   nil,   248,   nil,
-   nil,   248,   248,   248,   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,
-   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,   249,   nil,   nil,   nil,   nil,   249,   249,   249,
-   249,   249,   249,   nil,   nil,   nil,   249,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   249,   249,   249,
-   250,   250,   250,   nil,   250,   nil,   nil,   nil,   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,   250,   nil,
-   nil,   nil,   nil,   250,   250,   250,   250,   250,   250,   nil,
-   nil,   nil,   250,   250,   nil,   nil,   nil,   nil,   nil,   nil,
-   250,   nil,   nil,   250,   250,   250,   251,   251,   251,   nil,
-   251,   nil,   nil,   nil,   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,   251,   nil,   nil,   nil,   nil,   251,
-   251,   251,   251,   251,   251,   nil,   nil,   nil,   251,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,   251,   nil,   nil,   251,
-   251,   251,   252,   252,   252,   nil,   252,   nil,   nil,   nil,
-   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,
-   252,   nil,   nil,   nil,   nil,   252,   252,   252,   252,   252,
-   252,   nil,   nil,   nil,   252,   252,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   252,   252,   252,   253,   253,
-   253,   nil,   253,   nil,   nil,   nil,   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,   253,   nil,   nil,   nil,
-   nil,   253,   253,   253,   253,   253,   253,   nil,   nil,   nil,
-   253,   253,   nil,   nil,   nil,   nil,   nil,   nil,   253,   nil,
-   nil,   253,   253,   253,   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,
-   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,   254,   nil,   nil,   nil,   nil,   254,   254,   254,
-   254,   254,   254,   nil,   nil,   nil,   254,   254,   nil,   nil,
-   nil,   nil,   nil,   nil,   254,   nil,   nil,   254,   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,   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,   255,   nil,
-   nil,   nil,   nil,   255,   255,   255,   255,   255,   255,   nil,
-   nil,   nil,   255,   255,   nil,   nil,   nil,   nil,   nil,   nil,
-   255,   nil,   nil,   255,   255,   255,   256,   256,   256,   nil,
-   256,   nil,   nil,   nil,   256,   256,   nil,   nil,   nil,   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,   256,   256,   256,   256,   256,   256,
-   nil,   256,   256,   256,   nil,   256,   256,   nil,   256,   256,
-   256,   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,   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,   nil,   nil,   nil,   256,   nil,   nil,   256,
-   256,   256,   257,   257,   257,   nil,   257,   nil,   nil,   nil,
-   257,   257,   nil,   nil,   nil,   257,   nil,   257,   257,   257,
-   257,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   257,
-   257,   257,   257,   257,   257,   257,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   257,
-   257,   257,   257,   257,   257,   257,   nil,   257,   257,   257,
-   nil,   257,   257,   nil,   257,   257,   257,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,
-   nil,   nil,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,
-   257,   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   257,   257,   257,   258,   258,
-   258,   nil,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,
-   nil,   258,   nil,   258,   258,   258,   258,   258,   258,   258,
-   nil,   nil,   nil,   nil,   nil,   258,   258,   258,   258,   258,
-   258,   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,
-   nil,   258,   nil,   nil,   258,   258,   258,   258,   258,   258,
-   258,   258,   nil,   258,   258,   258,   nil,   258,   258,   nil,
-   258,   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   258,   nil,   nil,   258,   nil,   nil,   258,   258,
-   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,
-   nil,   258,   258,   258,   258,   258,   258,   nil,   nil,   nil,
-   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   258,   258,   258,   259,   259,   259,   nil,   259,   nil,
-   nil,   nil,   259,   259,   nil,   nil,   nil,   259,   nil,   259,
-   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,   nil,
-   nil,   259,   259,   259,   259,   259,   259,   259,   nil,   nil,
-   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   259,   259,   259,   259,   259,   259,   259,   259,   nil,   259,
-   259,   259,   nil,   259,   259,   nil,   259,   259,   259,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,
-   nil,   259,   nil,   nil,   259,   259,   nil,   nil,   259,   nil,
-   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   259,   nil,   nil,   nil,   nil,   259,   259,   259,
-   259,   259,   259,   nil,   nil,   nil,   259,   259,   nil,   nil,
-   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,   259,   259,
-   260,   260,   260,   nil,   260,   nil,   nil,   nil,   260,   260,
-   nil,   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,
-   260,   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,
-   260,   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,
-   nil,   nil,   nil,   260,   nil,   nil,   260,   260,   260,   260,
-   260,   260,   260,   260,   nil,   260,   260,   260,   nil,   260,
-   260,   nil,   260,   260,   260,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,   nil,   nil,
-   260,   260,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,
-   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,
-   nil,   nil,   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   260,   260,   260,   261,   261,   261,   nil,
-   261,   nil,   nil,   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,
-   nil,   261,   261,   261,   nil,   261,   261,   nil,   261,   261,
-   261,   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,   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,   nil,   nil,   nil,   261,   nil,   nil,   261,
-   261,   261,   262,   262,   262,   nil,   262,   nil,   nil,   nil,
-   262,   262,   nil,   nil,   nil,   262,   nil,   262,   262,   262,
-   262,   262,   262,   262,   nil,   nil,   nil,   nil,   nil,   262,
-   262,   262,   262,   262,   262,   262,   nil,   nil,   262,   nil,
-   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,
-   262,   262,   262,   262,   262,   262,   nil,   262,   262,   262,
-   nil,   262,   262,   nil,   262,   262,   262,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,
-   nil,   nil,   262,   262,   nil,   nil,   262,   nil,   nil,   nil,
-   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   262,   nil,   nil,   nil,   nil,   262,   262,   262,   262,   262,
-   262,   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   nil,
-   nil,   nil,   262,   nil,   nil,   262,   262,   262,   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,   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,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   263,   nil,
-   nil,   263,   263,   263,   264,   264,   264,   nil,   264,   nil,
-   nil,   nil,   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,   nil,   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,
-   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   nil,   nil,   264,   264,   264,
-   264,   264,   264,   nil,   nil,   nil,   264,   264,   nil,   nil,
-   nil,   nil,   nil,   nil,   264,   nil,   nil,   264,   264,   264,
-   265,   265,   265,   nil,   265,   nil,   nil,   nil,   265,   265,
-   nil,   nil,   nil,   265,   nil,   265,   265,   265,   265,   265,
-   265,   265,   nil,   nil,   nil,   nil,   nil,   265,   265,   265,
-   265,   265,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,
-   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,   265,
-   265,   265,   265,   265,   nil,   265,   265,   265,   nil,   265,
-   265,   nil,   265,   265,   265,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,
-   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,
-   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
-   nil,   nil,   nil,   265,   265,   265,   265,   265,   265,   nil,
-   nil,   nil,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,
-   265,   nil,   nil,   265,   265,   265,   270,   270,   270,   nil,
-   270,   nil,   nil,   nil,   270,   270,   nil,   nil,   nil,   270,
-   nil,   270,   270,   270,   270,   270,   270,   270,   nil,   nil,
-   nil,   nil,   nil,   270,   270,   270,   270,   270,   270,   270,
-   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,   nil,   270,
-   nil,   nil,   270,   270,   270,   270,   270,   270,   270,   270,
-   nil,   270,   270,   270,   nil,   270,   270,   nil,   270,   270,
-   270,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   270,   nil,   nil,   270,   nil,   nil,   270,   270,   nil,   nil,
-   270,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   270,   nil,   nil,   nil,   nil,   270,
-   270,   270,   270,   270,   270,   nil,   nil,   nil,   270,   270,
-   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,   270,
-   270,   270,   278,   278,   278,   nil,   278,   nil,   nil,   nil,
-   278,   278,   nil,   nil,   nil,   278,   nil,   278,   278,   278,
-   278,   278,   278,   278,   nil,   nil,   nil,   nil,   nil,   278,
-   278,   278,   278,   278,   278,   278,   nil,   nil,   278,   nil,
-   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   278,   278,
-   278,   278,   278,   278,   278,   278,   278,   278,   278,   278,
-   nil,   278,   278,   nil,   278,   278,   278,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   278,
-   nil,   nil,   278,   278,   nil,   nil,   278,   nil,   278,   nil,
-   278,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   278,   nil,   nil,   nil,   nil,   278,   278,   278,   278,   278,
-   278,   nil,   nil,   nil,   278,   278,   nil,   nil,   nil,   nil,
-   nil,   nil,   278,   nil,   278,   278,   278,   278,   279,   279,
-   279,   nil,   279,   nil,   nil,   nil,   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,   279,   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,   279,   nil,   279,   nil,   279,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   279,   nil,   nil,   nil,
-   nil,   279,   279,   279,   279,   279,   279,   nil,   nil,   nil,
-   279,   279,   nil,   nil,   nil,   nil,   nil,   nil,   279,   nil,
-   279,   279,   279,   279,   288,   288,   288,   nil,   288,   nil,
-   nil,   nil,   288,   288,   nil,   nil,   nil,   288,   nil,   288,
-   288,   288,   288,   288,   288,   288,   nil,   nil,   nil,   nil,
-   nil,   288,   288,   288,   288,   288,   288,   288,   nil,   nil,
-   288,   nil,   nil,   nil,   nil,   nil,   nil,   288,   nil,   nil,
-   288,   288,   288,   288,   288,   288,   288,   288,   288,   288,
-   288,   288,   nil,   288,   288,   nil,   288,   288,   288,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   288,   nil,
-   nil,   288,   nil,   nil,   288,   288,   nil,   nil,   288,   nil,
-   288,   nil,   288,   nil,   288,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   288,   nil,   nil,   nil,   nil,   288,   288,   288,
-   288,   288,   288,   nil,   nil,   nil,   288,   288,   288,   nil,
-   nil,   nil,   nil,   nil,   288,   nil,   288,   288,   288,   288,
-   295,   295,   295,   nil,   295,   nil,   nil,   nil,   295,   295,
-   nil,   nil,   nil,   295,   nil,   295,   295,   295,   295,   295,
-   295,   295,   nil,   nil,   nil,   nil,   nil,   295,   295,   295,
-   295,   295,   295,   295,   nil,   nil,   295,   nil,   nil,   nil,
-   nil,   nil,   nil,   295,   nil,   nil,   295,   295,   295,   295,
-   295,   295,   295,   295,   nil,   295,   295,   295,   nil,   295,
-   295,   nil,   295,   295,   295,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   295,   nil,   nil,   295,   nil,   nil,
-   295,   295,   nil,   nil,   295,   nil,   nil,   nil,   nil,   nil,
-   295,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   295,   nil,
-   nil,   nil,   nil,   295,   295,   295,   295,   295,   295,   nil,
-   nil,   nil,   295,   295,   nil,   nil,   nil,   nil,   nil,   nil,
-   295,   nil,   nil,   295,   295,   295,   297,   297,   297,   nil,
-   297,   nil,   nil,   nil,   297,   297,   nil,   nil,   nil,   297,
-   nil,   297,   297,   297,   297,   297,   297,   297,   nil,   nil,
-   nil,   nil,   nil,   297,   297,   297,   297,   297,   297,   297,
-   nil,   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   297,
-   nil,   nil,   297,   297,   297,   297,   297,   297,   297,   297,
-   nil,   297,   297,   297,   nil,   297,   297,   nil,   297,   297,
-   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   297,   nil,   nil,   297,   nil,   nil,   297,   297,   nil,   nil,
-   297,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,   nil,   297,
-   297,   297,   297,   297,   297,   nil,   nil,   nil,   297,   297,
-   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   297,
-   297,   297,   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,   nil,   299,
-   299,   299,   299,   299,   299,   299,   nil,   nil,   299,   nil,
-   nil,   nil,   nil,   nil,   nil,   299,   nil,   nil,   299,   299,
-   299,   299,   299,   299,   299,   299,   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   299,   nil,   nil,   299,   299,   299,   300,   300,
-   300,   nil,   300,   nil,   nil,   nil,   300,   300,   nil,   nil,
-   nil,   300,   nil,   300,   300,   300,   300,   300,   300,   300,
-   nil,   nil,   nil,   nil,   nil,   300,   300,   300,   300,   300,
-   300,   300,   nil,   nil,   300,   nil,   nil,   nil,   nil,   nil,
-   nil,   300,   nil,   nil,   300,   300,   300,   300,   300,   300,
-   300,   300,   nil,   300,   300,   300,   nil,   300,   300,   nil,
-   300,   300,   300,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   300,   nil,   nil,   300,   nil,   nil,   300,   300,
-   nil,   nil,   300,   nil,   nil,   nil,   nil,   nil,   300,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   300,   nil,   nil,   nil,
-   nil,   300,   300,   300,   300,   300,   300,   nil,   nil,   nil,
-   300,   300,   nil,   nil,   nil,   nil,   nil,   nil,   300,   nil,
-   nil,   300,   300,   300,   306,   306,   306,   306,   306,   nil,
-   nil,   nil,   306,   306,   nil,   nil,   nil,   306,   nil,   306,
-   306,   306,   306,   306,   306,   306,   nil,   nil,   nil,   nil,
-   nil,   306,   306,   306,   306,   306,   306,   306,   nil,   nil,
-   306,   nil,   nil,   nil,   nil,   nil,   306,   306,   nil,   306,
-   306,   306,   306,   306,   306,   306,   306,   306,   nil,   306,
-   306,   306,   nil,   306,   306,   nil,   306,   306,   306,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   306,   nil,
-   nil,   306,   nil,   nil,   306,   306,   nil,   nil,   306,   nil,
-   306,   nil,   nil,   nil,   306,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   306,   nil,   nil,   nil,   nil,   306,   306,   306,
-   306,   306,   306,   nil,   nil,   nil,   306,   306,   nil,   nil,
-   nil,   nil,   nil,   nil,   306,   nil,   nil,   306,   306,   306,
-   314,   314,   314,   nil,   314,   nil,   nil,   nil,   314,   314,
-   nil,   nil,   nil,   314,   nil,   314,   314,   314,   314,   314,
-   314,   314,   nil,   nil,   nil,   nil,   nil,   314,   314,   314,
-   314,   314,   314,   314,   nil,   nil,   314,   nil,   nil,   nil,
-   nil,   nil,   nil,   314,   nil,   nil,   314,   314,   314,   314,
-   314,   314,   314,   314,   nil,   314,   314,   314,   nil,   314,
-   314,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,   nil,   nil,
-   314,   314,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   314,   314,   314,   314,   314,   314,   nil,
-   nil,   nil,   314,   314,   nil,   nil,   nil,   314,   nil,   nil,
-   314,   nil,   nil,   314,   314,   314,   331,   331,   331,   nil,
-   331,   nil,   nil,   nil,   331,   331,   nil,   nil,   nil,   331,
-   nil,   331,   331,   331,   331,   331,   331,   331,   nil,   nil,
-   nil,   nil,   nil,   331,   331,   331,   331,   331,   331,   331,
-   nil,   nil,   331,   nil,   nil,   nil,   nil,   nil,   nil,   331,
-   nil,   nil,   331,   331,   331,   331,   331,   331,   331,   331,
-   nil,   331,   331,   331,   nil,   331,   331,   nil,   nil,   nil,
-   331,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   331,   nil,   nil,   331,   nil,   nil,   331,   331,   nil,   nil,
-   331,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   331,
-   331,   331,   331,   331,   331,   nil,   nil,   nil,   331,   331,
-   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,   331,
-   331,   331,   339,   339,   339,   nil,   339,   nil,   nil,   nil,
-   339,   339,   nil,   nil,   nil,   339,   nil,   339,   339,   339,
-   339,   339,   339,   339,   nil,   nil,   nil,   nil,   nil,   339,
-   339,   339,   339,   339,   339,   339,   nil,   nil,   339,   nil,
-   nil,   nil,   nil,   nil,   nil,   339,   nil,   nil,   339,   339,
-   339,   339,   339,   339,   339,   339,   nil,   339,   339,   339,
-   nil,   339,   339,   nil,   339,   339,   339,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   339,   nil,   nil,   339,
-   nil,   nil,   339,   339,   nil,   nil,   339,   nil,   nil,   nil,
-   nil,   nil,   339,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   339,   nil,   nil,   nil,   nil,   339,   339,   339,   339,   339,
-   339,   nil,   nil,   nil,   339,   339,   nil,   nil,   nil,   nil,
-   nil,   nil,   339,   nil,   nil,   339,   339,   339,   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,   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,   341,   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,   nil,   nil,   nil,   nil,   nil,   nil,   341,   nil,
-   nil,   341,   341,   341,   345,   345,   345,   nil,   345,   nil,
-   nil,   nil,   345,   345,   nil,   nil,   nil,   345,   nil,   345,
-   345,   345,   345,   345,   345,   345,   nil,   nil,   nil,   nil,
-   nil,   345,   345,   345,   345,   345,   345,   345,   nil,   nil,
-   345,   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,
-   345,   345,   345,   345,   345,   345,   345,   345,   345,   345,
-   345,   345,   nil,   345,   345,   nil,   345,   345,   345,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,
-   nil,   345,   nil,   nil,   345,   345,   nil,   nil,   345,   nil,
-   345,   nil,   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   345,   nil,   nil,   nil,   nil,   345,   345,   345,
-   345,   345,   345,   nil,   nil,   nil,   345,   345,   nil,   nil,
-   nil,   nil,   nil,   nil,   345,   nil,   345,   345,   345,   345,
-   346,   346,   346,   nil,   346,   nil,   nil,   nil,   346,   346,
-   nil,   nil,   nil,   346,   nil,   346,   346,   346,   346,   346,
-   346,   346,   nil,   nil,   nil,   nil,   nil,   346,   346,   346,
-   346,   346,   346,   346,   nil,   nil,   346,   nil,   nil,   nil,
-   nil,   nil,   nil,   346,   nil,   nil,   346,   346,   346,   346,
-   346,   346,   346,   346,   346,   346,   346,   346,   nil,   346,
-   346,   nil,   346,   346,   346,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   346,   nil,   nil,   346,   nil,   nil,
-   346,   346,   nil,   nil,   346,   nil,   nil,   nil,   nil,   nil,
-   346,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   346,   nil,
-   nil,   nil,   nil,   346,   346,   346,   346,   346,   346,   nil,
-   nil,   nil,   346,   346,   nil,   nil,   nil,   nil,   nil,   nil,
-   346,   nil,   346,   346,   346,   346,   351,   351,   351,   nil,
-   351,   nil,   nil,   nil,   351,   351,   nil,   nil,   nil,   351,
-   nil,   351,   351,   351,   351,   351,   351,   351,   nil,   nil,
-   nil,   nil,   nil,   351,   351,   351,   351,   351,   351,   351,
-   nil,   nil,   351,   nil,   nil,   nil,   nil,   nil,   nil,   351,
-   nil,   nil,   351,   351,   351,   351,   351,   351,   351,   351,
-   nil,   351,   351,   351,   nil,   351,   351,   nil,   351,   351,
-   351,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   351,   nil,   nil,   351,   nil,   nil,   351,   351,   nil,   nil,
-   351,   nil,   nil,   nil,   nil,   nil,   351,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   351,   nil,   nil,   nil,   nil,   351,
-   351,   351,   351,   351,   351,   nil,   nil,   nil,   351,   351,
-   nil,   nil,   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,
-   351,   351,   365,   365,   365,   nil,   365,   nil,   nil,   nil,
-   365,   365,   nil,   nil,   nil,   365,   nil,   365,   365,   365,
-   365,   365,   365,   365,   nil,   nil,   nil,   nil,   nil,   365,
-   365,   365,   365,   365,   365,   365,   nil,   nil,   365,   nil,
-   nil,   nil,   nil,   nil,   nil,   365,   nil,   nil,   365,   365,
-   365,   365,   365,   365,   365,   365,   nil,   365,   365,   365,
-   nil,   365,   365,   nil,   nil,   nil,   365,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   365,   nil,   nil,   365,
-   nil,   nil,   365,   365,   nil,   nil,   365,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   365,   365,   365,   365,   365,
-   365,   nil,   nil,   nil,   365,   365,   nil,   nil,   nil,   nil,
-   nil,   nil,   365,   nil,   nil,   365,   365,   365,   367,   367,
-   367,   nil,   367,   nil,   nil,   nil,   367,   367,   nil,   nil,
-   nil,   367,   nil,   367,   367,   367,   367,   367,   367,   367,
-   nil,   nil,   nil,   nil,   nil,   367,   367,   367,   367,   367,
-   367,   367,   nil,   nil,   367,   nil,   nil,   nil,   nil,   nil,
-   nil,   367,   nil,   nil,   367,   367,   367,   367,   367,   367,
-   367,   367,   nil,   367,   367,   367,   nil,   367,   367,   nil,
-   nil,   nil,   367,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   367,   nil,   nil,   367,   nil,   nil,   367,   367,
-   nil,   nil,   367,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   367,   367,   367,   367,   367,   367,   nil,   nil,   nil,
-   367,   367,   nil,   nil,   nil,   nil,   nil,   nil,   367,   nil,
-   nil,   367,   367,   367,   427,   427,   427,   nil,   427,   nil,
-   nil,   nil,   427,   427,   nil,   nil,   nil,   427,   nil,   427,
-   427,   427,   427,   427,   427,   427,   nil,   nil,   nil,   nil,
-   nil,   427,   427,   427,   427,   427,   427,   427,   nil,   nil,
-   427,   nil,   nil,   nil,   nil,   nil,   nil,   427,   nil,   nil,
-   427,   427,   427,   427,   427,   427,   427,   427,   nil,   427,
-   427,   427,   nil,   427,   427,   nil,   427,   427,   427,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   427,   nil,
-   nil,   427,   nil,   nil,   427,   427,   nil,   nil,   427,   nil,
-   nil,   nil,   nil,   nil,   427,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   427,   nil,   nil,   nil,   nil,   427,   427,   427,
-   427,   427,   427,   nil,   nil,   nil,   427,   427,   nil,   nil,
-   nil,   nil,   nil,   nil,   427,   nil,   nil,   427,   427,   427,
-   470,   470,   470,   nil,   470,   nil,   nil,   nil,   470,   470,
-   nil,   nil,   nil,   470,   nil,   470,   470,   470,   470,   470,
-   470,   470,   nil,   nil,   nil,   nil,   nil,   470,   470,   470,
-   470,   470,   470,   470,   nil,   nil,   470,   nil,   nil,   nil,
-   nil,   nil,   nil,   470,   nil,   nil,   470,   470,   470,   470,
-   470,   470,   470,   470,   470,   470,   470,   470,   nil,   470,
-   470,   nil,   470,   470,   470,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   470,   nil,   nil,   470,   nil,   nil,
-   470,   470,   nil,   nil,   470,   nil,   470,   nil,   470,   nil,
-   470,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   470,   nil,
-   nil,   nil,   nil,   470,   470,   470,   470,   470,   470,   nil,
-   nil,   nil,   470,   470,   nil,   nil,   nil,   nil,   nil,   nil,
-   470,   nil,   470,   470,   470,   470,   472,   472,   472,   nil,
-   472,   nil,   nil,   nil,   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,   472,   nil,   nil,   nil,   nil,   472,
-   472,   472,   472,   472,   472,   nil,   nil,   nil,   472,   472,
-   nil,   nil,   nil,   nil,   nil,   nil,   472,   nil,   nil,   472,
-   472,   472,   473,   473,   473,   nil,   473,   nil,   nil,   nil,
-   473,   473,   nil,   nil,   nil,   473,   nil,   473,   473,   473,
-   473,   473,   473,   473,   nil,   nil,   nil,   nil,   nil,   473,
-   473,   473,   473,   473,   473,   473,   nil,   nil,   473,   nil,
-   nil,   nil,   nil,   nil,   nil,   473,   nil,   nil,   473,   473,
-   473,   473,   473,   473,   473,   473,   nil,   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,
-   nil,   nil,   473,   473,   nil,   nil,   473,   nil,   nil,   nil,
-   nil,   nil,   473,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   473,   nil,   nil,   nil,   nil,   473,   473,   473,   473,   473,
-   473,   nil,   nil,   nil,   473,   473,   nil,   nil,   nil,   nil,
-   nil,   nil,   473,   nil,   nil,   473,   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,   nil,   nil,   nil,   nil,   474,   474,   474,   474,   474,
-   474,   474,   nil,   nil,   474,   nil,   nil,   nil,   nil,   nil,
-   nil,   474,   nil,   nil,   474,   474,   474,   474,   474,   474,
-   474,   474,   nil,   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,   nil,   nil,   474,   474,
-   nil,   nil,   474,   nil,   nil,   nil,   nil,   nil,   474,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   474,   nil,   nil,   nil,
-   nil,   474,   474,   474,   474,   474,   474,   nil,   nil,   nil,
-   474,   474,   nil,   nil,   nil,   nil,   nil,   nil,   474,   nil,
-   nil,   474,   474,   474,   512,   512,   512,   nil,   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,   nil,   512,   nil,   nil,
-   512,   512,   512,   512,   512,   512,   512,   512,   512,   512,
-   512,   512,   nil,   512,   512,   nil,   512,   512,   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,
-   512,   nil,   512,   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,   nil,   512,   nil,   512,   512,   512,   512,
-   515,   515,   515,   nil,   515,   nil,   nil,   nil,   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,   515,   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,   515,   nil,
-   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   515,   nil,
-   nil,   nil,   nil,   515,   515,   515,   515,   515,   515,   nil,
-   nil,   nil,   515,   515,   nil,   nil,   nil,   nil,   nil,   nil,
-   515,   nil,   515,   515,   515,   515,   517,   517,   517,   nil,
-   517,   nil,   nil,   nil,   517,   517,   nil,   nil,   nil,   517,
-   nil,   517,   517,   517,   517,   517,   517,   517,   nil,   nil,
-   nil,   nil,   nil,   517,   517,   517,   517,   517,   517,   517,
-   nil,   nil,   517,   nil,   nil,   nil,   nil,   nil,   nil,   517,
-   nil,   nil,   517,   517,   517,   517,   517,   517,   517,   517,
-   nil,   517,   517,   517,   nil,   517,   517,   nil,   517,   517,
-   517,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   517,   nil,   nil,   517,   nil,   nil,   517,   517,   nil,   nil,
-   517,   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   517,   nil,   nil,   nil,   nil,   517,
-   517,   517,   517,   517,   517,   nil,   nil,   nil,   517,   517,
-   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,   517,
-   517,   517,   522,   522,   522,   522,   522,   nil,   nil,   nil,
-   522,   522,   nil,   nil,   nil,   522,   nil,   522,   522,   522,
-   522,   522,   522,   522,   nil,   nil,   nil,   nil,   nil,   522,
-   522,   522,   522,   522,   522,   522,   nil,   nil,   522,   nil,
-   nil,   nil,   nil,   nil,   522,   522,   522,   522,   522,   522,
-   522,   522,   522,   522,   522,   522,   nil,   522,   522,   522,
-   nil,   522,   522,   nil,   522,   522,   522,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   522,   nil,   nil,   522,
-   nil,   nil,   522,   522,   nil,   nil,   522,   nil,   522,   nil,
-   nil,   nil,   522,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   522,   nil,   nil,   nil,   nil,   522,   522,   522,   522,   522,
-   522,   nil,   nil,   nil,   522,   522,   nil,   nil,   nil,   nil,
-   nil,   522,   522,   nil,   nil,   522,   522,   522,   530,   530,
-   530,   nil,   530,   nil,   nil,   nil,   530,   530,   nil,   nil,
-   nil,   530,   nil,   530,   530,   530,   530,   530,   530,   530,
-   nil,   nil,   nil,   nil,   nil,   530,   530,   530,   530,   530,
-   530,   530,   nil,   nil,   530,   nil,   nil,   nil,   nil,   nil,
-   nil,   530,   nil,   nil,   530,   530,   530,   530,   530,   530,
-   530,   530,   nil,   530,   530,   530,   nil,   530,   530,   nil,
-   nil,   nil,   530,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   530,   nil,   nil,   530,   nil,   nil,   530,   530,
-   nil,   nil,   530,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   530,   530,   530,   530,   530,   530,   nil,   nil,   nil,
-   530,   530,   nil,   nil,   nil,   nil,   nil,   nil,   530,   nil,
-   nil,   530,   530,   530,   532,   532,   532,   nil,   532,   nil,
-   nil,   nil,   532,   532,   nil,   nil,   nil,   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,   532,   532,   532,   532,   532,   532,   532,   532,
-   532,   532,   nil,   532,   532,   nil,   532,   532,   532,   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,   532,   nil,   nil,   532,   nil,
-   532,   nil,   532,   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,   nil,   nil,   nil,   532,   nil,   532,   532,   532,   532,
-   539,   539,   539,   nil,   539,   nil,   nil,   nil,   539,   539,
-   nil,   nil,   nil,   539,   nil,   539,   539,   539,   539,   539,
-   539,   539,   nil,   nil,   nil,   nil,   nil,   539,   539,   539,
-   539,   539,   539,   539,   nil,   nil,   539,   nil,   nil,   nil,
-   nil,   nil,   nil,   539,   nil,   nil,   539,   539,   539,   539,
-   539,   539,   539,   539,   nil,   539,   539,   539,   nil,   539,
-   539,   nil,   nil,   nil,   539,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   539,   nil,   nil,   539,   nil,   nil,
-   539,   539,   nil,   nil,   539,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   539,   539,   539,   539,   539,   539,   nil,
-   nil,   nil,   539,   539,   nil,   nil,   nil,   nil,   nil,   nil,
-   539,   nil,   nil,   539,   539,   539,   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,   nil,   542,   542,   542,   542,   542,   542,   542,
-   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,   nil,   542,
-   nil,   nil,   542,   542,   542,   542,   542,   542,   542,   542,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   542,   nil,   nil,   542,
-   542,   542,   543,   543,   543,   nil,   543,   nil,   nil,   nil,
-   543,   543,   nil,   nil,   nil,   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,
-   543,   543,   543,   543,   543,   543,   nil,   543,   543,   543,
-   nil,   543,   543,   nil,   543,   543,   543,   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,   543,   nil,   nil,   543,   nil,   nil,   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,   nil,
-   nil,   nil,   543,   nil,   nil,   543,   543,   543,   544,   544,
-   544,   nil,   544,   nil,   nil,   nil,   544,   544,   nil,   nil,
-   nil,   544,   nil,   544,   544,   544,   544,   544,   544,   544,
-   nil,   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,
-   544,   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,
-   nil,   544,   nil,   nil,   544,   544,   544,   544,   544,   544,
-   544,   544,   nil,   544,   544,   544,   nil,   544,   544,   nil,
-   544,   544,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   544,   nil,   nil,   544,   nil,   nil,   544,   544,
-   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   544,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   nil,
-   nil,   544,   544,   544,   544,   544,   544,   nil,   nil,   nil,
-   544,   544,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,
-   nil,   544,   544,   544,   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,
-   nil,   549,   549,   549,   549,   549,   549,   549,   nil,   nil,
-   549,   nil,   nil,   nil,   nil,   nil,   nil,   549,   nil,   nil,
-   549,   549,   549,   549,   549,   549,   549,   549,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   549,   nil,   nil,   549,   549,   549,
-   573,   573,   573,   nil,   573,   nil,   nil,   nil,   573,   573,
-   nil,   nil,   nil,   573,   nil,   573,   573,   573,   573,   573,
-   573,   573,   nil,   nil,   nil,   nil,   nil,   573,   573,   573,
-   573,   573,   573,   573,   nil,   nil,   573,   nil,   nil,   nil,
-   nil,   nil,   nil,   573,   nil,   nil,   573,   573,   573,   573,
-   573,   573,   573,   573,   573,   573,   573,   573,   nil,   573,
-   573,   nil,   573,   573,   573,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   573,   nil,   nil,   573,   nil,   nil,
-   573,   573,   nil,   nil,   573,   nil,   573,   nil,   573,   nil,
-   573,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   573,   nil,
-   nil,   nil,   nil,   573,   573,   573,   573,   573,   573,   nil,
-   nil,   nil,   573,   573,   nil,   nil,   nil,   nil,   nil,   nil,
-   573,   nil,   573,   573,   573,   573,   585,   585,   585,   nil,
-   585,   nil,   nil,   nil,   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,
-   nil,   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,   nil,   nil,   nil,   nil,   585,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   585,   nil,   nil,   nil,   nil,   585,
-   585,   585,   585,   585,   585,   nil,   nil,   nil,   585,   585,
-   nil,   nil,   nil,   nil,   nil,   nil,   585,   nil,   nil,   585,
-   585,   585,   591,   591,   591,   nil,   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,   nil,   591,   nil,   nil,   591,   591,
-   591,   591,   591,   591,   591,   591,   nil,   591,   591,   591,
-   nil,   591,   591,   nil,   591,   591,   591,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   591,   nil,   nil,   591,
-   nil,   nil,   591,   591,   nil,   nil,   591,   nil,   nil,   nil,
-   nil,   nil,   591,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   591,   nil,   nil,   nil,   nil,   591,   591,   591,   591,   591,
-   591,   nil,   nil,   nil,   591,   591,   nil,   nil,   nil,   nil,
-   nil,   nil,   591,   nil,   nil,   591,   591,   591,   611,   611,
-   611,   nil,   611,   nil,   nil,   nil,   611,   611,   nil,   nil,
-   nil,   611,   nil,   611,   611,   611,   611,   611,   611,   611,
-   nil,   nil,   nil,   nil,   nil,   611,   611,   611,   611,   611,
-   611,   611,   nil,   nil,   611,   nil,   nil,   nil,   nil,   nil,
-   nil,   611,   nil,   nil,   611,   611,   611,   611,   611,   611,
-   611,   611,   nil,   611,   611,   611,   nil,   611,   611,   nil,
-   611,   611,   611,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   611,   nil,   nil,   611,   nil,   nil,   611,   611,
-   nil,   nil,   611,   nil,   nil,   nil,   nil,   nil,   611,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   611,   nil,   nil,   nil,
-   nil,   611,   611,   611,   611,   611,   611,   nil,   nil,   nil,
-   611,   611,   nil,   nil,   nil,   nil,   nil,   nil,   611,   nil,
-   nil,   611,   611,   611,   651,   651,   651,   nil,   651,   nil,
-   nil,   nil,   651,   651,   nil,   nil,   nil,   651,   nil,   651,
-   651,   651,   651,   651,   651,   651,   nil,   nil,   nil,   nil,
-   nil,   651,   651,   651,   651,   651,   651,   651,   nil,   nil,
-   651,   nil,   nil,   nil,   nil,   nil,   nil,   651,   nil,   nil,
-   651,   651,   651,   651,   651,   651,   651,   651,   nil,   651,
-   651,   651,   nil,   651,   651,   nil,   651,   651,   651,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   651,   nil,
-   nil,   651,   nil,   nil,   651,   651,   nil,   nil,   651,   nil,
-   651,   nil,   nil,   nil,   651,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   651,   nil,   nil,   nil,   nil,   651,   651,   651,
-   651,   651,   651,   nil,   nil,   nil,   651,   651,   nil,   nil,
-   nil,   nil,   nil,   nil,   651,   nil,   nil,   651,   651,   651,
-   652,   652,   652,   nil,   652,   nil,   nil,   nil,   652,   652,
-   nil,   nil,   nil,   652,   nil,   652,   652,   652,   652,   652,
-   652,   652,   nil,   nil,   nil,   nil,   nil,   652,   652,   652,
-   652,   652,   652,   652,   nil,   nil,   652,   nil,   nil,   nil,
-   nil,   nil,   nil,   652,   nil,   nil,   652,   652,   652,   652,
-   652,   652,   652,   652,   nil,   652,   652,   652,   nil,   652,
-   652,   nil,   652,   652,   652,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   652,   nil,   nil,   652,   nil,   nil,
-   652,   652,   nil,   nil,   652,   nil,   nil,   nil,   nil,   nil,
-   652,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   652,   nil,
-   nil,   nil,   nil,   652,   652,   652,   652,   652,   652,   nil,
-   nil,   nil,   652,   652,   nil,   nil,   nil,   nil,   nil,   nil,
-   652,   nil,   nil,   652,   652,   652,   653,   653,   653,   nil,
-   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,   nil,   653,
-   nil,   nil,   653,   653,   653,   653,   653,   653,   653,   653,
-   653,   653,   653,   653,   nil,   653,   653,   nil,   653,   653,
-   653,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   653,   nil,   nil,   653,   nil,   nil,   653,   653,   nil,   nil,
-   653,   nil,   653,   nil,   653,   nil,   653,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   653,   nil,   nil,   nil,   nil,   653,
-   653,   653,   653,   653,   653,   nil,   nil,   nil,   653,   653,
-   nil,   nil,   nil,   nil,   nil,   nil,   653,   nil,   653,   653,
-   653,   653,   656,   656,   656,   nil,   656,   nil,   nil,   nil,
-   656,   656,   nil,   nil,   nil,   656,   nil,   656,   656,   656,
-   656,   656,   656,   656,   nil,   nil,   nil,   nil,   nil,   656,
-   656,   656,   656,   656,   656,   656,   nil,   nil,   656,   nil,
-   nil,   nil,   nil,   nil,   nil,   656,   nil,   nil,   656,   656,
-   656,   656,   656,   656,   656,   656,   nil,   656,   656,   656,
-   nil,   656,   656,   nil,   656,   656,   656,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   656,   nil,   nil,   656,
-   nil,   nil,   656,   656,   nil,   nil,   656,   nil,   nil,   nil,
-   nil,   nil,   656,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   656,   nil,   nil,   nil,   nil,   656,   656,   656,   656,   656,
-   656,   nil,   nil,   nil,   656,   656,   nil,   nil,   nil,   nil,
-   nil,   nil,   656,   nil,   nil,   656,   656,   656,   659,   659,
-   659,   nil,   659,   nil,   nil,   nil,   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,   659,   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,   659,   nil,   659,   nil,   659,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   659,   nil,   nil,   nil,
-   nil,   659,   659,   659,   659,   659,   659,   nil,   nil,   nil,
-   659,   659,   nil,   nil,   nil,   nil,   nil,   nil,   659,   nil,
-   659,   659,   659,   659,   660,   660,   660,   nil,   660,   nil,
-   nil,   nil,   660,   660,   nil,   nil,   nil,   660,   nil,   660,
-   660,   660,   660,   660,   660,   660,   nil,   nil,   nil,   nil,
-   nil,   660,   660,   660,   660,   660,   660,   660,   nil,   nil,
-   660,   nil,   nil,   nil,   nil,   nil,   nil,   660,   nil,   nil,
-   660,   660,   660,   660,   660,   660,   660,   660,   660,   660,
-   660,   660,   nil,   660,   660,   nil,   660,   660,   660,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   660,   nil,
-   nil,   660,   nil,   nil,   660,   660,   nil,   nil,   660,   nil,
-   nil,   nil,   660,   nil,   660,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   660,   nil,   nil,   nil,   nil,   660,   660,   660,
-   660,   660,   660,   nil,   nil,   nil,   660,   660,   nil,   nil,
-   nil,   nil,   nil,   nil,   660,   nil,   660,   660,   660,   660,
-   661,   661,   661,   nil,   661,   nil,   nil,   nil,   661,   661,
-   nil,   nil,   nil,   661,   nil,   661,   661,   661,   661,   661,
-   661,   661,   nil,   nil,   nil,   nil,   nil,   661,   661,   661,
-   661,   661,   661,   661,   nil,   nil,   661,   nil,   nil,   nil,
-   nil,   nil,   nil,   661,   nil,   nil,   661,   661,   661,   661,
-   661,   661,   661,   661,   nil,   661,   661,   661,   nil,   661,
-   661,   nil,   661,   661,   661,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   661,   nil,   nil,   661,   nil,   nil,
-   661,   661,   nil,   nil,   661,   nil,   nil,   nil,   nil,   nil,
-   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,
-   nil,   nil,   nil,   661,   661,   661,   661,   661,   661,   nil,
-   nil,   nil,   661,   661,   nil,   nil,   nil,   nil,   nil,   nil,
-   661,   nil,   nil,   661,   661,   661,   662,   662,   662,   nil,
-   662,   nil,   nil,   nil,   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,   662,   nil,   nil,   nil,   nil,   662,
-   662,   662,   662,   662,   662,   nil,   nil,   nil,   662,   662,
-   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,   nil,   662,
-   662,   662,   667,   667,   667,   nil,   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,   nil,   667,   nil,   nil,   667,   667,
-   667,   667,   667,   667,   667,   667,   nil,   667,   667,   667,
-   nil,   667,   667,   nil,   667,   667,   667,   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,   667,   nil,   nil,   667,   nil,   nil,   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,   nil,
-   nil,   nil,   667,   nil,   nil,   667,   667,   667,   668,   668,
-   668,   nil,   668,   nil,   nil,   nil,   668,   668,   nil,   nil,
-   nil,   668,   nil,   668,   668,   668,   668,   668,   668,   668,
-   nil,   nil,   nil,   nil,   nil,   668,   668,   668,   668,   668,
-   668,   668,   nil,   nil,   668,   nil,   nil,   nil,   nil,   nil,
-   nil,   668,   nil,   nil,   668,   668,   668,   668,   668,   668,
-   668,   668,   nil,   668,   668,   668,   nil,   668,   668,   nil,
-   668,   668,   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   668,   nil,   nil,   668,   nil,   nil,   668,   668,
-   nil,   nil,   668,   nil,   nil,   nil,   nil,   nil,   668,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   nil,
-   nil,   668,   668,   668,   668,   668,   668,   nil,   nil,   nil,
-   668,   668,   nil,   nil,   nil,   nil,   nil,   nil,   668,   nil,
-   nil,   668,   668,   668,   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,
-   nil,   692,   692,   692,   692,   692,   692,   692,   nil,   nil,
-   692,   nil,   nil,   nil,   nil,   nil,   nil,   692,   nil,   nil,
-   692,   692,   692,   692,   692,   692,   692,   692,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   692,   nil,   nil,   692,   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,   nil,   698,   698,   698,
-   698,   698,   698,   698,   nil,   nil,   698,   nil,   nil,   nil,
-   nil,   nil,   nil,   698,   nil,   nil,   698,   698,   698,   698,
-   698,   698,   698,   698,   nil,   698,   698,   698,   nil,   698,
-   698,   nil,   nil,   nil,   698,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   698,   nil,   nil,   698,   nil,   nil,
-   698,   698,   nil,   nil,   698,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   698,   698,   698,   698,   698,   698,   nil,
-   nil,   nil,   698,   698,   nil,   nil,   nil,   nil,   nil,   nil,
-   698,   nil,   nil,   698,   698,   698,   709,   709,   709,   nil,
-   709,   nil,   nil,   nil,   709,   709,   nil,   nil,   nil,   709,
-   nil,   709,   709,   709,   709,   709,   709,   709,   nil,   nil,
-   nil,   nil,   nil,   709,   709,   709,   709,   709,   709,   709,
-   nil,   nil,   709,   nil,   nil,   nil,   nil,   nil,   nil,   709,
-   nil,   nil,   709,   709,   709,   709,   709,   709,   709,   709,
-   nil,   709,   709,   709,   nil,   709,   709,   nil,   nil,   nil,
-   709,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   709,   nil,   nil,   709,   nil,   nil,   709,   709,   nil,   nil,
-   709,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   709,
-   709,   709,   709,   709,   709,   nil,   nil,   nil,   709,   709,
-   nil,   nil,   nil,   nil,   nil,   nil,   709,   nil,   nil,   709,
-   709,   709,   716,   716,   716,   nil,   716,   nil,   nil,   nil,
-   716,   716,   nil,   nil,   nil,   716,   nil,   716,   716,   716,
-   716,   716,   716,   716,   nil,   nil,   nil,   nil,   nil,   716,
-   716,   716,   716,   716,   716,   716,   nil,   nil,   716,   nil,
-   nil,   nil,   nil,   nil,   nil,   716,   nil,   nil,   716,   716,
-   716,   716,   716,   716,   716,   716,   nil,   716,   716,   716,
-   nil,   716,   716,   nil,   716,   716,   716,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,   nil,   716,
-   nil,   nil,   716,   716,   nil,   nil,   716,   nil,   716,   nil,
-   nil,   nil,   716,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   716,   nil,   nil,   nil,   nil,   716,   716,   716,   716,   716,
-   716,   nil,   nil,   nil,   716,   716,   nil,   nil,   nil,   nil,
-   nil,   nil,   716,   nil,   nil,   716,   716,   716,   721,   721,
-   721,   nil,   721,   nil,   nil,   nil,   721,   721,   nil,   nil,
-   nil,   721,   nil,   721,   721,   721,   721,   721,   721,   721,
-   nil,   nil,   nil,   nil,   nil,   721,   721,   721,   721,   721,
-   721,   721,   nil,   nil,   721,   nil,   nil,   nil,   nil,   nil,
-   nil,   721,   nil,   nil,   721,   721,   721,   721,   721,   721,
-   721,   721,   721,   721,   721,   721,   nil,   721,   721,   nil,
-   721,   721,   721,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   721,   nil,   nil,   721,   nil,   nil,   721,   721,
-   nil,   nil,   721,   nil,   721,   nil,   nil,   nil,   721,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,   nil,
-   nil,   721,   721,   721,   721,   721,   721,   nil,   nil,   nil,
-   721,   721,   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,
-   721,   721,   721,   721,   724,   724,   724,   nil,   724,   nil,
-   nil,   nil,   724,   724,   nil,   nil,   nil,   724,   nil,   724,
-   724,   724,   724,   724,   724,   724,   nil,   nil,   nil,   nil,
-   nil,   724,   724,   724,   724,   724,   724,   724,   nil,   nil,
-   724,   nil,   nil,   nil,   nil,   nil,   nil,   724,   nil,   nil,
-   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,
-   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   724,   nil,   724,   724,   724,   724,
-   738,   738,   738,   nil,   738,   nil,   nil,   nil,   738,   738,
-   nil,   nil,   nil,   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,   738,   738,
-   738,   738,   738,   738,   nil,   738,   738,   738,   nil,   738,
-   738,   nil,   738,   738,   738,   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,   738,   nil,   nil,   738,   nil,   738,   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,   738,   738,   750,   750,   750,   nil,
-   750,   nil,   nil,   nil,   750,   750,   nil,   nil,   nil,   750,
-   nil,   750,   750,   750,   750,   750,   750,   750,   nil,   nil,
-   nil,   nil,   nil,   750,   750,   750,   750,   750,   750,   750,
-   nil,   nil,   750,   nil,   nil,   nil,   nil,   nil,   nil,   750,
-   nil,   nil,   750,   750,   750,   750,   750,   750,   750,   750,
-   750,   750,   750,   750,   nil,   750,   750,   nil,   750,   750,
-   750,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   750,   nil,   nil,   750,   nil,   nil,   750,   750,   nil,   nil,
-   750,   nil,   750,   nil,   750,   nil,   750,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   750,   nil,   nil,   nil,   nil,   750,
-   750,   750,   750,   750,   750,   nil,   nil,   nil,   750,   750,
-   nil,   nil,   nil,   nil,   nil,   nil,   750,   nil,   750,   750,
-   750,   750,   773,   773,   773,   nil,   773,   nil,   nil,   nil,
-   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,
-   773,   nil,   nil,   nil,   nil,   773,   773,   773,   773,   773,
-   773,   nil,   nil,   nil,   773,   773,   nil,   nil,   nil,   nil,
-   nil,   nil,   773,   nil,   nil,   773,   773,   773,   796,   796,
-   796,   nil,   796,   nil,   nil,   nil,   796,   796,   nil,   nil,
-   nil,   796,   nil,   796,   796,   796,   796,   796,   796,   796,
-   nil,   nil,   nil,   nil,   nil,   796,   796,   796,   796,   796,
-   796,   796,   nil,   nil,   796,   nil,   nil,   nil,   nil,   nil,
-   nil,   796,   nil,   nil,   796,   796,   796,   796,   796,   796,
-   796,   796,   nil,   796,   796,   796,   nil,   796,   796,   nil,
-   796,   796,   796,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   796,   nil,   nil,   796,   nil,   nil,   796,   796,
-   nil,   nil,   796,   nil,   nil,   nil,   nil,   nil,   796,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   796,   nil,   nil,   nil,
-   nil,   796,   796,   796,   796,   796,   796,   nil,   nil,   nil,
-   796,   796,   nil,   nil,   nil,   nil,   nil,   nil,   796,   nil,
-   nil,   796,   796,   796,   803,   803,   803,   nil,   803,   nil,
-   nil,   nil,   803,   803,   nil,   nil,   nil,   803,   nil,   803,
-   803,   803,   803,   803,   803,   803,   nil,   nil,   nil,   nil,
-   nil,   803,   803,   803,   803,   803,   803,   803,   nil,   nil,
-   803,   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,
-   803,   803,   803,   803,   803,   803,   803,   803,   nil,   803,
-   803,   803,   nil,   803,   803,   nil,   803,   803,   803,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,
-   nil,   803,   nil,   nil,   803,   803,   nil,   nil,   803,   nil,
-   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   803,   nil,   nil,   nil,   nil,   803,   803,   803,
-   803,   803,   803,   nil,   nil,   nil,   803,   803,   nil,   nil,
-   nil,   nil,   nil,   nil,   803,   nil,   nil,   803,   803,   803,
-   816,   816,   816,   nil,   816,   nil,   nil,   nil,   816,   816,
-   nil,   nil,   nil,   816,   nil,   816,   816,   816,   816,   816,
-   816,   816,   nil,   nil,   nil,   nil,   nil,   816,   816,   816,
-   816,   816,   816,   816,   nil,   nil,   816,   nil,   nil,   nil,
-   nil,   nil,   nil,   816,   nil,   nil,   816,   816,   816,   816,
-   816,   816,   816,   816,   nil,   816,   816,   816,   nil,   816,
-   816,   nil,   816,   816,   816,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   816,   nil,   nil,   816,   nil,   nil,
-   816,   816,   nil,   nil,   816,   nil,   nil,   nil,   nil,   nil,
-   816,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,
-   nil,   nil,   nil,   816,   816,   816,   816,   816,   816,   nil,
-   nil,   nil,   816,   816,   nil,   nil,   nil,   nil,   nil,   nil,
-   816,   nil,   nil,   816,   816,   816,   817,   817,   817,   nil,
-   817,   nil,   nil,   nil,   817,   817,   nil,   nil,   nil,   817,
-   nil,   817,   817,   817,   817,   817,   817,   817,   nil,   nil,
-   nil,   nil,   nil,   817,   817,   817,   817,   817,   817,   817,
-   nil,   nil,   817,   nil,   nil,   nil,   nil,   nil,   nil,   817,
-   nil,   nil,   817,   817,   817,   817,   817,   817,   817,   817,
-   nil,   817,   817,   817,   nil,   817,   817,   nil,   817,   817,
-   817,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   817,   nil,   nil,   817,   nil,   nil,   817,   817,   nil,   nil,
-   817,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   817,   nil,   nil,   nil,   nil,   817,
-   817,   817,   817,   817,   817,   nil,   nil,   nil,   817,   817,
-   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   817,
-   817,   817,   818,   818,   818,   nil,   818,   nil,   nil,   nil,
-   818,   818,   nil,   nil,   nil,   818,   nil,   818,   818,   818,
-   818,   818,   818,   818,   nil,   nil,   nil,   nil,   nil,   818,
-   818,   818,   818,   818,   818,   818,   nil,   nil,   818,   nil,
-   nil,   nil,   nil,   nil,   nil,   818,   nil,   nil,   818,   818,
-   818,   818,   818,   818,   818,   818,   nil,   818,   818,   818,
-   nil,   818,   818,   nil,   818,   818,   818,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   818,   nil,   nil,   818,
-   nil,   nil,   818,   818,   nil,   nil,   818,   nil,   nil,   nil,
-   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   818,   nil,   nil,   nil,   nil,   818,   818,   818,   818,   818,
-   818,   nil,   nil,   nil,   818,   818,   nil,   nil,   nil,   nil,
-   nil,   nil,   818,   nil,   nil,   818,   818,   818,   819,   819,
-   819,   nil,   819,   nil,   nil,   nil,   819,   819,   nil,   nil,
-   nil,   819,   nil,   819,   819,   819,   819,   819,   819,   819,
-   nil,   nil,   nil,   nil,   nil,   819,   819,   819,   819,   819,
-   819,   819,   nil,   nil,   819,   nil,   nil,   nil,   nil,   nil,
-   nil,   819,   nil,   nil,   819,   819,   819,   819,   819,   819,
-   819,   819,   nil,   819,   819,   819,   nil,   819,   819,   nil,
-   819,   819,   819,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   819,   nil,   nil,   819,   nil,   nil,   819,   819,
-   nil,   nil,   819,   nil,   nil,   nil,   nil,   nil,   819,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   819,   nil,   nil,   nil,
-   nil,   819,   819,   819,   819,   819,   819,   nil,   nil,   nil,
-   819,   819,   nil,   nil,   nil,   nil,   nil,   nil,   819,   nil,
-   nil,   819,   819,   819,   821,   821,   821,   nil,   821,   nil,
-   nil,   nil,   821,   821,   nil,   nil,   nil,   821,   nil,   821,
-   821,   821,   821,   821,   821,   821,   nil,   nil,   nil,   nil,
-   nil,   821,   821,   821,   821,   821,   821,   821,   nil,   nil,
-   821,   nil,   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,
-   821,   821,   821,   821,   821,   821,   821,   821,   nil,   821,
-   821,   821,   nil,   821,   821,   nil,   821,   821,   821,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   821,   nil,
-   nil,   821,   nil,   nil,   821,   821,   nil,   nil,   821,   nil,
-   nil,   nil,   nil,   nil,   821,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   821,   nil,   nil,   nil,   nil,   821,   821,   821,
-   821,   821,   821,   nil,   nil,   nil,   821,   821,   nil,   nil,
-   nil,   nil,   nil,   nil,   821,   nil,   nil,   821,   821,   821,
-   853,   853,   853,   nil,   853,   nil,   nil,   nil,   853,   853,
-   nil,   nil,   nil,   853,   nil,   853,   853,   853,   853,   853,
-   853,   853,   nil,   nil,   nil,   nil,   nil,   853,   853,   853,
-   853,   853,   853,   853,   nil,   nil,   853,   nil,   nil,   nil,
-   nil,   nil,   nil,   853,   nil,   nil,   853,   853,   853,   853,
-   853,   853,   853,   853,   nil,   853,   853,   853,   nil,   853,
-   853,   nil,   853,   853,   853,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   853,   nil,   nil,   853,   nil,   nil,
-   853,   853,   nil,   nil,   853,   nil,   nil,   nil,   nil,   nil,
-   853,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   853,   nil,
-   nil,   nil,   nil,   853,   853,   853,   853,   853,   853,   nil,
-   nil,   nil,   853,   853,   nil,   nil,   nil,   nil,   nil,   nil,
-   853,   nil,   nil,   853,   853,   853,   860,   860,   860,   nil,
-   860,   nil,   nil,   nil,   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,   860,   nil,   nil,   nil,   nil,   860,
-   860,   860,   860,   860,   860,   nil,   nil,   nil,   860,   860,
-   nil,   nil,   nil,   nil,   nil,   nil,   860,   nil,   nil,   860,
-   860,   860,   869,   869,   869,   nil,   869,   nil,   nil,   nil,
-   869,   869,   nil,   nil,   nil,   869,   nil,   869,   869,   869,
-   869,   869,   869,   869,   nil,   nil,   nil,   nil,   nil,   869,
-   869,   869,   869,   869,   869,   869,   nil,   nil,   869,   nil,
-   nil,   nil,   nil,   nil,   nil,   869,   nil,   nil,   869,   869,
-   869,   869,   869,   869,   869,   869,   nil,   869,   869,   869,
-   nil,   869,   869,   nil,   869,   869,   869,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   869,   nil,   nil,   869,
-   nil,   nil,   869,   869,   nil,   nil,   869,   nil,   nil,   nil,
-   nil,   nil,   869,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   869,   nil,   nil,   nil,   nil,   869,   869,   869,   869,   869,
-   869,   nil,   nil,   nil,   869,   869,   nil,   nil,   nil,   nil,
-   nil,   nil,   869,   nil,   nil,   869,   869,   869,   910,   910,
-   910,   nil,   910,   nil,   nil,   nil,   910,   910,   nil,   nil,
-   nil,   910,   nil,   910,   910,   910,   910,   910,   910,   910,
-   nil,   nil,   nil,   nil,   nil,   910,   910,   910,   910,   910,
-   910,   910,   nil,   nil,   910,   nil,   nil,   nil,   nil,   nil,
-   nil,   910,   nil,   nil,   910,   910,   910,   910,   910,   910,
-   910,   910,   910,   910,   910,   910,   nil,   910,   910,   nil,
-   910,   910,   910,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   910,   nil,   nil,   910,   nil,   nil,   910,   910,
-   nil,   nil,   910,   nil,   nil,   nil,   910,   nil,   910,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   910,   nil,   nil,   nil,
-   nil,   910,   910,   910,   910,   910,   910,   nil,   nil,   nil,
-   910,   910,   nil,   nil,   nil,   nil,   nil,   nil,   910,   nil,
-   910,   910,   910,   910,   911,   911,   911,   nil,   911,   nil,
-   nil,   nil,   911,   911,   nil,   nil,   nil,   911,   nil,   911,
-   911,   911,   911,   911,   911,   911,   nil,   nil,   nil,   nil,
-   nil,   911,   911,   911,   911,   911,   911,   911,   nil,   nil,
-   911,   nil,   nil,   nil,   nil,   nil,   nil,   911,   nil,   nil,
-   911,   911,   911,   911,   911,   911,   911,   911,   nil,   911,
-   911,   911,   nil,   911,   911,   nil,   911,   911,   911,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   911,   nil,
-   nil,   911,   nil,   nil,   911,   911,   nil,   nil,   911,   nil,
-   nil,   nil,   nil,   nil,   911,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   911,   nil,   nil,   nil,   nil,   911,   911,   911,
-   911,   911,   911,   nil,   nil,   nil,   911,   911,   nil,   nil,
-   nil,   nil,   nil,   nil,   911,   nil,   nil,   911,   911,   911,
-   923,   923,   923,   nil,   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,   nil,   923,   nil,   nil,   923,   923,   923,   923,
-   923,   923,   923,   923,   nil,   923,   923,   923,   nil,   923,
-   923,   nil,   nil,   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   923,   923,   932,   932,   932,   nil,
-   932,   nil,   nil,   nil,   932,   932,   nil,   nil,   nil,   932,
-   nil,   932,   932,   932,   932,   932,   932,   932,   nil,   nil,
-   nil,   nil,   nil,   932,   932,   932,   932,   932,   932,   932,
-   nil,   nil,   932,   nil,   nil,   nil,   nil,   nil,   nil,   932,
-   nil,   nil,   932,   932,   932,   932,   932,   932,   932,   932,
-   nil,   932,   932,   932,   nil,   932,   932,   nil,   nil,   nil,
-   932,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   932,   nil,   nil,   932,   nil,   nil,   932,   932,   nil,   nil,
-   932,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   932,
-   932,   932,   932,   932,   932,   nil,   nil,   nil,   932,   932,
-   nil,   nil,   nil,   nil,   nil,   nil,   932,   nil,   nil,   932,
-   932,   932,   940,   940,   940,   nil,   940,   nil,   nil,   nil,
-   940,   940,   nil,   nil,   nil,   940,   nil,   940,   940,   940,
-   940,   940,   940,   940,   nil,   nil,   nil,   nil,   nil,   940,
-   940,   940,   940,   940,   940,   940,   nil,   nil,   940,   nil,
-   nil,   nil,   nil,   nil,   nil,   940,   nil,   nil,   940,   940,
-   940,   940,   940,   940,   940,   940,   nil,   940,   940,   940,
-   nil,   940,   940,   nil,   940,   940,   940,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   940,   nil,   nil,   940,
-   nil,   nil,   940,   940,   nil,   nil,   940,   nil,   940,   nil,
-   nil,   nil,   940,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   940,   nil,   nil,   nil,   nil,   940,   940,   940,   940,   940,
-   940,   nil,   nil,   nil,   940,   940,   nil,   nil,   nil,   nil,
-   nil,   nil,   940,   nil,   nil,   940,   940,   940,   983,   983,
-   983,   nil,   983,   nil,   nil,   nil,   983,   983,   nil,   nil,
-   nil,   983,   nil,   983,   983,   983,   983,   983,   983,   983,
-   nil,   nil,   nil,   nil,   nil,   983,   983,   983,   983,   983,
-   983,   983,   nil,   nil,   983,   nil,   nil,   nil,   nil,   nil,
-   nil,   983,   nil,   nil,   983,   983,   983,   983,   983,   983,
-   983,   983,   nil,   983,   983,   983,   nil,   983,   983,   nil,
-   nil,   nil,   983,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   983,   nil,   nil,   983,   nil,   nil,   983,   983,
-   nil,   nil,   983,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   983,   983,   983,   983,   983,   983,   nil,   nil,   nil,
-   983,   983,   nil,   nil,   nil,   nil,   nil,   nil,   983,   nil,
-   nil,   983,   983,   983,   997,   997,   997,   nil,   997,   nil,
-   nil,   nil,   997,   997,   nil,   nil,   nil,   997,   nil,   997,
-   997,   997,   997,   997,   997,   997,   nil,   nil,   nil,   nil,
-   nil,   997,   997,   997,   997,   997,   997,   997,   nil,   nil,
-   997,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,   nil,
-   997,   997,   997,   997,   997,   997,   997,   997,   nil,   997,
-   997,   997,   nil,   997,   997,   nil,   997,   997,   997,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,
-   nil,   997,   nil,   nil,   997,   997,   nil,   nil,   997,   nil,
-   nil,   nil,   nil,   nil,   997,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   997,   nil,   nil,   nil,   nil,   997,   997,   997,
-   997,   997,   997,   nil,   nil,   nil,   997,   997,   nil,   nil,
-   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,   997,   997,
-  1030,  1030,  1030,   nil,  1030,   nil,   nil,   nil,  1030,  1030,
-   nil,   nil,   nil,  1030,   nil,  1030,  1030,  1030,  1030,  1030,
-  1030,  1030,   nil,   nil,   nil,   nil,   nil,  1030,  1030,  1030,
-  1030,  1030,  1030,  1030,   nil,   nil,  1030,   nil,   nil,   nil,
-   nil,   nil,   nil,  1030,   nil,   nil,  1030,  1030,  1030,  1030,
-  1030,  1030,  1030,  1030,  1030,  1030,  1030,  1030,   nil,  1030,
-  1030,   nil,  1030,  1030,  1030,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1030,   nil,   nil,  1030,   nil,   nil,
-  1030,  1030,   nil,   nil,  1030,   nil,  1030,   nil,  1030,   nil,
-  1030,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1030,   nil,
-   nil,   nil,   nil,  1030,  1030,  1030,  1030,  1030,  1030,   nil,
-   nil,   nil,  1030,  1030,   nil,   nil,   nil,   nil,   nil,   nil,
-  1030,   nil,  1030,  1030,  1030,  1030,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,   nil,   nil,   nil,   nil,   nil,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,   nil,    11,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
-   nil,    11,    11,    11,    11,    11,    11,    11,   nil,   nil,
-    11,    11,   nil,   nil,   nil,    11,    11,    11,    11,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,   nil,   nil,    11,    11,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,   nil,   nil,   nil,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,   nil,
-   nil,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
-    12,   nil,   nil,    12,    12,   nil,   nil,   nil,    12,    12,
-    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
-   nil,    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    12,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,   nil,   nil,   nil,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,   nil,
-   nil,   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,   nil,    75,   nil,   nil,
-   nil,   nil,   nil,   nil,    75,    75,   nil,    75,    75,    75,
-    75,    75,    75,    75,   nil,   nil,    75,    75,   nil,   nil,
-   nil,    75,    75,    75,    75,   nil,   nil,   nil,   nil,   nil,
-    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,
-   nil,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    75,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
-   nil,   nil,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   nil,   nil,   nil,   nil,   nil,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
-   105,   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,
-   105,   105,   105,   105,   105,   105,   105,   nil,   nil,   105,
-   105,   nil,   nil,   nil,   105,   105,   105,   105,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,   105,   nil,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   nil,   nil,   105,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,   418,   418,
-   418,   418,   418,   418,   418,   418,   418,   418,   418,   418,
-   418,   418,   418,   418,   418,   418,   418,   418,   418,   418,
-   418,   418,   nil,   nil,   nil,   418,   418,   418,   418,   418,
-   418,   418,   418,   418,   418,   nil,   nil,   nil,   nil,   nil,
-   418,   418,   418,   418,   418,   418,   418,   418,   418,   nil,
-   nil,   418,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   418,   418,   nil,   418,   418,   418,   418,   418,   418,   418,
-   nil,   nil,   418,   418,   nil,   nil,   nil,   418,   418,   418,
-   418,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   418,   418,   nil,   418,   418,   418,
-   418,   418,   418,   418,   418,   418,   418,   418,   nil,   nil,
-   418,   418,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   418,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   418,   648,   648,   648,   648,   648,   648,   648,   648,   648,
-   648,   648,   648,   648,   648,   648,   648,   648,   648,   648,
-   648,   648,   648,   648,   648,   nil,   nil,   nil,   648,   648,
-   648,   648,   648,   648,   648,   648,   648,   648,   nil,   nil,
-   nil,   nil,   nil,   648,   648,   648,   648,   648,   648,   648,
-   648,   648,   nil,   nil,   648,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   648,   648,   nil,   648,   648,   648,   648,
-   648,   648,   648,   nil,   nil,   648,   648,   nil,   nil,   nil,
-   648,   648,   648,   648,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   648,   648,   nil,
-   648,   648,   648,   648,   648,   648,   648,   648,   648,   648,
-   648,   nil,   nil,   648,   648,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   648,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   648,   759,   759,   759,   759,   759,   759,
-   759,   759,   759,   759,   759,   759,   759,   759,   759,   759,
-   759,   759,   759,   759,   759,   759,   759,   759,   nil,   nil,
-   nil,   759,   759,   759,   759,   759,   759,   759,   759,   759,
-   759,   nil,   nil,   nil,   nil,   nil,   759,   759,   759,   759,
-   759,   759,   759,   759,   759,   nil,   nil,   759,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   759,   759,   nil,   759,
-   759,   759,   759,   759,   759,   759,   nil,   nil,   759,   759,
-   nil,   nil,   nil,   759,   759,   759,   759,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   759,   759,   nil,   759,   759,   759,   759,   759,   759,   759,
-   759,   759,   759,   759,   nil,   nil,   759,   nil,   nil,   nil,
-   nil,   225,   225,   nil,   nil,   225,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   225,   225,   759,   225,   225,   225,
-   225,   225,   225,   225,   nil,   nil,   225,   225,   nil,   nil,
-   nil,   225,   225,   225,   225,   nil,   nil,   nil,   nil,   nil,
-   225,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   225,   225,
-   nil,   225,   225,   225,   225,   225,   225,   225,   225,   225,
-   225,   225,   nil,   nil,   225,   nil,   nil,   nil,   nil,   226,
-   226,   nil,   nil,   226,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   226,   226,   225,   226,   226,   226,   226,   226,
-   226,   226,   nil,   nil,   226,   226,   nil,   nil,   nil,   226,
-   226,   226,   226,   nil,   nil,   nil,   nil,   nil,   226,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   226,   226,   nil,   226,
-   226,   226,   226,   226,   226,   226,   226,   226,   226,   226,
-   nil,   nil,   226,   nil,   nil,   nil,   nil,   274,   274,   nil,
-   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   274,   274,   226,   274,   274,   274,   274,   274,   274,   274,
-   nil,   nil,   274,   274,   nil,   nil,   nil,   274,   274,   274,
-   274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   274,   274,   nil,   274,   274,   274,
-   274,   274,   274,   274,   274,   274,   274,   274,   nil,   nil,
-   274,   nil,   nil,   nil,   nil,   468,   468,   nil,   nil,   468,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   468,   468,
-   274,   468,   468,   468,   468,   468,   468,   468,   nil,   nil,
-   468,   468,   nil,   nil,   nil,   468,   468,   468,   468,   nil,
-   nil,   nil,   nil,   nil,   468,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   468,   468,   nil,   468,   468,   468,   468,   468,
-   468,   468,   468,   468,   468,   468,   nil,   nil,   468,   nil,
-   nil,   nil,   nil,   469,   469,   nil,   nil,   469,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   469,   469,   468,   469,
-   469,   469,   469,   469,   469,   469,   nil,   nil,   469,   469,
-   nil,   nil,   nil,   469,   469,   469,   469,   nil,   nil,   nil,
-   nil,   nil,   469,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   469,   469,   nil,   469,   469,   469,   469,   469,   469,   469,
-   469,   469,   469,   469,   nil,   nil,   469,   nil,   nil,   nil,
-   nil,   533,   533,   nil,   nil,   533,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   533,   533,   469,   533,   533,   533,
-   533,   533,   533,   533,   nil,   nil,   533,   533,   nil,   nil,
-   nil,   533,   533,   533,   533,   nil,   nil,   nil,   nil,   nil,
-   533,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   533,   533,
-   nil,   533,   533,   533,   533,   533,   533,   533,   533,   533,
-   533,   533,   nil,   nil,   533,   nil,   nil,   nil,   nil,   534,
-   534,   nil,   nil,   534,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   534,   534,   533,   534,   534,   534,   534,   534,
-   534,   534,   nil,   nil,   534,   534,   nil,   nil,   nil,   534,
-   534,   534,   534,   nil,   nil,   nil,   nil,   nil,   534,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   534,   534,   nil,   534,
-   534,   534,   534,   534,   534,   534,   534,   534,   534,   534,
-   nil,   nil,   534,   nil,   nil,   nil,   nil,   545,   545,   nil,
-   nil,   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   545,   545,   534,   545,   545,   545,   545,   545,   545,   545,
-   nil,   nil,   545,   545,   nil,   nil,   nil,   545,   545,   545,
-   545,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   545,   545,   nil,   545,   545,   545,
-   545,   545,   545,   545,   545,   545,   545,   545,   nil,   nil,
-   545,   nil,   nil,   nil,   nil,   546,   546,   nil,   nil,   546,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   546,   546,
-   545,   546,   546,   546,   546,   546,   546,   546,   nil,   nil,
-   546,   546,   nil,   nil,   nil,   546,   546,   546,   546,   nil,
-   nil,   nil,   nil,   nil,   546,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   546,   546,   nil,   546,   546,   546,   546,   546,
-   546,   546,   546,   546,   546,   546,   nil,   nil,   546,   nil,
-   nil,   nil,   nil,   574,   574,   nil,   nil,   574,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   574,   574,   546,   574,
-   574,   574,   574,   574,   574,   574,   nil,   nil,   574,   574,
-   nil,   nil,   nil,   574,   574,   574,   574,   nil,   nil,   nil,
-   nil,   nil,   574,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   574,   574,   nil,   574,   574,   574,   574,   574,   574,   574,
-   574,   574,   574,   574,   nil,   nil,   574,   nil,   nil,   nil,
-   nil,   575,   575,   nil,   nil,   575,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   575,   575,   574,   575,   575,   575,
-   575,   575,   575,   575,   nil,   nil,   575,   575,   nil,   nil,
-   nil,   575,   575,   575,   575,   nil,   nil,   nil,   nil,   nil,
-   575,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   575,   575,
-   nil,   575,   575,   575,   575,   575,   575,   575,   575,   575,
-   575,   575,   nil,   nil,   575,   nil,   nil,   nil,   nil,   654,
-   654,   nil,   nil,   654,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   654,   654,   575,   654,   654,   654,   654,   654,
-   654,   654,   nil,   nil,   654,   654,   nil,   nil,   nil,   654,
-   654,   654,   654,   nil,   nil,   nil,   nil,   nil,   654,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   654,   654,   nil,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   654,
-   nil,   nil,   654,   nil,   nil,   nil,   nil,   655,   655,   nil,
-   nil,   655,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   655,   655,   654,   655,   655,   655,   655,   655,   655,   655,
-   nil,   nil,   655,   655,   nil,   nil,   nil,   655,   655,   655,
-   655,   nil,   nil,   nil,   nil,   nil,   655,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   655,   655,   nil,   655,   655,   655,
-   655,   655,   655,   655,   655,   655,   655,   655,   nil,   nil,
-   655,   nil,   nil,   nil,   nil,   748,   748,   nil,   nil,   748,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   748,   748,
-   655,   748,   748,   748,   748,   748,   748,   748,   nil,   nil,
-   748,   748,   nil,   nil,   nil,   748,   748,   748,   748,   nil,
-   nil,   nil,   nil,   nil,   748,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   748,   748,   nil,   748,   748,   748,   748,   748,
-   748,   748,   748,   748,   748,   748,   nil,   nil,   748,   nil,
-   nil,   nil,   nil,   749,   749,   nil,   nil,   749,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   749,   749,   748,   749,
-   749,   749,   749,   749,   749,   749,   nil,   nil,   749,   749,
-   nil,   nil,   nil,   749,   749,   749,   749,   nil,   nil,   nil,
-   nil,   nil,   749,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   749,   749,   nil,   749,   749,   749,   749,   749,   749,   749,
-   749,   749,   749,   749,   nil,   974,   749,   974,   974,   974,
-   974,   974,   977,   nil,   977,   977,   977,   977,   977,   nil,
-   nil,   974,   nil,   nil,   nil,   nil,   749,   nil,   977,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   974,   nil,   nil,   nil,   nil,   nil,   nil,
-   977,   nil,   974,   974,   974,   974,   nil,   nil,   nil,   977,
-   977,   977,   977,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1026,  1026,   nil,   nil,  1026,   nil,   nil,   nil,   974,   nil,
-   nil,   nil,   nil,  1026,  1026,   977,  1026,  1026,  1026,  1026,
-  1026,  1026,  1026,   nil,   nil,  1026,  1026,   nil,   nil,   nil,
-  1026,  1026,  1026,  1026,   nil,   nil,   nil,   nil,   nil,  1026,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1026,  1026,   nil,
-  1026,  1026,  1026,  1026,  1026,  1026,  1026,  1026,  1026,  1026,
-  1026,   nil,   nil,  1026,   nil,   nil,   nil,   nil,  1031,  1031,
-   nil,   nil,  1031,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1031,  1031,  1026,  1031,  1031,  1031,  1031,  1031,  1031,
-  1031,   nil,   nil,  1031,  1031,   nil,   nil,   nil,  1031,  1031,
-  1031,  1031,   nil,   nil,   nil,   nil,   nil,  1031,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1031,  1031,   nil,  1031,  1031,
-  1031,  1031,  1031,  1031,  1031,  1031,  1031,  1031,  1031,   nil,
-   nil,  1031,   nil,   nil,   nil,   nil,  1032,  1032,   nil,   nil,
-  1032,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1032,
-  1032,  1031,  1032,  1032,  1032,  1032,  1032,  1032,  1032,   nil,
-   nil,  1032,  1032,   nil,   nil,   nil,  1032,  1032,  1032,  1032,
-   nil,   nil,   nil,   nil,   nil,  1032,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1032,  1032,   nil,  1032,  1032,  1032,  1032,
-  1032,  1032,  1032,  1032,  1032,  1032,  1032,   nil,  1050,  1032,
-  1050,  1050,  1050,  1050,  1050,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1050,   nil,   nil,   nil,   nil,  1032,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1050,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1050,  1050,  1050,  1050,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1050 ]
-
-racc_action_pointer = [
-   nil,   100,     0,   114,   nil,   571,   nil,   nil,  5806,   746,
-   nil, 23214, 23347,   111,   nil,   108,   158,   118,   243,   234,
-   228,   nil,   104,  5942,  2245,   305,   nil,   228,   nil,   142,
-  1060,  1188,  6078,  6214,  6350,   nil,  1971,  6486,  6622,   nil,
-   205,   271,   424,   371,   117,  6758,  6894,   412,  7030,   314,
-   575,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1316,   nil,  7166,   nil,   nil,    87,   nil,  7302,  7438,   nil,
-   nil,  7574,  7710,   365,   nil, 23480,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   176,   nil,   nil,   nil,   nil,   nil,   nil,   358,
-   366,   380,   401,   nil,   nil, 23613,   nil,   nil,   nil,     0,
-   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  7846,   nil,   nil,   nil,   nil,
-  7982,  8118,  8254,  8390,  8526,   433,   nil,   750,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   425,   nil,  2108,  8662,
-  8798,  8934,  9070,  9206,  9342, 24080, 24148,   nil,  9478,  9614,
-  9750,   nil,   nil,   604,    96,   216,   508,   230,   425,   502,
-   nil,  9886,  2245,   521, 10022, 10158, 10294, 10430, 10566, 10702,
- 10838, 10974, 11110, 11246, 11382, 11518, 11654, 11790, 11926, 12062,
- 12198, 12334, 12470, 12606, 12742, 12878,   nil,   nil,   nil,   nil,
- 13014,   nil,   nil,   nil, 24216,   nil,   nil,   523, 13150, 13286,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 13422,   nil,
-  2382,   nil,   493,   497,   nil, 13558,   542, 13694,   nil, 13830,
- 13966,   nil,   nil,   597,   nil,   nil, 14102,  1263,   nil,   515,
-  2382,   549,   590,   554, 14238,  2519,   672,   735,   766,   632,
-   801,   nil,   609,   583,   209,   nil,   nil,   nil,   632,   135,
-   601, 14374,   nil,   439,   678,   687,   836,   nil,   689, 14510,
-   nil, 14646,  2656,  1268,   634, 14782, 14918,   nil,   313,    13,
-    69, 15054,  2793,  2930,   648,   760,   668,    36,    39,   837,
-   755,    97,   799,   nil,   nil, 15190,   nil, 15326,   246,   337,
-   364,   404,   455,   502,   506,   538,   562,   nil,   601,   nil,
-   nil,   nil,   nil,   461,   nil,   266,   nil,   306,   nil,   461,
-   nil,   701,   371,   nil,   709,   426,   nil,   720,    63,   nil,
-   722,   156,   nil,   453,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 23746,   nil,
-   nil,   nil,   nil,   742,   nil,   727,   nil, 15462,   728,   nil,
-   723,   nil,   870,   238,   nil,   nil,   nil,  1971,   nil,   nil,
-   nil,   nil,   nil,  2108,   738,   nil,   nil,   759,   765,   448,
-   525,  1448,   nil,   nil,   nil,   268,   396,   808,   nil,   nil,
-  1576,  1708,   nil,   nil,   nil,   120,   nil,   809, 24284, 24352,
- 15598,   240, 15734, 15870, 16006,  1840,  3067,   697,   755,   841,
-   843,   846,   853,  1658,  4300,  4324,  3204,  3341,  3478,  3615,
-  3752,  3889,   621,   813,  4026,  4163,  2519,  1010,   914,   nil,
-  1840,   nil,   nil,   nil,   nil,   802,   nil,   nil,   nil,   806,
-   nil,   nil, 16142,   nil,   nil, 16278,   nil, 16414,   nil,   nil,
-   nil,   nil, 16550,  1321,   825,   823,   829,   nil,   nil,   830,
- 16686,   834, 16822, 24420, 24488,   893,   871,   nil,   nil, 16958,
-   846,   nil, 17094, 17230, 17366, 24556, 24624,  1398,  2656, 17502,
-   970,   973,   857,   nil,   nil,   403,   452,   897,   902,   nil,
-   587,   928,  3067,  1006,   nil,  3204,   125,  1012,  1013,  1010,
-  1027,   nil,   nil, 17638, 24692, 24760,    98,   nil,   308,   329,
-   169,   nil,   929,   nil,   933, 17774,   nil,   951,   nil,   nil,
-   nil, 17910,   nil,   595,   nil,   922,   925,   nil,   933,   942,
-   949,   nil,   nil,   nil,   nil,   nil,   nil,   941,   nil,   664,
-   nil, 18046,   nil,   nil,   nil,  1031,   nil,   nil,   nil,  1032,
-   nil,   nil,  1033,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   262,   nil,   nil,   325,   nil,   nil,
-   nil,   968,   nil,   nil,   975,   nil,  3341,   nil, 23879,   nil,
-   977, 18182, 18318, 18454, 24828, 24896, 18590,   545,  1012, 18726,
- 18862, 18998, 19134,  1011,   nil,   nil,   nil, 19270, 19406,  1015,
-   nil,   nil,   nil,   242,   276,   530,   664,   992,   992,   nil,
-   -19,  1095,   190,   nil,   nil,  1010,   nil,  1115,   nil,  1012,
-   nil,  1059, 19542,   nil,   nil,   nil,   nil,    53, 19678,  1023,
-   nil,  1030,    58,   161,  1070,   340,   971,  1080,  1046, 19814,
-   nil,  1110,  1111,   127,   306,   nil, 19950,   nil,   nil,   nil,
-   nil, 20086,   nil,   nil, 20222,   nil,   nil,   nil,   347,   nil,
-  1165,   nil,   nil,   nil,   nil,   nil,  1171,   nil, 20358,  1056,
-   129,   164,   165,   167,  3478,   nil,   934,   nil, 24964, 25032,
- 20494,   nil,   nil,   nil,   425,  3615,  3752,   727,   890, 24012,
-   144,   162,  1058,   357,   nil,   nil,   544,   991,   nil,  1152,
-   nil,  1280,   nil, 20630,   nil,   764,   nil,  1056,  1064,   899,
-   nil,  1068,   nil,   nil,   nil,   nil,   927,  3889,   nil,   nil,
-   nil,   nil,   nil,  1086,   nil,  1082, 20766,  1086,   277,   314,
-   798,   926,  2793, 20902,   nil,  1084,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil, 21038, 21174, 21310, 21446,
-   358, 21582,   nil,   nil,  1379,   nil,  4026,   nil,   nil,  1103,
-   nil,   214,   nil,   nil,   nil,  1089,   365,   nil,   nil,   nil,
-   nil,   nil,   nil,  4163,   nil,  1091,  1133,   nil,   nil,   704,
-  1214,   nil,   nil, 21718,   nil,  4300,  1224,   nil,   nil,   nil,
- 21854,   140,   168,  1228,   366,   985,   nil,  1113,  4437, 21990,
-   705,  1236,  1238,  1122,   716,   nil,   nil,   nil,  4574,  4711,
-  1118,  1128,  1140,   nil,   nil,   nil,  1141,  1145,   nil,  1146,
-  1148,   nil,  1151,   nil,  1155,   795,   539,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1146,   nil,  1159,   366,   nil,   nil,
- 22126, 22262,  2930,  1161,  1169,   nil,  1171,  1183,  1184,   nil,
-  1209,  1194,  1181, 22398,   nil,   nil,   nil,   nil,  4848,  4985,
-   nil,   118, 22534,   nil,   nil,   nil,   133,   nil,   nil,   nil,
- 22670,  5122,   nil,   nil,  1313,   765,   nil,   nil,   nil,   nil,
-   nil,  1237,  1225,  1330,  1181,   nil,   nil,  1540,   nil,  1639,
-   nil,  1771,   nil,  1833,   nil,   nil,   nil,   nil,  1211,  1212,
-   nil,   485,   nil,   nil, 25094,   nil,   nil, 25101,   nil,  5986,
-   nil,   nil,  1236, 22806,   965,  1291,   nil,  1340,  5259,  1010,
-  1032,  1064,  1294,  1068,   nil,  5396,   nil, 22942,   302,   nil,
-   nil,  5533,  5670,   nil,   nil,   761,   nil,   nil,   nil,  1221,
-  1222,  1225,  1236,   657,   919,  1237,   nil,   nil,  1238,  1239,
-  1241,  1242,   nil,  1243,   nil,  1096, 25169,   nil,   nil,  1366,
- 23078, 25237, 25305,  1098,   653,   nil,   nil,   nil,   nil,  1365,
-  1366,   nil,  1189,  6666,   nil,   nil,   nil,   nil,  1247,   nil,
- 25367,   nil,  6802,   nil,  6938,   nil,  7074,   nil,   nil,  1287,
-  1288,   nil,  1253,   147,   154,   160,  1132,   nil,   nil,   nil,
-   nil,  1253,  1268,  1269,  1273,  1274,   157,   nil,  7346,   nil,
-   nil,   nil,   nil,  1276,   nil ]
-
-racc_action_default = [
-    -1,  -640,  -639,  -640,    -2,  -626,    -4,    -5,  -640,    -8,
-    -9,  -640,  -640,  -640,   -36,  -640,  -640,   -41,  -640,  -640,
-  -291,   -52,  -628,  -640,   -57,   -62,   -63,   -64,   -68,  -270,
-  -270,  -270,  -306,  -339,  -340,   -80,  -639,   -84,   -92,   -94,
-  -640,  -533,  -534,  -640,  -640,  -640,  -640,  -229,  -640,  -628,
-  -243,  -282,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,
-  -613,  -293,  -295,  -302,  -304,  -314,  -316,  -640,  -640,   -59,
-   -59,  -626,  -640,  -324,  -331,  -640,  -341,  -342,  -344,  -345,
-  -346,  -347,  -348,  -349,  -350,  -351,  -352,  -353,  -362,  -417,
-  -465,  -466,  -467,  -468,  -469,  -639,  -472,  -639,  -639,  -639,
-  -639,  -639,  -639,  -508,  -509,  -639,  -511,  -517,  -518,  -611,
-  -522,  -523,  -612,  -525,  -526,  -527,  -528,  -529,  -530,  -531,
-  -532,  -537,  -538,  1085,    -3,  -627,  -635,  -636,  -637,    -7,
-  -640,  -640,  -640,  -640,  -640,  -640,   -24,  -640,  -123,  -124,
-  -125,  -126,  -127,  -128,  -129,  -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,  -194,  -195,  -196,  -197,
-  -198,  -199,  -200,  -201,  -202,  -203,   -29,  -130,  -639,  -640,
-  -640,  -640,  -640,  -640,  -639,  -640,  -640,  -623,  -640,  -640,
-  -628,  -629,   -56,  -640,  -533,  -534,  -640,  -291,  -640,  -640,
-  -235,  -640,  -639,  -640,  -640,  -640,  -640,  -640,  -640,  -640,
-  -640,  -640,  -640,  -640,  -640,  -640,  -640,  -640,  -640,  -640,
-  -640,  -640,  -640,  -640,  -640,  -640,  -244,  -245,  -246,  -247,
-  -640,  -355,  -445,  -425,  -640,  -624,  -625,   -69,  -639,  -640,
-  -313,  -354,  -429,  -438,  -440,   -75,  -435,   -76,  -628,   -77,
-  -250,  -265,  -639,  -639,  -269,  -640,  -275,  -640,  -606,  -640,
-  -640,   -78,   -79,  -626,   -17,   -18,  -640,   -21,   -22,   -82,
-  -639,  -628,  -640,   -85,   -88,  -639,  -100,  -101,  -640,  -640,
-  -108,  -306,  -309,  -628,  -640,  -339,  -340,  -343,  -436,  -640,
-   -90,  -640,   -96,  -301,  -519,  -520,  -640,  -223,  -224,  -640,
-  -236,  -640,  -639,  -297,  -628,  -639,  -639,  -315,   -58,  -640,
-  -640,  -640,  -639,  -639,  -626,  -640,  -627,  -533,  -534,  -640,
-  -640,  -291,  -640,  -372,  -373,  -640,  -327,  -640,  -123,  -124,
-  -163,  -164,  -165,  -181,  -186,  -193,  -196,  -334,  -640,  -533,
-  -534,  -601,  -602,  -565,  -470,  -640,  -493,  -640,  -495,  -640,
-  -497,  -640,  -640,  -477,  -640,  -640,  -483,  -640,  -640,  -489,
-  -640,  -640,  -491,  -640,  -510,  -512,  -513,  -514,  -515,    -6,
-  -638,   -30,   -31,   -32,   -33,   -34,   -10,   -11,  -640,   -26,
-   -27,   -28,  -131,  -640,   -37,   -39,   -40,  -640,  -640,   -38,
-  -640,   -42,  -640,  -291,   -50,   -51,  -204,  -255,  -275,   -53,
-   -54,   -43,  -205,  -255,  -628,  -260,  -261,  -639,  -639,  -614,
-  -615,  -270,  -433,  -616,  -617,  -615,  -614,  -270,  -432,  -434,
-  -616,  -617,   -49,  -212,   -55,  -628,  -312,  -640,  -640,  -640,
-  -639,  -301,  -640,  -640,  -640,  -213,  -214,  -215,  -216,  -217,
-  -218,  -219,  -220,  -225,  -226,  -227,  -228,  -230,  -231,  -232,
-  -233,  -234,  -237,  -238,  -239,  -240,  -628,  -248,  -640,  -446,
-  -270,  -614,  -615,   -66,   -70,  -628,  -271,  -442,  -445,  -628,
-  -308,  -266,  -640,  -274,  -267,  -640,  -272,  -640,  -276,  -609,
-  -610,   -16,  -627,   -20,  -640,  -628,   -81,  -299,   -97,   -86,
-  -640,  -628,  -639,  -640,  -640,  -107,  -640,  -519,  -520,  -640,
-   -93,   -98,  -640,  -640,  -640,  -640,  -640,  -249,  -241,  -640,
-  -457,  -640,  -628,  -296,  -251,  -632,  -632,  -640,  -640,  -604,
-  -632,  -640,  -639,  -363,  -364,  -639,  -640,  -640,  -640,  -640,
-  -640,  -358,  -452,  -639,  -640,  -640,  -301,   -59,  -118,  -119,
-  -640,  -121,  -640,  -291,  -639,  -640,  -332,  -543,  -336,  -621,
-  -622,  -640,  -418,  -565,  -421,  -600,  -600,  -548,  -550,  -550,
-  -550,  -564,  -566,  -567,  -568,  -569,  -570,  -571,  -572,  -640,
-  -574,  -640,  -580,  -582,  -583,  -585,  -590,  -592,  -593,  -595,
-  -596,  -597,  -640,  -471,  -494,  -499,  -500,  -502,  -473,  -496,
-  -474,  -498,  -475,  -476,  -640,  -479,  -481,  -640,  -482,  -485,
-  -486,  -640,  -487,  -488,  -640,  -516,  -639,   -25,  -640,   -35,
-  -281,  -640,  -640,  -639,  -640,  -640,  -640,  -437,  -640,  -262,
-  -264,  -640,  -640,   -71,  -258,  -259,  -430,  -640,  -640,   -73,
-  -431,  -311,  -630,  -614,  -615,  -614,  -615,  -628,  -640,  -424,
-  -639,   -65,  -426,  -442,  -257,  -640,  -443,  -640,  -307,  -639,
-  -273,  -277,  -640,  -607,  -608,   -19,   -23,   -83,  -640,   -89,
-   -95,  -628,  -614,  -615,  -639,  -104,  -106,  -640,   -91,  -640,
-  -211,  -221,  -222,  -628,  -639,  -356,  -639,  -294,  -361,  -298,
-  -252,  -634,  -633,  -254,  -634,  -303,  -305,  -605,  -639,  -365,
-  -639,   -60,  -366,  -367,  -319,  -320,  -640,  -322,  -640,  -628,
-  -614,  -615,  -618,  -300,  -639,  -118,  -119,  -120,  -640,  -640,
-  -639,  -325,  -539,  -541,  -328,  -639,  -639,  -565,  -565,  -640,
-  -628,  -640,  -628,  -640,  -546,  -547,  -640,  -640,  -557,  -640,
-  -560,  -640,  -562,  -640,  -374,  -640,  -376,  -378,  -381,  -384,
-  -571,  -628,  -576,  -584,  -594,  -598,  -640,  -639,  -478,  -480,
-  -484,  -490,  -492,  -640,  -132,  -279,  -640,  -628,  -614,  -615,
-  -615,  -614,  -256,  -640,  -631,  -639,   -45,  -207,   -46,  -208,
-   -72,   -47,  -210,   -48,  -209,   -74,  -640,  -640,  -640,  -640,
-  -437,  -640,  -406,  -407,  -628,  -409,  -639,  -428,  -427,  -640,
-  -439,  -639,  -441,  -268,  -278,   -87,  -102,   -99,  -310,   -13,
-   -15,  -357,  -359,  -639,  -464,  -458,  -639,  -459,  -460,  -632,
-  -640,  -360,  -368,  -640,  -370,  -639,  -640,   -61,  -321,  -448,
-  -640,  -640,  -437,  -640,  -118,  -119,  -122,  -628,  -639,  -640,
-  -640,  -640,  -640,  -628,  -640,  -337,  -603,  -419,  -639,  -639,
-  -411,  -628,  -600,  -581,  -599,  -549,  -550,  -550,  -575,  -550,
-  -550,  -591,  -550,  -586,  -628,  -640,  -640,  -383,  -573,  -501,
-  -504,  -505,  -506,  -507,  -640,   -12,  -280,  -437,   -44,  -206,
-  -263,  -640,  -242,  -600,  -600,  -388,  -639,  -639,  -639,  -405,
-  -640,  -628,  -571,  -640,  -578,  -588,  -447,   -67,  -639,  -639,
-  -463,  -640,  -640,  -462,  -253,  -317,  -640,  -371,  -318,  -449,
-  -640,  -639,  -323,  -437,  -640,  -640,  -329,  -333,  -335,  -542,
-  -544,  -543,  -640,  -640,  -640,  -420,  -545,  -640,  -553,  -640,
-  -555,  -640,  -558,  -640,  -561,  -563,  -375,  -377,  -379,  -382,
-  -503,  -640,  -386,  -387,  -396,  -390,  -398,  -640,  -401,  -640,
-  -403,  -408,  -640,  -640,  -577,  -640,  -444,  -639,  -639,  -109,
-  -110,  -640,  -640,  -117,  -461,  -639,  -450,  -640,  -639,  -326,
-  -540,  -639,  -639,  -422,  -423,  -628,  -413,  -415,  -416,  -550,
-  -550,  -550,  -550,  -640,  -640,  -600,  -579,  -389,  -639,  -639,
-  -639,  -639,  -589,  -639,  -410,  -587,  -640,  -301,   -14,  -457,
-  -639,  -640,  -640,  -116,  -639,  -451,  -453,  -454,  -455,  -640,
-  -640,  -412,  -640,  -640,  -551,  -554,  -556,  -559,  -380,  -385,
-  -640,  -393,  -640,  -395,  -640,  -399,  -640,  -402,  -404,  -300,
-  -618,  -456,  -628,  -614,  -615,  -618,  -115,  -369,  -330,  -338,
-  -414,  -550,  -639,  -639,  -639,  -639,  -437,  -552,  -640,  -391,
-  -394,  -397,  -400,  -639,  -392 ]
-
-racc_goto_table = [
-     6,   327,   327,   229,   291,   291,   291,   225,   141,   141,
-   377,   444,   128,   273,   347,   275,   551,     4,   352,   353,
-   570,   349,   350,   313,   504,   354,   451,   457,     9,   714,
-   341,   282,   286,   416,     9,   124,   327,   136,   217,   514,
-   405,   426,   429,   144,   144,   540,   850,   442,   562,   565,
-   756,   125,   463,   856,   840,   129,   888,   498,   891,   232,
-   330,   312,   594,   309,   781,   505,   293,   293,   293,   774,
-   348,   348,   141,   685,   348,   500,   917,   601,   128,   311,
-   747,   967,   969,   693,   411,   412,   413,   414,   343,  1022,
-   277,   285,   287,   386,   826,   388,   390,   393,   396,   399,
-   402,   355,   141,   386,   385,   657,   466,   435,   720,   723,
-   435,     1,     2,   727,   403,   435,   289,   301,   302,   135,
-   292,   292,   292,   881,  1006,   441,   690,  1008,   634,   690,
-   462,   637,   646,   348,   348,   348,   348,   584,   839,   586,
-   929,   695,   524,   216,   364,   764,   765,   418,   731,   857,
-   274,     9,   683,   648,   339,   557,   682,   381,   558,   362,
-   415,   751,  1022,   378,   510,   588,   342,   344,   552,   345,
-   346,    19,   409,   365,   629,   868,   631,    19,   585,   635,
-   870,  1001,   635,   367,   755,   920,   587,   526,   759,   951,
-   968,   919,   233,   921,   514,  1005,   291,   592,   877,  1048,
-   967,   233,   233,   233,   383,    19,   318,   318,   761,   507,
-   508,   831,  1070,   861,   680,  1008,  1036,   738,   846,   931,
-   553,   468,   445,   461,   439,   440,  1018,   452,   693,   384,
-   894,    19,   464,   465,   736,   774,   233,   233,   387,   897,
-   233,   359,   389,   423,   699,   928,   891,   392,   866,   829,
-   291,   291,   888,   708,   395,   424,   434,   677,   398,   434,
-   291,   401,   899,   888,   434,   786,   787,   312,   404,   451,
-   457,   869,   762,   690,   690,   886,   445,   883,   327,  1016,
-   591,   nil,   982,   nil,   nil,   nil,   nil,   601,   nil,   nil,
-   513,   513,   693,   687,    19,   327,   463,   nil,   442,   233,
-   233,   233,   233,    19,   536,   566,   533,   428,   428,   nil,
-   128,   nil,   nil,   293,   nil,   nil,   nil,   541,   nil,   701,
-   nil,  1037,   293,   nil,   545,   nil,   282,  1028,   nil,   327,
-   286,   327,   523,   521,   704,   312,   529,   309,   820,   nil,
-   312,   671,   309,   554,   559,   888,   704,   574,   nil,   522,
-   nil,   nil,  1067,   525,   348,   774,   774,   nil,   531,   nil,
-   739,   128,   836,   506,   nil,   nil,   710,   292,   nil,   nil,
-   nil,   nil,   509,   nil,   nil,   704,   292,   567,   568,   556,
-   560,   684,   nil,   nil,   569,   688,   nil,    19,   233,   432,
-   233,   233,   432,   233,   nil,   nil,   nil,   432,   233,   233,
-   862,   697,   934,   887,   nil,   889,   nil,   700,   nil,   nil,
-   810,    19,   835,   nil,  1002,   141,   815,   nil,   nil,   nil,
-   654,   789,   696,   nil,   789,   658,   nil,   nil,   719,   871,
-   872,   nil,   956,   555,   nil,   833,   873,   874,   nil,   nil,
-   797,   nil,   291,   nil,   647,   513,   513,   233,   233,   664,
-   144,   601,   601,   665,   nil,   451,   457,   233,   907,   670,
-   918,   nil,   nil,   972,   973,   nil,   461,   nil,   445,   nil,
-   452,   nil,   nil,   774,   774,    19,   nil,   678,   693,    19,
-   717,   nil,   nil,   318,    19,   807,   809,   nil,   nil,   nil,
-   nil,   812,   814,   nil,   327,   nil,   734,   735,   664,   737,
-   318,   nil,   665,   327,   291,   nil,   nil,   nil,  1061,   nil,
-   nil,    19,   663,   nil,   nil,   nil,   541,   nil,   669,   nil,
-   233,    19,    19,   nil,   690,   541,   744,   nil,   943,   nil,
-   445,   461,   nil,   nil,   582,   452,   582,   867,   847,   435,
-   nil,   nil,   944,   461,   nil,   291,   689,   452,   435,   435,
-   704,   833,   713,   953,   435,   435,   nil,   nil,   nil,   nil,
-   941,   681,   nil,   806,   808,  1049,   nil,   nil,   nil,   811,
-   813,   445,   461,   732,   nil,   nil,   452,   nil,   nil,   nil,
-   nil,   nil,   753,   nil,   nil,   nil,   nil,   728,   754,   838,
-   730,   nil,   nil,  1009,   760,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1019,   nil,   nil,  1020,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   291,   nil,   909,   nil,   nil,
-   988,   828,   nil,   nil,   nil,   995,   876,   nil,   nil,   233,
-   807,   809,   814,   812,     6,   141,   882,   nil,   nil,   nil,
-   nil,   445,   461,   nil,   nil,   nil,   452,   898,   658,   nil,
-   nil,   793,   327,  1038,   nil,   858,   nil,   nil,   nil,   827,
-   nil,   nil,     9,   327,   794,  1039,  1040,   nil,   822,   nil,
-   144,   nil,   658,   nil,   541,   nil,  1072,   513,   434,   nil,
-   435,    19,   nil,   805,   875,   837,   nil,   434,   434,   318,
-   nil,   233,   664,   434,   434,   908,   665,   914,   318,   670,
-   nil,   nil,   844,   nil,   848,   nil,   nil,   nil,   233,   nil,
-   658,   nil,   291,  1076,   nil,   nil,   854,   nil,   854,   nil,
-   nil,    19,   nil,   nil,    19,   909,   nil,   nil,   nil,   nil,
-   nil,   nil,   233,   880,   nil,   461,   nil,   nil,   445,   949,
-   nil,   452,   nil,   nil,   233,   849,   141,   955,   nil,   nil,
-   233,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   863,
-   966,   nil,   nil,   768,   770,   772,   nil,   nil,   658,   935,
-   nil,   nil,   nil,   nil,   nil,   938,   nil,   nil,   nil,   nil,
-   nil,   nil,   942,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   947,   948,   nil,   513,   428,   880,   nil,   936,   nil,   nil,
-   nil,   nil,   904,   nil,   nil,    19,   nil,  1062,   nil,   nil,
-   nil,   432,   233,   945,   nil,   nil,   nil,   nil,   nil,   822,
-   432,   432,   704,   nil,   nil,   nil,   432,   432,   nil,   434,
-   nil,   nil,   nil,   nil,   933,   nil,   nil,   nil,   658,   nil,
-   nil,   926,   nil,   nil,  1015,   nil,   348,   914,   nil,   nil,
-   914,   nil,   914,   nil,   nil,   nil,   nil,   318,   930,   nil,
-   nil,   nil,   348,   999,   nil,   nil,   nil,   946,   318,   nil,
-   937,   950,   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,   nil,
-   nil,   nil,   880,   952,   nil,   nil,   nil,   nil,   nil,   884,
-   nil,   nil,   884,    19,   975,   975,   975,   nil,   nil,   233,
-   nil,   nil,   nil,   nil,    19,    19,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   914,    29,   914,   nil,   914,   nil,   914,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,    29,
-   nil,   nil,  1000,   986,   987,   nil,    19,   nil,    29,    29,
-    29,   914,    29,   nil,   nil,   nil,   998,   nil,  1068,  1069,
-   915,   nil,   432,   nil,   nil,   nil,   nil,   nil,   nil,  1031,
-   nil,   nil,   nil,   nil,   nil,   844,  1041,   nil,    29,   nil,
-   nil,   nil,   nil,    29,    29,    19,   854,    29,   nil,   nil,
-   nil,   nil,   291,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    19,  1029,   nil,   nil,   975,   975,   975,   975,
-  1034,   975,   233,   461,    19,   890,   nil,   892,   445,   461,
-   nil,   nil,   854,   452,   976,   978,   980,    19,   233,   nil,
-   nil,   nil,   nil,   658,   nil,   nil,   nil,    19,    19,   nil,
-   nil,    29,   425,   438,   nil,   nil,    29,    29,    29,    29,
-    29,   958,   960,   nil,   962,   964,   nil,   965,   nil,   nil,
-   975,   975,   975,   975,   nil,   nil,   nil,   nil,   nil,   nil,
-   916,   975,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   984,   nil,   nil,   nil,   nil,    19,    19,   nil,
-   nil,   991,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    19,   nil,   nil,   nil,   nil,   nil,   nil,   884,   nil,   nil,
-   915,   nil,   nil,   915,   nil,   915,   nil,   nil,   516,   nil,
-   518,   nil,   519,   520,   nil,   nil,  1051,  1053,  1055,  1057,
-   nil,  1058,   nil,   nil,    29,    29,    29,    29,    29,    29,
-    29,   nil,  1025,   nil,    29,    29,    29,    19,   nil,   nil,
-   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,    29,   nil,
-    19,    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   561,
-   nil,   nil,   nil,   nil,  1044,  1045,  1046,  1047,   nil,   nil,
-  1079,  1080,  1081,  1082,   nil,   nil,   915,    32,   915,   233,
-   915,  1084,   915,    32,    29,    29,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1010,    29,  1011,   nil,  1012,    32,   nil,
-   nil,   nil,   nil,   nil,   915,   nil,   nil,    32,    32,    32,
-   nil,    32,    29,  1021,   nil,  1023,    29,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,  1077,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   650,   nil,    32,    32,   nil,   nil,    32,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,    29,    29,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1071,
-   nil,   nil,   nil,   nil,   nil,   nil,  1073,   nil,  1074,   nil,
-  1075,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
-   nil,   nil,   nil,   nil,  1083,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   691,   nil,   nil,   561,   nil,
-   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   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,
-   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,    32,
-   nil,   nil,   nil,    32,    32,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   782,   nil,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,    32,    29,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,   795,   nil,   nil,   nil,    29,   nil,
-   nil,    29,   691,   561,   nil,   nil,   nil,   nil,   nil,    29,
-   nil,    32,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-    32,    29,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   834,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,    32,   845,
-   nil,   nil,   nil,   nil,   691,   nil,    16,   561,   nil,   nil,
-   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   859,    29,   nil,   nil,   nil,   nil,   nil,    29,    29,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,
-    16,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   893,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   363,   nil,   nil,   906,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   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,
-    29,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,    16,
-   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,    16,   nil,
-   nil,   nil,   nil,   939,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    29,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   561,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    29,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,    29,
-   nil,   nil,    16,   996,   430,   nil,   nil,   430,   nil,    29,
-    32,    29,   430,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    29,    29,    16,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    29,    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,
-  1035,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,   nil,   nil,    29,    29,    32,    32,   nil,   nil,
-    16,   nil,    32,    32,    16,   nil,   nil,    29,   nil,    16,
-   240,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   290,
-   290,   290,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   337,   338,   nil,   340,    16,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-    32,    32,   nil,   nil,   nil,   nil,    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,    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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    32,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,    32,    32,   nil,   290,   437,   nil,   nil,
-   443,   290,   nil,    32,    32,   443,    16,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   240,   nil,
-   nil,   475,   476,   477,   478,   479,   480,   481,   482,   483,
-   484,   485,   486,   487,   488,   489,   490,   491,   492,   493,
-   494,   495,   496,   nil,   nil,   nil,    16,   497,   nil,    16,
-   nil,   nil,   nil,    32,    32,   290,   290,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   290,    32,   nil,   nil,   nil,
-   nil,   nil,   290,   nil,   290,   nil,   290,   290,   nil,    18,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   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,   547,   nil,   548,   nil,
-    32,   nil,   290,   290,   nil,   nil,    32,    32,   nil,   nil,
-    16,   nil,   nil,   nil,   nil,   nil,   430,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   430,   430,   nil,   nil,   nil,
-   nil,   430,   430,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,   nil,    18,   nil,   nil,    18,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   290,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-    16,   nil,   nil,   nil,   nil,   nil,   nil,   290,   nil,   443,
-   443,   443,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,    18,
-   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,    20,   nil,   nil,   430,   nil,   290,
-   nil,   nil,   290,   nil,   290,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   290,
-    16,   nil,    20,   320,   320,   nil,   nil,   nil,   nil,   443,
-   711,   712,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,    16,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   361,   nil,
-   290,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,    16,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   290,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    20,   nil,    16,    16,   nil,   nil,   994,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   290,   443,
-   290,   nil,   nil,   802,   nil,   nil,   290,   290,   443,   443,
-   nil,   nil,   nil,   nil,   443,   443,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   290,
-   nil,   nil,    16,   nil,   nil,   nil,    18,   nil,   nil,    16,
-   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,   nil,   nil,
-   nil,   nil,   nil,   290,    20,   nil,   433,   nil,   290,   433,
-   nil,   290,   nil,   nil,   433,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   290,    18,   nil,    20,    18,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   290,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   290,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   290,   nil,   nil,   nil,   nil,   nil,   nil,
-   443,   nil,    20,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-   320,    20,   nil,   443,   443,   443,   443,   nil,   912,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,    18,   320,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,    20,    41,
-   nil,    18,    18,   nil,   nil,    41,   nil,   nil,    20,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   290,   nil,   nil,
-   nil,   583,   nil,   583,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   316,   316,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   290,   443,   357,
-   nil,   nil,   379,   nil,    42,   317,   317,   nil,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
-    18,   nil,   nil,   nil,   nil,   nil,   nil,   290,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   358,   nil,   nil,   380,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   290,   nil,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    42,   nil,   nil,   nil,   nil,    18,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   320,   290,   nil,    18,
-   nil,   nil,   nil,   nil,   nil,   320,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,    18,   nil,    41,   nil,   nil,    20,   nil,
-   nil,    20,   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,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,    41,   nil,   nil,   nil,    41,   433,   nil,
-   nil,   316,    41,   nil,   nil,   nil,   nil,   433,   433,   nil,
-   nil,   nil,    18,   433,   433,   nil,   nil,   nil,   316,    18,
-   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,    42,    41,
-    41,   nil,   317,    42,   320,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   379,   nil,   379,   320,   nil,   nil,   nil,   317,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    20,   nil,   nil,   380,   nil,   380,   nil,   nil,   nil,   nil,
-   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   903,    20,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   433,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,    20,   nil,   nil,   316,   nil,   nil,
-   nil,   nil,   nil,   nil,    20,    20,   316,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-    42,   nil,    41,   nil,   nil,   nil,   nil,   nil,   317,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   317,   nil,   583,
-   nil,   nil,   nil,   nil,    20,    20,   nil,   nil,   993,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-    42,   nil,   nil,    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,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   583,
-   nil,   nil,   nil,    41,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   nil,   nil,   nil,   nil,   nil,    20,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   316,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   317,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   317,   nil,   nil,
-   nil,   nil,    41,    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,   nil,   nil,
-   nil,   nil,    42,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,    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,
-   nil,   nil,   nil,    41,   nil,    42,   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,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,
-   379,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   989,
-   nil,   nil,   nil,   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,   380,   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,
-   990,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   379,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,    41,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   380,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,    42,
-    42 ]
-
-racc_goto_check = [
-     6,    77,    77,    40,    46,    46,    46,    38,    71,    71,
-    70,    36,   116,   169,   100,    38,    12,     2,    42,    42,
-   111,    24,    24,    63,    52,    24,    50,    50,     9,    15,
-    40,    83,    83,    10,     9,     5,    77,    22,    22,    85,
-    70,    29,    29,    73,    73,    65,   105,    75,   104,   104,
-   119,     8,    75,   107,    17,     7,   207,   170,   211,    27,
-    64,    14,   168,    59,   145,    36,    82,    82,    82,   144,
-    31,    31,    71,    53,    31,    50,   156,   202,   116,    60,
-    68,   143,   146,   216,    24,    24,    24,    24,     9,   212,
-    51,    51,    51,     6,   158,     6,     6,     6,     6,     6,
-     6,     5,    71,     6,   186,    37,    61,    25,    81,    81,
-    25,     1,     3,    81,   186,    25,    58,    58,    58,    11,
-    80,    80,    80,   160,   162,    33,    86,   163,   190,    86,
-    33,   190,    13,    31,    31,    31,    31,    69,    16,    69,
-    18,    20,    21,    23,    26,   151,   151,    32,    43,    45,
-    49,     9,    55,    74,    78,    79,    84,    96,    99,   113,
-     9,   115,   212,   120,    61,   121,   122,   123,   124,   125,
-   126,    35,     7,   127,   191,   128,   191,    35,   129,   191,
-   130,   131,   191,   132,   133,   160,   134,    61,   135,   136,
-   147,   148,    35,   154,    85,   161,    46,   164,   165,   146,
-   143,    35,    35,    35,   166,    35,    35,    35,   167,   172,
-   173,   175,   162,   176,   178,   163,   179,   180,   181,   182,
-    61,    38,     6,    71,    31,    31,   156,    83,   216,   185,
-   145,    35,    31,    31,   111,   144,    35,    35,   187,   144,
-    35,    35,   188,    14,    65,   158,   211,   189,    68,    53,
-    46,    46,   207,    65,   192,    27,    27,    36,   193,    27,
-    46,   194,   195,   207,    27,   196,   197,    14,   200,    50,
-    50,   201,   168,    86,    86,   206,     6,   208,    77,   209,
-   215,   nil,   160,   nil,   nil,   nil,   nil,   202,   nil,   nil,
-     6,     6,   216,   170,    35,    77,    75,   nil,    75,    35,
-    35,    35,    35,    35,    40,    24,    38,    80,    80,   nil,
-   116,   nil,   nil,    82,   nil,   nil,   nil,    63,   nil,    36,
-   nil,   107,    82,   nil,    38,   nil,    83,    17,   nil,    77,
-    83,    77,     9,     5,    50,    14,    64,    59,    37,   nil,
-    14,    61,    59,     6,     6,   207,    50,    38,   nil,     8,
-   nil,   nil,   105,    60,    31,   144,   144,   nil,    60,   nil,
-    36,   116,    37,    58,   nil,   nil,    75,    80,   nil,   nil,
-   nil,   nil,    58,   nil,   nil,    50,    80,    14,    14,    82,
-    82,    61,   nil,   nil,     5,    61,   nil,    35,    35,    35,
-    35,    35,    35,    35,   nil,   nil,   nil,    35,    35,    35,
-    37,    61,    81,   157,   nil,   157,   nil,    61,   nil,   nil,
-    52,    35,    65,   nil,   119,    71,    52,   nil,   nil,   nil,
-    38,   191,    10,   nil,   191,    40,   nil,   nil,    61,    12,
-    12,   nil,   151,    80,   nil,    85,   168,   168,   nil,   nil,
-    36,   nil,    46,   nil,    22,     6,     6,    35,    35,     6,
-    73,   202,   202,    83,   nil,    50,    50,    35,    37,    83,
-   157,   nil,   nil,   151,   151,   nil,    71,   nil,     6,   nil,
-    83,   nil,   nil,   144,   144,    35,   nil,    40,   216,    35,
-    98,   nil,   nil,    35,    35,    75,    75,   nil,   nil,   nil,
-   nil,    75,    75,   nil,    77,   nil,    98,    98,     6,    98,
-    35,   nil,    83,    77,    46,   nil,   nil,   nil,    15,   nil,
-   nil,    35,    51,   nil,   nil,   nil,    63,   nil,    51,   nil,
-    35,    35,    35,   nil,    86,    63,    42,   nil,    37,   nil,
-     6,    71,   nil,   nil,    35,    83,    35,    36,    29,    25,
-   nil,   nil,    12,    71,   nil,    46,    82,    83,    25,    25,
-    50,    85,    31,    12,    25,    25,   nil,   nil,   nil,   nil,
-   104,    51,   nil,    33,    33,   151,   nil,   nil,   nil,    33,
-    33,     6,    71,   116,   nil,   nil,    83,   nil,   nil,   nil,
-   nil,   nil,     6,   nil,   nil,   nil,   nil,    14,    31,    61,
-    14,   nil,   nil,   157,    31,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   157,   nil,   nil,   157,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    46,   nil,    75,   nil,   nil,
-   104,   100,   nil,   nil,   nil,   104,    61,   nil,   nil,    35,
-    75,    75,    75,    75,     6,    71,   150,   nil,   nil,   nil,
-   nil,     6,    71,   nil,   nil,   nil,    83,    61,    40,   nil,
-   nil,     2,    77,   111,   nil,    98,   nil,   nil,   nil,   169,
-   nil,   nil,     9,    77,    22,    12,    12,   nil,     6,   nil,
-    73,   nil,    40,   nil,    63,   nil,   157,     6,    27,   nil,
-    25,    35,   nil,    82,    70,    63,   nil,    27,    27,    35,
-   nil,    35,     6,    27,    27,    33,    83,   150,    35,    83,
-   nil,   nil,     6,   nil,     6,   nil,   nil,   nil,    35,   nil,
-    40,   nil,    46,    37,   nil,   nil,     6,   nil,     6,   nil,
-   nil,    35,   nil,   nil,    35,    75,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,    40,   nil,    71,   nil,   nil,     6,    61,
-   nil,    83,   nil,   nil,    35,    82,    71,    61,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    14,
-    61,   nil,   nil,   205,   205,   205,   nil,   nil,    40,    98,
-   nil,   nil,   nil,   nil,   nil,    98,   nil,   nil,   nil,   nil,
-   nil,   nil,    98,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    98,    98,   nil,     6,    80,    40,   nil,    24,   nil,   nil,
-   nil,   nil,    14,   nil,   nil,    35,   nil,    36,   nil,   nil,
-   nil,    35,    35,    24,   nil,   nil,   nil,   nil,   nil,     6,
-    35,    35,    50,   nil,   nil,   nil,    35,    35,   nil,    27,
-   nil,   nil,   nil,   nil,     6,   nil,   nil,   nil,    40,   nil,
-   nil,    14,   nil,   nil,   150,   nil,    31,   150,   nil,   nil,
-   150,   nil,   150,   nil,   nil,   nil,   nil,    35,    14,   nil,
-   nil,   nil,    31,    98,   nil,   nil,   nil,   116,    35,   nil,
-    14,   116,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
-   nil,   nil,    40,    14,   nil,   nil,   nil,   nil,   nil,   152,
-   nil,   nil,   152,    35,     6,     6,     6,   nil,   nil,    35,
-   nil,   nil,   nil,   nil,    35,    35,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   150,    54,   150,   nil,   150,   nil,   150,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,    54,
-   nil,   nil,   116,    14,    14,   nil,    35,   nil,    54,    54,
-    54,   150,    54,   nil,   nil,   nil,    14,   nil,    98,    98,
-   152,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,    38,
-   nil,   nil,   nil,   nil,   nil,     6,    40,   nil,    54,   nil,
-   nil,   nil,   nil,    54,    54,    35,     6,    54,   nil,   nil,
-   nil,   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,    14,   nil,   nil,     6,     6,     6,     6,
-    14,     6,    35,    71,    35,   155,   nil,   155,     6,    71,
-   nil,   nil,     6,    83,   153,   153,   153,    35,    35,   nil,
-   nil,   nil,   nil,    40,   nil,   nil,   nil,    35,    35,   nil,
-   nil,    54,    30,    30,   nil,   nil,    54,    54,    54,    54,
-    54,   205,   205,   nil,   205,   205,   nil,   205,   nil,   nil,
-     6,     6,     6,     6,   nil,   nil,   nil,   nil,   nil,   nil,
-   155,     6,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,    35,   nil,
-   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   152,   nil,   nil,
-   152,   nil,   nil,   152,   nil,   152,   nil,   nil,    30,   nil,
-    30,   nil,    30,    30,   nil,   nil,   153,   153,   153,   153,
-   nil,   153,   nil,   nil,    54,    54,    54,    54,    54,    54,
-    54,   nil,    35,   nil,    54,    54,    54,    35,   nil,   nil,
-   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,    54,   nil,
-    35,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    30,
-   nil,   nil,   nil,   nil,   205,   205,   205,   205,   nil,   nil,
-   153,   153,   153,   153,   nil,   nil,   152,    57,   152,    35,
-   152,   153,   152,    57,    54,    54,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   155,    54,   155,   nil,   155,    57,   nil,
-   nil,   nil,   nil,   nil,   152,   nil,   nil,    57,    57,    57,
-   nil,    57,    54,   155,   nil,   155,    54,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   205,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-    30,   nil,    57,    57,   nil,   nil,    57,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,    54,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   155,
-   nil,   nil,   nil,   nil,   nil,   nil,   155,   nil,   155,   nil,
-   155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,    57,    57,    57,    57,    57,
-   nil,   nil,   nil,   nil,   155,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,    30,   nil,
-    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,    57,    57,    57,    57,    57,    57,
-   nil,   nil,   nil,    57,    57,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,    57,    54,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,    30,   nil,   nil,   nil,    54,   nil,
-   nil,    54,    30,    30,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,    57,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-    57,    54,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,    57,    57,    30,
-   nil,   nil,   nil,   nil,    30,   nil,    28,    30,   nil,   nil,
-   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    30,    54,   nil,   nil,   nil,   nil,   nil,    54,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,
-    28,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,    30,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,    28,
-   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,    28,   nil,
-   nil,   nil,   nil,    30,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    30,    57,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,    54,
-   nil,   nil,    28,    30,    28,   nil,   nil,    28,   nil,    54,
-    57,    54,    28,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,    54,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    57,   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,
-   nil,   nil,   nil,   nil,    54,    54,    57,    57,   nil,   nil,
-    28,   nil,    57,    57,    28,   nil,   nil,    54,   nil,    28,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,    41,   nil,    41,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-    57,    57,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    57,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,    57,    57,   nil,    41,    41,   nil,   nil,
-    41,    41,   nil,    57,    57,    41,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,    41,   nil,
-   nil,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,   nil,   nil,   nil,    28,    41,   nil,    28,
-   nil,   nil,   nil,    57,    57,    41,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,    57,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,    41,   nil,    41,    41,   nil,    34,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,    41,   nil,    41,   nil,
-    57,   nil,    41,    41,   nil,   nil,    57,    57,   nil,   nil,
-    28,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,
-   nil,    28,    28,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,    34,   nil,   nil,    34,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   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,    28,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,
-    28,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,
-    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,
-   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,    28,   nil,    41,
-   nil,   nil,    41,   nil,    41,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,    41,
-    28,   nil,    39,    39,    39,   nil,   nil,   nil,   nil,    41,
-    41,    41,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,    28,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-    41,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    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,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    39,   nil,    28,    28,   nil,   nil,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,    41,    41,
-    41,   nil,   nil,    41,   nil,   nil,    41,    41,    41,    41,
-   nil,   nil,   nil,   nil,    41,    41,   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,    28,   nil,   nil,   nil,    34,   nil,   nil,    28,
-   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,    39,   nil,    39,   nil,    41,    39,
-   nil,    41,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,    34,   nil,    39,    34,
-   nil,   nil,   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,
-    41,   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,
-    41,   nil,    39,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-    39,    39,   nil,    41,    41,    41,    41,   nil,    41,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,    34,    39,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,    39,    66,
-   nil,    34,    34,   nil,   nil,    66,   nil,   nil,    39,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,    39,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,    66,    66,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,    66,
-   nil,   nil,    66,   nil,    67,    67,    67,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
-    34,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,    34,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,    41,   nil,    34,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,    34,   nil,    66,   nil,   nil,    39,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,    66,   nil,   nil,   nil,    66,    39,   nil,
-   nil,    66,    66,   nil,   nil,   nil,   nil,    39,    39,   nil,
-   nil,   nil,    34,    39,    39,   nil,   nil,   nil,    66,    34,
-   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,    67,    66,
-    66,   nil,    67,    67,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,    66,    39,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    39,   nil,   nil,    67,   nil,    67,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,    39,   nil,   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,
-   nil,   nil,    39,   nil,   nil,   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,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,    39,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-    67,   nil,    66,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,    39,
-   nil,   nil,   nil,   nil,    39,    39,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-    67,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   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,    66,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,   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,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
-   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,    66,    66,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-    66,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    66,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,    67,
-    67 ]
-
-racc_goto_pointer = [
-   nil,   111,    15,   112,   nil,    30,    -2,    47,    46,    26,
-  -102,   109,  -326,  -285,    25,  -521,  -576,  -660,  -699,   nil,
-  -381,  -166,    26,   131,   -46,  -113,    72,    36,  1554,  -178,
-   833,     3,    11,   -98,  2024,   169,  -213,  -339,   -12,  2346,
-   -19,  1847,   -51,  -418,   nil,  -582,   -28,   nil,   nil,   123,
-  -199,    61,  -253,  -434,   926,  -351,   nil,  1195,    84,    27,
-    43,  -124,   nil,   -14,    22,  -286,  2687,  2728,  -500,  -228,
-   -65,    -3,   nil,    32,  -269,  -176,   nil,   -36,   107,  -190,
-    88,  -447,    34,     2,  -344,  -254,  -386,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    82,   nil,   -71,  -188,
-   -51,   nil,   nil,   nil,  -301,  -682,   nil,  -677,   nil,   nil,
-   nil,  -335,   nil,    87,   nil,  -423,     7,   nil,   nil,  -537,
-    88,  -213,   105,   105,  -175,   106,   106,   100,  -576,  -188,
-  -574,  -765,   109,  -402,  -191,  -400,  -686,   nil,   nil,   nil,
-   nil,   nil,   nil,  -814,  -540,  -545,  -814,  -705,  -633,   nil,
-  -117,  -450,   146,   118,  -631,   256,  -748,  -364,  -586,   nil,
-  -639,  -759,  -830,  -827,  -186,  -563,   115,  -384,  -321,   -12,
-  -215,   nil,   -74,   -74,   nil,  -475,  -525,   nil,  -285,  -782,
-  -355,  -498,  -627,   nil,   nil,   137,     9,   141,   144,   148,
-  -264,  -213,   154,   157,   159,  -524,  -361,  -361,   nil,   nil,
-   163,  -481,  -306,   nil,   nil,   175,  -492,  -711,  -486,  -692,
-   nil,  -711,  -888,   nil,   nil,  -102,  -432 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   304,     7,   356,   307,
-   nil,   nil,   nil,   nil,   550,   nil,   nil,   nil,   nil,   303,
-   305,   nil,   nil,   nil,   nil,    14,    15,    21,   238,   nil,
-   296,    17,   nil,   431,   239,   336,   nil,   nil,   749,   237,
-   467,    24,   nil,   nil,   351,   nil,    25,    26,    27,   nil,
-   707,   nil,   nil,   nil,   324,   nil,    28,   321,   446,    35,
-   nil,   nil,    37,    40,    39,   nil,   234,   235,   581,   nil,
-   143,   454,   142,    91,   nil,   436,    47,    50,   270,   nil,
-   447,   nil,   448,   459,   666,   511,   294,   279,    51,    52,
-    53,    54,    55,    56,    57,    58,    59,    61,   nil,   nil,
-   280,    65,    66,    67,   nil,   nil,    68,   852,    69,    70,
-    71,   nil,    72,   nil,    73,   nil,   563,    74,    75,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   284,   272,   716,
-   843,   572,   853,   776,   608,   nil,   777,   778,  1017,   913,
-   596,   nil,   597,   nil,   nil,   598,   nil,   600,   nil,   823,
-   nil,   nil,   nil,   606,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   458,   nil,   nil,   686,   nil,   nil,   499,   nil,   nil,
-   nil,   nil,   nil,    90,    92,    94,   nil,   nil,   nil,   nil,
-   nil,   624,   nil,   nil,   nil,   nil,   nil,   nil,   103,   104,
-   nil,   nil,   885,   758,   595,   nil,   599,   610,   612,   924,
-   615,   616,   925,   619,   622,   nil,   298 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 146, :_reduce_1,
-  2, 144, :_reduce_2,
-  2, 145, :_reduce_3,
-  1, 147, :_reduce_none,
-  1, 147, :_reduce_none,
-  3, 147, :_reduce_6,
-  2, 147, :_reduce_none,
-  1, 150, :_reduce_none,
-  0, 154, :_reduce_9,
-  3, 150, :_reduce_10,
-  0, 156, :_reduce_11,
-  4, 153, :_reduce_12,
-  0, 161, :_reduce_13,
-  6, 155, :_reduce_14,
-  3, 155, :_reduce_15,
-  2, 157, :_reduce_16,
-  1, 162, :_reduce_none,
-  1, 162, :_reduce_none,
-  3, 162, :_reduce_19,
-  2, 162, :_reduce_20,
-  1, 163, :_reduce_none,
-  0, 164, :_reduce_22,
-  3, 163, :_reduce_23,
-  0, 175, :_reduce_24,
-  4, 152, :_reduce_25,
-  3, 152, :_reduce_26,
-  3, 152, :_reduce_27,
-  3, 152, :_reduce_28,
-  2, 152, :_reduce_29,
-  3, 152, :_reduce_30,
-  3, 152, :_reduce_31,
-  3, 152, :_reduce_32,
-  3, 152, :_reduce_33,
-  3, 152, :_reduce_34,
-  4, 152, :_reduce_35,
-  1, 152, :_reduce_none,
-  3, 152, :_reduce_37,
-  3, 152, :_reduce_38,
-  3, 152, :_reduce_39,
-  3, 152, :_reduce_40,
-  1, 152, :_reduce_none,
-  3, 168, :_reduce_42,
-  3, 168, :_reduce_43,
-  6, 168, :_reduce_44,
-  5, 168, :_reduce_45,
-  5, 168, :_reduce_46,
-  5, 168, :_reduce_47,
-  5, 168, :_reduce_48,
-  3, 168, :_reduce_49,
-  1, 176, :_reduce_50,
-  1, 176, :_reduce_none,
-  1, 174, :_reduce_none,
-  3, 174, :_reduce_53,
-  3, 174, :_reduce_54,
-  3, 174, :_reduce_55,
-  2, 174, :_reduce_56,
-  1, 174, :_reduce_none,
-  1, 167, :_reduce_58,
-  0, 187, :_reduce_59,
-  0, 188, :_reduce_60,
-  4, 185, :_reduce_61,
-  1, 170, :_reduce_none,
-  1, 170, :_reduce_none,
-  1, 190, :_reduce_none,
-  4, 190, :_reduce_65,
-  0, 198, :_reduce_66,
-  4, 195, :_reduce_67,
-  1, 197, :_reduce_68,
-  2, 189, :_reduce_69,
-  3, 189, :_reduce_70,
-  4, 189, :_reduce_71,
-  5, 189, :_reduce_72,
-  4, 189, :_reduce_73,
-  5, 189, :_reduce_74,
-  2, 189, :_reduce_75,
-  2, 189, :_reduce_76,
-  2, 189, :_reduce_77,
-  2, 189, :_reduce_78,
-  2, 189, :_reduce_79,
-  1, 169, :_reduce_none,
-  3, 169, :_reduce_81,
-  1, 203, :_reduce_none,
-  3, 203, :_reduce_83,
-  1, 202, :_reduce_84,
-  2, 202, :_reduce_85,
-  3, 202, :_reduce_86,
-  5, 202, :_reduce_87,
-  2, 202, :_reduce_88,
-  4, 202, :_reduce_89,
-  2, 202, :_reduce_90,
-  4, 202, :_reduce_91,
-  1, 202, :_reduce_92,
-  3, 202, :_reduce_93,
-  1, 206, :_reduce_none,
-  3, 206, :_reduce_95,
-  2, 205, :_reduce_96,
-  3, 205, :_reduce_97,
-  1, 208, :_reduce_98,
-  3, 208, :_reduce_99,
-  1, 207, :_reduce_100,
-  1, 207, :_reduce_101,
-  4, 207, :_reduce_102,
-  3, 207, :_reduce_103,
-  3, 207, :_reduce_104,
-  3, 207, :_reduce_105,
-  3, 207, :_reduce_106,
-  2, 207, :_reduce_107,
-  1, 207, :_reduce_108,
-  1, 171, :_reduce_109,
-  1, 171, :_reduce_110,
-  4, 171, :_reduce_111,
-  3, 171, :_reduce_112,
-  3, 171, :_reduce_113,
-  3, 171, :_reduce_114,
-  3, 171, :_reduce_115,
-  2, 171, :_reduce_116,
-  1, 171, :_reduce_117,
-  1, 211, :_reduce_118,
-  1, 211, :_reduce_none,
-  2, 212, :_reduce_120,
-  1, 212, :_reduce_121,
-  3, 212, :_reduce_122,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_126,
-  1, 213, :_reduce_none,
-  1, 165, :_reduce_128,
-  1, 165, :_reduce_none,
-  1, 166, :_reduce_130,
-  0, 217, :_reduce_131,
-  4, 166, :_reduce_132,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  3, 184, :_reduce_204,
-  3, 184, :_reduce_205,
-  6, 184, :_reduce_206,
-  5, 184, :_reduce_207,
-  5, 184, :_reduce_208,
-  5, 184, :_reduce_209,
-  5, 184, :_reduce_210,
-  4, 184, :_reduce_211,
-  3, 184, :_reduce_212,
-  3, 184, :_reduce_213,
-  3, 184, :_reduce_214,
-  3, 184, :_reduce_215,
-  3, 184, :_reduce_216,
-  3, 184, :_reduce_217,
-  3, 184, :_reduce_218,
-  3, 184, :_reduce_219,
-  3, 184, :_reduce_220,
-  4, 184, :_reduce_221,
-  4, 184, :_reduce_222,
-  2, 184, :_reduce_223,
-  2, 184, :_reduce_224,
-  3, 184, :_reduce_225,
-  3, 184, :_reduce_226,
-  3, 184, :_reduce_227,
-  3, 184, :_reduce_228,
-  1, 184, :_reduce_none,
-  3, 184, :_reduce_230,
-  3, 184, :_reduce_231,
-  3, 184, :_reduce_232,
-  3, 184, :_reduce_233,
-  3, 184, :_reduce_234,
-  2, 184, :_reduce_235,
-  2, 184, :_reduce_236,
-  3, 184, :_reduce_237,
-  3, 184, :_reduce_238,
-  3, 184, :_reduce_239,
-  3, 184, :_reduce_240,
-  3, 184, :_reduce_241,
-  6, 184, :_reduce_242,
-  1, 184, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  3, 219, :_reduce_248,
-  3, 219, :_reduce_249,
-  1, 173, :_reduce_250,
-  1, 222, :_reduce_none,
-  2, 222, :_reduce_252,
-  4, 222, :_reduce_253,
-  2, 222, :_reduce_254,
-  1, 218, :_reduce_none,
-  3, 218, :_reduce_256,
-  3, 226, :_reduce_257,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 179, :_reduce_none,
-  1, 179, :_reduce_none,
-  2, 179, :_reduce_262,
-  4, 179, :_reduce_263,
-  2, 179, :_reduce_264,
-  1, 201, :_reduce_265,
-  2, 201, :_reduce_266,
-  2, 201, :_reduce_267,
-  4, 201, :_reduce_268,
-  1, 201, :_reduce_269,
-  0, 230, :_reduce_270,
-  2, 194, :_reduce_271,
-  2, 229, :_reduce_272,
-  2, 228, :_reduce_273,
-  1, 228, :_reduce_none,
-  1, 223, :_reduce_275,
-  2, 223, :_reduce_276,
-  3, 223, :_reduce_277,
-  4, 223, :_reduce_278,
-  3, 172, :_reduce_279,
-  4, 172, :_reduce_280,
-  2, 172, :_reduce_281,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_292,
-  0, 265, :_reduce_293,
-  4, 220, :_reduce_294,
-  0, 266, :_reduce_295,
-  3, 220, :_reduce_296,
-  0, 267, :_reduce_297,
-  4, 220, :_reduce_298,
-  3, 220, :_reduce_299,
-  3, 220, :_reduce_300,
-  2, 220, :_reduce_301,
-  0, 268, :_reduce_302,
-  4, 220, :_reduce_303,
-  0, 269, :_reduce_304,
-  4, 220, :_reduce_305,
-  1, 220, :_reduce_306,
-  4, 220, :_reduce_307,
-  3, 220, :_reduce_308,
-  1, 220, :_reduce_309,
-  5, 220, :_reduce_310,
-  4, 220, :_reduce_311,
-  3, 220, :_reduce_312,
-  2, 220, :_reduce_313,
-  1, 220, :_reduce_none,
-  2, 220, :_reduce_315,
-  1, 220, :_reduce_316,
-  6, 220, :_reduce_317,
-  6, 220, :_reduce_318,
-  4, 220, :_reduce_319,
-  4, 220, :_reduce_320,
-  5, 220, :_reduce_321,
-  4, 220, :_reduce_322,
-  6, 220, :_reduce_323,
-  0, 270, :_reduce_324,
-  0, 271, :_reduce_325,
-  7, 220, :_reduce_326,
-  0, 272, :_reduce_327,
-  0, 273, :_reduce_328,
-  0, 274, :_reduce_329,
-  9, 220, :_reduce_330,
-  0, 275, :_reduce_331,
-  0, 276, :_reduce_332,
-  6, 220, :_reduce_333,
-  0, 277, :_reduce_334,
-  6, 220, :_reduce_335,
-  0, 278, :_reduce_336,
-  0, 279, :_reduce_337,
-  9, 220, :_reduce_338,
-  1, 220, :_reduce_339,
-  1, 220, :_reduce_340,
-  1, 220, :_reduce_341,
-  1, 220, :_reduce_342,
-  1, 178, :_reduce_343,
-  1, 240, :_reduce_none,
-  1, 246, :_reduce_none,
-  1, 249, :_reduce_none,
-  1, 251, :_reduce_none,
-  1, 252, :_reduce_none,
-  1, 253, :_reduce_none,
-  1, 255, :_reduce_none,
-  1, 257, :_reduce_351,
-  1, 260, :_reduce_352,
-  1, 261, :_reduce_353,
-  1, 280, :_reduce_none,
-  1, 281, :_reduce_none,
-  1, 282, :_reduce_none,
-  1, 283, :_reduce_none,
-  1, 284, :_reduce_none,
-  1, 159, :_reduce_none,
-  1, 285, :_reduce_none,
-  1, 241, :_reduce_none,
-  1, 200, :_reduce_none,
-  1, 247, :_reduce_none,
-  1, 247, :_reduce_none,
-  2, 247, :_reduce_none,
-  1, 186, :_reduce_none,
-  1, 186, :_reduce_none,
-  1, 248, :_reduce_none,
-  5, 248, :_reduce_369,
-  1, 250, :_reduce_none,
-  2, 250, :_reduce_371,
-  1, 256, :_reduce_none,
-  1, 256, :_reduce_373,
-  1, 286, :_reduce_none,
-  3, 286, :_reduce_375,
-  1, 289, :_reduce_376,
-  3, 289, :_reduce_377,
-  1, 288, :_reduce_378,
-  3, 288, :_reduce_379,
-  5, 288, :_reduce_380,
-  1, 288, :_reduce_381,
-  3, 288, :_reduce_382,
-  2, 290, :_reduce_383,
-  1, 290, :_reduce_384,
-  4, 291, :_reduce_385,
-  2, 291, :_reduce_386,
-  2, 291, :_reduce_387,
-  1, 291, :_reduce_388,
-  2, 296, :_reduce_389,
-  1, 296, :_reduce_none,
-  6, 297, :_reduce_391,
-  8, 297, :_reduce_392,
-  4, 297, :_reduce_393,
-  6, 297, :_reduce_394,
-  4, 297, :_reduce_395,
-  2, 297, :_reduce_396,
-  6, 297, :_reduce_397,
-  2, 297, :_reduce_398,
-  4, 297, :_reduce_399,
-  6, 297, :_reduce_400,
-  2, 297, :_reduce_401,
-  4, 297, :_reduce_402,
-  2, 297, :_reduce_403,
-  4, 297, :_reduce_404,
-  1, 297, :_reduce_405,
-  1, 301, :_reduce_406,
-  1, 301, :_reduce_407,
-  3, 302, :_reduce_408,
-  1, 302, :_reduce_409,
-  4, 302, :_reduce_410,
-  1, 303, :_reduce_none,
-  4, 303, :_reduce_412,
-  1, 304, :_reduce_413,
-  3, 304, :_reduce_414,
-  1, 305, :_reduce_415,
-  1, 305, :_reduce_none,
-  0, 309, :_reduce_417,
-  0, 310, :_reduce_418,
-  5, 245, :_reduce_419,
-  4, 307, :_reduce_420,
-  1, 307, :_reduce_421,
-  3, 308, :_reduce_422,
-  3, 308, :_reduce_423,
-  3, 312, :_reduce_424,
-  2, 191, :_reduce_425,
-  4, 191, :_reduce_426,
-  5, 191, :_reduce_427,
-  5, 191, :_reduce_428,
-  2, 244, :_reduce_429,
-  4, 244, :_reduce_430,
-  4, 244, :_reduce_431,
-  3, 244, :_reduce_432,
-  3, 244, :_reduce_433,
-  3, 244, :_reduce_434,
-  2, 244, :_reduce_435,
-  1, 244, :_reduce_436,
-  4, 244, :_reduce_437,
-  0, 315, :_reduce_438,
-  4, 243, :_reduce_439,
-  0, 316, :_reduce_440,
-  4, 243, :_reduce_441,
-  0, 317, :_reduce_442,
-  0, 318, :_reduce_443,
-  4, 196, :_reduce_444,
-  0, 320, :_reduce_445,
-  0, 321, :_reduce_446,
-  4, 313, :_reduce_447,
-  1, 319, :_reduce_448,
-  2, 319, :_reduce_449,
-  3, 319, :_reduce_450,
-  4, 319, :_reduce_451,
-  0, 323, :_reduce_452,
-  6, 254, :_reduce_453,
-  1, 322, :_reduce_none,
-  1, 322, :_reduce_none,
-  6, 158, :_reduce_456,
-  0, 158, :_reduce_457,
-  1, 324, :_reduce_458,
-  1, 324, :_reduce_none,
-  1, 324, :_reduce_none,
-  2, 325, :_reduce_461,
-  1, 325, :_reduce_none,
-  2, 160, :_reduce_463,
-  1, 160, :_reduce_none,
-  1, 231, :_reduce_465,
-  1, 231, :_reduce_none,
-  1, 232, :_reduce_467,
-  1, 327, :_reduce_468,
-  1, 327, :_reduce_none,
-  2, 327, :_reduce_470,
-  3, 328, :_reduce_471,
-  1, 328, :_reduce_472,
-  3, 233, :_reduce_473,
-  3, 234, :_reduce_474,
-  3, 235, :_reduce_475,
-  3, 235, :_reduce_476,
-  1, 332, :_reduce_477,
-  3, 332, :_reduce_478,
-  1, 333, :_reduce_none,
-  2, 333, :_reduce_480,
-  3, 237, :_reduce_481,
-  3, 237, :_reduce_482,
-  1, 335, :_reduce_483,
-  3, 335, :_reduce_484,
-  3, 236, :_reduce_485,
-  3, 236, :_reduce_486,
-  3, 238, :_reduce_487,
-  3, 238, :_reduce_488,
-  1, 336, :_reduce_489,
-  3, 336, :_reduce_490,
-  1, 337, :_reduce_491,
-  3, 337, :_reduce_492,
-  1, 329, :_reduce_493,
-  2, 329, :_reduce_494,
-  1, 330, :_reduce_495,
-  2, 330, :_reduce_496,
-  1, 331, :_reduce_497,
-  2, 331, :_reduce_498,
-  1, 334, :_reduce_499,
-  0, 339, :_reduce_500,
-  3, 334, :_reduce_501,
-  0, 340, :_reduce_502,
-  4, 334, :_reduce_503,
-  1, 338, :_reduce_504,
-  1, 338, :_reduce_505,
-  1, 338, :_reduce_506,
-  1, 338, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  2, 341, :_reduce_510,
-  1, 341, :_reduce_511,
-  1, 343, :_reduce_none,
-  1, 343, :_reduce_none,
-  1, 343, :_reduce_none,
-  1, 343, :_reduce_none,
-  3, 342, :_reduce_516,
-  1, 326, :_reduce_none,
-  1, 326, :_reduce_none,
-  2, 326, :_reduce_519,
-  2, 326, :_reduce_520,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 210, :_reduce_526,
-  1, 210, :_reduce_527,
-  1, 210, :_reduce_528,
-  1, 210, :_reduce_529,
-  1, 210, :_reduce_530,
-  1, 210, :_reduce_531,
-  1, 210, :_reduce_532,
-  1, 239, :_reduce_533,
-  1, 239, :_reduce_534,
-  1, 177, :_reduce_535,
-  1, 177, :_reduce_536,
-  1, 182, :_reduce_537,
-  1, 182, :_reduce_538,
-  0, 344, :_reduce_539,
-  4, 258, :_reduce_540,
-  1, 258, :_reduce_541,
-  3, 262, :_reduce_542,
-  0, 346, :_reduce_543,
-  3, 262, :_reduce_544,
-  4, 345, :_reduce_545,
-  2, 345, :_reduce_546,
-  2, 345, :_reduce_547,
-  1, 345, :_reduce_none,
-  2, 348, :_reduce_549,
-  0, 348, :_reduce_550,
-  6, 311, :_reduce_551,
-  8, 311, :_reduce_552,
-  4, 311, :_reduce_553,
-  6, 311, :_reduce_554,
-  4, 311, :_reduce_555,
-  6, 311, :_reduce_556,
-  2, 311, :_reduce_557,
-  4, 311, :_reduce_558,
-  6, 311, :_reduce_559,
-  2, 311, :_reduce_560,
-  4, 311, :_reduce_561,
-  2, 311, :_reduce_562,
-  4, 311, :_reduce_563,
-  1, 311, :_reduce_564,
-  0, 311, :_reduce_565,
-  1, 306, :_reduce_566,
-  1, 306, :_reduce_567,
-  1, 306, :_reduce_568,
-  1, 306, :_reduce_569,
-  1, 287, :_reduce_none,
-  1, 287, :_reduce_571,
-  1, 350, :_reduce_none,
-  3, 350, :_reduce_573,
-  1, 298, :_reduce_574,
-  3, 298, :_reduce_575,
-  2, 351, :_reduce_576,
-  2, 352, :_reduce_577,
-  1, 292, :_reduce_none,
-  3, 292, :_reduce_579,
-  1, 347, :_reduce_none,
-  3, 347, :_reduce_581,
-  1, 353, :_reduce_none,
-  1, 353, :_reduce_none,
-  2, 293, :_reduce_584,
-  1, 293, :_reduce_585,
-  3, 354, :_reduce_586,
-  3, 355, :_reduce_587,
-  1, 299, :_reduce_588,
-  3, 299, :_reduce_589,
-  1, 349, :_reduce_590,
-  3, 349, :_reduce_591,
-  1, 356, :_reduce_none,
-  1, 356, :_reduce_none,
-  2, 300, :_reduce_594,
-  1, 300, :_reduce_595,
-  1, 357, :_reduce_none,
-  1, 357, :_reduce_none,
-  2, 295, :_reduce_598,
-  2, 294, :_reduce_599,
-  0, 294, :_reduce_600,
-  1, 263, :_reduce_none,
-  0, 358, :_reduce_602,
-  4, 263, :_reduce_603,
-  1, 242, :_reduce_604,
-  2, 242, :_reduce_none,
-  1, 225, :_reduce_none,
-  3, 225, :_reduce_607,
-  3, 359, :_reduce_608,
-  2, 359, :_reduce_609,
-  2, 359, :_reduce_610,
-  1, 199, :_reduce_none,
-  1, 199, :_reduce_none,
-  1, 199, :_reduce_none,
-  1, 193, :_reduce_none,
-  1, 193, :_reduce_none,
-  1, 193, :_reduce_none,
-  1, 193, :_reduce_none,
-  1, 314, :_reduce_none,
-  1, 314, :_reduce_none,
-  1, 314, :_reduce_none,
-  1, 264, :_reduce_none,
-  1, 264, :_reduce_none,
-  1, 181, :_reduce_none,
-  1, 192, :_reduce_none,
-  1, 192, :_reduce_none,
-  0, 148, :_reduce_none,
-  1, 148, :_reduce_none,
-  0, 183, :_reduce_none,
-  1, 183, :_reduce_none,
-  2, 204, :_reduce_none,
-  2, 180, :_reduce_none,
-  0, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 259, :_reduce_635,
-  1, 259, :_reduce_none,
-  1, 151, :_reduce_none,
-  2, 151, :_reduce_638,
-  0, 149, :_reduce_639 ]
-
-racc_reduce_n = 640
-
-racc_shift_n = 1085
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tLOWEST => 139,
-  :tEQL => 140,
-  :tBDOT2 => 141,
-  :tBDOT3 => 142 }
-
-racc_nt_base = 143
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tLOWEST",
-  "tEQL",
-  "tBDOT2",
-  "tBDOT3",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "arg_value",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "backref",
-  "opt_nl",
-  "arg",
-  "expr_value_do",
-  "do",
-  "@7",
-  "@8",
-  "command",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@9",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "fname",
-  "op",
-  "reswords",
-  "symbol",
-  "@10",
-  "arg_rhs",
-  "rel_expr",
-  "primary",
-  "relop",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@11",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "k_def",
-  "f_arglist",
-  "singleton",
-  "dot_or_colon",
-  "@12",
-  "@13",
-  "@14",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "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",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "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",
-  "@36",
-  "@37",
-  "ssym",
-  "dsym",
-  "sym",
-  "@38",
-  "args_tail",
-  "@39",
-  "f_kwarg",
-  "opt_args_tail",
-  "f_optarg",
-  "f_arg_item",
-  "f_kw",
-  "f_block_kw",
-  "kwrest_mark",
-  "f_opt",
-  "f_block_opt",
-  "restarg_mark",
-  "blkarg_mark",
-  "@40",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 12
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_40(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 41 omitted
-
-def _reduce_42(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_50(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-# reduce 51 omitted
-
-# reduce 52 omitted
-
-def _reduce_53(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_54(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_56(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-# reduce 57 omitted
-
-def _reduce_58(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_61(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 62 omitted
-
-# reduce 63 omitted
-
-# reduce 64 omitted
-
-def _reduce_65(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_66(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_67(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_75(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_76(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_77(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_78(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_79(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 80 omitted
-
-def _reduce_81(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 82 omitted
-
-def _reduce_83(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_93(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 94 omitted
-
-def _reduce_95(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_96(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_107(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_108(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_118(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 119 omitted
-
-def _reduce_120(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_122(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 123 omitted
-
-# reduce 124 omitted
-
-# reduce 125 omitted
-
-def _reduce_126(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 127 omitted
-
-def _reduce_128(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 129 omitted
-
-def _reduce_130(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_132(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-# reduce 203 omitted
-
-def _reduce_204(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_205(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_206(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_207(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_208(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_209(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_210(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_211(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_212(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_213(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_214(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_215(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_216(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_217(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                      ## TODO: why is this 2.0 only?
-                      debug 19
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_227(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_228(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 229 omitted
-
-def _reduce_230(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_241(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_242(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-# reduce 243 omitted
-
-# reduce 244 omitted
-
-# reduce 245 omitted
-
-# reduce 246 omitted
-
-# reduce 247 omitted
-
-def _reduce_248(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_249(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_250(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 251 omitted
-
-def _reduce_252(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_253(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_254(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 255 omitted
-
-def _reduce_256(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_257(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-# reduce 258 omitted
-
-# reduce 259 omitted
-
-# reduce 260 omitted
-
-# reduce 261 omitted
-
-def _reduce_262(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_263(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_264(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_265(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_266(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_267(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_268(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_271(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_272(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_273(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 274 omitted
-
-def _reduce_275(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_276(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_280(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_281(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 282 omitted
-
-# reduce 283 omitted
-
-# reduce 284 omitted
-
-# reduce 285 omitted
-
-# reduce 286 omitted
-
-# reduce 287 omitted
-
-# reduce 288 omitted
-
-# reduce 289 omitted
-
-# reduce 290 omitted
-
-# reduce 291 omitted
-
-def _reduce_292(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_293(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_294(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_295(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_297(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_298(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_302(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_303(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_305(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_307(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_308(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_309(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_310(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_311(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_312(val, _values, result)
-                      debug 20
-
-    result
-end
-
-def _reduce_313(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 314 omitted
-
-def _reduce_315(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_316(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_317(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_327(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_339(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_340(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 344 omitted
-
-# reduce 345 omitted
-
-# reduce 346 omitted
-
-# reduce 347 omitted
-
-# reduce 348 omitted
-
-# reduce 349 omitted
-
-# reduce 350 omitted
-
-def _reduce_351(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_352(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 354 omitted
-
-# reduce 355 omitted
-
-# reduce 356 omitted
-
-# reduce 357 omitted
-
-# reduce 358 omitted
-
-# reduce 359 omitted
-
-# reduce 360 omitted
-
-# reduce 361 omitted
-
-# reduce 362 omitted
-
-# reduce 363 omitted
-
-# reduce 364 omitted
-
-# reduce 365 omitted
-
-# reduce 366 omitted
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-def _reduce_369(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 370 omitted
-
-def _reduce_371(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 372 omitted
-
-def _reduce_373(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 374 omitted
-
-def _reduce_375(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_376(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_377(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_378(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_379(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_380(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_381(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_382(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_383(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_384(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-def _reduce_385(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_386(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_387(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_388(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_389(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 390 omitted
-
-def _reduce_391(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_392(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_393(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_394(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_395(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_396(val, _values, result)
-                      result = args(val) << nil
-
-    result
-end
-
-def _reduce_397(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_398(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_403(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_406(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_407(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_408(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_409(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_410(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 411 omitted
-
-def _reduce_412(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_413(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 416 omitted
-
-def _reduce_417(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_418(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_433(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_438(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_439(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_442(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_443(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_444(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_445(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_446(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_447(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 454 omitted
-
-# reduce 455 omitted
-
-def _reduce_456(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_457(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_458(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 459 omitted
-
-# reduce 460 omitted
-
-def _reduce_461(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 462 omitted
-
-def _reduce_463(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 464 omitted
-
-def _reduce_465(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 466 omitted
-
-def _reduce_467(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_468(val, _values, result)
-                      debug 37
-
-    result
-end
-
-# reduce 469 omitted
-
-def _reduce_470(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_471(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_472(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_473(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_476(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_477(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 479 omitted
-
-def _reduce_480(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_481(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_482(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_483(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_485(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_486(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_487(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_488(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_489(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_491(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_492(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_495(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_497(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_498(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_499(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_500(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_501(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_502(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_503(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_504(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_505(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_506(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 507 omitted
-
-# reduce 508 omitted
-
-# reduce 509 omitted
-
-def _reduce_510(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_511(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 512 omitted
-
-# reduce 513 omitted
-
-# reduce 514 omitted
-
-# reduce 515 omitted
-
-def _reduce_516(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-
-    result
-end
-
-# reduce 517 omitted
-
-# reduce 518 omitted
-
-def _reduce_519(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-def _reduce_520(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 521 omitted
-
-# reduce 522 omitted
-
-# reduce 523 omitted
-
-# reduce 524 omitted
-
-# reduce 525 omitted
-
-def _reduce_526(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_527(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_528(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_529(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_530(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_531(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_532(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_533(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-
-    result
-end
-
-def _reduce_534(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_535(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 40
-
-    result
-end
-
-def _reduce_537(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_538(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_544(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_545(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_546(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_547(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 548 omitted
-
-def _reduce_549(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_550(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_551(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_552(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_553(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_554(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_555(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_556(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_560(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_561(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_562(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_563(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_565(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_566(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_567(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_568(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_569(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 570 omitted
-
-def _reduce_571(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 572 omitted
-
-def _reduce_573(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_574(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_575(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-def _reduce_576(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_577(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-# reduce 578 omitted
-
-def _reduce_579(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 580 omitted
-
-def _reduce_581(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 582 omitted
-
-# reduce 583 omitted
-
-def _reduce_584(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_585(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_586(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-
-    result
-end
-
-def _reduce_587(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-
-    result
-end
-
-def _reduce_588(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_589(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_590(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_591(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 592 omitted
-
-# reduce 593 omitted
-
-def _reduce_594(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_595(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 596 omitted
-
-# reduce 597 omitted
-
-def _reduce_598(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_599(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_600(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 601 omitted
-
-def _reduce_602(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_603(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_604(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 605 omitted
-
-# reduce 606 omitted
-
-def _reduce_607(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_608(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_609(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_610(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 611 omitted
-
-# reduce 612 omitted
-
-# reduce 613 omitted
-
-# reduce 614 omitted
-
-# reduce 615 omitted
-
-# reduce 616 omitted
-
-# reduce 617 omitted
-
-# reduce 618 omitted
-
-# reduce 619 omitted
-
-# reduce 620 omitted
-
-# reduce 621 omitted
-
-# reduce 622 omitted
-
-# reduce 623 omitted
-
-# reduce 624 omitted
-
-# reduce 625 omitted
-
-# reduce 626 omitted
-
-# reduce 627 omitted
-
-# reduce 628 omitted
-
-# reduce 629 omitted
-
-# reduce 630 omitted
-
-# reduce 631 omitted
-
-# reduce 632 omitted
-
-# reduce 633 omitted
-
-# reduce 634 omitted
-
-def _reduce_635(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 636 omitted
-
-# reduce 637 omitted
-
-def _reduce_638(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_639(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby20Parser
diff -pruN 3.20.0-2/lib/ruby20_parser.y 3.21.1-1/lib/ruby20_parser.y
--- 3.20.0-2/lib/ruby20_parser.y	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/lib/ruby20_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,2683 +0,0 @@
-# -*- racc -*-
-
-class Ruby20Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 12
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL arg_value
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | mlhs tEQL mrhs
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg                                   =tLBRACE_ARG
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM tINTEGER tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-                    }
-                | tUMINUS_NUM tFLOAT tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                      ## TODO: why is this 2.0 only?
-                      debug 19
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 20
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def fname
-                    {
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-                    }
-                    f_arglist bodystmt k_end
-                    {
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fname
-                    {
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                    }
-                    f_arglist bodystmt k_end
-                    {
-
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA
-                    {
-                      result = args(val) << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    compstmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 37
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-                    }
-
-         numeric: tINTEGER
-                | tFLOAT
-                | tUMINUS_NUM tINTEGER =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-                | tUMINUS_NUM tFLOAT   =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 40
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-       f_arglist: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_item: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-            f_kw: tLABEL arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-
-      f_block_kw: tLABEL primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: tIDENTIFIER tEQL arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                    }
-
-     f_block_opt: tIDENTIFIER tEQL primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-        rbracket: opt_nl tRBRACK
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby21_parser.rb 3.21.1-1/lib/ruby21_parser.rb
--- 3.20.0-2/lib/ruby21_parser.rb	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/lib/ruby21_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,10980 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby21Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -523,   565,   565,   284,   565,   565,  -537,  -523,  -523,  -523,
-   233,   565,  -523,  -523,  -523,     3,  -523,   254,   643,   646,
-   224,   225,   224,   225,  -523,   -94,  -523,  -523,  -523,  -108,
-  -109,  -116,  -115,  -111,   126,  -113,  -523,  -523,   -80,  -523,
-  -523,  -523,  -523,  -523,   230,   221,   234,  -110,  -111,   251,
-   734,   279,  -113,   253,   252,   249,   250,   222,   879,  -110,
-   608,  -108,   605,   604,   603,  -112,   606,  -523,  -523,  -523,
-  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
-  -523,   642,   645,  -523,  -523,  -523,   223,  -523,  -523,   284,
-   286,  -523,   224,   225,  -523,  -523,   226,  -523,   776,  -523,
-   284,  -523,   284,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
-   234,  -523,   234,  -523,   274,   130,   130,  -112,   130,   130,
-   129,   129,   941,   129,   129,   130,  -523,  -523,  -523,  -523,
-   129,  -523,  -526,  -523,   -99,  -100,  -107,  -106,  -523,  -526,
-  -526,  -526,  -523,  -619,  -526,  -526,  -526,  -111,  -526,  -113,
-   130,  -102,  -111,  -102,  -113,   129,  -526,  -104,  -526,  -526,
-  -526,  -110,  -114,   878,  -101,   281,  -110,   281,  -526,  -526,
-  -538,  -526,  -526,  -526,  -526,  -526,   286,  -104,   230,  -112,
-   825,  -523,   234,  -619,  -112,   229,   841,   286,  -523,   286,
-   825,  -526,   842,   627,   227,   335,   632,  -616,  -526,  -526,
-  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,
-  -526,  -526,  -526,    95,   824,  -526,  -526,  -526,  -102,  -526,
-  -526,    96,  -103,  -526,   824,  -109,  -526,  -526,  -620,  -526,
-  -437,  -526,   627,  -526,   231,  -526,  -526,  -526,  -526,  -526,
-  -526,  -526,   475,  -526,  -104,  -526,   108,   109,   108,   109,
-  -523,   627,   336,  -102,   629,   628,  -102,  -523,  -526,  -526,
-  -526,  -526,  -616,  -526,  -300,  -526,  -523,  -105,  -537,  -102,
-  -526,  -300,  -300,  -300,  -526,   612,  -107,  -300,  -300,  -104,
-  -300,  -533,  -104,  -437,  -616,   855,   615,   572,  -533,  -116,
-  -437,  -532,  -617,   629,   628,  -104,   234,  -116,  -532,  -437,
-  -300,  -300,   788,  -300,  -300,  -300,  -300,  -300,  -534,   231,
-   -99,  -531,   629,   628,   368,  -534,   393,  -437,  -531,   623,
-   622,   790,   627,  -108,   110,   111,   110,   111,   396,  -623,
-   399,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,  -526,  -538,  -300,  -300,  -300,
-   402,   669,  -526,   616,  -623,  -300,   544,  -617,  -300,   419,
-   816,  -526,   817,  -300,  -116,  -300,   627,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,   746,  -300,   544,  -300,   747,  -617,
-  -528,   612,  -623,   629,   628,   625,   627,  -528,  -100,  -623,
-  -300,  -300,   615,  -105,  -619,  -300,  -623,   663,  -623,   627,
-   663,  -109,  -300,  -623,  -623,  -623,  -114,  -623,   254,  -623,
-  -623,  -115,  -623,  -529,  -623,  -111,  -623,  -113,  -106,  -619,
-  -529,  -623,   424,  -623,   474,   623,   622,   629,   628,   630,
-   627,  -115,  -623,  -623,   664,  -623,  -623,  -623,  -623,  -623,
-   251,  -623,  -102,   664,   253,   252,  -530,   629,   628,   635,
-   590,   912,  -111,  -530,   476,  -111,   803,   591,   477,   616,
-   629,   628,   640,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
-  -623,  -623,  -623,  -623,  -623,  -623,  -623,   803,   233,  -623,
-  -623,  -623,   506,   670,   515,  -104,   518,  -623,   520,  -113,
-  -623,   629,   628,   647,   -79,  -623,   234,  -623,  -113,  -623,
-  -623,  -623,  -623,  -623,  -623,  -623,  -110,  -623,  -623,  -623,
-   608,  -110,   605,   604,   603,   612,   606,  -343,   723,  -101,
-   530,   722,  -623,  -623,  -343,  -103,   615,  -623,  -623,   224,
-   225,   531,  -110,  -343,  -623,  -623,  -623,  -623,  -112,   538,
-  -623,  -623,  -623,   723,  -623,   421,   725,   291,   610,   594,
-   423,   422,   254,  -623,  -623,  -623,  -623,   620,   619,   623,
-   622,   130,   224,   225,  -623,  -623,   129,  -623,  -623,  -623,
-  -623,  -623,   608,   234,   605,   604,   603,   723,   606,   608,
-   725,   605,   604,   603,   251,   606,   281,   130,   253,   252,
-   249,   250,   129,   616,   541,  -623,  -623,  -623,  -623,  -623,
-  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,   545,
-   776,  -623,  -623,  -623,   230,   818,  -623,   776,   254,  -623,
-   234,   472,  -623,  -623,   572,  -623,   780,  -623,   412,  -623,
-   473,  -623,  -623,  -623,  -623,  -623,  -623,  -623,   130,  -623,
-  -623,  -623,   608,   129,   605,   604,   603,   612,   606,   271,
-   272,   851,   855,   577,  -623,  -623,  -623,  -623,   615,  -623,
-  -300,  -623,   723,   224,   225,   725,  -623,  -300,  -300,  -300,
-  -112,   578,  -300,  -300,  -300,   608,  -300,   605,   604,   603,
-   610,   606,   623,   622,   270,   269,  -300,  -300,  -300,   620,
-   619,   623,   622,   851,   855,   634,  -300,  -300,  -535,  -300,
-  -300,  -300,  -300,  -300,   608,  -535,   605,   604,   603,   234,
-   606,   130,  1043,   776,  -535,   608,   129,   605,   604,   603,
-   638,   606,   780,   641,   644,   616,   651,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,   130,   776,  -300,  -300,  -300,   129,   819,  -300,  -273,
-   653,  -300,   654,   776,  -300,  -300,   234,  -300,   661,  -300,
-   662,  -300,   780,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-   130,  -300,   281,  -300,   608,   129,   605,   604,   603,   612,
-   606,   254,   674,   254,   254,   254,  -300,  -300,  -300,  -300,
-   615,  -300,  -300,  -300,   254,   681,   234,   234,  -300,  -300,
-  -300,  -300,  -114,  -536,   230,  -300,  -300,   419,  -300,   254,
-  -536,   537,   610,   251,   234,   -94,   700,   253,   252,  -536,
-   535,   620,   619,   623,   622,   264,   265,   234,  -300,  -300,
-   550,  -300,  -300,  -300,  -300,  -300,   133,   134,   135,   136,
-   137,   251,  -291,   257,   711,   253,   252,   249,   250,  -291,
-   716,   255,   719,   256,   234,   726,   727,   616,  -291,  -300,
-  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,   230,   230,  -300,  -300,  -300,   230,   669,
-   547,   576,   520,  -300,   730,   657,  -300,   719,   719,   473,
-   574,  -300,   572,  -300,   655,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,   719,  -300,   608,  -300,   605,   604,   603,   612,
-   606,   608,   753,   605,   604,   603,   758,   606,  -300,  -300,
-   615,  -300,   764,  -300,  -623,   767,   768,   770,  -301,   230,
-  -300,  -623,  -623,  -623,  -114,  -301,   749,  -623,  -623,   254,
-  -623,  -301,   610,   230,  -301,   751,   772,   774,  -301,  -623,
-  1027,   620,   619,   623,   622,   264,   265,  -301,   783,   751,
-  -623,  -623,   784,  -623,  -623,  -623,  -623,  -623,   785,   791,
-   792,   251,  -300,   257,  -274,   253,   252,   249,   250,  -300,
-   804,   255,   506,   256,  -620,   506,   234,   616,  -300,   821,
-   274,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
-  -623,  -623,  -623,  -623,  -623,  -300,   830,  -623,  -623,  -623,
-   832,   670,  -300,   518,   520,  -623,   711,  -620,  -623,   234,
-   281,  -300,   254,  -623,   281,  -623,   711,  -623,  -623,  -623,
-  -623,  -623,  -623,  -623,   254,  -623,  -623,  -623,   264,   265,
-  1008,  -535,   605,   604,   603,   855,   606,   719,  -535,   234,
-  -623,  -623,   234,  -623,   251,  -623,   257,  -535,   253,   252,
-   249,   250,  -623,   896,   897,   234,  -112,     8,    85,    86,
-    87,    12,    78,   906,  -275,  -536,    79,    80,   234,   911,
-   928,    83,  -536,    81,    82,    84,    33,    34,    76,    77,
-   711,  -536,  -273,   933,   719,    88,    31,    30,   118,   117,
-   119,   120,   901,   902,    22,   719,   903,   124,   125,   658,
-    11,    49,    10,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   719,   116,   124,   125,   234,   108,   109,   719,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,   230,   247,   248,  -291,   719,   264,
-   265,  1033,    43,   234,  -291,    36,   955,   234,    62,    63,
-  1031,   767,    64,  -291,    38,   251,   958,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   960,   962,
-   230,   105,    95,    97,    98,    99,   101,  1027,   964,   964,
-    96,   106,   234,   268,   971,  -248,   751,  -301,    89,  -276,
-   972,    93,   100,   102,  -301,   110,   111,   309,    85,    86,
-    87,    12,    78,  -301,   767,   975,    79,    80,   978,   980,
-   982,    83,   234,    81,    82,    84,    33,    34,    76,    77,
-   133,   134,   135,   136,   137,    88,    31,    30,   118,   117,
-   119,   120,   984,   719,    22,   758,  1004,  1005,  1014,   658,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,  1015,   116,   124,   125,  1025,   108,   109,  1028,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,  -300,   247,   248,   841,  1034,   264,
-   265,  -300,    43,  1044,   964,   313,  -620,   964,    62,    63,
-  -300,   964,    64,   767,    38,   251,  1051,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,  1053,  1055,
-  1057,   105,    95,    97,    98,    99,   101,  1057,   716,   719,
-    96,   106,   719,   268,  1015,  -620,  -619,   234,    89,   964,
-  1079,    93,   100,   102,  1057,   110,   111,   309,    85,    86,
-    87,    12,    78,  1057,  1057,  1057,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   133,   134,   135,   136,   137,    88,    31,    30,   118,   117,
-   119,   120,   nil,  1008,    22,   605,   604,   603,   nil,   606,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   133,   134,   135,   136,   137,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,   313,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   234,   268,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,   313,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,   nil,  -645,  -645,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   267,   262,   263,   nil,  -645,  -645,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,  -645,  -645,  -645,  -645,   271,   272,
-   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,     8,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,    10,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,  -645,  -645,  -645,  -645,   271,   272,
-   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,  -645,  -645,  -645,  -645,   271,   272,
-   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,  -645,  -645,  -645,  -645,   271,   272,
-   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,  -645,  -645,  -645,  -645,   271,   272,
-   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,  -645,  -645,  -645,  -645,   271,   272,
-   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   nil,   nil,   262,   263,   nil,   nil,   nil,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
-   266,   nil,   262,   263,   nil,   nil,   nil,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   254,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   264,
-   265,   nil,    43,   nil,   nil,    36,   nil,   254,    62,    63,
-   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
-   252,   249,   250,   264,   265,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   251,
-    96,   106,   nil,   253,   252,   249,   250,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
-    49,    10,    13,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   608,
-    64,   605,   604,   603,   612,   606,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   615,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   610,  -436,    93,
-   100,   102,   nil,   110,   111,  -436,  -436,  -436,   623,   622,
-  -436,  -436,  -436,   608,  -436,   605,   604,   603,   612,   606,
-   nil,   nil,   nil,  -436,  -436,  -436,   nil,   nil,   nil,   615,
-   nil,   nil,   nil,   nil,  -436,  -436,   nil,  -436,  -436,  -436,
-  -436,  -436,   616,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   610,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   620,   619,   623,   622,   nil,  -436,  -436,  -436,  -436,  -436,
-  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,   nil,
-   nil,  -436,  -436,  -436,   nil,   nil,  -436,   nil,   281,  -436,
-   nil,   nil,  -436,  -436,   nil,  -436,   616,  -436,   nil,  -436,
-   nil,  -436,  -436,  -436,  -436,  -436,  -436,  -436,   nil,  -436,
-  -436,  -436,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -436,  -436,  -309,  -436,   nil,  -436,
-   nil,   nil,   nil,  -309,  -309,  -309,  -436,   nil,  -309,  -309,
-  -309,   608,  -309,   605,   604,   603,   612,   606,   nil,   nil,
-   nil,   nil,  -309,  -309,   nil,   nil,   nil,   615,   nil,   nil,
-   nil,   nil,  -309,  -309,   nil,  -309,  -309,  -309,  -309,  -309,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   610,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,   619,
-   623,   622,   nil,  -309,  -309,  -309,  -309,  -309,  -309,  -309,
-  -309,  -309,  -309,  -309,  -309,  -309,  -309,   nil,   nil,  -309,
-  -309,  -309,   nil,   nil,  -309,   nil,   291,  -309,   nil,   nil,
-  -309,  -309,   nil,  -309,   616,  -309,   nil,  -309,   nil,  -309,
-  -309,  -309,  -309,  -309,  -309,  -309,   nil,  -309,   nil,  -309,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -309,  -309,   nil,  -309,   nil,  -309,    85,    86,
-    87,   nil,    78,   nil,  -309,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   302,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   303,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   302,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   332,
-   nil,   nil,   nil,   nil,   nil,   608,   nil,   605,   604,   603,
-   612,   606,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,
-   nil,   615,   318,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   317,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   610,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   623,   622,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   616,    81,
-    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,   nil,   nil,   332,   nil,
-   nil,   nil,   nil,   nil,   608,   nil,   605,   604,   603,   612,
-   606,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,
-   615,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   610,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   623,   622,   nil,    96,   106,   nil,   nil,
-   nil,   334,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   616,    81,    82,
-    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
-   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
-   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   608,    64,   605,   604,   603,   612,
-   606,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   615,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   610,  -292,    93,   100,   102,   nil,   110,   111,
-  -292,  -292,  -292,   623,   622,  -292,  -292,  -292,   608,  -292,
-   605,   604,   603,   612,   606,   nil,   nil,   nil,   nil,  -292,
-  -292,  -292,   nil,   nil,   615,   nil,   nil,   nil,   nil,  -292,
-  -292,   nil,  -292,  -292,  -292,  -292,  -292,   616,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   610,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   620,   619,   623,   622,   nil,
-  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,
-  -292,  -292,  -292,  -292,   nil,   nil,  -292,  -292,  -292,   nil,
-   nil,  -292,   nil,   234,  -292,   nil,   nil,  -292,  -292,   nil,
-  -292,   616,  -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,   nil,  -292,   nil,  -292,   nil,   nil,   nil,
-  -644,  -292,    85,    86,    87,    12,    78,  -644,  -644,  -644,
-    79,    80,  -644,  -644,  -644,    83,  -644,    81,    82,    84,
-    33,    34,    76,    77,   nil,  -644,  -644,  -644,   nil,    88,
-    31,    30,   118,   117,   119,   120,  -644,  -644,    22,  -644,
-  -644,  -644,  -644,  -644,    11,    49,   nil,    13,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,  -644,  -644,  -644,
-  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,
-  -644,   nil,   nil,  -644,  -644,  -644,    43,   nil,  -644,    36,
-   281,  -644,    62,    63,  -644,  -644,    64,  -644,    38,  -644,
-   nil,  -644,    48,  -644,  -644,  -644,  -644,  -644,  -644,  -644,
-    23,  -644,  -644,  -644,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,  -644,  -644,   nil,  -644,
-   nil,  -644,    89,   nil,   nil,    93,   100,   102,  -644,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   130,   nil,   nil,   nil,   nil,   129,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,   326,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-   nil,   nil,   332,   nil,   nil,   nil,   nil,   nil,   608,   nil,
-   605,   604,   603,   612,   606,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   362,   nil,   615,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   610,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   623,   622,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   616,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
-    49,    10,    13,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   412,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,    12,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    49,   nil,    13,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   429,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   429,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   234,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
-   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
-   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
-   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
-   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
-   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
-   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   302,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   303,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   302,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   234,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,    11,    49,   nil,    13,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,   326,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,   nil,
-   608,   nil,   605,   604,   603,   612,   606,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   322,   nil,   615,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   610,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   623,
-   622,   nil,    96,   106,   nil,   nil,   nil,   533,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   616,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,   326,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,   nil,   608,
-   nil,   605,   604,   603,   612,   606,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   322,   nil,   615,   318,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   610,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   623,   622,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   616,    81,    82,    84,   328,   329,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   550,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   300,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   302,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,
-   121,   123,   579,    60,   114,   113,   580,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,   nil,   nil,   332,   nil,   nil,
-   nil,   nil,   nil,   608,   nil,   605,   604,   603,   612,   606,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   581,   nil,   615,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   610,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   623,   622,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   616,    81,    82,    84,
-   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,
-   123,   579,    60,   114,   113,   580,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,
-   nil,   nil,   608,   nil,   605,   604,   603,   612,   606,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   581,   nil,   615,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   610,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   623,   622,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   616,    81,    82,    84,   328,
-   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
-   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   608,    64,   605,   604,   603,   612,
-   606,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   615,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   610,  -624,    93,   100,   102,   nil,   110,   111,
-  -624,  -624,  -624,   623,   622,  -624,  -624,  -624,   608,  -624,
-   605,   604,   603,   612,   606,   nil,   nil,   nil,  -624,  -624,
-  -624,  -624,   nil,   nil,   615,   nil,   nil,   nil,   nil,  -624,
-  -624,   nil,  -624,  -624,  -624,  -624,  -624,   616,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   610,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   620,   619,   623,   622,   nil,
-  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,
-  -624,  -624,  -624,  -624,   nil,   nil,  -624,  -624,  -624,   nil,
-   nil,  -624,   nil,   nil,  -624,   nil,   nil,  -624,  -624,   nil,
-  -624,   616,  -624,   nil,  -624,   nil,  -624,  -624,  -624,  -624,
-  -624,  -624,  -624,   nil,  -624,  -624,  -624,   608,   nil,   605,
-   604,   603,   612,   606,   nil,   nil,   nil,   nil,   nil,  -624,
-  -624,  -624,  -624,   615,  -624,  -625,  -624,   nil,   nil,   nil,
-   nil,  -624,  -625,  -625,  -625,   nil,   nil,  -625,  -625,  -625,
-   nil,  -625,   nil,   nil,   nil,   610,   nil,   nil,   nil,   nil,
-  -625,  -625,  -625,  -625,   620,   619,   623,   622,   nil,   nil,
-   nil,  -625,  -625,   nil,  -625,  -625,  -625,  -625,  -625,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   616,   nil,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
-  -625,  -625,  -625,  -625,  -625,  -625,   nil,   nil,  -625,  -625,
-  -625,   nil,   nil,  -625,   nil,   nil,  -625,   nil,   nil,  -625,
-  -625,   nil,  -625,   nil,  -625,   nil,  -625,   nil,  -625,  -625,
-  -625,  -625,  -625,  -625,  -625,   nil,  -625,  -625,  -625,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  -625,  -625,  -625,  -625,   nil,  -625,   nil,  -625,   nil,
-    85,    86,    87,  -625,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   302,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   300,   nil,   298,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   303,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,  -644,
-    93,   100,   102,   nil,   110,   111,  -644,  -644,  -644,   nil,
-   nil,  -644,  -644,  -644,   nil,  -644,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -644,  -644,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  -644,  -644,   nil,  -644,  -644,
-  -644,  -644,  -644,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   504,   456,   nil,   nil,   505,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,
-   160,   157,   159,   nil,   nil,   154,   155,  -644,   nil,   nil,
-   175,   176,   161,   162,  -644,   nil,   nil,   nil,   nil,   281,
-  -644,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
-   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
-   149,  -644,  -644,   177,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  -644,   nil,    85,    86,    87,
-  -644,    78,   nil,   170,   nil,    79,    80,  -644,   nil,   nil,
-    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   302,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   694,   nil,   298,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   298,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   311,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   412,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,   nil,   nil,   332,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,
-   318,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   302,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,   nil,
-   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   303,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
-   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
-   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   318,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   302,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   796,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   302,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   300,   nil,   298,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   303,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   302,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   694,   nil,   298,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   303,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   302,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   298,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   303,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   318,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
-   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
-   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   318,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   429,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   302,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   694,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   303,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   302,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   303,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   860,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
-   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
-   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   302,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   303,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
-   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
-   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   993,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   998,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,   326,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   986,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   302,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,
-    93,   100,   102,   nil,   110,   111,   188,   199,   189,   212,
-   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
-   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
-   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,   196,
-   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
-   181,   182,   178,   179,   180,   141,   143,   140,   nil,   142,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   105,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
-   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
-   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
-   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
-   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
-   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
-   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
-   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
-   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
-   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
-   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   188,   199,   189,   212,   185,   205,   195,   194,
-   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
-   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
-   214,   209,   377,   376,   378,   375,   184,   203,   202,   nil,
-   nil,   nil,   nil,   nil,   183,   190,   181,   182,   372,   373,
-   374,   370,   143,   114,   113,   371,   nil,   116,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   384,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,
-   205,   195,   194,   215,   216,   210,   193,   192,   187,   213,
-   217,   218,   197,   186,   200,   204,   206,   198,   191,   nil,
-   nil,   nil,   207,   214,   209,   208,   201,   211,   196,   184,
-   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,
-   182,   178,   179,   180,   141,   143,   409,   408,   142,   nil,
-   410,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,
-   189,   212,   185,   205,   195,   194,   215,   216,   210,   193,
-   192,   187,   213,   217,   218,   197,   186,   200,   204,   206,
-   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,
-   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,
-   183,   190,   181,   182,   178,   179,   180,   141,   143,   nil,
-   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   188,   199,   189,   212,   185,   205,   195,   194,   215,
-   216,   210,   193,   192,   187,   213,   217,   218,   197,   186,
-   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,
-   209,   208,   201,   211,   196,   184,   203,   202,   nil,   nil,
-   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,   180,
-   141,   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,
-   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
-   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
-   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
-   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,   205,
-   195,   194,   215,   216,   210,   193,   192,   187,   213,   217,
-   218,   197,   186,   200,   204,   206,   198,   191,   nil,   nil,
-   nil,   207,   214,   209,   208,   201,   211,   196,   184,   203,
-   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,
-   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   452,   456,   nil,   nil,   453,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   459,
-   463,   nil,   nil,   458,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   675,   456,   nil,
-   nil,   676,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   677,   463,   nil,   nil,   678,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   704,   456,   nil,   nil,   705,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   707,   463,   nil,   nil,   708,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   675,
-   456,   nil,   nil,   676,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   677,   463,   nil,
-   nil,   678,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   741,   456,   nil,   nil,   742,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   743,   463,   nil,   nil,   744,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   798,   456,   nil,   nil,   799,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   801,
-   463,   nil,   nil,   800,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   864,   463,   nil,
-   nil,   865,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   504,   456,   nil,   nil,   505,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   608,   177,   605,
-   604,   603,   612,   606,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   615,   nil,   nil,   nil,   nil,   170,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   610,  1061,   463,   nil,   nil,
-  1060,   nil,   nil,   nil,   620,   619,   623,   622,   nil,   173,
-   174,   nil,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,
-   616,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
-   nil,   nil,   nil,   nil,  1064,   456,   nil,   nil,  1065,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
-   nil,   nil,  1066,   463,   nil,   nil,  1067,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   608,   177,   605,   604,   603,   612,
-   606,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   615,   nil,   nil,   nil,   nil,   170,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   610,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   620,   619,   623,   622,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   616 ]
-
-racc_action_check = [
-   112,   351,   352,    65,   932,   861,   237,   112,   112,   112,
-    22,   937,   112,   112,   112,     1,   112,   495,   400,   403,
-   468,   468,   714,   714,   112,   699,   112,   112,   112,   359,
-   360,   363,   577,  1064,     3,  1065,   112,   112,   699,   112,
-   112,   112,   112,   112,    27,    13,    22,  1077,   741,   495,
-   567,    27,   742,   495,   495,   495,   495,    15,   762,   862,
-   897,   237,   897,   897,   897,  1066,   897,   112,   112,   112,
-   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
-   112,   400,   403,   112,   112,   112,    16,   112,   112,   684,
-    65,   112,   761,   761,   112,   112,    18,   112,   897,   112,
-    29,   112,   327,   112,   112,   112,   112,   112,   112,   112,
-   468,   112,   714,   112,    25,   351,   352,   743,   932,   861,
-   351,   352,   861,   932,   861,   937,   112,   112,   112,   112,
-   937,   112,   115,   112,   359,   360,   363,   577,   112,   115,
-   115,   115,   112,  1066,   115,   115,   115,  1064,   115,  1065,
-   567,   704,  1064,   741,  1065,   567,   115,   742,   115,   115,
-   115,  1077,   744,   762,   862,    29,  1077,   327,   115,   115,
-   238,   115,   115,   115,   115,   115,   684,   705,    19,  1066,
-   682,   370,   761,   743,  1066,    19,   715,    29,   370,   327,
-   831,   371,   715,   391,    19,    40,   391,   579,   371,   115,
-   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
-   115,   115,   115,    92,   682,   115,   115,   115,   704,   115,
-   115,    92,   743,   115,   831,   238,   115,   115,   744,   115,
-   836,   115,   636,   115,    20,   115,   115,   115,   115,   115,
-   115,   115,   240,   115,   705,   115,    44,    44,   332,   332,
-   579,   639,    43,   704,   391,   391,   704,   579,   115,   115,
-   115,   115,   579,   115,   458,   115,   579,   744,    41,   704,
-   115,   458,   458,   458,   115,   764,    20,   458,   458,   705,
-   458,   372,   705,   836,   579,   999,   764,   999,   372,    20,
-   836,   373,   580,   636,   636,   705,    49,   240,   373,   836,
-   458,   458,   636,   458,   458,   458,   458,   458,   374,   436,
-    41,   375,   639,   639,    73,   374,    99,   836,   375,   764,
-   764,   639,   387,    41,    44,    44,   332,   332,   100,   707,
-   101,   458,   458,   458,   458,   458,   458,   458,   458,   458,
-   458,   458,   458,   458,   458,   580,    42,   458,   458,   458,
-   102,   458,   580,   764,   864,   458,   474,   580,   458,   138,
-   675,   580,   676,   458,   436,   458,   389,   458,   458,   458,
-   458,   458,   458,   458,   581,   458,   336,   458,   581,   580,
-   376,   972,   707,   387,   387,   387,   394,   376,    42,   707,
-   458,   458,   972,   458,   707,   458,   459,   798,   707,   397,
-   452,    42,   458,   459,   459,   459,   458,   864,   480,   459,
-   459,   474,   459,   377,   864,   675,   707,   676,   336,   864,
-   377,   459,   219,   864,   239,   972,   972,   389,   389,   389,
-   405,   336,   459,   459,   799,   459,   459,   459,   459,   459,
-   480,   864,   452,   453,   480,   480,   378,   394,   394,   394,
-   380,   820,   798,   378,   241,   452,   908,   380,   242,   972,
-   397,   397,   397,   459,   459,   459,   459,   459,   459,   459,
-   459,   459,   459,   459,   459,   459,   459,   659,   246,   459,
-   459,   459,   280,   459,   295,   453,   296,   459,   299,   799,
-   459,   405,   405,   405,   312,   459,   314,   459,   453,   459,
-   459,   459,   459,   459,   459,   459,   820,   459,   459,   459,
-   385,   908,   385,   385,   385,   385,   385,    50,   556,   659,
-   315,   556,   459,   459,    50,   459,   385,   459,   677,    17,
-    17,   316,   659,    50,   459,   677,   677,   677,   459,   322,
-   677,   677,   677,   557,   677,   140,   557,   325,   385,   385,
-   140,   140,   496,   677,   677,   677,   677,   385,   385,   385,
-   385,     5,   350,   350,   677,   677,     5,   677,   677,   677,
-   677,   677,  1014,   326,  1014,  1014,  1014,   561,  1014,   610,
-   561,   610,   610,   610,   496,   610,   331,   306,   496,   496,
-   496,   496,   306,   385,   333,   677,   677,   677,   677,   677,
-   677,   677,   677,   677,   677,   677,   677,   677,   677,   337,
-  1014,   677,   677,   677,   236,   677,   677,   610,   340,   677,
-   346,   236,   677,   677,   357,   677,   610,   677,   358,   677,
-   236,   677,   677,   677,   677,   677,   677,   677,   356,   677,
-   677,   677,   594,   356,   594,   594,   594,   594,   594,    47,
-    47,   729,   729,   362,   677,   677,   677,   677,   594,   677,
-   678,   677,   849,   755,   755,   849,   677,   678,   678,   678,
-   677,   364,   678,   678,   678,   776,   678,   776,   776,   776,
-   594,   776,   767,   767,    47,    47,   678,   678,   678,   594,
-   594,   594,   594,  1035,  1035,   393,   678,   678,   319,   678,
-   678,   678,   678,   678,  1015,   319,  1015,  1015,  1015,  1006,
-  1015,   870,  1006,   776,   319,   896,   870,   896,   896,   896,
-   396,   896,   776,   399,   402,   594,   425,   678,   678,   678,
-   678,   678,   678,   678,   678,   678,   678,   678,   678,   678,
-   678,   874,  1015,   678,   678,   678,   874,   678,   678,   428,
-   430,   678,   433,   896,   678,   678,   447,   678,   450,   678,
-   451,   678,   896,   678,   678,   678,   678,   678,   678,   678,
-   946,   678,   460,   678,   758,   946,   758,   758,   758,   758,
-   758,   481,   470,   482,   483,   484,   678,   678,   678,   678,
-   758,   678,   800,   678,   485,   501,   508,   512,   678,   800,
-   800,   800,   678,   320,   321,   800,   800,   527,   800,   500,
-   320,   321,   758,   481,   528,   529,   532,   481,   481,   320,
-   321,   758,   758,   758,   758,   500,   500,   534,   800,   800,
-   539,   800,   800,   800,   800,   800,     9,     9,     9,     9,
-     9,   500,   323,   500,   542,   500,   500,   500,   500,   323,
-   551,   500,   552,   500,   553,   558,   559,   758,   323,   800,
-   800,   800,   800,   800,   800,   800,   800,   800,   800,   800,
-   800,   800,   800,   338,   361,   800,   800,   800,   435,   800,
-   338,   361,   562,   800,   564,   435,   800,   568,   569,   338,
-   361,   800,   570,   800,   435,   800,   800,   800,   800,   800,
-   800,   800,   571,   800,   759,   800,   759,   759,   759,   759,
-   759,   780,   585,   780,   780,   780,   588,   780,   800,   800,
-   759,   800,   596,   800,   801,   597,   599,   600,   538,   583,
-   800,   801,   801,   801,   800,   538,   583,   801,   801,   548,
-   801,   747,   759,   985,   538,   583,   601,   609,   747,   801,
-   985,   759,   759,   759,   759,   548,   548,   747,   617,   985,
-   801,   801,   621,   801,   801,   801,   801,   801,   624,   643,
-   646,   548,   708,   548,   652,   548,   548,   548,   548,   708,
-   660,   548,   665,   548,   708,   671,   679,   759,   708,   680,
-   683,   801,   801,   801,   801,   801,   801,   801,   801,   801,
-   801,   801,   801,   801,   801,   865,   687,   801,   801,   801,
-   689,   801,   865,   691,   693,   801,   701,   865,   801,   703,
-   706,   865,   486,   801,   709,   801,   710,   801,   801,   801,
-   801,   801,   801,   801,   713,   801,   801,   801,   486,   486,
-   955,   990,   955,   955,   955,   731,   955,   737,   990,   740,
-   801,   801,   763,   801,   486,   801,   486,   990,   486,   486,
-   486,   486,   801,   778,   779,   781,   801,     2,     2,     2,
-     2,     2,     2,   793,   795,   991,     2,     2,   797,   805,
-   829,     2,   991,     2,     2,     2,     2,     2,     2,     2,
-   835,   991,   845,   846,   850,     2,     2,     2,     2,     2,
-     2,     2,   786,   786,     2,   856,   786,   786,   786,   440,
-     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,   863,     2,     2,     2,   867,     2,     2,   871,
-     2,     2,     2,   440,   440,   440,   440,   440,   440,   440,
-   440,   440,   440,   440,   992,   440,   440,   994,   872,   440,
-   440,   992,     2,   873,   994,     2,   880,   881,     2,     2,
-   992,   882,     2,   994,     2,   440,   886,   440,     2,   440,
-   440,   440,   440,   440,   440,   440,     2,   440,   887,   889,
-  1026,     2,     2,     2,     2,     2,     2,  1026,   890,   892,
-     2,     2,   895,   440,   905,   440,  1026,  1034,     2,   907,
-   914,     2,     2,     2,  1034,     2,     2,    36,    36,    36,
-    36,    36,    36,  1034,   915,   917,    36,    36,   918,   919,
-   921,    36,   922,    36,    36,    36,    36,    36,    36,    36,
-   310,   310,   310,   310,   310,    36,    36,    36,    36,    36,
-    36,    36,   923,   945,    36,   952,   953,   954,   969,   446,
-    36,    36,    36,    36,    36,    36,    36,    36,    36,    36,
-    36,    36,   970,    36,    36,    36,   983,    36,    36,   986,
-    36,    36,    36,   446,   446,   446,   446,   446,   446,   446,
-   446,   446,   446,   446,  1067,   446,   446,   988,   993,   446,
-   446,  1067,    36,  1010,  1011,    36,  1067,  1012,    36,    36,
-  1067,  1013,    36,  1016,    36,   446,  1019,   446,    36,   446,
-   446,   446,   446,   446,   446,   446,    36,   446,  1020,  1021,
-  1022,    36,    36,    36,    36,    36,    36,  1024,  1030,  1040,
-    36,    36,  1041,   446,  1049,  1060,  1061,  1063,    36,  1072,
-  1073,    36,    36,    36,  1074,    36,    36,   221,   221,   221,
-   221,   221,   221,  1075,  1076,  1084,   221,   221,   nil,   nil,
-   nil,   221,   nil,   221,   221,   221,   221,   221,   221,   221,
-   345,   345,   345,   345,   345,   221,   221,   221,   221,   221,
-   221,   221,   nil,  1043,   221,  1043,  1043,  1043,   nil,  1043,
-   221,   221,   221,   221,   221,   221,   221,   221,   221,   221,
-   221,   221,   nil,   221,   221,   221,   nil,   221,   221,   nil,
-   221,   221,   221,    24,    24,    24,    24,    24,    24,    24,
-    24,    24,    24,    24,   nil,    24,    24,   nil,   nil,    24,
-    24,   nil,   221,   nil,   nil,   221,   nil,   nil,   221,   221,
-   nil,   nil,   221,   nil,   221,    24,   nil,    24,   221,    24,
-    24,    24,    24,    24,    24,    24,   221,    24,   nil,   nil,
-   nil,   221,   221,   221,   221,   221,   221,   nil,   nil,   nil,
-   221,   221,   nil,    24,   nil,   nil,   nil,   nil,   221,   nil,
-   nil,   221,   221,   221,   nil,   221,   221,   245,   245,   245,
-   245,   245,   245,   nil,   nil,   nil,   245,   245,   nil,   nil,
-   nil,   245,   nil,   245,   245,   245,   245,   245,   245,   245,
-   526,   526,   526,   526,   526,   245,   245,   245,   245,   245,
-   245,   245,   nil,   nil,   245,   nil,   nil,   nil,   nil,   nil,
-   245,   245,   245,   245,   245,   245,   245,   245,   245,   245,
-   245,   245,   nil,   245,   245,   245,   nil,   245,   245,   nil,
-   245,   245,   245,   293,   293,   293,   293,   293,   293,   293,
-   293,   293,   293,   293,   nil,   293,   293,   nil,   nil,   293,
-   293,   nil,   245,   nil,   nil,   245,   nil,   nil,   245,   245,
-   nil,   nil,   245,   nil,   245,   293,   nil,   293,   245,   293,
-   293,   293,   293,   293,   293,   293,   245,   293,   nil,   nil,
-   nil,   245,   245,   245,   245,   245,   245,   nil,   nil,   nil,
-   245,   245,   nil,   293,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   245,   245,   245,   nil,   245,   245,   313,   313,   313,
-   313,   313,   313,   nil,   nil,   nil,   313,   313,   nil,   nil,
-   nil,   313,   nil,   313,   313,   313,   313,   313,   313,   313,
-   nil,   nil,   nil,   nil,   nil,   313,   313,   313,   313,   313,
-   313,   313,   nil,   nil,   313,   nil,   nil,   nil,   nil,   nil,
-   313,   313,   313,   313,   313,   313,   313,   313,   313,   313,
-   313,   313,   nil,   313,   313,   313,   nil,   313,   313,   nil,
-   313,   313,   313,   499,   499,   499,   499,   499,   499,   499,
-   499,   499,   499,   499,   nil,   499,   499,   nil,   nil,   499,
-   499,   nil,   313,   nil,   nil,   313,   nil,   nil,   313,   313,
-   nil,   nil,   313,   nil,   313,   499,   nil,   499,   313,   499,
-   499,   499,   499,   499,   499,   499,   313,   499,   nil,   nil,
-   nil,   313,   313,   313,   313,   313,   313,   nil,   nil,   nil,
-   313,   313,   499,   499,   nil,   nil,   nil,   nil,   313,   nil,
-   nil,   313,   313,   313,   nil,   313,   313,   318,   318,   318,
-   318,   318,   318,   nil,   nil,   nil,   318,   318,   nil,   nil,
-   nil,   318,   nil,   318,   318,   318,   318,   318,   318,   318,
-   nil,   nil,   nil,   nil,   nil,   318,   318,   318,   318,   318,
-   318,   318,   nil,   nil,   318,   nil,   nil,   nil,   nil,   nil,
-   318,   318,   318,   318,   318,   318,   318,   318,   318,   318,
-   318,   318,   nil,   318,   318,   318,   nil,   318,   318,   nil,
-   318,   318,   318,   549,   549,   549,   549,   549,   549,   549,
-   549,   549,   549,   549,   nil,   549,   549,   nil,   nil,   549,
-   549,   nil,   318,   nil,   nil,   318,   nil,   nil,   318,   318,
-   nil,   nil,   318,   nil,   318,   549,   nil,   549,   318,   549,
-   549,   549,   549,   549,   549,   549,   318,   549,   nil,   nil,
-   nil,   318,   318,   318,   318,   318,   318,   nil,   nil,   nil,
-   318,   318,   nil,   549,   nil,   nil,   nil,   nil,   318,   nil,
-   nil,   318,   318,   318,   nil,   318,   318,   344,   344,   344,
-   344,   344,   344,   nil,   nil,   nil,   344,   344,   nil,   nil,
-   nil,   344,   nil,   344,   344,   344,   344,   344,   344,   344,
-   nil,   nil,   nil,   nil,   nil,   344,   344,   344,   344,   344,
-   344,   344,   nil,   nil,   344,   nil,   nil,   nil,   nil,   nil,
-   344,   344,   344,   344,   344,   344,   344,   344,   344,   344,
-   344,   344,   nil,   344,   344,   344,   nil,   344,   344,   nil,
-   344,   344,   344,   802,   802,   802,   802,   802,   802,   802,
-   802,   802,   802,   802,   nil,   802,   802,   nil,   nil,   802,
-   802,   nil,   344,   nil,   nil,   344,   nil,   nil,   344,   344,
-   nil,   nil,   344,   nil,   344,   802,   nil,   802,   344,   802,
-   802,   802,   802,   802,   802,   802,   344,   802,   nil,   nil,
-   nil,   344,   344,   344,   344,   344,   344,   nil,   nil,   nil,
-   344,   344,   nil,   802,   nil,   nil,   nil,   nil,   344,   nil,
-   nil,   344,   344,   344,   nil,   344,   344,   354,   354,   354,
-   354,   354,   354,   nil,   nil,   nil,   354,   354,   nil,   nil,
-   nil,   354,   nil,   354,   354,   354,   354,   354,   354,   354,
-   nil,   nil,   nil,   nil,   nil,   354,   354,   354,   354,   354,
-   354,   354,   nil,   nil,   354,   nil,   nil,   nil,   nil,   nil,
-   354,   354,   354,   354,   354,   354,   354,   354,   354,   354,
-   354,   354,   nil,   354,   354,   354,   nil,   354,   354,   nil,
-   354,   354,   354,   913,   913,   913,   913,   913,   913,   913,
-   913,   913,   913,   913,   nil,   913,   913,   nil,   nil,   913,
-   913,   nil,   354,   nil,   nil,   354,   nil,   nil,   354,   354,
-   nil,   nil,   354,   nil,   354,   913,   nil,   913,   354,   913,
-   913,   913,   913,   913,   913,   913,   354,   913,   nil,   nil,
-   nil,   354,   354,   354,   354,   354,   354,   nil,   nil,   nil,
-   354,   354,   nil,   913,   nil,   nil,   nil,   nil,   354,   nil,
-   nil,   354,   354,   354,   nil,   354,   354,   355,   355,   355,
-   355,   355,   355,   nil,   nil,   nil,   355,   355,   nil,   nil,
-   nil,   355,   nil,   355,   355,   355,   355,   355,   355,   355,
-   nil,   nil,   nil,   nil,   nil,   355,   355,   355,   355,   355,
-   355,   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,   nil,
-   355,   355,   355,   355,   355,   355,   355,   355,   355,   355,
-   355,   355,   nil,   355,   355,   355,   nil,   355,   355,   nil,
-   355,   355,   355,   478,   478,   478,   478,   478,   478,   478,
-   478,   478,   478,   478,   nil,   478,   478,   nil,   nil,   478,
-   478,   nil,   355,   nil,   nil,   355,   nil,   nil,   355,   355,
-   nil,   nil,   355,   nil,   355,   478,   nil,   478,   355,   478,
-   478,   478,   478,   478,   478,   478,   355,   478,   nil,   nil,
-   nil,   355,   355,   355,   355,   355,   355,   nil,   nil,   nil,
-   355,   355,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,
-   nil,   355,   355,   355,   nil,   355,   355,   563,   563,   563,
-   563,   563,   563,   nil,   nil,   nil,   563,   563,   nil,   nil,
-   nil,   563,   nil,   563,   563,   563,   563,   563,   563,   563,
-   nil,   nil,   nil,   nil,   nil,   563,   563,   563,   563,   563,
-   563,   563,   nil,   nil,   563,   nil,   nil,   nil,   nil,   nil,
-   563,   563,   563,   563,   563,   563,   563,   563,   563,   563,
-   563,   563,   nil,   563,   563,   563,   nil,   563,   563,   nil,
-   563,   563,   563,   479,   479,   479,   479,   479,   479,   479,
-   479,   479,   479,   479,   nil,   479,   479,   nil,   nil,   479,
-   479,   nil,   563,   nil,   nil,   563,   nil,   nil,   563,   563,
-   nil,   nil,   563,   nil,   563,   479,   nil,   479,   563,   479,
-   479,   479,   479,   479,   479,   479,   563,   479,   nil,   nil,
-   nil,   563,   563,   563,   563,   563,   563,   nil,   nil,   nil,
-   563,   563,   nil,   nil,   nil,   nil,   nil,   nil,   563,   nil,
-   nil,   563,   563,   563,   nil,   563,   563,   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,   489,   489,   489,   489,   489,   489,   489,
-   nil,   nil,   489,   489,   nil,   nil,   nil,   nil,   nil,   489,
-   489,   nil,   566,   nil,   nil,   566,   nil,   nil,   566,   566,
-   nil,   nil,   566,   nil,   566,   489,   nil,   489,   566,   489,
-   489,   489,   489,   489,   489,   489,   566,   489,   nil,   nil,
-   nil,   566,   566,   566,   566,   566,   566,   nil,   nil,   nil,
-   566,   566,   nil,   nil,   nil,   nil,   nil,   nil,   566,   nil,
-   nil,   566,   566,   566,   nil,   566,   566,   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,   490,   490,   490,   490,   490,   490,   490,
-   nil,   nil,   490,   490,   nil,   nil,   nil,   nil,   nil,   490,
-   490,   nil,   648,   nil,   nil,   648,   nil,   nil,   648,   648,
-   nil,   nil,   648,   nil,   648,   490,   nil,   490,   648,   490,
-   490,   490,   490,   490,   490,   490,   648,   490,   nil,   nil,
-   nil,   648,   648,   648,   648,   648,   648,   nil,   nil,   nil,
-   648,   648,   nil,   nil,   nil,   nil,   nil,   nil,   648,   nil,
-   nil,   648,   648,   648,   nil,   648,   648,   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,   491,   491,   491,   491,   491,   491,   491,
-   nil,   nil,   491,   491,   nil,   nil,   nil,   nil,   nil,   491,
-   491,   nil,   745,   nil,   nil,   745,   nil,   nil,   745,   745,
-   nil,   nil,   745,   nil,   745,   491,   nil,   491,   745,   491,
-   491,   491,   491,   491,   491,   491,   745,   491,   nil,   nil,
-   nil,   745,   745,   745,   745,   745,   745,   nil,   nil,   nil,
-   745,   745,   nil,   nil,   nil,   nil,   nil,   nil,   745,   nil,
-   nil,   745,   745,   745,   nil,   745,   745,   756,   756,   756,
-   756,   756,   756,   nil,   nil,   nil,   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,
-   756,   756,   756,   756,   756,   756,   756,   756,   756,   756,
-   756,   756,   nil,   756,   756,   756,   nil,   756,   756,   nil,
-   756,   756,   756,   492,   492,   492,   492,   492,   492,   492,
-   nil,   nil,   492,   492,   nil,   nil,   nil,   nil,   nil,   492,
-   492,   nil,   756,   nil,   nil,   756,   nil,   nil,   756,   756,
-   nil,   nil,   756,   nil,   756,   492,   nil,   492,   756,   492,
-   492,   492,   492,   492,   492,   492,   756,   492,   nil,   nil,
-   nil,   756,   756,   756,   756,   756,   756,   nil,   nil,   nil,
-   756,   756,   nil,   nil,   nil,   nil,   nil,   nil,   756,   nil,
-   nil,   756,   756,   756,   nil,   756,   756,   757,   757,   757,
-   757,   757,   757,   nil,   nil,   nil,   757,   757,   nil,   nil,
-   nil,   757,   nil,   757,   757,   757,   757,   757,   757,   757,
-   nil,   nil,   nil,   nil,   nil,   757,   757,   757,   757,   757,
-   757,   757,   nil,   nil,   757,   nil,   nil,   nil,   nil,   nil,
-   757,   757,   757,   757,   757,   757,   757,   757,   757,   757,
-   757,   757,   nil,   757,   757,   757,   nil,   757,   757,   nil,
-   757,   757,   757,   493,   493,   493,   493,   493,   493,   493,
-   nil,   nil,   493,   493,   nil,   nil,   nil,   nil,   nil,   493,
-   493,   nil,   757,   nil,   nil,   757,   nil,   nil,   757,   757,
-   nil,   nil,   757,   nil,   757,   493,   nil,   493,   757,   493,
-   493,   493,   493,   493,   493,   493,   757,   493,   nil,   nil,
-   nil,   757,   757,   757,   757,   757,   757,   nil,   nil,   nil,
-   757,   757,   nil,   nil,   nil,   nil,   nil,   nil,   757,   nil,
-   nil,   757,   757,   757,   nil,   757,   757,   787,   787,   787,
-   787,   787,   787,   nil,   nil,   nil,   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,
-   787,   787,   787,   787,   787,   787,   787,   787,   787,   787,
-   787,   787,   nil,   787,   787,   787,   nil,   787,   787,   nil,
-   787,   787,   787,   494,   494,   494,   494,   494,   494,   494,
-   nil,   nil,   494,   494,   nil,   nil,   nil,   nil,   nil,   494,
-   494,   nil,   787,   nil,   nil,   787,   nil,   nil,   787,   787,
-   nil,   nil,   787,   nil,   787,   494,   nil,   494,   787,   494,
-   494,   494,   494,   494,   494,   494,   787,   494,   nil,   nil,
-   nil,   787,   787,   787,   787,   787,   787,   nil,   nil,   nil,
-   787,   787,   nil,   nil,   nil,   nil,   nil,   nil,   787,   nil,
-   nil,   787,   787,   787,   nil,   787,   787,   826,   826,   826,
-   826,   826,   826,   nil,   nil,   nil,   826,   826,   nil,   nil,
-   nil,   826,   nil,   826,   826,   826,   826,   826,   826,   826,
-   nil,   nil,   nil,   nil,   nil,   826,   826,   826,   826,   826,
-   826,   826,   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,
-   826,   826,   826,   826,   826,   826,   826,   826,   826,   826,
-   826,   826,   nil,   826,   826,   826,   nil,   826,   826,   nil,
-   826,   826,   826,   497,   497,   497,   497,   497,   497,   497,
-   nil,   nil,   497,   497,   nil,   nil,   nil,   nil,   nil,   497,
-   497,   nil,   826,   nil,   nil,   826,   nil,   nil,   826,   826,
-   nil,   nil,   826,   nil,   826,   497,   nil,   497,   826,   497,
-   497,   497,   497,   497,   497,   497,   826,   497,   nil,   nil,
-   nil,   826,   826,   826,   826,   826,   826,   nil,   nil,   nil,
-   826,   826,   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,
-   nil,   826,   826,   826,   nil,   826,   826,   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,   498,   498,   498,   498,   498,   498,   498,
-   498,   nil,   498,   498,   nil,   nil,   nil,   nil,   nil,   498,
-   498,   nil,   843,   nil,   nil,   843,   nil,   nil,   843,   843,
-   nil,   nil,   843,   nil,   843,   498,   nil,   498,   843,   498,
-   498,   498,   498,   498,   498,   498,   843,   498,   nil,   nil,
-   nil,   843,   843,   843,   843,   843,   843,   nil,   nil,   nil,
-   843,   843,   nil,   nil,   nil,   nil,   nil,   nil,   843,   nil,
-   nil,   843,   843,   843,   nil,   843,   843,   855,   855,   855,
-   855,   855,   855,   nil,   nil,   nil,   855,   855,   nil,   nil,
-   nil,   855,   nil,   855,   855,   855,   855,   855,   855,   855,
-   nil,   nil,   nil,   nil,   nil,   855,   855,   855,   855,   855,
-   855,   855,   nil,   nil,   855,   nil,   nil,   nil,   nil,   nil,
-   855,   855,   855,   855,   855,   855,   855,   855,   855,   855,
-   855,   855,   nil,   855,   855,   855,   nil,   855,   855,   nil,
-   855,   855,   855,   487,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   487,
-   487,   nil,   855,   nil,   nil,   855,   nil,   488,   855,   855,
-   nil,   nil,   855,   nil,   855,   487,   nil,   487,   855,   487,
-   487,   487,   487,   488,   488,   nil,   855,   nil,   nil,   nil,
-   nil,   855,   855,   855,   855,   855,   855,   nil,   nil,   488,
-   855,   855,   nil,   488,   488,   488,   488,   nil,   855,   nil,
-   nil,   855,   855,   855,   nil,   855,   855,   868,   868,   868,
-   868,   868,   868,   nil,   nil,   nil,   868,   868,   nil,   nil,
-   nil,   868,   nil,   868,   868,   868,   868,   868,   868,   868,
-   nil,   nil,   nil,   nil,   nil,   868,   868,   868,   868,   868,
-   868,   868,   nil,   nil,   868,   nil,   nil,   nil,   nil,   nil,
-   868,   868,   868,   868,   868,   868,   868,   868,   868,   868,
-   868,   868,   nil,   868,   868,   868,   nil,   868,   868,   nil,
-   868,   868,   868,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   868,   nil,   nil,   868,   nil,   nil,   868,   868,
-   nil,   nil,   868,   nil,   868,   nil,   nil,   nil,   868,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,   nil,   nil,
-   nil,   868,   868,   868,   868,   868,   868,   nil,   nil,   nil,
-   868,   868,   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,
-   nil,   868,   868,   868,   nil,   868,   868,   878,   878,   878,
-   878,   878,   878,   nil,   nil,   nil,   878,   878,   nil,   nil,
-   nil,   878,   nil,   878,   878,   878,   878,   878,   878,   878,
-   nil,   nil,   nil,   nil,   nil,   878,   878,   878,   878,   878,
-   878,   878,   nil,   nil,   878,   nil,   nil,   nil,   nil,   nil,
-   878,   878,   878,   878,   878,   878,   878,   878,   878,   878,
-   878,   878,   nil,   878,   878,   878,   nil,   878,   878,   nil,
-   878,   878,   878,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   878,   nil,   nil,   878,   nil,   nil,   878,   878,
-   nil,   nil,   878,   nil,   878,   nil,   nil,   nil,   878,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   878,   nil,   nil,   nil,
-   nil,   878,   878,   878,   878,   878,   878,   nil,   nil,   nil,
-   878,   878,   nil,   nil,   nil,   nil,   nil,   nil,   878,   nil,
-   nil,   878,   878,   878,   nil,   878,   878,   879,   879,   879,
-   879,   879,   879,   nil,   nil,   nil,   879,   879,   nil,   nil,
-   nil,   879,   nil,   879,   879,   879,   879,   879,   879,   879,
-   nil,   nil,   nil,   nil,   nil,   879,   879,   879,   879,   879,
-   879,   879,   nil,   nil,   879,   nil,   nil,   nil,   nil,   nil,
-   879,   879,   879,   879,   879,   879,   879,   879,   879,   879,
-   879,   879,   nil,   879,   879,   879,   nil,   879,   879,   nil,
-   879,   879,   879,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   879,   nil,   nil,   879,   nil,   nil,   879,   879,
-   nil,   nil,   879,   nil,   879,   nil,   nil,   nil,   879,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   879,   nil,   nil,   nil,
-   nil,   879,   879,   879,   879,   879,   879,   nil,   nil,   nil,
-   879,   879,   nil,   nil,   nil,   nil,   nil,   nil,   879,   nil,
-   nil,   879,   879,   879,   nil,   879,   879,   929,   929,   929,
-   929,   929,   929,   nil,   nil,   nil,   929,   929,   nil,   nil,
-   nil,   929,   nil,   929,   929,   929,   929,   929,   929,   929,
-   nil,   nil,   nil,   nil,   nil,   929,   929,   929,   929,   929,
-   929,   929,   nil,   nil,   929,   nil,   nil,   nil,   nil,   nil,
-   929,   929,   929,   929,   929,   929,   929,   929,   929,   929,
-   929,   929,   nil,   929,   929,   929,   nil,   929,   929,   nil,
-   929,   929,   929,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   929,   nil,   nil,   929,   nil,   nil,   929,   929,
-   nil,   nil,   929,   nil,   929,   nil,   nil,   nil,   929,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   929,   nil,   nil,   nil,
-   nil,   929,   929,   929,   929,   929,   929,   nil,   nil,   nil,
-   929,   929,   nil,   nil,   nil,   nil,   nil,   nil,   929,   nil,
-   nil,   929,   929,   929,   nil,   929,   929,   930,   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,   930,   930,   930,   930,   930,   930,   930,   930,
-   930,   930,   nil,   930,   930,   930,   nil,   930,   930,   nil,
-   930,   930,   930,   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,   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,   930,   930,   nil,   930,   930,   942,   942,   942,
-   942,   942,   942,   nil,   nil,   nil,   942,   942,   nil,   nil,
-   nil,   942,   nil,   942,   942,   942,   942,   942,   942,   942,
-   nil,   nil,   nil,   nil,   nil,   942,   942,   942,   942,   942,
-   942,   942,   nil,   nil,   942,   nil,   nil,   nil,   nil,   nil,
-   942,   942,   942,   942,   942,   942,   942,   942,   942,   942,
-   942,   942,   nil,   942,   942,   942,   nil,   942,   942,   nil,
-   942,   942,   942,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   942,   nil,   nil,   942,   nil,   nil,   942,   942,
-   nil,   nil,   942,   nil,   942,   nil,   nil,   nil,   942,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   942,   nil,   nil,   nil,
-   nil,   942,   942,   942,   942,   942,   942,   nil,   nil,   nil,
-   942,   942,   nil,   nil,   nil,   nil,   nil,   nil,   942,   nil,
-   nil,   942,   942,   942,   nil,   942,   942,   989,   989,   989,
-   989,   989,   989,   nil,   nil,   nil,   989,   989,   nil,   nil,
-   nil,   989,   nil,   989,   989,   989,   989,   989,   989,   989,
-   nil,   nil,   nil,   nil,   nil,   989,   989,   989,   989,   989,
-   989,   989,   nil,   nil,   989,   nil,   nil,   nil,   nil,   nil,
-   989,   989,   989,   989,   989,   989,   989,   989,   989,   989,
-   989,   989,   nil,   989,   989,   989,   nil,   989,   989,   nil,
-   989,   989,   989,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   989,   nil,   nil,   989,   nil,   nil,   989,   989,
-   nil,   nil,   989,   nil,   989,   nil,   nil,   nil,   989,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   989,   nil,   nil,   nil,
-   nil,   989,   989,   989,   989,   989,   989,   nil,   nil,   nil,
-   989,   989,   nil,   nil,   nil,   nil,   nil,   nil,   989,   nil,
-   nil,   989,   989,   989,   nil,   989,   989,   996,   996,   996,
-   996,   996,   996,   nil,   nil,   nil,   996,   996,   nil,   nil,
-   nil,   996,   nil,   996,   996,   996,   996,   996,   996,   996,
-   nil,   nil,   nil,   nil,   nil,   996,   996,   996,   996,   996,
-   996,   996,   nil,   nil,   996,   nil,   nil,   nil,   nil,   nil,
-   996,   996,   996,   996,   996,   996,   996,   996,   996,   996,
-   996,   996,   nil,   996,   996,   996,   nil,   996,   996,   nil,
-   996,   996,   996,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   996,   nil,   nil,   996,   nil,   nil,   996,   996,
-   nil,   nil,   996,   nil,   996,   nil,   nil,   nil,   996,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   996,   nil,   nil,   nil,
-   nil,   996,   996,   996,   996,   996,   996,   nil,   nil,   nil,
-   996,   996,   nil,   nil,   nil,   nil,   nil,   nil,   996,   nil,
-   nil,   996,   996,   996,   nil,   996,   996,  1002,  1002,  1002,
-  1002,  1002,  1002,   nil,   nil,   nil,  1002,  1002,   nil,   nil,
-   nil,  1002,   nil,  1002,  1002,  1002,  1002,  1002,  1002,  1002,
-   nil,   nil,   nil,   nil,   nil,  1002,  1002,  1002,  1002,  1002,
-  1002,  1002,   nil,   nil,  1002,   nil,   nil,   nil,   nil,   nil,
-  1002,  1002,  1002,  1002,  1002,  1002,  1002,  1002,  1002,  1002,
-  1002,  1002,   nil,  1002,  1002,  1002,   nil,  1002,  1002,   nil,
-  1002,  1002,  1002,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1002,   nil,   nil,  1002,   nil,   nil,  1002,  1002,
-   nil,   nil,  1002,   nil,  1002,   nil,   nil,   nil,  1002,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1002,   nil,   nil,   nil,
-   nil,  1002,  1002,  1002,  1002,  1002,  1002,   nil,   nil,   nil,
-  1002,  1002,   nil,   nil,   nil,   nil,   nil,   nil,  1002,   nil,
-   nil,  1002,  1002,  1002,   nil,  1002,  1002,  1003,  1003,  1003,
-  1003,  1003,  1003,   nil,   nil,   nil,  1003,  1003,   nil,   nil,
-   nil,  1003,   nil,  1003,  1003,  1003,  1003,  1003,  1003,  1003,
-   nil,   nil,   nil,   nil,   nil,  1003,  1003,  1003,  1003,  1003,
-  1003,  1003,   nil,   nil,  1003,   nil,   nil,   nil,   nil,   nil,
-  1003,  1003,  1003,  1003,  1003,  1003,  1003,  1003,  1003,  1003,
-  1003,  1003,   nil,  1003,  1003,  1003,   nil,  1003,  1003,   nil,
-  1003,  1003,  1003,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1003,   nil,   nil,  1003,   nil,   nil,  1003,  1003,
-   nil,   nil,  1003,   nil,  1003,   nil,   nil,   nil,  1003,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1003,   nil,   nil,   nil,
-   nil,  1003,  1003,  1003,  1003,  1003,  1003,   nil,   nil,   nil,
-  1003,  1003,   nil,   nil,   nil,   nil,   nil,   nil,  1003,   nil,
-   nil,  1003,  1003,  1003,   nil,  1003,  1003,     8,     8,     8,
-     8,     8,   nil,   nil,   nil,     8,     8,   nil,   nil,   nil,
-     8,   nil,     8,     8,     8,     8,     8,     8,     8,   nil,
-   nil,   nil,   nil,   nil,     8,     8,     8,     8,     8,     8,
-     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,   nil,     8,
-     8,     8,     8,     8,     8,     8,     8,     8,     8,     8,
-     8,   nil,     8,     8,     8,   nil,     8,     8,   nil,     8,
-     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,     8,   nil,   nil,     8,   nil,   nil,     8,     8,   nil,
-   nil,     8,   nil,     8,   nil,   nil,   nil,     8,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,   nil,   nil,
-     8,     8,     8,     8,     8,     8,   nil,   nil,   nil,     8,
-     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
-     8,     8,     8,   nil,     8,     8,    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,   nil,    23,    23,    23,    23,    23,    23,    23,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,    23,    23,    23,    23,    23,    23,    23,    23,
-   nil,    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,   772,
-    23,   772,   772,   772,   772,   772,    23,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   772,   nil,   nil,   nil,    23,
-    23,    23,    23,    23,    23,   nil,   nil,   nil,    23,    23,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   772,    30,    23,
-    23,    23,   nil,    23,    23,    30,    30,    30,   772,   772,
-    30,    30,    30,   768,    30,   768,   768,   768,   768,   768,
-   nil,   nil,   nil,    30,    30,    30,   nil,   nil,   nil,   768,
-   nil,   nil,   nil,   nil,    30,    30,   nil,    30,    30,    30,
-    30,    30,   772,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   768,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   768,   768,   768,   768,   nil,    30,    30,    30,    30,    30,
-    30,    30,    30,    30,    30,    30,    30,    30,    30,   nil,
-   nil,    30,    30,    30,   nil,   nil,    30,   nil,    30,    30,
-   nil,   nil,    30,    30,   nil,    30,   768,    30,   nil,    30,
-   nil,    30,    30,    30,    30,    30,    30,    30,   nil,    30,
-    30,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    30,    30,    31,    30,   nil,    30,
-   nil,   nil,   nil,    31,    31,    31,    30,   nil,    31,    31,
-    31,   770,    31,   770,   770,   770,   770,   770,   nil,   nil,
-   nil,   nil,    31,    31,   nil,   nil,   nil,   770,   nil,   nil,
-   nil,   nil,    31,    31,   nil,    31,    31,    31,    31,    31,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   770,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   770,   770,
-   770,   770,   nil,    31,    31,    31,    31,    31,    31,    31,
-    31,    31,    31,    31,    31,    31,    31,   nil,   nil,    31,
-    31,    31,   nil,   nil,    31,   nil,    31,    31,   nil,   nil,
-    31,    31,   nil,    31,   770,    31,   nil,    31,   nil,    31,
-    31,    31,    31,    31,    31,    31,   nil,    31,   nil,    31,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    31,    31,   nil,    31,   nil,    31,    32,    32,
-    32,   nil,    32,   nil,    31,   nil,    32,    32,   nil,   nil,
-   nil,    32,   nil,    32,    32,    32,    32,    32,    32,    32,
-   nil,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
-    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,    32,   nil,   nil,    32,    32,    32,    32,    32,    32,
-    32,    32,    32,    32,    32,    32,   nil,    32,    32,   nil,
-    32,    32,    32,   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,    32,    32,
-   nil,   nil,    32,   nil,    32,   nil,    32,   nil,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,
-    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-    32,    32,    32,    32,   nil,    32,    32,    33,    33,    33,
-   nil,    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,
-    33,   nil,    33,    33,    33,    33,    33,    33,    33,   nil,
-   nil,   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,
-    33,   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,
-    33,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
-    33,    33,    33,    33,    33,   nil,    33,    33,   nil,    33,
-    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,
-   nil,    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,
-    33,    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,
-    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,
-    33,    33,    33,   nil,    33,    33,    34,    34,    34,   nil,
-    34,   nil,   nil,   nil,    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,
-    34,    34,    34,    34,   nil,    34,    34,   nil,    34,    34,
-    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,    34,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,
-    34,    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,
-    34,    34,   nil,    34,    34,    37,    37,    37,   nil,    37,
-   nil,   nil,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,
-    37,    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,
-   nil,   nil,    37,    37,    37,    37,    37,    37,    37,   nil,
-   nil,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
-   nil,    37,    37,    37,    37,    37,    37,    37,    37,   nil,
-    37,    37,    37,   nil,    37,    37,   nil,   nil,   nil,    37,
-   nil,   nil,   nil,   nil,   nil,   960,   nil,   960,   960,   960,
-   960,   960,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    37,
-   nil,   960,    37,   nil,   nil,    37,    37,   nil,   nil,    37,
-   nil,    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   960,   nil,   nil,   nil,   nil,    37,    37,
-    37,    37,    37,    37,   960,   960,   nil,    37,    37,   nil,
-   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,
-    37,   nil,    37,    37,    38,    38,    38,   nil,    38,   nil,
-   nil,   nil,    38,    38,   nil,   nil,   nil,    38,   960,    38,
-    38,    38,    38,    38,    38,    38,   nil,   nil,   nil,   nil,
-   nil,    38,    38,    38,    38,    38,    38,    38,   nil,   nil,
-    38,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,
-    38,    38,    38,    38,    38,    38,    38,    38,   nil,    38,
-    38,    38,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,
-   nil,   nil,   nil,   nil,   962,   nil,   962,   962,   962,   962,
-   962,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,
-   962,    38,   nil,   nil,    38,    38,   nil,   nil,    38,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   962,   nil,   nil,   nil,   nil,    38,    38,    38,
-    38,    38,    38,   962,   962,   nil,    38,    38,   nil,   nil,
-   nil,    38,   nil,   nil,    38,   nil,   nil,    38,    38,    38,
-   nil,    38,    38,    45,    45,    45,   nil,    45,   nil,   nil,
-   nil,    45,    45,   nil,   nil,   nil,    45,   962,    45,    45,
-    45,    45,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,
-    45,    45,    45,    45,    45,    45,    45,   nil,   nil,    45,
-   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
-    45,    45,    45,    45,    45,    45,    45,   nil,    45,    45,
-    45,   nil,    45,    45,   nil,    45,    45,    45,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,
-    45,   nil,   nil,    45,    45,   nil,   nil,    45,   nil,   nil,
-   nil,   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    45,   nil,   nil,   nil,   nil,    45,    45,    45,    45,
-    45,    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,
-   nil,   nil,   nil,    45,   nil,   nil,    45,    45,    45,   nil,
-    45,    45,    46,    46,    46,   nil,    46,   nil,   nil,   nil,
-    46,    46,   nil,   nil,   nil,    46,   nil,    46,    46,    46,
-    46,    46,    46,    46,   nil,   nil,   nil,   nil,   nil,    46,
-    46,    46,    46,    46,    46,    46,   nil,   nil,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,
-    46,    46,    46,    46,    46,    46,   nil,    46,    46,    46,
-   nil,    46,    46,   nil,    46,    46,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,
-   nil,   nil,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,
-   nil,   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    46,   nil,   nil,   nil,   nil,    46,    46,    46,    46,    46,
-    46,   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,    46,   nil,   nil,    46,    46,    46,   nil,    46,
-    46,    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,
-    48,   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,
-    48,    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,
-    48,    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,
-    48,    48,    48,    48,    48,   nil,    48,    48,    48,   nil,
-    48,    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,
-   nil,    48,    48,   nil,   964,    48,   964,   964,   964,   964,
-   964,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,
-   964,   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,
-   nil,   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,    48,   964,    60,    48,    48,    48,   nil,    48,    48,
-    60,    60,    60,   964,   964,    60,    60,    60,   824,    60,
-   824,   824,   824,   824,   824,   nil,   nil,   nil,   nil,    60,
-    60,    60,   nil,   nil,   824,   nil,   nil,   nil,   nil,    60,
-    60,   nil,    60,    60,    60,    60,    60,   964,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   824,   824,   824,   824,   nil,
-    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,
-    60,    60,    60,    60,   nil,   nil,    60,    60,    60,   nil,
-   nil,    60,   nil,   824,    60,   nil,   nil,    60,    60,   nil,
-    60,   824,    60,   nil,    60,   nil,    60,    60,    60,    60,
-    60,    60,    60,   nil,    60,   nil,    60,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    60,
-    60,    60,    60,   nil,    60,   nil,    60,   nil,   nil,   nil,
-   454,    60,    62,    62,    62,    62,    62,   454,   454,   454,
-    62,    62,   454,   454,   454,    62,   454,    62,    62,    62,
-    62,    62,    62,    62,   nil,   454,   454,   454,   nil,    62,
-    62,    62,    62,    62,    62,    62,   454,   454,    62,   454,
-   454,   454,   454,   454,    62,    62,   nil,    62,    62,    62,
-    62,    62,    62,    62,    62,    62,   nil,    62,    62,    62,
-   nil,    62,    62,   nil,    62,    62,    62,   454,   454,   454,
-   454,   454,   454,   454,   454,   454,   454,   454,   454,   454,
-   454,   nil,   nil,   454,   454,   454,    62,   nil,   454,    62,
-   454,   454,    62,    62,   454,   454,    62,   454,    62,   454,
-   nil,   454,    62,   454,   454,   454,   454,   454,   454,   454,
-    62,   454,   454,   454,   nil,    62,    62,    62,    62,    62,
-    62,   nil,   nil,   nil,    62,    62,   454,   454,   nil,   454,
-   nil,   454,    62,   nil,   nil,    62,    62,    62,   454,    62,
-    62,    67,    67,    67,   nil,    67,   nil,   nil,   nil,    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,    67,
-   nil,   nil,   nil,   nil,    67,    67,    67,    67,    67,    67,
-   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,    67,    67,    67,   nil,    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,    68,    68,    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,   nil,   nil,   nil,   nil,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,
-   nil,   nil,   nil,    68,    68,    68,    68,    68,    68,   nil,
-   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,   nil,   nil,
-    68,   nil,   nil,    68,    68,    68,   nil,    68,    68,    71,
-    71,    71,   nil,    71,   nil,   nil,   nil,    71,    71,   nil,
-   nil,   nil,    71,   nil,    71,    71,    71,    71,    71,    71,
-    71,   nil,   nil,   nil,   nil,   nil,    71,    71,    71,    71,
-    71,    71,    71,   nil,   nil,    71,   nil,   nil,   nil,   nil,
-   nil,   nil,    71,   nil,   nil,    71,    71,    71,    71,    71,
-    71,    71,    71,   nil,    71,    71,    71,   nil,    71,    71,
-   nil,    71,    71,    71,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    71,   nil,   nil,    71,   nil,   nil,    71,
-    71,   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,    71,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,
-   nil,   nil,    71,    71,    71,    71,    71,    71,   nil,   nil,
-   nil,    71,    71,    71,   nil,   nil,   nil,   nil,    71,    71,
-   nil,   nil,    71,    71,    71,   nil,    71,    71,    72,    72,
-    72,   nil,    72,   nil,   nil,   nil,    72,    72,   nil,   nil,
-   nil,    72,   nil,    72,    72,    72,    72,    72,    72,    72,
-   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,    72,
-    72,    72,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,
-   nil,    72,   nil,   nil,    72,    72,    72,    72,    72,    72,
-    72,    72,   nil,    72,    72,    72,   nil,    72,    72,   nil,
-   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,   980,   nil,
-   980,   980,   980,   980,   980,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    72,   nil,   980,    72,   nil,   nil,    72,    72,
-   nil,   nil,    72,   nil,    72,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   980,   nil,   nil,   nil,
-   nil,    72,    72,    72,    72,    72,    72,   980,   980,   nil,
-    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
-   nil,    72,    72,    72,   nil,    72,    72,   128,   128,   128,
-   128,   128,   nil,   nil,   nil,   128,   128,   nil,   nil,   nil,
-   128,   980,   128,   128,   128,   128,   128,   128,   128,   nil,
-   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,   128,
-   128,   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,   128,
-   128,   128,   128,   128,   128,   128,   128,   128,   128,   128,
-   128,   nil,   128,   128,   128,   nil,   128,   128,   nil,   128,
-   128,   128,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   128,   nil,   nil,   128,   nil,   nil,   128,   128,   nil,
-   nil,   128,   nil,   128,   nil,   nil,   nil,   128,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   128,   nil,   nil,   nil,   nil,
-   128,   128,   128,   128,   128,   128,   nil,   nil,   nil,   128,
-   128,   nil,   nil,   nil,   nil,   nil,   128,   128,   nil,   nil,
-   128,   128,   128,   nil,   128,   128,   133,   133,   133,   nil,
-   133,   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,   133,
-   nil,   133,   133,   133,   133,   133,   133,   133,   nil,   nil,
-   nil,   nil,   nil,   133,   133,   133,   133,   133,   133,   133,
-   nil,   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,   133,
-   nil,   nil,   133,   133,   133,   133,   133,   133,   133,   133,
-   nil,   133,   133,   133,   nil,   133,   133,   nil,   133,   133,
-   133,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   133,   nil,   nil,   133,   nil,   nil,   133,   133,   nil,   nil,
-   133,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,   133,
-   133,   133,   133,   133,   133,   nil,   nil,   nil,   133,   133,
-   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,
-   133,   133,   nil,   133,   133,   134,   134,   134,   nil,   134,
-   nil,   nil,   nil,   134,   134,   nil,   nil,   nil,   134,   nil,
-   134,   134,   134,   134,   134,   134,   134,   nil,   nil,   nil,
-   nil,   nil,   134,   134,   134,   134,   134,   134,   134,   nil,
-   nil,   134,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,
-   nil,   134,   134,   134,   134,   134,   134,   134,   134,   nil,
-   134,   134,   134,   nil,   134,   134,   nil,   134,   134,   134,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   134,
-   nil,   nil,   134,   nil,   nil,   134,   134,   nil,   nil,   134,
-   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   134,   nil,   nil,   nil,   nil,   134,   134,
-   134,   134,   134,   134,   nil,   nil,   nil,   134,   134,   nil,
-   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   134,
-   134,   nil,   134,   134,   135,   135,   135,   nil,   135,   nil,
-   nil,   nil,   135,   135,   nil,   nil,   nil,   135,   nil,   135,
-   135,   135,   135,   135,   135,   135,   nil,   nil,   nil,   nil,
-   nil,   135,   135,   135,   135,   135,   135,   135,   nil,   nil,
-   135,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
-   135,   135,   135,   135,   135,   135,   135,   135,   nil,   135,
-   135,   135,   nil,   135,   135,   nil,   135,   135,   135,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,
-   nil,   135,   nil,   nil,   135,   135,   nil,   nil,   135,   nil,
-   nil,   nil,   nil,   nil,   135,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   135,   nil,   nil,   nil,   nil,   135,   135,   135,
-   135,   135,   135,   nil,   nil,   nil,   135,   135,   nil,   nil,
-   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   135,   135,
-   nil,   135,   135,   136,   136,   136,   nil,   136,   nil,   nil,
-   nil,   136,   136,   nil,   nil,   nil,   136,   nil,   136,   136,
-   136,   136,   136,   136,   136,   nil,   nil,   nil,   nil,   nil,
-   136,   136,   136,   136,   136,   136,   136,   nil,   nil,   136,
-   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,
-   136,   136,   136,   136,   136,   136,   136,   nil,   136,   136,
-   136,   nil,   136,   136,   nil,   136,   136,   136,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,
-   136,   nil,   nil,   136,   136,   nil,   nil,   136,   nil,   nil,
-   nil,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   136,   nil,   nil,   nil,   nil,   136,   136,   136,   136,
-   136,   136,   nil,   nil,   nil,   136,   136,   nil,   nil,   nil,
-   nil,   nil,   nil,   136,   nil,   nil,   136,   136,   136,   nil,
-   136,   136,   137,   137,   137,   137,   137,   nil,   nil,   nil,
-   137,   137,   nil,   nil,   nil,   137,   nil,   137,   137,   137,
-   137,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,   137,
-   137,   137,   137,   137,   137,   137,   nil,   nil,   137,   nil,
-   nil,   nil,   nil,   nil,   137,   137,   nil,   137,   137,   137,
-   137,   137,   137,   137,   137,   137,   nil,   137,   137,   137,
-   nil,   137,   137,   nil,   137,   137,   137,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   137,
-   nil,   nil,   137,   137,   nil,   nil,   137,   nil,   137,   nil,
-   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   137,   nil,   nil,   nil,   nil,   137,   137,   137,   137,   137,
-   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,   nil,
-   nil,   nil,   137,   nil,   nil,   137,   137,   137,   nil,   137,
-   137,   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,   nil,   222,   222,
-   222,   222,   222,   222,   222,   nil,   nil,   222,   nil,   nil,
-   nil,   nil,   nil,   nil,   222,   nil,   nil,   222,   222,   222,
-   222,   222,   222,   222,   222,   nil,   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,   222,   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,   nil,   nil,
-   nil,   222,   nil,   nil,   222,   222,   222,   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,   nil,   223,   223,   223,
-   223,   223,   223,   223,   nil,   nil,   223,   nil,   nil,   nil,
-   nil,   nil,   nil,   223,   nil,   nil,   223,   223,   223,   223,
-   223,   223,   223,   223,   nil,   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,   223,   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,   nil,   nil,   nil,
-   223,   nil,   nil,   223,   223,   223,   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,   nil,   224,   224,   224,   224,
-   224,   224,   224,   nil,   nil,   224,   nil,   nil,   nil,   nil,
-   nil,   nil,   224,   nil,   nil,   224,   224,   224,   224,   224,
-   224,   224,   224,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   224,
-   nil,   nil,   224,   224,   224,   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,   nil,   225,   225,   225,   225,   225,
-   225,   225,   nil,   nil,   225,   nil,   nil,   nil,   nil,   nil,
-   nil,   225,   nil,   nil,   225,   225,   225,   225,   225,   225,
-   225,   225,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,
-   nil,   225,   225,   225,   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,   nil,   226,   226,   226,   226,   226,   226,
-   226,   nil,   nil,   226,   nil,   nil,   nil,   nil,   nil,   nil,
-   226,   nil,   nil,   226,   226,   226,   226,   226,   226,   226,
-   226,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,
-   226,   226,   226,   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,   nil,   227,   227,   227,   227,   227,   227,   227,
-   nil,   nil,   227,   nil,   nil,   nil,   nil,   nil,   nil,   227,
-   nil,   nil,   227,   227,   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,   227,   nil,   227,   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,   nil,   nil,   nil,   227,   nil,   227,   227,
-   227,   227,   nil,   227,   227,   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,   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,   231,   nil,   nil,   nil,   nil,   231,   231,
-   231,   231,   231,   231,   nil,   nil,   nil,   231,   231,   nil,
-   nil,   nil,   nil,   nil,   nil,   231,   nil,   nil,   231,   231,
-   231,   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,
-   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,   232,   nil,   nil,   nil,   nil,   232,   232,   232,
-   232,   232,   232,   nil,   nil,   nil,   232,   232,   nil,   nil,
-   nil,   nil,   nil,   nil,   232,   nil,   nil,   232,   232,   232,
-   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,   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,   233,   nil,   nil,   nil,   nil,   233,   233,   233,   233,
-   233,   233,   nil,   nil,   nil,   233,   233,   233,   nil,   nil,
-   nil,   nil,   nil,   233,   nil,   nil,   233,   233,   233,   nil,
-   233,   233,   244,   244,   244,   nil,   244,   nil,   nil,   nil,
-   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,
-   244,   nil,   nil,   nil,   nil,   244,   244,   244,   244,   244,
-   244,   nil,   nil,   nil,   244,   244,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   244,   244,   244,   nil,   244,
-   244,   247,   247,   247,   nil,   247,   nil,   nil,   nil,   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,   247,
-   nil,   nil,   nil,   nil,   247,   247,   247,   247,   247,   247,
-   nil,   nil,   nil,   247,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   247,   247,   247,   nil,   247,   247,
-   248,   248,   248,   nil,   248,   nil,   nil,   nil,   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,   248,   nil,
-   nil,   nil,   nil,   248,   248,   248,   248,   248,   248,   nil,
-   nil,   nil,   248,   248,   nil,   nil,   nil,   nil,   nil,   nil,
-   248,   nil,   nil,   248,   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,
-   nil,   nil,   249,   249,   249,   249,   249,   249,   nil,   nil,
-   nil,   249,   249,   nil,   nil,   nil,   nil,   nil,   nil,   249,
-   nil,   nil,   249,   249,   249,   nil,   249,   249,   250,   250,
-   250,   nil,   250,   nil,   nil,   nil,   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,   250,   nil,   nil,   nil,
-   nil,   250,   250,   250,   250,   250,   250,   nil,   nil,   nil,
-   250,   250,   nil,   nil,   nil,   nil,   nil,   nil,   250,   nil,
-   nil,   250,   250,   250,   nil,   250,   250,   251,   251,   251,
-   nil,   251,   nil,   nil,   nil,   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,   251,   nil,   nil,   nil,   nil,
-   251,   251,   251,   251,   251,   251,   nil,   nil,   nil,   251,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,   251,   nil,   nil,
-   251,   251,   251,   nil,   251,   251,   252,   252,   252,   nil,
-   252,   nil,   nil,   nil,   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,   252,   nil,   nil,   nil,   nil,   252,
-   252,   252,   252,   252,   252,   nil,   nil,   nil,   252,   252,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   252,
-   252,   252,   nil,   252,   252,   253,   253,   253,   nil,   253,
-   nil,   nil,   nil,   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,   253,   nil,   nil,   nil,   nil,   253,   253,
-   253,   253,   253,   253,   nil,   nil,   nil,   253,   253,   nil,
-   nil,   nil,   nil,   nil,   nil,   253,   nil,   nil,   253,   253,
-   253,   nil,   253,   253,   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,
-   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,   254,   nil,   nil,   nil,   nil,   254,   254,   254,
-   254,   254,   254,   nil,   nil,   nil,   254,   254,   nil,   nil,
-   nil,   nil,   nil,   nil,   254,   nil,   nil,   254,   254,   254,
-   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,   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,   255,   nil,   nil,   nil,   nil,   255,   255,   255,   255,
-   255,   255,   nil,   nil,   nil,   255,   255,   nil,   nil,   nil,
-   nil,   nil,   nil,   255,   nil,   nil,   255,   255,   255,   nil,
-   255,   255,   256,   256,   256,   nil,   256,   nil,   nil,   nil,
-   256,   256,   nil,   nil,   nil,   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,
-   256,   256,   256,   256,   256,   256,   nil,   256,   256,   256,
-   nil,   256,   256,   nil,   256,   256,   256,   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,   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,   nil,
-   nil,   nil,   256,   nil,   nil,   256,   256,   256,   nil,   256,
-   256,   257,   257,   257,   nil,   257,   nil,   nil,   nil,   257,
-   257,   nil,   nil,   nil,   257,   nil,   257,   257,   257,   257,
-   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   257,   257,
-   257,   257,   257,   257,   257,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   257,   257,
-   257,   257,   257,   257,   257,   nil,   257,   257,   257,   nil,
-   257,   257,   nil,   257,   257,   257,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,
-   nil,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,   257,
-   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   257,   257,   257,   nil,   257,   257,
-   258,   258,   258,   nil,   258,   nil,   nil,   nil,   258,   258,
-   nil,   nil,   nil,   258,   nil,   258,   258,   258,   258,   258,
-   258,   258,   nil,   nil,   nil,   nil,   nil,   258,   258,   258,
-   258,   258,   258,   258,   nil,   nil,   258,   nil,   nil,   nil,
-   nil,   nil,   nil,   258,   nil,   nil,   258,   258,   258,   258,
-   258,   258,   258,   258,   nil,   258,   258,   258,   nil,   258,
-   258,   nil,   258,   258,   258,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,   nil,   nil,
-   258,   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,
-   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   nil,   nil,   258,   258,   258,   258,   258,   258,   nil,
-   nil,   nil,   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,
-   258,   nil,   nil,   258,   258,   258,   nil,   258,   258,   259,
-   259,   259,   nil,   259,   nil,   nil,   nil,   259,   259,   nil,
-   nil,   nil,   259,   nil,   259,   259,   259,   259,   259,   259,
-   259,   nil,   nil,   nil,   nil,   nil,   259,   259,   259,   259,
-   259,   259,   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,
-   nil,   nil,   259,   nil,   nil,   259,   259,   259,   259,   259,
-   259,   259,   259,   nil,   259,   259,   259,   nil,   259,   259,
-   nil,   259,   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   259,   nil,   nil,   259,   nil,   nil,   259,
-   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   259,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   nil,   nil,   259,   259,   259,   259,   259,   259,   nil,   nil,
-   nil,   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,
-   nil,   nil,   259,   259,   259,   nil,   259,   259,   260,   260,
-   260,   nil,   260,   nil,   nil,   nil,   260,   260,   nil,   nil,
-   nil,   260,   nil,   260,   260,   260,   260,   260,   260,   260,
-   nil,   nil,   nil,   nil,   nil,   260,   260,   260,   260,   260,
-   260,   260,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,
-   nil,   260,   nil,   nil,   260,   260,   260,   260,   260,   260,
-   260,   260,   nil,   260,   260,   260,   nil,   260,   260,   nil,
-   260,   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   260,   nil,   nil,   260,   nil,   nil,   260,   260,
-   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   260,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,
-   nil,   260,   260,   260,   260,   260,   260,   nil,   nil,   nil,
-   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,
-   nil,   260,   260,   260,   nil,   260,   260,   261,   261,   261,
-   nil,   261,   nil,   nil,   nil,   261,   261,   nil,   nil,   nil,
-   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,   261,   261,   261,   261,   261,
-   261,   nil,   261,   261,   261,   nil,   261,   261,   nil,   261,
-   261,   261,   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,   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,   nil,   nil,   nil,   261,   nil,   nil,
-   261,   261,   261,   nil,   261,   261,   262,   262,   262,   nil,
-   262,   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   262,
-   nil,   262,   262,   262,   262,   262,   262,   262,   nil,   nil,
-   nil,   nil,   nil,   262,   262,   262,   262,   262,   262,   262,
-   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,
-   nil,   nil,   262,   262,   262,   262,   262,   262,   262,   262,
-   nil,   262,   262,   262,   nil,   262,   262,   nil,   262,   262,
-   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   262,   nil,   nil,   262,   nil,   nil,   262,   262,   nil,   nil,
-   262,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,
-   262,   262,   262,   262,   262,   nil,   nil,   nil,   262,   262,
-   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,
-   262,   262,   nil,   262,   262,   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,   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,   nil,
-   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,   nil,   nil,   nil,   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   263,   nil,   nil,   263,   263,
-   263,   nil,   263,   263,   264,   264,   264,   nil,   264,   nil,
-   nil,   nil,   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,   nil,   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,
-   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   nil,   nil,   264,   264,   264,
-   264,   264,   264,   nil,   nil,   nil,   264,   264,   nil,   nil,
-   nil,   nil,   nil,   nil,   264,   nil,   nil,   264,   264,   264,
-   nil,   264,   264,   265,   265,   265,   nil,   265,   nil,   nil,
-   nil,   265,   265,   nil,   nil,   nil,   265,   nil,   265,   265,
-   265,   265,   265,   265,   265,   nil,   nil,   nil,   nil,   nil,
-   265,   265,   265,   265,   265,   265,   265,   nil,   nil,   265,
-   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,
-   265,   265,   265,   265,   265,   265,   265,   nil,   265,   265,
-   265,   nil,   265,   265,   nil,   265,   265,   265,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,
-   265,   nil,   nil,   265,   265,   nil,   nil,   265,   nil,   nil,
-   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   265,   nil,   nil,   nil,   nil,   265,   265,   265,   265,
-   265,   265,   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,
-   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,   nil,
-   265,   265,   266,   266,   266,   nil,   266,   nil,   nil,   nil,
-   266,   266,   nil,   nil,   nil,   266,   nil,   266,   266,   266,
-   266,   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   266,
-   266,   266,   266,   266,   266,   266,   nil,   nil,   266,   nil,
-   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   266,
-   266,   266,   266,   266,   266,   266,   nil,   266,   266,   266,
-   nil,   266,   266,   nil,   266,   266,   266,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,
-   nil,   nil,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,
-   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   266,   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,
-   266,   nil,   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,
-   nil,   nil,   266,   nil,   nil,   266,   266,   266,   nil,   266,
-   266,   267,   267,   267,   nil,   267,   nil,   nil,   nil,   267,
-   267,   nil,   nil,   nil,   267,   nil,   267,   267,   267,   267,
-   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   267,   267,
-   267,   267,   267,   267,   267,   nil,   nil,   267,   nil,   nil,
-   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,
-   267,   267,   267,   267,   267,   nil,   267,   267,   267,   nil,
-   267,   267,   nil,   267,   267,   267,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,
-   nil,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,
-   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   267,   267,   267,   nil,   267,   267,
-   268,   268,   268,   nil,   268,   nil,   nil,   nil,   268,   268,
-   nil,   nil,   nil,   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,   268,   268,
-   268,   268,   268,   268,   nil,   268,   268,   268,   nil,   268,
-   268,   nil,   268,   268,   268,   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,   268,   nil,   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,
-   268,   nil,   nil,   268,   268,   268,   nil,   268,   268,   273,
-   273,   273,   nil,   273,   nil,   nil,   nil,   273,   273,   nil,
-   nil,   nil,   273,   nil,   273,   273,   273,   273,   273,   273,
-   273,   nil,   nil,   nil,   nil,   nil,   273,   273,   273,   273,
-   273,   273,   273,   nil,   nil,   273,   nil,   nil,   nil,   nil,
-   nil,   nil,   273,   nil,   nil,   273,   273,   273,   273,   273,
-   273,   273,   273,   nil,   273,   273,   273,   nil,   273,   273,
-   nil,   273,   273,   273,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   273,   nil,   nil,   273,   nil,   nil,   273,
-   273,   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   273,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,
-   nil,   nil,   273,   273,   273,   273,   273,   273,   nil,   nil,
-   nil,   273,   273,   nil,   nil,   nil,   nil,   nil,   nil,   273,
-   nil,   nil,   273,   273,   273,   nil,   273,   273,   281,   281,
-   281,   nil,   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,
-   nil,   281,   nil,   nil,   281,   281,   281,   281,   281,   281,
-   281,   281,   281,   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,   281,   nil,   281,   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,   nil,   nil,   nil,   281,   nil,
-   281,   281,   281,   281,   nil,   281,   281,   282,   282,   282,
-   nil,   282,   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,
-   282,   nil,   282,   282,   282,   282,   282,   282,   282,   nil,
-   nil,   nil,   nil,   nil,   282,   282,   282,   282,   282,   282,
-   282,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   282,   282,   282,   282,   282,   282,   282,
-   282,   282,   282,   282,   282,   nil,   282,   282,   nil,   282,
-   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   282,   nil,   nil,   282,   nil,   nil,   282,   282,   nil,
-   nil,   282,   nil,   282,   nil,   282,   nil,   282,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
-   282,   282,   282,   282,   282,   282,   nil,   nil,   nil,   282,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   282,
-   282,   282,   282,   nil,   282,   282,   291,   291,   291,   nil,
-   291,   nil,   nil,   nil,   291,   291,   nil,   nil,   nil,   291,
-   nil,   291,   291,   291,   291,   291,   291,   291,   nil,   nil,
-   nil,   nil,   nil,   291,   291,   291,   291,   291,   291,   291,
-   nil,   nil,   291,   nil,   nil,   nil,   nil,   nil,   nil,   291,
-   nil,   nil,   291,   291,   291,   291,   291,   291,   291,   291,
-   291,   291,   291,   291,   nil,   291,   291,   nil,   291,   291,
-   291,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   291,   nil,   nil,   291,   nil,   nil,   291,   291,   nil,   nil,
-   291,   nil,   291,   nil,   291,   nil,   291,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   291,   nil,   nil,   nil,   nil,   291,
-   291,   291,   291,   291,   291,   nil,   nil,   nil,   291,   291,
-   291,   nil,   nil,   nil,   nil,   nil,   291,   nil,   291,   291,
-   291,   291,   nil,   291,   291,   298,   298,   298,   nil,   298,
-   nil,   nil,   nil,   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,   298,   298,   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,   nil,   nil,   nil,   nil,   298,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   298,   nil,   nil,   nil,   nil,   298,   298,
-   298,   298,   298,   298,   nil,   nil,   nil,   298,   298,   nil,
-   nil,   nil,   nil,   nil,   nil,   298,   nil,   nil,   298,   298,
-   298,   nil,   298,   298,   300,   300,   300,   nil,   300,   nil,
-   nil,   nil,   300,   300,   nil,   nil,   nil,   300,   nil,   300,
-   300,   300,   300,   300,   300,   300,   nil,   nil,   nil,   nil,
-   nil,   300,   300,   300,   300,   300,   300,   300,   nil,   nil,
-   300,   nil,   nil,   nil,   nil,   nil,   nil,   300,   nil,   nil,
-   300,   300,   300,   300,   300,   300,   300,   300,   nil,   300,
-   300,   300,   nil,   300,   300,   nil,   300,   300,   300,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   300,   nil,
-   nil,   300,   nil,   nil,   300,   300,   nil,   nil,   300,   nil,
-   nil,   nil,   nil,   nil,   300,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   300,   nil,   nil,   nil,   nil,   300,   300,   300,
-   300,   300,   300,   nil,   nil,   nil,   300,   300,   nil,   nil,
-   nil,   nil,   nil,   nil,   300,   nil,   nil,   300,   300,   300,
-   nil,   300,   300,   302,   302,   302,   nil,   302,   nil,   nil,
-   nil,   302,   302,   nil,   nil,   nil,   302,   nil,   302,   302,
-   302,   302,   302,   302,   302,   nil,   nil,   nil,   nil,   nil,
-   302,   302,   302,   302,   302,   302,   302,   nil,   nil,   302,
-   nil,   nil,   nil,   nil,   nil,   nil,   302,   nil,   nil,   302,
-   302,   302,   302,   302,   302,   302,   302,   nil,   302,   302,
-   302,   nil,   302,   302,   nil,   302,   302,   302,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   302,   nil,   nil,
-   302,   nil,   nil,   302,   302,   nil,   nil,   302,   nil,   nil,
-   nil,   nil,   nil,   302,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   302,   nil,   nil,   nil,   nil,   302,   302,   302,   302,
-   302,   302,   nil,   nil,   nil,   302,   302,   nil,   nil,   nil,
-   nil,   nil,   nil,   302,   nil,   nil,   302,   302,   302,   nil,
-   302,   302,   303,   303,   303,   nil,   303,   nil,   nil,   nil,
-   303,   303,   nil,   nil,   nil,   303,   nil,   303,   303,   303,
-   303,   303,   303,   303,   nil,   nil,   nil,   nil,   nil,   303,
-   303,   303,   303,   303,   303,   303,   nil,   nil,   303,   nil,
-   nil,   nil,   nil,   nil,   nil,   303,   nil,   nil,   303,   303,
-   303,   303,   303,   303,   303,   303,   nil,   303,   303,   303,
-   nil,   303,   303,   nil,   303,   303,   303,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   303,   nil,   nil,   303,
-   nil,   nil,   303,   303,   nil,   nil,   303,   nil,   nil,   nil,
-   nil,   nil,   303,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   303,   nil,   nil,   nil,   nil,   303,   303,   303,   303,   303,
-   303,   nil,   nil,   nil,   303,   303,   nil,   nil,   nil,   nil,
-   nil,   nil,   303,   nil,   nil,   303,   303,   303,   nil,   303,
-   303,   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,   309,
-   309,   309,   309,   309,   309,   nil,   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,   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,   nil,   nil,
-   nil,   309,   nil,   nil,   309,   309,   309,   nil,   309,   309,
-   317,   317,   317,   nil,   317,   nil,   nil,   nil,   317,   317,
-   nil,   nil,   nil,   317,   nil,   317,   317,   317,   317,   317,
-   317,   317,   nil,   nil,   nil,   nil,   nil,   317,   317,   317,
-   317,   317,   317,   317,   nil,   nil,   317,   nil,   nil,   nil,
-   nil,   nil,   nil,   317,   nil,   nil,   317,   317,   317,   317,
-   317,   317,   317,   317,   nil,   317,   317,   317,   nil,   317,
-   317,   nil,   nil,   nil,   317,   nil,   nil,   nil,   nil,   nil,
-  1044,   nil,  1044,  1044,  1044,  1044,  1044,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   317,   nil,  1044,   317,   nil,   nil,
-   317,   317,   nil,   nil,   317,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1044,   nil,
-   nil,   nil,   nil,   317,   317,   317,   317,   317,   317,  1044,
-  1044,   nil,   317,   317,   nil,   nil,   nil,   317,   nil,   nil,
-   317,   nil,   nil,   317,   317,   317,   nil,   317,   317,   334,
-   334,   334,   nil,   334,   nil,   nil,   nil,   334,   334,   nil,
-   nil,   nil,   334,  1044,   334,   334,   334,   334,   334,   334,
-   334,   nil,   nil,   nil,   nil,   nil,   334,   334,   334,   334,
-   334,   334,   334,   nil,   nil,   334,   nil,   nil,   nil,   nil,
-   nil,   nil,   334,   nil,   nil,   334,   334,   334,   334,   334,
-   334,   334,   334,   nil,   334,   334,   334,   nil,   334,   334,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,  1053,
-   nil,  1053,  1053,  1053,  1053,  1053,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   334,   nil,  1053,   334,   nil,   nil,   334,
-   334,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1053,   nil,   nil,
-   nil,   nil,   334,   334,   334,   334,   334,   334,  1053,  1053,
-   nil,   334,   334,   nil,   nil,   nil,   nil,   nil,   nil,   334,
-   nil,   nil,   334,   334,   334,   nil,   334,   334,   341,   341,
-   341,   nil,   341,   nil,   nil,   nil,   341,   341,   nil,   nil,
-   nil,   341,  1053,   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,   341,   nil,   nil,   nil,
-   nil,   341,   341,   341,   341,   341,   341,   nil,   nil,   nil,
-   341,   341,   nil,   nil,   nil,   nil,   nil,   nil,   341,   nil,
-   nil,   341,   341,   341,   nil,   341,   341,   343,   343,   343,
-   nil,   343,   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,
-   343,   nil,   343,   343,   343,   343,   343,   343,   343,   nil,
-   nil,   nil,   nil,   nil,   343,   343,   343,   343,   343,   343,
-   343,   nil,   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,
-   343,   nil,   nil,   343,   343,   343,   343,   343,   343,   343,
-   343,   nil,   343,   343,   343,   nil,   343,   343,   nil,   343,
-   343,   343,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   343,   nil,   nil,   343,   343,   nil,   343,   343,   nil,
-   nil,   343,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,
-   343,   343,   343,   343,   343,   343,   nil,   nil,   nil,   343,
-   343,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,
-   343,   343,   343,   nil,   343,   343,   347,   347,   347,   nil,
-   347,   nil,   nil,   nil,   347,   347,   nil,   nil,   nil,   347,
-   nil,   347,   347,   347,   347,   347,   347,   347,   nil,   nil,
-   nil,   nil,   nil,   347,   347,   347,   347,   347,   347,   347,
-   nil,   nil,   347,   nil,   nil,   nil,   nil,   nil,   nil,   347,
-   nil,   nil,   347,   347,   347,   347,   347,   347,   347,   347,
-   347,   347,   347,   347,   nil,   347,   347,   nil,   347,   347,
-   347,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   347,   nil,   nil,   347,   nil,   nil,   347,   347,   nil,   nil,
-   347,   nil,   347,   nil,   nil,   nil,   347,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   347,   nil,   nil,   nil,   nil,   347,
-   347,   347,   347,   347,   347,   nil,   nil,   nil,   347,   347,
-   nil,   nil,   nil,   nil,   nil,   nil,   347,   nil,   347,   347,
-   347,   347,   nil,   347,   347,   348,   348,   348,   nil,   348,
-   nil,   nil,   nil,   348,   348,   nil,   nil,   nil,   348,   nil,
-   348,   348,   348,   348,   348,   348,   348,   nil,   nil,   nil,
-   nil,   nil,   348,   348,   348,   348,   348,   348,   348,   nil,
-   nil,   348,   nil,   nil,   nil,   nil,   nil,   nil,   348,   nil,
-   nil,   348,   348,   348,   348,   348,   348,   348,   348,   348,
-   348,   348,   348,   nil,   348,   348,   nil,   348,   348,   348,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   348,
-   nil,   nil,   348,   nil,   nil,   348,   348,   nil,   nil,   348,
-   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   348,   nil,   nil,   nil,   nil,   348,   348,
-   348,   348,   348,   348,   nil,   nil,   nil,   348,   348,   nil,
-   nil,   nil,   nil,   nil,   nil,   348,   nil,   348,   348,   348,
-   348,   nil,   348,   348,   353,   353,   353,   nil,   353,   nil,
-   nil,   nil,   353,   353,   nil,   nil,   nil,   353,   nil,   353,
-   353,   353,   353,   353,   353,   353,   nil,   nil,   nil,   nil,
-   nil,   353,   353,   353,   353,   353,   353,   353,   nil,   nil,
-   353,   nil,   nil,   nil,   nil,   nil,   nil,   353,   nil,   nil,
-   353,   353,   353,   353,   353,   353,   353,   353,   nil,   353,
-   353,   353,   nil,   353,   353,   nil,   353,   353,   353,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   353,   nil,
-   nil,   353,   nil,   nil,   353,   353,   nil,   nil,   353,   nil,
-   nil,   nil,   nil,   nil,   353,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   353,   nil,   nil,   nil,   nil,   353,   353,   353,
-   353,   353,   353,   nil,   nil,   nil,   353,   353,   nil,   nil,
-   nil,   nil,   nil,   nil,   353,   nil,   nil,   353,   353,   353,
-   nil,   353,   353,   367,   367,   367,   nil,   367,   nil,   nil,
-   nil,   367,   367,   nil,   nil,   nil,   367,   nil,   367,   367,
-   367,   367,   367,   367,   367,   nil,   nil,   nil,   nil,   nil,
-   367,   367,   367,   367,   367,   367,   367,   nil,   nil,   367,
-   nil,   nil,   nil,   nil,   nil,   nil,   367,   nil,   nil,   367,
-   367,   367,   367,   367,   367,   367,   367,   nil,   367,   367,
-   367,   nil,   367,   367,   nil,   nil,   nil,   367,   nil,   nil,
-   nil,   nil,   nil,  1055,   nil,  1055,  1055,  1055,  1055,  1055,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   367,   nil,  1055,
-   367,   nil,   nil,   367,   367,   nil,   nil,   367,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1055,   nil,   nil,   nil,   nil,   367,   367,   367,   367,
-   367,   367,  1055,  1055,   nil,   367,   367,   nil,   nil,   nil,
-   nil,   nil,   nil,   367,   nil,   nil,   367,   367,   367,   nil,
-   367,   367,   369,   369,   369,   nil,   369,   nil,   nil,   nil,
-   369,   369,   nil,   nil,   nil,   369,  1055,   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,
-   369,   369,   369,   369,   369,   369,   nil,   369,   369,   369,
-   nil,   369,   369,   nil,   nil,   nil,   369,   nil,   nil,   nil,
-   nil,   nil,  1057,   nil,  1057,  1057,  1057,  1057,  1057,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   369,   nil,  1057,   369,
-   nil,   nil,   369,   369,   nil,   nil,   369,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1057,   nil,   nil,   nil,   nil,   369,   369,   369,   369,   369,
-   369,  1057,  1057,   nil,   369,   369,   nil,   nil,   nil,   nil,
-   nil,   nil,   369,   nil,   nil,   369,   369,   369,   nil,   369,
-   369,   429,   429,   429,   nil,   429,   nil,   nil,   nil,   429,
-   429,   nil,   nil,   nil,   429,  1057,   429,   429,   429,   429,
-   429,   429,   429,   nil,   nil,   nil,   nil,   nil,   429,   429,
-   429,   429,   429,   429,   429,   nil,   nil,   429,   nil,   nil,
-   nil,   nil,   nil,   nil,   429,   nil,   nil,   429,   429,   429,
-   429,   429,   429,   429,   429,   nil,   429,   429,   429,   nil,
-   429,   429,   nil,   429,   429,   429,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   429,   nil,   nil,   429,   nil,
-   nil,   429,   429,   nil,  1079,   429,  1079,  1079,  1079,  1079,
-  1079,   429,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   429,
-  1079,   nil,   nil,   nil,   429,   429,   429,   429,   429,   429,
-   nil,   nil,   nil,   429,   429,   nil,   nil,   nil,   nil,   nil,
-   nil,   429,  1079,   463,   429,   429,   429,   nil,   429,   429,
-   463,   463,   463,  1079,  1079,   463,   463,   463,   958,   463,
-   958,   958,   958,   958,   958,   nil,   nil,   nil,   463,   463,
-   463,   463,   nil,   nil,   958,   nil,   nil,   nil,   nil,   463,
-   463,   nil,   463,   463,   463,   463,   463,  1079,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   958,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   958,   958,   958,   958,   nil,
-   463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
-   463,   463,   463,   463,   nil,   nil,   463,   463,   463,   nil,
-   nil,   463,   nil,   nil,   463,   nil,   nil,   463,   463,   nil,
-   463,   958,   463,   nil,   463,   nil,   463,   463,   463,   463,
-   463,   463,   463,   nil,   463,   463,   463,   975,   nil,   975,
-   975,   975,   975,   975,   nil,   nil,   nil,   nil,   nil,   463,
-   463,   463,   463,   975,   463,   464,   463,   nil,   nil,   nil,
-   nil,   463,   464,   464,   464,   nil,   nil,   464,   464,   464,
-   nil,   464,   nil,   nil,   nil,   975,   nil,   nil,   nil,   nil,
-   464,   464,   464,   464,   975,   975,   975,   975,   nil,   nil,
-   nil,   464,   464,   nil,   464,   464,   464,   464,   464,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   975,   nil,   464,   464,   464,   464,   464,   464,   464,   464,
-   464,   464,   464,   464,   464,   464,   nil,   nil,   464,   464,
-   464,   nil,   nil,   464,   nil,   nil,   464,   nil,   nil,   464,
-   464,   nil,   464,   nil,   464,   nil,   464,   nil,   464,   464,
-   464,   464,   464,   464,   464,   nil,   464,   464,   464,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   464,   464,   464,   464,   nil,   464,   nil,   464,   nil,
-   473,   473,   473,   464,   473,   nil,   nil,   nil,   473,   473,
-   nil,   nil,   nil,   473,   nil,   473,   473,   473,   473,   473,
-   473,   473,   nil,   nil,   nil,   nil,   nil,   473,   473,   473,
-   473,   473,   473,   473,   nil,   nil,   473,   nil,   nil,   nil,
-   nil,   nil,   nil,   473,   nil,   nil,   473,   473,   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,   nil,   nil,
-   473,   473,   nil,   nil,   473,   nil,   473,   nil,   473,   nil,
-   473,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   473,   nil,
-   nil,   nil,   nil,   473,   473,   473,   473,   473,   473,   nil,
-   nil,   nil,   473,   473,   nil,   nil,   nil,   nil,   nil,   nil,
-   473,   nil,   473,   473,   473,   473,   nil,   473,   473,   475,
-   475,   475,   nil,   475,   nil,   nil,   nil,   475,   475,   nil,
-   nil,   nil,   475,   nil,   475,   475,   475,   475,   475,   475,
-   475,   nil,   nil,   nil,   nil,   nil,   475,   475,   475,   475,
-   475,   475,   475,   nil,   nil,   475,   nil,   nil,   nil,   nil,
-   nil,   nil,   475,   nil,   nil,   475,   475,   475,   475,   475,
-   475,   475,   475,   nil,   475,   475,   475,   nil,   475,   475,
-   nil,   475,   475,   475,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   475,   nil,   nil,   475,   nil,   nil,   475,
-   475,   nil,   nil,   475,   nil,   nil,   nil,   nil,   nil,   475,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   475,   nil,   nil,
-   nil,   nil,   475,   475,   475,   475,   475,   475,   nil,   nil,
-   nil,   475,   475,   nil,   nil,   nil,   nil,   nil,   nil,   475,
-   nil,   nil,   475,   475,   475,   nil,   475,   475,   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,   nil,   476,   476,   476,   476,   476,
-   476,   476,   nil,   nil,   476,   nil,   nil,   nil,   nil,   nil,
-   nil,   476,   nil,   nil,   476,   476,   476,   476,   476,   476,
-   476,   476,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   476,   nil,
-   nil,   476,   476,   476,   nil,   476,   476,   477,   477,   477,
-   nil,   477,   nil,   nil,   nil,   477,   477,   nil,   nil,   nil,
-   477,   nil,   477,   477,   477,   477,   477,   477,   477,   nil,
-   nil,   nil,   nil,   nil,   477,   477,   477,   477,   477,   477,
-   477,   nil,   nil,   477,   nil,   nil,   nil,   nil,   nil,   nil,
-   477,   nil,   nil,   477,   477,   477,   477,   477,   477,   477,
-   477,   nil,   477,   477,   477,   nil,   477,   477,   nil,   477,
-   477,   477,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   477,   nil,   nil,   477,   nil,   nil,   477,   477,   nil,
-   nil,   477,   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   nil,   nil,
-   477,   477,   477,   477,   477,   477,   nil,   nil,   nil,   477,
-   477,   nil,   nil,   nil,   nil,   nil,   nil,   477,   nil,   503,
-   477,   477,   477,   nil,   477,   477,   503,   503,   503,   nil,
-   nil,   503,   503,   503,   nil,   503,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   503,   503,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   503,   503,   nil,   503,   503,
-   503,   503,   503,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   277,   277,   nil,   nil,   277,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   277,   277,   nil,   277,   277,   277,   277,
-   277,   277,   277,   nil,   nil,   277,   277,   503,   nil,   nil,
-   277,   277,   277,   277,   503,   nil,   nil,   nil,   nil,   503,
-   503,   nil,   nil,   nil,   nil,   nil,   nil,   277,   277,   nil,
-   277,   277,   277,   277,   277,   277,   277,   277,   277,   277,
-   277,   503,   503,   277,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   503,   nil,   515,   515,   515,
-   503,   515,   nil,   277,   nil,   515,   515,   503,   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,   515,   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,   515,   nil,   515,   nil,   515,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   515,   nil,   nil,   nil,   nil,
-   515,   515,   515,   515,   515,   515,   nil,   nil,   nil,   515,
-   515,   nil,   nil,   nil,   nil,   nil,   nil,   515,   nil,   515,
-   515,   515,   515,   nil,   515,   515,   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,   518,   518,   518,   518,   518,   518,
-   518,   518,   518,   518,   nil,   518,   518,   nil,   518,   518,
-   518,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   518,   nil,   nil,   518,   nil,   nil,   518,   518,   nil,   nil,
-   518,   nil,   nil,   nil,   518,   nil,   518,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   518,   nil,   nil,   nil,   nil,   518,
-   518,   518,   518,   518,   518,   nil,   nil,   nil,   518,   518,
-   nil,   nil,   nil,   nil,   nil,   nil,   518,   nil,   518,   518,
-   518,   518,   nil,   518,   518,   520,   520,   520,   nil,   520,
-   nil,   nil,   nil,   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,   520,   nil,   nil,   nil,   nil,   520,   520,
-   520,   520,   520,   520,   nil,   nil,   nil,   520,   520,   nil,
-   nil,   nil,   nil,   nil,   nil,   520,   nil,   nil,   520,   520,
-   520,   nil,   520,   520,   525,   525,   525,   525,   525,   nil,
-   nil,   nil,   525,   525,   nil,   nil,   nil,   525,   nil,   525,
-   525,   525,   525,   525,   525,   525,   nil,   nil,   nil,   nil,
-   nil,   525,   525,   525,   525,   525,   525,   525,   nil,   nil,
-   525,   nil,   nil,   nil,   nil,   nil,   525,   525,   525,   525,
-   525,   525,   525,   525,   525,   525,   525,   525,   nil,   525,
-   525,   525,   nil,   525,   525,   nil,   525,   525,   525,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   525,   nil,
-   nil,   525,   nil,   nil,   525,   525,   nil,   nil,   525,   nil,
-   525,   nil,   nil,   nil,   525,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   525,   nil,   nil,   nil,   nil,   525,   525,   525,
-   525,   525,   525,   nil,   nil,   nil,   525,   525,   nil,   nil,
-   nil,   nil,   nil,   525,   525,   nil,   nil,   525,   525,   525,
-   nil,   525,   525,   533,   533,   533,   nil,   533,   nil,   nil,
-   nil,   533,   533,   nil,   nil,   nil,   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,   533,   533,   533,   533,   533,   533,   nil,   533,   533,
-   533,   nil,   533,   533,   nil,   nil,   nil,   533,   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,   533,   nil,   nil,   533,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   533,   533,   533,   533,
-   533,   533,   nil,   nil,   nil,   533,   533,   nil,   nil,   nil,
-   nil,   nil,   nil,   533,   nil,   nil,   533,   533,   533,   nil,
-   533,   533,   535,   535,   535,   nil,   535,   nil,   nil,   nil,
-   535,   535,   nil,   nil,   nil,   535,   nil,   535,   535,   535,
-   535,   535,   535,   535,   nil,   nil,   nil,   nil,   nil,   535,
-   535,   535,   535,   535,   535,   535,   nil,   nil,   535,   nil,
-   nil,   nil,   nil,   nil,   nil,   535,   nil,   nil,   535,   535,
-   535,   535,   535,   535,   535,   535,   535,   535,   535,   535,
-   nil,   535,   535,   nil,   535,   535,   535,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   535,   nil,   nil,   535,
-   nil,   nil,   535,   535,   nil,   nil,   535,   nil,   535,   nil,
-   535,   nil,   535,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   535,   nil,   nil,   nil,   nil,   535,   535,   535,   535,   535,
-   535,   nil,   nil,   nil,   535,   535,   nil,   nil,   nil,   nil,
-   nil,   nil,   535,   nil,   535,   535,   535,   535,   nil,   535,
-   535,   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,   nil,   541,   541,
-   541,   541,   541,   541,   541,   nil,   nil,   541,   nil,   nil,
-   nil,   nil,   nil,   nil,   541,   nil,   nil,   541,   541,   541,
-   541,   541,   541,   541,   541,   nil,   541,   541,   541,   nil,
-   541,   541,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   541,   541,   541,   541,   541,   541,
-   nil,   nil,   nil,   541,   541,   nil,   nil,   nil,   nil,   nil,
-   nil,   541,   nil,   nil,   541,   541,   541,   nil,   541,   541,
-   544,   544,   544,   nil,   544,   nil,   nil,   nil,   544,   544,
-   nil,   nil,   nil,   544,   nil,   544,   544,   544,   544,   544,
-   544,   544,   nil,   nil,   nil,   nil,   nil,   544,   544,   544,
-   544,   544,   544,   544,   nil,   nil,   544,   nil,   nil,   nil,
-   nil,   nil,   nil,   544,   nil,   nil,   544,   544,   544,   544,
-   544,   544,   544,   544,   nil,   544,   544,   544,   nil,   544,
-   544,   nil,   544,   544,   544,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   544,   nil,   nil,   544,   nil,   nil,
-   544,   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,
-   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,
-   nil,   nil,   nil,   544,   544,   544,   544,   544,   544,   nil,
-   nil,   nil,   544,   544,   nil,   nil,   nil,   nil,   nil,   nil,
-   544,   nil,   nil,   544,   544,   544,   nil,   544,   544,   545,
-   545,   545,   nil,   545,   nil,   nil,   nil,   545,   545,   nil,
-   nil,   nil,   545,   nil,   545,   545,   545,   545,   545,   545,
-   545,   nil,   nil,   nil,   nil,   nil,   545,   545,   545,   545,
-   545,   545,   545,   nil,   nil,   545,   nil,   nil,   nil,   nil,
-   nil,   nil,   545,   nil,   nil,   545,   545,   545,   545,   545,
-   545,   545,   545,   nil,   545,   545,   545,   nil,   545,   545,
-   nil,   545,   545,   545,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   545,   nil,   nil,   545,   nil,   nil,   545,
-   545,   nil,   nil,   545,   nil,   nil,   nil,   nil,   nil,   545,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,
-   nil,   nil,   545,   545,   545,   545,   545,   545,   nil,   nil,
-   nil,   545,   545,   nil,   nil,   nil,   nil,   nil,   nil,   545,
-   nil,   nil,   545,   545,   545,   nil,   545,   545,   550,   550,
-   550,   nil,   550,   nil,   nil,   nil,   550,   550,   nil,   nil,
-   nil,   550,   nil,   550,   550,   550,   550,   550,   550,   550,
-   nil,   nil,   nil,   nil,   nil,   550,   550,   550,   550,   550,
-   550,   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,
-   nil,   550,   nil,   nil,   550,   550,   550,   550,   550,   550,
-   550,   550,   nil,   550,   550,   550,   nil,   550,   550,   nil,
-   550,   550,   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   550,   nil,   nil,   550,   nil,   nil,   550,   550,
-   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,   550,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,   nil,
-   nil,   550,   550,   550,   550,   550,   550,   nil,   nil,   nil,
-   550,   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,
-   nil,   550,   550,   550,   nil,   550,   550,   574,   574,   574,
-   nil,   574,   nil,   nil,   nil,   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,   574,   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,   574,   nil,   574,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   574,   nil,   nil,   nil,   nil,
-   574,   574,   574,   574,   574,   574,   nil,   nil,   nil,   574,
-   574,   nil,   nil,   nil,   nil,   nil,   nil,   574,   nil,   574,
-   574,   574,   574,   nil,   574,   574,   586,   586,   586,   nil,
-   586,   nil,   nil,   nil,   586,   586,   nil,   nil,   nil,   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,   586,   586,   586,   586,   586,   586,
-   nil,   586,   586,   586,   nil,   586,   586,   nil,   586,   586,
-   586,   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,   586,   nil,   nil,
-   586,   nil,   nil,   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,   nil,   nil,   nil,   586,   nil,   nil,   586,
-   586,   586,   nil,   586,   586,   592,   592,   592,   nil,   592,
-   nil,   nil,   nil,   592,   592,   nil,   nil,   nil,   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,   592,   592,   592,   592,   592,   592,   nil,
-   592,   592,   592,   nil,   592,   592,   nil,   592,   592,   592,
-   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,   592,   nil,   nil,   592,
-   nil,   nil,   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,   nil,   nil,   nil,   592,   nil,   nil,   592,   592,
-   592,   nil,   592,   592,   613,   613,   613,   nil,   613,   nil,
-   nil,   nil,   613,   613,   nil,   nil,   nil,   613,   nil,   613,
-   613,   613,   613,   613,   613,   613,   nil,   nil,   nil,   nil,
-   nil,   613,   613,   613,   613,   613,   613,   613,   nil,   nil,
-   613,   nil,   nil,   nil,   nil,   nil,   nil,   613,   nil,   nil,
-   613,   613,   613,   613,   613,   613,   613,   613,   nil,   613,
-   613,   613,   nil,   613,   613,   nil,   613,   613,   613,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   613,   nil,
-   nil,   613,   nil,   nil,   613,   613,   nil,   nil,   613,   nil,
-   nil,   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   613,   nil,   nil,   nil,   nil,   613,   613,   613,
-   613,   613,   613,   nil,   nil,   nil,   613,   613,   nil,   nil,
-   nil,   nil,   nil,   nil,   613,   nil,   nil,   613,   613,   613,
-   nil,   613,   613,   653,   653,   653,   nil,   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,   nil,   653,   nil,   nil,   653,
-   653,   653,   653,   653,   653,   653,   653,   nil,   653,   653,
-   653,   nil,   653,   653,   nil,   653,   653,   653,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   653,   nil,   nil,
-   653,   nil,   nil,   653,   653,   nil,   nil,   653,   nil,   653,
-   nil,   nil,   nil,   653,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   653,   nil,   nil,   nil,   nil,   653,   653,   653,   653,
-   653,   653,   nil,   nil,   nil,   653,   653,   nil,   nil,   nil,
-   nil,   nil,   nil,   653,   nil,   nil,   653,   653,   653,   nil,
-   653,   653,   654,   654,   654,   nil,   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,   nil,   654,   nil,   nil,   654,   654,
-   654,   654,   654,   654,   654,   654,   nil,   654,   654,   654,
-   nil,   654,   654,   nil,   654,   654,   654,   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,   654,   nil,   nil,   654,   nil,   nil,   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,   nil,
-   nil,   nil,   654,   nil,   nil,   654,   654,   654,   nil,   654,
-   654,   655,   655,   655,   nil,   655,   nil,   nil,   nil,   655,
-   655,   nil,   nil,   nil,   655,   nil,   655,   655,   655,   655,
-   655,   655,   655,   nil,   nil,   nil,   nil,   nil,   655,   655,
-   655,   655,   655,   655,   655,   nil,   nil,   655,   nil,   nil,
-   nil,   nil,   nil,   nil,   655,   nil,   nil,   655,   655,   655,
-   655,   655,   655,   655,   655,   655,   655,   655,   655,   nil,
-   655,   655,   nil,   655,   655,   655,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   655,   nil,   nil,   655,   nil,
-   nil,   655,   655,   nil,   nil,   655,   nil,   655,   nil,   655,
-   nil,   655,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   655,
-   nil,   nil,   nil,   nil,   655,   655,   655,   655,   655,   655,
-   nil,   nil,   nil,   655,   655,   nil,   nil,   nil,   nil,   nil,
-   nil,   655,   nil,   655,   655,   655,   655,   nil,   655,   655,
-   658,   658,   658,   nil,   658,   nil,   nil,   nil,   658,   658,
-   nil,   nil,   nil,   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,   658,   658,
-   658,   658,   658,   658,   nil,   658,   658,   658,   nil,   658,
-   658,   nil,   658,   658,   658,   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,   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,   658,   658,   nil,   658,   658,   661,
-   661,   661,   nil,   661,   nil,   nil,   nil,   661,   661,   nil,
-   nil,   nil,   661,   nil,   661,   661,   661,   661,   661,   661,
-   661,   nil,   nil,   nil,   nil,   nil,   661,   661,   661,   661,
-   661,   661,   661,   nil,   nil,   661,   nil,   nil,   nil,   nil,
-   nil,   nil,   661,   nil,   nil,   661,   661,   661,   661,   661,
-   661,   661,   661,   661,   661,   661,   661,   nil,   661,   661,
-   nil,   661,   661,   661,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   661,   nil,   nil,   661,   nil,   nil,   661,
-   661,   nil,   nil,   661,   nil,   661,   nil,   661,   nil,   661,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,
-   nil,   nil,   661,   661,   661,   661,   661,   661,   nil,   nil,
-   nil,   661,   661,   nil,   nil,   nil,   nil,   nil,   nil,   661,
-   nil,   661,   661,   661,   661,   nil,   661,   661,   662,   662,
-   662,   nil,   662,   nil,   nil,   nil,   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,   662,   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,   662,   nil,   662,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,   nil,   nil,
-   nil,   662,   662,   662,   662,   662,   662,   nil,   nil,   nil,
-   662,   662,   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,
-   662,   662,   662,   662,   nil,   662,   662,   663,   663,   663,
-   nil,   663,   nil,   nil,   nil,   663,   663,   nil,   nil,   nil,
-   663,   nil,   663,   663,   663,   663,   663,   663,   663,   nil,
-   nil,   nil,   nil,   nil,   663,   663,   663,   663,   663,   663,
-   663,   nil,   nil,   663,   nil,   nil,   nil,   nil,   nil,   nil,
-   663,   nil,   nil,   663,   663,   663,   663,   663,   663,   663,
-   663,   nil,   663,   663,   663,   nil,   663,   663,   nil,   663,
-   663,   663,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   663,   nil,   nil,   663,   nil,   nil,   663,   663,   nil,
-   nil,   663,   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,   nil,   nil,
-   663,   663,   663,   663,   663,   663,   nil,   nil,   nil,   663,
-   663,   nil,   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,
-   663,   663,   663,   nil,   663,   663,   664,   664,   664,   nil,
-   664,   nil,   nil,   nil,   664,   664,   nil,   nil,   nil,   664,
-   nil,   664,   664,   664,   664,   664,   664,   664,   nil,   nil,
-   nil,   nil,   nil,   664,   664,   664,   664,   664,   664,   664,
-   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,   nil,   664,
-   nil,   nil,   664,   664,   664,   664,   664,   664,   664,   664,
-   nil,   664,   664,   664,   nil,   664,   664,   nil,   664,   664,
-   664,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   664,   nil,   nil,   664,   nil,   nil,   664,   664,   nil,   nil,
-   664,   nil,   nil,   nil,   nil,   nil,   664,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   664,   nil,   nil,   nil,   nil,   664,
-   664,   664,   664,   664,   664,   nil,   nil,   nil,   664,   664,
-   nil,   nil,   nil,   nil,   nil,   nil,   664,   nil,   nil,   664,
-   664,   664,   nil,   664,   664,   669,   669,   669,   nil,   669,
-   nil,   nil,   nil,   669,   669,   nil,   nil,   nil,   669,   nil,
-   669,   669,   669,   669,   669,   669,   669,   nil,   nil,   nil,
-   nil,   nil,   669,   669,   669,   669,   669,   669,   669,   nil,
-   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,   669,   nil,
-   nil,   669,   669,   669,   669,   669,   669,   669,   669,   nil,
-   669,   669,   669,   nil,   669,   669,   nil,   669,   669,   669,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   669,
-   nil,   nil,   669,   nil,   nil,   669,   669,   nil,   nil,   669,
-   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   669,   nil,   nil,   nil,   nil,   669,   669,
-   669,   669,   669,   669,   nil,   nil,   nil,   669,   669,   nil,
-   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,   669,
-   669,   nil,   669,   669,   670,   670,   670,   nil,   670,   nil,
-   nil,   nil,   670,   670,   nil,   nil,   nil,   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,   670,   670,   670,   670,   670,   670,   nil,   670,
-   670,   670,   nil,   670,   670,   nil,   670,   670,   670,   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,   670,   nil,   nil,   670,   nil,
-   nil,   nil,   nil,   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,   nil,   nil,   nil,   670,   nil,   nil,   670,   670,   670,
-   nil,   670,   670,   694,   694,   694,   nil,   694,   nil,   nil,
-   nil,   694,   694,   nil,   nil,   nil,   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,   694,   694,   694,   694,   694,   694,   nil,   694,   694,
-   694,   nil,   694,   694,   nil,   694,   694,   694,   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,   694,   nil,   nil,   694,   nil,   nil,
-   nil,   nil,   nil,   694,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   694,   nil,   nil,   nil,   nil,   694,   694,   694,   694,
-   694,   694,   nil,   nil,   nil,   694,   694,   nil,   nil,   nil,
-   nil,   nil,   nil,   694,   nil,   nil,   694,   694,   694,   nil,
-   694,   694,   700,   700,   700,   nil,   700,   nil,   nil,   nil,
-   700,   700,   nil,   nil,   nil,   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,
-   700,   700,   700,   700,   700,   700,   nil,   700,   700,   700,
-   nil,   700,   700,   nil,   nil,   nil,   700,   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,   700,   nil,   nil,   700,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   700,   700,   700,   700,   700,
-   700,   nil,   nil,   nil,   700,   700,   nil,   nil,   nil,   nil,
-   nil,   nil,   700,   nil,   nil,   700,   700,   700,   nil,   700,
-   700,   711,   711,   711,   nil,   711,   nil,   nil,   nil,   711,
-   711,   nil,   nil,   nil,   711,   nil,   711,   711,   711,   711,
-   711,   711,   711,   nil,   nil,   nil,   nil,   nil,   711,   711,
-   711,   711,   711,   711,   711,   nil,   nil,   711,   nil,   nil,
-   nil,   nil,   nil,   nil,   711,   nil,   nil,   711,   711,   711,
-   711,   711,   711,   711,   711,   nil,   711,   711,   711,   nil,
-   711,   711,   nil,   nil,   nil,   711,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   711,   nil,   nil,   711,   nil,
-   nil,   711,   711,   nil,   nil,   711,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   711,   711,   711,   711,   711,   711,
-   nil,   nil,   nil,   711,   711,   nil,   nil,   nil,   nil,   nil,
-   nil,   711,   nil,   nil,   711,   711,   711,   nil,   711,   711,
-   717,   717,   717,   nil,   717,   nil,   nil,   nil,   717,   717,
-   nil,   nil,   nil,   717,   nil,   717,   717,   717,   717,   717,
-   717,   717,   nil,   nil,   nil,   nil,   nil,   717,   717,   717,
-   717,   717,   717,   717,   nil,   nil,   717,   nil,   nil,   nil,
-   nil,   nil,   nil,   717,   nil,   nil,   717,   717,   717,   717,
-   717,   717,   717,   717,   nil,   717,   717,   717,   nil,   717,
-   717,   nil,   717,   717,   717,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   717,   nil,   nil,   717,   nil,   nil,
-   717,   717,   nil,   nil,   717,   nil,   717,   nil,   nil,   nil,
-   717,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   717,   nil,
-   nil,   nil,   nil,   717,   717,   717,   717,   717,   717,   nil,
-   nil,   nil,   717,   717,   nil,   nil,   nil,   nil,   nil,   nil,
-   717,   nil,   nil,   717,   717,   717,   nil,   717,   717,   722,
-   722,   722,   nil,   722,   nil,   nil,   nil,   722,   722,   nil,
-   nil,   nil,   722,   nil,   722,   722,   722,   722,   722,   722,
-   722,   nil,   nil,   nil,   nil,   nil,   722,   722,   722,   722,
-   722,   722,   722,   nil,   nil,   722,   nil,   nil,   nil,   nil,
-   nil,   nil,   722,   nil,   nil,   722,   722,   722,   722,   722,
-   722,   722,   722,   722,   722,   722,   722,   nil,   722,   722,
-   nil,   722,   722,   722,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   722,   nil,   nil,   722,   nil,   nil,   722,
-   722,   nil,   nil,   722,   nil,   722,   nil,   nil,   nil,   722,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   722,   nil,   nil,
-   nil,   nil,   722,   722,   722,   722,   722,   722,   nil,   nil,
-   nil,   722,   722,   nil,   nil,   nil,   nil,   nil,   nil,   722,
-   nil,   722,   722,   722,   722,   nil,   722,   722,   725,   725,
-   725,   nil,   725,   nil,   nil,   nil,   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,   725,   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,   725,   nil,   nil,   nil,
-   nil,   725,   725,   725,   725,   725,   725,   nil,   nil,   nil,
-   725,   725,   nil,   nil,   nil,   nil,   nil,   nil,   725,   nil,
-   725,   725,   725,   725,   nil,   725,   725,   739,   739,   739,
-   nil,   739,   nil,   nil,   nil,   739,   739,   nil,   nil,   nil,
-   739,   nil,   739,   739,   739,   739,   739,   739,   739,   nil,
-   nil,   nil,   nil,   nil,   739,   739,   739,   739,   739,   739,
-   739,   nil,   nil,   739,   nil,   nil,   nil,   nil,   nil,   nil,
-   739,   nil,   nil,   739,   739,   739,   739,   739,   739,   739,
-   739,   nil,   739,   739,   739,   nil,   739,   739,   nil,   739,
-   739,   739,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   739,   nil,   nil,   739,   nil,   nil,   739,   739,   nil,
-   nil,   739,   nil,   739,   nil,   nil,   nil,   739,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   739,   nil,   nil,   nil,   nil,
-   739,   739,   739,   739,   739,   739,   nil,   nil,   nil,   739,
-   739,   nil,   nil,   nil,   nil,   nil,   nil,   739,   nil,   nil,
-   739,   739,   739,   nil,   739,   739,   751,   751,   751,   nil,
-   751,   nil,   nil,   nil,   751,   751,   nil,   nil,   nil,   751,
-   nil,   751,   751,   751,   751,   751,   751,   751,   nil,   nil,
-   nil,   nil,   nil,   751,   751,   751,   751,   751,   751,   751,
-   nil,   nil,   751,   nil,   nil,   nil,   nil,   nil,   nil,   751,
-   nil,   nil,   751,   751,   751,   751,   751,   751,   751,   751,
-   751,   751,   751,   751,   nil,   751,   751,   nil,   751,   751,
-   751,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   751,   nil,   nil,   751,   nil,   nil,   751,   751,   nil,   nil,
-   751,   nil,   751,   nil,   751,   nil,   751,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   751,   nil,   nil,   nil,   nil,   751,
-   751,   751,   751,   751,   751,   nil,   nil,   nil,   751,   751,
-   nil,   nil,   nil,   nil,   nil,   nil,   751,   nil,   751,   751,
-   751,   751,   nil,   751,   751,   774,   774,   774,   nil,   774,
-   nil,   nil,   nil,   774,   774,   nil,   nil,   nil,   774,   nil,
-   774,   774,   774,   774,   774,   774,   774,   nil,   nil,   nil,
-   nil,   nil,   774,   774,   774,   774,   774,   774,   774,   nil,
-   nil,   774,   nil,   nil,   nil,   nil,   nil,   nil,   774,   nil,
-   nil,   774,   774,   774,   774,   774,   774,   774,   774,   nil,
-   774,   774,   774,   nil,   774,   774,   nil,   774,   774,   774,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   774,
-   nil,   nil,   774,   nil,   nil,   774,   774,   nil,   nil,   774,
-   nil,   nil,   nil,   nil,   nil,   774,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   774,   nil,   nil,   nil,   nil,   774,   774,
-   774,   774,   774,   774,   nil,   nil,   nil,   774,   774,   nil,
-   nil,   nil,   nil,   nil,   nil,   774,   nil,   nil,   774,   774,
-   774,   nil,   774,   774,   796,   796,   796,   nil,   796,   nil,
-   nil,   nil,   796,   796,   nil,   nil,   nil,   796,   nil,   796,
-   796,   796,   796,   796,   796,   796,   nil,   nil,   nil,   nil,
-   nil,   796,   796,   796,   796,   796,   796,   796,   nil,   nil,
-   796,   nil,   nil,   nil,   nil,   nil,   nil,   796,   nil,   nil,
-   796,   796,   796,   796,   796,   796,   796,   796,   nil,   796,
-   796,   796,   nil,   796,   796,   nil,   796,   796,   796,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   796,   nil,
-   nil,   796,   nil,   nil,   796,   796,   nil,   nil,   796,   nil,
-   nil,   nil,   nil,   nil,   796,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   796,   nil,   nil,   nil,   nil,   796,   796,   796,
-   796,   796,   796,   nil,   nil,   nil,   796,   796,   nil,   nil,
-   nil,   nil,   nil,   nil,   796,   nil,   nil,   796,   796,   796,
-   nil,   796,   796,   803,   803,   803,   nil,   803,   nil,   nil,
-   nil,   803,   803,   nil,   nil,   nil,   803,   nil,   803,   803,
-   803,   803,   803,   803,   803,   nil,   nil,   nil,   nil,   nil,
-   803,   803,   803,   803,   803,   803,   803,   nil,   nil,   803,
-   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,   803,
-   803,   803,   803,   803,   803,   803,   803,   nil,   803,   803,
-   803,   nil,   803,   803,   nil,   803,   803,   803,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,
-   803,   nil,   nil,   803,   803,   nil,   nil,   803,   nil,   nil,
-   nil,   nil,   nil,   803,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   803,   nil,   nil,   nil,   nil,   803,   803,   803,   803,
-   803,   803,   nil,   nil,   nil,   803,   803,   nil,   nil,   nil,
-   nil,   nil,   nil,   803,   nil,   nil,   803,   803,   803,   nil,
-   803,   803,   816,   816,   816,   nil,   816,   nil,   nil,   nil,
-   816,   816,   nil,   nil,   nil,   816,   nil,   816,   816,   816,
-   816,   816,   816,   816,   nil,   nil,   nil,   nil,   nil,   816,
-   816,   816,   816,   816,   816,   816,   nil,   nil,   816,   nil,
-   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   816,   816,
-   816,   816,   816,   816,   816,   816,   nil,   816,   816,   816,
-   nil,   816,   816,   nil,   816,   816,   816,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   816,
-   nil,   nil,   816,   816,   nil,   nil,   816,   nil,   nil,   nil,
-   nil,   nil,   816,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   816,   nil,   nil,   nil,   nil,   816,   816,   816,   816,   816,
-   816,   nil,   nil,   nil,   816,   816,   nil,   nil,   nil,   nil,
-   nil,   nil,   816,   nil,   nil,   816,   816,   816,   nil,   816,
-   816,   817,   817,   817,   nil,   817,   nil,   nil,   nil,   817,
-   817,   nil,   nil,   nil,   817,   nil,   817,   817,   817,   817,
-   817,   817,   817,   nil,   nil,   nil,   nil,   nil,   817,   817,
-   817,   817,   817,   817,   817,   nil,   nil,   817,   nil,   nil,
-   nil,   nil,   nil,   nil,   817,   nil,   nil,   817,   817,   817,
-   817,   817,   817,   817,   817,   nil,   817,   817,   817,   nil,
-   817,   817,   nil,   817,   817,   817,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   817,   nil,
-   nil,   817,   817,   nil,   nil,   817,   nil,   nil,   nil,   nil,
-   nil,   817,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,
-   nil,   nil,   nil,   nil,   817,   817,   817,   817,   817,   817,
-   nil,   nil,   nil,   817,   817,   nil,   nil,   nil,   nil,   nil,
-   nil,   817,   nil,   nil,   817,   817,   817,   nil,   817,   817,
-   818,   818,   818,   nil,   818,   nil,   nil,   nil,   818,   818,
-   nil,   nil,   nil,   818,   nil,   818,   818,   818,   818,   818,
-   818,   818,   nil,   nil,   nil,   nil,   nil,   818,   818,   818,
-   818,   818,   818,   818,   nil,   nil,   818,   nil,   nil,   nil,
-   nil,   nil,   nil,   818,   nil,   nil,   818,   818,   818,   818,
-   818,   818,   818,   818,   nil,   818,   818,   818,   nil,   818,
-   818,   nil,   818,   818,   818,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   818,   nil,   nil,   818,   nil,   nil,
-   818,   818,   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,
-   818,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   818,   nil,
-   nil,   nil,   nil,   818,   818,   818,   818,   818,   818,   nil,
-   nil,   nil,   818,   818,   nil,   nil,   nil,   nil,   nil,   nil,
-   818,   nil,   nil,   818,   818,   818,   nil,   818,   818,   819,
-   819,   819,   nil,   819,   nil,   nil,   nil,   819,   819,   nil,
-   nil,   nil,   819,   nil,   819,   819,   819,   819,   819,   819,
-   819,   nil,   nil,   nil,   nil,   nil,   819,   819,   819,   819,
-   819,   819,   819,   nil,   nil,   819,   nil,   nil,   nil,   nil,
-   nil,   nil,   819,   nil,   nil,   819,   819,   819,   819,   819,
-   819,   819,   819,   nil,   819,   819,   819,   nil,   819,   819,
-   nil,   819,   819,   819,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   819,   nil,   nil,   819,   nil,   nil,   819,
-   819,   nil,   nil,   819,   nil,   nil,   nil,   nil,   nil,   819,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   819,   nil,   nil,
-   nil,   nil,   819,   819,   819,   819,   819,   819,   nil,   nil,
-   nil,   819,   819,   nil,   nil,   nil,   nil,   nil,   nil,   819,
-   nil,   nil,   819,   819,   819,   nil,   819,   819,   821,   821,
-   821,   nil,   821,   nil,   nil,   nil,   821,   821,   nil,   nil,
-   nil,   821,   nil,   821,   821,   821,   821,   821,   821,   821,
-   nil,   nil,   nil,   nil,   nil,   821,   821,   821,   821,   821,
-   821,   821,   nil,   nil,   821,   nil,   nil,   nil,   nil,   nil,
-   nil,   821,   nil,   nil,   821,   821,   821,   821,   821,   821,
-   821,   821,   nil,   821,   821,   821,   nil,   821,   821,   nil,
-   821,   821,   821,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   821,   nil,   nil,   821,   nil,   nil,   821,   821,
-   nil,   nil,   821,   nil,   nil,   nil,   nil,   nil,   821,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,   nil,
-   nil,   821,   821,   821,   821,   821,   821,   nil,   nil,   nil,
-   821,   821,   nil,   nil,   nil,   nil,   nil,   nil,   821,   nil,
-   nil,   821,   821,   821,   nil,   821,   821,   853,   853,   853,
-   nil,   853,   nil,   nil,   nil,   853,   853,   nil,   nil,   nil,
-   853,   nil,   853,   853,   853,   853,   853,   853,   853,   nil,
-   nil,   nil,   nil,   nil,   853,   853,   853,   853,   853,   853,
-   853,   nil,   nil,   853,   nil,   nil,   nil,   nil,   nil,   nil,
-   853,   nil,   nil,   853,   853,   853,   853,   853,   853,   853,
-   853,   nil,   853,   853,   853,   nil,   853,   853,   nil,   853,
-   853,   853,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   853,   nil,   nil,   853,   nil,   nil,   853,   853,   nil,
-   nil,   853,   nil,   nil,   nil,   nil,   nil,   853,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   853,   nil,   nil,   nil,   nil,
-   853,   853,   853,   853,   853,   853,   nil,   nil,   nil,   853,
-   853,   nil,   nil,   nil,   nil,   nil,   nil,   853,   nil,   nil,
-   853,   853,   853,   nil,   853,   853,   860,   860,   860,   nil,
-   860,   nil,   nil,   nil,   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,   860,   nil,   nil,   nil,   nil,   860,
-   860,   860,   860,   860,   860,   nil,   nil,   nil,   860,   860,
-   nil,   nil,   nil,   nil,   nil,   nil,   860,   nil,   nil,   860,
-   860,   860,   nil,   860,   860,   869,   869,   869,   nil,   869,
-   nil,   nil,   nil,   869,   869,   nil,   nil,   nil,   869,   nil,
-   869,   869,   869,   869,   869,   869,   869,   nil,   nil,   nil,
-   nil,   nil,   869,   869,   869,   869,   869,   869,   869,   nil,
-   nil,   869,   nil,   nil,   nil,   nil,   nil,   nil,   869,   nil,
-   nil,   869,   869,   869,   869,   869,   869,   869,   869,   nil,
-   869,   869,   869,   nil,   869,   869,   nil,   869,   869,   869,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   869,
-   nil,   nil,   869,   nil,   nil,   869,   869,   nil,   nil,   869,
-   nil,   nil,   nil,   nil,   nil,   869,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   869,   nil,   nil,   nil,   nil,   869,   869,
-   869,   869,   869,   869,   nil,   nil,   nil,   869,   869,   nil,
-   nil,   nil,   nil,   nil,   nil,   869,   nil,   nil,   869,   869,
-   869,   nil,   869,   869,   911,   911,   911,   nil,   911,   nil,
-   nil,   nil,   911,   911,   nil,   nil,   nil,   911,   nil,   911,
-   911,   911,   911,   911,   911,   911,   nil,   nil,   nil,   nil,
-   nil,   911,   911,   911,   911,   911,   911,   911,   nil,   nil,
-   911,   nil,   nil,   nil,   nil,   nil,   nil,   911,   nil,   nil,
-   911,   911,   911,   911,   911,   911,   911,   911,   911,   911,
-   911,   911,   nil,   911,   911,   nil,   911,   911,   911,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   911,   nil,
-   nil,   911,   nil,   nil,   911,   911,   nil,   nil,   911,   nil,
-   nil,   nil,   911,   nil,   911,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   911,   nil,   nil,   nil,   nil,   911,   911,   911,
-   911,   911,   911,   nil,   nil,   nil,   911,   911,   nil,   nil,
-   nil,   nil,   nil,   nil,   911,   nil,   911,   911,   911,   911,
-   nil,   911,   911,   912,   912,   912,   nil,   912,   nil,   nil,
-   nil,   912,   912,   nil,   nil,   nil,   912,   nil,   912,   912,
-   912,   912,   912,   912,   912,   nil,   nil,   nil,   nil,   nil,
-   912,   912,   912,   912,   912,   912,   912,   nil,   nil,   912,
-   nil,   nil,   nil,   nil,   nil,   nil,   912,   nil,   nil,   912,
-   912,   912,   912,   912,   912,   912,   912,   nil,   912,   912,
-   912,   nil,   912,   912,   nil,   912,   912,   912,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   912,   nil,   nil,
-   912,   nil,   nil,   912,   912,   nil,   nil,   912,   nil,   nil,
-   nil,   nil,   nil,   912,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   912,   nil,   nil,   nil,   nil,   912,   912,   912,   912,
-   912,   912,   nil,   nil,   nil,   912,   912,   nil,   nil,   nil,
-   nil,   nil,   nil,   912,   nil,   nil,   912,   912,   912,   nil,
-   912,   912,   924,   924,   924,   nil,   924,   nil,   nil,   nil,
-   924,   924,   nil,   nil,   nil,   924,   nil,   924,   924,   924,
-   924,   924,   924,   924,   nil,   nil,   nil,   nil,   nil,   924,
-   924,   924,   924,   924,   924,   924,   nil,   nil,   924,   nil,
-   nil,   nil,   nil,   nil,   nil,   924,   nil,   nil,   924,   924,
-   924,   924,   924,   924,   924,   924,   nil,   924,   924,   924,
-   nil,   924,   924,   nil,   nil,   nil,   924,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   924,   nil,   nil,   924,
-   nil,   nil,   924,   924,   nil,   nil,   924,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   924,   924,   924,   924,   924,
-   924,   nil,   nil,   nil,   924,   924,   nil,   nil,   nil,   nil,
-   nil,   nil,   924,   nil,   nil,   924,   924,   924,   nil,   924,
-   924,   933,   933,   933,   nil,   933,   nil,   nil,   nil,   933,
-   933,   nil,   nil,   nil,   933,   nil,   933,   933,   933,   933,
-   933,   933,   933,   nil,   nil,   nil,   nil,   nil,   933,   933,
-   933,   933,   933,   933,   933,   nil,   nil,   933,   nil,   nil,
-   nil,   nil,   nil,   nil,   933,   nil,   nil,   933,   933,   933,
-   933,   933,   933,   933,   933,   nil,   933,   933,   933,   nil,
-   933,   933,   nil,   nil,   nil,   933,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   933,   nil,   nil,   933,   nil,
-   nil,   933,   933,   nil,   nil,   933,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   933,   933,   933,   933,   933,   933,
-   nil,   nil,   nil,   933,   933,   nil,   nil,   nil,   nil,   nil,
-   nil,   933,   nil,   nil,   933,   933,   933,   nil,   933,   933,
-   941,   941,   941,   nil,   941,   nil,   nil,   nil,   941,   941,
-   nil,   nil,   nil,   941,   nil,   941,   941,   941,   941,   941,
-   941,   941,   nil,   nil,   nil,   nil,   nil,   941,   941,   941,
-   941,   941,   941,   941,   nil,   nil,   941,   nil,   nil,   nil,
-   nil,   nil,   nil,   941,   nil,   nil,   941,   941,   941,   941,
-   941,   941,   941,   941,   nil,   941,   941,   941,   nil,   941,
-   941,   nil,   941,   941,   941,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   941,   nil,   nil,   941,   nil,   nil,
-   941,   941,   nil,   nil,   941,   nil,   941,   nil,   nil,   nil,
-   941,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   941,   nil,
-   nil,   nil,   nil,   941,   941,   941,   941,   941,   941,   nil,
-   nil,   nil,   941,   941,   nil,   nil,   nil,   nil,   nil,   nil,
-   941,   nil,   nil,   941,   941,   941,   nil,   941,   941,   984,
-   984,   984,   nil,   984,   nil,   nil,   nil,   984,   984,   nil,
-   nil,   nil,   984,   nil,   984,   984,   984,   984,   984,   984,
-   984,   nil,   nil,   nil,   nil,   nil,   984,   984,   984,   984,
-   984,   984,   984,   nil,   nil,   984,   nil,   nil,   nil,   nil,
-   nil,   nil,   984,   nil,   nil,   984,   984,   984,   984,   984,
-   984,   984,   984,   nil,   984,   984,   984,   nil,   984,   984,
-   nil,   nil,   nil,   984,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   984,   nil,   nil,   984,   nil,   nil,   984,
-   984,   nil,   nil,   984,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   984,   984,   984,   984,   984,   984,   nil,   nil,
-   nil,   984,   984,   nil,   nil,   nil,   nil,   nil,   nil,   984,
-   nil,   nil,   984,   984,   984,   nil,   984,   984,   998,   998,
-   998,   nil,   998,   nil,   nil,   nil,   998,   998,   nil,   nil,
-   nil,   998,   nil,   998,   998,   998,   998,   998,   998,   998,
-   nil,   nil,   nil,   nil,   nil,   998,   998,   998,   998,   998,
-   998,   998,   nil,   nil,   998,   nil,   nil,   nil,   nil,   nil,
-   nil,   998,   nil,   nil,   998,   998,   998,   998,   998,   998,
-   998,   998,   nil,   998,   998,   998,   nil,   998,   998,   nil,
-   998,   998,   998,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   998,   nil,   nil,   998,   nil,   nil,   998,   998,
-   nil,   nil,   998,   nil,   nil,   nil,   nil,   nil,   998,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   998,   nil,   nil,   nil,
-   nil,   998,   998,   998,   998,   998,   998,   nil,   nil,   nil,
-   998,   998,   nil,   nil,   nil,   nil,   nil,   nil,   998,   nil,
-   nil,   998,   998,   998,   nil,   998,   998,  1031,  1031,  1031,
-   nil,  1031,   nil,   nil,   nil,  1031,  1031,   nil,   nil,   nil,
-  1031,   nil,  1031,  1031,  1031,  1031,  1031,  1031,  1031,   nil,
-   nil,   nil,   nil,   nil,  1031,  1031,  1031,  1031,  1031,  1031,
-  1031,   nil,   nil,  1031,   nil,   nil,   nil,   nil,   nil,   nil,
-  1031,   nil,   nil,  1031,  1031,  1031,  1031,  1031,  1031,  1031,
-  1031,  1031,  1031,  1031,  1031,   nil,  1031,  1031,   nil,  1031,
-  1031,  1031,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1031,   nil,   nil,  1031,   nil,   nil,  1031,  1031,   nil,
-   nil,  1031,   nil,  1031,   nil,  1031,   nil,  1031,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1031,   nil,   nil,   nil,   nil,
-  1031,  1031,  1031,  1031,  1031,  1031,   nil,   nil,   nil,  1031,
-  1031,   nil,   nil,   nil,   nil,   nil,   nil,  1031,   nil,  1031,
-  1031,  1031,  1031,   nil,  1031,  1031,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,   nil,   nil,   nil,   nil,   nil,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,   nil,    11,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
-   nil,    11,    11,    11,    11,    11,    11,    11,   nil,   nil,
-    11,    11,   nil,   nil,   nil,    11,    11,    11,    11,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,   nil,   nil,    11,    11,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,   nil,   nil,   nil,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,   nil,
-   nil,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
-    12,   nil,   nil,    12,    12,   nil,   nil,   nil,    12,    12,
-    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
-   nil,    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    12,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,   nil,   nil,   nil,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,   nil,
-   nil,   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,   nil,    75,   nil,   nil,
-   nil,   nil,   nil,   nil,    75,    75,   nil,    75,    75,    75,
-    75,    75,    75,    75,   nil,   nil,    75,    75,   nil,   nil,
-   nil,    75,    75,    75,    75,   nil,   nil,   nil,   nil,   nil,
-    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,
-   nil,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    75,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
-   nil,   nil,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   nil,   nil,   nil,   nil,   nil,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
-   105,   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,
-   105,   105,   105,   105,   105,   105,   105,   nil,   nil,   105,
-   105,   nil,   nil,   nil,   105,   105,   105,   105,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,   105,   nil,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   nil,   nil,   105,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,   420,   420,
-   420,   420,   420,   420,   420,   420,   420,   420,   420,   420,
-   420,   420,   420,   420,   420,   420,   420,   420,   420,   420,
-   420,   420,   nil,   nil,   nil,   420,   420,   420,   420,   420,
-   420,   420,   420,   420,   420,   nil,   nil,   nil,   nil,   nil,
-   420,   420,   420,   420,   420,   420,   420,   420,   420,   nil,
-   nil,   420,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   420,   420,   nil,   420,   420,   420,   420,   420,   420,   420,
-   nil,   nil,   420,   420,   nil,   nil,   nil,   420,   420,   420,
-   420,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   420,   420,   nil,   420,   420,   420,
-   420,   420,   420,   420,   420,   420,   420,   420,   nil,   nil,
-   420,   420,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   420,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   420,   650,   650,   650,   650,   650,   650,   650,   650,   650,
-   650,   650,   650,   650,   650,   650,   650,   650,   650,   650,
-   650,   650,   650,   650,   650,   nil,   nil,   nil,   650,   650,
-   650,   650,   650,   650,   650,   650,   650,   650,   nil,   nil,
-   nil,   nil,   nil,   650,   650,   650,   650,   650,   650,   650,
-   650,   650,   nil,   nil,   650,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   650,   650,   nil,   650,   650,   650,   650,
-   650,   650,   650,   nil,   nil,   650,   650,   nil,   nil,   nil,
-   650,   650,   650,   650,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   650,   650,   nil,
-   650,   650,   650,   650,   650,   650,   650,   650,   650,   650,
-   650,   nil,   nil,   650,   650,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   650,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   650,   760,   760,   760,   760,   760,   760,
-   760,   760,   760,   760,   760,   760,   760,   760,   760,   760,
-   760,   760,   760,   760,   760,   760,   760,   760,   nil,   nil,
-   nil,   760,   760,   760,   760,   760,   760,   760,   760,   760,
-   760,   nil,   nil,   nil,   nil,   nil,   760,   760,   760,   760,
-   760,   760,   760,   760,   760,   nil,   nil,   760,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   760,   760,   nil,   760,
-   760,   760,   760,   760,   760,   760,   nil,   nil,   760,   760,
-   nil,   nil,   nil,   760,   760,   760,   760,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   760,   760,   nil,   760,   760,   760,   760,   760,   760,   760,
-   760,   760,   760,   760,   nil,   nil,   760,   nil,   nil,   nil,
-   nil,   228,   228,   nil,   nil,   228,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   228,   228,   760,   228,   228,   228,
-   228,   228,   228,   228,   nil,   nil,   228,   228,   nil,   nil,
-   nil,   228,   228,   228,   228,   nil,   nil,   nil,   nil,   nil,
-   228,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   228,   228,
-   nil,   228,   228,   228,   228,   228,   228,   228,   228,   228,
-   228,   228,   nil,   nil,   228,   nil,   nil,   nil,   nil,   229,
-   229,   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   229,   229,   228,   229,   229,   229,   229,   229,
-   229,   229,   nil,   nil,   229,   229,   nil,   nil,   nil,   229,
-   229,   229,   229,   nil,   nil,   nil,   nil,   nil,   229,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,   nil,   229,
-   229,   229,   229,   229,   229,   229,   229,   229,   229,   229,
-   nil,   nil,   229,   nil,   nil,   nil,   nil,   471,   471,   nil,
-   nil,   471,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   471,   471,   229,   471,   471,   471,   471,   471,   471,   471,
-   nil,   nil,   471,   471,   nil,   nil,   nil,   471,   471,   471,
-   471,   nil,   nil,   nil,   nil,   nil,   471,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   471,   471,   nil,   471,   471,   471,
-   471,   471,   471,   471,   471,   471,   471,   471,   nil,   nil,
-   471,   nil,   nil,   nil,   nil,   472,   472,   nil,   nil,   472,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   472,   472,
-   471,   472,   472,   472,   472,   472,   472,   472,   nil,   nil,
-   472,   472,   nil,   nil,   nil,   472,   472,   472,   472,   nil,
-   nil,   nil,   nil,   nil,   472,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   472,   472,   nil,   472,   472,   472,   472,   472,
-   472,   472,   472,   472,   472,   472,   nil,   nil,   472,   nil,
-   nil,   nil,   nil,   536,   536,   nil,   nil,   536,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   536,   536,   472,   536,
-   536,   536,   536,   536,   536,   536,   nil,   nil,   536,   536,
-   nil,   nil,   nil,   536,   536,   536,   536,   nil,   nil,   nil,
-   nil,   nil,   536,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   536,   536,   nil,   536,   536,   536,   536,   536,   536,   536,
-   536,   536,   536,   536,   nil,   nil,   536,   nil,   nil,   nil,
-   nil,   537,   537,   nil,   nil,   537,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   537,   537,   536,   537,   537,   537,
-   537,   537,   537,   537,   nil,   nil,   537,   537,   nil,   nil,
-   nil,   537,   537,   537,   537,   nil,   nil,   nil,   nil,   nil,
-   537,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   537,   537,
-   nil,   537,   537,   537,   537,   537,   537,   537,   537,   537,
-   537,   537,   nil,   nil,   537,   nil,   nil,   nil,   nil,   546,
-   546,   nil,   nil,   546,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   546,   546,   537,   546,   546,   546,   546,   546,
-   546,   546,   nil,   nil,   546,   546,   nil,   nil,   nil,   546,
-   546,   546,   546,   nil,   nil,   nil,   nil,   nil,   546,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   546,   546,   nil,   546,
-   546,   546,   546,   546,   546,   546,   546,   546,   546,   546,
-   nil,   nil,   546,   nil,   nil,   nil,   nil,   547,   547,   nil,
-   nil,   547,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   547,   547,   546,   547,   547,   547,   547,   547,   547,   547,
-   nil,   nil,   547,   547,   nil,   nil,   nil,   547,   547,   547,
-   547,   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   547,   547,   nil,   547,   547,   547,
-   547,   547,   547,   547,   547,   547,   547,   547,   nil,   nil,
-   547,   nil,   nil,   nil,   nil,   575,   575,   nil,   nil,   575,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   575,   575,
-   547,   575,   575,   575,   575,   575,   575,   575,   nil,   nil,
-   575,   575,   nil,   nil,   nil,   575,   575,   575,   575,   nil,
-   nil,   nil,   nil,   nil,   575,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   575,   575,   nil,   575,   575,   575,   575,   575,
-   575,   575,   575,   575,   575,   575,   nil,   nil,   575,   nil,
-   nil,   nil,   nil,   576,   576,   nil,   nil,   576,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   576,   576,   575,   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,   nil,   nil,   576,   nil,   nil,   nil,
-   nil,   656,   656,   nil,   nil,   656,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   656,   656,   576,   656,   656,   656,
-   656,   656,   656,   656,   nil,   nil,   656,   656,   nil,   nil,
-   nil,   656,   656,   656,   656,   nil,   nil,   nil,   nil,   nil,
-   656,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   656,   656,
-   nil,   656,   656,   656,   656,   656,   656,   656,   656,   656,
-   656,   656,   nil,   nil,   656,   nil,   nil,   nil,   nil,   657,
-   657,   nil,   nil,   657,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   657,   657,   656,   657,   657,   657,   657,   657,
-   657,   657,   nil,   nil,   657,   657,   nil,   nil,   nil,   657,
-   657,   657,   657,   nil,   nil,   nil,   nil,   nil,   657,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   657,   657,   nil,   657,
-   657,   657,   657,   657,   657,   657,   657,   657,   657,   657,
-   nil,   nil,   657,   nil,   nil,   nil,   nil,   749,   749,   nil,
-   nil,   749,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   749,   749,   657,   749,   749,   749,   749,   749,   749,   749,
-   nil,   nil,   749,   749,   nil,   nil,   nil,   749,   749,   749,
-   749,   nil,   nil,   nil,   nil,   nil,   749,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   749,   749,   nil,   749,   749,   749,
-   749,   749,   749,   749,   749,   749,   749,   749,   nil,   nil,
-   749,   nil,   nil,   nil,   nil,   750,   750,   nil,   nil,   750,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   750,   750,
-   749,   750,   750,   750,   750,   750,   750,   750,   nil,   nil,
-   750,   750,   nil,   nil,   nil,   750,   750,   750,   750,   nil,
-   nil,   nil,   nil,   nil,   750,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   750,   750,   nil,   750,   750,   750,   750,   750,
-   750,   750,   750,   750,   750,   750,   nil,   978,   750,   978,
-   978,   978,   978,   978,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   978,   nil,   nil,   nil,   nil,   750,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   978,  1027,  1027,   nil,   nil,
-  1027,   nil,   nil,   nil,   978,   978,   978,   978,   nil,  1027,
-  1027,   nil,  1027,  1027,  1027,  1027,  1027,  1027,  1027,   nil,
-   nil,  1027,  1027,   nil,   nil,   nil,  1027,  1027,  1027,  1027,
-   nil,   nil,   nil,   nil,   nil,  1027,   nil,   nil,   nil,   nil,
-   978,   nil,   nil,  1027,  1027,   nil,  1027,  1027,  1027,  1027,
-  1027,  1027,  1027,  1027,  1027,  1027,  1027,   nil,   nil,  1027,
-   nil,   nil,   nil,   nil,  1032,  1032,   nil,   nil,  1032,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1032,  1032,  1027,
-  1032,  1032,  1032,  1032,  1032,  1032,  1032,   nil,   nil,  1032,
-  1032,   nil,   nil,   nil,  1032,  1032,  1032,  1032,   nil,   nil,
-   nil,   nil,   nil,  1032,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1032,  1032,   nil,  1032,  1032,  1032,  1032,  1032,  1032,
-  1032,  1032,  1032,  1032,  1032,   nil,   nil,  1032,   nil,   nil,
-   nil,   nil,  1033,  1033,   nil,   nil,  1033,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1033,  1033,  1032,  1033,  1033,
-  1033,  1033,  1033,  1033,  1033,   nil,   nil,  1033,  1033,   nil,
-   nil,   nil,  1033,  1033,  1033,  1033,   nil,   nil,   nil,   nil,
-   nil,  1033,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1033,
-  1033,   nil,  1033,  1033,  1033,  1033,  1033,  1033,  1033,  1033,
-  1033,  1033,  1033,   nil,  1051,  1033,  1051,  1051,  1051,  1051,
-  1051,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1051,   nil,   nil,   nil,   nil,  1033,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1051,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1051,  1051,  1051,  1051,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1051 ]
-
-racc_action_pointer = [
-   nil,    15,  1066,    34,   nil,   435,   nil,   nil,  5125,   797,
-   nil, 23544, 23677,   -67,   nil,   -85,   -56,   493,     9,   100,
-   147,   nil,   -80,  5264,  1346,    87,   nil,   -34,   nil,    75,
-  5398,  5526,  5656,  5795,  5934,   nil,  1206,  6073,  6212,   nil,
-    66,   181,   259,   197,   185,  6351,  6490,   577,  6629,   170,
-   439,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  6763,   nil,  6900,   nil,   nil,   -22,   nil,  7039,  7178,   nil,
-   nil,  7317,  7456,   231,   nil, 23810,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    97,   nil,   nil,   nil,   nil,   nil,   nil,   186,
-   198,   200,   220,   nil,   nil, 23943,   nil,   nil,   nil,   nil,
-   nil,   nil,     0,   nil,   nil,   132,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  7595,   nil,
-   nil,   nil,   nil,  7734,  7873,  8012,  8151,  8290,   247,   nil,
-   492,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   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,  1346,  8429,  8568,  8707,  8846,  8985,  9124, 24410, 24478,
-   nil,  9263,  9402,  9541,   nil,   nil,   536,   -81,    83,   369,
-   155,   312,   371,   nil,  9680,  1486,   388,  9819,  9958, 10097,
- 10236, 10375, 10514, 10653, 10792, 10931, 11070, 11209, 11348, 11487,
- 11626, 11765, 11904, 12043, 12182, 12321, 12460, 12599, 12738,   nil,
-   nil,   nil,   nil, 12877,   nil,   nil,   nil, 16329,   nil,   nil,
-   385, 13016, 13155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil, 13294,   nil,  1486,   nil,   355,   357,   nil, 13433,   400,
- 13572,   nil, 13711, 13850,   nil,   nil,   461,   nil,   nil, 13989,
-  1191,   nil,   352,  1626,   370,   429,   402, 14128,  1766,   620,
-   725,   726,   484,   764,   nil,   457,   447,    77,   nil,   nil,
-   nil,   496,   187,   465, 14267,   nil,   289,   542,   795,   nil,
-   551, 14406,   nil, 14545,  1906,  1331,   494, 14684, 14823,   nil,
-   526,   -11,   -10, 14962,  2046,  2186,   512,   608,   497,     5,
-     6,   796,   598,     7,   647,   nil,   nil, 15101,   nil, 15240,
-   103,   113,   203,   213,   230,   233,   302,   335,   368,   nil,
-   372,   nil,   nil,   nil,   nil,   459,   nil,   262,   nil,   306,
-   nil,   133,   nil,   572,   326,   nil,   597,   339,   nil,   600,
-   -42,   nil,   601,   -41,   nil,   370,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
- 24076,   nil,   nil,   nil,   nil,   613,   nil,   nil,   620, 15379,
-   621,   nil,   nil,   610,   nil,   800,   222,   nil,   nil,   nil,
-  1066,   nil,   nil,   nil,   nil,   nil,  1206,   630,   nil,   nil,
-   629,   631,   313,   356,  6900,   nil,   nil,   nil,   264,   396,
-   682,   nil,   nil, 15513, 15645,   nil,   nil,   nil,   -16,   nil,
-   691, 24546, 24614, 15778,   269, 15917, 16056, 16195,  2186,  2326,
-   341,   714,   716,   717,   718,   727,   955,  3586,  3610,  2466,
-  2606,  2746,  2886,  3026,  3166,   -50,   485,  3306,  3446,  1626,
-   742,   786,   nil, 16329,   nil,   nil,   nil,   nil,   670,   nil,
-   nil,   nil,   671,   nil,   nil, 16455,   nil,   nil, 16594,   nil,
- 16733,   nil,   nil,   nil,   nil, 16872,  1471,   695,   688,   686,
-   nil,   nil,   687, 17011,   701, 17150, 24682, 24750,   850,   740,
-   nil, 17289,   715,   nil, 17428, 17567, 24818, 24886,   872,  1766,
- 17706,   843,   843,   728,   nil,   nil,   392,   417,   760,   743,
-   nil,   451,   794,  2326,   872,   nil,  2466,    24,   878,   879,
-   876,   893,   nil,   nil, 17845, 24954, 25022,     8,   nil,   172,
-   267,   323,   nil,   851,   nil,   805, 17984,   nil,   826,   nil,
-   nil,   nil, 18123,   nil,   591,   nil,   793,   796,   nil,   797,
-   798,   817,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   805,
-   528,   nil,   nil, 18262,   nil,   nil,   nil,   907,   nil,   nil,
-   nil,   911,   nil,   nil,   917,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   172,   nil,   nil,   191,
-   nil,   nil,   nil,   839,   nil,   nil,   840,   nil,  2606,   nil,
- 24209,   nil,   845, 18401, 18540, 18679, 25090, 25158, 18818,   390,
-   885, 18957, 19096, 19235, 19374,   885,   nil,   nil,   nil, 19513,
- 19652,   888,   nil,   nil,   nil,   273,   275,   528,   660,   860,
-   861,   nil,   105,   963,    64,   nil,   nil,   893,   nil,  1001,
-   nil,   884,   nil,   926, 19791,   nil,   nil,   nil,   nil,  -104,
- 19930,   887,   nil,   893,   127,   153,   930,   304,   894,   934,
-   897, 20069,   nil,   967,   -14,   178,   nil, 20208,   nil,   nil,
-   nil,   nil, 20347,   nil,   nil, 20486,   nil,   nil,   nil,   638,
-   nil,  1031,   nil,   nil,   nil,   nil,   nil,  1038,   nil, 20625,
-   923,    24,    28,    93,   138,  2746,   nil,   863,   nil, 25226,
- 25294, 20764,   nil,   nil,   nil,   627,  2886,  3026,   723,   853,
- 24342,    56,    30,   926,   219,   nil,   nil,   582,  5362,   nil,
-  5490,   nil,  5308,   nil, 20903,   nil,   624,   nil,   934,   935,
-   860,   939,   nil,   nil,   nil,   nil,  1049,  3166,   nil,   nil,
-   nil,   nil,   nil,   960,   nil,   945, 21042,   952,   310,   347,
-   792,   924,  1906, 21181,   nil,   950,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil, 21320, 21459, 21598, 21737,
-   364, 21876,   nil,   nil,  6727,   nil,  3306,   nil,   nil,   967,
-   nil,   115,   nil,   nil,   nil,   961,   205,   nil,   nil,   nil,
-   nil,   nil,   nil,  3446,   nil,   963,  1005,   nil,   nil,   536,
-  1085,   nil,   nil, 22015,   nil,  3586,  1096,   nil,   nil,   nil,
- 22154,    -7,    35,  1113,   329,   927,   nil,  1000,  3726, 22293,
-   585,  1120,  1139,  1027,   615,   nil,   nil,   nil,  3866,  4006,
-  1025,  1031,  1032,   nil,   nil,   nil,  1037,  1049,   nil,  1050,
-  1059,   nil,  1060,   nil,   nil,  1066,   664,     9,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1056,   nil,  1070,   369,   nil,
-   nil, 22432, 22571,  2046,  1071,  1085,   nil,  1086,  1089,  1090,
-   nil,  1111,  1096,  1100, 22710,   nil,   nil,   nil,   nil,  4146,
-  4286,   nil,    -8, 22849,   nil,   nil,   nil,    -1,   nil,   nil,
-   nil, 22988,  4426,   nil,   nil,  1234,   644,   nil,   nil,   nil,
-   nil,   nil,  1155,  1133,  1238,   989,   nil,   nil, 15477,   nil,
-  6094,   nil,  6233,   nil,  6673,   nil,   nil,   nil,   nil,  1119,
-  1133,   nil,   325,   nil,   nil, 15576,   nil,   nil, 25356,   nil,
-  7477,   nil,   nil,  1157, 23127,   865,  1214,   nil,  1279,  4566,
-   963,   997,  1066,  1233,  1069,   nil,  4706,   nil, 23266,   271,
-   nil,   nil,  4846,  4986,   nil,   nil,   583,   nil,   nil,   nil,
-  1164,  1165,  1168,  1172,   521,   653,  1174,   nil,   nil,  1177,
-  1189,  1190,  1191,   nil,  1198,   nil,  1102, 25395,   nil,   nil,
-  1321, 23405, 25463, 25531,  1119,   680,   nil,   nil,   nil,   nil,
-  1320,  1323,   nil,  1332, 14149,   nil,   nil,   nil,   nil,  1205,
-   nil, 25593,   nil, 14288,   nil, 15122,   nil, 15261,   nil,   nil,
-  1245,  1246,   nil,  1211,    21,    23,    53,  1206,   nil,   nil,
-   nil,   nil,  1210,  1211,  1215,  1224,  1225,    35,   nil, 15423,
-   nil,   nil,   nil,   nil,  1226,   nil ]
-
-racc_action_default = [
-    -1,  -645,  -644,  -645,    -2,  -631,    -4,    -5,  -645,    -8,
-    -9,  -645,  -645,  -645,   -36,  -645,  -645,   -40,  -645,  -645,
-  -291,   -51,  -633,  -645,   -56,   -61,   -62,   -63,   -67,  -268,
-  -268,  -268,  -306,  -339,  -340,   -79,  -644,   -83,   -91,   -93,
-  -645,  -535,  -536,  -645,  -645,  -645,  -645,  -227,  -645,  -633,
-  -241,  -282,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,
-  -618,  -293,  -295,  -302,  -304,  -314,  -316,  -645,  -645,   -58,
-   -58,  -631,  -645,  -324,  -331,  -645,  -341,  -342,  -344,  -345,
-  -346,  -347,  -348,  -349,  -350,  -351,  -352,  -353,  -362,  -417,
-  -465,  -466,  -467,  -468,  -469,  -644,  -472,  -644,  -644,  -644,
-  -644,  -644,  -644,  -508,  -509,  -644,  -511,  -517,  -519,  -520,
-  -521,  -522,  -616,  -524,  -525,  -617,  -527,  -528,  -529,  -530,
-  -531,  -532,  -533,  -534,  -539,  -540,  1086,    -3,  -632,  -640,
-  -641,  -642,    -7,  -645,  -645,  -645,  -645,  -645,  -645,   -24,
-  -645,  -122,  -123,  -124,  -125,  -126,  -127,  -128,  -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,
-  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,   -29,
-  -129,  -644,  -645,  -645,  -645,  -645,  -645,  -644,  -645,  -645,
-  -628,  -645,  -645,  -633,  -634,   -55,  -645,  -535,  -536,  -645,
-  -291,  -645,  -645,  -233,  -645,  -644,  -645,  -645,  -645,  -645,
-  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,
-  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -242,
-  -243,  -244,  -245,  -645,  -355,  -445,  -425,  -645,  -629,  -630,
-   -68,  -644,  -645,  -313,  -354,  -429,  -438,  -440,   -74,  -435,
-   -75,  -633,   -76,  -248,  -263,  -644,  -644,  -267,  -645,  -273,
-  -645,  -611,  -645,  -645,   -77,   -78,  -631,   -17,   -18,  -645,
-   -21,   -22,   -81,  -644,  -633,  -645,   -84,   -87,  -644,   -99,
-  -100,  -645,  -645,  -107,  -306,  -309,  -633,  -645,  -339,  -340,
-  -343,  -436,  -645,   -89,  -645,   -95,  -301,  -518,  -645,  -221,
-  -222,  -645,  -234,  -645,  -644,  -297,  -633,  -644,  -644,  -315,
-   -57,  -645,  -645,  -645,  -644,  -644,  -631,  -645,  -632,  -535,
-  -536,  -645,  -645,  -291,  -645,  -372,  -373,  -645,  -327,  -645,
-  -122,  -123,  -162,  -163,  -164,  -180,  -185,  -192,  -195,  -334,
-  -645,  -535,  -536,  -606,  -607,  -567,  -470,  -645,  -493,  -645,
-  -495,  -645,  -497,  -645,  -645,  -477,  -645,  -645,  -483,  -645,
-  -645,  -489,  -645,  -645,  -491,  -645,  -510,  -512,  -513,  -514,
-  -515,    -6,  -643,   -30,   -31,   -32,   -33,   -34,   -10,   -11,
-  -645,   -26,   -27,   -28,  -130,  -645,   -37,   -39,  -278,  -645,
-  -645,  -277,   -38,  -645,   -41,  -645,  -291,   -49,   -50,  -203,
-  -253,  -273,   -52,   -53,   -42,  -204,  -253,  -633,  -258,  -259,
-  -644,  -644,  -619,  -620,  -268,  -433,  -621,  -622,  -620,  -619,
-  -268,  -432,  -434,  -621,  -622,   -48,  -211,   -54,  -633,  -312,
-  -645,  -645,  -645,  -644,  -301,  -645,  -645,  -645,  -212,  -213,
-  -214,  -215,  -216,  -217,  -218,  -219,  -223,  -224,  -225,  -226,
-  -228,  -229,  -230,  -231,  -232,  -235,  -236,  -237,  -238,  -633,
-  -246,  -645,  -446,  -268,  -619,  -620,   -65,   -69,  -633,  -269,
-  -442,  -445,  -633,  -308,  -264,  -645,  -272,  -265,  -645,  -270,
-  -645,  -274,  -614,  -615,   -16,  -632,   -20,  -645,  -633,   -80,
-  -299,   -96,   -85,  -645,  -633,  -644,  -645,  -645,  -106,  -645,
-  -518,  -645,   -92,   -97,  -645,  -645,  -645,  -645,  -247,  -239,
-  -645,  -457,  -645,  -633,  -296,  -249,  -637,  -637,  -645,  -645,
-  -609,  -637,  -645,  -644,  -363,  -364,  -644,  -645,  -645,  -645,
-  -645,  -645,  -358,  -452,  -644,  -645,  -645,  -301,   -58,  -117,
-  -118,  -645,  -120,  -645,  -291,  -644,  -645,  -332,  -545,  -336,
-  -626,  -627,  -645,  -418,  -567,  -421,  -605,  -605,  -550,  -552,
-  -552,  -552,  -566,  -568,  -569,  -570,  -571,  -572,  -573,  -574,
-  -645,  -576,  -578,  -580,  -585,  -587,  -588,  -590,  -595,  -597,
-  -598,  -600,  -601,  -602,  -645,  -471,  -494,  -499,  -500,  -502,
-  -473,  -496,  -474,  -498,  -475,  -476,  -645,  -479,  -481,  -645,
-  -482,  -485,  -486,  -645,  -487,  -488,  -645,  -516,  -644,   -25,
-  -645,   -35,  -281,  -645,  -645,  -644,  -645,  -645,  -645,  -437,
-  -645,  -260,  -262,  -645,  -645,   -70,  -256,  -257,  -430,  -645,
-  -645,   -72,  -431,  -311,  -635,  -619,  -620,  -619,  -620,  -633,
-  -645,  -424,  -644,   -64,  -426,  -442,  -255,  -645,  -443,  -645,
-  -307,  -644,  -271,  -275,  -645,  -612,  -613,   -19,   -23,   -82,
-  -645,   -88,   -94,  -633,  -619,  -620,  -644,  -103,  -105,  -645,
-   -90,  -645,  -210,  -220,  -633,  -644,  -356,  -644,  -294,  -361,
-  -298,  -250,  -639,  -638,  -252,  -639,  -303,  -305,  -610,  -644,
-  -365,  -644,   -59,  -366,  -367,  -319,  -320,  -645,  -322,  -645,
-  -633,  -619,  -620,  -623,  -300,  -644,  -117,  -118,  -119,  -645,
-  -645,  -644,  -325,  -541,  -543,  -328,  -644,  -644,  -567,  -567,
-  -645,  -633,  -645,  -633,  -645,  -548,  -549,  -645,  -645,  -559,
-  -645,  -562,  -645,  -564,  -645,  -374,  -645,  -376,  -378,  -381,
-  -384,  -633,  -579,  -589,  -599,  -603,  -645,  -644,  -478,  -480,
-  -484,  -490,  -492,  -645,  -131,  -279,  -645,  -633,  -619,  -620,
-  -620,  -619,  -254,  -645,  -636,  -644,   -44,  -206,   -45,  -207,
-   -71,   -46,  -209,   -47,  -208,   -73,  -645,  -645,  -645,  -645,
-  -437,  -645,  -406,  -407,  -633,  -409,  -644,  -428,  -427,  -645,
-  -439,  -644,  -441,  -266,  -276,   -86,  -101,   -98,  -310,   -13,
-   -15,  -357,  -359,  -644,  -464,  -458,  -644,  -459,  -460,  -637,
-  -645,  -360,  -368,  -645,  -370,  -644,  -645,   -60,  -321,  -448,
-  -645,  -645,  -437,  -645,  -117,  -118,  -121,  -633,  -644,  -645,
-  -645,  -645,  -645,  -633,  -645,  -337,  -608,  -419,  -644,  -644,
-  -411,  -633,  -605,  -586,  -604,  -551,  -552,  -552,  -577,  -552,
-  -552,  -596,  -552,  -574,  -591,  -633,  -645,  -645,  -383,  -575,
-  -501,  -504,  -505,  -506,  -507,  -645,   -12,  -280,  -437,   -43,
-  -205,  -261,  -645,  -240,  -605,  -605,  -388,  -644,  -644,  -644,
-  -405,  -645,  -633,  -574,  -582,  -583,  -593,  -447,   -66,  -644,
-  -644,  -463,  -645,  -645,  -462,  -251,  -317,  -645,  -371,  -318,
-  -449,  -645,  -644,  -323,  -437,  -645,  -645,  -329,  -333,  -335,
-  -544,  -546,  -545,  -645,  -645,  -645,  -420,  -547,  -645,  -555,
-  -645,  -557,  -645,  -560,  -645,  -563,  -565,  -375,  -377,  -379,
-  -382,  -503,  -645,  -386,  -387,  -396,  -390,  -398,  -645,  -401,
-  -645,  -403,  -408,  -645,  -645,  -581,  -645,  -444,  -644,  -644,
-  -108,  -109,  -645,  -645,  -116,  -461,  -644,  -450,  -645,  -644,
-  -326,  -542,  -644,  -644,  -422,  -423,  -633,  -413,  -415,  -416,
-  -552,  -552,  -552,  -552,  -645,  -645,  -605,  -584,  -389,  -644,
-  -644,  -644,  -644,  -594,  -644,  -410,  -592,  -645,  -301,   -14,
-  -457,  -644,  -645,  -645,  -115,  -644,  -451,  -453,  -454,  -455,
-  -645,  -645,  -412,  -645,  -645,  -553,  -556,  -558,  -561,  -380,
-  -385,  -645,  -393,  -645,  -395,  -645,  -399,  -645,  -402,  -404,
-  -300,  -623,  -456,  -633,  -619,  -620,  -623,  -114,  -369,  -330,
-  -338,  -414,  -552,  -644,  -644,  -644,  -644,  -437,  -554,  -645,
-  -391,  -394,  -397,  -400,  -644,  -392 ]
-
-racc_goto_table = [
-     6,   131,     4,   232,   330,   330,   294,   294,   294,   349,
-   276,   285,   289,   379,   295,   295,   295,   517,   552,   571,
-   139,   220,   296,   296,   296,   144,   144,   715,   228,   507,
-   343,   659,   447,   312,   147,   147,   278,   431,   432,   330,
-   695,     9,   316,   407,   850,   351,   352,     9,   418,   356,
-   563,   566,   542,   444,   235,   757,    18,   781,   465,   840,
-   454,   460,    18,   748,   128,   595,   337,   131,   354,   355,
-   127,   692,   350,   350,   692,   856,   350,   687,   765,   766,
-   721,   724,   501,   602,   918,   728,   508,   333,   891,   144,
-    18,   826,   314,   388,   132,   390,   392,   395,   398,   401,
-   404,   345,   881,   388,   280,   288,   290,   968,  1007,   503,
-   888,   413,   414,   415,   416,  1009,    18,   970,   387,   144,
-  1023,   636,     1,   585,   639,   587,     2,   438,   405,   138,
-   438,   648,   292,   304,   305,   438,   357,   839,   350,   350,
-   350,   350,   631,   930,   633,   697,   527,   637,   219,   366,
-   637,   427,   887,   420,   889,   732,   857,   277,   685,   650,
-   341,   558,   684,   921,   383,   559,   364,     9,   752,   380,
-   589,   344,   517,   346,   553,   347,   417,   348,   367,   882,
-   868,   586,    18,   870,   695,  1002,   369,   756,   588,   760,
-   952,    18,   969,  1023,   920,   922,  1071,  1006,   593,   877,
-   385,   294,   762,  1009,   430,   430,   510,   511,   919,   831,
-   455,   861,   682,  1037,   411,   739,   846,   692,   692,   932,
-   386,   389,   391,   895,   394,   448,   968,   397,   400,   442,
-   443,   866,   737,   403,  1049,  1019,   900,   467,   468,   915,
-   929,   786,   787,   464,   406,   471,   869,   695,   886,   883,
-  1017,   701,   829,   426,   437,   294,   294,   437,   592,   710,
-   nil,   983,   437,   820,   295,   294,   nil,   nil,   nil,   nil,
-   315,   nil,   296,   295,   763,    18,   891,    18,   679,   448,
-    18,   296,   nil,   nil,   330,    18,   nil,   836,   nil,   nil,
-   nil,    19,   602,   516,   516,   nil,   nil,    19,   nil,    18,
-   nil,   330,   131,   454,   460,   nil,   888,   539,   nil,   285,
-   312,   nil,   236,   289,   nil,   312,   nil,   888,   689,   nil,
-   nil,   236,   236,   236,   862,    19,   321,   321,   nil,   556,
-   536,   567,  1029,   nil,   330,   nil,   330,   557,   561,   543,
-   703,   nil,  1010,  1038,   nil,   555,   560,   546,   526,   nil,
-  1068,    19,   131,   nil,   540,   nil,   236,   236,   350,  1020,
-   236,   361,  1021,    18,   957,   525,   532,    18,   706,   528,
-   575,   524,    18,   935,   534,   nil,   nil,   nil,   706,   740,
-   nil,   908,   509,   nil,   nil,   nil,   nil,  1016,   nil,   789,
-   915,   512,   789,   915,   nil,   915,   973,   974,    18,   888,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,    18,    18,
-   nil,   nil,   833,   nil,   810,   nil,   nil,    19,   835,  1003,
-   815,   570,   236,   236,   236,   236,    19,   nil,   660,   649,
-   871,   872,   nil,   695,   144,  1073,   667,   698,   873,   874,
-   nil,   nil,   672,   147,   656,   nil,   nil,   294,   516,   516,
-   nil,   944,   666,   455,   nil,   425,   602,   602,   nil,   nil,
-   797,   nil,   nil,   nil,   nil,   nil,   915,   692,   915,   nil,
-   915,   448,   915,   nil,   nil,   nil,   nil,   nil,   nil,   315,
-   680,   nil,   769,   771,   773,   667,   464,   nil,   454,   460,
-   806,   808,   nil,   nil,   915,   nil,   811,   813,  1050,   nil,
-   330,   666,   nil,   nil,   nil,   691,  1062,   nil,   330,   294,
-    19,   236,   435,   236,   236,   435,   236,   nil,   455,   nil,
-   435,   236,   236,   nil,   nil,   nil,   833,   nil,   455,   665,
-   nil,   nil,   847,   448,    19,   671,   nil,   nil,   543,   nil,
-   nil,   nil,   945,   nil,   nil,   nil,   543,   315,   294,   nil,
-   nil,   464,   315,   954,   nil,   714,   867,   455,   438,   nil,
-   942,   464,   nil,   733,   nil,   nil,   nil,   438,   438,   nil,
-   236,   236,   448,   438,   438,   nil,   nil,   745,   683,    18,
-   236,   nil,   706,   754,   nil,   nil,   nil,   nil,   568,   569,
-   464,   755,   nil,   nil,   924,   nil,   nil,   761,    19,   nil,
-   nil,   nil,    19,   nil,   nil,   nil,   321,    19,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,
-    18,   nil,   nil,   321,   nil,   nil,   nil,   nil,   828,   294,
-   909,   989,   nil,    19,   nil,   nil,   996,   nil,   455,   nil,
-   nil,   nil,   236,    19,    19,   nil,     6,  1077,   793,   nil,
-   nil,   805,   nil,   448,   nil,   nil,   583,   nil,   583,   794,
-   660,  1039,   nil,   nil,   144,   nil,   nil,   330,   827,   nil,
-   445,   464,   nil,   147,   nil,   466,  1040,  1041,   330,   nil,
-   822,   nil,   nil,   nil,   660,   437,   nil,     9,   667,   516,
-   nil,   672,   nil,   nil,   437,   437,   nil,   nil,   875,   430,
-   437,   437,    18,   nil,   666,   543,   nil,   438,    18,   nil,
-   nil,   nil,   849,   844,   nil,   848,   837,    18,    18,   nil,
-   nil,   660,   nil,    18,    18,   294,   nil,   854,   nil,   854,
-   nil,   nil,   455,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   924,   nil,   880,   924,   nil,   nil,   924,   448,
-   924,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   464,   nil,   nil,   nil,   nil,   nil,   959,
-   961,   nil,   963,   965,   144,   966,   nil,   718,   660,   nil,
-   nil,   nil,   nil,   nil,   890,   nil,   892,   nil,   nil,   nil,
-   nil,   nil,   nil,   735,   736,   nil,   738,   729,   nil,    18,
-   731,   nil,   nil,   516,   nil,   880,   nil,   nil,   nil,   nil,
-    18,    18,   nil,   nil,    19,   nil,   nil,   nil,   nil,   nil,
-   nil,   924,   321,   924,   236,   924,   nil,   924,   nil,   822,
-   321,   937,   nil,   nil,   437,   nil,  1063,   nil,   917,   236,
-   nil,    18,   nil,   nil,   934,   nil,   nil,   946,   660,   924,
-   nil,   nil,    19,   nil,   nil,    19,   nil,    18,   350,   nil,
-   nil,   nil,   nil,   236,   706,   nil,   947,   nil,   nil,   nil,
-   951,   nil,   nil,   nil,   350,   236,   nil,   nil,   nil,   nil,
-    18,   236,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   330,   nil,  1045,  1046,  1047,  1048,    18,   nil,   nil,
-   330,   nil,   nil,   880,    29,   nil,   nil,   nil,   nil,    18,
-    29,   nil,   nil,   nil,   nil,   976,   976,   976,   nil,   466,
-   nil,   445,    18,   nil,   nil,    29,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,    18,    29,    29,    29,    19,    29,   nil,
-   nil,   nil,  1001,   435,   236,   nil,   nil,   nil,   nil,   nil,
-   nil,   330,   435,   435,   nil,  1078,   nil,   nil,   435,   435,
-   nil,   nil,   858,   nil,    29,   nil,   nil,   nil,   nil,    29,
-    29,   nil,  1011,    29,  1012,   nil,  1013,   nil,   nil,   863,
-   nil,   nil,   nil,    18,    18,   nil,   844,  1042,   712,   321,
-   nil,   nil,  1022,   nil,  1024,   nil,    18,   854,   nil,   nil,
-   321,  1032,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   455,   nil,   nil,   976,   976,   976,
-   976,   905,   976,   nil,   nil,   nil,   nil,   nil,   nil,   448,
-    29,   nil,   nil,   854,    19,    29,    29,    29,    29,    29,
-   236,   464,   nil,    18,   660,    19,    19,   464,   nil,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,    18,    18,  1072,   nil,
-   927,   884,   nil,   nil,   884,  1074,   nil,  1075,   nil,  1076,
-   nil,   976,   976,   976,   976,   936,    19,   931,   nil,   nil,
-   nil,   939,   976,   nil,   nil,   nil,   nil,   nil,   943,   938,
-   nil,   nil,   435,  1084,   nil,   nil,   948,   949,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   807,   809,   nil,
-   nil,   nil,   953,   812,   814,    19,   nil,   nil,   nil,   nil,
-   nil,   916,   nil,    29,    29,    29,    29,    29,    29,    29,
-   nil,   nil,    19,    29,    29,    29,   nil,   nil,   nil,   nil,
-   nil,   nil,   236,   nil,    19,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    19,   236,   nil,
-   nil,   nil,   nil,   987,   988,   nil,   nil,    19,    19,   nil,
-  1000,   nil,   nil,   nil,    32,   nil,   999,   977,   979,   981,
-    32,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    32,    32,    32,   nil,    32,   nil,
-   nil,    29,   nil,   985,   nil,    29,   nil,   nil,    19,    19,
-    29,   nil,   992,  1030,   nil,   nil,   nil,   nil,   nil,   nil,
-  1035,    19,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,
-    32,   nil,   nil,    32,   nil,   nil,    29,   910,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,    29,    29,   nil,   nil,
-   807,   809,   814,   812,   nil,  1069,  1070,   nil,   nil,   884,
-   nil,   nil,   916,  1026,   nil,   916,   nil,   916,    19,  1052,
-  1054,  1056,  1058,   nil,  1059,    19,   nil,   nil,   nil,   nil,
-   nil,    19,    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   nil,   nil,   nil,   609,   nil,   nil,   nil,
-   nil,   nil,   nil,  1080,  1081,  1082,  1083,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1085,   nil,   nil,   nil,   916,   nil,
-   916,   nil,   916,   nil,   916,   243,   910,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   293,   293,   293,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,   916,   339,   340,   nil,
-   342,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   469,   nil,   nil,    32,    32,    32,    32,    32,    32,    32,
-   nil,   nil,   nil,    32,    32,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   513,   nil,
-   nil,   nil,    29,    32,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,    29,   nil,   nil,    29,   nil,
-   nil,   529,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,    32,   nil,   nil,   nil,    32,   nil,   nil,    29,   nil,
-    32,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   554,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,    32,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   775,   nil,   nil,   293,   440,    29,    29,   446,   293,
-   nil,   nil,   nil,   446,   nil,    29,    29,   nil,    16,   nil,
-   nil,    29,    29,   nil,    16,   nil,   243,   nil,   nil,   478,
-   479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
-   489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
-   499,   nil,    16,   nil,   nil,   500,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   293,   293,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   293,   nil,   673,   nil,   nil,    16,   nil,
-   293,   nil,   293,   nil,   293,   293,   nil,   nil,   365,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,    29,
-   nil,   nil,   nil,   nil,   nil,   686,   nil,   nil,   nil,   690,
-   nil,   nil,   nil,   548,   nil,   549,   nil,   nil,   nil,   293,
-   293,   nil,   nil,   nil,   nil,   699,   nil,   nil,   nil,    29,
-   nil,   702,   nil,   nil,    16,   nil,   nil,    32,   nil,   609,
-   609,   nil,   nil,    16,   nil,    29,   nil,    32,   nil,   609,
-   720,   609,   nil,   nil,   nil,   nil,   nil,   775,   nil,   nil,
-   nil,   898,    32,   nil,   nil,   nil,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,   nil,    29,    32,   nil,
-   nil,   293,   nil,   nil,    32,   923,   nil,   nil,   nil,   nil,
-    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,    29,   nil,   nil,   nil,   nil,   nil,    16,   nil,   433,
-   nil,   nil,   433,   nil,   nil,   nil,   nil,   433,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   293,   nil,   446,   446,   446,
-   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,
-   nil,    29,    29,   nil,   nil,    32,    32,   775,   775,   nil,
-   nil,    32,    32,   nil,    29,   nil,   nil,   293,   nil,   nil,
-   293,   nil,   293,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   293,   nil,   nil,
-   nil,   838,   nil,   nil,   nil,    16,   446,   713,   nil,    16,
-   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,    29,   609,
-   nil,   nil,   nil,   nil,    29,    29,   293,   nil,   nil,   nil,
-    16,   nil,   nil,   nil,   nil,   nil,   923,    32,   876,   923,
-    16,    16,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   899,   nil,
-   nil,   nil,   nil,    20,   nil,   293,   nil,   nil,   nil,    20,
-   nil,   nil,   nil,   nil,   nil,   775,   775,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,    20,   323,   323,
-   nil,   nil,   nil,    41,   nil,   293,   446,   293,   nil,    41,
-   802,   nil,   923,   293,   293,   446,   446,   nil,    32,   nil,
-   nil,   446,   446,    20,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   363,   nil,    32,   nil,    41,   319,   319,
-   nil,   nil,   nil,   nil,   nil,    32,   293,    32,   nil,   nil,
-   950,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   956,   nil,
-    32,    32,   nil,    41,   nil,   nil,   nil,   nil,   nil,   293,
-    32,    32,   967,   359,   293,   nil,   381,   293,   nil,   nil,
-   nil,   428,   441,   nil,   nil,   nil,   nil,   nil,   nil,    20,
-   nil,   293,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   293,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    32,    32,   nil,   nil,   nil,   293,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   293,    16,
-   nil,   nil,    16,   nil,   nil,   446,   nil,   519,   nil,   521,
-   nil,   522,   523,   nil,   nil,   nil,   nil,   nil,   446,   446,
-   446,   446,   nil,   913,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    32,    20,   nil,   436,   nil,   nil,   436,    32,   nil,
-   nil,   nil,   436,   nil,    32,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    20,   562,   nil,   nil,
-   nil,   nil,   293,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
-   433,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   433,
-   433,   nil,   nil,   nil,   nil,   433,   433,   nil,   nil,   nil,
-   nil,   nil,   nil,   293,   446,   nil,   nil,   nil,   nil,   nil,
-    20,   nil,   nil,   nil,    20,   nil,   nil,   nil,   323,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   652,   nil,
-   nil,   nil,   nil,   293,   nil,   323,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,    41,    20,    20,   nil,   319,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   584,   nil,
-   584,    16,   nil,   nil,   nil,   319,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,    16,   nil,    41,   nil,   nil,   nil,   nil,
-   293,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   381,   nil,
-   381,   nil,   nil,    16,   693,   nil,   nil,   562,   nil,   696,
-   nil,   nil,   nil,   293,   nil,   nil,   nil,   nil,   nil,   433,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,    16,   nil,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    16,   nil,    42,   320,   320,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    16,    16,   nil,   nil,   nil,    42,
-   nil,   nil,   782,   nil,   nil,   nil,   nil,   nil,   nil,   360,
-   nil,   nil,   382,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   323,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   323,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   795,   nil,   nil,    16,    16,   nil,   nil,   995,
-   693,   562,   nil,   nil,    20,   nil,    41,    20,    16,   nil,
-   nil,   nil,   nil,   nil,   319,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   319,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   834,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    16,   845,   nil,   nil,   nil,
-   nil,   693,    16,   nil,   562,   nil,   nil,   nil,    16,    16,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   859,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   nil,   nil,   nil,   436,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   436,   436,   nil,   nil,    42,   nil,
-   436,   436,   nil,   894,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,    42,   nil,   nil,   907,   nil,   nil,   nil,   nil,
-   nil,   323,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   323,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   319,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-   nil,   nil,   319,   nil,   nil,   nil,    42,    20,    20,   940,
-    42,   nil,   nil,   nil,   320,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   320,   nil,   nil,   nil,   nil,    41,   904,    20,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,
-   nil,    42,    42,   nil,   436,   nil,   nil,   nil,   nil,   nil,
-   562,   nil,   nil,   nil,   382,   nil,   382,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   997,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
-    20,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,  1036,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-    41,   nil,   nil,   nil,   nil,   584,   nil,   nil,   nil,   nil,
-    20,    20,   nil,   nil,   994,   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,   381,   nil,   nil,   nil,   nil,
-    41,    41,    42,   nil,   990,   nil,   nil,   nil,   nil,   nil,
-   320,   nil,   nil,    41,   nil,   584,   nil,   nil,   320,   nil,
-    20,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   381,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,   nil,    41,    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,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   320,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   320,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,    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,
-   nil,   nil,   nil,   nil,    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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   382,   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,
-   991,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   382,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,    42,
-    42 ]
-
-racc_goto_check = [
-     6,   118,     2,    40,    78,    78,    46,    46,    46,   102,
-   171,    85,    85,    70,    82,    82,    82,    87,    12,   113,
-    22,    22,    84,    84,    84,    71,    71,    15,    38,    52,
-    40,    37,    36,    59,    73,    73,    38,    29,    29,    78,
-   219,     9,    63,    70,   107,    24,    24,     9,    10,    24,
-   106,   106,    65,    33,    27,   121,    34,   147,    33,    17,
-    50,    50,    34,    68,     8,   170,    76,   118,    42,    42,
-     5,    88,    31,    31,    88,   109,    31,    53,   153,   153,
-    83,    83,   172,   204,   158,    83,    36,    64,   214,    71,
-    34,   160,    60,     6,     7,     6,     6,     6,     6,     6,
-     6,     9,   162,     6,    51,    51,    51,   145,   164,    50,
-   209,    24,    24,    24,    24,   165,    34,   148,   188,    71,
-   215,   192,     1,    69,   192,    69,     3,    25,   188,    11,
-    25,    13,    58,    58,    58,    25,     5,    16,    31,    31,
-    31,    31,   193,    18,   193,    20,    21,   193,    23,    26,
-   193,    30,   159,    32,   159,    43,    45,    49,    55,    74,
-    79,    81,    86,   162,    98,   101,   115,     9,   117,   122,
-   123,   124,    87,   125,   126,   127,     9,   128,   129,   152,
-   130,   131,    34,   132,   219,   133,   134,   135,   136,   137,
-   138,    34,   149,   215,   150,   156,   164,   163,   166,   167,
-   168,    46,   169,   165,    82,    82,   174,   175,   159,   177,
-    85,   178,   180,   181,     7,   182,   183,    88,    88,   184,
-   187,   189,   190,   147,   191,     6,   145,   194,   195,    31,
-    31,    68,   113,   196,   148,   158,   197,    31,    31,   152,
-   160,   198,   199,    71,   202,    38,   203,   219,   208,   211,
-   212,    65,    53,    27,    27,    46,    46,    27,   218,    65,
-   nil,   162,    27,    37,    82,    46,   nil,   nil,   nil,   nil,
-    14,   nil,    84,    82,   170,    34,   214,    34,    36,     6,
-    34,    84,   nil,   nil,    78,    34,   nil,    37,   nil,   nil,
-   nil,    35,   204,     6,     6,   nil,   nil,    35,   nil,    34,
-   nil,    78,   118,    50,    50,   nil,   209,    40,   nil,    85,
-    59,   nil,    35,    85,   nil,    59,   nil,   209,   172,   nil,
-   nil,    35,    35,    35,    37,    35,    35,    35,   nil,    82,
-    38,    24,    17,   nil,    78,   nil,    78,    84,    84,    63,
-    36,   nil,   159,   109,   nil,     6,     6,    38,     9,   nil,
-   107,    35,   118,   nil,    76,   nil,    35,    35,    31,   159,
-    35,    35,   159,    34,   153,     8,    64,    34,    50,    60,
-    38,     5,    34,    83,    60,   nil,   nil,   nil,    50,    36,
-   nil,    37,    58,   nil,   nil,   nil,   nil,   152,   nil,   193,
-   152,    58,   193,   152,   nil,   152,   153,   153,    34,   209,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    50,    34,    34,
-   nil,   nil,    87,   nil,    52,   nil,   nil,    35,    65,   121,
-    52,     5,    35,    35,    35,    35,    35,   nil,    40,    22,
-    12,    12,   nil,   219,    71,   159,    85,    10,   170,   170,
-   nil,   nil,    85,    73,    38,   nil,   nil,    46,     6,     6,
-   nil,    37,     6,    85,   nil,    14,   204,   204,   nil,   nil,
-    36,   nil,   nil,   nil,   nil,   nil,   152,    88,   152,   nil,
-   152,     6,   152,   nil,   nil,   nil,   nil,   nil,   nil,    14,
-    40,   nil,   207,   207,   207,    85,    71,   nil,    50,    50,
-    33,    33,   nil,   nil,   152,   nil,    33,    33,   153,   nil,
-    78,     6,   nil,   nil,   nil,    84,    15,   nil,    78,    46,
-    35,    35,    35,    35,    35,    35,    35,   nil,    85,   nil,
-    35,    35,    35,   nil,   nil,   nil,    87,   nil,    85,    51,
-   nil,   nil,    29,     6,    35,    51,   nil,   nil,    63,   nil,
-   nil,   nil,    12,   nil,   nil,   nil,    63,    14,    46,   nil,
-   nil,    71,    14,    12,   nil,    31,    36,    85,    25,   nil,
-   106,    71,   nil,   118,   nil,   nil,   nil,    25,    25,   nil,
-    35,    35,     6,    25,    25,   nil,   nil,    42,    51,    34,
-    35,   nil,    50,     6,   nil,   nil,   nil,   nil,    14,    14,
-    71,    31,   nil,   nil,   210,   nil,   nil,    31,    35,   nil,
-   nil,   nil,    35,   nil,   nil,   nil,    35,    35,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
-    34,   nil,   nil,    35,   nil,   nil,   nil,   nil,   102,    46,
-    33,   106,   nil,    35,   nil,   nil,   106,   nil,    85,   nil,
-   nil,   nil,    35,    35,    35,   nil,     6,    37,     2,   nil,
-   nil,    84,   nil,     6,   nil,   nil,    35,   nil,    35,    22,
-    40,   113,   nil,   nil,    71,   nil,   nil,    78,   171,   nil,
-    75,    71,   nil,    73,   nil,    75,    12,    12,    78,   nil,
-     6,   nil,   nil,   nil,    40,    27,   nil,     9,    85,     6,
-   nil,    85,   nil,   nil,    27,    27,   nil,   nil,    70,    82,
-    27,    27,    34,   nil,     6,    63,   nil,    25,    34,   nil,
-   nil,   nil,    84,     6,   nil,     6,    63,    34,    34,   nil,
-   nil,    40,   nil,    34,    34,    46,   nil,     6,   nil,     6,
-   nil,   nil,    85,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   210,   nil,    40,   210,   nil,   nil,   210,     6,
-   210,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,    71,   nil,   nil,   nil,   nil,   nil,   207,
-   207,   nil,   207,   207,    71,   207,   nil,   100,    40,   nil,
-   nil,   nil,   nil,   nil,   157,   nil,   157,   nil,   nil,   nil,
-   nil,   nil,   nil,   100,   100,   nil,   100,    14,   nil,    34,
-    14,   nil,   nil,     6,   nil,    40,   nil,   nil,   nil,   nil,
-    34,    34,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,
-   nil,   210,    35,   210,    35,   210,   nil,   210,   nil,     6,
-    35,    24,   nil,   nil,    27,   nil,    36,   nil,   157,    35,
-   nil,    34,   nil,   nil,     6,   nil,   nil,    24,    40,   210,
-   nil,   nil,    35,   nil,   nil,    35,   nil,    34,    31,   nil,
-   nil,   nil,   nil,    35,    50,   nil,   118,   nil,   nil,   nil,
-   118,   nil,   nil,   nil,    31,    35,   nil,   nil,   nil,   nil,
-    34,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    78,   nil,   207,   207,   207,   207,    34,   nil,   nil,
-    78,   nil,   nil,    40,    54,   nil,   nil,   nil,   nil,    34,
-    54,   nil,   nil,   nil,   nil,     6,     6,     6,   nil,    75,
-   nil,    75,    34,   nil,   nil,    54,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,    34,    54,    54,    54,    35,    54,   nil,
-   nil,   nil,   118,    35,    35,   nil,   nil,   nil,   nil,   nil,
-   nil,    78,    35,    35,   nil,   207,   nil,   nil,    35,    35,
-   nil,   nil,   100,   nil,    54,   nil,   nil,   nil,   nil,    54,
-    54,   nil,   157,    54,   157,   nil,   157,   nil,   nil,    14,
-   nil,   nil,   nil,    34,    34,   nil,     6,    40,    75,    35,
-   nil,   nil,   157,   nil,   157,   nil,    34,     6,   nil,   nil,
-    35,    38,   nil,   nil,   nil,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    85,   nil,   nil,     6,     6,     6,
-     6,    14,     6,   nil,   nil,   nil,   nil,   nil,   nil,     6,
-    54,   nil,   nil,     6,    35,    54,    54,    54,    54,    54,
-    35,    71,   nil,    34,    40,    35,    35,    71,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,    34,    34,   157,   nil,
-    14,   154,   nil,   nil,   154,   157,   nil,   157,   nil,   157,
-   nil,     6,     6,     6,     6,   100,    35,    14,   nil,   nil,
-   nil,   100,     6,   nil,   nil,   nil,   nil,   nil,   100,    14,
-   nil,   nil,    35,   157,   nil,   nil,   100,   100,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,   nil,
-   nil,   nil,    14,    75,    75,    35,   nil,   nil,   nil,   nil,
-   nil,   154,   nil,    54,    54,    54,    54,    54,    54,    54,
-   nil,   nil,    35,    54,    54,    54,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,    35,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,    35,   nil,
-   nil,   nil,   nil,    14,    14,   nil,   nil,    35,    35,   nil,
-   100,   nil,   nil,   nil,    57,   nil,    14,   155,   155,   155,
-    57,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    57,    57,    57,   nil,    57,   nil,
-   nil,    54,   nil,    35,   nil,    54,   nil,   nil,    35,    35,
-    54,   nil,    35,    14,   nil,   nil,   nil,   nil,   nil,   nil,
-    14,    35,   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,
-    57,   nil,   nil,    57,   nil,   nil,    54,    75,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,    54,    54,   nil,   nil,
-    75,    75,    75,    75,   nil,   100,   100,   nil,   nil,   154,
-   nil,   nil,   154,    35,   nil,   154,   nil,   154,    35,   155,
-   155,   155,   155,   nil,   155,    35,   nil,   nil,   nil,   nil,
-   nil,    35,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,    57,    57,    57,    57,    57,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   146,   nil,   nil,   nil,
-   nil,   nil,   nil,   155,   155,   155,   155,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   155,   nil,   nil,   nil,   154,   nil,
-   154,   nil,   154,   nil,   154,    41,    75,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    41,    41,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   154,    41,    41,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    61,   nil,   nil,    57,    57,    57,    57,    57,    57,    57,
-   nil,   nil,   nil,    57,    57,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,   nil,
-   nil,   nil,    54,    57,    57,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,    54,   nil,   nil,    54,   nil,
-   nil,    61,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,    57,   nil,   nil,   nil,    57,   nil,   nil,    54,   nil,
-    57,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    61,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,    57,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   146,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   146,   nil,   nil,    41,    41,    54,    54,    41,    41,
-   nil,   nil,   nil,    41,   nil,    54,    54,   nil,    28,   nil,
-   nil,    54,    54,   nil,    28,   nil,    41,   nil,   nil,    41,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,   nil,    28,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,    61,   nil,   nil,    28,   nil,
-    41,   nil,    41,   nil,    41,    41,   nil,   nil,    28,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,    54,
-   nil,   nil,   nil,   nil,   nil,    61,   nil,   nil,   nil,    61,
-   nil,   nil,   nil,    41,   nil,    41,   nil,   nil,   nil,    41,
-    41,   nil,   nil,   nil,   nil,    61,   nil,   nil,   nil,    54,
-   nil,    61,   nil,   nil,    28,   nil,   nil,    57,   nil,   146,
-   146,   nil,   nil,    28,   nil,    54,   nil,    57,   nil,   146,
-    61,   146,   nil,   nil,   nil,   nil,   nil,   146,   nil,   nil,
-   nil,   146,    57,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,    54,    57,   nil,
-   nil,    41,   nil,   nil,    57,   146,   nil,   nil,   nil,   nil,
-    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,    54,   nil,   nil,   nil,   nil,   nil,    28,   nil,    28,
-   nil,   nil,    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,    41,    41,
-   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,
-   nil,    54,    54,   nil,   nil,    57,    57,   146,   146,   nil,
-   nil,    57,    57,   nil,    54,   nil,   nil,    41,   nil,   nil,
-    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,    61,   nil,   nil,   nil,    28,    41,    41,   nil,    28,
-   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,    54,   146,
-   nil,   nil,   nil,   nil,    54,    54,    41,   nil,   nil,   nil,
-    28,   nil,   nil,   nil,   nil,   nil,   146,    57,    61,   146,
-    28,    28,   nil,    57,   nil,   nil,   nil,   nil,    57,    57,
-   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    61,   nil,
-   nil,   nil,   nil,    39,   nil,    41,   nil,   nil,   nil,    39,
-   nil,   nil,   nil,   nil,   nil,   146,   146,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,    39,    39,    39,
-   nil,   nil,   nil,    66,   nil,    41,    41,    41,   nil,    66,
-    41,   nil,   146,    41,    41,    41,    41,   nil,    57,   nil,
-   nil,    41,    41,    39,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,    57,   nil,    66,    66,    66,
-   nil,   nil,   nil,   nil,   nil,    57,    41,    57,   nil,   nil,
-    61,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,   nil,
-    57,    57,   nil,    66,   nil,   nil,   nil,   nil,   nil,    41,
-    57,    57,    61,    66,    41,   nil,    66,    41,   nil,   nil,
-   nil,    80,    80,   nil,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    57,    57,   nil,   nil,   nil,    41,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    28,
-   nil,   nil,    28,   nil,   nil,    41,   nil,    80,   nil,    80,
-   nil,    80,    80,   nil,   nil,   nil,   nil,   nil,    41,    41,
-    41,    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    57,    39,   nil,    39,   nil,   nil,    39,    57,   nil,
-   nil,   nil,    39,   nil,    57,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,    80,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-    28,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,    28,
-    28,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,
-    39,   nil,   nil,   nil,    39,   nil,   nil,   nil,    39,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,
-   nil,   nil,   nil,    41,   nil,    39,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,    66,    39,    39,   nil,    66,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-    39,    28,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,    28,    28,   nil,    66,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-    66,   nil,   nil,    28,    80,   nil,   nil,    80,   nil,    80,
-   nil,   nil,   nil,    41,   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,    67,
-   nil,   nil,    28,   nil,   nil,    67,   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,    28,   nil,    67,    67,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,    67,
-   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,    67,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    80,   nil,   nil,    28,    28,   nil,   nil,    28,
-    80,    80,   nil,   nil,    39,   nil,    66,    39,    28,   nil,
-   nil,   nil,   nil,   nil,    66,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    66,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    28,    80,   nil,   nil,   nil,
-   nil,    80,    28,   nil,    80,   nil,   nil,   nil,    28,    28,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,    39,   nil,   nil,    67,   nil,
-    39,    39,   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,    67,   nil,   nil,    80,   nil,   nil,   nil,   nil,
-   nil,    39,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,    67,    39,    39,    80,
-    67,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,    66,    39,    39,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,
-   nil,    67,    67,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-    80,   nil,   nil,   nil,    67,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    80,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
-    39,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,    80,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-    66,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
-    39,    39,   nil,   nil,    39,   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,    66,   nil,   nil,   nil,   nil,
-    66,    66,    67,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,    66,   nil,    39,   nil,   nil,    67,   nil,
-    39,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,    67,
-    67 ]
-
-racc_goto_pointer = [
-   nil,   122,     0,   126,   nil,    65,    -2,    86,    59,    39,
-   -90,   119,  -326,  -288,   234,  -524,  -578,  -656,  -696,   nil,
-  -380,  -165,     9,   136,   -22,   -96,    77,    31,  1566,  -185,
-   -71,     5,    14,  -173,    54,   289,  -195,  -416,     9,  1941,
-   -19,  1332,    -1,  -412,   nil,  -576,   -26,   nil,   nil,   130,
-  -168,    75,  -251,  -433,   902,  -348,   nil,  1172,   100,    -3,
-    56,  1157,   nil,     5,    49,  -282,  1981,  2387,  -518,  -244,
-   -62,    14,   nil,    23,  -265,   444,    22,   nil,   -33,   113,
-  1839,  -186,   -18,  -476,   -10,   -18,  -341,  -279,  -444,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   225,  -183,   -56,   nil,   nil,   nil,  -301,  -685,   nil,  -656,
-   nil,   nil,   nil,  -338,   nil,    94,   nil,  -417,    -4,   nil,
-   nil,  -533,    94,  -210,   110,   111,  -171,   112,   113,   105,
-  -572,  -187,  -572,  -762,   112,  -400,  -191,  -400,  -685,   nil,
-   nil,   nil,   nil,   nil,   nil,  -789,   941,  -553,  -780,  -704,
-  -630,   nil,  -585,  -518,   297,   260,  -629,    14,  -740,  -616,
-  -591,   nil,  -661,  -758,  -847,  -840,  -187,  -563,   111,  -391,
-  -320,   -15,  -193,   nil,   -80,   -80,   nil,  -479,  -528,   nil,
-  -290,  -786,  -358,  -501,  -627,   nil,   nil,   128,    23,   124,
-   124,   125,  -273,  -247,   127,   127,   131,  -550,  -387,  -387,
-   nil,   nil,   139,  -507,  -302,   nil,   nil,  -117,  -520,  -658,
-  -230,  -515,  -722,   nil,  -682,  -858,   nil,   nil,  -126,  -478 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   307,     7,   358,   310,
-   nil,   nil,   nil,   nil,   551,   nil,   nil,   nil,   nil,   306,
-   308,   nil,   nil,   nil,   nil,    14,    15,    21,   241,   nil,
-   nil,    17,   nil,   434,   242,   338,   nil,   nil,   750,   240,
-   470,    24,   nil,   nil,   353,   nil,    25,    26,    27,   nil,
-   709,   nil,   nil,   nil,   327,   nil,    28,   324,   449,    35,
-   nil,   nil,    37,    40,    39,   nil,   237,   238,   582,   nil,
-   146,   457,   145,    91,   nil,   439,   107,    47,    50,   273,
-   299,   nil,   450,   nil,   451,   462,   668,   514,   297,   282,
-    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
-   nil,   nil,   283,    65,    66,    67,   nil,   nil,    68,   852,
-    69,    70,    71,   nil,    72,   nil,    73,   nil,   564,    74,
-    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   287,
-   275,   717,   843,   573,   853,   777,   893,   nil,   778,   779,
-  1018,   914,   597,   nil,   598,   nil,   nil,   599,   nil,   601,
-   nil,   823,   nil,   nil,   nil,   607,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   461,   nil,   nil,   688,   nil,   nil,   502,
-   nil,   nil,   nil,   nil,   nil,    90,    92,    94,   nil,   nil,
-   nil,   nil,   nil,   626,   nil,   nil,   nil,   nil,   nil,   nil,
-   103,   104,   nil,   nil,   885,   759,   596,   nil,   600,   611,
-   613,   614,   925,   617,   618,   926,   621,   624,   nil,   301 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 148, :_reduce_1,
-  2, 146, :_reduce_2,
-  2, 147, :_reduce_3,
-  1, 149, :_reduce_none,
-  1, 149, :_reduce_none,
-  3, 149, :_reduce_6,
-  2, 149, :_reduce_none,
-  1, 152, :_reduce_none,
-  0, 156, :_reduce_9,
-  3, 152, :_reduce_10,
-  0, 158, :_reduce_11,
-  4, 155, :_reduce_12,
-  0, 163, :_reduce_13,
-  6, 157, :_reduce_14,
-  3, 157, :_reduce_15,
-  2, 159, :_reduce_16,
-  1, 164, :_reduce_none,
-  1, 164, :_reduce_none,
-  3, 164, :_reduce_19,
-  2, 164, :_reduce_20,
-  1, 165, :_reduce_none,
-  0, 166, :_reduce_22,
-  3, 165, :_reduce_23,
-  0, 177, :_reduce_24,
-  4, 154, :_reduce_25,
-  3, 154, :_reduce_26,
-  3, 154, :_reduce_27,
-  3, 154, :_reduce_28,
-  2, 154, :_reduce_29,
-  3, 154, :_reduce_30,
-  3, 154, :_reduce_31,
-  3, 154, :_reduce_32,
-  3, 154, :_reduce_33,
-  3, 154, :_reduce_34,
-  4, 154, :_reduce_35,
-  1, 154, :_reduce_none,
-  3, 154, :_reduce_37,
-  3, 154, :_reduce_38,
-  3, 154, :_reduce_39,
-  1, 154, :_reduce_none,
-  3, 170, :_reduce_41,
-  3, 170, :_reduce_42,
-  6, 170, :_reduce_43,
-  5, 170, :_reduce_44,
-  5, 170, :_reduce_45,
-  5, 170, :_reduce_46,
-  5, 170, :_reduce_47,
-  3, 170, :_reduce_48,
-  1, 178, :_reduce_49,
-  1, 178, :_reduce_none,
-  1, 176, :_reduce_none,
-  3, 176, :_reduce_52,
-  3, 176, :_reduce_53,
-  3, 176, :_reduce_54,
-  2, 176, :_reduce_55,
-  1, 176, :_reduce_none,
-  1, 169, :_reduce_57,
-  0, 189, :_reduce_58,
-  0, 190, :_reduce_59,
-  4, 187, :_reduce_60,
-  1, 172, :_reduce_none,
-  1, 172, :_reduce_none,
-  1, 192, :_reduce_none,
-  4, 192, :_reduce_64,
-  0, 200, :_reduce_65,
-  4, 197, :_reduce_66,
-  1, 199, :_reduce_67,
-  2, 191, :_reduce_68,
-  3, 191, :_reduce_69,
-  4, 191, :_reduce_70,
-  5, 191, :_reduce_71,
-  4, 191, :_reduce_72,
-  5, 191, :_reduce_73,
-  2, 191, :_reduce_74,
-  2, 191, :_reduce_75,
-  2, 191, :_reduce_76,
-  2, 191, :_reduce_77,
-  2, 191, :_reduce_78,
-  1, 171, :_reduce_none,
-  3, 171, :_reduce_80,
-  1, 205, :_reduce_none,
-  3, 205, :_reduce_82,
-  1, 204, :_reduce_83,
-  2, 204, :_reduce_84,
-  3, 204, :_reduce_85,
-  5, 204, :_reduce_86,
-  2, 204, :_reduce_87,
-  4, 204, :_reduce_88,
-  2, 204, :_reduce_89,
-  4, 204, :_reduce_90,
-  1, 204, :_reduce_91,
-  3, 204, :_reduce_92,
-  1, 208, :_reduce_none,
-  3, 208, :_reduce_94,
-  2, 207, :_reduce_95,
-  3, 207, :_reduce_96,
-  1, 210, :_reduce_97,
-  3, 210, :_reduce_98,
-  1, 209, :_reduce_99,
-  1, 209, :_reduce_100,
-  4, 209, :_reduce_101,
-  3, 209, :_reduce_102,
-  3, 209, :_reduce_103,
-  3, 209, :_reduce_104,
-  3, 209, :_reduce_105,
-  2, 209, :_reduce_106,
-  1, 209, :_reduce_107,
-  1, 173, :_reduce_108,
-  1, 173, :_reduce_109,
-  4, 173, :_reduce_110,
-  3, 173, :_reduce_111,
-  3, 173, :_reduce_112,
-  3, 173, :_reduce_113,
-  3, 173, :_reduce_114,
-  2, 173, :_reduce_115,
-  1, 173, :_reduce_116,
-  1, 213, :_reduce_117,
-  1, 213, :_reduce_none,
-  2, 214, :_reduce_119,
-  1, 214, :_reduce_120,
-  3, 214, :_reduce_121,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_125,
-  1, 215, :_reduce_none,
-  1, 167, :_reduce_127,
-  1, 167, :_reduce_none,
-  1, 168, :_reduce_129,
-  0, 219, :_reduce_130,
-  4, 168, :_reduce_131,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  3, 186, :_reduce_203,
-  3, 186, :_reduce_204,
-  6, 186, :_reduce_205,
-  5, 186, :_reduce_206,
-  5, 186, :_reduce_207,
-  5, 186, :_reduce_208,
-  5, 186, :_reduce_209,
-  4, 186, :_reduce_210,
-  3, 186, :_reduce_211,
-  3, 186, :_reduce_212,
-  3, 186, :_reduce_213,
-  3, 186, :_reduce_214,
-  3, 186, :_reduce_215,
-  3, 186, :_reduce_216,
-  3, 186, :_reduce_217,
-  3, 186, :_reduce_218,
-  3, 186, :_reduce_219,
-  4, 186, :_reduce_220,
-  2, 186, :_reduce_221,
-  2, 186, :_reduce_222,
-  3, 186, :_reduce_223,
-  3, 186, :_reduce_224,
-  3, 186, :_reduce_225,
-  3, 186, :_reduce_226,
-  1, 186, :_reduce_none,
-  3, 186, :_reduce_228,
-  3, 186, :_reduce_229,
-  3, 186, :_reduce_230,
-  3, 186, :_reduce_231,
-  3, 186, :_reduce_232,
-  2, 186, :_reduce_233,
-  2, 186, :_reduce_234,
-  3, 186, :_reduce_235,
-  3, 186, :_reduce_236,
-  3, 186, :_reduce_237,
-  3, 186, :_reduce_238,
-  3, 186, :_reduce_239,
-  6, 186, :_reduce_240,
-  1, 186, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  3, 222, :_reduce_246,
-  3, 222, :_reduce_247,
-  1, 225, :_reduce_248,
-  1, 226, :_reduce_none,
-  2, 226, :_reduce_250,
-  4, 226, :_reduce_251,
-  2, 226, :_reduce_252,
-  1, 220, :_reduce_none,
-  3, 220, :_reduce_254,
-  3, 230, :_reduce_255,
-  1, 231, :_reduce_none,
-  1, 231, :_reduce_none,
-  1, 181, :_reduce_none,
-  1, 181, :_reduce_none,
-  2, 181, :_reduce_260,
-  4, 181, :_reduce_261,
-  2, 181, :_reduce_262,
-  1, 203, :_reduce_263,
-  2, 203, :_reduce_264,
-  2, 203, :_reduce_265,
-  4, 203, :_reduce_266,
-  1, 203, :_reduce_267,
-  0, 234, :_reduce_268,
-  2, 196, :_reduce_269,
-  2, 233, :_reduce_270,
-  2, 232, :_reduce_271,
-  1, 232, :_reduce_none,
-  1, 227, :_reduce_273,
-  2, 227, :_reduce_274,
-  3, 227, :_reduce_275,
-  4, 227, :_reduce_276,
-  1, 175, :_reduce_277,
-  1, 175, :_reduce_278,
-  3, 174, :_reduce_279,
-  4, 174, :_reduce_280,
-  2, 174, :_reduce_281,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_292,
-  0, 269, :_reduce_293,
-  4, 223, :_reduce_294,
-  0, 270, :_reduce_295,
-  3, 223, :_reduce_296,
-  0, 271, :_reduce_297,
-  4, 223, :_reduce_298,
-  3, 223, :_reduce_299,
-  3, 223, :_reduce_300,
-  2, 223, :_reduce_301,
-  0, 272, :_reduce_302,
-  4, 223, :_reduce_303,
-  0, 273, :_reduce_304,
-  4, 223, :_reduce_305,
-  1, 223, :_reduce_306,
-  4, 223, :_reduce_307,
-  3, 223, :_reduce_308,
-  1, 223, :_reduce_309,
-  5, 223, :_reduce_310,
-  4, 223, :_reduce_311,
-  3, 223, :_reduce_312,
-  2, 223, :_reduce_313,
-  1, 223, :_reduce_none,
-  2, 223, :_reduce_315,
-  1, 223, :_reduce_316,
-  6, 223, :_reduce_317,
-  6, 223, :_reduce_318,
-  4, 223, :_reduce_319,
-  4, 223, :_reduce_320,
-  5, 223, :_reduce_321,
-  4, 223, :_reduce_322,
-  6, 223, :_reduce_323,
-  0, 274, :_reduce_324,
-  0, 275, :_reduce_325,
-  7, 223, :_reduce_326,
-  0, 276, :_reduce_327,
-  0, 277, :_reduce_328,
-  0, 278, :_reduce_329,
-  9, 223, :_reduce_330,
-  0, 279, :_reduce_331,
-  0, 280, :_reduce_332,
-  6, 223, :_reduce_333,
-  0, 281, :_reduce_334,
-  6, 223, :_reduce_335,
-  0, 282, :_reduce_336,
-  0, 283, :_reduce_337,
-  9, 223, :_reduce_338,
-  1, 223, :_reduce_339,
-  1, 223, :_reduce_340,
-  1, 223, :_reduce_341,
-  1, 223, :_reduce_342,
-  1, 180, :_reduce_343,
-  1, 244, :_reduce_none,
-  1, 250, :_reduce_none,
-  1, 253, :_reduce_none,
-  1, 255, :_reduce_none,
-  1, 256, :_reduce_none,
-  1, 257, :_reduce_none,
-  1, 259, :_reduce_none,
-  1, 261, :_reduce_351,
-  1, 264, :_reduce_352,
-  1, 265, :_reduce_353,
-  1, 284, :_reduce_none,
-  1, 285, :_reduce_none,
-  1, 286, :_reduce_none,
-  1, 287, :_reduce_none,
-  1, 288, :_reduce_none,
-  1, 161, :_reduce_none,
-  1, 289, :_reduce_none,
-  1, 245, :_reduce_none,
-  1, 202, :_reduce_none,
-  1, 251, :_reduce_none,
-  1, 251, :_reduce_none,
-  2, 251, :_reduce_none,
-  1, 188, :_reduce_none,
-  1, 188, :_reduce_none,
-  1, 252, :_reduce_none,
-  5, 252, :_reduce_369,
-  1, 254, :_reduce_none,
-  2, 254, :_reduce_371,
-  1, 260, :_reduce_none,
-  1, 260, :_reduce_373,
-  1, 290, :_reduce_none,
-  3, 290, :_reduce_375,
-  1, 293, :_reduce_376,
-  3, 293, :_reduce_377,
-  1, 292, :_reduce_378,
-  3, 292, :_reduce_379,
-  5, 292, :_reduce_380,
-  1, 292, :_reduce_381,
-  3, 292, :_reduce_382,
-  2, 294, :_reduce_383,
-  1, 294, :_reduce_384,
-  4, 295, :_reduce_385,
-  2, 295, :_reduce_386,
-  2, 295, :_reduce_387,
-  1, 295, :_reduce_388,
-  2, 300, :_reduce_389,
-  1, 300, :_reduce_none,
-  6, 301, :_reduce_391,
-  8, 301, :_reduce_392,
-  4, 301, :_reduce_393,
-  6, 301, :_reduce_394,
-  4, 301, :_reduce_395,
-  2, 301, :_reduce_396,
-  6, 301, :_reduce_397,
-  2, 301, :_reduce_398,
-  4, 301, :_reduce_399,
-  6, 301, :_reduce_400,
-  2, 301, :_reduce_401,
-  4, 301, :_reduce_402,
-  2, 301, :_reduce_403,
-  4, 301, :_reduce_404,
-  1, 301, :_reduce_405,
-  1, 305, :_reduce_406,
-  1, 305, :_reduce_407,
-  3, 306, :_reduce_408,
-  1, 306, :_reduce_409,
-  4, 306, :_reduce_410,
-  1, 307, :_reduce_none,
-  4, 307, :_reduce_412,
-  1, 308, :_reduce_413,
-  3, 308, :_reduce_414,
-  1, 309, :_reduce_415,
-  1, 309, :_reduce_none,
-  0, 313, :_reduce_417,
-  0, 314, :_reduce_418,
-  5, 249, :_reduce_419,
-  4, 311, :_reduce_420,
-  1, 311, :_reduce_421,
-  3, 312, :_reduce_422,
-  3, 312, :_reduce_423,
-  3, 316, :_reduce_424,
-  2, 193, :_reduce_425,
-  4, 193, :_reduce_426,
-  5, 193, :_reduce_427,
-  5, 193, :_reduce_428,
-  2, 248, :_reduce_429,
-  4, 248, :_reduce_430,
-  4, 248, :_reduce_431,
-  3, 248, :_reduce_432,
-  3, 248, :_reduce_433,
-  3, 248, :_reduce_434,
-  2, 248, :_reduce_435,
-  1, 248, :_reduce_436,
-  4, 248, :_reduce_437,
-  0, 319, :_reduce_438,
-  4, 247, :_reduce_439,
-  0, 320, :_reduce_440,
-  4, 247, :_reduce_441,
-  0, 321, :_reduce_442,
-  0, 322, :_reduce_443,
-  4, 198, :_reduce_444,
-  0, 324, :_reduce_445,
-  0, 325, :_reduce_446,
-  4, 317, :_reduce_447,
-  1, 323, :_reduce_448,
-  2, 323, :_reduce_449,
-  3, 323, :_reduce_450,
-  4, 323, :_reduce_451,
-  0, 327, :_reduce_452,
-  6, 258, :_reduce_453,
-  1, 326, :_reduce_none,
-  1, 326, :_reduce_none,
-  6, 160, :_reduce_456,
-  0, 160, :_reduce_457,
-  1, 328, :_reduce_458,
-  1, 328, :_reduce_none,
-  1, 328, :_reduce_none,
-  2, 329, :_reduce_461,
-  1, 329, :_reduce_none,
-  2, 162, :_reduce_463,
-  1, 162, :_reduce_none,
-  1, 235, :_reduce_465,
-  1, 235, :_reduce_none,
-  1, 236, :_reduce_467,
-  1, 331, :_reduce_468,
-  1, 331, :_reduce_none,
-  2, 331, :_reduce_470,
-  3, 332, :_reduce_471,
-  1, 332, :_reduce_472,
-  3, 237, :_reduce_473,
-  3, 238, :_reduce_474,
-  3, 239, :_reduce_475,
-  3, 239, :_reduce_476,
-  1, 336, :_reduce_477,
-  3, 336, :_reduce_478,
-  1, 337, :_reduce_none,
-  2, 337, :_reduce_480,
-  3, 241, :_reduce_481,
-  3, 241, :_reduce_482,
-  1, 339, :_reduce_483,
-  3, 339, :_reduce_484,
-  3, 240, :_reduce_485,
-  3, 240, :_reduce_486,
-  3, 242, :_reduce_487,
-  3, 242, :_reduce_488,
-  1, 340, :_reduce_489,
-  3, 340, :_reduce_490,
-  1, 341, :_reduce_491,
-  3, 341, :_reduce_492,
-  1, 333, :_reduce_493,
-  2, 333, :_reduce_494,
-  1, 334, :_reduce_495,
-  2, 334, :_reduce_496,
-  1, 335, :_reduce_497,
-  2, 335, :_reduce_498,
-  1, 338, :_reduce_499,
-  0, 343, :_reduce_500,
-  3, 338, :_reduce_501,
-  0, 344, :_reduce_502,
-  4, 338, :_reduce_503,
-  1, 342, :_reduce_504,
-  1, 342, :_reduce_505,
-  1, 342, :_reduce_506,
-  1, 342, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  2, 345, :_reduce_510,
-  1, 345, :_reduce_511,
-  1, 347, :_reduce_none,
-  1, 347, :_reduce_none,
-  1, 347, :_reduce_none,
-  1, 347, :_reduce_none,
-  3, 346, :_reduce_516,
-  1, 330, :_reduce_none,
-  2, 330, :_reduce_518,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 211, :_reduce_none,
-  1, 211, :_reduce_none,
-  1, 211, :_reduce_none,
-  1, 211, :_reduce_none,
-  1, 211, :_reduce_none,
-  1, 212, :_reduce_528,
-  1, 212, :_reduce_529,
-  1, 212, :_reduce_530,
-  1, 212, :_reduce_531,
-  1, 212, :_reduce_532,
-  1, 212, :_reduce_533,
-  1, 212, :_reduce_534,
-  1, 243, :_reduce_535,
-  1, 243, :_reduce_536,
-  1, 179, :_reduce_537,
-  1, 179, :_reduce_538,
-  1, 184, :_reduce_539,
-  1, 184, :_reduce_540,
-  0, 348, :_reduce_541,
-  4, 262, :_reduce_542,
-  1, 262, :_reduce_543,
-  3, 266, :_reduce_544,
-  0, 350, :_reduce_545,
-  3, 266, :_reduce_546,
-  4, 349, :_reduce_547,
-  2, 349, :_reduce_548,
-  2, 349, :_reduce_549,
-  1, 349, :_reduce_none,
-  2, 352, :_reduce_551,
-  0, 352, :_reduce_552,
-  6, 315, :_reduce_553,
-  8, 315, :_reduce_554,
-  4, 315, :_reduce_555,
-  6, 315, :_reduce_556,
-  4, 315, :_reduce_557,
-  6, 315, :_reduce_558,
-  2, 315, :_reduce_559,
-  4, 315, :_reduce_560,
-  6, 315, :_reduce_561,
-  2, 315, :_reduce_562,
-  4, 315, :_reduce_563,
-  2, 315, :_reduce_564,
-  4, 315, :_reduce_565,
-  1, 315, :_reduce_566,
-  0, 315, :_reduce_567,
-  1, 310, :_reduce_568,
-  1, 310, :_reduce_569,
-  1, 310, :_reduce_570,
-  1, 310, :_reduce_571,
-  1, 291, :_reduce_none,
-  1, 291, :_reduce_573,
-  1, 354, :_reduce_none,
-  3, 354, :_reduce_575,
-  1, 302, :_reduce_576,
-  3, 302, :_reduce_577,
-  1, 355, :_reduce_none,
-  2, 356, :_reduce_579,
-  1, 356, :_reduce_580,
-  2, 357, :_reduce_581,
-  1, 357, :_reduce_582,
-  1, 296, :_reduce_none,
-  3, 296, :_reduce_584,
-  1, 351, :_reduce_none,
-  3, 351, :_reduce_586,
-  1, 358, :_reduce_none,
-  1, 358, :_reduce_none,
-  2, 297, :_reduce_589,
-  1, 297, :_reduce_590,
-  3, 359, :_reduce_591,
-  3, 360, :_reduce_592,
-  1, 303, :_reduce_593,
-  3, 303, :_reduce_594,
-  1, 353, :_reduce_595,
-  3, 353, :_reduce_596,
-  1, 361, :_reduce_none,
-  1, 361, :_reduce_none,
-  2, 304, :_reduce_599,
-  1, 304, :_reduce_600,
-  1, 362, :_reduce_none,
-  1, 362, :_reduce_none,
-  2, 299, :_reduce_603,
-  2, 298, :_reduce_604,
-  0, 298, :_reduce_605,
-  1, 267, :_reduce_none,
-  0, 363, :_reduce_607,
-  4, 267, :_reduce_608,
-  1, 246, :_reduce_609,
-  2, 246, :_reduce_none,
-  1, 229, :_reduce_none,
-  3, 229, :_reduce_612,
-  3, 364, :_reduce_613,
-  2, 364, :_reduce_614,
-  2, 364, :_reduce_615,
-  1, 201, :_reduce_none,
-  1, 201, :_reduce_none,
-  1, 201, :_reduce_none,
-  1, 195, :_reduce_none,
-  1, 195, :_reduce_none,
-  1, 195, :_reduce_none,
-  1, 195, :_reduce_none,
-  1, 318, :_reduce_none,
-  1, 318, :_reduce_none,
-  1, 318, :_reduce_none,
-  1, 268, :_reduce_none,
-  1, 268, :_reduce_none,
-  1, 183, :_reduce_none,
-  1, 194, :_reduce_none,
-  1, 194, :_reduce_none,
-  0, 150, :_reduce_none,
-  1, 150, :_reduce_none,
-  0, 185, :_reduce_none,
-  1, 185, :_reduce_none,
-  2, 206, :_reduce_none,
-  2, 182, :_reduce_none,
-  0, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 263, :_reduce_640,
-  1, 263, :_reduce_none,
-  1, 153, :_reduce_none,
-  2, 153, :_reduce_643,
-  0, 151, :_reduce_644 ]
-
-racc_reduce_n = 645
-
-racc_shift_n = 1086
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLOWEST => 141,
-  :tEQL => 142,
-  :tBDOT2 => 143,
-  :tBDOT3 => 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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLOWEST",
-  "tEQL",
-  "tBDOT2",
-  "tBDOT3",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "backref",
-  "opt_nl",
-  "arg",
-  "expr_value_do",
-  "do",
-  "@7",
-  "@8",
-  "command",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@9",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "fname",
-  "op",
-  "reswords",
-  "symbol",
-  "@10",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@11",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "k_def",
-  "f_arglist",
-  "singleton",
-  "dot_or_colon",
-  "@12",
-  "@13",
-  "@14",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "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",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "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",
-  "@36",
-  "@37",
-  "ssym",
-  "dsym",
-  "sym",
-  "@38",
-  "args_tail",
-  "@39",
-  "f_kwarg",
-  "opt_args_tail",
-  "f_optarg",
-  "f_arg_item",
-  "f_label",
-  "f_kw",
-  "f_block_kw",
-  "kwrest_mark",
-  "f_opt",
-  "f_block_opt",
-  "restarg_mark",
-  "blkarg_mark",
-  "@40",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 12
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 40 omitted
-
-def _reduce_41(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_42(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-# reduce 50 omitted
-
-# reduce 51 omitted
-
-def _reduce_52(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_53(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_54(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-# reduce 56 omitted
-
-def _reduce_57(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_58(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 61 omitted
-
-# reduce 62 omitted
-
-# reduce 63 omitted
-
-def _reduce_64(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_65(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_66(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_67(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_75(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_76(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_77(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_78(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 79 omitted
-
-def _reduce_80(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 81 omitted
-
-def _reduce_82(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_83(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 93 omitted
-
-def _reduce_94(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_95(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_96(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_107(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_108(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 118 omitted
-
-def _reduce_119(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_120(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 122 omitted
-
-# reduce 123 omitted
-
-# reduce 124 omitted
-
-def _reduce_125(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 126 omitted
-
-def _reduce_127(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 128 omitted
-
-def _reduce_129(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_130(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-def _reduce_203(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_204(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_205(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_206(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_207(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_208(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_209(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_210(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_211(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_212(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_213(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_214(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_215(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_216(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_217(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 227 omitted
-
-def _reduce_228(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_229(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_230(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-# reduce 241 omitted
-
-# reduce 242 omitted
-
-# reduce 243 omitted
-
-# reduce 244 omitted
-
-# reduce 245 omitted
-
-def _reduce_246(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_247(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_248(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 249 omitted
-
-def _reduce_250(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_251(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_252(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 253 omitted
-
-def _reduce_254(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_255(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-# reduce 256 omitted
-
-# reduce 257 omitted
-
-# reduce 258 omitted
-
-# reduce 259 omitted
-
-def _reduce_260(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_261(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_262(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_263(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_264(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_265(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_266(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_267(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_268(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_271(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 272 omitted
-
-def _reduce_273(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_274(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_275(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_276(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_280(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_281(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 282 omitted
-
-# reduce 283 omitted
-
-# reduce 284 omitted
-
-# reduce 285 omitted
-
-# reduce 286 omitted
-
-# reduce 287 omitted
-
-# reduce 288 omitted
-
-# reduce 289 omitted
-
-# reduce 290 omitted
-
-# reduce 291 omitted
-
-def _reduce_292(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_293(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_294(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_295(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_297(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_298(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_302(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_303(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_305(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_307(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_308(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_309(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_310(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_311(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_312(val, _values, result)
-                      debug 20
-
-    result
-end
-
-def _reduce_313(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 314 omitted
-
-def _reduce_315(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_316(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_317(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_327(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_339(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_340(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 344 omitted
-
-# reduce 345 omitted
-
-# reduce 346 omitted
-
-# reduce 347 omitted
-
-# reduce 348 omitted
-
-# reduce 349 omitted
-
-# reduce 350 omitted
-
-def _reduce_351(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_352(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 354 omitted
-
-# reduce 355 omitted
-
-# reduce 356 omitted
-
-# reduce 357 omitted
-
-# reduce 358 omitted
-
-# reduce 359 omitted
-
-# reduce 360 omitted
-
-# reduce 361 omitted
-
-# reduce 362 omitted
-
-# reduce 363 omitted
-
-# reduce 364 omitted
-
-# reduce 365 omitted
-
-# reduce 366 omitted
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-def _reduce_369(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 370 omitted
-
-def _reduce_371(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 372 omitted
-
-def _reduce_373(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 374 omitted
-
-def _reduce_375(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_376(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_377(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_378(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_379(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_380(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_381(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_382(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_383(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_384(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-def _reduce_385(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_386(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_387(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_388(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_389(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 390 omitted
-
-def _reduce_391(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_392(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_393(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_394(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_395(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_396(val, _values, result)
-                      result = args(val) << nil
-
-    result
-end
-
-def _reduce_397(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_398(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_403(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_406(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_407(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_408(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_409(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_410(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 411 omitted
-
-def _reduce_412(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_413(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 416 omitted
-
-def _reduce_417(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_418(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_433(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_438(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_439(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_442(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_443(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_444(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_445(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_446(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_447(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 454 omitted
-
-# reduce 455 omitted
-
-def _reduce_456(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_457(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_458(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 459 omitted
-
-# reduce 460 omitted
-
-def _reduce_461(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 462 omitted
-
-def _reduce_463(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 464 omitted
-
-def _reduce_465(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 466 omitted
-
-def _reduce_467(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_468(val, _values, result)
-                      debug 37
-
-    result
-end
-
-# reduce 469 omitted
-
-def _reduce_470(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_471(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_472(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_473(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_476(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_477(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 479 omitted
-
-def _reduce_480(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_481(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_482(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_483(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_485(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_486(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_487(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_488(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_489(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_491(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_492(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_495(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_497(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_498(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_499(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_500(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_501(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_502(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_503(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_504(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_505(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_506(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 507 omitted
-
-# reduce 508 omitted
-
-# reduce 509 omitted
-
-def _reduce_510(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_511(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 512 omitted
-
-# reduce 513 omitted
-
-# reduce 514 omitted
-
-# reduce 515 omitted
-
-def _reduce_516(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-
-    result
-end
-
-# reduce 517 omitted
-
-def _reduce_518(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 519 omitted
-
-# reduce 520 omitted
-
-# reduce 521 omitted
-
-# reduce 522 omitted
-
-# reduce 523 omitted
-
-# reduce 524 omitted
-
-# reduce 525 omitted
-
-# reduce 526 omitted
-
-# reduce 527 omitted
-
-def _reduce_528(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_529(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_530(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_531(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_532(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_533(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_534(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_535(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_537(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_538(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 40
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_544(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_545(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_546(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_547(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_548(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 550 omitted
-
-def _reduce_551(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_552(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_553(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_554(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_555(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_556(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_560(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_561(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_562(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_563(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_565(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_566(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_567(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_568(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_569(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_570(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 572 omitted
-
-def _reduce_573(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 574 omitted
-
-def _reduce_575(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_576(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_577(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 578 omitted
-
-def _reduce_579(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_580(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_581(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_582(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 583 omitted
-
-def _reduce_584(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 585 omitted
-
-def _reduce_586(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 587 omitted
-
-# reduce 588 omitted
-
-def _reduce_589(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_590(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_591(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-
-    result
-end
-
-def _reduce_592(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-
-    result
-end
-
-def _reduce_593(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_595(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_596(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 597 omitted
-
-# reduce 598 omitted
-
-def _reduce_599(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_600(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 601 omitted
-
-# reduce 602 omitted
-
-def _reduce_603(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_604(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_605(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 606 omitted
-
-def _reduce_607(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_608(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_609(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 610 omitted
-
-# reduce 611 omitted
-
-def _reduce_612(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_613(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_614(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_615(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 616 omitted
-
-# reduce 617 omitted
-
-# reduce 618 omitted
-
-# reduce 619 omitted
-
-# reduce 620 omitted
-
-# reduce 621 omitted
-
-# reduce 622 omitted
-
-# reduce 623 omitted
-
-# reduce 624 omitted
-
-# reduce 625 omitted
-
-# reduce 626 omitted
-
-# reduce 627 omitted
-
-# reduce 628 omitted
-
-# reduce 629 omitted
-
-# reduce 630 omitted
-
-# reduce 631 omitted
-
-# reduce 632 omitted
-
-# reduce 633 omitted
-
-# reduce 634 omitted
-
-# reduce 635 omitted
-
-# reduce 636 omitted
-
-# reduce 637 omitted
-
-# reduce 638 omitted
-
-# reduce 639 omitted
-
-def _reduce_640(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 641 omitted
-
-# reduce 642 omitted
-
-def _reduce_643(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_644(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby21Parser
diff -pruN 3.20.0-2/lib/ruby21_parser.y 3.21.1-1/lib/ruby21_parser.y
--- 3.20.0-2/lib/ruby21_parser.y	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/lib/ruby21_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,2700 +0,0 @@
-# -*- racc -*-
-
-class Ruby21Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 12
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg                                   =tLBRACE_ARG
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 20
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def fname
-                    {
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-                    }
-                    f_arglist bodystmt k_end
-                    {
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fname
-                    {
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                    }
-                    f_arglist bodystmt k_end
-                    {
-
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA
-                    {
-                      result = args(val) << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    compstmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 37
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 40
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-       f_arglist: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_item: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_norm_arg tEQL arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                    }
-
-     f_block_opt: f_norm_arg tEQL primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-        rbracket: opt_nl tRBRACK
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby22_parser.rb 3.21.1-1/lib/ruby22_parser.rb
--- 3.20.0-2/lib/ruby22_parser.rb	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/lib/ruby22_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,11123 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby22Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -523,   567,   567,   646,   567,   567,   284,  -523,  -523,  -523,
-     3,   567,  -523,  -523,  -523,   284,  -523,   233,   -94,   649,
-   224,   225,    95,  -111,  -523,   254,  -523,  -523,  -523,  -108,
-    96,  -109,   -80,   130,   224,   225,  -523,  -523,   129,  -523,
-  -523,  -523,  -523,  -523,   231,  -102,  -116,  -104,  -113,  -115,
-  -111,  -110,  -113,   234,   422,   126,   884,   251,  -110,   424,
-   423,   253,   252,   224,   225,   221,   645,  -523,  -523,  -523,
-  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
-  -523,   738,   648,  -523,  -523,  -523,  -107,  -523,  -523,   224,
-   225,  -523,   846,   286,  -523,  -523,   222,  -523,   847,  -523,
-  -116,  -523,   286,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
-   234,  -523,  -102,  -523,  -104,   130,   130,  -112,   130,   130,
-   129,   129,   946,   129,   129,   130,  -523,  -523,  -523,  -523,
-   129,  -523,  -526,  -523,   -99,  -112,  -100,  -111,  -523,  -526,
-  -526,  -526,  -111,  -523,  -526,  -526,  -526,  -102,  -526,  -104,
-  -102,  -107,  -104,   234,  -106,  -102,  -526,  -104,  -526,  -526,
-  -526,   883,  -113,  -101,  -102,  -110,  -104,  -113,  -526,  -526,
-  -110,  -526,  -526,  -526,  -526,  -526,  -114,   108,   109,   234,
-   829,   130,   284,  -621,   829,   230,   129,   284,  -537,   108,
-   109,  -523,   279,   727,   224,   225,   726,  -618,  -523,  -526,
-  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,
-  -526,  -526,  -526,  -621,   828,  -526,  -526,  -526,   828,  -526,
-  -526,  -526,  -103,  -526,   630,  -533,  -526,  -526,  -526,  -526,
-  -619,  -526,  -533,  -526,   223,  -526,  -526,  -526,  -526,  -526,
-  -526,  -526,  -622,  -526,  -108,  -526,  -537,   281,   630,  -112,
-  -523,   630,   281,   226,  -112,   110,   111,  -523,  -526,  -526,
-  -526,  -526,  -618,  -526,  -300,  -526,  -523,   110,   111,   286,
-  -526,  -300,  -300,  -300,   286,  -526,   615,  -300,  -300,   254,
-  -300,  -105,   230,  -526,  -618,   632,   631,   618,   -99,   229,
-  -526,   130,  -625,  -437,   792,  -619,   129,   274,   227,  -526,
-  -300,  -300,  -108,  -300,  -300,  -300,  -300,  -300,   336,   632,
-   631,   251,   632,   631,   628,   253,   252,  -619,   794,  -532,
-   626,   625,   630,   130,   727,   337,  -532,   729,   129,  -625,
-  -538,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,  -625,  -437,  -300,  -300,  -300,
-   630,   672,  -625,  -437,   619,  -300,   750,  -621,  -300,   476,
-   751,  -625,  -437,  -300,   630,  -300,   234,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,   231,  -300,   615,  -300,   630,  -625,
-  -437,   630,  -625,   632,   631,   628,  -109,   618,   369,  -625,
-  -300,  -300,  -625,  -105,  -621,  -300,  -538,   546,  -625,  -625,
-  -625,  -625,  -300,   700,   130,  -625,  -625,  -114,  -625,   129,
-   394,   632,   631,   633,   397,  -116,  -625,  -625,   820,   630,
-   626,   625,   635,   856,   860,   632,   631,   638,  -625,  -625,
-  -116,  -625,  -625,  -625,  -625,  -625,   546,   400,  -100,   632,
-   631,   643,   632,   631,   650,   727,   666,   860,   729,   574,
-   821,   666,  -109,  -115,   619,   667,   917,   807,   403,  -625,
-  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
-  -625,  -625,  -625,   420,  -111,  -625,  -625,  -625,  -106,   673,
-   632,   631,   667,  -625,   807,   130,  -625,  -534,  -102,   425,
-   129,  -625,  -115,  -625,  -534,  -625,  -625,  -625,  -625,  -625,
-  -625,  -625,  -111,  -625,  -625,  -625,  -113,  -111,   475,  -343,
-  -531,  -113,  -110,  -110,   271,   272,  -343,  -531,  -625,  -625,
-  -625,  -103,   477,  -625,  -104,  -343,  -101,  -625,  -625,  -625,
-  -625,   478,  -625,  -625,  -625,  -112,  -625,   130,  -113,   233,
-  -110,   507,   129,   516,   254,  -625,  -625,  -625,  -625,   270,
-   269,  -528,   727,   224,   225,   729,  -625,  -625,  -528,  -625,
-  -625,  -625,  -625,  -625,   610,  -529,   607,   606,   605,   519,
-   608,   610,  -529,   607,   606,   605,   251,   608,  -530,   592,
-   253,   252,   249,   250,   521,  -530,   593,  -625,  -625,  -625,
-  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
-  -625,   -79,   780,  -625,  -625,  -625,   230,   822,  -625,   780,
-   234,  -625,   532,   473,  -625,  -625,   533,  -625,   784,  -625,
-   540,  -625,   474,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
-   291,  -625,  -625,  -625,   610,   234,   607,   606,   605,   615,
-   608,   133,   134,   135,   136,   137,  -625,  -625,  -625,  -625,
-   618,  -625,  -300,  -625,   234,  -535,   281,  1048,  -625,  -300,
-  -300,  -300,  -535,  -112,  -300,  -300,  -300,   543,  -300,   547,
-  -536,  -535,   613,   596,   626,   625,   254,  -536,  -300,  -300,
-  -300,   623,   622,   626,   625,   254,  -536,   234,  -300,  -300,
-   574,  -300,  -300,  -300,  -300,  -300,   610,   413,   607,   606,
-   605,   579,   608,   610,   580,   607,   606,   605,   251,   608,
-   856,   860,   253,   252,   249,   250,   637,   619,   641,  -300,
-  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,   644,   780,  -300,  -300,  -300,   230,   823,
-  -300,   780,   647,  -300,   654,   539,  -300,  -300,  -273,  -300,
-   784,  -300,   656,  -300,   537,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,   657,  -300,   234,  -300,   610,   664,   607,   606,
-   605,   615,   608,   133,   134,   135,   136,   137,  -300,  -300,
-  -300,  -300,   618,  -300,  -300,  -300,   665,   281,   677,   254,
-  -300,  -300,  -300,  -300,   254,  -114,   254,  -300,  -300,   610,
-  -300,   607,   606,   605,   613,   608,   610,   254,   607,   606,
-   605,   684,   608,   623,   622,   626,   625,   234,   234,   420,
-  -300,  -300,  -291,  -300,  -300,  -300,  -300,  -300,   234,  -291,
-   -94,   704,   230,   234,   230,   552,   715,   780,  -291,   549,
-   720,   578,   723,   234,   780,   730,   784,   731,   474,   619,
-   576,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,   230,  -301,  -300,  -300,  -300,
-   230,   672,   660,  -301,   521,  -300,   734,   753,  -300,   723,
-   723,   658,  -301,  -300,   574,  -300,   755,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,   723,  -300,   757,  -300,   762,   768,
-  -301,   230,  -300,   771,   772,   774,   776,  -301,  1032,  -300,
-  -300,  -300,  -625,  -300,  -622,  -300,  -301,   755,  -300,  -625,
-  -625,  -625,  -300,   778,   787,  -625,  -625,  -114,  -625,   254,
-  -647,  -647,  -647,  -647,   271,   272,   788,  -625,  -647,  -647,
-  -535,   789,   795,  -536,   796,   264,   265,  -535,  -625,  -625,
-  -536,  -625,  -625,  -625,  -625,  -625,  -535,  -274,   808,  -536,
-   507,   251,   507,   257,   234,   253,   252,   249,   250,   270,
-   269,   255,   610,   256,   607,   606,   605,   825,   608,  -625,
-  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
-  -625,  -625,  -625,  -300,   230,  -625,  -625,  -625,   274,   673,
-  -300,  1038,   834,  -625,   836,  -622,  -625,   519,   521,  -300,
-  1036,  -625,   715,  -625,   234,  -625,  -625,  -625,  -625,  -625,
-  -625,  -625,   281,  -625,  -625,  -625,  -291,   281,   715,   254,
-   906,   907,   860,  -291,   908,   124,   125,   723,  -625,  -625,
-   234,  -625,  -291,  -625,     8,    85,    86,    87,    12,    78,
-  -625,   234,   230,    79,    80,  -112,   901,   902,    83,  1032,
-    81,    82,    84,    33,    34,    76,    77,   234,   755,   911,
-  -275,   234,    88,    31,    30,   118,   117,   119,   120,   916,
-   933,    22,   715,  -273,   938,   723,   661,    11,    49,    10,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   723,
-   116,   124,   125,   723,   108,   109,   234,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,  -301,   247,   248,   723,   723,   264,   265,  -301,    43,
-   234,   960,    36,   234,   771,    62,    63,  -301,   963,    64,
-   965,    38,   251,   967,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   969,   969,  -300,   105,    95,
-    97,    98,    99,   101,  -300,   234,   976,    96,   106,  -622,
-   268,  -276,  -248,  -300,   977,    89,   771,   980,    93,   100,
-   102,   983,   110,   111,   310,    85,    86,    87,    12,    78,
-   985,   987,   234,    79,    80,   989,   723,   762,    83,  1009,
-    81,    82,    84,    33,    34,    76,    77,   133,   134,   135,
-   136,   137,    88,    31,    30,   118,   117,   119,   120,  1010,
-  1019,    22,  1020,  1030,  1033,   846,   661,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,  1039,
-   116,   124,   125,  1049,   108,   109,   969,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,   969,   247,   248,   969,   771,   264,   265,  1056,    43,
-  1058,  1060,   314,  1062,  1062,    62,    63,   720,   723,    64,
-   723,    38,   251,  1020,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,  -622,  -621,   234,   105,    95,
-    97,    98,    99,   101,   969,  1084,  1062,    96,   106,  1062,
-   268,  1062,  1062,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   133,   134,   135,
-   136,   137,    88,    31,    30,   118,   117,   119,   120,   nil,
-  1013,    22,   607,   606,   605,   nil,   608,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-  1013,    22,   607,   606,   605,   nil,   608,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,   314,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   234,
-   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,   314,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,   nil,  -647,  -647,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
-   263,   nil,  -647,  -647,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,  -647,  -647,  -647,  -647,   271,   272,   nil,   nil,  -647,
-  -647,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,     8,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,  -647,  -647,  -647,  -647,   271,   272,   nil,   nil,  -647,
-  -647,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,  -647,  -647,  -647,  -647,   271,   272,   nil,   nil,  -647,
-  -647,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,  -647,  -647,  -647,  -647,   271,   272,   nil,   nil,  -647,
-  -647,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,  -647,  -647,  -647,  -647,   271,   272,   nil,   nil,  -647,
-  -647,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   nil,   nil,   262,
-   263,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   258,   259,   260,   261,   271,   272,   266,   nil,   262,
-   263,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   254,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   264,   265,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   251,    96,   106,   nil,
-   253,   252,   249,   250,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   nil,   nil,   255,    23,   256,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   254,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
-    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   610,    64,   607,   606,
-   605,   615,   608,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   618,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   613,  -436,    93,   100,   102,   nil,
-   110,   111,  -436,  -436,  -436,   626,   625,  -436,  -436,  -436,
-   610,  -436,   607,   606,   605,   615,   608,   nil,   nil,   nil,
-  -436,  -436,  -436,   nil,   nil,   nil,   618,   nil,   nil,   nil,
-   nil,  -436,  -436,   nil,  -436,  -436,  -436,  -436,  -436,   619,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   613,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   623,   622,   626,
-   625,   nil,  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,
-  -436,  -436,  -436,  -436,  -436,  -436,   nil,   nil,  -436,  -436,
-  -436,   nil,   nil,  -436,   nil,   281,  -436,   nil,   nil,  -436,
-  -436,   nil,  -436,   619,  -436,   nil,  -436,   nil,  -436,  -436,
-  -436,  -436,  -436,  -436,  -436,   nil,  -436,  -436,  -436,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  -436,  -436,  -309,  -436,   nil,  -436,   nil,   nil,   nil,
-  -309,  -309,  -309,  -436,   nil,  -309,  -309,  -309,   610,  -309,
-   607,   606,   605,   615,   608,   nil,   nil,   nil,   nil,  -309,
-  -309,   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,  -309,
-  -309,   nil,  -309,  -309,  -309,  -309,  -309,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   613,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   623,   622,   626,   625,   nil,
-  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,
-  -309,  -309,  -309,  -309,   nil,   nil,  -309,  -309,  -309,   nil,
-   nil,  -309,   nil,   291,  -309,   nil,   nil,  -309,  -309,   nil,
-  -309,   619,  -309,   nil,  -309,   nil,  -309,  -309,  -309,  -309,
-  -309,  -309,  -309,   nil,  -309,   nil,  -309,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -309,
-  -309,   nil,  -309,   nil,  -309,    85,    86,    87,   nil,    78,
-   nil,  -309,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   303,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   303,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,
-   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,   nil,   nil,   333,   nil,   nil,   nil,
-   nil,   nil,   610,   nil,   607,   606,   605,   615,   608,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   323,   nil,   618,   319,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   318,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   613,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   626,   625,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   619,    81,    82,    84,   329,
-   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
-   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,   327,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,
-   nil,   610,   nil,   607,   606,   605,   615,   608,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   323,   nil,   618,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   613,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   626,   625,   nil,    96,   106,   nil,   nil,   nil,   335,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   619,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   610,    64,   607,   606,   605,   615,   608,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   618,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   613,
-  -292,    93,   100,   102,   nil,   110,   111,  -292,  -292,  -292,
-   626,   625,  -292,  -292,  -292,   610,  -292,   607,   606,   605,
-   615,   608,   nil,   nil,   nil,   nil,  -292,  -292,  -292,   nil,
-   nil,   618,   nil,   nil,   nil,   nil,  -292,  -292,   nil,  -292,
-  -292,  -292,  -292,  -292,   619,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   623,   622,   626,   625,   nil,  -292,  -292,  -292,
-  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,
-  -292,   nil,   nil,  -292,  -292,  -292,   nil,   nil,  -292,   nil,
-   nil,  -292,   nil,   nil,  -292,  -292,   nil,  -292,   619,  -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,
-   nil,  -292,   nil,  -292,   nil,   nil,   nil,  -646,  -292,    85,
-    86,    87,    12,    78,  -646,  -646,  -646,    79,    80,  -646,
-  -646,  -646,    83,  -646,    81,    82,    84,    33,    34,    76,
-    77,   nil,  -646,  -646,  -646,   nil,    88,    31,    30,   118,
-   117,   119,   120,  -646,  -646,    22,  -646,  -646,  -646,  -646,
-  -646,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,  -646,  -646,  -646,  -646,  -646,  -646,
-  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,   nil,   nil,
-  -646,  -646,  -646,    43,   nil,  -646,    36,   281,  -646,    62,
-    63,  -646,  -646,    64,  -646,    38,  -646,   nil,  -646,    48,
-  -646,  -646,  -646,  -646,  -646,  -646,  -646,    23,  -646,  -646,
-  -646,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,  -646,  -646,   nil,  -646,   nil,  -646,    89,
-   nil,   nil,    93,   100,   102,  -646,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   130,   nil,   nil,   nil,   nil,   129,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   333,
-   nil,   nil,   nil,   nil,   nil,   610,   nil,   607,   606,   605,
-   615,   608,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,
-   nil,   618,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   626,   625,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   619,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   413,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   430,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   430,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,
-   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   234,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
-   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
-   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
-   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
-   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   303,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   303,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,
-   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   234,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
-   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
-   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   nil,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-   327,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   333,   nil,   nil,   nil,   nil,   nil,   610,   nil,   607,
-   606,   605,   615,   608,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   323,   nil,   618,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   626,   625,   nil,    96,
-   106,   nil,   nil,   nil,   535,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   619,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   327,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   333,   nil,   nil,   nil,   nil,   nil,   610,   nil,   607,   606,
-   605,   615,   608,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   323,   nil,   618,   319,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   626,   625,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   619,
-    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   552,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   303,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,   327,   nil,   nil,   122,   121,   123,   581,
-    60,   114,   113,   582,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,
-   610,   nil,   607,   606,   605,   615,   608,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   583,   nil,   618,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   613,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   626,
-   625,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   619,    81,    82,    84,   329,   330,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,   327,   nil,   nil,   122,   121,   123,   581,    60,
-   114,   113,   582,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   610,
-   nil,   607,   606,   605,   615,   608,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   583,   nil,   618,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   613,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   626,   625,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   619,    81,    82,    84,   329,   330,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   610,    64,   607,   606,   605,   615,   608,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   618,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   613,
-  -626,    93,   100,   102,   nil,   110,   111,  -626,  -626,  -626,
-   626,   625,  -626,  -626,  -626,   610,  -626,   607,   606,   605,
-   615,   608,   nil,   nil,   nil,  -626,  -626,  -626,  -626,   nil,
-   nil,   618,   nil,   nil,   nil,   nil,  -626,  -626,   nil,  -626,
-  -626,  -626,  -626,  -626,   619,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   623,   622,   626,   625,   nil,  -626,  -626,  -626,
-  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,   nil,   nil,  -626,  -626,  -626,   nil,   nil,  -626,   nil,
-   nil,  -626,   nil,   nil,  -626,  -626,   nil,  -626,   619,  -626,
-   nil,  -626,   nil,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-   nil,  -626,  -626,  -626,   610,   nil,   607,   606,   605,   615,
-   608,   nil,   nil,   nil,   nil,   nil,  -626,  -626,  -626,  -626,
-   618,  -626,  -627,  -626,   nil,   nil,   nil,   nil,  -626,  -627,
-  -627,  -627,   nil,   nil,  -627,  -627,  -627,   nil,  -627,   nil,
-   nil,   nil,   613,   nil,   nil,   nil,   nil,  -627,  -627,  -627,
-  -627,   623,   622,   626,   625,   nil,   nil,   nil,  -627,  -627,
-   nil,  -627,  -627,  -627,  -627,  -627,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   234,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   619,   nil,  -627,
-  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,
-  -627,  -627,  -627,   nil,   nil,  -627,  -627,  -627,   nil,   nil,
-  -627,   nil,   nil,  -627,   nil,   nil,  -627,  -627,   nil,  -627,
-   nil,  -627,   nil,  -627,   nil,  -627,  -627,  -627,  -627,  -627,
-  -627,  -627,   nil,  -627,  -627,  -627,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -627,  -627,
-  -627,  -627,   nil,  -627,   nil,  -627,   nil,    85,    86,    87,
-  -627,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   303,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,   301,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,  -646,    93,   100,   102,
-   nil,   110,   111,  -646,  -646,  -646,   nil,   nil,  -646,  -646,
-  -646,   nil,  -646,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  -646,  -646,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -646,  -646,   nil,  -646,  -646,  -646,  -646,  -646,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   505,   457,   nil,
-   nil,   506,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,  -646,   nil,   nil,   175,   176,   161,
-   162,  -646,   nil,   nil,   nil,   nil,   281,  -646,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,  -646,  -646,
-   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -646,   nil,    85,    86,    87,  -646,    78,   nil,
-   170,   nil,    79,    80,  -646,   nil,   nil,    83,   nil,    81,
-    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   303,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   697,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,    11,    49,   312,    13,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   413,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,   327,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   323,   nil,   nil,   319,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   303,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   300,   nil,   298,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,   301,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   304,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,   327,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   323,   nil,   nil,   319,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   303,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
-   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
-   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   800,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   303,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,   301,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   304,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   303,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   697,   nil,   298,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-   301,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   303,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,   327,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   323,   nil,   nil,   319,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-   327,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   323,   nil,   nil,   319,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   430,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   303,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   697,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   303,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   865,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   303,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,   nil,
-   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
-   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
-   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
-   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   303,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   298,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   105,   301,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   304,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
-   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
-   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
-   nil,   327,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   991,   nil,   nil,   245,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
-   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
-   327,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   998,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,  1003,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
-   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   333,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   991,
-   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
-   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
-   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,
-   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
-   110,   111,   188,   199,   189,   212,   185,   205,   195,   194,
-   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
-   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
-   214,   209,   208,   201,   211,   196,   184,   203,   202,   nil,
-   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,
-   180,   141,   143,   140,   nil,   142,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,
-   205,   195,   194,   215,   216,   210,   193,   192,   187,   213,
-   217,   218,   197,   186,   200,   204,   206,   198,   191,   nil,
-   nil,   nil,   207,   214,   209,   208,   201,   211,   196,   184,
-   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,
-   182,   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,
-   189,   212,   185,   205,   195,   194,   215,   216,   210,   193,
-   192,   187,   213,   217,   218,   197,   186,   200,   204,   206,
-   198,   191,   nil,   nil,   nil,   207,   214,   209,   378,   377,
-   379,   376,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,
-   183,   190,   181,   182,   373,   374,   375,   371,   143,   114,
-   113,   372,   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   385,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   188,   199,   189,   212,   185,   205,   195,   194,   215,
-   216,   210,   193,   192,   187,   213,   217,   218,   197,   186,
-   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,
-   209,   208,   201,   211,   196,   184,   203,   202,   nil,   nil,
-   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,   180,
-   141,   143,   410,   409,   142,   nil,   411,   nil,   nil,   nil,
-   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,
-   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
-   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
-   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
-   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,   205,
-   195,   194,   215,   216,   210,   193,   192,   187,   213,   217,
-   218,   197,   186,   200,   204,   206,   198,   191,   nil,   nil,
-   nil,   207,   214,   209,   208,   201,   211,   196,   184,   203,
-   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,
-   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,
-   212,   185,   205,   195,   194,   215,   216,   210,   193,   192,
-   187,   213,   217,   218,   197,   186,   200,   204,   206,   198,
-   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,
-   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,
-   190,   181,   182,   178,   179,   180,   141,   143,   nil,   nil,
-   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
-   174,   nil,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
-   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
-   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
-   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
-   208,   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,
-   nil,   nil,   183,   190,   181,   182,   178,   179,   180,   141,
-   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   453,   457,   nil,
-   nil,   454,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   460,   464,   nil,   nil,   459,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   678,   457,   nil,   nil,   679,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   680,   464,   nil,   nil,   681,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   708,
-   457,   nil,   nil,   709,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   711,   464,   nil,
-   nil,   712,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   678,   457,   nil,   nil,   679,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   680,   464,   nil,   nil,   681,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   745,   457,   nil,   nil,   746,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   747,
-   464,   nil,   nil,   748,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   802,   457,   nil,
-   nil,   803,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   805,   464,   nil,   nil,   804,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   869,   464,   nil,   nil,   870,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   505,   457,   nil,   nil,   506,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   610,   177,   607,   606,   605,   615,   608,
-   610,   nil,   607,   606,   605,   615,   608,   nil,   nil,   618,
-   nil,   nil,   nil,   nil,   170,   nil,   618,   610,   nil,   607,
-   606,   605,   615,   608,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   613,   nil,   618,   nil,   nil,   nil,   nil,   613,   nil,
-   623,   622,   626,   625,   nil,   nil,   nil,   623,   622,   626,
-   625,   nil,   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   623,   622,   626,   625,   nil,   nil,
-   nil,  1066,   464,   nil,   nil,  1065,   619,   nil,   nil,   nil,
-   nil,   nil,   nil,   619,   173,   174,   nil,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   619,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,  1069,
-   457,   nil,   nil,  1070,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,  1071,   464,   nil,
-   nil,  1072,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   610,
-   177,   607,   606,   605,   615,   608,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,
-   170,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   613,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   623,   622,   626,   625,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   619 ]
-
-racc_action_check = [
-   112,   352,   353,   401,   937,   866,    65,   112,   112,   112,
-     1,   942,   112,   112,   112,   687,   112,    22,   703,   404,
-   469,   469,    92,  1069,   112,   481,   112,   112,   112,   360,
-    92,   361,   703,     5,    17,    17,   112,   112,     5,   112,
-   112,   112,   112,   112,    20,   708,   364,   709,  1070,   579,
-   745,  1082,   746,    22,   140,     3,   766,   481,   867,   140,
-   140,   481,   481,   718,   718,    13,   401,   112,   112,   112,
-   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
-   112,   569,   404,   112,   112,   112,    20,   112,   112,   765,
-   765,   112,   719,    65,   112,   112,    15,   112,   719,   112,
-    20,   112,   687,   112,   112,   112,   112,   112,   112,   112,
-   469,   112,   708,   112,   709,   352,   353,   747,   937,   866,
-   352,   353,   866,   937,   866,   942,   112,   112,   112,   112,
-   942,   112,   115,   112,   360,  1071,   361,  1069,   112,   115,
-   115,   115,  1069,   112,   115,   115,   115,   708,   115,   709,
-   708,   364,   709,   718,   579,   745,   115,   746,   115,   115,
-   115,   766,  1070,   867,   708,  1082,   709,  1070,   115,   115,
-  1082,   115,   115,   115,   115,   115,   748,    44,    44,   765,
-   685,   569,    29,   747,   835,    27,   569,   328,   237,   333,
-   333,   371,    27,   558,   351,   351,   558,   581,   371,   115,
-   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
-   115,   115,   115,  1071,   685,   115,   115,   115,   835,   115,
-   115,   372,   747,   115,   639,   373,   115,   115,   372,   115,
-   582,   115,   373,   115,    16,   115,   115,   115,   115,   115,
-   115,   115,   748,   115,   237,   115,    41,    29,   642,  1071,
-   581,   388,   328,    18,  1071,    44,    44,   581,   115,   115,
-   115,   115,   581,   115,   459,   115,   581,   333,   333,    29,
-   115,   459,   459,   459,   328,   115,   768,   459,   459,   482,
-   459,   748,    19,   582,   581,   639,   639,   768,    41,    19,
-   582,   307,   711,   841,   639,   582,   307,    25,    19,   582,
-   459,   459,    41,   459,   459,   459,   459,   459,    40,   642,
-   642,   482,   388,   388,   388,   482,   482,   582,   642,   374,
-   768,   768,   523,   357,   559,    43,   374,   559,   357,   869,
-   238,   459,   459,   459,   459,   459,   459,   459,   459,   459,
-   459,   459,   459,   459,   459,   711,   841,   459,   459,   459,
-   390,   459,   711,   841,   768,   459,   583,   711,   459,   240,
-   583,   711,   841,   459,   395,   459,    49,   459,   459,   459,
-   459,   459,   459,   459,   437,   459,   977,   459,   398,   711,
-   841,   406,   869,   523,   523,   523,   238,   977,    73,   869,
-   459,   459,   460,   459,   869,   459,    42,   475,   869,   460,
-   460,   460,   459,   523,   875,   460,   460,   459,   460,   875,
-    99,   390,   390,   390,   100,   240,   869,   460,   678,   392,
-   977,   977,   392,   733,   733,   395,   395,   395,   460,   460,
-   437,   460,   460,   460,   460,   460,   337,   101,    42,   398,
-   398,   398,   406,   406,   406,   563,   453,  1004,   563,  1004,
-   679,   802,    42,   475,   977,   803,   824,   913,   102,   460,
-   460,   460,   460,   460,   460,   460,   460,   460,   460,   460,
-   460,   460,   460,   138,   678,   460,   460,   460,   337,   460,
-   392,   392,   454,   460,   662,   879,   460,   375,   453,   219,
-   879,   460,   337,   460,   375,   460,   460,   460,   460,   460,
-   460,   460,   453,   460,   460,   460,   679,   802,   239,    50,
-   376,   803,   824,   913,    47,    47,    50,   376,   460,   460,
-   680,   460,   241,   460,   454,    50,   662,   680,   680,   680,
-   460,   242,   680,   680,   680,   460,   680,   951,   454,   246,
-   662,   280,   951,   295,   496,   680,   680,   680,   680,    47,
-    47,   377,   854,   759,   759,   854,   680,   680,   377,   680,
-   680,   680,   680,   680,   902,   378,   902,   902,   902,   296,
-   902,   613,   378,   613,   613,   613,   496,   613,   379,   381,
-   496,   496,   496,   496,   299,   379,   381,   680,   680,   680,
-   680,   680,   680,   680,   680,   680,   680,   680,   680,   680,
-   680,   313,   902,   680,   680,   680,   236,   680,   680,   613,
-   315,   680,   316,   236,   680,   680,   317,   680,   613,   680,
-   323,   680,   236,   680,   680,   680,   680,   680,   680,   680,
-   326,   680,   680,   680,   386,   327,   386,   386,   386,   386,
-   386,     9,     9,     9,     9,     9,   680,   680,   680,   680,
-   386,   680,   681,   680,  1011,   320,   332,  1011,   680,   681,
-   681,   681,   320,   680,   681,   681,   681,   334,   681,   338,
-   321,   320,   386,   386,   771,   771,   497,   321,   681,   681,
-   681,   386,   386,   386,   386,   341,   321,   347,   681,   681,
-   358,   681,   681,   681,   681,   681,  1019,   359,  1019,  1019,
-  1019,   363,  1019,   780,   365,   780,   780,   780,   497,   780,
-  1040,  1040,   497,   497,   497,   497,   394,   386,   397,   681,
-   681,   681,   681,   681,   681,   681,   681,   681,   681,   681,
-   681,   681,   681,   400,  1019,   681,   681,   681,   322,   681,
-   681,   780,   403,   681,   426,   322,   681,   681,   429,   681,
-   780,   681,   431,   681,   322,   681,   681,   681,   681,   681,
-   681,   681,   434,   681,   448,   681,   596,   451,   596,   596,
-   596,   596,   596,   311,   311,   311,   311,   311,   681,   681,
-   681,   681,   596,   681,   804,   681,   452,   461,   471,   483,
-   681,   804,   804,   804,   484,   681,   485,   804,   804,   901,
-   804,   901,   901,   901,   596,   901,  1020,   486,  1020,  1020,
-  1020,   502,  1020,   596,   596,   596,   596,   509,   513,   529,
-   804,   804,   324,   804,   804,   804,   804,   804,   530,   324,
-   531,   534,   339,   536,   362,   541,   544,   901,   324,   339,
-   553,   362,   554,   555,  1020,   560,   901,   561,   339,   596,
-   362,   804,   804,   804,   804,   804,   804,   804,   804,   804,
-   804,   804,   804,   804,   804,   436,   540,   804,   804,   804,
-   585,   804,   436,   540,   564,   804,   566,   585,   804,   570,
-   571,   436,   540,   804,   572,   804,   585,   804,   804,   804,
-   804,   804,   804,   804,   573,   804,   587,   804,   590,   598,
-   751,   990,   712,   599,   601,   602,   603,   751,   990,   712,
-   804,   804,   805,   804,   712,   804,   751,   990,   712,   805,
-   805,   805,   804,   612,   620,   805,   805,   804,   805,   490,
-   490,   490,   490,   490,   490,   490,   624,   805,   490,   490,
-   995,   627,   646,   996,   649,   490,   490,   995,   805,   805,
-   996,   805,   805,   805,   805,   805,   995,   655,   663,   996,
-   668,   490,   674,   490,   682,   490,   490,   490,   490,   490,
-   490,   490,   784,   490,   784,   784,   784,   683,   784,   805,
-   805,   805,   805,   805,   805,   805,   805,   805,   805,   805,
-   805,   805,   805,   870,   997,   805,   805,   805,   686,   805,
-   870,   997,   690,   805,   692,   870,   805,   694,   696,   870,
-   997,   805,   705,   805,   707,   805,   805,   805,   805,   805,
-   805,   805,   710,   805,   805,   805,   999,   713,   714,   717,
-   790,   790,   735,   999,   790,   790,   790,   741,   805,   805,
-   744,   805,   999,   805,     2,     2,     2,     2,     2,     2,
-   805,   767,  1031,     2,     2,   805,   782,   783,     2,  1031,
-     2,     2,     2,     2,     2,     2,     2,   785,  1031,   797,
-   799,   801,     2,     2,     2,     2,     2,     2,     2,   809,
-   833,     2,   840,   850,   851,   855,   441,     2,     2,     2,
-     2,     2,     2,     2,     2,     2,     2,     2,     2,   861,
-     2,     2,     2,   868,     2,     2,   872,     2,     2,     2,
-   441,   441,   441,   441,   441,   441,   441,   441,   441,   441,
-   441,  1039,   441,   441,   876,   877,   441,   441,  1039,     2,
-   878,   885,     2,   886,   887,     2,     2,  1039,   891,     2,
-   892,     2,   441,   894,   441,     2,   441,   441,   441,   441,
-   441,   441,   441,     2,   441,   895,   897,  1072,     2,     2,
-     2,     2,     2,     2,  1072,   900,   910,     2,     2,  1072,
-   441,   912,   441,  1072,   919,     2,   920,   922,     2,     2,
-     2,   923,     2,     2,    36,    36,    36,    36,    36,    36,
-   924,   926,   927,    36,    36,   928,   950,   957,    36,   958,
-    36,    36,    36,    36,    36,    36,    36,   346,   346,   346,
-   346,   346,    36,    36,    36,    36,    36,    36,    36,   959,
-   974,    36,   975,   988,   991,   993,   447,    36,    36,    36,
-    36,    36,    36,    36,    36,    36,    36,    36,    36,   998,
-    36,    36,    36,  1015,    36,    36,  1016,    36,    36,    36,
-   447,   447,   447,   447,   447,   447,   447,   447,   447,   447,
-   447,  1017,   447,   447,  1018,  1021,   447,   447,  1024,    36,
-  1025,  1026,    36,  1027,  1029,    36,    36,  1035,  1045,    36,
-  1046,    36,   447,  1054,   447,    36,   447,   447,   447,   447,
-   447,   447,   447,    36,   447,  1065,  1066,  1068,    36,    36,
-    36,    36,    36,    36,  1077,  1078,  1079,    36,    36,  1080,
-   447,  1081,  1089,   nil,   nil,    36,   nil,   nil,    36,    36,
-    36,   nil,    36,    36,   221,   221,   221,   221,   221,   221,
-   nil,   nil,   nil,   221,   221,   nil,   nil,   nil,   221,   nil,
-   221,   221,   221,   221,   221,   221,   221,   528,   528,   528,
-   528,   528,   221,   221,   221,   221,   221,   221,   221,   nil,
-   960,   221,   960,   960,   960,   nil,   960,   221,   221,   221,
-   221,   221,   221,   221,   221,   221,   221,   221,   221,   nil,
-   221,   221,   221,   nil,   221,   221,   nil,   221,   221,   221,
-    24,    24,    24,    24,    24,    24,    24,    24,    24,    24,
-    24,   nil,    24,    24,   nil,   nil,    24,    24,   nil,   221,
-   nil,   nil,   221,   nil,   nil,   221,   221,   nil,   nil,   221,
-   nil,   221,    24,   nil,    24,   221,    24,    24,    24,    24,
-    24,    24,    24,   221,    24,   nil,   nil,   nil,   221,   221,
-   221,   221,   221,   221,   nil,   nil,   nil,   221,   221,   nil,
-    24,   nil,   nil,   nil,   nil,   221,   nil,   nil,   221,   221,
-   221,   nil,   221,   221,   245,   245,   245,   245,   245,   245,
-   nil,   nil,   nil,   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,
-  1048,   245,  1048,  1048,  1048,   nil,  1048,   245,   245,   245,
-   245,   245,   245,   245,   245,   245,   245,   245,   245,   nil,
-   245,   245,   245,   nil,   245,   245,   nil,   245,   245,   245,
-   293,   293,   293,   293,   293,   293,   293,   293,   293,   293,
-   293,   nil,   293,   293,   nil,   nil,   293,   293,   nil,   245,
-   nil,   nil,   245,   nil,   nil,   245,   245,   nil,   nil,   245,
-   nil,   245,   293,   nil,   293,   245,   293,   293,   293,   293,
-   293,   293,   293,   245,   293,   nil,   nil,   nil,   245,   245,
-   245,   245,   245,   245,   nil,   nil,   nil,   245,   245,   nil,
-   293,   nil,   nil,   nil,   nil,   245,   nil,   nil,   245,   245,
-   245,   nil,   245,   245,   314,   314,   314,   314,   314,   314,
-   nil,   nil,   nil,   314,   314,   nil,   nil,   nil,   314,   nil,
-   314,   314,   314,   314,   314,   314,   314,   nil,   nil,   nil,
-   nil,   nil,   314,   314,   314,   314,   314,   314,   314,   nil,
-   nil,   314,   nil,   nil,   nil,   nil,   nil,   314,   314,   314,
-   314,   314,   314,   314,   314,   314,   314,   314,   314,   nil,
-   314,   314,   314,   nil,   314,   314,   nil,   314,   314,   314,
-   500,   500,   500,   500,   500,   500,   500,   500,   500,   500,
-   500,   nil,   500,   500,   nil,   nil,   500,   500,   nil,   314,
-   nil,   nil,   314,   nil,   nil,   314,   314,   nil,   nil,   314,
-   nil,   314,   500,   nil,   500,   314,   500,   500,   500,   500,
-   500,   500,   500,   314,   500,   nil,   nil,   nil,   314,   314,
-   314,   314,   314,   314,   nil,   nil,   nil,   314,   314,   500,
-   500,   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,   314,
-   314,   nil,   314,   314,   319,   319,   319,   319,   319,   319,
-   nil,   nil,   nil,   319,   319,   nil,   nil,   nil,   319,   nil,
-   319,   319,   319,   319,   319,   319,   319,   nil,   nil,   nil,
-   nil,   nil,   319,   319,   319,   319,   319,   319,   319,   nil,
-   nil,   319,   nil,   nil,   nil,   nil,   nil,   319,   319,   319,
-   319,   319,   319,   319,   319,   319,   319,   319,   319,   nil,
-   319,   319,   319,   nil,   319,   319,   nil,   319,   319,   319,
-   551,   551,   551,   551,   551,   551,   551,   551,   551,   551,
-   551,   nil,   551,   551,   nil,   nil,   551,   551,   nil,   319,
-   nil,   nil,   319,   nil,   nil,   319,   319,   nil,   nil,   319,
-   nil,   319,   551,   nil,   551,   319,   551,   551,   551,   551,
-   551,   551,   551,   319,   551,   nil,   nil,   nil,   319,   319,
-   319,   319,   319,   319,   nil,   nil,   nil,   319,   319,   nil,
-   551,   nil,   nil,   nil,   nil,   319,   nil,   nil,   319,   319,
-   319,   nil,   319,   319,   345,   345,   345,   345,   345,   345,
-   nil,   nil,   nil,   345,   345,   nil,   nil,   nil,   345,   nil,
-   345,   345,   345,   345,   345,   345,   345,   nil,   nil,   nil,
-   nil,   nil,   345,   345,   345,   345,   345,   345,   345,   nil,
-   nil,   345,   nil,   nil,   nil,   nil,   nil,   345,   345,   345,
-   345,   345,   345,   345,   345,   345,   345,   345,   345,   nil,
-   345,   345,   345,   nil,   345,   345,   nil,   345,   345,   345,
-   806,   806,   806,   806,   806,   806,   806,   806,   806,   806,
-   806,   nil,   806,   806,   nil,   nil,   806,   806,   nil,   345,
-   nil,   nil,   345,   nil,   nil,   345,   345,   nil,   nil,   345,
-   nil,   345,   806,   nil,   806,   345,   806,   806,   806,   806,
-   806,   806,   806,   345,   806,   nil,   nil,   nil,   345,   345,
-   345,   345,   345,   345,   nil,   nil,   nil,   345,   345,   nil,
-   806,   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,   345,
-   345,   nil,   345,   345,   355,   355,   355,   355,   355,   355,
-   nil,   nil,   nil,   355,   355,   nil,   nil,   nil,   355,   nil,
-   355,   355,   355,   355,   355,   355,   355,   nil,   nil,   nil,
-   nil,   nil,   355,   355,   355,   355,   355,   355,   355,   nil,
-   nil,   355,   nil,   nil,   nil,   nil,   nil,   355,   355,   355,
-   355,   355,   355,   355,   355,   355,   355,   355,   355,   nil,
-   355,   355,   355,   nil,   355,   355,   nil,   355,   355,   355,
-   918,   918,   918,   918,   918,   918,   918,   918,   918,   918,
-   918,   nil,   918,   918,   nil,   nil,   918,   918,   nil,   355,
-   nil,   nil,   355,   nil,   nil,   355,   355,   nil,   nil,   355,
-   nil,   355,   918,   nil,   918,   355,   918,   918,   918,   918,
-   918,   918,   918,   355,   918,   nil,   nil,   nil,   355,   355,
-   355,   355,   355,   355,   nil,   nil,   nil,   355,   355,   nil,
-   918,   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,   355,
-   355,   nil,   355,   355,   356,   356,   356,   356,   356,   356,
-   nil,   nil,   nil,   356,   356,   nil,   nil,   nil,   356,   nil,
-   356,   356,   356,   356,   356,   356,   356,   nil,   nil,   nil,
-   nil,   nil,   356,   356,   356,   356,   356,   356,   356,   nil,
-   nil,   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,
-   356,   356,   356,   356,   356,   356,   356,   356,   356,   nil,
-   356,   356,   356,   nil,   356,   356,   nil,   356,   356,   356,
-   479,   479,   479,   479,   479,   479,   479,   479,   479,   479,
-   479,   nil,   479,   479,   nil,   nil,   479,   479,   nil,   356,
-   nil,   nil,   356,   nil,   nil,   356,   356,   nil,   nil,   356,
-   nil,   356,   479,   nil,   479,   356,   479,   479,   479,   479,
-   479,   479,   479,   356,   479,   nil,   nil,   nil,   356,   356,
-   356,   356,   356,   356,   nil,   nil,   nil,   356,   356,   nil,
-   nil,   nil,   nil,   nil,   nil,   356,   nil,   nil,   356,   356,
-   356,   nil,   356,   356,   565,   565,   565,   565,   565,   565,
-   nil,   nil,   nil,   565,   565,   nil,   nil,   nil,   565,   nil,
-   565,   565,   565,   565,   565,   565,   565,   nil,   nil,   nil,
-   nil,   nil,   565,   565,   565,   565,   565,   565,   565,   nil,
-   nil,   565,   nil,   nil,   nil,   nil,   nil,   565,   565,   565,
-   565,   565,   565,   565,   565,   565,   565,   565,   565,   nil,
-   565,   565,   565,   nil,   565,   565,   nil,   565,   565,   565,
-   480,   480,   480,   480,   480,   480,   480,   480,   480,   480,
-   480,   nil,   480,   480,   nil,   nil,   480,   480,   nil,   565,
-   nil,   nil,   565,   nil,   nil,   565,   565,   nil,   nil,   565,
-   nil,   565,   480,   nil,   480,   565,   480,   480,   480,   480,
-   480,   480,   480,   565,   480,   nil,   nil,   nil,   565,   565,
-   565,   565,   565,   565,   nil,   nil,   nil,   565,   565,   nil,
-   nil,   nil,   nil,   nil,   nil,   565,   nil,   nil,   565,   565,
-   565,   nil,   565,   565,   568,   568,   568,   568,   568,   568,
-   nil,   nil,   nil,   568,   568,   nil,   nil,   nil,   568,   nil,
-   568,   568,   568,   568,   568,   568,   568,   nil,   nil,   nil,
-   nil,   nil,   568,   568,   568,   568,   568,   568,   568,   nil,
-   nil,   568,   nil,   nil,   nil,   nil,   nil,   568,   568,   568,
-   568,   568,   568,   568,   568,   568,   568,   568,   568,   nil,
-   568,   568,   568,   nil,   568,   568,   nil,   568,   568,   568,
-   491,   491,   491,   491,   491,   491,   491,   nil,   nil,   491,
-   491,   nil,   nil,   nil,   nil,   nil,   491,   491,   nil,   568,
-   nil,   nil,   568,   nil,   nil,   568,   568,   nil,   nil,   568,
-   nil,   568,   491,   nil,   491,   568,   491,   491,   491,   491,
-   491,   491,   491,   568,   491,   nil,   nil,   nil,   568,   568,
-   568,   568,   568,   568,   nil,   nil,   nil,   568,   568,   nil,
-   nil,   nil,   nil,   nil,   nil,   568,   nil,   nil,   568,   568,
-   568,   nil,   568,   568,   651,   651,   651,   651,   651,   651,
-   nil,   nil,   nil,   651,   651,   nil,   nil,   nil,   651,   nil,
-   651,   651,   651,   651,   651,   651,   651,   nil,   nil,   nil,
-   nil,   nil,   651,   651,   651,   651,   651,   651,   651,   nil,
-   nil,   651,   nil,   nil,   nil,   nil,   nil,   651,   651,   651,
-   651,   651,   651,   651,   651,   651,   651,   651,   651,   nil,
-   651,   651,   651,   nil,   651,   651,   nil,   651,   651,   651,
-   492,   492,   492,   492,   492,   492,   492,   nil,   nil,   492,
-   492,   nil,   nil,   nil,   nil,   nil,   492,   492,   nil,   651,
-   nil,   nil,   651,   nil,   nil,   651,   651,   nil,   nil,   651,
-   nil,   651,   492,   nil,   492,   651,   492,   492,   492,   492,
-   492,   492,   492,   651,   492,   nil,   nil,   nil,   651,   651,
-   651,   651,   651,   651,   nil,   nil,   nil,   651,   651,   nil,
-   nil,   nil,   nil,   nil,   nil,   651,   nil,   nil,   651,   651,
-   651,   nil,   651,   651,   749,   749,   749,   749,   749,   749,
-   nil,   nil,   nil,   749,   749,   nil,   nil,   nil,   749,   nil,
-   749,   749,   749,   749,   749,   749,   749,   nil,   nil,   nil,
-   nil,   nil,   749,   749,   749,   749,   749,   749,   749,   nil,
-   nil,   749,   nil,   nil,   nil,   nil,   nil,   749,   749,   749,
-   749,   749,   749,   749,   749,   749,   749,   749,   749,   nil,
-   749,   749,   749,   nil,   749,   749,   nil,   749,   749,   749,
-   493,   493,   493,   493,   493,   493,   493,   nil,   nil,   493,
-   493,   nil,   nil,   nil,   nil,   nil,   493,   493,   nil,   749,
-   nil,   nil,   749,   nil,   nil,   749,   749,   nil,   nil,   749,
-   nil,   749,   493,   nil,   493,   749,   493,   493,   493,   493,
-   493,   493,   493,   749,   493,   nil,   nil,   nil,   749,   749,
-   749,   749,   749,   749,   nil,   nil,   nil,   749,   749,   nil,
-   nil,   nil,   nil,   nil,   nil,   749,   nil,   nil,   749,   749,
-   749,   nil,   749,   749,   760,   760,   760,   760,   760,   760,
-   nil,   nil,   nil,   760,   760,   nil,   nil,   nil,   760,   nil,
-   760,   760,   760,   760,   760,   760,   760,   nil,   nil,   nil,
-   nil,   nil,   760,   760,   760,   760,   760,   760,   760,   nil,
-   nil,   760,   nil,   nil,   nil,   nil,   nil,   760,   760,   760,
-   760,   760,   760,   760,   760,   760,   760,   760,   760,   nil,
-   760,   760,   760,   nil,   760,   760,   nil,   760,   760,   760,
-   494,   494,   494,   494,   494,   494,   494,   nil,   nil,   494,
-   494,   nil,   nil,   nil,   nil,   nil,   494,   494,   nil,   760,
-   nil,   nil,   760,   nil,   nil,   760,   760,   nil,   nil,   760,
-   nil,   760,   494,   nil,   494,   760,   494,   494,   494,   494,
-   494,   494,   494,   760,   494,   nil,   nil,   nil,   760,   760,
-   760,   760,   760,   760,   nil,   nil,   nil,   760,   760,   nil,
-   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,   760,   760,
-   760,   nil,   760,   760,   761,   761,   761,   761,   761,   761,
-   nil,   nil,   nil,   761,   761,   nil,   nil,   nil,   761,   nil,
-   761,   761,   761,   761,   761,   761,   761,   nil,   nil,   nil,
-   nil,   nil,   761,   761,   761,   761,   761,   761,   761,   nil,
-   nil,   761,   nil,   nil,   nil,   nil,   nil,   761,   761,   761,
-   761,   761,   761,   761,   761,   761,   761,   761,   761,   nil,
-   761,   761,   761,   nil,   761,   761,   nil,   761,   761,   761,
-   495,   495,   495,   495,   495,   495,   495,   nil,   nil,   495,
-   495,   nil,   nil,   nil,   nil,   nil,   495,   495,   nil,   761,
-   nil,   nil,   761,   nil,   nil,   761,   761,   nil,   nil,   761,
-   nil,   761,   495,   nil,   495,   761,   495,   495,   495,   495,
-   495,   495,   495,   761,   495,   nil,   nil,   nil,   761,   761,
-   761,   761,   761,   761,   nil,   nil,   nil,   761,   761,   nil,
-   nil,   nil,   nil,   nil,   nil,   761,   nil,   nil,   761,   761,
-   761,   nil,   761,   761,   791,   791,   791,   791,   791,   791,
-   nil,   nil,   nil,   791,   791,   nil,   nil,   nil,   791,   nil,
-   791,   791,   791,   791,   791,   791,   791,   nil,   nil,   nil,
-   nil,   nil,   791,   791,   791,   791,   791,   791,   791,   nil,
-   nil,   791,   nil,   nil,   nil,   nil,   nil,   791,   791,   791,
-   791,   791,   791,   791,   791,   791,   791,   791,   791,   nil,
-   791,   791,   791,   nil,   791,   791,   nil,   791,   791,   791,
-   498,   498,   498,   498,   498,   498,   498,   nil,   nil,   498,
-   498,   nil,   nil,   nil,   nil,   nil,   498,   498,   nil,   791,
-   nil,   nil,   791,   nil,   nil,   791,   791,   nil,   nil,   791,
-   nil,   791,   498,   nil,   498,   791,   498,   498,   498,   498,
-   498,   498,   498,   791,   498,   nil,   nil,   nil,   791,   791,
-   791,   791,   791,   791,   nil,   nil,   nil,   791,   791,   nil,
-   nil,   nil,   nil,   nil,   nil,   791,   nil,   nil,   791,   791,
-   791,   nil,   791,   791,   830,   830,   830,   830,   830,   830,
-   nil,   nil,   nil,   830,   830,   nil,   nil,   nil,   830,   nil,
-   830,   830,   830,   830,   830,   830,   830,   nil,   nil,   nil,
-   nil,   nil,   830,   830,   830,   830,   830,   830,   830,   nil,
-   nil,   830,   nil,   nil,   nil,   nil,   nil,   830,   830,   830,
-   830,   830,   830,   830,   830,   830,   830,   830,   830,   nil,
-   830,   830,   830,   nil,   830,   830,   nil,   830,   830,   830,
-   499,   499,   499,   499,   499,   499,   499,   499,   nil,   499,
-   499,   nil,   nil,   nil,   nil,   nil,   499,   499,   nil,   830,
-   nil,   nil,   830,   nil,   nil,   830,   830,   nil,   nil,   830,
-   nil,   830,   499,   nil,   499,   830,   499,   499,   499,   499,
-   499,   499,   499,   830,   499,   nil,   nil,   nil,   830,   830,
-   830,   830,   830,   830,   nil,   nil,   nil,   830,   830,   nil,
-   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,   830,   830,
-   830,   nil,   830,   830,   848,   848,   848,   848,   848,   848,
-   nil,   nil,   nil,   848,   848,   nil,   nil,   nil,   848,   nil,
-   848,   848,   848,   848,   848,   848,   848,   nil,   nil,   nil,
-   nil,   nil,   848,   848,   848,   848,   848,   848,   848,   nil,
-   nil,   848,   nil,   nil,   nil,   nil,   nil,   848,   848,   848,
-   848,   848,   848,   848,   848,   848,   848,   848,   848,   nil,
-   848,   848,   848,   nil,   848,   848,   nil,   848,   848,   848,
-   501,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   501,   501,   nil,   848,
-   nil,   nil,   848,   nil,   489,   848,   848,   nil,   nil,   848,
-   nil,   848,   501,   nil,   501,   848,   501,   501,   501,   501,
-   489,   489,   501,   848,   501,   nil,   nil,   nil,   848,   848,
-   848,   848,   848,   848,   nil,   nil,   489,   848,   848,   nil,
-   489,   489,   489,   489,   nil,   848,   nil,   nil,   848,   848,
-   848,   nil,   848,   848,   860,   860,   860,   860,   860,   860,
-   nil,   nil,   nil,   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,   860,   860,   860,
-   860,   860,   860,   860,   860,   860,   860,   860,   860,   nil,
-   860,   860,   860,   nil,   860,   860,   nil,   860,   860,   860,
-   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   550,   550,   nil,   860,
-   nil,   nil,   860,   nil,   nil,   860,   860,   nil,   nil,   860,
-   nil,   860,   550,   nil,   550,   860,   550,   550,   550,   550,
-   nil,   nil,   550,   860,   550,   nil,   nil,   nil,   860,   860,
-   860,   860,   860,   860,   nil,   nil,   nil,   860,   860,   nil,
-   nil,   nil,   nil,   nil,   nil,   860,   nil,   nil,   860,   860,
-   860,   nil,   860,   860,   873,   873,   873,   873,   873,   873,
-   nil,   nil,   nil,   873,   873,   nil,   nil,   nil,   873,   nil,
-   873,   873,   873,   873,   873,   873,   873,   nil,   nil,   nil,
-   nil,   nil,   873,   873,   873,   873,   873,   873,   873,   nil,
-   nil,   873,   nil,   nil,   nil,   nil,   nil,   873,   873,   873,
-   873,   873,   873,   873,   873,   873,   873,   873,   873,   nil,
-   873,   873,   873,   nil,   873,   873,   nil,   873,   873,   873,
-   487,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   487,   487,   nil,   873,
-   nil,   nil,   873,   nil,   nil,   873,   873,   nil,   nil,   873,
-   nil,   873,   487,   nil,   487,   873,   487,   487,   487,   487,
-   nil,   nil,   nil,   873,   nil,   nil,   nil,   nil,   873,   873,
-   873,   873,   873,   873,   nil,   nil,   nil,   873,   873,   nil,
-   nil,   nil,   nil,   nil,   nil,   873,   nil,   nil,   873,   873,
-   873,   nil,   873,   873,   883,   883,   883,   883,   883,   883,
-   nil,   nil,   nil,   883,   883,   nil,   nil,   nil,   883,   nil,
-   883,   883,   883,   883,   883,   883,   883,   nil,   nil,   nil,
-   nil,   nil,   883,   883,   883,   883,   883,   883,   883,   nil,
-   nil,   883,   nil,   nil,   nil,   nil,   nil,   883,   883,   883,
-   883,   883,   883,   883,   883,   883,   883,   883,   883,   nil,
-   883,   883,   883,   nil,   883,   883,   nil,   883,   883,   883,
-   488,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   488,   488,   nil,   883,
-   nil,   nil,   883,   nil,   nil,   883,   883,   nil,   nil,   883,
-   nil,   883,   488,   nil,   488,   883,   488,   488,   488,   488,
-   nil,   nil,   nil,   883,   nil,   nil,   nil,   nil,   883,   883,
-   883,   883,   883,   883,   nil,   nil,   nil,   883,   883,   nil,
-   nil,   nil,   nil,   nil,   nil,   883,   nil,   nil,   883,   883,
-   883,   nil,   883,   883,   884,   884,   884,   884,   884,   884,
-   nil,   nil,   nil,   884,   884,   nil,   nil,   nil,   884,   nil,
-   884,   884,   884,   884,   884,   884,   884,   nil,   nil,   nil,
-   nil,   nil,   884,   884,   884,   884,   884,   884,   884,   nil,
-   nil,   884,   nil,   nil,   nil,   nil,   nil,   884,   884,   884,
-   884,   884,   884,   884,   884,   884,   884,   884,   884,   nil,
-   884,   884,   884,   nil,   884,   884,   nil,   884,   884,   884,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   884,
-   nil,   nil,   884,   nil,   nil,   884,   884,   nil,   nil,   884,
-   nil,   884,   nil,   nil,   nil,   884,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   884,   nil,   nil,   nil,   nil,   884,   884,
-   884,   884,   884,   884,   nil,   nil,   nil,   884,   884,   nil,
-   nil,   nil,   nil,   nil,   nil,   884,   nil,   nil,   884,   884,
-   884,   nil,   884,   884,   934,   934,   934,   934,   934,   934,
-   nil,   nil,   nil,   934,   934,   nil,   nil,   nil,   934,   nil,
-   934,   934,   934,   934,   934,   934,   934,   nil,   nil,   nil,
-   nil,   nil,   934,   934,   934,   934,   934,   934,   934,   nil,
-   nil,   934,   nil,   nil,   nil,   nil,   nil,   934,   934,   934,
-   934,   934,   934,   934,   934,   934,   934,   934,   934,   nil,
-   934,   934,   934,   nil,   934,   934,   nil,   934,   934,   934,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   934,
-   nil,   nil,   934,   nil,   nil,   934,   934,   nil,   nil,   934,
-   nil,   934,   nil,   nil,   nil,   934,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   934,   nil,   nil,   nil,   nil,   934,   934,
-   934,   934,   934,   934,   nil,   nil,   nil,   934,   934,   nil,
-   nil,   nil,   nil,   nil,   nil,   934,   nil,   nil,   934,   934,
-   934,   nil,   934,   934,   935,   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,   935,
-   935,   935,   935,   935,   935,   935,   935,   935,   935,   nil,
-   935,   935,   935,   nil,   935,   935,   nil,   935,   935,   935,
-   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,   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,   935,
-   935,   nil,   935,   935,   947,   947,   947,   947,   947,   947,
-   nil,   nil,   nil,   947,   947,   nil,   nil,   nil,   947,   nil,
-   947,   947,   947,   947,   947,   947,   947,   nil,   nil,   nil,
-   nil,   nil,   947,   947,   947,   947,   947,   947,   947,   nil,
-   nil,   947,   nil,   nil,   nil,   nil,   nil,   947,   947,   947,
-   947,   947,   947,   947,   947,   947,   947,   947,   947,   nil,
-   947,   947,   947,   nil,   947,   947,   nil,   947,   947,   947,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   947,
-   nil,   nil,   947,   nil,   nil,   947,   947,   nil,   nil,   947,
-   nil,   947,   nil,   nil,   nil,   947,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   947,   nil,   nil,   nil,   nil,   947,   947,
-   947,   947,   947,   947,   nil,   nil,   nil,   947,   947,   nil,
-   nil,   nil,   nil,   nil,   nil,   947,   nil,   nil,   947,   947,
-   947,   nil,   947,   947,   994,   994,   994,   994,   994,   994,
-   nil,   nil,   nil,   994,   994,   nil,   nil,   nil,   994,   nil,
-   994,   994,   994,   994,   994,   994,   994,   nil,   nil,   nil,
-   nil,   nil,   994,   994,   994,   994,   994,   994,   994,   nil,
-   nil,   994,   nil,   nil,   nil,   nil,   nil,   994,   994,   994,
-   994,   994,   994,   994,   994,   994,   994,   994,   994,   nil,
-   994,   994,   994,   nil,   994,   994,   nil,   994,   994,   994,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   994,
-   nil,   nil,   994,   nil,   nil,   994,   994,   nil,   nil,   994,
-   nil,   994,   nil,   nil,   nil,   994,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   994,   nil,   nil,   nil,   nil,   994,   994,
-   994,   994,   994,   994,   nil,   nil,   nil,   994,   994,   nil,
-   nil,   nil,   nil,   nil,   nil,   994,   nil,   nil,   994,   994,
-   994,   nil,   994,   994,  1001,  1001,  1001,  1001,  1001,  1001,
-   nil,   nil,   nil,  1001,  1001,   nil,   nil,   nil,  1001,   nil,
-  1001,  1001,  1001,  1001,  1001,  1001,  1001,   nil,   nil,   nil,
-   nil,   nil,  1001,  1001,  1001,  1001,  1001,  1001,  1001,   nil,
-   nil,  1001,   nil,   nil,   nil,   nil,   nil,  1001,  1001,  1001,
-  1001,  1001,  1001,  1001,  1001,  1001,  1001,  1001,  1001,   nil,
-  1001,  1001,  1001,   nil,  1001,  1001,   nil,  1001,  1001,  1001,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1001,
-   nil,   nil,  1001,   nil,   nil,  1001,  1001,   nil,   nil,  1001,
-   nil,  1001,   nil,   nil,   nil,  1001,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1001,   nil,   nil,   nil,   nil,  1001,  1001,
-  1001,  1001,  1001,  1001,   nil,   nil,   nil,  1001,  1001,   nil,
-   nil,   nil,   nil,   nil,   nil,  1001,   nil,   nil,  1001,  1001,
-  1001,   nil,  1001,  1001,  1007,  1007,  1007,  1007,  1007,  1007,
-   nil,   nil,   nil,  1007,  1007,   nil,   nil,   nil,  1007,   nil,
-  1007,  1007,  1007,  1007,  1007,  1007,  1007,   nil,   nil,   nil,
-   nil,   nil,  1007,  1007,  1007,  1007,  1007,  1007,  1007,   nil,
-   nil,  1007,   nil,   nil,   nil,   nil,   nil,  1007,  1007,  1007,
-  1007,  1007,  1007,  1007,  1007,  1007,  1007,  1007,  1007,   nil,
-  1007,  1007,  1007,   nil,  1007,  1007,   nil,  1007,  1007,  1007,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1007,
-   nil,   nil,  1007,   nil,   nil,  1007,  1007,   nil,   nil,  1007,
-   nil,  1007,   nil,   nil,   nil,  1007,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1007,   nil,   nil,   nil,   nil,  1007,  1007,
-  1007,  1007,  1007,  1007,   nil,   nil,   nil,  1007,  1007,   nil,
-   nil,   nil,   nil,   nil,   nil,  1007,   nil,   nil,  1007,  1007,
-  1007,   nil,  1007,  1007,  1008,  1008,  1008,  1008,  1008,  1008,
-   nil,   nil,   nil,  1008,  1008,   nil,   nil,   nil,  1008,   nil,
-  1008,  1008,  1008,  1008,  1008,  1008,  1008,   nil,   nil,   nil,
-   nil,   nil,  1008,  1008,  1008,  1008,  1008,  1008,  1008,   nil,
-   nil,  1008,   nil,   nil,   nil,   nil,   nil,  1008,  1008,  1008,
-  1008,  1008,  1008,  1008,  1008,  1008,  1008,  1008,  1008,   nil,
-  1008,  1008,  1008,   nil,  1008,  1008,   nil,  1008,  1008,  1008,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1008,
-   nil,   nil,  1008,   nil,   nil,  1008,  1008,   nil,   nil,  1008,
-   nil,  1008,   nil,   nil,   nil,  1008,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1008,   nil,   nil,   nil,   nil,  1008,  1008,
-  1008,  1008,  1008,  1008,   nil,   nil,   nil,  1008,  1008,   nil,
-   nil,   nil,   nil,   nil,   nil,  1008,   nil,   nil,  1008,  1008,
-  1008,   nil,  1008,  1008,     8,     8,     8,     8,     8,   nil,
-   nil,   nil,     8,     8,   nil,   nil,   nil,     8,   nil,     8,
-     8,     8,     8,     8,     8,     8,   nil,   nil,   nil,   nil,
-   nil,     8,     8,     8,     8,     8,     8,     8,   nil,   nil,
-     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
-     8,     8,     8,     8,     8,     8,     8,     8,   nil,     8,
-     8,     8,   nil,     8,     8,   nil,     8,     8,     8,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,
-   nil,     8,   nil,   nil,     8,     8,   nil,   nil,     8,   nil,
-     8,   nil,   nil,   nil,     8,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,     8,   nil,   nil,   nil,   nil,     8,     8,     8,
-     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,   nil,
-   nil,   nil,   nil,   nil,     8,   nil,   nil,     8,     8,     8,
-   nil,     8,     8,    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,   nil,
-    23,    23,    23,    23,    23,    23,    23,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,    23,
-    23,    23,    23,    23,    23,    23,    23,   nil,    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,   776,    23,   776,   776,
-   776,   776,   776,    23,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   776,   nil,   nil,   nil,    23,    23,    23,    23,
-    23,    23,   nil,   nil,   nil,    23,    23,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   776,    30,    23,    23,    23,   nil,
-    23,    23,    30,    30,    30,   776,   776,    30,    30,    30,
-   762,    30,   762,   762,   762,   762,   762,   nil,   nil,   nil,
-    30,    30,    30,   nil,   nil,   nil,   762,   nil,   nil,   nil,
-   nil,    30,    30,   nil,    30,    30,    30,    30,    30,   776,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   762,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   762,   762,   762,
-   762,   nil,    30,    30,    30,    30,    30,    30,    30,    30,
-    30,    30,    30,    30,    30,    30,   nil,   nil,    30,    30,
-    30,   nil,   nil,    30,   nil,    30,    30,   nil,   nil,    30,
-    30,   nil,    30,   762,    30,   nil,    30,   nil,    30,    30,
-    30,    30,    30,    30,    30,   nil,    30,    30,    30,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    30,    30,    31,    30,   nil,    30,   nil,   nil,   nil,
-    31,    31,    31,    30,   nil,    31,    31,    31,   763,    31,
-   763,   763,   763,   763,   763,   nil,   nil,   nil,   nil,    31,
-    31,   nil,   nil,   nil,   763,   nil,   nil,   nil,   nil,    31,
-    31,   nil,    31,    31,    31,    31,    31,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   763,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   763,   763,   763,   763,   nil,
-    31,    31,    31,    31,    31,    31,    31,    31,    31,    31,
-    31,    31,    31,    31,   nil,   nil,    31,    31,    31,   nil,
-   nil,    31,   nil,    31,    31,   nil,   nil,    31,    31,   nil,
-    31,   763,    31,   nil,    31,   nil,    31,    31,    31,    31,
-    31,    31,    31,   nil,    31,   nil,    31,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    31,
-    31,   nil,    31,   nil,    31,    32,    32,    32,   nil,    32,
-   nil,    31,   nil,    32,    32,   nil,   nil,   nil,    32,   nil,
-    32,    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,
-   nil,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
-   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-   nil,    32,    32,    32,    32,    32,    32,    32,    32,    32,
-    32,    32,    32,   nil,    32,    32,   nil,    32,    32,    32,
-   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,    32,    32,   nil,   nil,    32,
-   nil,    32,   nil,    32,   nil,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,
-    32,    32,    32,    32,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,    32,    32,
-    32,   nil,    32,    32,    33,    33,    33,   nil,    33,   nil,
-   nil,   nil,    33,    33,   nil,   nil,   nil,    33,   nil,    33,
-    33,    33,    33,    33,    33,    33,   nil,   nil,   nil,   nil,
-   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
-    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,
-    33,    33,    33,    33,    33,    33,    33,    33,    33,    33,
-    33,    33,   nil,    33,    33,   nil,    33,    33,    33,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,
-   nil,    33,   nil,   nil,    33,    33,   nil,   nil,    33,   nil,
-    33,   nil,    33,   nil,    33,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,    33,    33,
-    33,    33,    33,   nil,   nil,   nil,    33,    33,   nil,   nil,
-   nil,   nil,   nil,   nil,    33,   nil,    33,    33,    33,    33,
-   nil,    33,    33,    34,    34,    34,   nil,    34,   nil,   nil,
-   nil,    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,    34,    34,    34,
-    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,   nil,   nil,   nil,   nil,    34,    34,    34,    34,
-    34,    34,   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,    34,    34,    34,    34,   nil,
-    34,    34,    37,    37,    37,   nil,    37,   nil,   nil,   nil,
-    37,    37,   nil,   nil,   nil,    37,   nil,    37,    37,    37,
-    37,    37,    37,    37,   nil,   nil,   nil,   nil,   nil,    37,
-    37,    37,    37,    37,    37,    37,   nil,   nil,    37,   nil,
-   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,
-    37,    37,    37,    37,    37,    37,   nil,    37,    37,    37,
-   nil,    37,    37,   nil,   nil,   nil,    37,   nil,   nil,   nil,
-   nil,   nil,   965,   nil,   965,   965,   965,   965,   965,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   965,    37,
-   nil,   nil,    37,    37,   nil,   nil,    37,   nil,    37,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   965,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
-    37,   965,   965,   nil,    37,    37,   nil,   nil,   nil,   nil,
-   nil,   nil,    37,   nil,   nil,    37,    37,    37,   nil,    37,
-    37,    38,    38,    38,   nil,    38,   nil,   nil,   nil,    38,
-    38,   nil,   nil,   nil,    38,   965,    38,    38,    38,    38,
-    38,    38,    38,   nil,   nil,   nil,   nil,   nil,    38,    38,
-    38,    38,    38,    38,    38,   nil,   nil,    38,   nil,   nil,
-   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,    38,    38,
-    38,    38,    38,    38,    38,   nil,    38,    38,    38,   nil,
-    38,    38,   nil,   nil,   nil,    38,   nil,   nil,   nil,   nil,
-   nil,   967,   nil,   967,   967,   967,   967,   967,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    38,   nil,   967,    38,   nil,
-   nil,    38,    38,   nil,   nil,    38,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   967,
-   nil,   nil,   nil,   nil,    38,    38,    38,    38,    38,    38,
-   967,   967,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,
-   nil,    38,   nil,   nil,    38,    38,    38,   nil,    38,    38,
-    45,    45,    45,   nil,    45,   nil,   nil,   nil,    45,    45,
-   nil,   nil,   nil,    45,   967,    45,    45,    45,    45,    45,
-    45,    45,   nil,   nil,   nil,   nil,   nil,    45,    45,    45,
-    45,    45,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
-   nil,   nil,   nil,    45,   nil,   nil,    45,    45,    45,    45,
-    45,    45,    45,    45,   nil,    45,    45,    45,   nil,    45,
-    45,   nil,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,   nil,   nil,
-    45,    45,   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,
-    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,
-   nil,   nil,   nil,    45,    45,    45,    45,    45,    45,   nil,
-   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,   nil,   nil,
-    45,   nil,   nil,    45,    45,    45,   nil,    45,    45,    46,
-    46,    46,   nil,    46,   nil,   nil,   nil,    46,    46,   nil,
-   nil,   nil,    46,   nil,    46,    46,    46,    46,    46,    46,
-    46,   nil,   nil,   nil,   nil,   nil,    46,    46,    46,    46,
-    46,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,    46,   nil,   nil,    46,    46,    46,    46,    46,
-    46,    46,    46,   nil,    46,    46,    46,   nil,    46,    46,
-   nil,    46,    46,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    46,   nil,   nil,    46,   nil,   nil,    46,
-    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,   nil,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
-   nil,   nil,    46,    46,    46,    46,    46,    46,   nil,   nil,
-   nil,    46,    46,   nil,   nil,   nil,   nil,   nil,   nil,    46,
-   nil,   nil,    46,    46,    46,   nil,    46,    46,    48,    48,
-    48,   nil,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,
-   nil,    48,   nil,    48,    48,    48,    48,    48,    48,    48,
-   nil,   nil,   nil,   nil,   nil,    48,    48,    48,    48,    48,
-    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,    48,    48,    48,    48,    48,    48,
-    48,    48,   nil,    48,    48,    48,   nil,    48,    48,   nil,
-    48,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,    48,    48,
-   nil,   969,    48,   969,   969,   969,   969,   969,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    48,   969,   nil,   nil,
-   nil,    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,
-    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   969,
-    60,    48,    48,    48,   nil,    48,    48,    60,    60,    60,
-   969,   969,    60,    60,    60,   772,    60,   772,   772,   772,
-   772,   772,   nil,   nil,   nil,   nil,    60,    60,    60,   nil,
-   nil,   772,   nil,   nil,   nil,   nil,    60,    60,   nil,    60,
-    60,    60,    60,    60,   969,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   772,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   772,   772,   772,   772,   nil,    60,    60,    60,
-    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,
-    60,   nil,   nil,    60,    60,    60,   nil,   nil,    60,   nil,
-   nil,    60,   nil,   nil,    60,    60,   nil,    60,   772,    60,
-   nil,    60,   nil,    60,    60,    60,    60,    60,    60,    60,
-   nil,    60,   nil,    60,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    60,    60,    60,    60,
-   nil,    60,   nil,    60,   nil,   nil,   nil,   455,    60,    62,
-    62,    62,    62,    62,   455,   455,   455,    62,    62,   455,
-   455,   455,    62,   455,    62,    62,    62,    62,    62,    62,
-    62,   nil,   455,   455,   455,   nil,    62,    62,    62,    62,
-    62,    62,    62,   455,   455,    62,   455,   455,   455,   455,
-   455,    62,    62,   nil,    62,    62,    62,    62,    62,    62,
-    62,    62,    62,   nil,    62,    62,    62,   nil,    62,    62,
-   nil,    62,    62,    62,   455,   455,   455,   455,   455,   455,
-   455,   455,   455,   455,   455,   455,   455,   455,   nil,   nil,
-   455,   455,   455,    62,   nil,   455,    62,   455,   455,    62,
-    62,   455,   455,    62,   455,    62,   455,   nil,   455,    62,
-   455,   455,   455,   455,   455,   455,   455,    62,   455,   455,
-   455,   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,
-   nil,    62,    62,   455,   455,   nil,   455,   nil,   455,    62,
-   nil,   nil,    62,    62,    62,   455,    62,    62,    67,    67,
-    67,   nil,    67,   nil,   nil,   nil,    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,    67,   nil,   nil,   nil,
-   nil,    67,    67,    67,    67,    67,    67,   nil,   nil,   nil,
-    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,    67,    67,    67,   nil,    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,    68,
-    68,    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,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,
-    68,    68,    68,    68,    68,    68,   nil,   nil,   nil,    68,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-    68,    68,    68,   nil,    68,    68,    71,    71,    71,   nil,
-    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
-   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
-   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
-   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
-   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
-   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
-    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
-    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
-    71,    71,   nil,    71,    71,    72,    72,    72,   nil,    72,
-   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
-    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
-   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
-   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
-    72,    72,    72,   nil,    72,    72,   nil,   nil,   nil,    72,
-   nil,   nil,   nil,   nil,   nil,   985,   nil,   985,   985,   985,
-   985,   985,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
-   nil,   985,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   985,   nil,   nil,   nil,   nil,    72,    72,
-    72,    72,    72,    72,   985,   985,   nil,    72,    72,   nil,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
-    72,   nil,    72,    72,   128,   128,   128,   128,   128,   nil,
-   nil,   nil,   128,   128,   nil,   nil,   nil,   128,   985,   128,
-   128,   128,   128,   128,   128,   128,   nil,   nil,   nil,   nil,
-   nil,   128,   128,   128,   128,   128,   128,   128,   nil,   nil,
-   128,   nil,   nil,   nil,   nil,   nil,   128,   128,   128,   128,
-   128,   128,   128,   128,   128,   128,   128,   128,   nil,   128,
-   128,   128,   nil,   128,   128,   nil,   128,   128,   128,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,
-   nil,   128,   nil,   nil,   128,   128,   nil,   nil,   128,   nil,
-   128,   nil,   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   128,   nil,   nil,   nil,   nil,   128,   128,   128,
-   128,   128,   128,   nil,   nil,   nil,   128,   128,   nil,   nil,
-   nil,   nil,   nil,   128,   128,   nil,   nil,   128,   128,   128,
-   nil,   128,   128,   133,   133,   133,   nil,   133,   nil,   nil,
-   nil,   133,   133,   nil,   nil,   nil,   133,   nil,   133,   133,
-   133,   133,   133,   133,   133,   nil,   nil,   nil,   nil,   nil,
-   133,   133,   133,   133,   133,   133,   133,   nil,   nil,   133,
-   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,
-   133,   133,   133,   133,   133,   133,   133,   nil,   133,   133,
-   133,   nil,   133,   133,   nil,   133,   133,   133,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,
-   133,   nil,   nil,   133,   133,   nil,   nil,   133,   nil,   nil,
-   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   133,   nil,   nil,   nil,   nil,   133,   133,   133,   133,
-   133,   133,   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,
-   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,   nil,
-   133,   133,   134,   134,   134,   nil,   134,   nil,   nil,   nil,
-   134,   134,   nil,   nil,   nil,   134,   nil,   134,   134,   134,
-   134,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,   134,
-   134,   134,   134,   134,   134,   134,   nil,   nil,   134,   nil,
-   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   134,
-   134,   134,   134,   134,   134,   134,   nil,   134,   134,   134,
-   nil,   134,   134,   nil,   134,   134,   134,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,
-   nil,   nil,   134,   134,   nil,   nil,   134,   nil,   nil,   nil,
-   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   134,   nil,   nil,   nil,   nil,   134,   134,   134,   134,   134,
-   134,   nil,   nil,   nil,   134,   134,   nil,   nil,   nil,   nil,
-   nil,   nil,   134,   nil,   nil,   134,   134,   134,   nil,   134,
-   134,   135,   135,   135,   nil,   135,   nil,   nil,   nil,   135,
-   135,   nil,   nil,   nil,   135,   nil,   135,   135,   135,   135,
-   135,   135,   135,   nil,   nil,   nil,   nil,   nil,   135,   135,
-   135,   135,   135,   135,   135,   nil,   nil,   135,   nil,   nil,
-   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   135,   135,
-   135,   135,   135,   135,   135,   nil,   135,   135,   135,   nil,
-   135,   135,   nil,   135,   135,   135,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   nil,
-   nil,   135,   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,
-   nil,   135,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,
-   nil,   nil,   nil,   nil,   135,   135,   135,   135,   135,   135,
-   nil,   nil,   nil,   135,   135,   nil,   nil,   nil,   nil,   nil,
-   nil,   135,   nil,   nil,   135,   135,   135,   nil,   135,   135,
-   136,   136,   136,   nil,   136,   nil,   nil,   nil,   136,   136,
-   nil,   nil,   nil,   136,   nil,   136,   136,   136,   136,   136,
-   136,   136,   nil,   nil,   nil,   nil,   nil,   136,   136,   136,
-   136,   136,   136,   136,   nil,   nil,   136,   nil,   nil,   nil,
-   nil,   nil,   nil,   136,   nil,   nil,   136,   136,   136,   136,
-   136,   136,   136,   136,   nil,   136,   136,   136,   nil,   136,
-   136,   nil,   136,   136,   136,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,
-   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
-   nil,   nil,   nil,   136,   136,   136,   136,   136,   136,   nil,
-   nil,   nil,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   136,   136,   136,   nil,   136,   136,   137,
-   137,   137,   137,   137,   nil,   nil,   nil,   137,   137,   nil,
-   nil,   nil,   137,   nil,   137,   137,   137,   137,   137,   137,
-   137,   nil,   nil,   nil,   nil,   nil,   137,   137,   137,   137,
-   137,   137,   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,
-   nil,   137,   137,   nil,   137,   137,   137,   137,   137,   137,
-   137,   137,   137,   nil,   137,   137,   137,   nil,   137,   137,
-   nil,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,   nil,   137,
-   137,   nil,   nil,   137,   nil,   137,   nil,   nil,   nil,   137,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   nil,   nil,   137,   137,   137,   137,   137,   137,   nil,   nil,
-   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,
-   nil,   nil,   137,   137,   137,   nil,   137,   137,   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,   nil,   222,   222,   222,   222,   222,
-   222,   222,   nil,   nil,   222,   nil,   nil,   nil,   nil,   nil,
-   nil,   222,   nil,   nil,   222,   222,   222,   222,   222,   222,
-   222,   222,   nil,   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,   222,   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,   nil,   nil,   nil,   222,   nil,
-   nil,   222,   222,   222,   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,   nil,   223,   223,   223,   223,   223,   223,
-   223,   nil,   nil,   223,   nil,   nil,   nil,   nil,   nil,   nil,
-   223,   nil,   nil,   223,   223,   223,   223,   223,   223,   223,
-   223,   nil,   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,   223,   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,   nil,   nil,   nil,   223,   nil,   nil,
-   223,   223,   223,   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,   nil,   224,   224,   224,   224,   224,   224,   224,
-   nil,   nil,   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,
-   nil,   nil,   224,   224,   224,   224,   224,   224,   224,   224,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,
-   224,   224,   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,   nil,   225,   225,   225,   225,   225,   225,   225,   nil,
-   nil,   225,   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,
-   nil,   225,   225,   225,   225,   225,   225,   225,   225,   nil,
-   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,   225,   225,
-   225,   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,
-   nil,   226,   226,   226,   226,   226,   226,   226,   nil,   nil,
-   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,
-   226,   226,   226,   226,   226,   226,   226,   226,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,   226,
-   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,   nil,
-   227,   227,   227,   227,   227,   227,   227,   nil,   nil,   227,
-   nil,   nil,   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,
-   227,   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,   227,
-   nil,   227,   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,
-   nil,   nil,   nil,   227,   nil,   227,   227,   227,   227,   nil,
-   227,   227,   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,   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,
-   231,   nil,   nil,   nil,   nil,   231,   231,   231,   231,   231,
-   231,   nil,   nil,   nil,   231,   231,   nil,   nil,   nil,   nil,
-   nil,   nil,   231,   nil,   nil,   231,   231,   231,   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,   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,   232,
-   nil,   nil,   nil,   nil,   232,   232,   232,   232,   232,   232,
-   nil,   nil,   nil,   232,   232,   nil,   nil,   nil,   nil,   nil,
-   nil,   232,   nil,   nil,   232,   232,   232,   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,   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,   233,   nil,
-   nil,   nil,   nil,   233,   233,   233,   233,   233,   233,   nil,
-   nil,   nil,   233,   233,   233,   nil,   nil,   nil,   nil,   nil,
-   233,   nil,   nil,   233,   233,   233,   nil,   233,   233,   244,
-   244,   244,   nil,   244,   nil,   nil,   nil,   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,   244,   nil,   nil,
-   nil,   nil,   244,   244,   244,   244,   244,   244,   nil,   nil,
-   nil,   244,   244,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   244,   244,   244,   nil,   244,   244,   247,   247,
-   247,   nil,   247,   nil,   nil,   nil,   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,   247,   nil,   nil,   nil,
-   nil,   247,   247,   247,   247,   247,   247,   nil,   nil,   nil,
-   247,   247,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   247,   247,   247,   nil,   247,   247,   248,   248,   248,
-   nil,   248,   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,   nil,
-   248,   248,   248,   248,   248,   248,   nil,   nil,   nil,   248,
-   248,   nil,   nil,   nil,   nil,   nil,   nil,   248,   nil,   nil,
-   248,   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,   nil,   nil,   249,
-   249,   249,   249,   249,   249,   nil,   nil,   nil,   249,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   249,
-   249,   249,   nil,   249,   249,   250,   250,   250,   nil,   250,
-   nil,   nil,   nil,   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,   250,   nil,   nil,   nil,   nil,   250,   250,
-   250,   250,   250,   250,   nil,   nil,   nil,   250,   250,   nil,
-   nil,   nil,   nil,   nil,   nil,   250,   nil,   nil,   250,   250,
-   250,   nil,   250,   250,   251,   251,   251,   nil,   251,   nil,
-   nil,   nil,   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,   251,   nil,   nil,   nil,   nil,   251,   251,   251,
-   251,   251,   251,   nil,   nil,   nil,   251,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,   251,   nil,   nil,   251,   251,   251,
-   nil,   251,   251,   252,   252,   252,   nil,   252,   nil,   nil,
-   nil,   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,   252,   nil,   nil,   nil,   nil,   252,   252,   252,   252,
-   252,   252,   nil,   nil,   nil,   252,   252,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   252,   252,   252,   nil,
-   252,   252,   253,   253,   253,   nil,   253,   nil,   nil,   nil,
-   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,
-   253,   nil,   nil,   nil,   nil,   253,   253,   253,   253,   253,
-   253,   nil,   nil,   nil,   253,   253,   nil,   nil,   nil,   nil,
-   nil,   nil,   253,   nil,   nil,   253,   253,   253,   nil,   253,
-   253,   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,   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,   254,
-   nil,   nil,   nil,   nil,   254,   254,   254,   254,   254,   254,
-   nil,   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,   nil,
-   nil,   254,   nil,   nil,   254,   254,   254,   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,   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,   255,   nil,
-   nil,   nil,   nil,   255,   255,   255,   255,   255,   255,   nil,
-   nil,   nil,   255,   255,   nil,   nil,   nil,   nil,   nil,   nil,
-   255,   nil,   nil,   255,   255,   255,   nil,   255,   255,   256,
-   256,   256,   nil,   256,   nil,   nil,   nil,   256,   256,   nil,
-   nil,   nil,   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,   256,   256,   256,
-   256,   256,   256,   nil,   256,   256,   256,   nil,   256,   256,
-   nil,   256,   256,   256,   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,
-   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,   nil,   nil,   nil,   256,
-   nil,   nil,   256,   256,   256,   nil,   256,   256,   257,   257,
-   257,   nil,   257,   nil,   nil,   nil,   257,   257,   nil,   nil,
-   nil,   257,   nil,   257,   257,   257,   257,   257,   257,   257,
-   nil,   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,
-   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   257,   257,   257,   257,   257,   257,
-   257,   257,   nil,   257,   257,   257,   nil,   257,   257,   nil,
-   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   257,   nil,   nil,   257,   257,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   257,   257,   257,   257,   257,   257,   nil,   nil,   nil,
-   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   257,   257,   257,   nil,   257,   257,   258,   258,   258,
-   nil,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,   nil,
-   258,   nil,   258,   258,   258,   258,   258,   258,   258,   nil,
-   nil,   nil,   nil,   nil,   258,   258,   258,   258,   258,   258,
-   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   nil,
-   258,   nil,   nil,   258,   258,   258,   258,   258,   258,   258,
-   258,   nil,   258,   258,   258,   nil,   258,   258,   nil,   258,
-   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   258,   nil,   nil,   258,   nil,   nil,   258,   258,   nil,
-   nil,   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,
-   258,   258,   258,   258,   258,   258,   nil,   nil,   nil,   258,
-   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,
-   258,   258,   258,   nil,   258,   258,   259,   259,   259,   nil,
-   259,   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,   259,
-   nil,   259,   259,   259,   259,   259,   259,   259,   nil,   nil,
-   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,   259,
-   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,
-   nil,   nil,   259,   259,   259,   259,   259,   259,   259,   259,
-   nil,   259,   259,   259,   nil,   259,   259,   nil,   259,   259,
-   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   259,   nil,   nil,   259,   nil,   nil,   259,   259,   nil,   nil,
-   259,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,   259,
-   259,   259,   259,   259,   259,   nil,   nil,   nil,   259,   259,
-   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,
-   259,   259,   nil,   259,   259,   260,   260,   260,   nil,   260,
-   nil,   nil,   nil,   260,   260,   nil,   nil,   nil,   260,   nil,
-   260,   260,   260,   260,   260,   260,   260,   nil,   nil,   nil,
-   nil,   nil,   260,   260,   260,   260,   260,   260,   260,   nil,
-   nil,   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,
-   nil,   260,   260,   260,   260,   260,   260,   260,   260,   nil,
-   260,   260,   260,   nil,   260,   260,   nil,   260,   260,   260,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,
-   nil,   nil,   260,   nil,   nil,   260,   260,   nil,   nil,   260,
-   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   260,   260,
-   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,   nil,
-   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,   260,
-   260,   nil,   260,   260,   261,   261,   261,   nil,   261,   nil,
-   nil,   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,   nil,   261,
-   261,   261,   nil,   261,   261,   nil,   261,   261,   261,   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,   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,   nil,   nil,   nil,   261,   nil,   nil,   261,   261,   261,
-   nil,   261,   261,   262,   262,   262,   nil,   262,   nil,   nil,
-   nil,   262,   262,   nil,   nil,   nil,   262,   nil,   262,   262,
-   262,   262,   262,   262,   262,   nil,   nil,   nil,   nil,   nil,
-   262,   262,   262,   262,   262,   262,   262,   nil,   nil,   262,
-   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,
-   262,   262,   262,   262,   262,   262,   262,   nil,   262,   262,
-   262,   nil,   262,   262,   nil,   262,   262,   262,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,
-   262,   nil,   nil,   262,   262,   nil,   nil,   262,   nil,   nil,
-   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   262,   nil,   nil,   nil,   nil,   262,   262,   262,   262,
-   262,   262,   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,
-   nil,   nil,   nil,   262,   nil,   nil,   262,   262,   262,   nil,
-   262,   262,   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,   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,   nil,   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,   nil,   nil,
-   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   263,   nil,   nil,   263,   263,   263,   nil,   263,
-   263,   264,   264,   264,   nil,   264,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,
-   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   264,
-   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,   264,
-   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,   nil,
-   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,   264,
-   265,   265,   265,   nil,   265,   nil,   nil,   nil,   265,   265,
-   nil,   nil,   nil,   265,   nil,   265,   265,   265,   265,   265,
-   265,   265,   nil,   nil,   nil,   nil,   nil,   265,   265,   265,
-   265,   265,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,
-   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,   265,
-   265,   265,   265,   265,   nil,   265,   265,   265,   nil,   265,
-   265,   nil,   265,   265,   265,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,
-   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,
-   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
-   nil,   nil,   nil,   265,   265,   265,   265,   265,   265,   nil,
-   nil,   nil,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,
-   265,   nil,   nil,   265,   265,   265,   nil,   265,   265,   266,
-   266,   266,   nil,   266,   nil,   nil,   nil,   266,   266,   nil,
-   nil,   nil,   266,   nil,   266,   266,   266,   266,   266,   266,
-   266,   nil,   nil,   nil,   nil,   nil,   266,   266,   266,   266,
-   266,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,
-   nil,   nil,   266,   nil,   nil,   266,   266,   266,   266,   266,
-   266,   266,   266,   nil,   266,   266,   266,   nil,   266,   266,
-   nil,   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,   266,
-   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,
-   nil,   nil,   266,   266,   266,   266,   266,   266,   nil,   nil,
-   nil,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,
-   nil,   nil,   266,   266,   266,   nil,   266,   266,   267,   267,
-   267,   nil,   267,   nil,   nil,   nil,   267,   267,   nil,   nil,
-   nil,   267,   nil,   267,   267,   267,   267,   267,   267,   267,
-   nil,   nil,   nil,   nil,   nil,   267,   267,   267,   267,   267,
-   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   267,   267,   267,   267,   267,   267,
-   267,   267,   nil,   267,   267,   267,   nil,   267,   267,   nil,
-   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   267,   nil,   nil,   267,   nil,   nil,   267,   267,
-   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   267,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,
-   nil,   267,   267,   267,   267,   267,   267,   nil,   nil,   nil,
-   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,
-   nil,   267,   267,   267,   nil,   267,   267,   268,   268,   268,
-   nil,   268,   nil,   nil,   nil,   268,   268,   nil,   nil,   nil,
-   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,   268,   268,   268,   268,   268,
-   268,   nil,   268,   268,   268,   nil,   268,   268,   nil,   268,
-   268,   268,   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,   268,   nil,
-   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,
-   268,   268,   268,   nil,   268,   268,   273,   273,   273,   nil,
-   273,   nil,   nil,   nil,   273,   273,   nil,   nil,   nil,   273,
-   nil,   273,   273,   273,   273,   273,   273,   273,   nil,   nil,
-   nil,   nil,   nil,   273,   273,   273,   273,   273,   273,   273,
-   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   nil,   273,
-   nil,   nil,   273,   273,   273,   273,   273,   273,   273,   273,
-   nil,   273,   273,   273,   nil,   273,   273,   nil,   273,   273,
-   273,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   273,   nil,   nil,   273,   nil,   nil,   273,   273,   nil,   nil,
-   273,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   273,   nil,   nil,   nil,   nil,   273,
-   273,   273,   273,   273,   273,   nil,   nil,   nil,   273,   273,
-   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,
-   273,   273,   nil,   273,   273,   281,   281,   281,   nil,   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,   nil,   281,   nil,
-   nil,   281,   281,   281,   281,   281,   281,   281,   281,   281,
-   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,   281,   nil,   281,   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,   nil,   nil,   nil,   281,   nil,   281,   281,   281,
-   281,   nil,   281,   281,   282,   282,   282,   nil,   282,   nil,
-   nil,   nil,   282,   282,   nil,   nil,   nil,   282,   nil,   282,
-   282,   282,   282,   282,   282,   282,   nil,   nil,   nil,   nil,
-   nil,   282,   282,   282,   282,   282,   282,   282,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
-   282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
-   282,   282,   nil,   282,   282,   nil,   282,   282,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   282,   nil,   nil,   282,   282,   nil,   nil,   282,   nil,
-   282,   nil,   282,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   282,   282,   282,
-   282,   282,   282,   nil,   nil,   nil,   282,   282,   nil,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   282,   282,   282,   282,
-   nil,   282,   282,   291,   291,   291,   nil,   291,   nil,   nil,
-   nil,   291,   291,   nil,   nil,   nil,   291,   nil,   291,   291,
-   291,   291,   291,   291,   291,   nil,   nil,   nil,   nil,   nil,
-   291,   291,   291,   291,   291,   291,   291,   nil,   nil,   291,
-   nil,   nil,   nil,   nil,   nil,   nil,   291,   nil,   nil,   291,
-   291,   291,   291,   291,   291,   291,   291,   291,   291,   291,
-   291,   nil,   291,   291,   nil,   291,   291,   291,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   291,   nil,   nil,
-   291,   nil,   nil,   291,   291,   nil,   nil,   291,   nil,   291,
-   nil,   291,   nil,   291,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   291,   nil,   nil,   nil,   nil,   291,   291,   291,   291,
-   291,   291,   nil,   nil,   nil,   291,   291,   291,   nil,   nil,
-   nil,   nil,   nil,   291,   nil,   291,   291,   291,   291,   nil,
-   291,   291,   298,   298,   298,   nil,   298,   nil,   nil,   nil,
-   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,   298,   298,   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,   nil,   nil,
-   nil,   nil,   298,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   298,   nil,   nil,   nil,   nil,   298,   298,   298,   298,   298,
-   298,   nil,   nil,   nil,   298,   298,   nil,   nil,   nil,   nil,
-   nil,   nil,   298,   nil,   nil,   298,   298,   298,   nil,   298,
-   298,   300,   300,   300,   nil,   300,   nil,   nil,   nil,   300,
-   300,   nil,   nil,   nil,   300,   nil,   300,   300,   300,   300,
-   300,   300,   300,   nil,   nil,   nil,   nil,   nil,   300,   300,
-   300,   300,   300,   300,   300,   nil,   nil,   300,   nil,   nil,
-   nil,   nil,   nil,   nil,   300,   nil,   nil,   300,   300,   300,
-   300,   300,   300,   300,   300,   nil,   300,   300,   300,   nil,
-   300,   300,   nil,   300,   300,   300,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   300,   nil,   nil,   300,   nil,
-   nil,   300,   300,   nil,   nil,   300,   nil,   nil,   nil,   nil,
-   nil,   300,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   300,
-   nil,   nil,   nil,   nil,   300,   300,   300,   300,   300,   300,
-   nil,   nil,   nil,   300,   300,   nil,   nil,   nil,   nil,   nil,
-   nil,   300,   nil,   nil,   300,   300,   300,   nil,   300,   300,
-   303,   303,   303,   nil,   303,   nil,   nil,   nil,   303,   303,
-   nil,   nil,   nil,   303,   nil,   303,   303,   303,   303,   303,
-   303,   303,   nil,   nil,   nil,   nil,   nil,   303,   303,   303,
-   303,   303,   303,   303,   nil,   nil,   303,   nil,   nil,   nil,
-   nil,   nil,   nil,   303,   nil,   nil,   303,   303,   303,   303,
-   303,   303,   303,   303,   nil,   303,   303,   303,   nil,   303,
-   303,   nil,   303,   303,   303,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   303,   nil,   nil,   303,   nil,   nil,
-   303,   303,   nil,   nil,   303,   nil,   nil,   nil,   nil,   nil,
-   303,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   303,   nil,
-   nil,   nil,   nil,   303,   303,   303,   303,   303,   303,   nil,
-   nil,   nil,   303,   303,   nil,   nil,   nil,   nil,   nil,   nil,
-   303,   nil,   nil,   303,   303,   303,   nil,   303,   303,   304,
-   304,   304,   nil,   304,   nil,   nil,   nil,   304,   304,   nil,
-   nil,   nil,   304,   nil,   304,   304,   304,   304,   304,   304,
-   304,   nil,   nil,   nil,   nil,   nil,   304,   304,   304,   304,
-   304,   304,   304,   nil,   nil,   304,   nil,   nil,   nil,   nil,
-   nil,   nil,   304,   nil,   nil,   304,   304,   304,   304,   304,
-   304,   304,   304,   nil,   304,   304,   304,   nil,   304,   304,
-   nil,   304,   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   304,   nil,   nil,   304,   nil,   nil,   304,
-   304,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   304,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,
-   nil,   nil,   304,   304,   304,   304,   304,   304,   nil,   nil,
-   nil,   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,   304,
-   nil,   nil,   304,   304,   304,   nil,   304,   304,   310,   310,
-   310,   310,   310,   nil,   nil,   nil,   310,   310,   nil,   nil,
-   nil,   310,   nil,   310,   310,   310,   310,   310,   310,   310,
-   nil,   nil,   nil,   nil,   nil,   310,   310,   310,   310,   310,
-   310,   310,   nil,   nil,   310,   nil,   nil,   nil,   nil,   nil,
-   310,   310,   nil,   310,   310,   310,   310,   310,   310,   310,
-   310,   310,   nil,   310,   310,   310,   nil,   310,   310,   nil,
-   310,   310,   310,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   310,   nil,   nil,   310,   nil,   nil,   310,   310,
-   nil,   nil,   310,   nil,   310,   nil,   nil,   nil,   310,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   310,   nil,   nil,   nil,
-   nil,   310,   310,   310,   310,   310,   310,   nil,   nil,   nil,
-   310,   310,   nil,   nil,   nil,   nil,   nil,   nil,   310,   nil,
-   nil,   310,   310,   310,   nil,   310,   310,   318,   318,   318,
-   nil,   318,   nil,   nil,   nil,   318,   318,   nil,   nil,   nil,
-   318,   nil,   318,   318,   318,   318,   318,   318,   318,   nil,
-   nil,   nil,   nil,   nil,   318,   318,   318,   318,   318,   318,
-   318,   nil,   nil,   318,   nil,   nil,   nil,   nil,   nil,   nil,
-   318,   nil,   nil,   318,   318,   318,   318,   318,   318,   318,
-   318,   nil,   318,   318,   318,   nil,   318,   318,   nil,   nil,
-   nil,   318,   nil,   nil,   nil,   nil,   nil,  1049,   nil,  1049,
-  1049,  1049,  1049,  1049,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   318,   nil,  1049,   318,   nil,   nil,   318,   318,   nil,
-   nil,   318,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1049,   nil,   nil,   nil,   nil,
-   318,   318,   318,   318,   318,   318,  1049,  1049,   nil,   318,
-   318,   nil,   nil,   nil,   318,   nil,   nil,   318,   nil,   nil,
-   318,   318,   318,   nil,   318,   318,   335,   335,   335,   nil,
-   335,   nil,   nil,   nil,   335,   335,   nil,   nil,   nil,   335,
-  1049,   335,   335,   335,   335,   335,   335,   335,   nil,   nil,
-   nil,   nil,   nil,   335,   335,   335,   335,   335,   335,   335,
-   nil,   nil,   335,   nil,   nil,   nil,   nil,   nil,   nil,   335,
-   nil,   nil,   335,   335,   335,   335,   335,   335,   335,   335,
-   nil,   335,   335,   335,   nil,   335,   335,   nil,   nil,   nil,
-   335,   nil,   nil,   nil,   nil,   nil,  1058,   nil,  1058,  1058,
-  1058,  1058,  1058,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   335,   nil,  1058,   335,   nil,   nil,   335,   335,   nil,   nil,
-   335,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1058,   nil,   nil,   nil,   nil,   335,
-   335,   335,   335,   335,   335,  1058,  1058,   nil,   335,   335,
-   nil,   nil,   nil,   nil,   nil,   nil,   335,   nil,   nil,   335,
-   335,   335,   nil,   335,   335,   342,   342,   342,   nil,   342,
-   nil,   nil,   nil,   342,   342,   nil,   nil,   nil,   342,  1058,
-   342,   342,   342,   342,   342,   342,   342,   nil,   nil,   nil,
-   nil,   nil,   342,   342,   342,   342,   342,   342,   342,   nil,
-   nil,   342,   nil,   nil,   nil,   nil,   nil,   nil,   342,   nil,
-   nil,   342,   342,   342,   342,   342,   342,   342,   342,   nil,
-   342,   342,   342,   nil,   342,   342,   nil,   342,   342,   342,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   342,
-   nil,   nil,   342,   nil,   nil,   342,   342,   nil,   nil,   342,
-   nil,   nil,   nil,   nil,   nil,   342,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   342,   nil,   nil,   nil,   nil,   342,   342,
-   342,   342,   342,   342,   nil,   nil,   nil,   342,   342,   nil,
-   nil,   nil,   nil,   nil,   nil,   342,   nil,   nil,   342,   342,
-   342,   nil,   342,   342,   344,   344,   344,   nil,   344,   nil,
-   nil,   nil,   344,   344,   nil,   nil,   nil,   344,   nil,   344,
-   344,   344,   344,   344,   344,   344,   nil,   nil,   nil,   nil,
-   nil,   344,   344,   344,   344,   344,   344,   344,   nil,   nil,
-   344,   nil,   nil,   nil,   nil,   nil,   nil,   344,   nil,   nil,
-   344,   344,   344,   344,   344,   344,   344,   344,   nil,   344,
-   344,   344,   nil,   344,   344,   nil,   344,   344,   344,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   344,   nil,
-   nil,   344,   344,   nil,   344,   344,   nil,   nil,   344,   nil,
-   nil,   nil,   nil,   nil,   344,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   344,   nil,   nil,   nil,   nil,   344,   344,   344,
-   344,   344,   344,   nil,   nil,   nil,   344,   344,   nil,   nil,
-   nil,   nil,   nil,   nil,   344,   nil,   nil,   344,   344,   344,
-   nil,   344,   344,   348,   348,   348,   nil,   348,   nil,   nil,
-   nil,   348,   348,   nil,   nil,   nil,   348,   nil,   348,   348,
-   348,   348,   348,   348,   348,   nil,   nil,   nil,   nil,   nil,
-   348,   348,   348,   348,   348,   348,   348,   nil,   nil,   348,
-   nil,   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,   348,
-   348,   348,   348,   348,   348,   348,   348,   348,   348,   348,
-   348,   nil,   348,   348,   nil,   348,   348,   348,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,
-   348,   nil,   nil,   348,   348,   nil,   nil,   348,   nil,   348,
-   nil,   nil,   nil,   348,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   348,   nil,   nil,   nil,   nil,   348,   348,   348,   348,
-   348,   348,   nil,   nil,   nil,   348,   348,   nil,   nil,   nil,
-   nil,   nil,   nil,   348,   nil,   348,   348,   348,   348,   nil,
-   348,   348,   349,   349,   349,   nil,   349,   nil,   nil,   nil,
-   349,   349,   nil,   nil,   nil,   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,
-   349,   349,   349,   349,   349,   349,   349,   349,   349,   349,
-   nil,   349,   349,   nil,   349,   349,   349,   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,   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,   nil,
-   nil,   nil,   349,   nil,   349,   349,   349,   349,   nil,   349,
-   349,   354,   354,   354,   nil,   354,   nil,   nil,   nil,   354,
-   354,   nil,   nil,   nil,   354,   nil,   354,   354,   354,   354,
-   354,   354,   354,   nil,   nil,   nil,   nil,   nil,   354,   354,
-   354,   354,   354,   354,   354,   nil,   nil,   354,   nil,   nil,
-   nil,   nil,   nil,   nil,   354,   nil,   nil,   354,   354,   354,
-   354,   354,   354,   354,   354,   nil,   354,   354,   354,   nil,
-   354,   354,   nil,   354,   354,   354,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   354,   nil,   nil,   354,   nil,
-   nil,   354,   354,   nil,   nil,   354,   nil,   nil,   nil,   nil,
-   nil,   354,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   354,
-   nil,   nil,   nil,   nil,   354,   354,   354,   354,   354,   354,
-   nil,   nil,   nil,   354,   354,   nil,   nil,   nil,   nil,   nil,
-   nil,   354,   nil,   nil,   354,   354,   354,   nil,   354,   354,
-   368,   368,   368,   nil,   368,   nil,   nil,   nil,   368,   368,
-   nil,   nil,   nil,   368,   nil,   368,   368,   368,   368,   368,
-   368,   368,   nil,   nil,   nil,   nil,   nil,   368,   368,   368,
-   368,   368,   368,   368,   nil,   nil,   368,   nil,   nil,   nil,
-   nil,   nil,   nil,   368,   nil,   nil,   368,   368,   368,   368,
-   368,   368,   368,   368,   nil,   368,   368,   368,   nil,   368,
-   368,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
-  1060,   nil,  1060,  1060,  1060,  1060,  1060,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   368,   nil,  1060,   368,   nil,   nil,
-   368,   368,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1060,   nil,
-   nil,   nil,   nil,   368,   368,   368,   368,   368,   368,  1060,
-  1060,   nil,   368,   368,   nil,   nil,   nil,   nil,   nil,   nil,
-   368,   nil,   nil,   368,   368,   368,   nil,   368,   368,   370,
-   370,   370,   nil,   370,   nil,   nil,   nil,   370,   370,   nil,
-   nil,   nil,   370,  1060,   370,   370,   370,   370,   370,   370,
-   370,   nil,   nil,   nil,   nil,   nil,   370,   370,   370,   370,
-   370,   370,   370,   nil,   nil,   370,   nil,   nil,   nil,   nil,
-   nil,   nil,   370,   nil,   nil,   370,   370,   370,   370,   370,
-   370,   370,   370,   nil,   370,   370,   370,   nil,   370,   370,
-   nil,   nil,   nil,   370,   nil,   nil,   nil,   nil,   nil,  1062,
-   nil,  1062,  1062,  1062,  1062,  1062,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   370,   nil,  1062,   370,   nil,   nil,   370,
-   370,   nil,   nil,   370,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1062,   nil,   nil,
-   nil,   nil,   370,   370,   370,   370,   370,   370,  1062,  1062,
-   nil,   370,   370,   nil,   nil,   nil,   nil,   nil,   nil,   370,
-   nil,   nil,   370,   370,   370,   nil,   370,   370,   430,   430,
-   430,   nil,   430,   nil,   nil,   nil,   430,   430,   nil,   nil,
-   nil,   430,  1062,   430,   430,   430,   430,   430,   430,   430,
-   nil,   nil,   nil,   nil,   nil,   430,   430,   430,   430,   430,
-   430,   430,   nil,   nil,   430,   nil,   nil,   nil,   nil,   nil,
-   nil,   430,   nil,   nil,   430,   430,   430,   430,   430,   430,
-   430,   430,   nil,   430,   430,   430,   nil,   430,   430,   nil,
-   430,   430,   430,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   430,   nil,   nil,   430,   nil,   nil,   430,   430,
-   nil,  1084,   430,  1084,  1084,  1084,  1084,  1084,   430,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   430,  1084,   nil,   nil,
-   nil,   430,   430,   430,   430,   430,   430,   nil,   nil,   nil,
-   430,   430,   nil,   nil,   nil,   nil,   nil,   nil,   430,  1084,
-   464,   430,   430,   430,   nil,   430,   430,   464,   464,   464,
-  1084,  1084,   464,   464,   464,   774,   464,   774,   774,   774,
-   774,   774,   nil,   nil,   nil,   464,   464,   464,   464,   nil,
-   nil,   774,   nil,   nil,   nil,   nil,   464,   464,   nil,   464,
-   464,   464,   464,   464,  1084,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   774,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   774,   774,   774,   774,   nil,   464,   464,   464,
-   464,   464,   464,   464,   464,   464,   464,   464,   464,   464,
-   464,   nil,   nil,   464,   464,   464,   nil,   nil,   464,   nil,
-   nil,   464,   nil,   nil,   464,   464,   nil,   464,   774,   464,
-   nil,   464,   nil,   464,   464,   464,   464,   464,   464,   464,
-   nil,   464,   464,   464,   828,   nil,   828,   828,   828,   828,
-   828,   nil,   nil,   nil,   nil,   nil,   464,   464,   464,   464,
-   828,   464,   465,   464,   nil,   nil,   nil,   nil,   464,   465,
-   465,   465,   nil,   nil,   465,   465,   465,   nil,   465,   nil,
-   nil,   nil,   828,   nil,   nil,   nil,   nil,   465,   465,   465,
-   465,   828,   828,   828,   828,   nil,   nil,   nil,   465,   465,
-   nil,   465,   465,   465,   465,   465,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   828,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,   465,
-   465,   465,   465,   465,   465,   465,   465,   465,   465,   465,
-   465,   465,   465,   nil,   nil,   465,   465,   465,   nil,   nil,
-   465,   nil,   nil,   465,   nil,   nil,   465,   465,   nil,   465,
-   nil,   465,   nil,   465,   nil,   465,   465,   465,   465,   465,
-   465,   465,   nil,   465,   465,   465,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   465,   465,
-   465,   465,   nil,   465,   nil,   465,   nil,   474,   474,   474,
-   465,   474,   nil,   nil,   nil,   474,   474,   nil,   nil,   nil,
-   474,   nil,   474,   474,   474,   474,   474,   474,   474,   nil,
-   nil,   nil,   nil,   nil,   474,   474,   474,   474,   474,   474,
-   474,   nil,   nil,   474,   nil,   nil,   nil,   nil,   nil,   nil,
-   474,   nil,   nil,   474,   474,   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,   nil,   nil,   474,   474,   nil,
-   nil,   474,   nil,   474,   nil,   474,   nil,   474,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   474,   nil,   nil,   nil,   nil,
-   474,   474,   474,   474,   474,   474,   nil,   nil,   nil,   474,
-   474,   nil,   nil,   nil,   nil,   nil,   nil,   474,   nil,   474,
-   474,   474,   474,   nil,   474,   474,   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,   nil,   476,   476,   476,   476,   476,   476,   476,
-   nil,   nil,   476,   nil,   nil,   nil,   nil,   nil,   nil,   476,
-   nil,   nil,   476,   476,   476,   476,   476,   476,   476,   476,
-   nil,   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,   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   476,   nil,   nil,   476,
-   476,   476,   nil,   476,   476,   477,   477,   477,   nil,   477,
-   nil,   nil,   nil,   477,   477,   nil,   nil,   nil,   477,   nil,
-   477,   477,   477,   477,   477,   477,   477,   nil,   nil,   nil,
-   nil,   nil,   477,   477,   477,   477,   477,   477,   477,   nil,
-   nil,   477,   nil,   nil,   nil,   nil,   nil,   nil,   477,   nil,
-   nil,   477,   477,   477,   477,   477,   477,   477,   477,   nil,
-   477,   477,   477,   nil,   477,   477,   nil,   477,   477,   477,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   477,
-   nil,   nil,   477,   nil,   nil,   477,   477,   nil,   nil,   477,
-   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   477,   nil,   nil,   nil,   nil,   477,   477,
-   477,   477,   477,   477,   nil,   nil,   nil,   477,   477,   nil,
-   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   477,   477,
-   477,   nil,   477,   477,   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,
-   nil,   478,   478,   478,   478,   478,   478,   478,   nil,   nil,
-   478,   nil,   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,
-   478,   478,   478,   478,   478,   478,   478,   478,   nil,   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,   nil,   nil,   478,   478,   nil,   nil,   478,   nil,
-   nil,   nil,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   478,   nil,   504,   478,   478,   478,
-   nil,   478,   478,   504,   504,   504,   nil,   nil,   504,   504,
-   504,   nil,   504,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   504,   504,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   504,   504,   nil,   504,   504,   504,   504,   504,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   277,   277,   nil,
-   nil,   277,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   277,   277,   nil,   277,   277,   277,   277,   277,   277,   277,
-   nil,   nil,   277,   277,   504,   nil,   nil,   277,   277,   277,
-   277,   504,   nil,   nil,   nil,   nil,   504,   504,   nil,   nil,
-   nil,   nil,   nil,   nil,   277,   277,   nil,   277,   277,   277,
-   277,   277,   277,   277,   277,   277,   277,   277,   504,   504,
-   277,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   504,   nil,   516,   516,   516,   504,   516,   nil,
-   277,   nil,   516,   516,   504,   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,   516,   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,
-   516,   nil,   516,   nil,   516,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   516,   nil,   nil,   nil,   nil,   516,   516,   516,
-   516,   516,   516,   nil,   nil,   nil,   516,   516,   nil,   nil,
-   nil,   nil,   nil,   nil,   516,   nil,   516,   516,   516,   516,
-   nil,   516,   516,   519,   519,   519,   nil,   519,   nil,   nil,
-   nil,   519,   519,   nil,   nil,   nil,   519,   nil,   519,   519,
-   519,   519,   519,   519,   519,   nil,   nil,   nil,   nil,   nil,
-   519,   519,   519,   519,   519,   519,   519,   nil,   nil,   519,
-   nil,   nil,   nil,   nil,   nil,   nil,   519,   nil,   nil,   519,
-   519,   519,   519,   519,   519,   519,   519,   519,   519,   519,
-   519,   nil,   519,   519,   nil,   519,   519,   519,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   519,   nil,   nil,
-   519,   nil,   nil,   519,   519,   nil,   nil,   519,   nil,   nil,
-   nil,   519,   nil,   519,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   519,   nil,   nil,   nil,   nil,   519,   519,   519,   519,
-   519,   519,   nil,   nil,   nil,   519,   519,   nil,   nil,   nil,
-   nil,   nil,   nil,   519,   nil,   519,   519,   519,   519,   nil,
-   519,   519,   521,   521,   521,   nil,   521,   nil,   nil,   nil,
-   521,   521,   nil,   nil,   nil,   521,   nil,   521,   521,   521,
-   521,   521,   521,   521,   nil,   nil,   nil,   nil,   nil,   521,
-   521,   521,   521,   521,   521,   521,   nil,   nil,   521,   nil,
-   nil,   nil,   nil,   nil,   nil,   521,   nil,   nil,   521,   521,
-   521,   521,   521,   521,   521,   521,   nil,   521,   521,   521,
-   nil,   521,   521,   nil,   521,   521,   521,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   521,   nil,   nil,   521,
-   nil,   nil,   521,   521,   nil,   nil,   521,   nil,   nil,   nil,
-   nil,   nil,   521,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   521,   nil,   nil,   nil,   nil,   521,   521,   521,   521,   521,
-   521,   nil,   nil,   nil,   521,   521,   nil,   nil,   nil,   nil,
-   nil,   nil,   521,   nil,   nil,   521,   521,   521,   nil,   521,
-   521,   527,   527,   527,   527,   527,   nil,   nil,   nil,   527,
-   527,   nil,   nil,   nil,   527,   nil,   527,   527,   527,   527,
-   527,   527,   527,   nil,   nil,   nil,   nil,   nil,   527,   527,
-   527,   527,   527,   527,   527,   nil,   nil,   527,   nil,   nil,
-   nil,   nil,   nil,   527,   527,   527,   527,   527,   527,   527,
-   527,   527,   527,   527,   527,   nil,   527,   527,   527,   nil,
-   527,   527,   nil,   527,   527,   527,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   527,   nil,   nil,   527,   nil,
-   nil,   527,   527,   nil,   nil,   527,   nil,   527,   nil,   nil,
-   nil,   527,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   527,
-   nil,   nil,   nil,   nil,   527,   527,   527,   527,   527,   527,
-   nil,   nil,   nil,   527,   527,   nil,   nil,   nil,   nil,   nil,
-   527,   527,   nil,   nil,   527,   527,   527,   nil,   527,   527,
-   535,   535,   535,   nil,   535,   nil,   nil,   nil,   535,   535,
-   nil,   nil,   nil,   535,   nil,   535,   535,   535,   535,   535,
-   535,   535,   nil,   nil,   nil,   nil,   nil,   535,   535,   535,
-   535,   535,   535,   535,   nil,   nil,   535,   nil,   nil,   nil,
-   nil,   nil,   nil,   535,   nil,   nil,   535,   535,   535,   535,
-   535,   535,   535,   535,   nil,   535,   535,   535,   nil,   535,
-   535,   nil,   nil,   nil,   535,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   535,   nil,   nil,   535,   nil,   nil,
-   535,   535,   nil,   nil,   535,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   535,   535,   535,   535,   535,   535,   nil,
-   nil,   nil,   535,   535,   nil,   nil,   nil,   nil,   nil,   nil,
-   535,   nil,   nil,   535,   535,   535,   nil,   535,   535,   537,
-   537,   537,   nil,   537,   nil,   nil,   nil,   537,   537,   nil,
-   nil,   nil,   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,   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,   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,   nil,   nil,   nil,   537,
-   nil,   537,   537,   537,   537,   nil,   537,   537,   543,   543,
-   543,   nil,   543,   nil,   nil,   nil,   543,   543,   nil,   nil,
-   nil,   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,   543,   543,   543,   543,
-   543,   543,   nil,   543,   543,   543,   nil,   543,   543,   nil,
-   nil,   nil,   543,   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,   543,
-   nil,   nil,   543,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   543,   543,   543,   543,   543,   543,   nil,   nil,   nil,
-   543,   543,   nil,   nil,   nil,   nil,   nil,   nil,   543,   nil,
-   nil,   543,   543,   543,   nil,   543,   543,   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,   nil,   546,   546,   546,   546,   546,   546,
-   546,   nil,   nil,   546,   nil,   nil,   nil,   nil,   nil,   nil,
-   546,   nil,   nil,   546,   546,   546,   546,   546,   546,   546,
-   546,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   546,   nil,   nil,
-   546,   546,   546,   nil,   546,   546,   547,   547,   547,   nil,
-   547,   nil,   nil,   nil,   547,   547,   nil,   nil,   nil,   547,
-   nil,   547,   547,   547,   547,   547,   547,   547,   nil,   nil,
-   nil,   nil,   nil,   547,   547,   547,   547,   547,   547,   547,
-   nil,   nil,   547,   nil,   nil,   nil,   nil,   nil,   nil,   547,
-   nil,   nil,   547,   547,   547,   547,   547,   547,   547,   547,
-   nil,   547,   547,   547,   nil,   547,   547,   nil,   547,   547,
-   547,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   547,   nil,   nil,   547,   nil,   nil,   547,   547,   nil,   nil,
-   547,   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   547,   nil,   nil,   nil,   nil,   547,
-   547,   547,   547,   547,   547,   nil,   nil,   nil,   547,   547,
-   nil,   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   547,
-   547,   547,   nil,   547,   547,   552,   552,   552,   nil,   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,   nil,   552,   nil,
-   nil,   552,   552,   552,   552,   552,   552,   552,   552,   nil,
-   552,   552,   552,   nil,   552,   552,   nil,   552,   552,   552,
-   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,   552,   nil,   nil,   552,
-   nil,   nil,   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,   nil,   nil,   nil,   552,   nil,   nil,   552,   552,
-   552,   nil,   552,   552,   576,   576,   576,   nil,   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,   nil,   576,   nil,   nil,
-   576,   576,   576,   576,   576,   576,   576,   576,   576,   576,
-   576,   576,   nil,   576,   576,   nil,   576,   576,   576,   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,   576,   nil,   nil,   576,   nil,
-   576,   nil,   576,   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,   576,   576,   576,   576,
-   nil,   576,   576,   588,   588,   588,   nil,   588,   nil,   nil,
-   nil,   588,   588,   nil,   nil,   nil,   588,   nil,   588,   588,
-   588,   588,   588,   588,   588,   nil,   nil,   nil,   nil,   nil,
-   588,   588,   588,   588,   588,   588,   588,   nil,   nil,   588,
-   nil,   nil,   nil,   nil,   nil,   nil,   588,   nil,   nil,   588,
-   588,   588,   588,   588,   588,   588,   588,   nil,   588,   588,
-   588,   nil,   588,   588,   nil,   588,   588,   588,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   588,   nil,   nil,
-   588,   nil,   nil,   588,   588,   nil,   nil,   588,   nil,   nil,
-   nil,   nil,   nil,   588,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   588,   nil,   nil,   nil,   nil,   588,   588,   588,   588,
-   588,   588,   nil,   nil,   nil,   588,   588,   nil,   nil,   nil,
-   nil,   nil,   nil,   588,   nil,   nil,   588,   588,   588,   nil,
-   588,   588,   594,   594,   594,   nil,   594,   nil,   nil,   nil,
-   594,   594,   nil,   nil,   nil,   594,   nil,   594,   594,   594,
-   594,   594,   594,   594,   nil,   nil,   nil,   nil,   nil,   594,
-   594,   594,   594,   594,   594,   594,   nil,   nil,   594,   nil,
-   nil,   nil,   nil,   nil,   nil,   594,   nil,   nil,   594,   594,
-   594,   594,   594,   594,   594,   594,   nil,   594,   594,   594,
-   nil,   594,   594,   nil,   594,   594,   594,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   594,   nil,   nil,   594,
-   nil,   nil,   594,   594,   nil,   nil,   594,   nil,   nil,   nil,
-   nil,   nil,   594,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   594,   nil,   nil,   nil,   nil,   594,   594,   594,   594,   594,
-   594,   nil,   nil,   nil,   594,   594,   nil,   nil,   nil,   nil,
-   nil,   nil,   594,   nil,   nil,   594,   594,   594,   nil,   594,
-   594,   616,   616,   616,   nil,   616,   nil,   nil,   nil,   616,
-   616,   nil,   nil,   nil,   616,   nil,   616,   616,   616,   616,
-   616,   616,   616,   nil,   nil,   nil,   nil,   nil,   616,   616,
-   616,   616,   616,   616,   616,   nil,   nil,   616,   nil,   nil,
-   nil,   nil,   nil,   nil,   616,   nil,   nil,   616,   616,   616,
-   616,   616,   616,   616,   616,   nil,   616,   616,   616,   nil,
-   616,   616,   nil,   616,   616,   616,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   616,   nil,   nil,   616,   nil,
-   nil,   616,   616,   nil,   nil,   616,   nil,   nil,   nil,   nil,
-   nil,   616,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   616,
-   nil,   nil,   nil,   nil,   616,   616,   616,   616,   616,   616,
-   nil,   nil,   nil,   616,   616,   nil,   nil,   nil,   nil,   nil,
-   nil,   616,   nil,   nil,   616,   616,   616,   nil,   616,   616,
-   656,   656,   656,   nil,   656,   nil,   nil,   nil,   656,   656,
-   nil,   nil,   nil,   656,   nil,   656,   656,   656,   656,   656,
-   656,   656,   nil,   nil,   nil,   nil,   nil,   656,   656,   656,
-   656,   656,   656,   656,   nil,   nil,   656,   nil,   nil,   nil,
-   nil,   nil,   nil,   656,   nil,   nil,   656,   656,   656,   656,
-   656,   656,   656,   656,   nil,   656,   656,   656,   nil,   656,
-   656,   nil,   656,   656,   656,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   656,   nil,   nil,   656,   nil,   nil,
-   656,   656,   nil,   nil,   656,   nil,   656,   nil,   nil,   nil,
-   656,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   656,   nil,
-   nil,   nil,   nil,   656,   656,   656,   656,   656,   656,   nil,
-   nil,   nil,   656,   656,   nil,   nil,   nil,   nil,   nil,   nil,
-   656,   nil,   nil,   656,   656,   656,   nil,   656,   656,   657,
-   657,   657,   nil,   657,   nil,   nil,   nil,   657,   657,   nil,
-   nil,   nil,   657,   nil,   657,   657,   657,   657,   657,   657,
-   657,   nil,   nil,   nil,   nil,   nil,   657,   657,   657,   657,
-   657,   657,   657,   nil,   nil,   657,   nil,   nil,   nil,   nil,
-   nil,   nil,   657,   nil,   nil,   657,   657,   657,   657,   657,
-   657,   657,   657,   nil,   657,   657,   657,   nil,   657,   657,
-   nil,   657,   657,   657,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   657,   nil,   nil,   657,   nil,   nil,   657,
-   657,   nil,   nil,   657,   nil,   nil,   nil,   nil,   nil,   657,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   657,   nil,   nil,
-   nil,   nil,   657,   657,   657,   657,   657,   657,   nil,   nil,
-   nil,   657,   657,   nil,   nil,   nil,   nil,   nil,   nil,   657,
-   nil,   nil,   657,   657,   657,   nil,   657,   657,   658,   658,
-   658,   nil,   658,   nil,   nil,   nil,   658,   658,   nil,   nil,
-   nil,   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,   658,   658,   658,   658,
-   658,   658,   658,   658,   658,   658,   nil,   658,   658,   nil,
-   658,   658,   658,   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,   658,
-   nil,   nil,   658,   nil,   658,   nil,   658,   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,
-   658,   658,   658,   658,   nil,   658,   658,   661,   661,   661,
-   nil,   661,   nil,   nil,   nil,   661,   661,   nil,   nil,   nil,
-   661,   nil,   661,   661,   661,   661,   661,   661,   661,   nil,
-   nil,   nil,   nil,   nil,   661,   661,   661,   661,   661,   661,
-   661,   nil,   nil,   661,   nil,   nil,   nil,   nil,   nil,   nil,
-   661,   nil,   nil,   661,   661,   661,   661,   661,   661,   661,
-   661,   nil,   661,   661,   661,   nil,   661,   661,   nil,   661,
-   661,   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   661,   nil,   nil,   661,   nil,   nil,   661,   661,   nil,
-   nil,   661,   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,   nil,   nil,
-   661,   661,   661,   661,   661,   661,   nil,   nil,   nil,   661,
-   661,   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,
-   661,   661,   661,   nil,   661,   661,   664,   664,   664,   nil,
-   664,   nil,   nil,   nil,   664,   664,   nil,   nil,   nil,   664,
-   nil,   664,   664,   664,   664,   664,   664,   664,   nil,   nil,
-   nil,   nil,   nil,   664,   664,   664,   664,   664,   664,   664,
-   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,   nil,   664,
-   nil,   nil,   664,   664,   664,   664,   664,   664,   664,   664,
-   664,   664,   664,   664,   nil,   664,   664,   nil,   664,   664,
-   664,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   664,   nil,   nil,   664,   nil,   nil,   664,   664,   nil,   nil,
-   664,   nil,   664,   nil,   664,   nil,   664,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   664,   nil,   nil,   nil,   nil,   664,
-   664,   664,   664,   664,   664,   nil,   nil,   nil,   664,   664,
-   nil,   nil,   nil,   nil,   nil,   nil,   664,   nil,   664,   664,
-   664,   664,   nil,   664,   664,   665,   665,   665,   nil,   665,
-   nil,   nil,   nil,   665,   665,   nil,   nil,   nil,   665,   nil,
-   665,   665,   665,   665,   665,   665,   665,   nil,   nil,   nil,
-   nil,   nil,   665,   665,   665,   665,   665,   665,   665,   nil,
-   nil,   665,   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,
-   nil,   665,   665,   665,   665,   665,   665,   665,   665,   665,
-   665,   665,   665,   nil,   665,   665,   nil,   665,   665,   665,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   665,
-   nil,   nil,   665,   nil,   nil,   665,   665,   nil,   nil,   665,
-   nil,   nil,   nil,   665,   nil,   665,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   665,   nil,   nil,   nil,   nil,   665,   665,
-   665,   665,   665,   665,   nil,   nil,   nil,   665,   665,   nil,
-   nil,   nil,   nil,   nil,   nil,   665,   nil,   665,   665,   665,
-   665,   nil,   665,   665,   666,   666,   666,   nil,   666,   nil,
-   nil,   nil,   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,   666,   666,   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,   666,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   666,   nil,   nil,   nil,   nil,   666,   666,   666,
-   666,   666,   666,   nil,   nil,   nil,   666,   666,   nil,   nil,
-   nil,   nil,   nil,   nil,   666,   nil,   nil,   666,   666,   666,
-   nil,   666,   666,   667,   667,   667,   nil,   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,   nil,   667,   nil,   nil,   667,
-   667,   667,   667,   667,   667,   667,   667,   nil,   667,   667,
-   667,   nil,   667,   667,   nil,   667,   667,   667,   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,   667,   nil,   nil,   667,   nil,   nil,
-   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,
-   nil,   nil,   nil,   667,   nil,   nil,   667,   667,   667,   nil,
-   667,   667,   672,   672,   672,   nil,   672,   nil,   nil,   nil,
-   672,   672,   nil,   nil,   nil,   672,   nil,   672,   672,   672,
-   672,   672,   672,   672,   nil,   nil,   nil,   nil,   nil,   672,
-   672,   672,   672,   672,   672,   672,   nil,   nil,   672,   nil,
-   nil,   nil,   nil,   nil,   nil,   672,   nil,   nil,   672,   672,
-   672,   672,   672,   672,   672,   672,   nil,   672,   672,   672,
-   nil,   672,   672,   nil,   672,   672,   672,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   672,   nil,   nil,   672,
-   nil,   nil,   672,   672,   nil,   nil,   672,   nil,   nil,   nil,
-   nil,   nil,   672,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   672,   nil,   nil,   nil,   nil,   672,   672,   672,   672,   672,
-   672,   nil,   nil,   nil,   672,   672,   nil,   nil,   nil,   nil,
-   nil,   nil,   672,   nil,   nil,   672,   672,   672,   nil,   672,
-   672,   673,   673,   673,   nil,   673,   nil,   nil,   nil,   673,
-   673,   nil,   nil,   nil,   673,   nil,   673,   673,   673,   673,
-   673,   673,   673,   nil,   nil,   nil,   nil,   nil,   673,   673,
-   673,   673,   673,   673,   673,   nil,   nil,   673,   nil,   nil,
-   nil,   nil,   nil,   nil,   673,   nil,   nil,   673,   673,   673,
-   673,   673,   673,   673,   673,   nil,   673,   673,   673,   nil,
-   673,   673,   nil,   673,   673,   673,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   673,   nil,   nil,   673,   nil,
-   nil,   673,   673,   nil,   nil,   673,   nil,   nil,   nil,   nil,
-   nil,   673,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   673,
-   nil,   nil,   nil,   nil,   673,   673,   673,   673,   673,   673,
-   nil,   nil,   nil,   673,   673,   nil,   nil,   nil,   nil,   nil,
-   nil,   673,   nil,   nil,   673,   673,   673,   nil,   673,   673,
-   697,   697,   697,   nil,   697,   nil,   nil,   nil,   697,   697,
-   nil,   nil,   nil,   697,   nil,   697,   697,   697,   697,   697,
-   697,   697,   nil,   nil,   nil,   nil,   nil,   697,   697,   697,
-   697,   697,   697,   697,   nil,   nil,   697,   nil,   nil,   nil,
-   nil,   nil,   nil,   697,   nil,   nil,   697,   697,   697,   697,
-   697,   697,   697,   697,   nil,   697,   697,   697,   nil,   697,
-   697,   nil,   697,   697,   697,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   697,   nil,   nil,   697,   nil,   nil,
-   697,   697,   nil,   nil,   697,   nil,   nil,   nil,   nil,   nil,
-   697,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   697,   nil,
-   nil,   nil,   nil,   697,   697,   697,   697,   697,   697,   nil,
-   nil,   nil,   697,   697,   nil,   nil,   nil,   nil,   nil,   nil,
-   697,   nil,   nil,   697,   697,   697,   nil,   697,   697,   700,
-   700,   700,   nil,   700,   nil,   nil,   nil,   700,   700,   nil,
-   nil,   nil,   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,   700,   700,   700,
-   700,   700,   700,   nil,   700,   700,   700,   nil,   700,   700,
-   nil,   700,   700,   700,   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,
-   700,   nil,   nil,   700,   nil,   nil,   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,   nil,   nil,   nil,   700,
-   nil,   nil,   700,   700,   700,   nil,   700,   700,   704,   704,
-   704,   nil,   704,   nil,   nil,   nil,   704,   704,   nil,   nil,
-   nil,   704,   nil,   704,   704,   704,   704,   704,   704,   704,
-   nil,   nil,   nil,   nil,   nil,   704,   704,   704,   704,   704,
-   704,   704,   nil,   nil,   704,   nil,   nil,   nil,   nil,   nil,
-   nil,   704,   nil,   nil,   704,   704,   704,   704,   704,   704,
-   704,   704,   nil,   704,   704,   704,   nil,   704,   704,   nil,
-   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   704,   704,   704,   704,   704,   704,   nil,   nil,   nil,
-   704,   704,   nil,   nil,   nil,   nil,   nil,   nil,   704,   nil,
-   nil,   704,   704,   704,   nil,   704,   704,   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,   nil,   715,   715,   715,   715,   715,   715,
-   715,   nil,   nil,   715,   nil,   nil,   nil,   nil,   nil,   nil,
-   715,   nil,   nil,   715,   715,   715,   715,   715,   715,   715,
-   715,   nil,   715,   715,   715,   nil,   715,   715,   nil,   nil,
-   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   715,   715,   715,   715,   715,   715,   nil,   nil,   nil,   715,
-   715,   nil,   nil,   nil,   nil,   nil,   nil,   715,   nil,   nil,
-   715,   715,   715,   nil,   715,   715,   721,   721,   721,   nil,
-   721,   nil,   nil,   nil,   721,   721,   nil,   nil,   nil,   721,
-   nil,   721,   721,   721,   721,   721,   721,   721,   nil,   nil,
-   nil,   nil,   nil,   721,   721,   721,   721,   721,   721,   721,
-   nil,   nil,   721,   nil,   nil,   nil,   nil,   nil,   nil,   721,
-   nil,   nil,   721,   721,   721,   721,   721,   721,   721,   721,
-   nil,   721,   721,   721,   nil,   721,   721,   nil,   721,   721,
-   721,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   721,   nil,   nil,   721,   nil,   nil,   721,   721,   nil,   nil,
-   721,   nil,   721,   nil,   nil,   nil,   721,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   721,   nil,   nil,   nil,   nil,   721,
-   721,   721,   721,   721,   721,   nil,   nil,   nil,   721,   721,
-   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,   721,
-   721,   721,   nil,   721,   721,   726,   726,   726,   nil,   726,
-   nil,   nil,   nil,   726,   726,   nil,   nil,   nil,   726,   nil,
-   726,   726,   726,   726,   726,   726,   726,   nil,   nil,   nil,
-   nil,   nil,   726,   726,   726,   726,   726,   726,   726,   nil,
-   nil,   726,   nil,   nil,   nil,   nil,   nil,   nil,   726,   nil,
-   nil,   726,   726,   726,   726,   726,   726,   726,   726,   726,
-   726,   726,   726,   nil,   726,   726,   nil,   726,   726,   726,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   726,
-   nil,   nil,   726,   nil,   nil,   726,   726,   nil,   nil,   726,
-   nil,   726,   nil,   nil,   nil,   726,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   726,   nil,   nil,   nil,   nil,   726,   726,
-   726,   726,   726,   726,   nil,   nil,   nil,   726,   726,   nil,
-   nil,   nil,   nil,   nil,   nil,   726,   nil,   726,   726,   726,
-   726,   nil,   726,   726,   729,   729,   729,   nil,   729,   nil,
-   nil,   nil,   729,   729,   nil,   nil,   nil,   729,   nil,   729,
-   729,   729,   729,   729,   729,   729,   nil,   nil,   nil,   nil,
-   nil,   729,   729,   729,   729,   729,   729,   729,   nil,   nil,
-   729,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,   nil,
-   729,   729,   729,   729,   729,   729,   729,   729,   729,   729,
-   729,   729,   nil,   729,   729,   nil,   729,   729,   729,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,
-   nil,   729,   nil,   nil,   729,   729,   nil,   nil,   729,   nil,
-   nil,   nil,   nil,   nil,   729,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   729,   nil,   nil,   nil,   nil,   729,   729,   729,
-   729,   729,   729,   nil,   nil,   nil,   729,   729,   nil,   nil,
-   nil,   nil,   nil,   nil,   729,   nil,   729,   729,   729,   729,
-   nil,   729,   729,   743,   743,   743,   nil,   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,   nil,   743,   nil,   nil,   743,
-   743,   743,   743,   743,   743,   743,   743,   nil,   743,   743,
-   743,   nil,   743,   743,   nil,   743,   743,   743,   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,   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,   743,   743,   nil,
-   743,   743,   755,   755,   755,   nil,   755,   nil,   nil,   nil,
-   755,   755,   nil,   nil,   nil,   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,
-   755,   755,   755,   755,   755,   755,   755,   755,   755,   755,
-   nil,   755,   755,   nil,   755,   755,   755,   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,   755,   nil,   nil,   755,   nil,   755,   nil,
-   755,   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,   755,   755,   755,   755,   nil,   755,
-   755,   778,   778,   778,   nil,   778,   nil,   nil,   nil,   778,
-   778,   nil,   nil,   nil,   778,   nil,   778,   778,   778,   778,
-   778,   778,   778,   nil,   nil,   nil,   nil,   nil,   778,   778,
-   778,   778,   778,   778,   778,   nil,   nil,   778,   nil,   nil,
-   nil,   nil,   nil,   nil,   778,   nil,   nil,   778,   778,   778,
-   778,   778,   778,   778,   778,   nil,   778,   778,   778,   nil,
-   778,   778,   nil,   778,   778,   778,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   778,   nil,   nil,   778,   nil,
-   nil,   778,   778,   nil,   nil,   778,   nil,   nil,   nil,   nil,
-   nil,   778,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   778,
-   nil,   nil,   nil,   nil,   778,   778,   778,   778,   778,   778,
-   nil,   nil,   nil,   778,   778,   nil,   nil,   nil,   nil,   nil,
-   nil,   778,   nil,   nil,   778,   778,   778,   nil,   778,   778,
-   800,   800,   800,   nil,   800,   nil,   nil,   nil,   800,   800,
-   nil,   nil,   nil,   800,   nil,   800,   800,   800,   800,   800,
-   800,   800,   nil,   nil,   nil,   nil,   nil,   800,   800,   800,
-   800,   800,   800,   800,   nil,   nil,   800,   nil,   nil,   nil,
-   nil,   nil,   nil,   800,   nil,   nil,   800,   800,   800,   800,
-   800,   800,   800,   800,   nil,   800,   800,   800,   nil,   800,
-   800,   nil,   800,   800,   800,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   800,   nil,   nil,   800,   nil,   nil,
-   800,   800,   nil,   nil,   800,   nil,   nil,   nil,   nil,   nil,
-   800,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   800,   nil,
-   nil,   nil,   nil,   800,   800,   800,   800,   800,   800,   nil,
-   nil,   nil,   800,   800,   nil,   nil,   nil,   nil,   nil,   nil,
-   800,   nil,   nil,   800,   800,   800,   nil,   800,   800,   807,
-   807,   807,   nil,   807,   nil,   nil,   nil,   807,   807,   nil,
-   nil,   nil,   807,   nil,   807,   807,   807,   807,   807,   807,
-   807,   nil,   nil,   nil,   nil,   nil,   807,   807,   807,   807,
-   807,   807,   807,   nil,   nil,   807,   nil,   nil,   nil,   nil,
-   nil,   nil,   807,   nil,   nil,   807,   807,   807,   807,   807,
-   807,   807,   807,   nil,   807,   807,   807,   nil,   807,   807,
-   nil,   807,   807,   807,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   807,   nil,   nil,   807,   nil,   nil,   807,
-   807,   nil,   nil,   807,   nil,   nil,   nil,   nil,   nil,   807,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,
-   nil,   nil,   807,   807,   807,   807,   807,   807,   nil,   nil,
-   nil,   807,   807,   nil,   nil,   nil,   nil,   nil,   nil,   807,
-   nil,   nil,   807,   807,   807,   nil,   807,   807,   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,   nil,   820,   820,   820,   820,   820,
-   820,   820,   nil,   nil,   820,   nil,   nil,   nil,   nil,   nil,
-   nil,   820,   nil,   nil,   820,   820,   820,   820,   820,   820,
-   820,   820,   nil,   820,   820,   820,   nil,   820,   820,   nil,
-   820,   820,   820,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   820,   nil,   nil,   820,   nil,   nil,   820,   820,
-   nil,   nil,   820,   nil,   nil,   nil,   nil,   nil,   820,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   820,   nil,   nil,   nil,
-   nil,   820,   820,   820,   820,   820,   820,   nil,   nil,   nil,
-   820,   820,   nil,   nil,   nil,   nil,   nil,   nil,   820,   nil,
-   nil,   820,   820,   820,   nil,   820,   820,   821,   821,   821,
-   nil,   821,   nil,   nil,   nil,   821,   821,   nil,   nil,   nil,
-   821,   nil,   821,   821,   821,   821,   821,   821,   821,   nil,
-   nil,   nil,   nil,   nil,   821,   821,   821,   821,   821,   821,
-   821,   nil,   nil,   821,   nil,   nil,   nil,   nil,   nil,   nil,
-   821,   nil,   nil,   821,   821,   821,   821,   821,   821,   821,
-   821,   nil,   821,   821,   821,   nil,   821,   821,   nil,   821,
-   821,   821,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   821,   nil,   nil,   821,   nil,   nil,   821,   821,   nil,
-   nil,   821,   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,   nil,   nil,
-   821,   821,   821,   821,   821,   821,   nil,   nil,   nil,   821,
-   821,   nil,   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,
-   821,   821,   821,   nil,   821,   821,   822,   822,   822,   nil,
-   822,   nil,   nil,   nil,   822,   822,   nil,   nil,   nil,   822,
-   nil,   822,   822,   822,   822,   822,   822,   822,   nil,   nil,
-   nil,   nil,   nil,   822,   822,   822,   822,   822,   822,   822,
-   nil,   nil,   822,   nil,   nil,   nil,   nil,   nil,   nil,   822,
-   nil,   nil,   822,   822,   822,   822,   822,   822,   822,   822,
-   nil,   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,   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   822,   nil,   nil,   822,
-   822,   822,   nil,   822,   822,   823,   823,   823,   nil,   823,
-   nil,   nil,   nil,   823,   823,   nil,   nil,   nil,   823,   nil,
-   823,   823,   823,   823,   823,   823,   823,   nil,   nil,   nil,
-   nil,   nil,   823,   823,   823,   823,   823,   823,   823,   nil,
-   nil,   823,   nil,   nil,   nil,   nil,   nil,   nil,   823,   nil,
-   nil,   823,   823,   823,   823,   823,   823,   823,   823,   nil,
-   823,   823,   823,   nil,   823,   823,   nil,   823,   823,   823,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   823,
-   nil,   nil,   823,   nil,   nil,   823,   823,   nil,   nil,   823,
-   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   823,   nil,   nil,   nil,   nil,   823,   823,
-   823,   823,   823,   823,   nil,   nil,   nil,   823,   823,   nil,
-   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,   823,   823,
-   823,   nil,   823,   823,   825,   825,   825,   nil,   825,   nil,
-   nil,   nil,   825,   825,   nil,   nil,   nil,   825,   nil,   825,
-   825,   825,   825,   825,   825,   825,   nil,   nil,   nil,   nil,
-   nil,   825,   825,   825,   825,   825,   825,   825,   nil,   nil,
-   825,   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,
-   825,   825,   825,   825,   825,   825,   825,   825,   nil,   825,
-   825,   825,   nil,   825,   825,   nil,   825,   825,   825,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,
-   nil,   825,   nil,   nil,   825,   825,   nil,   nil,   825,   nil,
-   nil,   nil,   nil,   nil,   825,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   825,   nil,   nil,   nil,   nil,   825,   825,   825,
-   825,   825,   825,   nil,   nil,   nil,   825,   825,   nil,   nil,
-   nil,   nil,   nil,   nil,   825,   nil,   nil,   825,   825,   825,
-   nil,   825,   825,   858,   858,   858,   nil,   858,   nil,   nil,
-   nil,   858,   858,   nil,   nil,   nil,   858,   nil,   858,   858,
-   858,   858,   858,   858,   858,   nil,   nil,   nil,   nil,   nil,
-   858,   858,   858,   858,   858,   858,   858,   nil,   nil,   858,
-   nil,   nil,   nil,   nil,   nil,   nil,   858,   nil,   nil,   858,
-   858,   858,   858,   858,   858,   858,   858,   nil,   858,   858,
-   858,   nil,   858,   858,   nil,   858,   858,   858,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   858,   nil,   nil,
-   858,   nil,   nil,   858,   858,   nil,   nil,   858,   nil,   nil,
-   nil,   nil,   nil,   858,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   858,   nil,   nil,   nil,   nil,   858,   858,   858,   858,
-   858,   858,   nil,   nil,   nil,   858,   858,   nil,   nil,   nil,
-   nil,   nil,   nil,   858,   nil,   nil,   858,   858,   858,   nil,
-   858,   858,   865,   865,   865,   nil,   865,   nil,   nil,   nil,
-   865,   865,   nil,   nil,   nil,   865,   nil,   865,   865,   865,
-   865,   865,   865,   865,   nil,   nil,   nil,   nil,   nil,   865,
-   865,   865,   865,   865,   865,   865,   nil,   nil,   865,   nil,
-   nil,   nil,   nil,   nil,   nil,   865,   nil,   nil,   865,   865,
-   865,   865,   865,   865,   865,   865,   nil,   865,   865,   865,
-   nil,   865,   865,   nil,   865,   865,   865,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   865,   nil,   nil,   865,
-   nil,   nil,   865,   865,   nil,   nil,   865,   nil,   nil,   nil,
-   nil,   nil,   865,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   865,   nil,   nil,   nil,   nil,   865,   865,   865,   865,   865,
-   865,   nil,   nil,   nil,   865,   865,   nil,   nil,   nil,   nil,
-   nil,   nil,   865,   nil,   nil,   865,   865,   865,   nil,   865,
-   865,   874,   874,   874,   nil,   874,   nil,   nil,   nil,   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,   874,   874,   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,   874,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   874,
-   nil,   nil,   nil,   nil,   874,   874,   874,   874,   874,   874,
-   nil,   nil,   nil,   874,   874,   nil,   nil,   nil,   nil,   nil,
-   nil,   874,   nil,   nil,   874,   874,   874,   nil,   874,   874,
-   916,   916,   916,   nil,   916,   nil,   nil,   nil,   916,   916,
-   nil,   nil,   nil,   916,   nil,   916,   916,   916,   916,   916,
-   916,   916,   nil,   nil,   nil,   nil,   nil,   916,   916,   916,
-   916,   916,   916,   916,   nil,   nil,   916,   nil,   nil,   nil,
-   nil,   nil,   nil,   916,   nil,   nil,   916,   916,   916,   916,
-   916,   916,   916,   916,   916,   916,   916,   916,   nil,   916,
-   916,   nil,   916,   916,   916,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   916,   nil,   nil,   916,   nil,   nil,
-   916,   916,   nil,   nil,   916,   nil,   nil,   nil,   916,   nil,
-   916,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   916,   nil,
-   nil,   nil,   nil,   916,   916,   916,   916,   916,   916,   nil,
-   nil,   nil,   916,   916,   nil,   nil,   nil,   nil,   nil,   nil,
-   916,   nil,   916,   916,   916,   916,   nil,   916,   916,   917,
-   917,   917,   nil,   917,   nil,   nil,   nil,   917,   917,   nil,
-   nil,   nil,   917,   nil,   917,   917,   917,   917,   917,   917,
-   917,   nil,   nil,   nil,   nil,   nil,   917,   917,   917,   917,
-   917,   917,   917,   nil,   nil,   917,   nil,   nil,   nil,   nil,
-   nil,   nil,   917,   nil,   nil,   917,   917,   917,   917,   917,
-   917,   917,   917,   nil,   917,   917,   917,   nil,   917,   917,
-   nil,   917,   917,   917,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   917,   nil,   nil,   917,   nil,   nil,   917,
-   917,   nil,   nil,   917,   nil,   nil,   nil,   nil,   nil,   917,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   917,   nil,   nil,
-   nil,   nil,   917,   917,   917,   917,   917,   917,   nil,   nil,
-   nil,   917,   917,   nil,   nil,   nil,   nil,   nil,   nil,   917,
-   nil,   nil,   917,   917,   917,   nil,   917,   917,   929,   929,
-   929,   nil,   929,   nil,   nil,   nil,   929,   929,   nil,   nil,
-   nil,   929,   nil,   929,   929,   929,   929,   929,   929,   929,
-   nil,   nil,   nil,   nil,   nil,   929,   929,   929,   929,   929,
-   929,   929,   nil,   nil,   929,   nil,   nil,   nil,   nil,   nil,
-   nil,   929,   nil,   nil,   929,   929,   929,   929,   929,   929,
-   929,   929,   nil,   929,   929,   929,   nil,   929,   929,   nil,
-   nil,   nil,   929,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   929,   nil,   nil,   929,   nil,   nil,   929,   929,
-   nil,   nil,   929,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   929,   929,   929,   929,   929,   929,   nil,   nil,   nil,
-   929,   929,   nil,   nil,   nil,   nil,   nil,   nil,   929,   nil,
-   nil,   929,   929,   929,   nil,   929,   929,   938,   938,   938,
-   nil,   938,   nil,   nil,   nil,   938,   938,   nil,   nil,   nil,
-   938,   nil,   938,   938,   938,   938,   938,   938,   938,   nil,
-   nil,   nil,   nil,   nil,   938,   938,   938,   938,   938,   938,
-   938,   nil,   nil,   938,   nil,   nil,   nil,   nil,   nil,   nil,
-   938,   nil,   nil,   938,   938,   938,   938,   938,   938,   938,
-   938,   nil,   938,   938,   938,   nil,   938,   938,   nil,   nil,
-   nil,   938,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   938,   nil,   nil,   938,   nil,   nil,   938,   938,   nil,
-   nil,   938,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   938,   938,   938,   938,   938,   938,   nil,   nil,   nil,   938,
-   938,   nil,   nil,   nil,   nil,   nil,   nil,   938,   nil,   nil,
-   938,   938,   938,   nil,   938,   938,   946,   946,   946,   nil,
-   946,   nil,   nil,   nil,   946,   946,   nil,   nil,   nil,   946,
-   nil,   946,   946,   946,   946,   946,   946,   946,   nil,   nil,
-   nil,   nil,   nil,   946,   946,   946,   946,   946,   946,   946,
-   nil,   nil,   946,   nil,   nil,   nil,   nil,   nil,   nil,   946,
-   nil,   nil,   946,   946,   946,   946,   946,   946,   946,   946,
-   nil,   946,   946,   946,   nil,   946,   946,   nil,   946,   946,
-   946,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   946,   nil,   nil,   946,   nil,   nil,   946,   946,   nil,   nil,
-   946,   nil,   946,   nil,   nil,   nil,   946,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   946,   nil,   nil,   nil,   nil,   946,
-   946,   946,   946,   946,   946,   nil,   nil,   nil,   946,   946,
-   nil,   nil,   nil,   nil,   nil,   nil,   946,   nil,   nil,   946,
-   946,   946,   nil,   946,   946,   989,   989,   989,   nil,   989,
-   nil,   nil,   nil,   989,   989,   nil,   nil,   nil,   989,   nil,
-   989,   989,   989,   989,   989,   989,   989,   nil,   nil,   nil,
-   nil,   nil,   989,   989,   989,   989,   989,   989,   989,   nil,
-   nil,   989,   nil,   nil,   nil,   nil,   nil,   nil,   989,   nil,
-   nil,   989,   989,   989,   989,   989,   989,   989,   989,   nil,
-   989,   989,   989,   nil,   989,   989,   nil,   nil,   nil,   989,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   989,
-   nil,   nil,   989,   nil,   nil,   989,   989,   nil,   nil,   989,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   989,   989,
-   989,   989,   989,   989,   nil,   nil,   nil,   989,   989,   nil,
-   nil,   nil,   nil,   nil,   nil,   989,   nil,   nil,   989,   989,
-   989,   nil,   989,   989,  1003,  1003,  1003,   nil,  1003,   nil,
-   nil,   nil,  1003,  1003,   nil,   nil,   nil,  1003,   nil,  1003,
-  1003,  1003,  1003,  1003,  1003,  1003,   nil,   nil,   nil,   nil,
-   nil,  1003,  1003,  1003,  1003,  1003,  1003,  1003,   nil,   nil,
-  1003,   nil,   nil,   nil,   nil,   nil,   nil,  1003,   nil,   nil,
-  1003,  1003,  1003,  1003,  1003,  1003,  1003,  1003,   nil,  1003,
-  1003,  1003,   nil,  1003,  1003,   nil,  1003,  1003,  1003,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1003,   nil,
-   nil,  1003,   nil,   nil,  1003,  1003,   nil,   nil,  1003,   nil,
-   nil,   nil,   nil,   nil,  1003,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1003,   nil,   nil,   nil,   nil,  1003,  1003,  1003,
-  1003,  1003,  1003,   nil,   nil,   nil,  1003,  1003,   nil,   nil,
-   nil,   nil,   nil,   nil,  1003,   nil,   nil,  1003,  1003,  1003,
-   nil,  1003,  1003,  1036,  1036,  1036,   nil,  1036,   nil,   nil,
-   nil,  1036,  1036,   nil,   nil,   nil,  1036,   nil,  1036,  1036,
-  1036,  1036,  1036,  1036,  1036,   nil,   nil,   nil,   nil,   nil,
-  1036,  1036,  1036,  1036,  1036,  1036,  1036,   nil,   nil,  1036,
-   nil,   nil,   nil,   nil,   nil,   nil,  1036,   nil,   nil,  1036,
-  1036,  1036,  1036,  1036,  1036,  1036,  1036,  1036,  1036,  1036,
-  1036,   nil,  1036,  1036,   nil,  1036,  1036,  1036,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1036,   nil,   nil,
-  1036,   nil,   nil,  1036,  1036,   nil,   nil,  1036,   nil,  1036,
-   nil,  1036,   nil,  1036,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1036,   nil,   nil,   nil,   nil,  1036,  1036,  1036,  1036,
-  1036,  1036,   nil,   nil,   nil,  1036,  1036,   nil,   nil,   nil,
-   nil,   nil,   nil,  1036,   nil,  1036,  1036,  1036,  1036,   nil,
-  1036,  1036,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
-   nil,   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,   nil,    11,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,
-    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,
-   nil,    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
-   nil,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    11,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
-   nil,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,   nil,   nil,   nil,   nil,   nil,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,   nil,   nil,    12,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,
-    12,    12,    12,    12,    12,    12,    12,   nil,   nil,    12,
-    12,   nil,   nil,   nil,    12,    12,    12,    12,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,   nil,   nil,   nil,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,   nil,   nil,   nil,   nil,   nil,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,
-    75,    75,   nil,    75,    75,    75,    75,    75,    75,    75,
-   nil,   nil,    75,    75,   nil,   nil,   nil,    75,    75,    75,
-    75,   nil,   nil,   nil,   nil,   nil,    75,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    75,    75,   nil,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,   nil,   nil,
-    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    75,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   nil,   nil,   nil,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   nil,   nil,
-   nil,   nil,   nil,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   nil,   105,   nil,   nil,   nil,
-   nil,   nil,   nil,   105,   105,   nil,   105,   105,   105,   105,
-   105,   105,   105,   nil,   nil,   105,   105,   nil,   nil,   nil,
-   105,   105,   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   nil,   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   105,   421,   421,   421,   421,   421,   421,
-   421,   421,   421,   421,   421,   421,   421,   421,   421,   421,
-   421,   421,   421,   421,   421,   421,   421,   421,   nil,   nil,
-   nil,   421,   421,   421,   421,   421,   421,   421,   421,   421,
-   421,   nil,   nil,   nil,   nil,   nil,   421,   421,   421,   421,
-   421,   421,   421,   421,   421,   nil,   nil,   421,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   421,   421,   nil,   421,
-   421,   421,   421,   421,   421,   421,   nil,   nil,   421,   421,
-   nil,   nil,   nil,   421,   421,   421,   421,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   421,   421,   nil,   421,   421,   421,   421,   421,   421,   421,
-   421,   421,   421,   421,   nil,   nil,   421,   421,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   421,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   421,   653,   653,   653,
-   653,   653,   653,   653,   653,   653,   653,   653,   653,   653,
-   653,   653,   653,   653,   653,   653,   653,   653,   653,   653,
-   653,   nil,   nil,   nil,   653,   653,   653,   653,   653,   653,
-   653,   653,   653,   653,   nil,   nil,   nil,   nil,   nil,   653,
-   653,   653,   653,   653,   653,   653,   653,   653,   nil,   nil,
-   653,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   653,
-   653,   nil,   653,   653,   653,   653,   653,   653,   653,   nil,
-   nil,   653,   653,   nil,   nil,   nil,   653,   653,   653,   653,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   653,   653,   nil,   653,   653,   653,   653,
-   653,   653,   653,   653,   653,   653,   653,   nil,   nil,   653,
-   653,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   653,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   653,
-   764,   764,   764,   764,   764,   764,   764,   764,   764,   764,
-   764,   764,   764,   764,   764,   764,   764,   764,   764,   764,
-   764,   764,   764,   764,   nil,   nil,   nil,   764,   764,   764,
-   764,   764,   764,   764,   764,   764,   764,   nil,   nil,   nil,
-   nil,   nil,   764,   764,   764,   764,   764,   764,   764,   764,
-   764,   nil,   nil,   764,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   764,   764,   nil,   764,   764,   764,   764,   764,
-   764,   764,   nil,   nil,   764,   764,   nil,   nil,   nil,   764,
-   764,   764,   764,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   764,   764,   nil,   764,
-   764,   764,   764,   764,   764,   764,   764,   764,   764,   764,
-   nil,   nil,   764,   nil,   nil,   nil,   nil,   228,   228,   nil,
-   nil,   228,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   228,   228,   764,   228,   228,   228,   228,   228,   228,   228,
-   nil,   nil,   228,   228,   nil,   nil,   nil,   228,   228,   228,
-   228,   nil,   nil,   nil,   nil,   nil,   228,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   228,   228,   nil,   228,   228,   228,
-   228,   228,   228,   228,   228,   228,   228,   228,   nil,   nil,
-   228,   nil,   nil,   nil,   nil,   229,   229,   nil,   nil,   229,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,
-   228,   229,   229,   229,   229,   229,   229,   229,   nil,   nil,
-   229,   229,   nil,   nil,   nil,   229,   229,   229,   229,   nil,
-   nil,   nil,   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   229,   229,   nil,   229,   229,   229,   229,   229,
-   229,   229,   229,   229,   229,   229,   nil,   nil,   229,   nil,
-   nil,   nil,   nil,   472,   472,   nil,   nil,   472,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   472,   472,   229,   472,
-   472,   472,   472,   472,   472,   472,   nil,   nil,   472,   472,
-   nil,   nil,   nil,   472,   472,   472,   472,   nil,   nil,   nil,
-   nil,   nil,   472,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   472,   472,   nil,   472,   472,   472,   472,   472,   472,   472,
-   472,   472,   472,   472,   nil,   nil,   472,   nil,   nil,   nil,
-   nil,   473,   473,   nil,   nil,   473,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   473,   473,   472,   473,   473,   473,
-   473,   473,   473,   473,   nil,   nil,   473,   473,   nil,   nil,
-   nil,   473,   473,   473,   473,   nil,   nil,   nil,   nil,   nil,
-   473,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   473,   473,
-   nil,   473,   473,   473,   473,   473,   473,   473,   473,   473,
-   473,   473,   nil,   nil,   473,   nil,   nil,   nil,   nil,   538,
-   538,   nil,   nil,   538,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   538,   538,   473,   538,   538,   538,   538,   538,
-   538,   538,   nil,   nil,   538,   538,   nil,   nil,   nil,   538,
-   538,   538,   538,   nil,   nil,   nil,   nil,   nil,   538,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   538,   538,   nil,   538,
-   538,   538,   538,   538,   538,   538,   538,   538,   538,   538,
-   nil,   nil,   538,   nil,   nil,   nil,   nil,   539,   539,   nil,
-   nil,   539,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   539,   539,   538,   539,   539,   539,   539,   539,   539,   539,
-   nil,   nil,   539,   539,   nil,   nil,   nil,   539,   539,   539,
-   539,   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   539,   539,   nil,   539,   539,   539,
-   539,   539,   539,   539,   539,   539,   539,   539,   nil,   nil,
-   539,   nil,   nil,   nil,   nil,   548,   548,   nil,   nil,   548,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   548,   548,
-   539,   548,   548,   548,   548,   548,   548,   548,   nil,   nil,
-   548,   548,   nil,   nil,   nil,   548,   548,   548,   548,   nil,
-   nil,   nil,   nil,   nil,   548,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   548,   548,   nil,   548,   548,   548,   548,   548,
-   548,   548,   548,   548,   548,   548,   nil,   nil,   548,   nil,
-   nil,   nil,   nil,   549,   549,   nil,   nil,   549,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   549,   549,   548,   549,
-   549,   549,   549,   549,   549,   549,   nil,   nil,   549,   549,
-   nil,   nil,   nil,   549,   549,   549,   549,   nil,   nil,   nil,
-   nil,   nil,   549,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   549,   549,   nil,   549,   549,   549,   549,   549,   549,   549,
-   549,   549,   549,   549,   nil,   nil,   549,   nil,   nil,   nil,
-   nil,   577,   577,   nil,   nil,   577,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   577,   577,   549,   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,   nil,   nil,   577,   nil,   nil,   nil,   nil,   578,
-   578,   nil,   nil,   578,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   578,   578,   577,   578,   578,   578,   578,   578,
-   578,   578,   nil,   nil,   578,   578,   nil,   nil,   nil,   578,
-   578,   578,   578,   nil,   nil,   nil,   nil,   nil,   578,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   578,   578,   nil,   578,
-   578,   578,   578,   578,   578,   578,   578,   578,   578,   578,
-   nil,   nil,   578,   nil,   nil,   nil,   nil,   659,   659,   nil,
-   nil,   659,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   659,   659,   578,   659,   659,   659,   659,   659,   659,   659,
-   nil,   nil,   659,   659,   nil,   nil,   nil,   659,   659,   659,
-   659,   nil,   nil,   nil,   nil,   nil,   659,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   659,   659,   nil,   659,   659,   659,
-   659,   659,   659,   659,   659,   659,   659,   659,   nil,   nil,
-   659,   nil,   nil,   nil,   nil,   660,   660,   nil,   nil,   660,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   660,   660,
-   659,   660,   660,   660,   660,   660,   660,   660,   nil,   nil,
-   660,   660,   nil,   nil,   nil,   660,   660,   660,   660,   nil,
-   nil,   nil,   nil,   nil,   660,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   660,   660,   nil,   660,   660,   660,   660,   660,
-   660,   660,   660,   660,   660,   660,   nil,   nil,   660,   nil,
-   nil,   nil,   nil,   753,   753,   nil,   nil,   753,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   753,   753,   660,   753,
-   753,   753,   753,   753,   753,   753,   nil,   nil,   753,   753,
-   nil,   nil,   nil,   753,   753,   753,   753,   nil,   nil,   nil,
-   nil,   nil,   753,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   753,   753,   nil,   753,   753,   753,   753,   753,   753,   753,
-   753,   753,   753,   753,   nil,   nil,   753,   nil,   nil,   nil,
-   nil,   754,   754,   nil,   nil,   754,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   754,   754,   753,   754,   754,   754,
-   754,   754,   754,   754,   nil,   nil,   754,   754,   nil,   nil,
-   nil,   754,   754,   754,   754,   nil,   nil,   nil,   nil,   nil,
-   754,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   754,   754,
-   nil,   754,   754,   754,   754,   754,   754,   754,   754,   754,
-   754,   754,   nil,   963,   754,   963,   963,   963,   963,   963,
-   980,   nil,   980,   980,   980,   980,   980,   nil,   nil,   963,
-   nil,   nil,   nil,   nil,   754,   nil,   980,   983,   nil,   983,
-   983,   983,   983,   983,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   963,   nil,   983,   nil,   nil,   nil,   nil,   980,   nil,
-   963,   963,   963,   963,   nil,   nil,   nil,   980,   980,   980,
-   980,   nil,   nil,   nil,   nil,   983,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   983,   983,   983,   983,   nil,   nil,
-   nil,  1032,  1032,   nil,   nil,  1032,   963,   nil,   nil,   nil,
-   nil,   nil,   nil,   980,  1032,  1032,   nil,  1032,  1032,  1032,
-  1032,  1032,  1032,  1032,   nil,   nil,  1032,  1032,   nil,   nil,
-   983,  1032,  1032,  1032,  1032,   nil,   nil,   nil,   nil,   nil,
-  1032,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1032,  1032,
-   nil,  1032,  1032,  1032,  1032,  1032,  1032,  1032,  1032,  1032,
-  1032,  1032,   nil,   nil,  1032,   nil,   nil,   nil,   nil,  1037,
-  1037,   nil,   nil,  1037,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1037,  1037,  1032,  1037,  1037,  1037,  1037,  1037,
-  1037,  1037,   nil,   nil,  1037,  1037,   nil,   nil,   nil,  1037,
-  1037,  1037,  1037,   nil,   nil,   nil,   nil,   nil,  1037,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1037,  1037,   nil,  1037,
-  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,
-   nil,   nil,  1037,   nil,   nil,   nil,   nil,  1038,  1038,   nil,
-   nil,  1038,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1038,  1038,  1037,  1038,  1038,  1038,  1038,  1038,  1038,  1038,
-   nil,   nil,  1038,  1038,   nil,   nil,   nil,  1038,  1038,  1038,
-  1038,   nil,   nil,   nil,   nil,   nil,  1038,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1038,  1038,   nil,  1038,  1038,  1038,
-  1038,  1038,  1038,  1038,  1038,  1038,  1038,  1038,   nil,  1056,
-  1038,  1056,  1056,  1056,  1056,  1056,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1056,   nil,   nil,   nil,   nil,
-  1038,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1056,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1056,  1056,  1056,  1056,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1056 ]
-
-racc_action_pointer = [
-   nil,    10,  1043,    55,   nil,   -93,   nil,   nil,  5102,   602,
-   nil, 23660, 23793,   -47,   nil,   -47,    91,    -2,   166,   204,
-   -43,   nil,   -73,  5241,  1323,   270,   nil,   107,   nil,   157,
-  5375,  5503,  5633,  5772,  5911,   nil,  1183,  6050,  6189,   nil,
-   179,   159,   309,   270,   116,  6328,  6467,   442,  6606,   240,
-   431,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  6740,   nil,  6877,   nil,   nil,   -19,   nil,  7016,  7155,   nil,
-   nil,  7294,  7433,   305,   nil, 23926,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   -94,   nil,   nil,   nil,   nil,   nil,   nil,   280,
-   284,   307,   328,   nil,   nil, 24059,   nil,   nil,   nil,   nil,
-   nil,   nil,     0,   nil,   nil,   132,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  7572,   nil,
-   nil,   nil,   nil,  7711,  7850,  7989,  8128,  8267,   361,   nil,
-     1,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   360,
-   nil,  1323,  8406,  8545,  8684,  8823,  8962,  9101, 24526, 24594,
-   nil,  9240,  9379,  9518,   nil,   nil,   528,   101,   243,   453,
-   272,   379,   444,   nil,  9657,  1463,   449,  9796,  9935, 10074,
- 10213, 10352, 10491, 10630, 10769, 10908, 11047, 11186, 11325, 11464,
- 11603, 11742, 11881, 12020, 12159, 12298, 12437, 12576, 12715,   nil,
-   nil,   nil,   nil, 12854,   nil,   nil,   nil, 16306,   nil,   nil,
-   444, 12993, 13132,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil, 13271,   nil,  1463,   nil,   414,   440,   nil, 13410,   496,
- 13549,   nil,   nil, 13688, 13827,   nil,   nil,   165,   nil,   nil,
- 13966,   734,   nil,   458,  1603,   484,   521,   487, 14105,  1743,
-   577,   592,   660,   565,   744,   nil,   540,   509,   162,   nil,
-   nil,   nil,   566,   128,   538, 14244,   nil,   349,   602,   754,
-   nil,   618, 14383,   nil, 14522,  1883,  1168,   561, 14661, 14800,
-   nil,   158,   -11,   -10, 14939,  2023,  2163,   197,   674,   566,
-     5,     7,   756,   646,    22,   680,   nil,   nil, 15078,   nil,
- 15217,   113,   143,   147,   241,   409,   432,   473,   487,   500,
-   nil,   501,   nil,   nil,   nil,   nil,   583,   nil,   191,   nil,
-   290,   nil,   359,   nil,   593,   304,   nil,   595,   318,   nil,
-   610,   -57,   nil,   619,   -41,   nil,   321,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil, 24192,   nil,   nil,   nil,   nil,   631,   nil,   nil,   619,
- 15356,   623,   nil,   nil,   619,   nil,   787,   287,   nil,   nil,
-   nil,  1043,   nil,   nil,   nil,   nil,   nil,  1183,   638,   nil,
-   nil,   638,   657,   359,   395,  6877,   nil,   nil,   nil,   264,
-   392,   697,   nil,   nil, 15490, 15622,   nil,   nil,   nil,   -16,
-   nil,   697, 24662, 24730, 15755,   310, 15894, 16033, 16172,  2163,
-  2303,   -42,   212,   722,   727,   729,   740,  3703,  3843,  3447,
-   862,  2443,  2583,  2723,  2863,  3003,   477,   609,  3143,  3283,
-  1603,  3423,   802,   nil, 16306,   nil,   nil,   nil,   nil,   691,
-   nil,   nil,   nil,   692,   nil,   nil, 16432,   nil,   nil, 16571,
-   nil, 16710,   nil,   262,   nil,   nil,   nil, 16849,  1308,   707,
-   702,   701,   nil,   nil,   702, 16988,   707, 17127, 24798, 24866,
-   788,   745,   nil, 17266,   707,   nil, 17405, 17544, 24934, 25002,
-  3563,  1743, 17683,   833,   833,   717,   nil,   nil,    67,   198,
-   750,   734,   nil,   319,   786,  2303,   864,   nil,  2443,    55,
-   870,   871,   868,   885,   nil,   nil, 17822, 25070, 25138,    25,
-   nil,   172,   205,   305,   nil,   792,   nil,   789, 17961,   nil,
-   808,   nil,   nil,   nil, 18100,   nil,   715,   nil,   770,   774,
-   nil,   775,   776,   777,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   780,   520,   nil,   nil, 18239,   nil,   nil,   nil,
-   873,   nil,   nil,   nil,   885,   nil,   nil,   890,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   164,
-   nil,   nil,   188,   nil,   nil,   nil,   812,   nil,   nil,   814,
-   nil,  2583,   nil, 24325,   nil,   828, 18378, 18517, 18656, 25206,
- 25274, 18795,   397,   863, 18934, 19073, 19212, 19351,   863,   nil,
-   nil,   nil, 19490, 19629,   865,   nil,   nil,   nil,   331,   363,
-   520,   652,   838,   849,   nil,   105,   971,   -10,   nil,   nil,
-   889,   nil,   995,   nil,   878,   nil,   920, 19768,   nil,   nil,
- 19907,   nil,   nil,  -111, 20046,   883,   nil,   888,    21,    23,
-   932,   267,   824,   937,   899, 20185,   nil,   962,    27,    84,
-   nil, 20324,   nil,   nil,   nil,   nil, 20463,   nil,   nil, 20602,
-   nil,   nil,   nil,   410,   nil,  1018,   nil,   nil,   nil,   nil,
-   nil,  1028,   nil, 20741,   914,    26,    28,    93,   152,  2723,
-   nil,   822,   nil, 25342, 25410, 20880,   nil,   nil,   nil,   517,
-  2863,  3003,  5339,  5467, 24458,    53,    28,   925,   220,   nil,
-   nil,   574,  6704,   nil, 15454,   nil,  5285,   nil, 21019,   nil,
-   652,   nil,   927,   928,   921,   941,   nil,   nil,   nil,   nil,
-   977,  3143,   nil,   nil,   nil,   nil,   nil,   956,   nil,   941,
- 21158,   945,   364,   368,   784,   912,  1883, 21297,   nil,   950,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
- 21436, 21575, 21714, 21853,   369, 21992,   nil,   nil, 15553,   nil,
-  3283,   nil,   nil,   967,   nil,   109,   nil,   nil,   nil,   nil,
-   953,   268,   nil,   nil,   nil,   nil,   nil,   nil,  3423,   nil,
-   954,   996,   nil,   nil,   426,  1076,   nil,   nil, 22131,   nil,
-  3563,  1090,   nil,   nil,   nil, 22270,    -7,    34,  1094,   304,
-   915,   nil,   980,  3703, 22409,   278,  1115,  1116,  1004,   359,
-   nil,   nil,   nil,  3843,  3983,  1000,  1007,  1005,   nil,   nil,
-   nil,  1009,  1011,   nil,  1014,  1026,   nil,  1027,   nil,   nil,
-  1039,   748,   513,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1028,   nil,  1042,   370,   nil,   nil, 22548, 22687,  2023,  1045,
-  1047,   nil,  1048,  1052,  1061,   nil,  1082,  1066,  1052, 22826,
-   nil,   nil,   nil,   nil,  4123,  4263,   nil,    -8, 22965,   nil,
-   nil,   nil,    -1,   nil,   nil,   nil, 23104,  4403,   nil,   nil,
-  1187,   411,   nil,   nil,   nil,   nil,   nil,  1107,  1086,  1210,
-  1309,   nil,   nil, 25472,   nil,  6071,   nil,  6210,   nil,  6650,
-   nil,   nil,   nil,   nil,  1091,  1093,   nil,   320,   nil,   nil,
- 25479,   nil,   nil, 25496,   nil,  7454,   nil,   nil,  1114, 23243,
-   823,  1169,   nil,  1217,  4543,   862,   865,   916,  1184,   948,
-   nil,  4683,   nil, 23382,   433,   nil,   nil,  4823,  4963,   nil,
-   nil,   528,   nil,   nil,   nil,  1114,  1117,  1132,  1135,   645,
-   755,  1136,   nil,   nil,  1139,  1141,  1142,  1144,   nil,  1145,
-   nil,   974, 25550,   nil,   nil,  1270, 23521, 25618, 25686,  1043,
-   697,   nil,   nil,   nil,   nil,  1269,  1271,   nil,  1449, 14126,
-   nil,   nil,   nil,   nil,  1154,   nil, 25748,   nil, 14265,   nil,
- 15099,   nil, 15238,   nil,   nil,  1205,  1206,   nil,  1171,    11,
-    36,   123,  1079,   nil,   nil,   nil,   nil,  1175,  1176,  1177,
-  1180,  1182,    39,   nil, 15400,   nil,   nil,   nil,   nil,  1183,
-   nil ]
-
-racc_action_default = [
-    -1,  -647,  -646,  -647,    -2,  -633,    -4,    -5,  -647,    -8,
-    -9,  -647,  -647,  -647,   -36,  -647,  -647,   -40,  -647,  -647,
-  -291,   -51,  -635,  -647,   -56,   -61,   -62,   -63,   -67,  -268,
-  -268,  -268,  -306,  -339,  -340,   -79,  -646,   -83,   -91,   -93,
-  -647,  -535,  -536,  -647,  -647,  -647,  -647,  -227,  -647,  -635,
-  -241,  -282,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,
-  -620,  -293,  -295,  -302,  -304,  -314,  -316,  -647,  -647,   -58,
-   -58,  -633,  -647,  -324,  -331,  -647,  -341,  -342,  -344,  -345,
-  -346,  -347,  -348,  -349,  -350,  -351,  -352,  -353,  -362,  -417,
-  -465,  -466,  -467,  -468,  -469,  -646,  -472,  -646,  -646,  -646,
-  -646,  -646,  -646,  -508,  -509,  -646,  -511,  -517,  -519,  -520,
-  -521,  -522,  -618,  -524,  -525,  -619,  -527,  -528,  -529,  -530,
-  -531,  -532,  -533,  -534,  -539,  -540,  1091,    -3,  -634,  -642,
-  -643,  -644,    -7,  -647,  -647,  -647,  -647,  -647,  -647,   -24,
-  -647,  -122,  -123,  -124,  -125,  -126,  -127,  -128,  -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,
-  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,   -29,
-  -129,  -646,  -647,  -647,  -647,  -647,  -647,  -646,  -647,  -647,
-  -630,  -647,  -647,  -635,  -636,   -55,  -647,  -535,  -536,  -647,
-  -291,  -647,  -647,  -233,  -647,  -646,  -647,  -647,  -647,  -647,
-  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
-  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -242,
-  -243,  -244,  -245,  -647,  -355,  -445,  -425,  -647,  -631,  -632,
-   -68,  -646,  -647,  -313,  -354,  -429,  -438,  -440,   -74,  -435,
-   -75,  -635,   -76,  -248,  -263,  -646,  -646,  -267,  -647,  -273,
-  -647,  -646,  -612,  -647,  -647,   -77,   -78,  -633,   -17,   -18,
-  -647,   -21,   -22,   -81,  -646,  -635,  -647,   -84,   -87,  -646,
-   -99,  -100,  -647,  -647,  -107,  -306,  -309,  -635,  -647,  -339,
-  -340,  -343,  -436,  -647,   -89,  -647,   -95,  -301,  -518,  -647,
-  -221,  -222,  -647,  -234,  -647,  -646,  -297,  -635,  -646,  -646,
-  -315,   -57,  -647,  -647,  -647,  -646,  -646,  -633,  -647,  -634,
-  -535,  -536,  -647,  -647,  -291,  -647,  -372,  -373,  -647,  -327,
-  -647,  -122,  -123,  -162,  -163,  -164,  -180,  -185,  -192,  -195,
-  -334,  -647,  -535,  -536,  -607,  -608,  -567,  -470,  -647,  -493,
-  -647,  -495,  -647,  -497,  -647,  -647,  -477,  -647,  -647,  -483,
-  -647,  -647,  -489,  -647,  -647,  -491,  -647,  -510,  -512,  -513,
-  -514,  -515,    -6,  -645,   -30,   -31,   -32,   -33,   -34,   -10,
-   -11,  -647,   -26,   -27,   -28,  -130,  -647,   -37,   -39,  -278,
-  -647,  -647,  -277,   -38,  -647,   -41,  -647,  -291,   -49,   -50,
-  -203,  -253,  -273,   -52,   -53,   -42,  -204,  -253,  -635,  -258,
-  -259,  -646,  -646,  -621,  -622,  -268,  -433,  -623,  -624,  -622,
-  -621,  -268,  -432,  -434,  -623,  -624,   -48,  -211,   -54,  -635,
-  -312,  -647,  -647,  -647,  -646,  -301,  -647,  -647,  -647,  -212,
-  -213,  -214,  -215,  -216,  -217,  -218,  -219,  -223,  -224,  -225,
-  -226,  -228,  -229,  -230,  -231,  -232,  -235,  -236,  -237,  -238,
-  -635,  -246,  -647,  -446,  -268,  -621,  -622,   -65,   -69,  -635,
-  -269,  -442,  -445,  -635,  -308,  -264,  -647,  -272,  -265,  -647,
-  -270,  -647,  -274,  -647,  -615,  -617,   -16,  -634,   -20,  -647,
-  -635,   -80,  -299,   -96,   -85,  -647,  -635,  -646,  -647,  -647,
-  -106,  -647,  -518,  -647,   -92,   -97,  -647,  -647,  -647,  -647,
-  -247,  -239,  -647,  -457,  -647,  -635,  -296,  -249,  -639,  -639,
-  -647,  -647,  -610,  -639,  -647,  -646,  -363,  -364,  -646,  -647,
-  -647,  -647,  -647,  -647,  -358,  -452,  -646,  -647,  -647,  -301,
-   -58,  -117,  -118,  -647,  -120,  -647,  -291,  -646,  -647,  -332,
-  -545,  -336,  -628,  -629,  -647,  -418,  -567,  -421,  -606,  -606,
-  -550,  -552,  -552,  -552,  -566,  -568,  -569,  -570,  -571,  -572,
-  -573,  -574,  -575,  -647,  -577,  -579,  -581,  -586,  -588,  -589,
-  -591,  -596,  -598,  -599,  -601,  -602,  -603,  -647,  -471,  -494,
-  -499,  -500,  -502,  -473,  -496,  -474,  -498,  -475,  -476,  -647,
-  -479,  -481,  -647,  -482,  -485,  -486,  -647,  -487,  -488,  -647,
-  -516,  -646,   -25,  -647,   -35,  -281,  -647,  -647,  -646,  -647,
-  -647,  -647,  -437,  -647,  -260,  -262,  -647,  -647,   -70,  -256,
-  -257,  -430,  -647,  -647,   -72,  -431,  -311,  -637,  -621,  -622,
-  -621,  -622,  -635,  -647,  -424,  -646,   -64,  -426,  -442,  -255,
-  -647,  -443,  -647,  -307,  -646,  -271,  -275,  -647,  -613,  -614,
-  -647,   -19,   -23,   -82,  -647,   -88,   -94,  -635,  -621,  -622,
-  -646,  -103,  -105,  -647,   -90,  -647,  -210,  -220,  -635,  -646,
-  -356,  -646,  -294,  -361,  -298,  -250,  -641,  -640,  -252,  -641,
-  -303,  -305,  -611,  -646,  -365,  -646,   -59,  -366,  -367,  -319,
-  -320,  -647,  -322,  -647,  -635,  -621,  -622,  -625,  -300,  -646,
-  -117,  -118,  -119,  -647,  -647,  -646,  -325,  -541,  -543,  -328,
-  -646,  -646,  -567,  -567,  -647,  -635,  -647,  -635,  -647,  -548,
-  -549,  -647,  -647,  -559,  -647,  -562,  -647,  -564,  -647,  -374,
-  -647,  -376,  -378,  -381,  -384,  -635,  -580,  -590,  -600,  -604,
-  -647,  -646,  -478,  -480,  -484,  -490,  -492,  -647,  -131,  -279,
-  -647,  -635,  -621,  -622,  -622,  -621,  -254,  -647,  -638,  -646,
-   -44,  -206,   -45,  -207,   -71,   -46,  -209,   -47,  -208,   -73,
-  -647,  -647,  -647,  -647,  -437,  -647,  -406,  -407,  -635,  -409,
-  -646,  -428,  -427,  -647,  -439,  -646,  -441,  -266,  -276,  -616,
-   -86,  -101,   -98,  -310,   -13,   -15,  -357,  -359,  -646,  -464,
-  -458,  -646,  -459,  -460,  -639,  -647,  -360,  -368,  -647,  -370,
-  -646,  -647,   -60,  -321,  -448,  -647,  -647,  -437,  -647,  -117,
-  -118,  -121,  -635,  -646,  -647,  -647,  -647,  -647,  -635,  -647,
-  -337,  -609,  -419,  -646,  -646,  -411,  -635,  -606,  -587,  -605,
-  -551,  -552,  -552,  -578,  -552,  -552,  -597,  -552,  -575,  -592,
-  -635,  -647,  -647,  -383,  -576,  -501,  -504,  -505,  -506,  -507,
-  -647,   -12,  -280,  -437,   -43,  -205,  -261,  -647,  -240,  -606,
-  -606,  -388,  -646,  -646,  -646,  -405,  -647,  -635,  -575,  -583,
-  -584,  -594,  -447,   -66,  -646,  -646,  -463,  -647,  -647,  -462,
-  -251,  -317,  -647,  -371,  -318,  -449,  -647,  -646,  -323,  -437,
-  -647,  -647,  -329,  -333,  -335,  -544,  -546,  -545,  -647,  -647,
-  -647,  -420,  -547,  -647,  -555,  -647,  -557,  -647,  -560,  -647,
-  -563,  -565,  -375,  -377,  -379,  -382,  -503,  -647,  -386,  -387,
-  -396,  -390,  -398,  -647,  -401,  -647,  -403,  -408,  -647,  -647,
-  -582,  -647,  -444,  -646,  -646,  -108,  -109,  -647,  -647,  -116,
-  -461,  -646,  -450,  -647,  -646,  -326,  -542,  -646,  -646,  -422,
-  -423,  -635,  -413,  -415,  -416,  -552,  -552,  -552,  -552,  -647,
-  -647,  -606,  -585,  -389,  -646,  -646,  -646,  -646,  -595,  -646,
-  -410,  -593,  -647,  -301,   -14,  -457,  -646,  -647,  -647,  -115,
-  -646,  -451,  -453,  -454,  -455,  -647,  -647,  -412,  -647,  -647,
-  -553,  -556,  -558,  -561,  -380,  -385,  -647,  -393,  -647,  -395,
-  -647,  -399,  -647,  -402,  -404,  -300,  -625,  -456,  -635,  -621,
-  -622,  -625,  -114,  -369,  -330,  -338,  -414,  -552,  -646,  -646,
-  -646,  -646,  -437,  -554,  -647,  -391,  -394,  -397,  -400,  -646,
-  -392 ]
-
-racc_goto_table = [
-     6,   573,     4,   232,   294,   294,   294,   228,   144,   144,
-   380,   448,   285,   289,   131,   278,   296,   296,   296,   554,
-   698,   350,   295,   295,   295,   455,   461,   855,   235,   276,
-   344,   331,   331,   139,   220,   419,   316,   719,   352,   353,
-   408,   761,   357,   508,   147,   147,   597,   565,   568,   439,
-   128,   317,   439,     9,   338,   355,   356,   439,   313,     9,
-   518,   315,   334,   432,   433,   509,   331,   662,   893,   127,
-   896,   445,   144,   690,   504,   132,   466,   752,   769,   770,
-   131,   502,   785,   845,   861,   695,   351,   351,   695,   830,
-   351,   973,   604,   389,   923,   391,   393,   396,   399,   402,
-   405,   886,   144,   389,   414,   415,   416,   417,  1012,   544,
-   725,   728,   975,   346,   388,   732,   779,  1014,   292,   305,
-   306,  1028,   639,     1,   406,   642,     2,   280,   288,   290,
-   587,   634,   589,   636,   138,   358,   640,   651,   844,   640,
-   935,   701,   529,   219,   367,   428,   421,   736,   862,   277,
-   688,   653,   351,   351,   351,   351,   342,   560,   687,   384,
-   561,   365,   926,   756,   381,   591,   698,   345,   612,   347,
-   555,   348,    19,   349,   368,   446,   873,   588,    19,     9,
-   467,   875,  1007,   773,   775,   777,   370,   760,   418,   590,
-   764,   957,   974,   236,  1028,   412,  1076,   925,   927,   294,
-  1011,   595,   236,   236,   236,  1014,    19,   322,   322,   882,
-   973,   456,   431,   431,   386,   741,   518,   766,   511,   512,
-   835,   426,   866,   685,   472,   449,   465,   427,   438,  1054,
-   698,   438,    19,   695,   695,  1042,   438,   236,   236,   934,
-   743,   236,   362,   443,   444,   316,  1024,   871,   851,   900,
-   833,   468,   469,   294,   294,   937,   767,   387,   682,   896,
-   390,   988,   392,   294,   395,   893,   296,   398,   401,   455,
-   461,   404,   295,   905,   790,   296,   893,   791,   407,   449,
-   874,   295,   891,   779,   888,  1022,   594,   903,   nil,   nil,
-   nil,   nil,   nil,   517,   517,   892,   nil,   894,    19,   389,
-   nil,   824,   604,   236,   236,   236,   236,    19,   541,   705,
-   538,   285,   331,   nil,   316,   289,   131,   714,   692,   316,
-   523,   707,   nil,   nil,   nil,   569,   841,   548,   nil,   331,
-   nil,   nil,   559,   563,  1073,   710,   313,   nil,   558,   530,
-   nil,   313,   534,   542,   536,   710,   557,   562,   nil,   545,
-   577,   924,   527,  1043,   nil,   570,   571,  1034,   893,   nil,
-   744,   528,   331,   867,   331,   nil,   131,   962,   510,   nil,
-   nil,   526,   nil,   351,   710,   nil,   nil,   513,   612,   nil,
-   793,   nil,   nil,   793,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    19,   236,   436,   236,   236,   436,   236,   nil,   978,
-   979,   436,   236,   236,   779,   779,   940,   nil,  1008,   nil,
-   nil,   nil,   nil,   nil,   nil,    19,   nil,   698,   144,   nil,
-   913,   572,   878,   879,   659,   467,   702,   446,   nil,   663,
-   nil,   814,   nil,   nil,   876,   877,   nil,   819,   670,   nil,
-   nil,   nil,   801,   652,   675,   nil,   294,   nil,   nil,   517,
-   517,   236,   236,   669,   147,   456,   455,   461,   837,   nil,
-   nil,   236,   nil,   nil,   nil,   nil,   nil,   nil,   604,   604,
-   465,   nil,   449,   964,   966,   nil,   968,   970,   840,   971,
-    19,   683,   nil,   439,    19,   695,  1015,   670,   322,    19,
-   nil,   949,   439,   439,   nil,   716,   nil,   nil,   439,   439,
-   694,  1055,   669,  1025,   nil,   322,  1026,   nil,   nil,   294,
-   nil,   810,   812,   nil,   nil,    19,   nil,   815,   817,  1067,
-   nil,   456,   779,   779,   236,    19,    19,   nil,   nil,   331,
-   nil,   456,   nil,   nil,   nil,   449,   465,   331,   585,   872,
-   585,   nil,   nil,   nil,   612,   612,   465,   950,   294,   545,
-   nil,   710,   nil,   668,   612,   nil,   612,   545,   959,   674,
-   456,   947,   852,   nil,   887,   733,   749,   nil,   735,   nil,
-   nil,   718,   nil,   837,   449,   465,   nil,   nil,   737,  1078,
-   nil,   nil,   nil,   nil,   nil,   758,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1050,  1051,  1052,
-  1053,   nil,   686,   nil,   nil,   nil,   nil,   759,   nil,   nil,
-   928,   nil,   nil,   765,   nil,   811,   813,   nil,   nil,   nil,
-   nil,   816,   818,   nil,   920,   nil,   nil,   nil,   nil,   nil,
-   294,   929,   994,   439,   nil,   nil,   nil,  1001,   nil,   nil,
-   nil,   nil,   456,   832,   236,   nil,   nil,  1044,   809,     6,
-   144,   797,   914,   nil,   nil,   nil,   449,   465,   nil,  1083,
-   nil,   nil,   438,   663,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   438,   438,   nil,   nil,   798,   nil,   438,   438,   nil,
-   nil,  1045,  1046,   826,   nil,   nil,   147,  1082,   663,   nil,
-   831,   nil,   517,   670,   nil,   nil,   675,    19,   331,   880,
-   nil,   nil,     9,   nil,   nil,   322,   nil,   236,   669,   331,
-   854,   431,   nil,   322,   nil,   nil,   nil,   849,   545,   853,
-   nil,   nil,   236,   nil,   nil,   663,   nil,   294,   nil,   842,
-   nil,   859,   nil,   859,   nil,    19,   nil,   456,    19,   nil,
-   nil,   nil,   nil,   nil,   nil,   612,   236,   nil,   885,   868,
-   465,   nil,   nil,   449,   nil,   nil,   915,   nil,   236,   nil,
-   nil,   144,   928,   nil,   236,   928,   nil,   nil,   nil,   811,
-   813,   818,   816,  1021,   nil,   nil,   920,   nil,   nil,   920,
-   929,   920,   663,   929,   nil,   nil,   929,   nil,   929,   nil,
-   nil,   910,   nil,   nil,   nil,   982,   984,   986,   nil,   nil,
-   722,   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   885,
-   nil,   nil,   438,   nil,   nil,   nil,   739,   740,   nil,   742,
-  1068,    19,   nil,   nil,   nil,   nil,   nil,   436,   236,   942,
-   932,   nil,   nil,   826,   710,   nil,   436,   436,   928,   nil,
-   nil,    29,   436,   436,   nil,   951,   nil,    29,   936,   939,
-   nil,   nil,   920,   663,   920,   nil,   920,   nil,   920,   929,
-   943,   929,    29,   929,   nil,   929,   915,   nil,   nil,   nil,
-   nil,    29,    29,    29,   322,    29,   nil,   351,   nil,   nil,
-   920,   nil,   nil,   958,   952,   322,   nil,   929,   956,   nil,
-   nil,   nil,   nil,   351,   nil,   nil,   nil,  1057,  1059,  1061,
-  1063,    29,  1064,   nil,   nil,   nil,    29,    29,   885,   nil,
-    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    19,
-   981,   981,   981,   331,   nil,   236,   nil,   nil,   nil,   nil,
-    19,    19,   331,   nil,   992,   993,   895,   470,   897,   nil,
-   nil,   nil,   nil,   nil,   nil,   889,   nil,  1004,   889,   nil,
-   nil,  1085,  1086,  1087,  1088,   nil,   nil,   nil,   nil,   nil,
-  1006,    19,  1090,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,    29,    29,    29,    29,    29,   436,   nil,   nil,
-   nil,   nil,   nil,   331,   nil,  1037,   nil,   863,   nil,   nil,
-   922,   849,  1047,   nil,  1035,   514,   nil,   nil,   nil,   nil,
-    19,  1040,   859,   nil,   nil,   921,   nil,   nil,   294,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    19,   531,
-   456,   nil,   981,   981,   981,   981,   nil,   981,   236,   465,
-    19,   nil,   nil,   nil,   449,   465,   nil,   nil,   859,   nil,
-   nil,   nil,   nil,    19,   236,   nil,   nil,   nil,   nil,   663,
-   nil,   556,   nil,    19,    19,   nil,   nil,   nil,   nil,   nil,
-    29,    29,    29,    29,    29,    29,    29,   nil,   nil,   nil,
-    29,    29,    29,   nil,   nil,   nil,   981,   981,   981,   981,
-   nil,   nil,   nil,   nil,    29,   429,   442,   981,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   990,
-   nil,   941,   nil,   nil,    19,    19,   nil,   944,   997,   nil,
-   nil,   nil,   nil,   nil,   948,   nil,   nil,    19,   nil,   nil,
-    29,    29,   953,   954,   nil,  1016,   nil,  1017,   nil,  1018,
-    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1027,   nil,  1029,   nil,    29,
-   nil,   nil,   nil,    29,   889,   nil,   nil,   921,    29,  1031,
-   921,   520,   921,   522,    19,   nil,   524,   525,   nil,   nil,
-   nil,    19,   nil,   676,   nil,   nil,   nil,    19,    19,   nil,
-   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,    29,    29,  1005,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   nil,
-   nil,  1077,   564,   689,   nil,   nil,   nil,   693,  1079,   nil,
-  1080,    32,  1081,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   921,   703,   921,   nil,   921,   nil,   921,
-   706,   nil,    32,   nil,   nil,   nil,  1089,   nil,   nil,   nil,
-   nil,    32,    32,    32,   nil,    32,   nil,   nil,   nil,   724,
-   nil,   921,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    32,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,
-    32,  1074,  1075,   655,   nil,   nil,   nil,   nil,   nil,   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,   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,    32,    32,    32,    32,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   696,
-   nil,   nil,   564,   nil,   699,   nil,   nil,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    29,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
-   nil,   nil,   843,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,
-    32,    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   881,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   786,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   904,
-    29,   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,
-    32,    32,   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,
-    32,    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,   799,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   696,   564,    32,
-   nil,   nil,   nil,    32,   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,
-   838,   nil,   nil,   839,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,    32,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   955,   nil,   850,   nil,   nil,   nil,    29,   696,
-   961,   nil,   564,   nil,    29,   nil,   nil,   nil,   nil,    29,
-    29,   nil,   nil,   nil,   972,   nil,   864,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   899,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   912,   nil,   nil,   nil,   nil,   nil,    29,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   243,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   293,   293,
-   293,   nil,   nil,    32,   nil,   nil,   nil,    29,   nil,    29,
-   nil,   340,   341,   nil,   343,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   945,   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,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    32,   nil,    29,    29,   nil,   nil,   nil,   nil,   564,
-   nil,   nil,   nil,   nil,    32,   nil,    29,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,  1002,
-   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1041,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,    29,    32,    32,   293,   441,
-   nil,   nil,   447,   293,   nil,    32,    32,   447,   nil,   nil,
-   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   243,   nil,   nil,   479,   480,   481,   482,   483,   484,   485,
-   486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
-   496,   497,   498,   499,   500,   nil,   nil,    16,   nil,   501,
-   nil,   nil,   nil,    16,   nil,   nil,   nil,   293,   293,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   293,   nil,   nil,
-   nil,   nil,   nil,   nil,   293,   nil,   293,   nil,   nil,   293,
-   293,    16,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   366,   550,   nil,
-   551,   nil,   nil,   nil,   293,   293,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,    18,   nil,   nil,   nil,    32,   nil,    18,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,   nil,   293,   nil,   nil,   nil,
-   nil,   nil,    32,    32,   nil,   nil,   nil,    18,   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,    18,   nil,   nil,   nil,   nil,   nil,   nil,
-   293,   nil,   447,   447,   447,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   434,   nil,
-   nil,   434,   nil,    32,    32,   nil,   434,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-    16,   nil,   293,   nil,   nil,   293,   nil,   293,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
-   nil,   nil,   nil,   293,   nil,   nil,   nil,   nil,    18,   nil,
-   nil,   nil,   447,   717,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,
-   nil,   nil,   293,   nil,   nil,    16,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,   nil,    16,   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,
-    16,   nil,   293,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    16,    16,    18,   nil,    18,   nil,   nil,    18,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,    20,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,   293,   447,   293,   nil,   nil,   806,   nil,   nil,
-   293,   293,   447,   447,   nil,   nil,   nil,   nil,   447,   447,
-   nil,   nil,    20,   324,   324,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   293,   nil,   nil,   293,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   364,   nil,
-   nil,    18,   nil,   nil,   nil,    18,   nil,   293,   nil,   nil,
-    18,   nil,   293,   nil,   nil,   293,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   293,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,
-   nil,   293,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,
-   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    20,   293,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,   nil,   nil,   nil,   293,   nil,   nil,   nil,
-    41,   nil,   nil,   447,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   447,   447,   447,   447,
-   nil,   918,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    16,   nil,   nil,    16,    41,   320,   320,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   437,
-    41,   293,   437,   nil,   nil,   nil,   nil,   437,   nil,   nil,
-   360,   nil,   nil,   382,   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,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   293,   447,   nil,   nil,    16,   nil,   nil,   nil,
-   nil,   nil,   434,   nil,   nil,   nil,    41,   nil,    18,   nil,
-   nil,   434,   434,   nil,   nil,    41,   nil,   434,   434,   nil,
-   nil,   nil,   293,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-    20,   nil,   nil,   nil,   324,    20,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,    18,
-   nil,   324,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,   nil,   293,
-   nil,   nil,   nil,   nil,   586,   nil,   586,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,   nil,   nil,
-   nil,   nil,   293,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,    16,   nil,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,
-   nil,   nil,   434,    18,    18,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,    41,    16,   nil,   nil,   320,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   320,   nil,   nil,   nil,   nil,    16,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,    16,    16,
-    18,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,    18,    20,   nil,   nil,   382,   nil,   382,   nil,
-   nil,   324,   nil,   nil,   nil,    42,   nil,   nil,   nil,   324,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-    16,    20,   nil,  1000,    20,   nil,   nil,   nil,    18,    42,
-   321,   321,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   361,   nil,   nil,   383,    18,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-   nil,    18,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,
-   nil,   nil,    16,    16,    18,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    18,    18,   nil,    20,   nil,   nil,
-   nil,   nil,   nil,   437,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   437,   437,   nil,   nil,   nil,   nil,   437,   437,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   320,   nil,    18,    18,   nil,   nil,   nil,
-   324,   320,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,
-   nil,   324,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    18,    20,    20,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,    18,    18,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   909,    20,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   437,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   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,    42,    20,   nil,   nil,    42,   nil,   nil,
-   nil,   321,    42,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-   nil,   nil,   320,   nil,   nil,   nil,   nil,   nil,   321,    20,
-   nil,   nil,   nil,   320,   nil,   nil,   nil,   nil,    42,    20,
-    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   383,   nil,   383,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,
-   nil,   nil,   nil,   nil,   nil,   586,   nil,   nil,   nil,   nil,
-    20,    20,   nil,   nil,   999,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    20,   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,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   586,   nil,   nil,    41,   nil,
-    20,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-   nil,   nil,   nil,    20,    20,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   382,   nil,   nil,
-   nil,   nil,    41,    41,   nil,   nil,   995,   nil,    42,   nil,
-   nil,    42,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   382,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,    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,
-   nil,   nil,   nil,   nil,    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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   383,   nil,   nil,   nil,   nil,    42,    42,   nil,
-   nil,   996,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   383,   nil,   nil,   nil,   nil,    42,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-    42,    42 ]
-
-racc_goto_check = [
-     6,   113,     2,    40,    46,    46,    46,    38,    71,    71,
-    70,    36,    85,    85,   118,    38,    84,    84,    84,    12,
-   220,   102,    82,    82,    82,    50,    50,   107,    27,   171,
-    40,    78,    78,    22,    22,    10,    14,    15,    24,    24,
-    70,   121,    24,    52,    73,    73,   170,   106,   106,    25,
-     8,    63,    25,     9,    76,    42,    42,    25,    59,     9,
-    87,    60,    64,    29,    29,    36,    78,    37,   210,     5,
-   215,    33,    71,    53,    50,     7,    33,    68,   153,   153,
-   118,   172,   147,    17,   109,    88,    31,    31,    88,   160,
-    31,   145,   204,     6,   158,     6,     6,     6,     6,     6,
-     6,   162,    71,     6,    24,    24,    24,    24,   164,    65,
-    83,    83,   148,     9,   188,    83,   146,   165,    58,    58,
-    58,   216,   192,     1,   188,   192,     3,    51,    51,    51,
-    69,   193,    69,   193,    11,     5,   193,    13,    16,   193,
-    18,    20,    21,    23,    26,    30,    32,    43,    45,    49,
-    55,    74,    31,    31,    31,    31,    79,    81,    86,    98,
-   101,   115,   162,   117,   122,   123,   220,   124,   209,   125,
-   126,   127,    35,   128,   129,    75,   130,   131,    35,     9,
-    75,   132,   133,   207,   207,   207,   134,   135,     9,   136,
-   137,   138,   149,    35,   216,     7,   164,   150,   156,    46,
-   163,   166,    35,    35,    35,   165,    35,    35,    35,   167,
-   145,    85,    82,    82,   168,   113,    87,   169,   174,   175,
-   177,    14,   178,   180,    38,     6,    71,    27,    27,   148,
-   220,    27,    35,    88,    88,   181,    27,    35,    35,   160,
-   182,    35,    35,    31,    31,    14,   158,    68,   183,   147,
-    53,    31,    31,    46,    46,   184,   170,   187,    36,   215,
-   189,   162,   190,    46,   191,   210,    84,   194,   195,    50,
-    50,   196,    82,   197,   198,    84,   210,   199,   202,     6,
-   203,    82,   208,   146,   212,   213,   219,   146,   nil,   nil,
-   nil,   nil,   nil,     6,     6,   159,   nil,   159,    35,     6,
-   nil,    37,   204,    35,    35,    35,    35,    35,    40,    65,
-    38,    85,    78,   nil,    14,    85,   118,    65,   172,    14,
-   188,    36,   nil,   nil,   nil,    24,    37,    38,   nil,    78,
-   nil,   nil,    84,    84,   107,    50,    59,   nil,    82,    60,
-   nil,    59,    64,    76,    60,    50,     6,     6,   nil,    63,
-    38,   159,     8,   109,   nil,    14,    14,    17,   210,   nil,
-    36,     9,    78,    37,    78,   nil,   118,   153,    58,   nil,
-   nil,     5,   nil,    31,    50,   nil,   nil,    58,   209,   nil,
-   193,   nil,   nil,   193,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    35,    35,    35,    35,    35,    35,    35,   nil,   153,
-   153,    35,    35,    35,   146,   146,    83,   nil,   121,   nil,
-   nil,   nil,   nil,   nil,   nil,    35,   nil,   220,    71,   nil,
-    37,     5,   170,   170,    38,    75,    10,    75,   nil,    40,
-   nil,    52,   nil,   nil,    12,    12,   nil,    52,    85,   nil,
-   nil,   nil,    36,    22,    85,   nil,    46,   nil,   nil,     6,
-     6,    35,    35,     6,    73,    85,    50,    50,    87,   nil,
-   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   204,   204,
-    71,   nil,     6,   207,   207,   nil,   207,   207,    65,   207,
-    35,    40,   nil,    25,    35,    88,   159,    85,    35,    35,
-   nil,    37,    25,    25,   nil,    75,   nil,   nil,    25,    25,
-    84,   153,     6,   159,   nil,    35,   159,   nil,   nil,    46,
-   nil,    33,    33,   nil,   nil,    35,   nil,    33,    33,    15,
-   nil,    85,   146,   146,    35,    35,    35,   nil,   nil,    78,
-   nil,    85,   nil,   nil,   nil,     6,    71,    78,    35,    36,
-    35,   nil,   nil,   nil,   209,   209,    71,    12,    46,    63,
-   nil,    50,   nil,    51,   209,   nil,   209,    63,    12,    51,
-    85,   106,    29,   nil,   152,    14,    42,   nil,    14,   nil,
-   nil,    31,   nil,    87,     6,    71,   nil,   nil,   118,   159,
-   nil,   nil,   nil,   nil,   nil,     6,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   207,   207,   207,
-   207,   nil,    51,   nil,   nil,   nil,   nil,    31,   nil,   nil,
-   209,   nil,   nil,    31,   nil,    75,    75,   nil,   nil,   nil,
-   nil,    75,    75,   nil,   152,   nil,   nil,   nil,   nil,   nil,
-    46,   211,   106,    25,   nil,   nil,   nil,   106,   nil,   nil,
-   nil,   nil,    85,   102,    35,   nil,   nil,   113,    84,     6,
-    71,     2,    33,   nil,   nil,   nil,     6,    71,   nil,   207,
-   nil,   nil,    27,    40,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    27,    27,   nil,   nil,    22,   nil,    27,    27,   nil,
-   nil,    12,    12,     6,   nil,   nil,    73,    37,    40,   nil,
-   171,   nil,     6,    85,   nil,   nil,    85,    35,    78,    70,
-   nil,   nil,     9,   nil,   nil,    35,   nil,    35,     6,    78,
-    84,    82,   nil,    35,   nil,   nil,   nil,     6,    63,     6,
-   nil,   nil,    35,   nil,   nil,    40,   nil,    46,   nil,    63,
-   nil,     6,   nil,     6,   nil,    35,   nil,    85,    35,   nil,
-   nil,   nil,   nil,   nil,   nil,   209,    35,   nil,    40,    14,
-    71,   nil,   nil,     6,   nil,   nil,    75,   nil,    35,   nil,
-   nil,    71,   209,   nil,    35,   209,   nil,   nil,   nil,    75,
-    75,    75,    75,   152,   nil,   nil,   152,   nil,   nil,   152,
-   211,   152,    40,   211,   nil,   nil,   211,   nil,   211,   nil,
-   nil,    14,   nil,   nil,   nil,   155,   155,   155,   nil,   nil,
-   100,   nil,   nil,   nil,   nil,   nil,   nil,     6,   nil,    40,
-   nil,   nil,    27,   nil,   nil,   nil,   100,   100,   nil,   100,
-    36,    35,   nil,   nil,   nil,   nil,   nil,    35,    35,    24,
-    14,   nil,   nil,     6,    50,   nil,    35,    35,   209,   nil,
-   nil,    54,    35,    35,   nil,    24,   nil,    54,    14,     6,
-   nil,   nil,   152,    40,   152,   nil,   152,   nil,   152,   211,
-    14,   211,    54,   211,   nil,   211,    75,   nil,   nil,   nil,
-   nil,    54,    54,    54,    35,    54,   nil,    31,   nil,   nil,
-   152,   nil,   nil,    14,   118,    35,   nil,   211,   118,   nil,
-   nil,   nil,   nil,    31,   nil,   nil,   nil,   155,   155,   155,
-   155,    54,   155,   nil,   nil,   nil,    54,    54,    40,   nil,
-    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-     6,     6,     6,    78,   nil,    35,   nil,   nil,   nil,   nil,
-    35,    35,    78,   nil,    14,    14,   157,    61,   157,   nil,
-   nil,   nil,   nil,   nil,   nil,   154,   nil,    14,   154,   nil,
-   nil,   155,   155,   155,   155,   nil,   nil,   nil,   nil,   nil,
-   118,    35,   155,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,    54,    54,    54,    54,    54,    35,   nil,   nil,
-   nil,   nil,   nil,    78,   nil,    38,   nil,   100,   nil,   nil,
-   157,     6,    40,   nil,    14,    61,   nil,   nil,   nil,   nil,
-    35,    14,     6,   nil,   nil,   154,   nil,   nil,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,    61,
-    85,   nil,     6,     6,     6,     6,   nil,     6,    35,    71,
-    35,   nil,   nil,   nil,     6,    71,   nil,   nil,     6,   nil,
-   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,    40,
-   nil,    61,   nil,    35,    35,   nil,   nil,   nil,   nil,   nil,
-    54,    54,    54,    54,    54,    54,    54,   nil,   nil,   nil,
-    54,    54,    54,   nil,   nil,   nil,     6,     6,     6,     6,
-   nil,   nil,   nil,   nil,    54,    80,    80,     6,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-   nil,   100,   nil,   nil,    35,    35,   nil,   100,    35,   nil,
-   nil,   nil,   nil,   nil,   100,   nil,   nil,    35,   nil,   nil,
-    54,    54,   100,   100,   nil,   157,   nil,   157,   nil,   157,
-    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   157,   nil,   157,   nil,    54,
-   nil,   nil,   nil,    54,   154,   nil,   nil,   154,    54,    35,
-   154,    80,   154,    80,    35,   nil,    80,    80,   nil,   nil,
-   nil,    35,   nil,    61,   nil,   nil,   nil,    35,    35,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,    54,    54,   100,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,
-   nil,   157,    80,    61,   nil,   nil,   nil,    61,   157,   nil,
-   157,    57,   157,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   154,    61,   154,   nil,   154,   nil,   154,
-    61,   nil,    57,   nil,   nil,   nil,   157,   nil,   nil,   nil,
-   nil,    57,    57,    57,   nil,    57,   nil,   nil,   nil,    61,
-   nil,   154,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    57,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,
-    57,   100,   100,    80,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,    57,    57,    57,    57,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,    80,
-   nil,   nil,    80,   nil,    80,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
-   nil,   nil,    61,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,    57,    57,    57,    57,    57,    57,   nil,   nil,   nil,
-    57,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,    61,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,
-    54,   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,
-    57,    57,   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,
-    57,    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,    80,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,    80,    57,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    80,   nil,   nil,    80,    57,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,    57,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,    61,   nil,    80,   nil,   nil,   nil,    54,    80,
-    61,   nil,    80,   nil,    54,   nil,   nil,   nil,   nil,    54,
-    54,   nil,   nil,   nil,    61,   nil,    80,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    80,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,    41,    41,
-    41,   nil,   nil,    57,   nil,   nil,   nil,    54,   nil,    54,
-   nil,    41,    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,    80,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    57,   nil,    54,    54,   nil,   nil,   nil,   nil,    80,
-   nil,   nil,   nil,   nil,    57,   nil,    54,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,    80,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,    54,    57,    57,    41,    41,
-   nil,   nil,    41,    41,   nil,    57,    57,    41,   nil,   nil,
-   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,   nil,   nil,    28,   nil,    41,
-   nil,   nil,   nil,    28,   nil,   nil,   nil,    41,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,    41,   nil,    41,   nil,   nil,    41,
-    41,    28,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
-   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    41,   nil,
-    41,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    28,    34,   nil,   nil,   nil,    57,   nil,    34,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,    57,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,    57,    57,   nil,   nil,   nil,    34,   nil,   nil,
-   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,    41,    41,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,    28,   nil,
-   nil,    28,   nil,    57,    57,   nil,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-    28,   nil,    41,   nil,   nil,    41,   nil,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,    34,   nil,
-   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,    28,   nil,   nil,   nil,    28,
-   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    28,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    28,    28,    34,   nil,    34,   nil,   nil,    34,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,    41,    41,    41,   nil,   nil,    41,   nil,   nil,
-    41,    41,    41,    41,   nil,   nil,   nil,   nil,    41,    41,
-   nil,   nil,    39,    39,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,    34,   nil,   nil,   nil,    34,   nil,    41,   nil,   nil,
-    34,   nil,    41,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    28,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-    66,   nil,   nil,    41,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,    41,    41,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    28,   nil,   nil,    28,    66,    66,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,    39,
-    66,    41,    39,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-    66,   nil,   nil,    66,   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,    41,    41,   nil,   nil,    28,   nil,   nil,   nil,
-   nil,   nil,    28,   nil,   nil,   nil,    66,   nil,    34,   nil,
-   nil,    28,    28,   nil,   nil,    66,   nil,    28,    28,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-    39,   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,    34,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,    39,   nil,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,    28,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,
-   nil,   nil,    28,    34,    34,   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,    66,   nil,
-   nil,   nil,    66,    28,   nil,   nil,    66,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,    28,   nil,
-   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,    28,    28,
-    34,   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,    34,    39,   nil,   nil,    66,   nil,    66,   nil,
-   nil,    39,   nil,   nil,   nil,    67,   nil,   nil,   nil,    39,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,    28,
-    28,    39,   nil,    28,    39,   nil,   nil,   nil,    34,    67,
-    67,    67,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,    67,    34,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,
-   nil,    34,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,
-   nil,   nil,    28,    28,    34,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    34,    34,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,    39,    39,   nil,   nil,   nil,   nil,    39,    39,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,    34,    34,   nil,   nil,   nil,
-    39,    66,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    34,    39,    39,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,    34,    34,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,    39,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   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,    67,    39,   nil,   nil,    67,   nil,   nil,
-   nil,    67,    67,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    67,    39,
-   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,    67,    39,
-    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,    67,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    66,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
-    39,    39,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   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,    66,   nil,
-    39,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,    39,    39,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    66,    66,   nil,   nil,    66,   nil,    67,   nil,
-   nil,    67,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,    67,    67,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-    67,    67 ]
-
-racc_goto_pointer = [
-   nil,   123,     0,   126,   nil,    64,    -2,    67,    45,    51,
-  -103,   124,  -326,  -283,     0,  -516,  -581,  -636,  -704,   nil,
-  -386,  -170,    22,   131,   -29,  -174,    72,     5,  1925,  -159,
-   -77,    19,     7,  -155,  2061,   170,  -216,  -381,   -12,  2296,
-   -19,  1656,   -14,  -422,   nil,  -588,   -28,   nil,   nil,   122,
-  -203,    98,  -237,  -438,   839,  -357,   nil,  1219,    86,    22,
-    25,   704,   nil,    14,    24,  -226,  2458,  2833,  -506,  -238,
-   -65,    -3,   nil,    33,  -274,   -51,    10,   nil,    -6,   109,
-   863,  -191,   -10,  -448,   -16,   -17,  -346,  -236,  -431,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    84,   nil,
-   246,  -189,   -44,   nil,   nil,   nil,  -305,  -706,   nil,  -651,
-   nil,   nil,   nil,  -357,   nil,    89,   nil,  -424,     9,   nil,
-   nil,  -549,    89,  -216,   106,   107,  -176,   108,   109,   101,
-  -580,  -192,  -578,  -770,   112,  -402,  -191,  -401,  -689,   nil,
-   nil,   nil,   nil,   nil,   nil,  -810,  -497,  -531,  -790,  -709,
-  -631,   nil,  -204,  -520,   177,  -127,  -630,   162,  -734,  -477,
-  -596,   nil,  -666,  -760,  -852,  -843,  -185,  -557,   125,  -378,
-  -340,     4,  -194,   nil,   -68,   -68,   nil,  -471,  -521,   nil,
-  -280,  -769,  -335,  -473,  -596,   nil,   nil,   165,    19,   163,
-   164,   165,  -273,  -259,   167,   167,   169,  -517,  -357,  -355,
-   nil,   nil,   173,  -477,  -294,   nil,   nil,  -418,  -490,  -218,
-  -704,  -197,  -484,  -692,   nil,  -704,  -862,   nil,   nil,   -99,
-  -499 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   308,     7,   359,   311,
-   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,   307,
-   309,   nil,   nil,   nil,   nil,    14,    15,    21,   241,   nil,
-   nil,    17,   nil,   435,   242,   339,   nil,   nil,   754,   240,
-   471,    24,   nil,   nil,   354,   nil,    25,    26,    27,   nil,
-   713,   nil,   nil,   nil,   328,   nil,    28,   325,   450,    35,
-   nil,   nil,    37,    40,    39,   nil,   237,   238,   584,   nil,
-   146,   458,   145,    91,   nil,   440,   107,    47,    50,   273,
-   299,   nil,   451,   nil,   452,   463,   671,   515,   297,   282,
-    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
-   nil,   nil,   283,    65,    66,    67,   nil,   nil,    68,   857,
-    69,    70,    71,   nil,    72,   nil,    73,   nil,   566,    74,
-    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   287,
-   275,   721,   848,   575,   858,   781,   611,   nil,   782,   783,
-  1023,   919,   599,   nil,   600,   nil,   nil,   601,   nil,   603,
-   nil,   827,   nil,   nil,   nil,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   462,   nil,   nil,   691,   nil,   nil,   503,
-   nil,   nil,   nil,   nil,   nil,    90,    92,    94,   nil,   nil,
-   nil,   nil,   nil,   629,   nil,   nil,   nil,   nil,   nil,   nil,
-   103,   104,   nil,   nil,   890,   763,   598,   nil,   602,   898,
-   614,   616,   617,   930,   620,   621,   931,   624,   627,   nil,
-   302 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 149, :_reduce_1,
-  2, 147, :_reduce_2,
-  2, 148, :_reduce_3,
-  1, 150, :_reduce_none,
-  1, 150, :_reduce_none,
-  3, 150, :_reduce_6,
-  2, 150, :_reduce_none,
-  1, 153, :_reduce_none,
-  0, 157, :_reduce_9,
-  3, 153, :_reduce_10,
-  0, 159, :_reduce_11,
-  4, 156, :_reduce_12,
-  0, 164, :_reduce_13,
-  6, 158, :_reduce_14,
-  3, 158, :_reduce_15,
-  2, 160, :_reduce_16,
-  1, 165, :_reduce_none,
-  1, 165, :_reduce_none,
-  3, 165, :_reduce_19,
-  2, 165, :_reduce_20,
-  1, 166, :_reduce_none,
-  0, 167, :_reduce_22,
-  3, 166, :_reduce_23,
-  0, 178, :_reduce_24,
-  4, 155, :_reduce_25,
-  3, 155, :_reduce_26,
-  3, 155, :_reduce_27,
-  3, 155, :_reduce_28,
-  2, 155, :_reduce_29,
-  3, 155, :_reduce_30,
-  3, 155, :_reduce_31,
-  3, 155, :_reduce_32,
-  3, 155, :_reduce_33,
-  3, 155, :_reduce_34,
-  4, 155, :_reduce_35,
-  1, 155, :_reduce_none,
-  3, 155, :_reduce_37,
-  3, 155, :_reduce_38,
-  3, 155, :_reduce_39,
-  1, 155, :_reduce_none,
-  3, 171, :_reduce_41,
-  3, 171, :_reduce_42,
-  6, 171, :_reduce_43,
-  5, 171, :_reduce_44,
-  5, 171, :_reduce_45,
-  5, 171, :_reduce_46,
-  5, 171, :_reduce_47,
-  3, 171, :_reduce_48,
-  1, 179, :_reduce_49,
-  1, 179, :_reduce_none,
-  1, 177, :_reduce_none,
-  3, 177, :_reduce_52,
-  3, 177, :_reduce_53,
-  3, 177, :_reduce_54,
-  2, 177, :_reduce_55,
-  1, 177, :_reduce_none,
-  1, 170, :_reduce_57,
-  0, 190, :_reduce_58,
-  0, 191, :_reduce_59,
-  4, 188, :_reduce_60,
-  1, 173, :_reduce_none,
-  1, 173, :_reduce_none,
-  1, 193, :_reduce_none,
-  4, 193, :_reduce_64,
-  0, 201, :_reduce_65,
-  4, 198, :_reduce_66,
-  1, 200, :_reduce_67,
-  2, 192, :_reduce_68,
-  3, 192, :_reduce_69,
-  4, 192, :_reduce_70,
-  5, 192, :_reduce_71,
-  4, 192, :_reduce_72,
-  5, 192, :_reduce_73,
-  2, 192, :_reduce_74,
-  2, 192, :_reduce_75,
-  2, 192, :_reduce_76,
-  2, 192, :_reduce_77,
-  2, 192, :_reduce_78,
-  1, 172, :_reduce_none,
-  3, 172, :_reduce_80,
-  1, 206, :_reduce_none,
-  3, 206, :_reduce_82,
-  1, 205, :_reduce_83,
-  2, 205, :_reduce_84,
-  3, 205, :_reduce_85,
-  5, 205, :_reduce_86,
-  2, 205, :_reduce_87,
-  4, 205, :_reduce_88,
-  2, 205, :_reduce_89,
-  4, 205, :_reduce_90,
-  1, 205, :_reduce_91,
-  3, 205, :_reduce_92,
-  1, 209, :_reduce_none,
-  3, 209, :_reduce_94,
-  2, 208, :_reduce_95,
-  3, 208, :_reduce_96,
-  1, 211, :_reduce_97,
-  3, 211, :_reduce_98,
-  1, 210, :_reduce_99,
-  1, 210, :_reduce_100,
-  4, 210, :_reduce_101,
-  3, 210, :_reduce_102,
-  3, 210, :_reduce_103,
-  3, 210, :_reduce_104,
-  3, 210, :_reduce_105,
-  2, 210, :_reduce_106,
-  1, 210, :_reduce_107,
-  1, 174, :_reduce_108,
-  1, 174, :_reduce_109,
-  4, 174, :_reduce_110,
-  3, 174, :_reduce_111,
-  3, 174, :_reduce_112,
-  3, 174, :_reduce_113,
-  3, 174, :_reduce_114,
-  2, 174, :_reduce_115,
-  1, 174, :_reduce_116,
-  1, 214, :_reduce_117,
-  1, 214, :_reduce_none,
-  2, 215, :_reduce_119,
-  1, 215, :_reduce_120,
-  3, 215, :_reduce_121,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 216, :_reduce_125,
-  1, 216, :_reduce_none,
-  1, 168, :_reduce_127,
-  1, 168, :_reduce_none,
-  1, 169, :_reduce_129,
-  0, 220, :_reduce_130,
-  4, 169, :_reduce_131,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  3, 187, :_reduce_203,
-  3, 187, :_reduce_204,
-  6, 187, :_reduce_205,
-  5, 187, :_reduce_206,
-  5, 187, :_reduce_207,
-  5, 187, :_reduce_208,
-  5, 187, :_reduce_209,
-  4, 187, :_reduce_210,
-  3, 187, :_reduce_211,
-  3, 187, :_reduce_212,
-  3, 187, :_reduce_213,
-  3, 187, :_reduce_214,
-  3, 187, :_reduce_215,
-  3, 187, :_reduce_216,
-  3, 187, :_reduce_217,
-  3, 187, :_reduce_218,
-  3, 187, :_reduce_219,
-  4, 187, :_reduce_220,
-  2, 187, :_reduce_221,
-  2, 187, :_reduce_222,
-  3, 187, :_reduce_223,
-  3, 187, :_reduce_224,
-  3, 187, :_reduce_225,
-  3, 187, :_reduce_226,
-  1, 187, :_reduce_none,
-  3, 187, :_reduce_228,
-  3, 187, :_reduce_229,
-  3, 187, :_reduce_230,
-  3, 187, :_reduce_231,
-  3, 187, :_reduce_232,
-  2, 187, :_reduce_233,
-  2, 187, :_reduce_234,
-  3, 187, :_reduce_235,
-  3, 187, :_reduce_236,
-  3, 187, :_reduce_237,
-  3, 187, :_reduce_238,
-  3, 187, :_reduce_239,
-  6, 187, :_reduce_240,
-  1, 187, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  3, 223, :_reduce_246,
-  3, 223, :_reduce_247,
-  1, 226, :_reduce_248,
-  1, 227, :_reduce_none,
-  2, 227, :_reduce_250,
-  4, 227, :_reduce_251,
-  2, 227, :_reduce_252,
-  1, 221, :_reduce_none,
-  3, 221, :_reduce_254,
-  3, 231, :_reduce_255,
-  1, 232, :_reduce_none,
-  1, 232, :_reduce_none,
-  1, 182, :_reduce_none,
-  1, 182, :_reduce_none,
-  2, 182, :_reduce_260,
-  4, 182, :_reduce_261,
-  2, 182, :_reduce_262,
-  1, 204, :_reduce_263,
-  2, 204, :_reduce_264,
-  2, 204, :_reduce_265,
-  4, 204, :_reduce_266,
-  1, 204, :_reduce_267,
-  0, 235, :_reduce_268,
-  2, 197, :_reduce_269,
-  2, 234, :_reduce_270,
-  2, 233, :_reduce_271,
-  1, 233, :_reduce_none,
-  1, 228, :_reduce_273,
-  2, 228, :_reduce_274,
-  3, 228, :_reduce_275,
-  4, 228, :_reduce_276,
-  1, 176, :_reduce_277,
-  1, 176, :_reduce_278,
-  3, 175, :_reduce_279,
-  4, 175, :_reduce_280,
-  2, 175, :_reduce_281,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_292,
-  0, 270, :_reduce_293,
-  4, 224, :_reduce_294,
-  0, 271, :_reduce_295,
-  3, 224, :_reduce_296,
-  0, 272, :_reduce_297,
-  4, 224, :_reduce_298,
-  3, 224, :_reduce_299,
-  3, 224, :_reduce_300,
-  2, 224, :_reduce_301,
-  0, 273, :_reduce_302,
-  4, 224, :_reduce_303,
-  0, 274, :_reduce_304,
-  4, 224, :_reduce_305,
-  1, 224, :_reduce_306,
-  4, 224, :_reduce_307,
-  3, 224, :_reduce_308,
-  1, 224, :_reduce_309,
-  5, 224, :_reduce_310,
-  4, 224, :_reduce_311,
-  3, 224, :_reduce_312,
-  2, 224, :_reduce_313,
-  1, 224, :_reduce_none,
-  2, 224, :_reduce_315,
-  1, 224, :_reduce_316,
-  6, 224, :_reduce_317,
-  6, 224, :_reduce_318,
-  4, 224, :_reduce_319,
-  4, 224, :_reduce_320,
-  5, 224, :_reduce_321,
-  4, 224, :_reduce_322,
-  6, 224, :_reduce_323,
-  0, 275, :_reduce_324,
-  0, 276, :_reduce_325,
-  7, 224, :_reduce_326,
-  0, 277, :_reduce_327,
-  0, 278, :_reduce_328,
-  0, 279, :_reduce_329,
-  9, 224, :_reduce_330,
-  0, 280, :_reduce_331,
-  0, 281, :_reduce_332,
-  6, 224, :_reduce_333,
-  0, 282, :_reduce_334,
-  6, 224, :_reduce_335,
-  0, 283, :_reduce_336,
-  0, 284, :_reduce_337,
-  9, 224, :_reduce_338,
-  1, 224, :_reduce_339,
-  1, 224, :_reduce_340,
-  1, 224, :_reduce_341,
-  1, 224, :_reduce_342,
-  1, 181, :_reduce_343,
-  1, 245, :_reduce_none,
-  1, 251, :_reduce_none,
-  1, 254, :_reduce_none,
-  1, 256, :_reduce_none,
-  1, 257, :_reduce_none,
-  1, 258, :_reduce_none,
-  1, 260, :_reduce_none,
-  1, 262, :_reduce_351,
-  1, 265, :_reduce_352,
-  1, 266, :_reduce_353,
-  1, 285, :_reduce_none,
-  1, 286, :_reduce_none,
-  1, 287, :_reduce_none,
-  1, 288, :_reduce_none,
-  1, 289, :_reduce_none,
-  1, 162, :_reduce_none,
-  1, 290, :_reduce_none,
-  1, 246, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 252, :_reduce_none,
-  1, 252, :_reduce_none,
-  2, 252, :_reduce_none,
-  1, 189, :_reduce_none,
-  1, 189, :_reduce_none,
-  1, 253, :_reduce_none,
-  5, 253, :_reduce_369,
-  1, 255, :_reduce_none,
-  2, 255, :_reduce_371,
-  1, 261, :_reduce_none,
-  1, 261, :_reduce_373,
-  1, 291, :_reduce_none,
-  3, 291, :_reduce_375,
-  1, 294, :_reduce_376,
-  3, 294, :_reduce_377,
-  1, 293, :_reduce_378,
-  3, 293, :_reduce_379,
-  5, 293, :_reduce_380,
-  1, 293, :_reduce_381,
-  3, 293, :_reduce_382,
-  2, 295, :_reduce_383,
-  1, 295, :_reduce_384,
-  4, 296, :_reduce_385,
-  2, 296, :_reduce_386,
-  2, 296, :_reduce_387,
-  1, 296, :_reduce_388,
-  2, 301, :_reduce_389,
-  1, 301, :_reduce_none,
-  6, 302, :_reduce_391,
-  8, 302, :_reduce_392,
-  4, 302, :_reduce_393,
-  6, 302, :_reduce_394,
-  4, 302, :_reduce_395,
-  2, 302, :_reduce_396,
-  6, 302, :_reduce_397,
-  2, 302, :_reduce_398,
-  4, 302, :_reduce_399,
-  6, 302, :_reduce_400,
-  2, 302, :_reduce_401,
-  4, 302, :_reduce_402,
-  2, 302, :_reduce_403,
-  4, 302, :_reduce_404,
-  1, 302, :_reduce_405,
-  1, 306, :_reduce_406,
-  1, 306, :_reduce_407,
-  3, 307, :_reduce_408,
-  1, 307, :_reduce_409,
-  4, 307, :_reduce_410,
-  1, 308, :_reduce_none,
-  4, 308, :_reduce_412,
-  1, 309, :_reduce_413,
-  3, 309, :_reduce_414,
-  1, 310, :_reduce_415,
-  1, 310, :_reduce_none,
-  0, 314, :_reduce_417,
-  0, 315, :_reduce_418,
-  5, 250, :_reduce_419,
-  4, 312, :_reduce_420,
-  1, 312, :_reduce_421,
-  3, 313, :_reduce_422,
-  3, 313, :_reduce_423,
-  3, 317, :_reduce_424,
-  2, 194, :_reduce_425,
-  4, 194, :_reduce_426,
-  5, 194, :_reduce_427,
-  5, 194, :_reduce_428,
-  2, 249, :_reduce_429,
-  4, 249, :_reduce_430,
-  4, 249, :_reduce_431,
-  3, 249, :_reduce_432,
-  3, 249, :_reduce_433,
-  3, 249, :_reduce_434,
-  2, 249, :_reduce_435,
-  1, 249, :_reduce_436,
-  4, 249, :_reduce_437,
-  0, 320, :_reduce_438,
-  4, 248, :_reduce_439,
-  0, 321, :_reduce_440,
-  4, 248, :_reduce_441,
-  0, 322, :_reduce_442,
-  0, 323, :_reduce_443,
-  4, 199, :_reduce_444,
-  0, 325, :_reduce_445,
-  0, 326, :_reduce_446,
-  4, 318, :_reduce_447,
-  1, 324, :_reduce_448,
-  2, 324, :_reduce_449,
-  3, 324, :_reduce_450,
-  4, 324, :_reduce_451,
-  0, 328, :_reduce_452,
-  6, 259, :_reduce_453,
-  1, 327, :_reduce_none,
-  1, 327, :_reduce_none,
-  6, 161, :_reduce_456,
-  0, 161, :_reduce_457,
-  1, 329, :_reduce_458,
-  1, 329, :_reduce_none,
-  1, 329, :_reduce_none,
-  2, 330, :_reduce_461,
-  1, 330, :_reduce_none,
-  2, 163, :_reduce_463,
-  1, 163, :_reduce_none,
-  1, 236, :_reduce_465,
-  1, 236, :_reduce_none,
-  1, 237, :_reduce_467,
-  1, 332, :_reduce_468,
-  1, 332, :_reduce_none,
-  2, 332, :_reduce_470,
-  3, 333, :_reduce_471,
-  1, 333, :_reduce_472,
-  3, 238, :_reduce_473,
-  3, 239, :_reduce_474,
-  3, 240, :_reduce_475,
-  3, 240, :_reduce_476,
-  1, 337, :_reduce_477,
-  3, 337, :_reduce_478,
-  1, 338, :_reduce_none,
-  2, 338, :_reduce_480,
-  3, 242, :_reduce_481,
-  3, 242, :_reduce_482,
-  1, 340, :_reduce_483,
-  3, 340, :_reduce_484,
-  3, 241, :_reduce_485,
-  3, 241, :_reduce_486,
-  3, 243, :_reduce_487,
-  3, 243, :_reduce_488,
-  1, 341, :_reduce_489,
-  3, 341, :_reduce_490,
-  1, 342, :_reduce_491,
-  3, 342, :_reduce_492,
-  1, 334, :_reduce_493,
-  2, 334, :_reduce_494,
-  1, 335, :_reduce_495,
-  2, 335, :_reduce_496,
-  1, 336, :_reduce_497,
-  2, 336, :_reduce_498,
-  1, 339, :_reduce_499,
-  0, 344, :_reduce_500,
-  3, 339, :_reduce_501,
-  0, 345, :_reduce_502,
-  4, 339, :_reduce_503,
-  1, 343, :_reduce_504,
-  1, 343, :_reduce_505,
-  1, 343, :_reduce_506,
-  1, 343, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  2, 346, :_reduce_510,
-  1, 346, :_reduce_511,
-  1, 348, :_reduce_none,
-  1, 348, :_reduce_none,
-  1, 348, :_reduce_none,
-  1, 348, :_reduce_none,
-  3, 347, :_reduce_516,
-  1, 331, :_reduce_none,
-  2, 331, :_reduce_518,
-  1, 222, :_reduce_none,
-  1, 222, :_reduce_none,
-  1, 222, :_reduce_none,
-  1, 222, :_reduce_none,
-  1, 212, :_reduce_none,
-  1, 212, :_reduce_none,
-  1, 212, :_reduce_none,
-  1, 212, :_reduce_none,
-  1, 212, :_reduce_none,
-  1, 213, :_reduce_528,
-  1, 213, :_reduce_529,
-  1, 213, :_reduce_530,
-  1, 213, :_reduce_531,
-  1, 213, :_reduce_532,
-  1, 213, :_reduce_533,
-  1, 213, :_reduce_534,
-  1, 244, :_reduce_535,
-  1, 244, :_reduce_536,
-  1, 180, :_reduce_537,
-  1, 180, :_reduce_538,
-  1, 185, :_reduce_539,
-  1, 185, :_reduce_540,
-  0, 349, :_reduce_541,
-  4, 263, :_reduce_542,
-  1, 263, :_reduce_543,
-  3, 267, :_reduce_544,
-  0, 351, :_reduce_545,
-  3, 267, :_reduce_546,
-  4, 350, :_reduce_547,
-  2, 350, :_reduce_548,
-  2, 350, :_reduce_549,
-  1, 350, :_reduce_none,
-  2, 353, :_reduce_551,
-  0, 353, :_reduce_552,
-  6, 316, :_reduce_553,
-  8, 316, :_reduce_554,
-  4, 316, :_reduce_555,
-  6, 316, :_reduce_556,
-  4, 316, :_reduce_557,
-  6, 316, :_reduce_558,
-  2, 316, :_reduce_559,
-  4, 316, :_reduce_560,
-  6, 316, :_reduce_561,
-  2, 316, :_reduce_562,
-  4, 316, :_reduce_563,
-  2, 316, :_reduce_564,
-  4, 316, :_reduce_565,
-  1, 316, :_reduce_566,
-  0, 316, :_reduce_567,
-  1, 311, :_reduce_568,
-  1, 311, :_reduce_569,
-  1, 311, :_reduce_570,
-  1, 311, :_reduce_571,
-  1, 292, :_reduce_none,
-  1, 292, :_reduce_573,
-  1, 355, :_reduce_none,
-  1, 356, :_reduce_none,
-  3, 356, :_reduce_576,
-  1, 303, :_reduce_577,
-  3, 303, :_reduce_578,
-  1, 357, :_reduce_none,
-  2, 358, :_reduce_580,
-  1, 358, :_reduce_581,
-  2, 359, :_reduce_582,
-  1, 359, :_reduce_583,
-  1, 297, :_reduce_none,
-  3, 297, :_reduce_585,
-  1, 352, :_reduce_none,
-  3, 352, :_reduce_587,
-  1, 360, :_reduce_none,
-  1, 360, :_reduce_none,
-  2, 298, :_reduce_590,
-  1, 298, :_reduce_591,
-  3, 361, :_reduce_592,
-  3, 362, :_reduce_593,
-  1, 304, :_reduce_594,
-  3, 304, :_reduce_595,
-  1, 354, :_reduce_596,
-  3, 354, :_reduce_597,
-  1, 363, :_reduce_none,
-  1, 363, :_reduce_none,
-  2, 305, :_reduce_600,
-  1, 305, :_reduce_601,
-  1, 364, :_reduce_none,
-  1, 364, :_reduce_none,
-  2, 300, :_reduce_604,
-  2, 299, :_reduce_605,
-  0, 299, :_reduce_606,
-  1, 268, :_reduce_none,
-  0, 365, :_reduce_608,
-  4, 268, :_reduce_609,
-  1, 247, :_reduce_610,
-  2, 247, :_reduce_none,
-  1, 230, :_reduce_none,
-  3, 230, :_reduce_613,
-  3, 366, :_reduce_614,
-  2, 366, :_reduce_615,
-  4, 366, :_reduce_616,
-  2, 366, :_reduce_617,
-  1, 202, :_reduce_none,
-  1, 202, :_reduce_none,
-  1, 202, :_reduce_none,
-  1, 196, :_reduce_none,
-  1, 196, :_reduce_none,
-  1, 196, :_reduce_none,
-  1, 196, :_reduce_none,
-  1, 319, :_reduce_none,
-  1, 319, :_reduce_none,
-  1, 319, :_reduce_none,
-  1, 269, :_reduce_none,
-  1, 269, :_reduce_none,
-  1, 184, :_reduce_none,
-  1, 195, :_reduce_none,
-  1, 195, :_reduce_none,
-  0, 151, :_reduce_none,
-  1, 151, :_reduce_none,
-  0, 186, :_reduce_none,
-  1, 186, :_reduce_none,
-  2, 207, :_reduce_none,
-  2, 183, :_reduce_none,
-  0, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 264, :_reduce_642,
-  1, 264, :_reduce_none,
-  1, 154, :_reduce_none,
-  2, 154, :_reduce_645,
-  0, 152, :_reduce_646 ]
-
-racc_reduce_n = 647
-
-racc_shift_n = 1091
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLABEL_END => 141,
-  :tLOWEST => 142,
-  :tEQL => 143,
-  :tBDOT2 => 144,
-  :tBDOT3 => 145 }
-
-racc_nt_base = 146
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLABEL_END",
-  "tLOWEST",
-  "tEQL",
-  "tBDOT2",
-  "tBDOT3",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "backref",
-  "opt_nl",
-  "arg",
-  "expr_value_do",
-  "do",
-  "@7",
-  "@8",
-  "command",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@9",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "fname",
-  "op",
-  "reswords",
-  "symbol",
-  "@10",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@11",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "k_def",
-  "f_arglist",
-  "singleton",
-  "dot_or_colon",
-  "@12",
-  "@13",
-  "@14",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "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",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "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",
-  "@36",
-  "@37",
-  "ssym",
-  "dsym",
-  "sym",
-  "@38",
-  "args_tail",
-  "@39",
-  "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",
-  "@40",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 12
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 40 omitted
-
-def _reduce_41(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_42(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-# reduce 50 omitted
-
-# reduce 51 omitted
-
-def _reduce_52(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_53(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_54(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-# reduce 56 omitted
-
-def _reduce_57(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_58(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 61 omitted
-
-# reduce 62 omitted
-
-# reduce 63 omitted
-
-def _reduce_64(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_65(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_66(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_67(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_75(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_76(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_77(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_78(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 79 omitted
-
-def _reduce_80(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 81 omitted
-
-def _reduce_82(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_83(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 93 omitted
-
-def _reduce_94(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_95(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_96(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_107(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_108(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 118 omitted
-
-def _reduce_119(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_120(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 122 omitted
-
-# reduce 123 omitted
-
-# reduce 124 omitted
-
-def _reduce_125(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 126 omitted
-
-def _reduce_127(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 128 omitted
-
-def _reduce_129(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_130(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-def _reduce_203(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_204(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_205(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_206(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_207(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_208(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_209(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_210(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_211(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_212(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_213(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_214(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_215(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_216(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_217(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 227 omitted
-
-def _reduce_228(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_229(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_230(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-# reduce 241 omitted
-
-# reduce 242 omitted
-
-# reduce 243 omitted
-
-# reduce 244 omitted
-
-# reduce 245 omitted
-
-def _reduce_246(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_247(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_248(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 249 omitted
-
-def _reduce_250(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_251(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_252(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 253 omitted
-
-def _reduce_254(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_255(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-# reduce 256 omitted
-
-# reduce 257 omitted
-
-# reduce 258 omitted
-
-# reduce 259 omitted
-
-def _reduce_260(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_261(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_262(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_263(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_264(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_265(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_266(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_267(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_268(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_271(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 272 omitted
-
-def _reduce_273(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_274(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_275(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_276(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_280(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_281(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 282 omitted
-
-# reduce 283 omitted
-
-# reduce 284 omitted
-
-# reduce 285 omitted
-
-# reduce 286 omitted
-
-# reduce 287 omitted
-
-# reduce 288 omitted
-
-# reduce 289 omitted
-
-# reduce 290 omitted
-
-# reduce 291 omitted
-
-def _reduce_292(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_293(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_294(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_295(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_297(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_298(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_302(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_303(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_305(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_307(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_308(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_309(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_310(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_311(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_312(val, _values, result)
-                      debug 20
-
-    result
-end
-
-def _reduce_313(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 314 omitted
-
-def _reduce_315(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_316(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_317(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_327(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_339(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_340(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 344 omitted
-
-# reduce 345 omitted
-
-# reduce 346 omitted
-
-# reduce 347 omitted
-
-# reduce 348 omitted
-
-# reduce 349 omitted
-
-# reduce 350 omitted
-
-def _reduce_351(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_352(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 354 omitted
-
-# reduce 355 omitted
-
-# reduce 356 omitted
-
-# reduce 357 omitted
-
-# reduce 358 omitted
-
-# reduce 359 omitted
-
-# reduce 360 omitted
-
-# reduce 361 omitted
-
-# reduce 362 omitted
-
-# reduce 363 omitted
-
-# reduce 364 omitted
-
-# reduce 365 omitted
-
-# reduce 366 omitted
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-def _reduce_369(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 370 omitted
-
-def _reduce_371(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 372 omitted
-
-def _reduce_373(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 374 omitted
-
-def _reduce_375(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_376(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_377(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_378(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_379(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_380(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_381(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_382(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_383(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_384(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-def _reduce_385(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_386(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_387(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_388(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_389(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 390 omitted
-
-def _reduce_391(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_392(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_393(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_394(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_395(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_396(val, _values, result)
-                      result = args(val) << nil
-
-    result
-end
-
-def _reduce_397(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_398(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_403(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_406(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_407(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_408(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_409(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_410(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 411 omitted
-
-def _reduce_412(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_413(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 416 omitted
-
-def _reduce_417(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_418(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_433(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_438(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_439(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_442(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_443(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_444(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_445(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_446(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_447(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 454 omitted
-
-# reduce 455 omitted
-
-def _reduce_456(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_457(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_458(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 459 omitted
-
-# reduce 460 omitted
-
-def _reduce_461(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 462 omitted
-
-def _reduce_463(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 464 omitted
-
-def _reduce_465(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 466 omitted
-
-def _reduce_467(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_468(val, _values, result)
-                      debug 37
-
-    result
-end
-
-# reduce 469 omitted
-
-def _reduce_470(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_471(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_472(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_473(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_476(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_477(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 479 omitted
-
-def _reduce_480(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_481(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_482(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_483(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_485(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_486(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_487(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_488(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_489(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_491(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_492(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_495(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_497(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_498(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_499(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_500(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_501(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_502(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_503(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_504(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_505(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_506(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 507 omitted
-
-# reduce 508 omitted
-
-# reduce 509 omitted
-
-def _reduce_510(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_511(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 512 omitted
-
-# reduce 513 omitted
-
-# reduce 514 omitted
-
-# reduce 515 omitted
-
-def _reduce_516(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-
-    result
-end
-
-# reduce 517 omitted
-
-def _reduce_518(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 519 omitted
-
-# reduce 520 omitted
-
-# reduce 521 omitted
-
-# reduce 522 omitted
-
-# reduce 523 omitted
-
-# reduce 524 omitted
-
-# reduce 525 omitted
-
-# reduce 526 omitted
-
-# reduce 527 omitted
-
-def _reduce_528(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_529(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_530(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_531(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_532(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_533(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_534(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_535(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_537(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_538(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 40
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_544(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_545(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_546(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_547(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_548(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 550 omitted
-
-def _reduce_551(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_552(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_553(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_554(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_555(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_556(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_560(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_561(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_562(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_563(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_565(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_566(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_567(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_568(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_569(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_570(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 572 omitted
-
-def _reduce_573(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 574 omitted
-
-# reduce 575 omitted
-
-def _reduce_576(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_577(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_578(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 579 omitted
-
-def _reduce_580(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_581(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_582(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_583(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 584 omitted
-
-def _reduce_585(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 586 omitted
-
-def _reduce_587(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 588 omitted
-
-# reduce 589 omitted
-
-def _reduce_590(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_591(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_592(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-
-    result
-end
-
-def _reduce_593(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_595(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_596(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_597(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 598 omitted
-
-# reduce 599 omitted
-
-def _reduce_600(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_601(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 602 omitted
-
-# reduce 603 omitted
-
-def _reduce_604(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_605(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_606(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 607 omitted
-
-def _reduce_608(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_609(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_610(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 611 omitted
-
-# reduce 612 omitted
-
-def _reduce_613(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_614(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_615(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_616(val, _values, result)
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-
-    result
-end
-
-def _reduce_617(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 618 omitted
-
-# reduce 619 omitted
-
-# reduce 620 omitted
-
-# reduce 621 omitted
-
-# reduce 622 omitted
-
-# reduce 623 omitted
-
-# reduce 624 omitted
-
-# reduce 625 omitted
-
-# reduce 626 omitted
-
-# reduce 627 omitted
-
-# reduce 628 omitted
-
-# reduce 629 omitted
-
-# reduce 630 omitted
-
-# reduce 631 omitted
-
-# reduce 632 omitted
-
-# reduce 633 omitted
-
-# reduce 634 omitted
-
-# reduce 635 omitted
-
-# reduce 636 omitted
-
-# reduce 637 omitted
-
-# reduce 638 omitted
-
-# reduce 639 omitted
-
-# reduce 640 omitted
-
-# reduce 641 omitted
-
-def _reduce_642(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 643 omitted
-
-# reduce 644 omitted
-
-def _reduce_645(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_646(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby22Parser
diff -pruN 3.20.0-2/lib/ruby22_parser.y 3.21.1-1/lib/ruby22_parser.y
--- 3.20.0-2/lib/ruby22_parser.y	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/lib/ruby22_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,2711 +0,0 @@
-# -*- racc -*-
-
-class Ruby22Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 12
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg                                   =tLBRACE_ARG
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 20
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def fname
-                    {
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-                    }
-                    f_arglist bodystmt k_end
-                    {
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fname
-                    {
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                    }
-                    f_arglist bodystmt k_end
-                    {
-
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA
-                    {
-                      result = args(val) << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    compstmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 37
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 40
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-       f_arglist: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn tEQL arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                    }
-
-     f_block_opt: f_arg_asgn tEQL primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-        rbracket: opt_nl tRBRACK
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby23_parser.rb 3.21.1-1/lib/ruby23_parser.rb
--- 3.20.0-2/lib/ruby23_parser.rb	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/lib/ruby23_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,11132 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby23Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -523,   631,   568,   224,   225,  -108,   -94,  -523,  -523,  -523,
-  -109,   568,  -523,  -523,  -523,  -102,  -523,  -116,   568,   224,
-   225,   -80,   568,   647,  -523,   285,  -523,  -523,  -523,  -115,
-   234,  -108,  -537,   650,     3,  -538,  -523,  -523,   230,  -523,
-  -523,  -523,  -523,  -523,  -111,   280,   728,   224,   225,   727,
-  -109,    95,  -104,  -113,   568,   885,   739,  -103,   728,    96,
-   126,   730,   633,   632,   629,  -110,   235,  -523,  -523,  -523,
-  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
-  -523,  -116,  -102,  -523,  -523,  -523,   646,  -523,  -523,  -108,
-   282,  -523,  -109,   235,  -523,  -523,   649,  -523,   285,  -523,
-   221,  -523,   231,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
-   -99,  -523,   287,  -523,   222,  -100,   130,  -102,  -115,  -104,
-  -102,   129,  -107,  -621,  -103,   130,  -523,  -523,  -523,  -523,
-   129,  -523,   130,  -523,  -106,  -102,   130,   129,  -523,  -526,
-  -111,   129,  -523,  -113,  -523,  -108,  -526,  -526,  -526,  -102,
-  -108,  -526,  -526,  -526,  -104,  -526,   130,  -104,  -104,  -103,
-   884,   129,  -103,  -526,  -109,  -526,  -526,  -526,   130,  -109,
-  -101,   947,  -104,   129,  -110,  -526,  -526,  -103,  -526,  -526,
-  -526,  -526,  -526,  -112,  -101,   287,  -114,  -112,   285,  -114,
-  -523,   830,   224,   225,   830,  -116,  -526,  -523,  -533,   232,
-  -116,   224,   225,  -526,   223,  -533,  -526,  -526,  -526,  -526,
-  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,
-   108,   109,  -526,  -526,  -526,   829,  -526,  -526,   829,   847,
-  -526,   285,  -115,  -526,  -526,   848,  -526,  -115,  -526,   226,
-  -526,  -107,  -526,  -526,  -526,  -526,  -526,  -526,  -526,   477,
-  -526,  -101,  -526,  -621,  -111,  -622,  -116,  -113,   631,  -111,
-   631,  -621,  -113,   275,  -622,  -526,  -526,  -526,  -526,   232,
-  -526,  -300,  -526,   337,   547,   287,   821,  -526,  -300,  -300,
-  -300,  -526,   235,  -526,  -300,  -300,  -101,  -300,  -110,  -101,
-   616,   235,  -103,  -110,  -105,  -537,   282,  -112,   110,   111,
-  -114,   619,  -112,   822,  -101,  -114,  -116,  -300,  -300,   667,
-  -300,  -300,  -300,  -300,  -300,   108,   109,  -532,   287,   633,
-   632,   633,   632,   338,  -532,   631,  -116,   130,   793,   235,
-   795,  -115,   129,  -111,   627,   626,  -618,   -99,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -108,   370,  -300,  -300,  -300,   230,   673,   751,
-  -113,   668,  -300,   752,   229,  -300,  -111,  -619,   620,   861,
-  -300,   575,  -300,   227,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,   616,  -300,  -343,  -300,   395,   633,   632,   629,  -523,
-  -343,  -538,   619,   110,   111,   547,  -523,  -300,  -300,  -343,
-  -105,  -618,  -300,  -625,   918,  -523,   701,   808,   398,  -300,
-  -625,  -625,  -625,  -300,   401,  -114,  -625,  -625,  -113,  -625,
-  -526,   231,  -534,  -618,   404,   627,   626,  -526,  -625,  -534,
-   631,   255,  -619,  -100,   230,   421,  -526,  -106,   631,  -625,
-  -625,   474,  -625,  -625,  -625,  -625,  -625,  -343,  -109,  -535,
-   475,  -531,  -115,  -523,  -619,  -528,  -535,   631,  -531,   620,
-   426,  -110,  -528,   252,  -110,  -535,   728,   254,   253,   730,
-  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
-  -625,  -625,  -625,  -625,  -526,   476,  -625,  -625,  -625,  -536,
-   674,   633,   632,   634,  -625,   478,  -536,  -625,   231,   633,
-   632,   639,  -625,   631,  -625,  -536,  -625,  -625,  -625,  -625,
-  -625,  -625,  -625,  -535,  -625,  -625,  -625,   667,   633,   632,
-   644,   479,   611,   234,   608,   607,   606,   616,   609,  -625,
-  -625,   508,  -103,  -529,  -625,   517,   230,  -530,   619,   593,
-  -529,  -625,  -625,   540,  -530,  -625,   594,  -112,   520,  -625,
-  -625,  -625,   538,  -536,  -625,  -625,  -625,   255,  -625,  -102,
-   614,   272,   273,   522,   633,   632,   651,  -625,  -625,  -625,
-  -625,   627,   626,   728,  -111,  -625,   730,   235,  -625,  -625,
-  1049,  -625,  -625,  -625,  -625,  -625,   130,   -79,  -291,   252,
-   235,   129,   230,   254,   253,  -291,   271,   270,   631,   550,
-   231,   636,   130,   533,  -291,   620,   534,   129,   475,  -625,
-  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
-  -625,  -625,  -625,   857,   861,  -625,  -625,  -625,  -625,   823,
-  -625,   224,   225,  -625,   668,  -625,  -625,  -625,   541,  -625,
-  -621,  -625,   292,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
-  -625,  -625,  -291,  -625,  -625,  -625,   231,   235,   423,   633,
-   632,   130,  -625,   425,   424,   282,   129,   230,  -625,  -625,
-  -625,  -625,   808,  -625,   579,  -625,  -104,   130,   627,   626,
-  -625,  -300,   129,   577,  -625,   544,  -112,   548,  -300,  -300,
-  -300,  -113,  -625,  -300,  -300,  -300,   611,  -300,   608,   607,
-   606,   616,   609,   230,   857,   861,   130,  -300,  -300,  -300,
-   661,   129,   619,   255,  -101,   235,   575,  -300,  -300,   659,
-  -300,  -300,  -300,  -300,  -300,   414,   580,   581,   638,  -110,
-   642,   231,   645,   648,   614,   597,   611,   655,   608,   607,
-   606,  -273,   609,   624,   623,   627,   626,   657,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,   658,   235,  -300,  -300,  -300,   231,   824,  -300,
-   665,   666,  -300,   282,   781,  -300,  -300,   678,  -300,   620,
-  -300,   255,  -300,   785,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,   255,  -300,   255,  -300,   611,   255,   608,   607,   606,
-   616,   609,   133,   134,   135,   136,   137,  -300,  -300,  -300,
-  -300,   619,  -300,  -300,  -300,   685,   235,   235,   421,  -300,
-  -300,  -300,  -300,  -300,   235,  -114,  -300,  -300,   -94,  -300,
-  -301,   230,   705,   614,   235,   553,   716,  -301,   754,   721,
-   724,  -301,   624,   623,   627,   626,  -301,   756,  -301,  -300,
-  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -301,  -300,  -300,
-   235,   731,   732,  -622,   522,   735,  -300,  -300,   724,   724,
-   611,  -622,   608,   607,   606,  -300,   609,   575,   620,   724,
-  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,  -301,   231,  -300,  -300,  -300,   758,
-   673,   763,   769,   772,  -300,  -301,   773,  -300,   781,   775,
-   777,   255,  -300,   779,  -300,  -300,  -300,  -300,  -300,  -300,
-  -300,  -300,  -300,  -300,  -300,   611,  -300,   608,   607,   606,
-   616,   609,   611,   788,   608,   607,   606,   789,   609,  -300,
-  -300,   619,  -300,   252,  -300,  -625,   790,   254,   253,   250,
-   251,  -300,  -625,  -625,  -625,  -300,   796,  -114,  -625,  -625,
-   797,  -625,   230,   614,   133,   134,   135,   136,   137,  1033,
-  -625,  -274,   624,   623,   627,   626,   230,   809,   756,   508,
-   508,  -625,  -625,  1039,  -625,  -625,  -625,  -625,  -625,   907,
-   908,   230,  1037,   909,   124,   125,   235,   826,  1033,   275,
-   611,   835,   608,   607,   606,   837,   609,   756,   620,   520,
-   522,   716,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
-  -625,  -625,  -625,  -625,  -625,  -625,   231,   235,  -625,  -625,
-  -625,   611,   674,   608,   607,   606,  -625,   609,   781,  -625,
-   231,   282,   282,   255,  -625,   716,  -625,   785,  -625,  -625,
-  -625,  -625,  -625,  -625,  -625,   231,  -625,  -625,  -625,   265,
-   266,  1014,   255,   608,   607,   606,   861,   609,   724,   781,
-   235,  -625,  -625,   235,  -625,   252,  -625,   258,   785,   254,
-   253,   250,   251,  -625,  -436,   902,   903,  -625,   235,  -112,
-   912,  -436,  -436,  -436,  -275,   235,  -436,  -436,  -436,   611,
-  -436,   608,   607,   606,   616,   609,   255,   917,   934,  -436,
-  -436,  -436,   716,  -273,   939,   619,   724,   724,   724,   235,
-  -436,  -436,   724,  -436,  -436,  -436,  -436,  -436,   611,   724,
-   608,   607,   606,   235,   609,   961,   235,   614,   252,   772,
-   964,   966,   254,   253,   250,   251,   624,   623,   627,   626,
-   968,  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,
-  -436,  -436,  -436,  -436,  -436,   970,   781,  -436,  -436,  -436,
-   970,   235,  -436,   977,   282,  -436,  -276,   978,  -436,  -436,
-   772,  -436,   620,  -436,   981,  -436,   984,  -436,  -436,  -436,
-  -436,  -436,  -436,  -436,   986,  -436,  -436,  -436,   611,   988,
-   608,   607,   606,   616,   609,   133,   134,   135,   136,   137,
-  -436,  -436,   235,  -436,   619,  -436,  -309,   133,   134,   135,
-   136,   137,  -436,  -309,  -309,  -309,  -436,   990,  -309,  -309,
-  -309,   724,  -309,   255,   763,   611,   614,   608,   607,   606,
-  1010,   609,  -309,  -309,  1011,   624,   623,   627,   626,   265,
-   266,  1020,  -309,  -309,  1021,  -309,  -309,  -309,  -309,  -309,
-  1014,  1031,   608,   607,   606,   252,   609,   258,  1034,   254,
-   253,   250,   251,   781,   847,   256,  1040,   257,  1050,   970,
-   970,   620,   970,  -309,  -309,  -309,  -309,  -309,  -309,  -309,
-  -309,  -309,  -309,  -309,  -309,  -309,  -309,   772,  1057,  -309,
-  -309,  -309,  1059,  1061,  -309,  1063,   292,  -309,  1063,   721,
-  -309,  -309,   724,  -309,   724,  -309,  1021,  -309,  -622,  -309,
-  -309,  -309,  -309,  -309,  -309,  -309,  -621,  -309,   235,  -309,
-   611,   970,   608,   607,   606,   616,   609,  1085,  1063,  1063,
-  1063,  1063,  -309,  -309,   nil,  -309,   619,  -309,  -292,   nil,
-   nil,   nil,   nil,   nil,  -309,  -292,  -292,  -292,  -309,   nil,
-  -292,  -292,  -292,   nil,  -292,   255,   nil,   nil,   614,   nil,
-   nil,   nil,   nil,   nil,  -292,  -292,  -292,   624,   623,   627,
-   626,   265,   266,   nil,  -292,  -292,   nil,  -292,  -292,  -292,
-  -292,  -292,   nil,   nil,   nil,   nil,   nil,   252,   nil,   258,
-   nil,   254,   253,   250,   251,   nil,   nil,   256,   nil,   257,
-   nil,   nil,   nil,   620,   nil,  -292,  -292,  -292,  -292,  -292,
-  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,   nil,
-   nil,  -292,  -292,  -292,   nil,   nil,  -292,   nil,   nil,  -292,
-   nil,   nil,  -292,  -292,   nil,  -292,   nil,  -292,   nil,  -292,
-   nil,  -292,  -292,  -292,  -292,  -292,  -292,  -292,   nil,  -292,
-   nil,  -292,   611,   nil,   608,   607,   606,   616,   609,   nil,
-   nil,   nil,   nil,   nil,  -292,  -292,  -292,  -292,   619,  -292,
-  -647,  -292,   nil,   nil,   nil,   nil,  -292,  -647,  -647,  -647,
-  -292,   nil,  -647,  -647,  -647,   nil,  -647,   255,   nil,   nil,
-   614,   nil,   nil,   nil,   nil,  -647,  -647,  -647,   nil,   624,
-   623,   627,   626,   265,   266,   nil,  -647,  -647,   nil,  -647,
-  -647,  -647,  -647,  -647,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   258,   nil,   254,   253,   250,   251,   235,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   620,   nil,  -647,  -647,  -647,
-  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
-  -647,   nil,   nil,  -647,  -647,  -647,   nil,   nil,  -647,   nil,
-   282,  -647,   nil,   nil,  -647,  -647,   nil,  -647,   nil,  -647,
-   nil,  -647,   nil,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
-   nil,  -647,  -647,  -647,   611,   nil,   608,   607,   606,   616,
-   609,   nil,   nil,   nil,   nil,   nil,  -647,  -647,   nil,  -647,
-   619,  -647,  -626,   nil,   nil,   nil,   nil,   nil,  -647,  -626,
-  -626,  -626,  -647,   nil,  -626,  -626,  -626,   nil,  -626,   255,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,  -626,  -626,  -626,
-  -626,   624,   623,   627,   626,   265,   266,   nil,  -626,  -626,
-   nil,  -626,  -626,  -626,  -626,  -626,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   nil,   254,   253,   250,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,   nil,  -626,
-  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,  -626,   nil,   nil,  -626,  -626,  -626,   nil,   nil,
-  -626,   nil,   nil,  -626,   nil,   nil,  -626,  -626,   nil,  -626,
-   nil,  -626,   nil,  -626,   nil,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,   nil,  -626,  -626,  -626,   611,   nil,   608,   607,
-   606,   616,   609,   nil,   nil,   nil,   nil,   nil,  -626,  -626,
-  -626,  -626,   619,  -626,  -627,  -626,   nil,   nil,   nil,   nil,
-  -626,  -627,  -627,  -627,  -626,   nil,  -627,  -627,  -627,   nil,
-  -627,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,  -627,
-  -627,  -627,  -627,   nil,   nil,   627,   626,   nil,   nil,   nil,
-  -627,  -627,   nil,  -627,  -627,  -627,  -627,  -627,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,
-   nil,  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,
-  -627,  -627,  -627,  -627,  -627,   nil,   nil,  -627,  -627,  -627,
-   nil,   nil,  -627,   nil,   nil,  -627,   nil,   nil,  -627,  -627,
-   nil,  -627,   nil,  -627,   nil,  -627,   nil,  -627,  -627,  -627,
-  -627,  -627,  -627,  -627,   nil,  -627,  -627,  -627,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  -627,  -627,  -627,  -627,   nil,  -627,  -647,  -627,   nil,   nil,
-   nil,   nil,  -627,  -647,  -647,  -647,  -627,   nil,  -647,  -647,
-  -647,   nil,  -647,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  -647,  -647,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -647,  -647,   nil,  -647,  -647,  -647,  -647,  -647,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   506,   458,   nil,
-   nil,   507,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,  -647,   nil,   nil,   175,   176,   161,
-   162,  -647,   nil,   nil,   nil,   nil,   282,  -647,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,  -647,  -647,
-   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -647,   nil,   nil,   nil,   nil,  -647,   nil,   nil,
-   170,   nil,   nil,   nil,  -647,   nil,   nil,   nil,  -647,     8,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   662,    11,    49,    10,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,  -248,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   662,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   235,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,  -648,  -648,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,  -648,  -648,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -648,  -648,  -648,  -648,
-   272,   273,   nil,   nil,  -648,  -648,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,     8,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,    10,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -648,  -648,  -648,  -648,
-   272,   273,   nil,   nil,  -648,  -648,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -648,  -648,  -648,  -648,
-   272,   273,   nil,   nil,  -648,  -648,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -648,  -648,  -648,  -648,
-   272,   273,   nil,   nil,  -648,  -648,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -648,  -648,  -648,  -648,
-   272,   273,   nil,   nil,  -648,  -648,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -648,  -648,  -648,  -648,
-   272,   273,   nil,   nil,  -648,  -648,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   nil,   nil,   263,   264,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   nil,   263,   264,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,    10,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
-   nil,   nil,   nil,   nil,   611,   nil,   608,   607,   606,   616,
-   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
-   619,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   319,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   627,   626,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   620,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
-   nil,   nil,   nil,   611,   nil,   608,   607,   606,   616,   609,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,   619,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   614,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   627,   626,   nil,    96,   106,   nil,   nil,   nil,
-   336,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   620,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   130,   nil,   nil,   nil,   nil,   129,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
-   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,   607,   606,
-   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   364,
-   nil,   619,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   627,   626,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   620,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   414,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   431,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   431,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   235,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   235,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   nil,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,
-   607,   606,   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   619,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   627,   626,   nil,    96,
-   106,   nil,   nil,   nil,   536,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   620,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   334,   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,   607,
-   606,   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   324,   nil,   619,   320,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   627,   626,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   620,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   553,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,   582,
-    60,   114,   113,   583,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,
-   611,   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   584,   nil,   619,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   627,
-   626,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   620,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   nil,   nil,   122,   121,   123,   582,    60,
-   114,   113,   583,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,
-   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   584,   nil,   619,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   627,   626,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   620,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   698,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   414,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,
-   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   324,   nil,   619,   320,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   627,   626,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   620,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   304,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   305,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   801,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   698,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   431,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   698,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   866,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   304,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   299,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   305,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   992,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   999,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,  1004,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,
-   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,   188,   199,   189,   212,   185,   205,   195,   194,   215,
-   216,   210,   193,   192,   187,   213,   217,   218,   197,   186,
-   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,
-   209,   208,   201,   211,   196,   184,   203,   202,   nil,   nil,
-   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,   180,
-   141,   143,   140,   nil,   142,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,
-   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
-   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
-   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
-   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,   205,
-   195,   194,   215,   216,   210,   193,   192,   187,   213,   217,
-   218,   197,   186,   200,   204,   206,   198,   191,   nil,   nil,
-   nil,   207,   214,   209,   208,   201,   211,   196,   184,   203,
-   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,
-   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,
-   212,   185,   205,   195,   194,   215,   216,   210,   193,   192,
-   187,   213,   217,   218,   197,   186,   200,   204,   206,   198,
-   191,   nil,   nil,   nil,   207,   214,   209,   379,   378,   380,
-   377,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,
-   190,   181,   182,   374,   375,   376,   372,   143,   114,   113,
-   373,   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,   173,
-   174,   nil,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   386,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
-   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
-   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
-   208,   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,
-   nil,   nil,   183,   190,   181,   182,   178,   179,   180,   141,
-   143,   411,   410,   142,   nil,   412,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   188,   199,   189,   212,   185,   205,   195,
-   194,   215,   216,   210,   193,   192,   187,   213,   217,   218,
-   197,   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,
-   207,   214,   209,   208,   201,   211,   196,   184,   203,   202,
-   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,
-   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,
-   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
-   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
-   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,   196,
-   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
-   181,   182,   178,   179,   180,   141,   143,   nil,   nil,   142,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   105,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
-   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
-   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
-   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
-   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
-   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
-   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
-   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
-   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
-   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
-   nil,   177,   nil,   nil,   nil,   nil,   454,   458,   nil,   nil,
-   455,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
-   174,   170,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
-   nil,   nil,   nil,   nil,   461,   465,   nil,   nil,   460,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
-   nil,   nil,   679,   458,   nil,   nil,   680,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,
-   681,   465,   nil,   nil,   682,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,   153,
-   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
-   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
-   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
-   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   709,   458,
-   nil,   nil,   710,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   173,   174,   170,   169,   151,   152,   153,   160,   157,
-   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
-   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
-   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
-   nil,   177,   nil,   nil,   nil,   nil,   712,   465,   nil,   nil,
-   713,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
-   174,   170,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
-   nil,   nil,   nil,   nil,   679,   458,   nil,   nil,   680,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
-   nil,   nil,   681,   465,   nil,   nil,   682,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,
-   746,   458,   nil,   nil,   747,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,   153,
-   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
-   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
-   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
-   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   748,   465,
-   nil,   nil,   749,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   173,   174,   170,   169,   151,   152,   153,   160,   157,
-   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
-   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
-   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
-   nil,   177,   nil,   nil,   nil,   nil,   803,   458,   nil,   nil,
-   804,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
-   174,   170,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
-   nil,   nil,   nil,   nil,   806,   465,   nil,   nil,   805,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
-   nil,   nil,   870,   465,   nil,   nil,   871,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,
-   506,   458,   nil,   nil,   507,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,   153,
-   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
-   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
-   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
-   149,   nil,   611,   177,   608,   607,   606,   616,   609,   611,
-   nil,   608,   607,   606,   616,   609,   nil,   nil,   619,   nil,
-   nil,   nil,   nil,   170,   nil,   619,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   614,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   624,
-   623,   627,   626,   nil,   nil,   nil,   624,   623,   627,   626,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1067,   465,   nil,
-   nil,  1066,   nil,   nil,   nil,   620,   nil,   nil,   nil,   nil,
-   173,   174,   620,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,  1070,   458,   nil,   nil,  1071,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,  1072,   465,   nil,   nil,  1073,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   611,   177,   608,   607,   606,
-   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   619,   nil,   nil,   nil,   nil,   170,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   624,   623,   627,   626,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620 ]
-
-racc_action_check = [
-   112,   389,   353,   470,   470,   361,   704,   112,   112,   112,
-   362,   354,   112,   112,   112,   709,   112,   365,   938,    17,
-    17,   704,   943,   402,   112,    29,   112,   112,   112,   580,
-    22,   996,   238,   405,     1,   239,   112,   112,    27,   112,
-   112,   112,   112,   112,   746,    27,   559,   352,   352,   559,
-   997,    92,   710,   747,   867,   767,   570,   712,   560,    92,
-     3,   560,   389,   389,   389,   868,    22,   112,   112,   112,
-   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
-   112,  1000,   709,   112,   112,   112,   402,   112,   112,   238,
-    29,   112,   239,   470,   112,   112,   405,   112,    65,   112,
-    13,   112,    27,   112,   112,   112,   112,   112,   112,   112,
-   361,   112,    29,   112,    15,   362,   353,   709,  1040,   710,
-   709,   353,   365,   712,   712,   354,   112,   112,   112,   112,
-   354,   112,   938,   112,   580,   709,   943,   938,   112,   115,
-  1070,   943,   112,  1071,   112,   996,   115,   115,   115,   746,
-   996,   115,   115,   115,   710,   115,   570,   710,   747,   712,
-   767,   570,   712,   115,   997,   115,   115,   115,   867,   997,
-   868,   867,   710,   867,  1083,   115,   115,   712,   115,   115,
-   115,   115,   115,  1072,   842,    65,  1073,   748,   688,   749,
-   372,   686,   719,   719,   836,  1000,   373,   372,   374,    20,
-  1000,   766,   766,   373,    16,   374,   115,   115,   115,   115,
-   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
-    44,    44,   115,   115,   115,   686,   115,   115,   836,   720,
-   115,   329,  1040,   115,   115,   720,   115,  1040,   115,    18,
-   115,    20,   115,   115,   115,   115,   115,   115,   115,   241,
-   115,   842,   115,   748,  1070,   749,    20,  1071,   640,  1070,
-   643,  1072,  1071,    25,  1073,   115,   115,   115,   115,   438,
-   115,   460,   115,    40,   476,   688,   679,   115,   460,   460,
-   460,   115,   719,   115,   460,   460,   842,   460,  1083,   842,
-   769,   766,   748,  1083,   749,    41,   329,  1072,    44,    44,
-  1073,   769,  1072,   680,   842,  1073,   241,   460,   460,   803,
-   460,   460,   460,   460,   460,   334,   334,   375,   329,   640,
-   640,   643,   643,    43,   375,   524,   438,     5,   640,    49,
-   643,   476,     5,   679,   769,   769,   582,    41,   460,   460,
-   460,   460,   460,   460,   460,   460,   460,   460,   460,   460,
-   460,   460,    41,    73,   460,   460,   460,    19,   460,   584,
-   680,   804,   460,   584,    19,   460,   803,   583,   769,  1005,
-   460,  1005,   460,    19,   460,   460,   460,   460,   460,   460,
-   460,   978,   460,    50,   460,    99,   524,   524,   524,   582,
-    50,    42,   978,   334,   334,   338,   582,   460,   460,    50,
-   460,   582,   460,   461,   825,   582,   524,   914,   100,   460,
-   461,   461,   461,   460,   101,   460,   461,   461,   804,   461,
-   583,    19,   376,   582,   102,   978,   978,   583,   461,   376,
-   391,   482,   583,    42,   237,   138,   583,   338,   396,   461,
-   461,   237,   461,   461,   461,   461,   461,    50,    42,   321,
-   237,   377,   338,   582,   583,   378,   321,   399,   377,   978,
-   219,   825,   378,   482,   914,   321,   564,   482,   482,   564,
-   461,   461,   461,   461,   461,   461,   461,   461,   461,   461,
-   461,   461,   461,   461,   583,   240,   461,   461,   461,   322,
-   461,   391,   391,   391,   461,   242,   322,   461,   237,   396,
-   396,   396,   461,   407,   461,   322,   461,   461,   461,   461,
-   461,   461,   461,   321,   461,   461,   461,   454,   399,   399,
-   399,   243,   777,   247,   777,   777,   777,   777,   777,   461,
-   461,   281,   461,   379,   461,   296,   323,   380,   777,   382,
-   379,   461,   681,   323,   380,   461,   382,   461,   297,   681,
-   681,   681,   323,   322,   681,   681,   681,   483,   681,   454,
-   777,    47,    47,   300,   407,   407,   407,   681,   681,   681,
-   681,   777,   777,   855,   454,   870,   855,  1012,   681,   681,
-  1012,   681,   681,   681,   681,   681,   308,   314,   325,   483,
-   316,   308,   340,   483,   483,   325,    47,    47,   393,   340,
-   323,   393,   358,   317,   325,   777,   318,   358,   340,   681,
-   681,   681,   681,   681,   681,   681,   681,   681,   681,   681,
-   681,   681,   681,   734,   734,   681,   681,   681,   870,   681,
-   681,   760,   760,   681,   455,   870,   681,   681,   324,   681,
-   870,   681,   327,   681,   870,   681,   681,   681,   681,   681,
-   681,   681,   325,   681,   681,   681,   340,   328,   140,   393,
-   393,   876,   870,   140,   140,   333,   876,   363,   681,   681,
-   681,   681,   663,   681,   363,   681,   455,   880,   772,   772,
-   681,   682,   880,   363,   681,   335,   681,   339,   682,   682,
-   682,   455,   870,   682,   682,   682,   387,   682,   387,   387,
-   387,   387,   387,   437,  1041,  1041,   952,   682,   682,   682,
-   437,   952,   387,   342,   663,   348,   359,   682,   682,   437,
-   682,   682,   682,   682,   682,   360,   364,   366,   395,   663,
-   398,   363,   401,   404,   387,   387,   614,   427,   614,   614,
-   614,   430,   614,   387,   387,   387,   387,   432,   682,   682,
-   682,   682,   682,   682,   682,   682,   682,   682,   682,   682,
-   682,   682,   435,   449,   682,   682,   682,   437,   682,   682,
-   452,   453,   682,   462,   614,   682,   682,   472,   682,   387,
-   682,   484,   682,   614,   682,   682,   682,   682,   682,   682,
-   682,   485,   682,   486,   682,   597,   487,   597,   597,   597,
-   597,   597,     9,     9,     9,     9,     9,   682,   682,   682,
-   682,   597,   682,   805,   682,   503,   510,   514,   530,   682,
-   805,   805,   805,   682,   531,   682,   805,   805,   532,   805,
-   541,   586,   535,   597,   537,   542,   545,   541,   586,   554,
-   555,   752,   597,   597,   597,   597,   541,   586,   752,   805,
-   805,   713,   805,   805,   805,   805,   805,   752,   713,   871,
-   556,   561,   562,   713,   565,   567,   871,   713,   571,   572,
-   903,   871,   903,   903,   903,   871,   903,   573,   597,   574,
-   805,   805,   805,   805,   805,   805,   805,   805,   805,   805,
-   805,   805,   805,   805,   541,   586,   805,   805,   805,   588,
-   805,   591,   599,   600,   805,   752,   602,   805,   903,   603,
-   604,   497,   805,   613,   805,   713,   805,   805,   805,   805,
-   805,   805,   805,   871,   805,   763,   805,   763,   763,   763,
-   763,   763,   785,   621,   785,   785,   785,   625,   785,   805,
-   805,   763,   805,   497,   805,   806,   628,   497,   497,   497,
-   497,   805,   806,   806,   806,   805,   647,   805,   806,   806,
-   650,   806,   991,   763,   312,   312,   312,   312,   312,   991,
-   806,   656,   763,   763,   763,   763,   998,   664,   991,   669,
-   675,   806,   806,   998,   806,   806,   806,   806,   806,   791,
-   791,  1032,   998,   791,   791,   791,   683,   684,  1032,   687,
-   781,   691,   781,   781,   781,   693,   781,  1032,   763,   695,
-   697,   706,   806,   806,   806,   806,   806,   806,   806,   806,
-   806,   806,   806,   806,   806,   806,   991,   708,   806,   806,
-   806,   902,   806,   902,   902,   902,   806,   902,   781,   806,
-   998,   711,   714,   488,   806,   715,   806,   781,   806,   806,
-   806,   806,   806,   806,   806,  1032,   806,   806,   806,   488,
-   488,   961,   718,   961,   961,   961,   736,   961,   742,   902,
-   745,   806,   806,   768,   806,   488,   806,   488,   902,   488,
-   488,   488,   488,   806,    30,   783,   784,   806,   786,   806,
-   798,    30,    30,    30,   800,   802,    30,    30,    30,   764,
-    30,   764,   764,   764,   764,   764,   498,   810,   834,    30,
-    30,    30,   841,   851,   852,   764,   856,   862,   869,   873,
-    30,    30,   877,    30,    30,    30,    30,    30,  1020,   878,
-  1020,  1020,  1020,   879,  1020,   886,   887,   764,   498,   888,
-   892,   893,   498,   498,   498,   498,   764,   764,   764,   764,
-   895,    30,    30,    30,    30,    30,    30,    30,    30,    30,
-    30,    30,    30,    30,    30,   896,  1020,    30,    30,    30,
-   898,   901,    30,   911,    30,    30,   913,   920,    30,    30,
-   921,    30,   764,    30,   923,    30,   924,    30,    30,    30,
-    30,    30,    30,    30,   925,    30,    30,    30,   773,   927,
-   773,   773,   773,   773,   773,   347,   347,   347,   347,   347,
-    30,    30,   928,    30,   773,    30,    31,   529,   529,   529,
-   529,   529,    30,    31,    31,    31,    30,   929,    31,    31,
-    31,   951,    31,   502,   958,  1021,   773,  1021,  1021,  1021,
-   959,  1021,    31,    31,   960,   773,   773,   773,   773,   502,
-   502,   975,    31,    31,   976,    31,    31,    31,    31,    31,
-  1049,   989,  1049,  1049,  1049,   502,  1049,   502,   992,   502,
-   502,   502,   502,  1021,   994,   502,   999,   502,  1016,  1017,
-  1018,   773,  1019,    31,    31,    31,    31,    31,    31,    31,
-    31,    31,    31,    31,    31,    31,    31,  1022,  1025,    31,
-    31,    31,  1026,  1027,    31,  1028,    31,    31,  1030,  1036,
-    31,    31,  1046,    31,  1047,    31,  1055,    31,  1066,    31,
-    31,    31,    31,    31,    31,    31,  1067,    31,  1069,    31,
-   775,  1078,   775,   775,   775,   775,   775,  1079,  1080,  1081,
-  1082,  1090,    31,    31,   nil,    31,   775,    31,    60,   nil,
-   nil,   nil,   nil,   nil,    31,    60,    60,    60,    31,   nil,
-    60,    60,    60,   nil,    60,   551,   nil,   nil,   775,   nil,
-   nil,   nil,   nil,   nil,    60,    60,    60,   775,   775,   775,
-   775,   551,   551,   nil,    60,    60,   nil,    60,    60,    60,
-    60,    60,   nil,   nil,   nil,   nil,   nil,   551,   nil,   551,
-   nil,   551,   551,   551,   551,   nil,   nil,   551,   nil,   551,
-   nil,   nil,   nil,   775,   nil,    60,    60,    60,    60,    60,
-    60,    60,    60,    60,    60,    60,    60,    60,    60,   nil,
-   nil,    60,    60,    60,   nil,   nil,    60,   nil,   nil,    60,
-   nil,   nil,    60,    60,   nil,    60,   nil,    60,   nil,    60,
-   nil,    60,    60,    60,    60,    60,    60,    60,   nil,    60,
-   nil,    60,   829,   nil,   829,   829,   829,   829,   829,   nil,
-   nil,   nil,   nil,   nil,    60,    60,    60,    60,   829,    60,
-   456,    60,   nil,   nil,   nil,   nil,    60,   456,   456,   456,
-    60,   nil,   456,   456,   456,   nil,   456,   489,   nil,   nil,
-   829,   nil,   nil,   nil,   nil,   456,   456,   456,   nil,   829,
-   829,   829,   829,   489,   489,   nil,   456,   456,   nil,   456,
-   456,   456,   456,   456,   nil,   nil,   nil,   nil,   nil,   489,
-   nil,   489,   nil,   489,   489,   489,   489,   829,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   829,   nil,   456,   456,   456,
-   456,   456,   456,   456,   456,   456,   456,   456,   456,   456,
-   456,   nil,   nil,   456,   456,   456,   nil,   nil,   456,   nil,
-   456,   456,   nil,   nil,   456,   456,   nil,   456,   nil,   456,
-   nil,   456,   nil,   456,   456,   456,   456,   456,   456,   456,
-   nil,   456,   456,   456,   964,   nil,   964,   964,   964,   964,
-   964,   nil,   nil,   nil,   nil,   nil,   456,   456,   nil,   456,
-   964,   456,   465,   nil,   nil,   nil,   nil,   nil,   456,   465,
-   465,   465,   456,   nil,   465,   465,   465,   nil,   465,   490,
-   nil,   nil,   964,   nil,   nil,   nil,   nil,   465,   465,   465,
-   465,   964,   964,   964,   964,   490,   490,   nil,   465,   465,
-   nil,   465,   465,   465,   465,   465,   nil,   nil,   nil,   nil,
-   nil,   490,   nil,   nil,   nil,   490,   490,   490,   490,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,   nil,   465,
-   465,   465,   465,   465,   465,   465,   465,   465,   465,   465,
-   465,   465,   465,   nil,   nil,   465,   465,   465,   nil,   nil,
-   465,   nil,   nil,   465,   nil,   nil,   465,   465,   nil,   465,
-   nil,   465,   nil,   465,   nil,   465,   465,   465,   465,   465,
-   465,   465,   nil,   465,   465,   465,   966,   nil,   966,   966,
-   966,   966,   966,   nil,   nil,   nil,   nil,   nil,   465,   465,
-   465,   465,   966,   465,   466,   465,   nil,   nil,   nil,   nil,
-   465,   466,   466,   466,   465,   nil,   466,   466,   466,   nil,
-   466,   nil,   nil,   nil,   966,   nil,   nil,   nil,   nil,   466,
-   466,   466,   466,   nil,   nil,   966,   966,   nil,   nil,   nil,
-   466,   466,   nil,   466,   466,   466,   466,   466,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   966,
-   nil,   466,   466,   466,   466,   466,   466,   466,   466,   466,
-   466,   466,   466,   466,   466,   nil,   nil,   466,   466,   466,
-   nil,   nil,   466,   nil,   nil,   466,   nil,   nil,   466,   466,
-   nil,   466,   nil,   466,   nil,   466,   nil,   466,   466,   466,
-   466,   466,   466,   466,   nil,   466,   466,   466,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   466,   466,   466,   466,   nil,   466,   505,   466,   nil,   nil,
-   nil,   nil,   466,   505,   505,   505,   466,   nil,   505,   505,
-   505,   nil,   505,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   505,   505,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   505,   505,   nil,   505,   505,   505,   505,   505,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   278,   278,   nil,
-   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   278,   278,   nil,   278,   278,   278,   278,   278,   278,   278,
-   nil,   nil,   278,   278,   505,   nil,   nil,   278,   278,   278,
-   278,   505,   nil,   nil,   nil,   nil,   505,   505,   nil,   nil,
-   nil,   nil,   nil,   nil,   278,   278,   nil,   278,   278,   278,
-   278,   278,   278,   278,   278,   278,   278,   278,   505,   505,
-   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   505,   nil,   nil,   nil,   nil,   505,   nil,   nil,
-   278,   nil,   nil,   nil,   505,   nil,   nil,   nil,   505,     2,
-     2,     2,     2,     2,     2,   nil,   nil,   nil,     2,     2,
-   nil,   nil,   nil,     2,   nil,     2,     2,     2,     2,     2,
-     2,     2,   nil,   nil,   nil,   nil,   nil,     2,     2,     2,
-     2,     2,     2,     2,   nil,   nil,     2,   nil,   nil,   nil,
-   nil,   442,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,   nil,     2,     2,     2,   nil,     2,
-     2,   nil,     2,     2,     2,   442,   442,   442,   442,   442,
-   442,   442,   442,   442,   442,   442,   nil,   442,   442,   nil,
-   nil,   442,   442,   nil,     2,   nil,   nil,     2,   nil,   nil,
-     2,     2,   nil,   nil,     2,   nil,     2,   442,   nil,   442,
-     2,   442,   442,   442,   442,   442,   442,   442,     2,   442,
-   nil,   nil,   nil,     2,     2,     2,     2,     2,     2,   nil,
-   nil,   nil,     2,     2,   nil,   442,   nil,   442,   nil,   nil,
-     2,   nil,   nil,     2,     2,     2,   nil,     2,     2,    36,
-    36,    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,
-   nil,   nil,   nil,    36,   nil,    36,    36,    36,    36,    36,
-    36,    36,   nil,   nil,   nil,   nil,   nil,    36,    36,    36,
-    36,    36,    36,    36,   nil,   nil,    36,   nil,   nil,   nil,
-   nil,   448,    36,    36,    36,    36,    36,    36,    36,    36,
-    36,    36,    36,    36,   nil,    36,    36,    36,   nil,    36,
-    36,   nil,    36,    36,    36,   448,   448,   448,   448,   448,
-   448,   448,   448,   448,   448,   448,   nil,   448,   448,   nil,
-   nil,   448,   448,   nil,    36,   nil,   nil,    36,   nil,   nil,
-    36,    36,   nil,   nil,    36,   nil,    36,   448,   nil,   448,
-    36,   448,   448,   448,   448,   448,   448,   448,    36,   448,
-   nil,   nil,   nil,    36,    36,    36,    36,    36,    36,   nil,
-   nil,   nil,    36,    36,   nil,   448,   nil,   nil,   nil,   nil,
-    36,   nil,   nil,    36,    36,    36,   nil,    36,    36,   221,
-   221,   221,   221,   221,   221,   nil,   nil,   nil,   221,   221,
-   nil,   nil,   nil,   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,   221,   221,   221,   221,   221,   221,   221,   221,
-   221,   221,   221,   221,   nil,   221,   221,   221,   nil,   221,
-   221,   nil,   221,   221,   221,    24,    24,    24,    24,    24,
-    24,    24,    24,    24,    24,    24,   nil,    24,    24,   nil,
-   nil,    24,    24,   nil,   221,   nil,   nil,   221,   nil,   nil,
-   221,   221,   nil,   nil,   221,   nil,   221,    24,   nil,    24,
-   221,    24,    24,    24,    24,    24,    24,    24,   221,    24,
-   nil,   nil,   nil,   221,   221,   221,   221,   221,   221,   nil,
-   nil,   nil,   221,   221,   nil,    24,   nil,   nil,   nil,   nil,
-   221,   nil,   nil,   221,   221,   221,   nil,   221,   221,   246,
-   246,   246,   246,   246,   246,   nil,   nil,   nil,   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,   246,   246,   246,   246,   246,   246,   246,   246,
-   246,   246,   246,   246,   nil,   246,   246,   246,   nil,   246,
-   246,   nil,   246,   246,   246,   294,   294,   294,   294,   294,
-   294,   294,   294,   294,   294,   294,   nil,   294,   294,   nil,
-   nil,   294,   294,   nil,   246,   nil,   nil,   246,   nil,   nil,
-   246,   246,   nil,   nil,   246,   nil,   246,   294,   nil,   294,
-   246,   294,   294,   294,   294,   294,   294,   294,   246,   294,
-   nil,   nil,   nil,   246,   246,   246,   246,   246,   246,   nil,
-   nil,   nil,   246,   246,   nil,   294,   nil,   nil,   nil,   nil,
-   246,   nil,   nil,   246,   246,   246,   nil,   246,   246,   315,
-   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,   315,
-   nil,   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,   315,   315,   315,   315,   315,   315,   315,   315,
-   315,   315,   315,   315,   nil,   315,   315,   315,   nil,   315,
-   315,   nil,   315,   315,   315,   501,   501,   501,   501,   501,
-   501,   501,   501,   501,   501,   501,   nil,   501,   501,   nil,
-   nil,   501,   501,   nil,   315,   nil,   nil,   315,   nil,   nil,
-   315,   315,   nil,   nil,   315,   nil,   315,   501,   nil,   501,
-   315,   501,   501,   501,   501,   501,   501,   501,   315,   501,
-   nil,   nil,   nil,   315,   315,   315,   315,   315,   315,   nil,
-   nil,   nil,   315,   315,   501,   501,   nil,   nil,   nil,   nil,
-   315,   nil,   nil,   315,   315,   315,   nil,   315,   315,   320,
-   320,   320,   320,   320,   320,   nil,   nil,   nil,   320,   320,
-   nil,   nil,   nil,   320,   nil,   320,   320,   320,   320,   320,
-   320,   320,   nil,   nil,   nil,   nil,   nil,   320,   320,   320,
-   320,   320,   320,   320,   nil,   nil,   320,   nil,   nil,   nil,
-   nil,   nil,   320,   320,   320,   320,   320,   320,   320,   320,
-   320,   320,   320,   320,   nil,   320,   320,   320,   nil,   320,
-   320,   nil,   320,   320,   320,   552,   552,   552,   552,   552,
-   552,   552,   552,   552,   552,   552,   nil,   552,   552,   nil,
-   nil,   552,   552,   nil,   320,   nil,   nil,   320,   nil,   nil,
-   320,   320,   nil,   nil,   320,   nil,   320,   552,   nil,   552,
-   320,   552,   552,   552,   552,   552,   552,   552,   320,   552,
-   nil,   nil,   nil,   320,   320,   320,   320,   320,   320,   nil,
-   nil,   nil,   320,   320,   nil,   552,   nil,   nil,   nil,   nil,
-   320,   nil,   nil,   320,   320,   320,   nil,   320,   320,   346,
-   346,   346,   346,   346,   346,   nil,   nil,   nil,   346,   346,
-   nil,   nil,   nil,   346,   nil,   346,   346,   346,   346,   346,
-   346,   346,   nil,   nil,   nil,   nil,   nil,   346,   346,   346,
-   346,   346,   346,   346,   nil,   nil,   346,   nil,   nil,   nil,
-   nil,   nil,   346,   346,   346,   346,   346,   346,   346,   346,
-   346,   346,   346,   346,   nil,   346,   346,   346,   nil,   346,
-   346,   nil,   346,   346,   346,   807,   807,   807,   807,   807,
-   807,   807,   807,   807,   807,   807,   nil,   807,   807,   nil,
-   nil,   807,   807,   nil,   346,   nil,   nil,   346,   nil,   nil,
-   346,   346,   nil,   nil,   346,   nil,   346,   807,   nil,   807,
-   346,   807,   807,   807,   807,   807,   807,   807,   346,   807,
-   nil,   nil,   nil,   346,   346,   346,   346,   346,   346,   nil,
-   nil,   nil,   346,   346,   nil,   807,   nil,   nil,   nil,   nil,
-   346,   nil,   nil,   346,   346,   346,   nil,   346,   346,   356,
-   356,   356,   356,   356,   356,   nil,   nil,   nil,   356,   356,
-   nil,   nil,   nil,   356,   nil,   356,   356,   356,   356,   356,
-   356,   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,
-   356,   356,   356,   356,   nil,   nil,   356,   nil,   nil,   nil,
-   nil,   nil,   356,   356,   356,   356,   356,   356,   356,   356,
-   356,   356,   356,   356,   nil,   356,   356,   356,   nil,   356,
-   356,   nil,   356,   356,   356,   919,   919,   919,   919,   919,
-   919,   919,   919,   919,   919,   919,   nil,   919,   919,   nil,
-   nil,   919,   919,   nil,   356,   nil,   nil,   356,   nil,   nil,
-   356,   356,   nil,   nil,   356,   nil,   356,   919,   nil,   919,
-   356,   919,   919,   919,   919,   919,   919,   919,   356,   919,
-   nil,   nil,   nil,   356,   356,   356,   356,   356,   356,   nil,
-   nil,   nil,   356,   356,   nil,   919,   nil,   nil,   nil,   nil,
-   356,   nil,   nil,   356,   356,   356,   nil,   356,   356,   357,
-   357,   357,   357,   357,   357,   nil,   nil,   nil,   357,   357,
-   nil,   nil,   nil,   357,   nil,   357,   357,   357,   357,   357,
-   357,   357,   nil,   nil,   nil,   nil,   nil,   357,   357,   357,
-   357,   357,   357,   357,   nil,   nil,   357,   nil,   nil,   nil,
-   nil,   nil,   357,   357,   357,   357,   357,   357,   357,   357,
-   357,   357,   357,   357,   nil,   357,   357,   357,   nil,   357,
-   357,   nil,   357,   357,   357,   480,   480,   480,   480,   480,
-   480,   480,   480,   480,   480,   480,   nil,   480,   480,   nil,
-   nil,   480,   480,   nil,   357,   nil,   nil,   357,   nil,   nil,
-   357,   357,   nil,   nil,   357,   nil,   357,   480,   nil,   480,
-   357,   480,   480,   480,   480,   480,   480,   480,   357,   480,
-   nil,   nil,   nil,   357,   357,   357,   357,   357,   357,   nil,
-   nil,   nil,   357,   357,   nil,   nil,   nil,   nil,   nil,   nil,
-   357,   nil,   nil,   357,   357,   357,   nil,   357,   357,   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,   481,   481,   481,   481,   481,
-   481,   481,   481,   481,   481,   481,   nil,   481,   481,   nil,
-   nil,   481,   481,   nil,   566,   nil,   nil,   566,   nil,   nil,
-   566,   566,   nil,   nil,   566,   nil,   566,   481,   nil,   481,
-   566,   481,   481,   481,   481,   481,   481,   481,   566,   481,
-   nil,   nil,   nil,   566,   566,   566,   566,   566,   566,   nil,
-   nil,   nil,   566,   566,   nil,   nil,   nil,   nil,   nil,   nil,
-   566,   nil,   nil,   566,   566,   566,   nil,   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,   491,   491,   491,   491,   491,
-   491,   491,   nil,   nil,   491,   491,   nil,   nil,   nil,   nil,
-   nil,   491,   491,   nil,   569,   nil,   nil,   569,   nil,   nil,
-   569,   569,   nil,   nil,   569,   nil,   569,   491,   nil,   491,
-   569,   491,   491,   491,   491,   491,   491,   491,   569,   491,
-   nil,   nil,   nil,   569,   569,   569,   569,   569,   569,   nil,
-   nil,   nil,   569,   569,   nil,   nil,   nil,   nil,   nil,   nil,
-   569,   nil,   nil,   569,   569,   569,   nil,   569,   569,   652,
-   652,   652,   652,   652,   652,   nil,   nil,   nil,   652,   652,
-   nil,   nil,   nil,   652,   nil,   652,   652,   652,   652,   652,
-   652,   652,   nil,   nil,   nil,   nil,   nil,   652,   652,   652,
-   652,   652,   652,   652,   nil,   nil,   652,   nil,   nil,   nil,
-   nil,   nil,   652,   652,   652,   652,   652,   652,   652,   652,
-   652,   652,   652,   652,   nil,   652,   652,   652,   nil,   652,
-   652,   nil,   652,   652,   652,   492,   492,   492,   492,   492,
-   492,   492,   nil,   nil,   492,   492,   nil,   nil,   nil,   nil,
-   nil,   492,   492,   nil,   652,   nil,   nil,   652,   nil,   nil,
-   652,   652,   nil,   nil,   652,   nil,   652,   492,   nil,   492,
-   652,   492,   492,   492,   492,   492,   492,   492,   652,   492,
-   nil,   nil,   nil,   652,   652,   652,   652,   652,   652,   nil,
-   nil,   nil,   652,   652,   nil,   nil,   nil,   nil,   nil,   nil,
-   652,   nil,   nil,   652,   652,   652,   nil,   652,   652,   750,
-   750,   750,   750,   750,   750,   nil,   nil,   nil,   750,   750,
-   nil,   nil,   nil,   750,   nil,   750,   750,   750,   750,   750,
-   750,   750,   nil,   nil,   nil,   nil,   nil,   750,   750,   750,
-   750,   750,   750,   750,   nil,   nil,   750,   nil,   nil,   nil,
-   nil,   nil,   750,   750,   750,   750,   750,   750,   750,   750,
-   750,   750,   750,   750,   nil,   750,   750,   750,   nil,   750,
-   750,   nil,   750,   750,   750,   493,   493,   493,   493,   493,
-   493,   493,   nil,   nil,   493,   493,   nil,   nil,   nil,   nil,
-   nil,   493,   493,   nil,   750,   nil,   nil,   750,   nil,   nil,
-   750,   750,   nil,   nil,   750,   nil,   750,   493,   nil,   493,
-   750,   493,   493,   493,   493,   493,   493,   493,   750,   493,
-   nil,   nil,   nil,   750,   750,   750,   750,   750,   750,   nil,
-   nil,   nil,   750,   750,   nil,   nil,   nil,   nil,   nil,   nil,
-   750,   nil,   nil,   750,   750,   750,   nil,   750,   750,   761,
-   761,   761,   761,   761,   761,   nil,   nil,   nil,   761,   761,
-   nil,   nil,   nil,   761,   nil,   761,   761,   761,   761,   761,
-   761,   761,   nil,   nil,   nil,   nil,   nil,   761,   761,   761,
-   761,   761,   761,   761,   nil,   nil,   761,   nil,   nil,   nil,
-   nil,   nil,   761,   761,   761,   761,   761,   761,   761,   761,
-   761,   761,   761,   761,   nil,   761,   761,   761,   nil,   761,
-   761,   nil,   761,   761,   761,   494,   494,   494,   494,   494,
-   494,   494,   nil,   nil,   494,   494,   nil,   nil,   nil,   nil,
-   nil,   494,   494,   nil,   761,   nil,   nil,   761,   nil,   nil,
-   761,   761,   nil,   nil,   761,   nil,   761,   494,   nil,   494,
-   761,   494,   494,   494,   494,   494,   494,   494,   761,   494,
-   nil,   nil,   nil,   761,   761,   761,   761,   761,   761,   nil,
-   nil,   nil,   761,   761,   nil,   nil,   nil,   nil,   nil,   nil,
-   761,   nil,   nil,   761,   761,   761,   nil,   761,   761,   762,
-   762,   762,   762,   762,   762,   nil,   nil,   nil,   762,   762,
-   nil,   nil,   nil,   762,   nil,   762,   762,   762,   762,   762,
-   762,   762,   nil,   nil,   nil,   nil,   nil,   762,   762,   762,
-   762,   762,   762,   762,   nil,   nil,   762,   nil,   nil,   nil,
-   nil,   nil,   762,   762,   762,   762,   762,   762,   762,   762,
-   762,   762,   762,   762,   nil,   762,   762,   762,   nil,   762,
-   762,   nil,   762,   762,   762,   495,   495,   495,   495,   495,
-   495,   495,   nil,   nil,   495,   495,   nil,   nil,   nil,   nil,
-   nil,   495,   495,   nil,   762,   nil,   nil,   762,   nil,   nil,
-   762,   762,   nil,   nil,   762,   nil,   762,   495,   nil,   495,
-   762,   495,   495,   495,   495,   495,   495,   495,   762,   495,
-   nil,   nil,   nil,   762,   762,   762,   762,   762,   762,   nil,
-   nil,   nil,   762,   762,   nil,   nil,   nil,   nil,   nil,   nil,
-   762,   nil,   nil,   762,   762,   762,   nil,   762,   762,   792,
-   792,   792,   792,   792,   792,   nil,   nil,   nil,   792,   792,
-   nil,   nil,   nil,   792,   nil,   792,   792,   792,   792,   792,
-   792,   792,   nil,   nil,   nil,   nil,   nil,   792,   792,   792,
-   792,   792,   792,   792,   nil,   nil,   792,   nil,   nil,   nil,
-   nil,   nil,   792,   792,   792,   792,   792,   792,   792,   792,
-   792,   792,   792,   792,   nil,   792,   792,   792,   nil,   792,
-   792,   nil,   792,   792,   792,   496,   496,   496,   496,   496,
-   496,   496,   nil,   nil,   496,   496,   nil,   nil,   nil,   nil,
-   nil,   496,   496,   nil,   792,   nil,   nil,   792,   nil,   nil,
-   792,   792,   nil,   nil,   792,   nil,   792,   496,   nil,   496,
-   792,   496,   496,   496,   496,   496,   496,   496,   792,   496,
-   nil,   nil,   nil,   792,   792,   792,   792,   792,   792,   nil,
-   nil,   nil,   792,   792,   nil,   nil,   nil,   nil,   nil,   nil,
-   792,   nil,   nil,   792,   792,   792,   nil,   792,   792,   831,
-   831,   831,   831,   831,   831,   nil,   nil,   nil,   831,   831,
-   nil,   nil,   nil,   831,   nil,   831,   831,   831,   831,   831,
-   831,   831,   nil,   nil,   nil,   nil,   nil,   831,   831,   831,
-   831,   831,   831,   831,   nil,   nil,   831,   nil,   nil,   nil,
-   nil,   nil,   831,   831,   831,   831,   831,   831,   831,   831,
-   831,   831,   831,   831,   nil,   831,   831,   831,   nil,   831,
-   831,   nil,   831,   831,   831,   499,   499,   499,   499,   499,
-   499,   499,   nil,   nil,   499,   499,   nil,   nil,   nil,   nil,
-   nil,   499,   499,   nil,   831,   nil,   nil,   831,   nil,   nil,
-   831,   831,   nil,   nil,   831,   nil,   831,   499,   nil,   499,
-   831,   499,   499,   499,   499,   499,   499,   499,   831,   499,
-   nil,   nil,   nil,   831,   831,   831,   831,   831,   831,   nil,
-   nil,   nil,   831,   831,   nil,   nil,   nil,   nil,   nil,   nil,
-   831,   nil,   nil,   831,   831,   831,   nil,   831,   831,   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,   500,   500,   500,   500,   500,
-   500,   500,   500,   nil,   500,   500,   nil,   nil,   nil,   nil,
-   nil,   500,   500,   nil,   849,   nil,   nil,   849,   nil,   nil,
-   849,   849,   nil,   nil,   849,   nil,   849,   500,   nil,   500,
-   849,   500,   500,   500,   500,   500,   500,   500,   849,   500,
-   nil,   nil,   nil,   849,   849,   849,   849,   849,   849,   nil,
-   nil,   nil,   849,   849,   nil,   nil,   nil,   nil,   nil,   nil,
-   849,   nil,   nil,   849,   849,   849,   nil,   849,   849,   861,
-   861,   861,   861,   861,   861,   nil,   nil,   nil,   861,   861,
-   nil,   nil,   nil,   861,   nil,   861,   861,   861,   861,   861,
-   861,   861,   nil,   nil,   nil,   nil,   nil,   861,   861,   861,
-   861,   861,   861,   861,   nil,   nil,   861,   nil,   nil,   nil,
-   nil,   nil,   861,   861,   861,   861,   861,   861,   861,   861,
-   861,   861,   861,   861,   nil,   861,   861,   861,   nil,   861,
-   861,   nil,   861,   861,   861,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   861,   nil,   nil,   861,   nil,   nil,
-   861,   861,   nil,   nil,   861,   nil,   861,   nil,   nil,   nil,
-   861,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   861,   nil,
-   nil,   nil,   nil,   861,   861,   861,   861,   861,   861,   nil,
-   nil,   nil,   861,   861,   nil,   nil,   nil,   nil,   nil,   nil,
-   861,   nil,   nil,   861,   861,   861,   nil,   861,   861,   874,
-   874,   874,   874,   874,   874,   nil,   nil,   nil,   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,   874,   874,   874,   874,   874,   874,   874,   874,
-   874,   874,   874,   874,   nil,   874,   874,   874,   nil,   874,
-   874,   nil,   874,   874,   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,   874,   nil,   nil,   nil,
-   874,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   874,   nil,
-   nil,   nil,   nil,   874,   874,   874,   874,   874,   874,   nil,
-   nil,   nil,   874,   874,   nil,   nil,   nil,   nil,   nil,   nil,
-   874,   nil,   nil,   874,   874,   874,   nil,   874,   874,   884,
-   884,   884,   884,   884,   884,   nil,   nil,   nil,   884,   884,
-   nil,   nil,   nil,   884,   nil,   884,   884,   884,   884,   884,
-   884,   884,   nil,   nil,   nil,   nil,   nil,   884,   884,   884,
-   884,   884,   884,   884,   nil,   nil,   884,   nil,   nil,   nil,
-   nil,   nil,   884,   884,   884,   884,   884,   884,   884,   884,
-   884,   884,   884,   884,   nil,   884,   884,   884,   nil,   884,
-   884,   nil,   884,   884,   884,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   884,   nil,   nil,   884,   nil,   nil,
-   884,   884,   nil,   nil,   884,   nil,   884,   nil,   nil,   nil,
-   884,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   884,   nil,
-   nil,   nil,   nil,   884,   884,   884,   884,   884,   884,   nil,
-   nil,   nil,   884,   884,   nil,   nil,   nil,   nil,   nil,   nil,
-   884,   nil,   nil,   884,   884,   884,   nil,   884,   884,   885,
-   885,   885,   885,   885,   885,   nil,   nil,   nil,   885,   885,
-   nil,   nil,   nil,   885,   nil,   885,   885,   885,   885,   885,
-   885,   885,   nil,   nil,   nil,   nil,   nil,   885,   885,   885,
-   885,   885,   885,   885,   nil,   nil,   885,   nil,   nil,   nil,
-   nil,   nil,   885,   885,   885,   885,   885,   885,   885,   885,
-   885,   885,   885,   885,   nil,   885,   885,   885,   nil,   885,
-   885,   nil,   885,   885,   885,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   885,   nil,   nil,   885,   nil,   nil,
-   885,   885,   nil,   nil,   885,   nil,   885,   nil,   nil,   nil,
-   885,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   885,   nil,
-   nil,   nil,   nil,   885,   885,   885,   885,   885,   885,   nil,
-   nil,   nil,   885,   885,   nil,   nil,   nil,   nil,   nil,   nil,
-   885,   nil,   nil,   885,   885,   885,   nil,   885,   885,   935,
-   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,   935,   935,   935,   935,   935,   935,
-   935,   935,   935,   935,   nil,   935,   935,   935,   nil,   935,
-   935,   nil,   935,   935,   935,   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,   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,   935,   935,   nil,   935,   935,   936,
-   936,   936,   936,   936,   936,   nil,   nil,   nil,   936,   936,
-   nil,   nil,   nil,   936,   nil,   936,   936,   936,   936,   936,
-   936,   936,   nil,   nil,   nil,   nil,   nil,   936,   936,   936,
-   936,   936,   936,   936,   nil,   nil,   936,   nil,   nil,   nil,
-   nil,   nil,   936,   936,   936,   936,   936,   936,   936,   936,
-   936,   936,   936,   936,   nil,   936,   936,   936,   nil,   936,
-   936,   nil,   936,   936,   936,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   936,   nil,   nil,   936,   nil,   nil,
-   936,   936,   nil,   nil,   936,   nil,   936,   nil,   nil,   nil,
-   936,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   936,   nil,
-   nil,   nil,   nil,   936,   936,   936,   936,   936,   936,   nil,
-   nil,   nil,   936,   936,   nil,   nil,   nil,   nil,   nil,   nil,
-   936,   nil,   nil,   936,   936,   936,   nil,   936,   936,   948,
-   948,   948,   948,   948,   948,   nil,   nil,   nil,   948,   948,
-   nil,   nil,   nil,   948,   nil,   948,   948,   948,   948,   948,
-   948,   948,   nil,   nil,   nil,   nil,   nil,   948,   948,   948,
-   948,   948,   948,   948,   nil,   nil,   948,   nil,   nil,   nil,
-   nil,   nil,   948,   948,   948,   948,   948,   948,   948,   948,
-   948,   948,   948,   948,   nil,   948,   948,   948,   nil,   948,
-   948,   nil,   948,   948,   948,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   948,   nil,   nil,   948,   nil,   nil,
-   948,   948,   nil,   nil,   948,   nil,   948,   nil,   nil,   nil,
-   948,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   948,   nil,
-   nil,   nil,   nil,   948,   948,   948,   948,   948,   948,   nil,
-   nil,   nil,   948,   948,   nil,   nil,   nil,   nil,   nil,   nil,
-   948,   nil,   nil,   948,   948,   948,   nil,   948,   948,   995,
-   995,   995,   995,   995,   995,   nil,   nil,   nil,   995,   995,
-   nil,   nil,   nil,   995,   nil,   995,   995,   995,   995,   995,
-   995,   995,   nil,   nil,   nil,   nil,   nil,   995,   995,   995,
-   995,   995,   995,   995,   nil,   nil,   995,   nil,   nil,   nil,
-   nil,   nil,   995,   995,   995,   995,   995,   995,   995,   995,
-   995,   995,   995,   995,   nil,   995,   995,   995,   nil,   995,
-   995,   nil,   995,   995,   995,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   995,   nil,   nil,   995,   nil,   nil,
-   995,   995,   nil,   nil,   995,   nil,   995,   nil,   nil,   nil,
-   995,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   995,   nil,
-   nil,   nil,   nil,   995,   995,   995,   995,   995,   995,   nil,
-   nil,   nil,   995,   995,   nil,   nil,   nil,   nil,   nil,   nil,
-   995,   nil,   nil,   995,   995,   995,   nil,   995,   995,  1002,
-  1002,  1002,  1002,  1002,  1002,   nil,   nil,   nil,  1002,  1002,
-   nil,   nil,   nil,  1002,   nil,  1002,  1002,  1002,  1002,  1002,
-  1002,  1002,   nil,   nil,   nil,   nil,   nil,  1002,  1002,  1002,
-  1002,  1002,  1002,  1002,   nil,   nil,  1002,   nil,   nil,   nil,
-   nil,   nil,  1002,  1002,  1002,  1002,  1002,  1002,  1002,  1002,
-  1002,  1002,  1002,  1002,   nil,  1002,  1002,  1002,   nil,  1002,
-  1002,   nil,  1002,  1002,  1002,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1002,   nil,   nil,  1002,   nil,   nil,
-  1002,  1002,   nil,   nil,  1002,   nil,  1002,   nil,   nil,   nil,
-  1002,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1002,   nil,
-   nil,   nil,   nil,  1002,  1002,  1002,  1002,  1002,  1002,   nil,
-   nil,   nil,  1002,  1002,   nil,   nil,   nil,   nil,   nil,   nil,
-  1002,   nil,   nil,  1002,  1002,  1002,   nil,  1002,  1002,  1008,
-  1008,  1008,  1008,  1008,  1008,   nil,   nil,   nil,  1008,  1008,
-   nil,   nil,   nil,  1008,   nil,  1008,  1008,  1008,  1008,  1008,
-  1008,  1008,   nil,   nil,   nil,   nil,   nil,  1008,  1008,  1008,
-  1008,  1008,  1008,  1008,   nil,   nil,  1008,   nil,   nil,   nil,
-   nil,   nil,  1008,  1008,  1008,  1008,  1008,  1008,  1008,  1008,
-  1008,  1008,  1008,  1008,   nil,  1008,  1008,  1008,   nil,  1008,
-  1008,   nil,  1008,  1008,  1008,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1008,   nil,   nil,  1008,   nil,   nil,
-  1008,  1008,   nil,   nil,  1008,   nil,  1008,   nil,   nil,   nil,
-  1008,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1008,   nil,
-   nil,   nil,   nil,  1008,  1008,  1008,  1008,  1008,  1008,   nil,
-   nil,   nil,  1008,  1008,   nil,   nil,   nil,   nil,   nil,   nil,
-  1008,   nil,   nil,  1008,  1008,  1008,   nil,  1008,  1008,  1009,
-  1009,  1009,  1009,  1009,  1009,   nil,   nil,   nil,  1009,  1009,
-   nil,   nil,   nil,  1009,   nil,  1009,  1009,  1009,  1009,  1009,
-  1009,  1009,   nil,   nil,   nil,   nil,   nil,  1009,  1009,  1009,
-  1009,  1009,  1009,  1009,   nil,   nil,  1009,   nil,   nil,   nil,
-   nil,   nil,  1009,  1009,  1009,  1009,  1009,  1009,  1009,  1009,
-  1009,  1009,  1009,  1009,   nil,  1009,  1009,  1009,   nil,  1009,
-  1009,   nil,  1009,  1009,  1009,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1009,   nil,   nil,  1009,   nil,   nil,
-  1009,  1009,   nil,   nil,  1009,   nil,  1009,   nil,   nil,   nil,
-  1009,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1009,   nil,
-   nil,   nil,   nil,  1009,  1009,  1009,  1009,  1009,  1009,   nil,
-   nil,   nil,  1009,  1009,   nil,   nil,   nil,   nil,   nil,   nil,
-  1009,   nil,   nil,  1009,  1009,  1009,   nil,  1009,  1009,     8,
-     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
-   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
-     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
-     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
-   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
-     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
-   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
-     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
-   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
-   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
-   nil,   nil,     8,     8,     8,   nil,     8,     8,    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,   nil,    23,    23,    23,    23,    23,
-    23,    23,   nil,   nil,    23,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,    23,    23,    23,    23,    23,    23,
-    23,    23,   nil,    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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,    23,    23,    23,   nil,    23,    23,    32,    32,    32,
-   nil,    32,   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,
-    32,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
-   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,
-    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,    32,    32,    32,    32,    32,    32,    32,
-    32,    32,    32,    32,    32,   nil,    32,    32,   nil,    32,
-    32,    32,   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,    32,    32,   nil,
-   nil,    32,   nil,    32,   nil,    32,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,    32,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,
-    32,    32,    32,   nil,    32,    32,    33,    33,    33,   nil,
-    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,
-   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
-   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
-   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,
-   nil,   nil,    33,    33,    33,    33,    33,    33,    33,    33,
-    33,    33,    33,    33,   nil,    33,    33,   nil,    33,    33,
-    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,
-    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
-    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,
-   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,
-    33,    33,   nil,    33,    33,    34,    34,    34,   nil,    34,
-   nil,   nil,   nil,    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,    34,
-    34,    34,    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,    34,
-    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,    34,
-    34,   nil,    34,    34,    37,    37,    37,   nil,    37,   nil,
-   nil,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,    37,
-    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,   nil,
-   nil,    37,    37,    37,    37,    37,    37,    37,   nil,   nil,
-    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,
-    37,    37,    37,    37,    37,    37,    37,    37,   nil,    37,
-    37,    37,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,
-   nil,   nil,   nil,   nil,   968,   nil,   968,   968,   968,   968,
-   968,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
-   968,    37,   nil,   nil,    37,    37,   nil,   nil,    37,   nil,
-    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   968,   nil,   nil,   nil,   nil,    37,    37,    37,
-    37,    37,    37,   968,   968,   nil,    37,    37,   nil,   nil,
-   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,    37,
-   nil,    37,    37,    38,    38,    38,   nil,    38,   nil,   nil,
-   nil,    38,    38,   nil,   nil,   nil,    38,   968,    38,    38,
-    38,    38,    38,    38,    38,   nil,   nil,   nil,   nil,   nil,
-    38,    38,    38,    38,    38,    38,    38,   nil,   nil,    38,
-   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,
-    38,    38,    38,    38,    38,    38,    38,   nil,    38,    38,
-    38,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,   nil,
-   nil,   nil,   nil,   970,   nil,   970,   970,   970,   970,   970,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   970,
-    38,   nil,   nil,    38,    38,   nil,   nil,    38,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   970,   nil,   nil,   nil,   nil,    38,    38,    38,    38,
-    38,    38,   970,   970,   nil,    38,    38,   nil,   nil,   nil,
-    38,   nil,   nil,    38,   nil,   nil,    38,    38,    38,   nil,
-    38,    38,    45,    45,    45,   nil,    45,   nil,   nil,   nil,
-    45,    45,   nil,   nil,   nil,    45,   970,    45,    45,    45,
-    45,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,    45,
-    45,    45,    45,    45,    45,    45,   nil,   nil,    45,   nil,
-   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,
-    45,    45,    45,    45,    45,    45,   nil,    45,    45,    45,
-   nil,    45,    45,   nil,    45,    45,    45,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
-   nil,   nil,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
-   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    45,   nil,   nil,   nil,   nil,    45,    45,    45,    45,    45,
-    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,
-   nil,   nil,    45,   nil,   nil,    45,    45,    45,   nil,    45,
-    45,    46,    46,    46,   nil,    46,   nil,   nil,   nil,    46,
-    46,   nil,   nil,   nil,    46,   nil,    46,    46,    46,    46,
-    46,    46,    46,   nil,   nil,   nil,   nil,   nil,    46,    46,
-    46,    46,    46,    46,    46,   nil,   nil,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,    46,
-    46,    46,    46,    46,    46,   nil,    46,    46,    46,   nil,
-    46,    46,   nil,    46,    46,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,   nil,
-   nil,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,
-   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
-   nil,   nil,   nil,   nil,    46,    46,    46,    46,    46,    46,
-   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,    46,   nil,   nil,    46,    46,    46,   nil,    46,    46,
-    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,    48,
-   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,    48,
-    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,    48,
-    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,    48,
-    48,    48,    48,    48,   nil,    48,    48,    48,   nil,    48,
-    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,
-    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,   nil,
-   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,    48,    48,    48,   nil,    48,    48,    62,
-    62,    62,    62,    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,    62,    62,   nil,    62,    62,    62,    62,    62,    62,
-    62,    62,    62,   nil,    62,    62,    62,   nil,    62,    62,
-   nil,    62,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    62,   nil,   nil,    62,   nil,   nil,    62,
-    62,   nil,   nil,    62,   nil,    62,   nil,   nil,   nil,    62,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,
-   nil,   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,
-   nil,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,    62,
-   nil,   nil,    62,    62,    62,   nil,    62,    62,    67,    67,
-    67,   nil,    67,   nil,   nil,   nil,    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,    67,   nil,   nil,   nil,
-   nil,    67,    67,    67,    67,    67,    67,   nil,   nil,   nil,
-    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,    67,    67,    67,   nil,    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,    68,
-    68,    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,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,
-    68,    68,    68,    68,    68,    68,   nil,   nil,   nil,    68,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-    68,    68,    68,   nil,    68,    68,    71,    71,    71,   nil,
-    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
-   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
-   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
-   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
-   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
-   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
-    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
-    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
-    71,    71,   nil,    71,    71,    72,    72,    72,   nil,    72,
-   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
-    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
-   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
-   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
-    72,    72,    72,   nil,    72,    72,   nil,   nil,   nil,    72,
-   nil,   nil,   nil,   nil,   nil,   986,   nil,   986,   986,   986,
-   986,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
-   nil,   986,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   986,   nil,   nil,   nil,   nil,    72,    72,
-    72,    72,    72,    72,   986,   986,   nil,    72,    72,   nil,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
-    72,   nil,    72,    72,   128,   128,   128,   128,   128,   nil,
-   nil,   nil,   128,   128,   nil,   nil,   nil,   128,   986,   128,
-   128,   128,   128,   128,   128,   128,   nil,   nil,   nil,   nil,
-   nil,   128,   128,   128,   128,   128,   128,   128,   nil,   nil,
-   128,   nil,   nil,   nil,   nil,   nil,   128,   128,   128,   128,
-   128,   128,   128,   128,   128,   128,   128,   128,   nil,   128,
-   128,   128,   nil,   128,   128,   nil,   128,   128,   128,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,
-   nil,   128,   nil,   nil,   128,   128,   nil,   nil,   128,   nil,
-   128,   nil,   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   128,   nil,   nil,   nil,   nil,   128,   128,   128,
-   128,   128,   128,   nil,   nil,   nil,   128,   128,   nil,   nil,
-   nil,   nil,   nil,   128,   128,   nil,   nil,   128,   128,   128,
-   nil,   128,   128,   133,   133,   133,   nil,   133,   nil,   nil,
-   nil,   133,   133,   nil,   nil,   nil,   133,   nil,   133,   133,
-   133,   133,   133,   133,   133,   nil,   nil,   nil,   nil,   nil,
-   133,   133,   133,   133,   133,   133,   133,   nil,   nil,   133,
-   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,
-   133,   133,   133,   133,   133,   133,   133,   nil,   133,   133,
-   133,   nil,   133,   133,   nil,   133,   133,   133,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,
-   133,   nil,   nil,   133,   133,   nil,   nil,   133,   nil,   nil,
-   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   133,   nil,   nil,   nil,   nil,   133,   133,   133,   133,
-   133,   133,   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,
-   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,   nil,
-   133,   133,   134,   134,   134,   nil,   134,   nil,   nil,   nil,
-   134,   134,   nil,   nil,   nil,   134,   nil,   134,   134,   134,
-   134,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,   134,
-   134,   134,   134,   134,   134,   134,   nil,   nil,   134,   nil,
-   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   134,
-   134,   134,   134,   134,   134,   134,   nil,   134,   134,   134,
-   nil,   134,   134,   nil,   134,   134,   134,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,
-   nil,   nil,   134,   134,   nil,   nil,   134,   nil,   nil,   nil,
-   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   134,   nil,   nil,   nil,   nil,   134,   134,   134,   134,   134,
-   134,   nil,   nil,   nil,   134,   134,   nil,   nil,   nil,   nil,
-   nil,   nil,   134,   nil,   nil,   134,   134,   134,   nil,   134,
-   134,   135,   135,   135,   nil,   135,   nil,   nil,   nil,   135,
-   135,   nil,   nil,   nil,   135,   nil,   135,   135,   135,   135,
-   135,   135,   135,   nil,   nil,   nil,   nil,   nil,   135,   135,
-   135,   135,   135,   135,   135,   nil,   nil,   135,   nil,   nil,
-   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   135,   135,
-   135,   135,   135,   135,   135,   nil,   135,   135,   135,   nil,
-   135,   135,   nil,   135,   135,   135,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   nil,
-   nil,   135,   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,
-   nil,   135,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,
-   nil,   nil,   nil,   nil,   135,   135,   135,   135,   135,   135,
-   nil,   nil,   nil,   135,   135,   nil,   nil,   nil,   nil,   nil,
-   nil,   135,   nil,   nil,   135,   135,   135,   nil,   135,   135,
-   136,   136,   136,   nil,   136,   nil,   nil,   nil,   136,   136,
-   nil,   nil,   nil,   136,   nil,   136,   136,   136,   136,   136,
-   136,   136,   nil,   nil,   nil,   nil,   nil,   136,   136,   136,
-   136,   136,   136,   136,   nil,   nil,   136,   nil,   nil,   nil,
-   nil,   nil,   nil,   136,   nil,   nil,   136,   136,   136,   136,
-   136,   136,   136,   136,   nil,   136,   136,   136,   nil,   136,
-   136,   nil,   136,   136,   136,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,
-   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
-   nil,   nil,   nil,   136,   136,   136,   136,   136,   136,   nil,
-   nil,   nil,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   136,   136,   136,   nil,   136,   136,   137,
-   137,   137,   137,   137,   nil,   nil,   nil,   137,   137,   nil,
-   nil,   nil,   137,   nil,   137,   137,   137,   137,   137,   137,
-   137,   nil,   nil,   nil,   nil,   nil,   137,   137,   137,   137,
-   137,   137,   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,
-   nil,   137,   137,   nil,   137,   137,   137,   137,   137,   137,
-   137,   137,   137,   nil,   137,   137,   137,   nil,   137,   137,
-   nil,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,   nil,   137,
-   137,   nil,   nil,   137,   nil,   137,   nil,   nil,   nil,   137,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   nil,   nil,   137,   137,   137,   137,   137,   137,   nil,   nil,
-   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,
-   nil,   nil,   137,   137,   137,   nil,   137,   137,   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,   nil,   222,   222,   222,   222,   222,
-   222,   222,   nil,   nil,   222,   nil,   nil,   nil,   nil,   nil,
-   nil,   222,   nil,   nil,   222,   222,   222,   222,   222,   222,
-   222,   222,   nil,   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,   222,   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,   nil,   nil,   nil,   222,   nil,
-   nil,   222,   222,   222,   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,   nil,   223,   223,   223,   223,   223,   223,
-   223,   nil,   nil,   223,   nil,   nil,   nil,   nil,   nil,   nil,
-   223,   nil,   nil,   223,   223,   223,   223,   223,   223,   223,
-   223,   nil,   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,   223,   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,   nil,   nil,   nil,   223,   nil,   nil,
-   223,   223,   223,   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,   nil,   224,   224,   224,   224,   224,   224,   224,
-   nil,   nil,   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,
-   nil,   nil,   224,   224,   224,   224,   224,   224,   224,   224,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,
-   224,   224,   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,   nil,   225,   225,   225,   225,   225,   225,   225,   nil,
-   nil,   225,   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,
-   nil,   225,   225,   225,   225,   225,   225,   225,   225,   nil,
-   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,   225,   225,
-   225,   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,
-   nil,   226,   226,   226,   226,   226,   226,   226,   nil,   nil,
-   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,
-   226,   226,   226,   226,   226,   226,   226,   226,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,   226,
-   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,   nil,
-   227,   227,   227,   227,   227,   227,   227,   nil,   nil,   227,
-   nil,   nil,   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,
-   227,   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,   227,
-   nil,   227,   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,
-   nil,   nil,   nil,   227,   nil,   227,   227,   227,   227,   nil,
-   227,   227,   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,   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,
-   232,   nil,   nil,   nil,   nil,   232,   232,   232,   232,   232,
-   232,   nil,   nil,   nil,   232,   232,   nil,   nil,   nil,   nil,
-   nil,   nil,   232,   nil,   nil,   232,   232,   232,   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,   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,   233,
-   nil,   nil,   nil,   nil,   233,   233,   233,   233,   233,   233,
-   nil,   nil,   nil,   233,   233,   nil,   nil,   nil,   nil,   nil,
-   nil,   233,   nil,   nil,   233,   233,   233,   nil,   233,   233,
-   234,   234,   234,   nil,   234,   nil,   nil,   nil,   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,   234,   nil,
-   nil,   nil,   nil,   234,   234,   234,   234,   234,   234,   nil,
-   nil,   nil,   234,   234,   234,   nil,   nil,   nil,   nil,   nil,
-   234,   nil,   nil,   234,   234,   234,   nil,   234,   234,   245,
-   245,   245,   nil,   245,   nil,   nil,   nil,   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,   245,   nil,   nil,
-   nil,   nil,   245,   245,   245,   245,   245,   245,   nil,   nil,
-   nil,   245,   245,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   245,   245,   245,   nil,   245,   245,   248,   248,
-   248,   nil,   248,   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,
-   nil,   248,   248,   248,   248,   248,   248,   nil,   nil,   nil,
-   248,   248,   nil,   nil,   nil,   nil,   nil,   nil,   248,   nil,
-   nil,   248,   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,   nil,   nil,
-   249,   249,   249,   249,   249,   249,   nil,   nil,   nil,   249,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   249,   249,   249,   nil,   249,   249,   250,   250,   250,   nil,
-   250,   nil,   nil,   nil,   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,   250,   nil,   nil,   nil,   nil,   250,
-   250,   250,   250,   250,   250,   nil,   nil,   nil,   250,   250,
-   nil,   nil,   nil,   nil,   nil,   nil,   250,   nil,   nil,   250,
-   250,   250,   nil,   250,   250,   251,   251,   251,   nil,   251,
-   nil,   nil,   nil,   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,   251,   nil,   nil,   nil,   nil,   251,   251,
-   251,   251,   251,   251,   nil,   nil,   nil,   251,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,   251,   nil,   nil,   251,   251,
-   251,   nil,   251,   251,   252,   252,   252,   nil,   252,   nil,
-   nil,   nil,   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,   252,   nil,   nil,   nil,   nil,   252,   252,   252,
-   252,   252,   252,   nil,   nil,   nil,   252,   252,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   252,   252,   252,
-   nil,   252,   252,   253,   253,   253,   nil,   253,   nil,   nil,
-   nil,   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,   253,   nil,   nil,   nil,   nil,   253,   253,   253,   253,
-   253,   253,   nil,   nil,   nil,   253,   253,   nil,   nil,   nil,
-   nil,   nil,   nil,   253,   nil,   nil,   253,   253,   253,   nil,
-   253,   253,   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,   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,
-   254,   nil,   nil,   nil,   nil,   254,   254,   254,   254,   254,
-   254,   nil,   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,
-   nil,   nil,   254,   nil,   nil,   254,   254,   254,   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,   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,   255,
-   nil,   nil,   nil,   nil,   255,   255,   255,   255,   255,   255,
-   nil,   nil,   nil,   255,   255,   nil,   nil,   nil,   nil,   nil,
-   nil,   255,   nil,   nil,   255,   255,   255,   nil,   255,   255,
-   256,   256,   256,   nil,   256,   nil,   nil,   nil,   256,   256,
-   nil,   nil,   nil,   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,   256,   256,
-   256,   256,   256,   256,   nil,   256,   256,   256,   nil,   256,
-   256,   nil,   256,   256,   256,   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,   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,   nil,   nil,   nil,
-   256,   nil,   nil,   256,   256,   256,   nil,   256,   256,   257,
-   257,   257,   nil,   257,   nil,   nil,   nil,   257,   257,   nil,
-   nil,   nil,   257,   nil,   257,   257,   257,   257,   257,   257,
-   257,   nil,   nil,   nil,   nil,   nil,   257,   257,   257,   257,
-   257,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   257,   257,   257,   257,   257,
-   257,   257,   257,   nil,   257,   257,   257,   nil,   257,   257,
-   nil,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,   nil,   257,
-   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   257,   257,   257,   257,   257,   257,   nil,   nil,
-   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   257,   257,   257,   nil,   257,   257,   258,   258,
-   258,   nil,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,
-   nil,   258,   nil,   258,   258,   258,   258,   258,   258,   258,
-   nil,   nil,   nil,   nil,   nil,   258,   258,   258,   258,   258,
-   258,   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,
-   nil,   258,   nil,   nil,   258,   258,   258,   258,   258,   258,
-   258,   258,   nil,   258,   258,   258,   nil,   258,   258,   nil,
-   258,   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   258,   nil,   nil,   258,   nil,   nil,   258,   258,
-   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,
-   nil,   258,   258,   258,   258,   258,   258,   nil,   nil,   nil,
-   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   258,   258,   258,   nil,   258,   258,   259,   259,   259,
-   nil,   259,   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,
-   259,   nil,   259,   259,   259,   259,   259,   259,   259,   nil,
-   nil,   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,
-   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,
-   259,   nil,   nil,   259,   259,   259,   259,   259,   259,   259,
-   259,   nil,   259,   259,   259,   nil,   259,   259,   nil,   259,
-   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   259,   nil,   nil,   259,   nil,   nil,   259,   259,   nil,
-   nil,   259,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,
-   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,   259,
-   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   259,   259,   259,   nil,   259,   259,   260,   260,   260,   nil,
-   260,   nil,   nil,   nil,   260,   260,   nil,   nil,   nil,   260,
-   nil,   260,   260,   260,   260,   260,   260,   260,   nil,   nil,
-   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   260,
-   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,
-   nil,   nil,   260,   260,   260,   260,   260,   260,   260,   260,
-   nil,   260,   260,   260,   nil,   260,   260,   nil,   260,   260,
-   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   260,   nil,   nil,   260,   260,   nil,   nil,
-   260,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   260,
-   260,   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,
-   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,
-   260,   260,   nil,   260,   260,   261,   261,   261,   nil,   261,
-   nil,   nil,   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,   nil,
-   261,   261,   261,   nil,   261,   261,   nil,   261,   261,   261,
-   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,   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,   nil,   nil,   nil,   261,   nil,   nil,   261,   261,
-   261,   nil,   261,   261,   262,   262,   262,   nil,   262,   nil,
-   nil,   nil,   262,   262,   nil,   nil,   nil,   262,   nil,   262,
-   262,   262,   262,   262,   262,   262,   nil,   nil,   nil,   nil,
-   nil,   262,   262,   262,   262,   262,   262,   262,   nil,   nil,
-   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,
-   262,   262,   262,   262,   262,   262,   262,   262,   nil,   262,
-   262,   262,   nil,   262,   262,   nil,   262,   262,   262,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,
-   nil,   262,   nil,   nil,   262,   262,   nil,   nil,   262,   nil,
-   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,   262,   262,
-   262,   262,   262,   nil,   nil,   nil,   262,   262,   nil,   nil,
-   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,   262,
-   nil,   262,   262,   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,   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,   nil,   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,   nil,
-   nil,   nil,   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,   nil,   nil,   nil,
-   nil,   nil,   nil,   263,   nil,   nil,   263,   263,   263,   nil,
-   263,   263,   264,   264,   264,   nil,   264,   nil,   nil,   nil,
-   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,   nil,   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,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   264,   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,
-   264,   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,
-   264,   265,   265,   265,   nil,   265,   nil,   nil,   nil,   265,
-   265,   nil,   nil,   nil,   265,   nil,   265,   265,   265,   265,
-   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   265,   265,
-   265,   265,   265,   265,   265,   nil,   nil,   265,   nil,   nil,
-   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,
-   265,   265,   265,   265,   265,   nil,   265,   265,   265,   nil,
-   265,   265,   nil,   265,   265,   265,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   nil,
-   nil,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,
-   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,
-   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,   265,
-   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,   nil,   nil,
-   nil,   265,   nil,   nil,   265,   265,   265,   nil,   265,   265,
-   266,   266,   266,   nil,   266,   nil,   nil,   nil,   266,   266,
-   nil,   nil,   nil,   266,   nil,   266,   266,   266,   266,   266,
-   266,   266,   nil,   nil,   nil,   nil,   nil,   266,   266,   266,
-   266,   266,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,
-   nil,   nil,   nil,   266,   nil,   nil,   266,   266,   266,   266,
-   266,   266,   266,   266,   nil,   266,   266,   266,   nil,   266,
-   266,   nil,   266,   266,   266,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,
-   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
-   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,   nil,
-   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,
-   266,   nil,   nil,   266,   266,   266,   nil,   266,   266,   267,
-   267,   267,   nil,   267,   nil,   nil,   nil,   267,   267,   nil,
-   nil,   nil,   267,   nil,   267,   267,   267,   267,   267,   267,
-   267,   nil,   nil,   nil,   nil,   nil,   267,   267,   267,   267,
-   267,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,
-   nil,   nil,   267,   nil,   nil,   267,   267,   267,   267,   267,
-   267,   267,   267,   nil,   267,   267,   267,   nil,   267,   267,
-   nil,   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,   nil,   267,
-   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
-   nil,   nil,   267,   267,   267,   267,   267,   267,   nil,   nil,
-   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   267,   267,   267,   nil,   267,   267,   268,   268,
-   268,   nil,   268,   nil,   nil,   nil,   268,   268,   nil,   nil,
-   nil,   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,   268,   268,   268,   268,
-   268,   268,   nil,   268,   268,   268,   nil,   268,   268,   nil,
-   268,   268,   268,   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,   268,
-   nil,   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,
-   nil,   268,   268,   268,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,
-   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,
-   269,   nil,   nil,   269,   269,   269,   269,   269,   269,   269,
-   269,   nil,   269,   269,   269,   nil,   269,   269,   nil,   269,
-   269,   269,   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,   269,   nil,
-   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,
-   269,   269,   269,   nil,   269,   269,   274,   274,   274,   nil,
-   274,   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   274,
-   nil,   274,   274,   274,   274,   274,   274,   274,   nil,   nil,
-   nil,   nil,   nil,   274,   274,   274,   274,   274,   274,   274,
-   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,
-   nil,   nil,   274,   274,   274,   274,   274,   274,   274,   274,
-   nil,   274,   274,   274,   nil,   274,   274,   nil,   274,   274,
-   274,   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,   274,   274,   nil,   nil,
-   274,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,
-   274,   274,   274,   274,   274,   nil,   nil,   nil,   274,   274,
-   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,
-   274,   274,   nil,   274,   274,   282,   282,   282,   nil,   282,
-   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,   282,   nil,
-   282,   282,   282,   282,   282,   282,   282,   nil,   nil,   nil,
-   nil,   nil,   282,   282,   282,   282,   282,   282,   282,   nil,
-   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   282,   282,   282,   282,   282,   282,   282,   282,   282,
-   282,   282,   282,   nil,   282,   282,   nil,   282,   282,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   nil,   282,   nil,   nil,   282,   282,   nil,   nil,   282,
-   nil,   282,   nil,   282,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   282,   282,
-   282,   282,   282,   282,   nil,   nil,   nil,   282,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   282,   282,   282,
-   282,   nil,   282,   282,   283,   283,   283,   nil,   283,   nil,
-   nil,   nil,   283,   283,   nil,   nil,   nil,   283,   nil,   283,
-   283,   283,   283,   283,   283,   283,   nil,   nil,   nil,   nil,
-   nil,   283,   283,   283,   283,   283,   283,   283,   nil,   nil,
-   283,   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,
-   283,   283,   283,   283,   283,   283,   283,   283,   283,   283,
-   283,   283,   nil,   283,   283,   nil,   283,   283,   283,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,
-   nil,   283,   nil,   nil,   283,   283,   nil,   nil,   283,   nil,
-   283,   nil,   283,   nil,   283,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   283,   nil,   nil,   nil,   nil,   283,   283,   283,
-   283,   283,   283,   nil,   nil,   nil,   283,   283,   nil,   nil,
-   nil,   nil,   nil,   nil,   283,   nil,   283,   283,   283,   283,
-   nil,   283,   283,   292,   292,   292,   nil,   292,   nil,   nil,
-   nil,   292,   292,   nil,   nil,   nil,   292,   nil,   292,   292,
-   292,   292,   292,   292,   292,   nil,   nil,   nil,   nil,   nil,
-   292,   292,   292,   292,   292,   292,   292,   nil,   nil,   292,
-   nil,   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,   292,
-   292,   292,   292,   292,   292,   292,   292,   292,   292,   292,
-   292,   nil,   292,   292,   nil,   292,   292,   292,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,
-   292,   nil,   nil,   292,   292,   nil,   nil,   292,   nil,   292,
-   nil,   292,   nil,   292,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   292,   nil,   nil,   nil,   nil,   292,   292,   292,   292,
-   292,   292,   nil,   nil,   nil,   292,   292,   292,   nil,   nil,
-   nil,   nil,   nil,   292,   nil,   292,   292,   292,   292,   nil,
-   292,   292,   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,   nil,   299,
-   299,   299,   299,   299,   299,   299,   nil,   nil,   299,   nil,
-   nil,   nil,   nil,   nil,   nil,   299,   nil,   nil,   299,   299,
-   299,   299,   299,   299,   299,   299,   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   299,   nil,   nil,   299,   299,   299,   nil,   299,
-   299,   301,   301,   301,   nil,   301,   nil,   nil,   nil,   301,
-   301,   nil,   nil,   nil,   301,   nil,   301,   301,   301,   301,
-   301,   301,   301,   nil,   nil,   nil,   nil,   nil,   301,   301,
-   301,   301,   301,   301,   301,   nil,   nil,   301,   nil,   nil,
-   nil,   nil,   nil,   nil,   301,   nil,   nil,   301,   301,   301,
-   301,   301,   301,   301,   301,   nil,   301,   301,   301,   nil,
-   301,   301,   nil,   301,   301,   301,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,   301,   nil,
-   nil,   301,   301,   nil,   nil,   301,   nil,   nil,   nil,   nil,
-   nil,   301,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   301,
-   nil,   nil,   nil,   nil,   301,   301,   301,   301,   301,   301,
-   nil,   nil,   nil,   301,   301,   nil,   nil,   nil,   nil,   nil,
-   nil,   301,   nil,   nil,   301,   301,   301,   nil,   301,   301,
-   304,   304,   304,   nil,   304,   nil,   nil,   nil,   304,   304,
-   nil,   nil,   nil,   304,   nil,   304,   304,   304,   304,   304,
-   304,   304,   nil,   nil,   nil,   nil,   nil,   304,   304,   304,
-   304,   304,   304,   304,   nil,   nil,   304,   nil,   nil,   nil,
-   nil,   nil,   nil,   304,   nil,   nil,   304,   304,   304,   304,
-   304,   304,   304,   304,   nil,   304,   304,   304,   nil,   304,
-   304,   nil,   304,   304,   304,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,   nil,   nil,
-   304,   304,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
-   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,
-   nil,   nil,   nil,   304,   304,   304,   304,   304,   304,   nil,
-   nil,   nil,   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,
-   304,   nil,   nil,   304,   304,   304,   nil,   304,   304,   305,
-   305,   305,   nil,   305,   nil,   nil,   nil,   305,   305,   nil,
-   nil,   nil,   305,   nil,   305,   305,   305,   305,   305,   305,
-   305,   nil,   nil,   nil,   nil,   nil,   305,   305,   305,   305,
-   305,   305,   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,
-   nil,   nil,   305,   nil,   nil,   305,   305,   305,   305,   305,
-   305,   305,   305,   nil,   305,   305,   305,   nil,   305,   305,
-   nil,   305,   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   305,   nil,   nil,   305,   nil,   nil,   305,
-   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,   nil,   305,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
-   nil,   nil,   305,   305,   305,   305,   305,   305,   nil,   nil,
-   nil,   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,   305,
-   nil,   nil,   305,   305,   305,   nil,   305,   305,   311,   311,
-   311,   311,   311,   nil,   nil,   nil,   311,   311,   nil,   nil,
-   nil,   311,   nil,   311,   311,   311,   311,   311,   311,   311,
-   nil,   nil,   nil,   nil,   nil,   311,   311,   311,   311,   311,
-   311,   311,   nil,   nil,   311,   nil,   nil,   nil,   nil,   nil,
-   311,   311,   nil,   311,   311,   311,   311,   311,   311,   311,
-   311,   311,   nil,   311,   311,   311,   nil,   311,   311,   nil,
-   311,   311,   311,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   311,   nil,   nil,   311,   nil,   nil,   311,   311,
-   nil,   nil,   311,   nil,   311,   nil,   nil,   nil,   311,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,   nil,   nil,
-   nil,   311,   311,   311,   311,   311,   311,   nil,   nil,   nil,
-   311,   311,   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,
-   nil,   311,   311,   311,   nil,   311,   311,   319,   319,   319,
-   nil,   319,   nil,   nil,   nil,   319,   319,   nil,   nil,   nil,
-   319,   nil,   319,   319,   319,   319,   319,   319,   319,   nil,
-   nil,   nil,   nil,   nil,   319,   319,   319,   319,   319,   319,
-   319,   nil,   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,
-   319,   nil,   nil,   319,   319,   319,   319,   319,   319,   319,
-   319,   nil,   319,   319,   319,   nil,   319,   319,   nil,   nil,
-   nil,   319,   nil,   nil,   nil,   nil,   nil,  1050,   nil,  1050,
-  1050,  1050,  1050,  1050,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   319,   nil,  1050,   319,   nil,   nil,   319,   319,   nil,
-   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1050,   nil,   nil,   nil,   nil,
-   319,   319,   319,   319,   319,   319,  1050,  1050,   nil,   319,
-   319,   nil,   nil,   nil,   319,   nil,   nil,   319,   nil,   nil,
-   319,   319,   319,   nil,   319,   319,   336,   336,   336,   nil,
-   336,   nil,   nil,   nil,   336,   336,   nil,   nil,   nil,   336,
-  1050,   336,   336,   336,   336,   336,   336,   336,   nil,   nil,
-   nil,   nil,   nil,   336,   336,   336,   336,   336,   336,   336,
-   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,
-   nil,   nil,   336,   336,   336,   336,   336,   336,   336,   336,
-   nil,   336,   336,   336,   nil,   336,   336,   nil,   nil,   nil,
-   336,   nil,   nil,   nil,   nil,   nil,  1059,   nil,  1059,  1059,
-  1059,  1059,  1059,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   336,   nil,  1059,   336,   nil,   nil,   336,   336,   nil,   nil,
-   336,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1059,   nil,   nil,   nil,   nil,   336,
-   336,   336,   336,   336,   336,  1059,  1059,   nil,   336,   336,
-   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,   336,
-   336,   336,   nil,   336,   336,   343,   343,   343,   nil,   343,
-   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,   343,  1059,
-   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   nil,
-   nil,   nil,   343,   343,   343,   343,   343,   343,   343,   nil,
-   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,
-   nil,   343,   343,   343,   343,   343,   343,   343,   343,   nil,
-   343,   343,   343,   nil,   343,   343,   nil,   343,   343,   343,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,
-   nil,   nil,   343,   nil,   nil,   343,   343,   nil,   nil,   343,
-   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   343,   343,
-   343,   343,   343,   343,   nil,   nil,   nil,   343,   343,   nil,
-   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,   343,
-   343,   nil,   343,   343,   345,   345,   345,   nil,   345,   nil,
-   nil,   nil,   345,   345,   nil,   nil,   nil,   345,   nil,   345,
-   345,   345,   345,   345,   345,   345,   nil,   nil,   nil,   nil,
-   nil,   345,   345,   345,   345,   345,   345,   345,   nil,   nil,
-   345,   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,
-   345,   345,   345,   345,   345,   345,   345,   345,   nil,   345,
-   345,   345,   nil,   345,   345,   nil,   345,   345,   345,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,
-   nil,   345,   345,   nil,   345,   345,   nil,   nil,   345,   nil,
-   nil,   nil,   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   345,   nil,   nil,   nil,   nil,   345,   345,   345,
-   345,   345,   345,   nil,   nil,   nil,   345,   345,   nil,   nil,
-   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,   345,   345,
-   nil,   345,   345,   349,   349,   349,   nil,   349,   nil,   nil,
-   nil,   349,   349,   nil,   nil,   nil,   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,   349,   349,   349,   349,   349,   349,   349,   349,   349,
-   349,   nil,   349,   349,   nil,   349,   349,   349,   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,   349,   nil,   nil,   349,   nil,   349,
-   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,
-   nil,   nil,   nil,   349,   nil,   349,   349,   349,   349,   nil,
-   349,   349,   350,   350,   350,   nil,   350,   nil,   nil,   nil,
-   350,   350,   nil,   nil,   nil,   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,
-   350,   350,   350,   350,   350,   350,   350,   350,   350,   350,
-   nil,   350,   350,   nil,   350,   350,   350,   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,   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,   nil,
-   nil,   nil,   350,   nil,   350,   350,   350,   350,   nil,   350,
-   350,   355,   355,   355,   nil,   355,   nil,   nil,   nil,   355,
-   355,   nil,   nil,   nil,   355,   nil,   355,   355,   355,   355,
-   355,   355,   355,   nil,   nil,   nil,   nil,   nil,   355,   355,
-   355,   355,   355,   355,   355,   nil,   nil,   355,   nil,   nil,
-   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,   355,   355,
-   355,   355,   355,   355,   355,   nil,   355,   355,   355,   nil,
-   355,   355,   nil,   355,   355,   355,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,   nil,
-   nil,   355,   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,
-   nil,   355,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,
-   nil,   nil,   nil,   nil,   355,   355,   355,   355,   355,   355,
-   nil,   nil,   nil,   355,   355,   nil,   nil,   nil,   nil,   nil,
-   nil,   355,   nil,   nil,   355,   355,   355,   nil,   355,   355,
-   369,   369,   369,   nil,   369,   nil,   nil,   nil,   369,   369,
-   nil,   nil,   nil,   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,   369,   369,
-   369,   369,   369,   369,   nil,   369,   369,   369,   nil,   369,
-   369,   nil,   nil,   nil,   369,   nil,   nil,   nil,   nil,   nil,
-  1061,   nil,  1061,  1061,  1061,  1061,  1061,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   369,   nil,  1061,   369,   nil,   nil,
-   369,   369,   nil,   nil,   369,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1061,   nil,
-   nil,   nil,   nil,   369,   369,   369,   369,   369,   369,  1061,
-  1061,   nil,   369,   369,   nil,   nil,   nil,   nil,   nil,   nil,
-   369,   nil,   nil,   369,   369,   369,   nil,   369,   369,   371,
-   371,   371,   nil,   371,   nil,   nil,   nil,   371,   371,   nil,
-   nil,   nil,   371,  1061,   371,   371,   371,   371,   371,   371,
-   371,   nil,   nil,   nil,   nil,   nil,   371,   371,   371,   371,
-   371,   371,   371,   nil,   nil,   371,   nil,   nil,   nil,   nil,
-   nil,   nil,   371,   nil,   nil,   371,   371,   371,   371,   371,
-   371,   371,   371,   nil,   371,   371,   371,   nil,   371,   371,
-   nil,   nil,   nil,   371,   nil,   nil,   nil,   nil,   nil,  1063,
-   nil,  1063,  1063,  1063,  1063,  1063,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   371,   nil,  1063,   371,   nil,   nil,   371,
-   371,   nil,   nil,   371,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1063,   nil,   nil,
-   nil,   nil,   371,   371,   371,   371,   371,   371,  1063,  1063,
-   nil,   371,   371,   nil,   nil,   nil,   nil,   nil,   nil,   371,
-   nil,   nil,   371,   371,   371,   nil,   371,   371,   431,   431,
-   431,   nil,   431,   nil,   nil,   nil,   431,   431,   nil,   nil,
-   nil,   431,  1063,   431,   431,   431,   431,   431,   431,   431,
-   nil,   nil,   nil,   nil,   nil,   431,   431,   431,   431,   431,
-   431,   431,   nil,   nil,   431,   nil,   nil,   nil,   nil,   nil,
-   nil,   431,   nil,   nil,   431,   431,   431,   431,   431,   431,
-   431,   431,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   431,   nil,
-   nil,   431,   431,   431,   nil,   431,   431,   475,   475,   475,
-   nil,   475,   nil,   nil,   nil,   475,   475,   nil,   nil,   nil,
-   475,   nil,   475,   475,   475,   475,   475,   475,   475,   nil,
-   nil,   nil,   nil,   nil,   475,   475,   475,   475,   475,   475,
-   475,   nil,   nil,   475,   nil,   nil,   nil,   nil,   nil,   nil,
-   475,   nil,   nil,   475,   475,   475,   475,   475,   475,   475,
-   475,   475,   475,   475,   475,   nil,   475,   475,   nil,   475,
-   475,   475,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   475,   nil,   nil,   475,   nil,   nil,   475,   475,   nil,
-   nil,   475,   nil,   475,   nil,   475,   nil,   475,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   475,   nil,   nil,   nil,   nil,
-   475,   475,   475,   475,   475,   475,   nil,   nil,   nil,   475,
-   475,   nil,   nil,   nil,   nil,   nil,   nil,   475,   nil,   475,
-   475,   475,   475,   nil,   475,   475,   477,   477,   477,   nil,
-   477,   nil,   nil,   nil,   477,   477,   nil,   nil,   nil,   477,
-   nil,   477,   477,   477,   477,   477,   477,   477,   nil,   nil,
-   nil,   nil,   nil,   477,   477,   477,   477,   477,   477,   477,
-   nil,   nil,   477,   nil,   nil,   nil,   nil,   nil,   nil,   477,
-   nil,   nil,   477,   477,   477,   477,   477,   477,   477,   477,
-   nil,   477,   477,   477,   nil,   477,   477,   nil,   477,   477,
-   477,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   477,   nil,   nil,   477,   nil,   nil,   477,   477,   nil,   nil,
-   477,   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   477,   nil,   nil,   nil,   nil,   477,
-   477,   477,   477,   477,   477,   nil,   nil,   nil,   477,   477,
-   nil,   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   477,
-   477,   477,   nil,   477,   477,   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,   nil,   478,   478,   478,   478,   478,   478,   478,   nil,
-   nil,   478,   nil,   nil,   nil,   nil,   nil,   nil,   478,   nil,
-   nil,   478,   478,   478,   478,   478,   478,   478,   478,   nil,
-   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,   nil,   nil,   478,   478,   nil,   nil,   478,
-   nil,   nil,   nil,   nil,   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,   478,   478,
-   478,   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,
-   nil,   479,   479,   479,   479,   479,   479,   479,   nil,   nil,
-   479,   nil,   nil,   nil,   nil,   nil,   nil,   479,   nil,   nil,
-   479,   479,   479,   479,   479,   479,   479,   479,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   479,   nil,   nil,   479,   479,   479,
-   nil,   479,   479,   517,   517,   517,   nil,   517,   nil,   nil,
-   nil,   517,   517,   nil,   nil,   nil,   517,   nil,   517,   517,
-   517,   517,   517,   517,   517,   nil,   nil,   nil,   nil,   nil,
-   517,   517,   517,   517,   517,   517,   517,   nil,   nil,   517,
-   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,   517,
-   517,   517,   517,   517,   517,   517,   517,   517,   517,   517,
-   517,   nil,   517,   517,   nil,   517,   517,   517,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,
-   517,   nil,   nil,   517,   517,   nil,   nil,   517,   nil,   517,
-   nil,   517,   nil,   517,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   517,   nil,   nil,   nil,   nil,   517,   517,   517,   517,
-   517,   517,   nil,   nil,   nil,   517,   517,   nil,   nil,   nil,
-   nil,   nil,   nil,   517,   nil,   517,   517,   517,   517,   nil,
-   517,   517,   520,   520,   520,   nil,   520,   nil,   nil,   nil,
-   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,   520,   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,
-   520,   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,   nil,
-   nil,   nil,   520,   nil,   520,   520,   520,   520,   nil,   520,
-   520,   522,   522,   522,   nil,   522,   nil,   nil,   nil,   522,
-   522,   nil,   nil,   nil,   522,   nil,   522,   522,   522,   522,
-   522,   522,   522,   nil,   nil,   nil,   nil,   nil,   522,   522,
-   522,   522,   522,   522,   522,   nil,   nil,   522,   nil,   nil,
-   nil,   nil,   nil,   nil,   522,   nil,   nil,   522,   522,   522,
-   522,   522,   522,   522,   522,   nil,   522,   522,   522,   nil,
-   522,   522,   nil,   522,   522,   522,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   522,   nil,   nil,   522,   nil,
-   nil,   522,   522,   nil,   nil,   522,   nil,   nil,   nil,   nil,
-   nil,   522,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   522,
-   nil,   nil,   nil,   nil,   522,   522,   522,   522,   522,   522,
-   nil,   nil,   nil,   522,   522,   nil,   nil,   nil,   nil,   nil,
-   nil,   522,   nil,   nil,   522,   522,   522,   nil,   522,   522,
-   528,   528,   528,   528,   528,   nil,   nil,   nil,   528,   528,
-   nil,   nil,   nil,   528,   nil,   528,   528,   528,   528,   528,
-   528,   528,   nil,   nil,   nil,   nil,   nil,   528,   528,   528,
-   528,   528,   528,   528,   nil,   nil,   528,   nil,   nil,   nil,
-   nil,   nil,   528,   528,   528,   528,   528,   528,   528,   528,
-   528,   528,   528,   528,   nil,   528,   528,   528,   nil,   528,
-   528,   nil,   528,   528,   528,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   528,   nil,   nil,   528,   nil,   nil,
-   528,   528,   nil,   nil,   528,   nil,   528,   nil,   nil,   nil,
-   528,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,
-   nil,   nil,   nil,   528,   528,   528,   528,   528,   528,   nil,
-   nil,   nil,   528,   528,   nil,   nil,   nil,   nil,   nil,   528,
-   528,   nil,   nil,   528,   528,   528,   nil,   528,   528,   536,
-   536,   536,   nil,   536,   nil,   nil,   nil,   536,   536,   nil,
-   nil,   nil,   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,   536,   536,   536,
-   536,   536,   536,   nil,   536,   536,   536,   nil,   536,   536,
-   nil,   nil,   nil,   536,   nil,   nil,   nil,   nil,   nil,  1085,
-   nil,  1085,  1085,  1085,  1085,  1085,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   536,   nil,  1085,   536,   nil,   nil,   536,
-   536,   nil,   nil,   536,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1085,   nil,   nil,
-   nil,   nil,   536,   536,   536,   536,   536,   536,  1085,  1085,
-   nil,   536,   536,   nil,   nil,   nil,   nil,   nil,   nil,   536,
-   nil,   nil,   536,   536,   536,   nil,   536,   536,   538,   538,
-   538,   nil,   538,   nil,   nil,   nil,   538,   538,   nil,   nil,
-   nil,   538,  1085,   538,   538,   538,   538,   538,   538,   538,
-   nil,   nil,   nil,   nil,   nil,   538,   538,   538,   538,   538,
-   538,   538,   nil,   nil,   538,   nil,   nil,   nil,   nil,   nil,
-   nil,   538,   nil,   nil,   538,   538,   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,   538,   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,   nil,   nil,   nil,   nil,   nil,   nil,   538,   nil,
-   538,   538,   538,   538,   nil,   538,   538,   544,   544,   544,
-   nil,   544,   nil,   nil,   nil,   544,   544,   nil,   nil,   nil,
-   544,   nil,   544,   544,   544,   544,   544,   544,   544,   nil,
-   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,   544,
-   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
-   544,   nil,   nil,   544,   544,   544,   544,   544,   544,   544,
-   544,   nil,   544,   544,   544,   nil,   544,   544,   nil,   nil,
-   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   544,   nil,   nil,   544,   nil,   nil,   544,   544,   nil,
-   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   544,   544,   544,   544,   544,   544,   nil,   nil,   nil,   544,
-   544,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,
-   544,   544,   544,   nil,   544,   544,   547,   547,   547,   nil,
-   547,   nil,   nil,   nil,   547,   547,   nil,   nil,   nil,   547,
-   nil,   547,   547,   547,   547,   547,   547,   547,   nil,   nil,
-   nil,   nil,   nil,   547,   547,   547,   547,   547,   547,   547,
-   nil,   nil,   547,   nil,   nil,   nil,   nil,   nil,   nil,   547,
-   nil,   nil,   547,   547,   547,   547,   547,   547,   547,   547,
-   nil,   547,   547,   547,   nil,   547,   547,   nil,   547,   547,
-   547,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   547,   nil,   nil,   547,   nil,   nil,   547,   547,   nil,   nil,
-   547,   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   547,   nil,   nil,   nil,   nil,   547,
-   547,   547,   547,   547,   547,   nil,   nil,   nil,   547,   547,
-   nil,   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   547,
-   547,   547,   nil,   547,   547,   548,   548,   548,   nil,   548,
-   nil,   nil,   nil,   548,   548,   nil,   nil,   nil,   548,   nil,
-   548,   548,   548,   548,   548,   548,   548,   nil,   nil,   nil,
-   nil,   nil,   548,   548,   548,   548,   548,   548,   548,   nil,
-   nil,   548,   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,
-   nil,   548,   548,   548,   548,   548,   548,   548,   548,   nil,
-   548,   548,   548,   nil,   548,   548,   nil,   548,   548,   548,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   548,
-   nil,   nil,   548,   nil,   nil,   548,   548,   nil,   nil,   548,
-   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   548,   nil,   nil,   nil,   nil,   548,   548,
-   548,   548,   548,   548,   nil,   nil,   nil,   548,   548,   nil,
-   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   548,   548,
-   548,   nil,   548,   548,   553,   553,   553,   nil,   553,   nil,
-   nil,   nil,   553,   553,   nil,   nil,   nil,   553,   nil,   553,
-   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,   nil,
-   nil,   553,   553,   553,   553,   553,   553,   553,   nil,   nil,
-   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,
-   553,   553,   553,   553,   553,   553,   553,   553,   nil,   553,
-   553,   553,   nil,   553,   553,   nil,   553,   553,   553,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,
-   nil,   553,   nil,   nil,   553,   553,   nil,   nil,   553,   nil,
-   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   553,   nil,   nil,   nil,   nil,   553,   553,   553,
-   553,   553,   553,   nil,   nil,   nil,   553,   553,   nil,   nil,
-   nil,   nil,   nil,   nil,   553,   nil,   nil,   553,   553,   553,
-   nil,   553,   553,   577,   577,   577,   nil,   577,   nil,   nil,
-   nil,   577,   577,   nil,   nil,   nil,   577,   nil,   577,   577,
-   577,   577,   577,   577,   577,   nil,   nil,   nil,   nil,   nil,
-   577,   577,   577,   577,   577,   577,   577,   nil,   nil,   577,
-   nil,   nil,   nil,   nil,   nil,   nil,   577,   nil,   nil,   577,
-   577,   577,   577,   577,   577,   577,   577,   577,   577,   577,
-   577,   nil,   577,   577,   nil,   577,   577,   577,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   577,   nil,   nil,
-   577,   nil,   nil,   577,   577,   nil,   nil,   577,   nil,   577,
-   nil,   577,   nil,   577,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   577,   nil,   nil,   nil,   nil,   577,   577,   577,   577,
-   577,   577,   nil,   nil,   nil,   577,   577,   nil,   nil,   nil,
-   nil,   nil,   nil,   577,   nil,   577,   577,   577,   577,   nil,
-   577,   577,   589,   589,   589,   nil,   589,   nil,   nil,   nil,
-   589,   589,   nil,   nil,   nil,   589,   nil,   589,   589,   589,
-   589,   589,   589,   589,   nil,   nil,   nil,   nil,   nil,   589,
-   589,   589,   589,   589,   589,   589,   nil,   nil,   589,   nil,
-   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   589,
-   589,   589,   589,   589,   589,   589,   nil,   589,   589,   589,
-   nil,   589,   589,   nil,   589,   589,   589,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,
-   nil,   nil,   589,   589,   nil,   nil,   589,   nil,   nil,   nil,
-   nil,   nil,   589,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   589,   nil,   nil,   nil,   nil,   589,   589,   589,   589,   589,
-   589,   nil,   nil,   nil,   589,   589,   nil,   nil,   nil,   nil,
-   nil,   nil,   589,   nil,   nil,   589,   589,   589,   nil,   589,
-   589,   595,   595,   595,   nil,   595,   nil,   nil,   nil,   595,
-   595,   nil,   nil,   nil,   595,   nil,   595,   595,   595,   595,
-   595,   595,   595,   nil,   nil,   nil,   nil,   nil,   595,   595,
-   595,   595,   595,   595,   595,   nil,   nil,   595,   nil,   nil,
-   nil,   nil,   nil,   nil,   595,   nil,   nil,   595,   595,   595,
-   595,   595,   595,   595,   595,   nil,   595,   595,   595,   nil,
-   595,   595,   nil,   595,   595,   595,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,   595,   nil,
-   nil,   595,   595,   nil,   nil,   595,   nil,   nil,   nil,   nil,
-   nil,   595,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   595,
-   nil,   nil,   nil,   nil,   595,   595,   595,   595,   595,   595,
-   nil,   nil,   nil,   595,   595,   nil,   nil,   nil,   nil,   nil,
-   nil,   595,   nil,   nil,   595,   595,   595,   nil,   595,   595,
-   617,   617,   617,   nil,   617,   nil,   nil,   nil,   617,   617,
-   nil,   nil,   nil,   617,   nil,   617,   617,   617,   617,   617,
-   617,   617,   nil,   nil,   nil,   nil,   nil,   617,   617,   617,
-   617,   617,   617,   617,   nil,   nil,   617,   nil,   nil,   nil,
-   nil,   nil,   nil,   617,   nil,   nil,   617,   617,   617,   617,
-   617,   617,   617,   617,   nil,   617,   617,   617,   nil,   617,
-   617,   nil,   617,   617,   617,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   617,   nil,   nil,   617,   nil,   nil,
-   617,   617,   nil,   nil,   617,   nil,   nil,   nil,   nil,   nil,
-   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   617,   nil,
-   nil,   nil,   nil,   617,   617,   617,   617,   617,   617,   nil,
-   nil,   nil,   617,   617,   nil,   nil,   nil,   nil,   nil,   nil,
-   617,   nil,   nil,   617,   617,   617,   nil,   617,   617,   657,
-   657,   657,   nil,   657,   nil,   nil,   nil,   657,   657,   nil,
-   nil,   nil,   657,   nil,   657,   657,   657,   657,   657,   657,
-   657,   nil,   nil,   nil,   nil,   nil,   657,   657,   657,   657,
-   657,   657,   657,   nil,   nil,   657,   nil,   nil,   nil,   nil,
-   nil,   nil,   657,   nil,   nil,   657,   657,   657,   657,   657,
-   657,   657,   657,   nil,   657,   657,   657,   nil,   657,   657,
-   nil,   657,   657,   657,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   657,   nil,   nil,   657,   nil,   nil,   657,
-   657,   nil,   nil,   657,   nil,   657,   nil,   nil,   nil,   657,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   657,   nil,   nil,
-   nil,   nil,   657,   657,   657,   657,   657,   657,   nil,   nil,
-   nil,   657,   657,   nil,   nil,   nil,   nil,   nil,   nil,   657,
-   nil,   nil,   657,   657,   657,   nil,   657,   657,   658,   658,
-   658,   nil,   658,   nil,   nil,   nil,   658,   658,   nil,   nil,
-   nil,   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,   658,   658,   658,   658,
-   658,   658,   nil,   658,   658,   658,   nil,   658,   658,   nil,
-   658,   658,   658,   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,   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,   658,   658,   nil,   658,   658,   659,   659,   659,
-   nil,   659,   nil,   nil,   nil,   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,   659,   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,   659,   nil,   659,   nil,   659,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   659,   nil,   nil,   nil,   nil,
-   659,   659,   659,   659,   659,   659,   nil,   nil,   nil,   659,
-   659,   nil,   nil,   nil,   nil,   nil,   nil,   659,   nil,   659,
-   659,   659,   659,   nil,   659,   659,   662,   662,   662,   nil,
-   662,   nil,   nil,   nil,   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,   662,   nil,   nil,   nil,   nil,   662,
-   662,   662,   662,   662,   662,   nil,   nil,   nil,   662,   662,
-   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,   nil,   662,
-   662,   662,   nil,   662,   662,   665,   665,   665,   nil,   665,
-   nil,   nil,   nil,   665,   665,   nil,   nil,   nil,   665,   nil,
-   665,   665,   665,   665,   665,   665,   665,   nil,   nil,   nil,
-   nil,   nil,   665,   665,   665,   665,   665,   665,   665,   nil,
-   nil,   665,   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,
-   nil,   665,   665,   665,   665,   665,   665,   665,   665,   665,
-   665,   665,   665,   nil,   665,   665,   nil,   665,   665,   665,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   665,
-   nil,   nil,   665,   nil,   nil,   665,   665,   nil,   nil,   665,
-   nil,   665,   nil,   665,   nil,   665,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   665,   nil,   nil,   nil,   nil,   665,   665,
-   665,   665,   665,   665,   nil,   nil,   nil,   665,   665,   nil,
-   nil,   nil,   nil,   nil,   nil,   665,   nil,   665,   665,   665,
-   665,   nil,   665,   665,   666,   666,   666,   nil,   666,   nil,
-   nil,   nil,   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,   666,   666,
-   666,   666,   nil,   666,   666,   nil,   666,   666,   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,   666,   nil,   666,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   666,   nil,   nil,   nil,   nil,   666,   666,   666,
-   666,   666,   666,   nil,   nil,   nil,   666,   666,   nil,   nil,
-   nil,   nil,   nil,   nil,   666,   nil,   666,   666,   666,   666,
-   nil,   666,   666,   667,   667,   667,   nil,   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,   nil,   667,   nil,   nil,   667,
-   667,   667,   667,   667,   667,   667,   667,   nil,   667,   667,
-   667,   nil,   667,   667,   nil,   667,   667,   667,   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,   667,   nil,   nil,   667,   nil,   nil,
-   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,
-   nil,   nil,   nil,   667,   nil,   nil,   667,   667,   667,   nil,
-   667,   667,   668,   668,   668,   nil,   668,   nil,   nil,   nil,
-   668,   668,   nil,   nil,   nil,   668,   nil,   668,   668,   668,
-   668,   668,   668,   668,   nil,   nil,   nil,   nil,   nil,   668,
-   668,   668,   668,   668,   668,   668,   nil,   nil,   668,   nil,
-   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   668,   668,
-   668,   668,   668,   668,   668,   668,   nil,   668,   668,   668,
-   nil,   668,   668,   nil,   668,   668,   668,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   668,
-   nil,   nil,   668,   668,   nil,   nil,   668,   nil,   nil,   nil,
-   nil,   nil,   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   668,   nil,   nil,   nil,   nil,   668,   668,   668,   668,   668,
-   668,   nil,   nil,   nil,   668,   668,   nil,   nil,   nil,   nil,
-   nil,   nil,   668,   nil,   nil,   668,   668,   668,   nil,   668,
-   668,   673,   673,   673,   nil,   673,   nil,   nil,   nil,   673,
-   673,   nil,   nil,   nil,   673,   nil,   673,   673,   673,   673,
-   673,   673,   673,   nil,   nil,   nil,   nil,   nil,   673,   673,
-   673,   673,   673,   673,   673,   nil,   nil,   673,   nil,   nil,
-   nil,   nil,   nil,   nil,   673,   nil,   nil,   673,   673,   673,
-   673,   673,   673,   673,   673,   nil,   673,   673,   673,   nil,
-   673,   673,   nil,   673,   673,   673,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   673,   nil,   nil,   673,   nil,
-   nil,   673,   673,   nil,   nil,   673,   nil,   nil,   nil,   nil,
-   nil,   673,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   673,
-   nil,   nil,   nil,   nil,   673,   673,   673,   673,   673,   673,
-   nil,   nil,   nil,   673,   673,   nil,   nil,   nil,   nil,   nil,
-   nil,   673,   nil,   nil,   673,   673,   673,   nil,   673,   673,
-   674,   674,   674,   nil,   674,   nil,   nil,   nil,   674,   674,
-   nil,   nil,   nil,   674,   nil,   674,   674,   674,   674,   674,
-   674,   674,   nil,   nil,   nil,   nil,   nil,   674,   674,   674,
-   674,   674,   674,   674,   nil,   nil,   674,   nil,   nil,   nil,
-   nil,   nil,   nil,   674,   nil,   nil,   674,   674,   674,   674,
-   674,   674,   674,   674,   nil,   674,   674,   674,   nil,   674,
-   674,   nil,   674,   674,   674,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,   nil,   nil,
-   674,   674,   nil,   nil,   674,   nil,   nil,   nil,   nil,   nil,
-   674,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,
-   nil,   nil,   nil,   674,   674,   674,   674,   674,   674,   nil,
-   nil,   nil,   674,   674,   nil,   nil,   nil,   nil,   nil,   nil,
-   674,   nil,   nil,   674,   674,   674,   nil,   674,   674,   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,   nil,   698,   698,   698,   698,
-   698,   698,   698,   nil,   nil,   698,   nil,   nil,   nil,   nil,
-   nil,   nil,   698,   nil,   nil,   698,   698,   698,   698,   698,
-   698,   698,   698,   nil,   698,   698,   698,   nil,   698,   698,
-   nil,   698,   698,   698,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   698,   nil,   nil,   698,   nil,   nil,   698,
-   698,   nil,   nil,   698,   nil,   nil,   nil,   nil,   nil,   698,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   698,   nil,   nil,
-   nil,   nil,   698,   698,   698,   698,   698,   698,   nil,   nil,
-   nil,   698,   698,   nil,   nil,   nil,   nil,   nil,   nil,   698,
-   nil,   nil,   698,   698,   698,   nil,   698,   698,   701,   701,
-   701,   nil,   701,   nil,   nil,   nil,   701,   701,   nil,   nil,
-   nil,   701,   nil,   701,   701,   701,   701,   701,   701,   701,
-   nil,   nil,   nil,   nil,   nil,   701,   701,   701,   701,   701,
-   701,   701,   nil,   nil,   701,   nil,   nil,   nil,   nil,   nil,
-   nil,   701,   nil,   nil,   701,   701,   701,   701,   701,   701,
-   701,   701,   nil,   701,   701,   701,   nil,   701,   701,   nil,
-   701,   701,   701,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   701,   nil,   nil,   701,   nil,   nil,   701,   701,
-   nil,   nil,   701,   nil,   nil,   nil,   nil,   nil,   701,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   701,   nil,   nil,   nil,
-   nil,   701,   701,   701,   701,   701,   701,   nil,   nil,   nil,
-   701,   701,   nil,   nil,   nil,   nil,   nil,   nil,   701,   nil,
-   nil,   701,   701,   701,   nil,   701,   701,   705,   705,   705,
-   nil,   705,   nil,   nil,   nil,   705,   705,   nil,   nil,   nil,
-   705,   nil,   705,   705,   705,   705,   705,   705,   705,   nil,
-   nil,   nil,   nil,   nil,   705,   705,   705,   705,   705,   705,
-   705,   nil,   nil,   705,   nil,   nil,   nil,   nil,   nil,   nil,
-   705,   nil,   nil,   705,   705,   705,   705,   705,   705,   705,
-   705,   nil,   705,   705,   705,   nil,   705,   705,   nil,   nil,
-   nil,   705,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   705,   nil,   nil,   705,   nil,   nil,   705,   705,   nil,
-   nil,   705,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   705,   705,   705,   705,   705,   705,   nil,   nil,   nil,   705,
-   705,   nil,   nil,   nil,   nil,   nil,   nil,   705,   nil,   nil,
-   705,   705,   705,   nil,   705,   705,   716,   716,   716,   nil,
-   716,   nil,   nil,   nil,   716,   716,   nil,   nil,   nil,   716,
-   nil,   716,   716,   716,   716,   716,   716,   716,   nil,   nil,
-   nil,   nil,   nil,   716,   716,   716,   716,   716,   716,   716,
-   nil,   nil,   716,   nil,   nil,   nil,   nil,   nil,   nil,   716,
-   nil,   nil,   716,   716,   716,   716,   716,   716,   716,   716,
-   nil,   716,   716,   716,   nil,   716,   716,   nil,   nil,   nil,
-   716,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   716,   nil,   nil,   716,   nil,   nil,   716,   716,   nil,   nil,
-   716,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   716,
-   716,   716,   716,   716,   716,   nil,   nil,   nil,   716,   716,
-   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,   nil,   716,
-   716,   716,   nil,   716,   716,   722,   722,   722,   nil,   722,
-   nil,   nil,   nil,   722,   722,   nil,   nil,   nil,   722,   nil,
-   722,   722,   722,   722,   722,   722,   722,   nil,   nil,   nil,
-   nil,   nil,   722,   722,   722,   722,   722,   722,   722,   nil,
-   nil,   722,   nil,   nil,   nil,   nil,   nil,   nil,   722,   nil,
-   nil,   722,   722,   722,   722,   722,   722,   722,   722,   nil,
-   722,   722,   722,   nil,   722,   722,   nil,   722,   722,   722,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   722,
-   nil,   nil,   722,   nil,   nil,   722,   722,   nil,   nil,   722,
-   nil,   722,   nil,   nil,   nil,   722,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   722,   nil,   nil,   nil,   nil,   722,   722,
-   722,   722,   722,   722,   nil,   nil,   nil,   722,   722,   nil,
-   nil,   nil,   nil,   nil,   nil,   722,   nil,   nil,   722,   722,
-   722,   nil,   722,   722,   727,   727,   727,   nil,   727,   nil,
-   nil,   nil,   727,   727,   nil,   nil,   nil,   727,   nil,   727,
-   727,   727,   727,   727,   727,   727,   nil,   nil,   nil,   nil,
-   nil,   727,   727,   727,   727,   727,   727,   727,   nil,   nil,
-   727,   nil,   nil,   nil,   nil,   nil,   nil,   727,   nil,   nil,
-   727,   727,   727,   727,   727,   727,   727,   727,   727,   727,
-   727,   727,   nil,   727,   727,   nil,   727,   727,   727,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   727,   nil,
-   nil,   727,   nil,   nil,   727,   727,   nil,   nil,   727,   nil,
-   727,   nil,   nil,   nil,   727,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   727,   nil,   nil,   nil,   nil,   727,   727,   727,
-   727,   727,   727,   nil,   nil,   nil,   727,   727,   nil,   nil,
-   nil,   nil,   nil,   nil,   727,   nil,   727,   727,   727,   727,
-   nil,   727,   727,   730,   730,   730,   nil,   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,   nil,   730,   nil,   nil,   730,
-   730,   730,   730,   730,   730,   730,   730,   730,   730,   730,
-   730,   nil,   730,   730,   nil,   730,   730,   730,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   730,   nil,   nil,
-   730,   nil,   nil,   730,   730,   nil,   nil,   730,   nil,   nil,
-   nil,   nil,   nil,   730,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   730,   nil,   nil,   nil,   nil,   730,   730,   730,   730,
-   730,   730,   nil,   nil,   nil,   730,   730,   nil,   nil,   nil,
-   nil,   nil,   nil,   730,   nil,   730,   730,   730,   730,   nil,
-   730,   730,   744,   744,   744,   nil,   744,   nil,   nil,   nil,
-   744,   744,   nil,   nil,   nil,   744,   nil,   744,   744,   744,
-   744,   744,   744,   744,   nil,   nil,   nil,   nil,   nil,   744,
-   744,   744,   744,   744,   744,   744,   nil,   nil,   744,   nil,
-   nil,   nil,   nil,   nil,   nil,   744,   nil,   nil,   744,   744,
-   744,   744,   744,   744,   744,   744,   nil,   744,   744,   744,
-   nil,   744,   744,   nil,   744,   744,   744,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   744,   nil,   nil,   744,
-   nil,   nil,   744,   744,   nil,   nil,   744,   nil,   744,   nil,
-   nil,   nil,   744,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   744,   nil,   nil,   nil,   nil,   744,   744,   744,   744,   744,
-   744,   nil,   nil,   nil,   744,   744,   nil,   nil,   nil,   nil,
-   nil,   nil,   744,   nil,   nil,   744,   744,   744,   nil,   744,
-   744,   756,   756,   756,   nil,   756,   nil,   nil,   nil,   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,   756,   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,   756,   nil,   756,
-   nil,   756,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   756,
-   nil,   nil,   nil,   nil,   756,   756,   756,   756,   756,   756,
-   nil,   nil,   nil,   756,   756,   nil,   nil,   nil,   nil,   nil,
-   nil,   756,   nil,   756,   756,   756,   756,   nil,   756,   756,
-   779,   779,   779,   nil,   779,   nil,   nil,   nil,   779,   779,
-   nil,   nil,   nil,   779,   nil,   779,   779,   779,   779,   779,
-   779,   779,   nil,   nil,   nil,   nil,   nil,   779,   779,   779,
-   779,   779,   779,   779,   nil,   nil,   779,   nil,   nil,   nil,
-   nil,   nil,   nil,   779,   nil,   nil,   779,   779,   779,   779,
-   779,   779,   779,   779,   nil,   779,   779,   779,   nil,   779,
-   779,   nil,   779,   779,   779,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   779,   nil,   nil,   779,   nil,   nil,
-   779,   779,   nil,   nil,   779,   nil,   nil,   nil,   nil,   nil,
-   779,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   779,   nil,
-   nil,   nil,   nil,   779,   779,   779,   779,   779,   779,   nil,
-   nil,   nil,   779,   779,   nil,   nil,   nil,   nil,   nil,   nil,
-   779,   nil,   nil,   779,   779,   779,   nil,   779,   779,   801,
-   801,   801,   nil,   801,   nil,   nil,   nil,   801,   801,   nil,
-   nil,   nil,   801,   nil,   801,   801,   801,   801,   801,   801,
-   801,   nil,   nil,   nil,   nil,   nil,   801,   801,   801,   801,
-   801,   801,   801,   nil,   nil,   801,   nil,   nil,   nil,   nil,
-   nil,   nil,   801,   nil,   nil,   801,   801,   801,   801,   801,
-   801,   801,   801,   nil,   801,   801,   801,   nil,   801,   801,
-   nil,   801,   801,   801,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   801,   nil,   nil,   801,   nil,   nil,   801,
-   801,   nil,   nil,   801,   nil,   nil,   nil,   nil,   nil,   801,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   801,   nil,   nil,
-   nil,   nil,   801,   801,   801,   801,   801,   801,   nil,   nil,
-   nil,   801,   801,   nil,   nil,   nil,   nil,   nil,   nil,   801,
-   nil,   nil,   801,   801,   801,   nil,   801,   801,   808,   808,
-   808,   nil,   808,   nil,   nil,   nil,   808,   808,   nil,   nil,
-   nil,   808,   nil,   808,   808,   808,   808,   808,   808,   808,
-   nil,   nil,   nil,   nil,   nil,   808,   808,   808,   808,   808,
-   808,   808,   nil,   nil,   808,   nil,   nil,   nil,   nil,   nil,
-   nil,   808,   nil,   nil,   808,   808,   808,   808,   808,   808,
-   808,   808,   nil,   808,   808,   808,   nil,   808,   808,   nil,
-   808,   808,   808,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   808,   nil,   nil,   808,   nil,   nil,   808,   808,
-   nil,   nil,   808,   nil,   nil,   nil,   nil,   nil,   808,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   808,   nil,   nil,   nil,
-   nil,   808,   808,   808,   808,   808,   808,   nil,   nil,   nil,
-   808,   808,   nil,   nil,   nil,   nil,   nil,   nil,   808,   nil,
-   nil,   808,   808,   808,   nil,   808,   808,   821,   821,   821,
-   nil,   821,   nil,   nil,   nil,   821,   821,   nil,   nil,   nil,
-   821,   nil,   821,   821,   821,   821,   821,   821,   821,   nil,
-   nil,   nil,   nil,   nil,   821,   821,   821,   821,   821,   821,
-   821,   nil,   nil,   821,   nil,   nil,   nil,   nil,   nil,   nil,
-   821,   nil,   nil,   821,   821,   821,   821,   821,   821,   821,
-   821,   nil,   821,   821,   821,   nil,   821,   821,   nil,   821,
-   821,   821,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   821,   nil,   nil,   821,   nil,   nil,   821,   821,   nil,
-   nil,   821,   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,   nil,   nil,
-   821,   821,   821,   821,   821,   821,   nil,   nil,   nil,   821,
-   821,   nil,   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,
-   821,   821,   821,   nil,   821,   821,   822,   822,   822,   nil,
-   822,   nil,   nil,   nil,   822,   822,   nil,   nil,   nil,   822,
-   nil,   822,   822,   822,   822,   822,   822,   822,   nil,   nil,
-   nil,   nil,   nil,   822,   822,   822,   822,   822,   822,   822,
-   nil,   nil,   822,   nil,   nil,   nil,   nil,   nil,   nil,   822,
-   nil,   nil,   822,   822,   822,   822,   822,   822,   822,   822,
-   nil,   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,   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   822,   nil,   nil,   822,
-   822,   822,   nil,   822,   822,   823,   823,   823,   nil,   823,
-   nil,   nil,   nil,   823,   823,   nil,   nil,   nil,   823,   nil,
-   823,   823,   823,   823,   823,   823,   823,   nil,   nil,   nil,
-   nil,   nil,   823,   823,   823,   823,   823,   823,   823,   nil,
-   nil,   823,   nil,   nil,   nil,   nil,   nil,   nil,   823,   nil,
-   nil,   823,   823,   823,   823,   823,   823,   823,   823,   nil,
-   823,   823,   823,   nil,   823,   823,   nil,   823,   823,   823,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   823,
-   nil,   nil,   823,   nil,   nil,   823,   823,   nil,   nil,   823,
-   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   823,   nil,   nil,   nil,   nil,   823,   823,
-   823,   823,   823,   823,   nil,   nil,   nil,   823,   823,   nil,
-   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,   823,   823,
-   823,   nil,   823,   823,   824,   824,   824,   nil,   824,   nil,
-   nil,   nil,   824,   824,   nil,   nil,   nil,   824,   nil,   824,
-   824,   824,   824,   824,   824,   824,   nil,   nil,   nil,   nil,
-   nil,   824,   824,   824,   824,   824,   824,   824,   nil,   nil,
-   824,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,
-   824,   824,   824,   824,   824,   824,   824,   824,   nil,   824,
-   824,   824,   nil,   824,   824,   nil,   824,   824,   824,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,
-   nil,   824,   nil,   nil,   824,   824,   nil,   nil,   824,   nil,
-   nil,   nil,   nil,   nil,   824,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   824,   nil,   nil,   nil,   nil,   824,   824,   824,
-   824,   824,   824,   nil,   nil,   nil,   824,   824,   nil,   nil,
-   nil,   nil,   nil,   nil,   824,   nil,   nil,   824,   824,   824,
-   nil,   824,   824,   826,   826,   826,   nil,   826,   nil,   nil,
-   nil,   826,   826,   nil,   nil,   nil,   826,   nil,   826,   826,
-   826,   826,   826,   826,   826,   nil,   nil,   nil,   nil,   nil,
-   826,   826,   826,   826,   826,   826,   826,   nil,   nil,   826,
-   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,   826,
-   826,   826,   826,   826,   826,   826,   826,   nil,   826,   826,
-   826,   nil,   826,   826,   nil,   826,   826,   826,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,
-   826,   nil,   nil,   826,   826,   nil,   nil,   826,   nil,   nil,
-   nil,   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   826,   nil,   nil,   nil,   nil,   826,   826,   826,   826,
-   826,   826,   nil,   nil,   nil,   826,   826,   nil,   nil,   nil,
-   nil,   nil,   nil,   826,   nil,   nil,   826,   826,   826,   nil,
-   826,   826,   859,   859,   859,   nil,   859,   nil,   nil,   nil,
-   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,   nil,   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,
-   nil,   nil,   859,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   859,   nil,   nil,   nil,   nil,   859,   859,   859,   859,   859,
-   859,   nil,   nil,   nil,   859,   859,   nil,   nil,   nil,   nil,
-   nil,   nil,   859,   nil,   nil,   859,   859,   859,   nil,   859,
-   859,   866,   866,   866,   nil,   866,   nil,   nil,   nil,   866,
-   866,   nil,   nil,   nil,   866,   nil,   866,   866,   866,   866,
-   866,   866,   866,   nil,   nil,   nil,   nil,   nil,   866,   866,
-   866,   866,   866,   866,   866,   nil,   nil,   866,   nil,   nil,
-   nil,   nil,   nil,   nil,   866,   nil,   nil,   866,   866,   866,
-   866,   866,   866,   866,   866,   nil,   866,   866,   866,   nil,
-   866,   866,   nil,   866,   866,   866,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   866,   nil,   nil,   866,   nil,
-   nil,   866,   866,   nil,   nil,   866,   nil,   nil,   nil,   nil,
-   nil,   866,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   866,
-   nil,   nil,   nil,   nil,   866,   866,   866,   866,   866,   866,
-   nil,   nil,   nil,   866,   866,   nil,   nil,   nil,   nil,   nil,
-   nil,   866,   nil,   nil,   866,   866,   866,   nil,   866,   866,
-   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,   nil,   875,   875,   875,
-   875,   875,   875,   875,   nil,   nil,   875,   nil,   nil,   nil,
-   nil,   nil,   nil,   875,   nil,   nil,   875,   875,   875,   875,
-   875,   875,   875,   875,   nil,   875,   875,   875,   nil,   875,
-   875,   nil,   875,   875,   875,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   875,   nil,   nil,   875,   nil,   nil,
-   875,   875,   nil,   nil,   875,   nil,   nil,   nil,   nil,   nil,
-   875,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   875,   nil,
-   nil,   nil,   nil,   875,   875,   875,   875,   875,   875,   nil,
-   nil,   nil,   875,   875,   nil,   nil,   nil,   nil,   nil,   nil,
-   875,   nil,   nil,   875,   875,   875,   nil,   875,   875,   917,
-   917,   917,   nil,   917,   nil,   nil,   nil,   917,   917,   nil,
-   nil,   nil,   917,   nil,   917,   917,   917,   917,   917,   917,
-   917,   nil,   nil,   nil,   nil,   nil,   917,   917,   917,   917,
-   917,   917,   917,   nil,   nil,   917,   nil,   nil,   nil,   nil,
-   nil,   nil,   917,   nil,   nil,   917,   917,   917,   917,   917,
-   917,   917,   917,   917,   917,   917,   917,   nil,   917,   917,
-   nil,   917,   917,   917,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   917,   nil,   nil,   917,   nil,   nil,   917,
-   917,   nil,   nil,   917,   nil,   nil,   nil,   917,   nil,   917,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   917,   nil,   nil,
-   nil,   nil,   917,   917,   917,   917,   917,   917,   nil,   nil,
-   nil,   917,   917,   nil,   nil,   nil,   nil,   nil,   nil,   917,
-   nil,   917,   917,   917,   917,   nil,   917,   917,   918,   918,
-   918,   nil,   918,   nil,   nil,   nil,   918,   918,   nil,   nil,
-   nil,   918,   nil,   918,   918,   918,   918,   918,   918,   918,
-   nil,   nil,   nil,   nil,   nil,   918,   918,   918,   918,   918,
-   918,   918,   nil,   nil,   918,   nil,   nil,   nil,   nil,   nil,
-   nil,   918,   nil,   nil,   918,   918,   918,   918,   918,   918,
-   918,   918,   nil,   918,   918,   918,   nil,   918,   918,   nil,
-   918,   918,   918,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   918,   nil,   nil,   918,   nil,   nil,   918,   918,
-   nil,   nil,   918,   nil,   nil,   nil,   nil,   nil,   918,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   918,   nil,   nil,   nil,
-   nil,   918,   918,   918,   918,   918,   918,   nil,   nil,   nil,
-   918,   918,   nil,   nil,   nil,   nil,   nil,   nil,   918,   nil,
-   nil,   918,   918,   918,   nil,   918,   918,   930,   930,   930,
-   nil,   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,   nil,
-   930,   nil,   nil,   930,   930,   930,   930,   930,   930,   930,
-   930,   nil,   930,   930,   930,   nil,   930,   930,   nil,   nil,
-   nil,   930,   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,   930,   nil,
-   nil,   930,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   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,   930,   930,   nil,   930,   930,   939,   939,   939,   nil,
-   939,   nil,   nil,   nil,   939,   939,   nil,   nil,   nil,   939,
-   nil,   939,   939,   939,   939,   939,   939,   939,   nil,   nil,
-   nil,   nil,   nil,   939,   939,   939,   939,   939,   939,   939,
-   nil,   nil,   939,   nil,   nil,   nil,   nil,   nil,   nil,   939,
-   nil,   nil,   939,   939,   939,   939,   939,   939,   939,   939,
-   nil,   939,   939,   939,   nil,   939,   939,   nil,   nil,   nil,
-   939,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   939,   nil,   nil,   939,   nil,   nil,   939,   939,   nil,   nil,
-   939,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   939,
-   939,   939,   939,   939,   939,   nil,   nil,   nil,   939,   939,
-   nil,   nil,   nil,   nil,   nil,   nil,   939,   nil,   nil,   939,
-   939,   939,   nil,   939,   939,   947,   947,   947,   nil,   947,
-   nil,   nil,   nil,   947,   947,   nil,   nil,   nil,   947,   nil,
-   947,   947,   947,   947,   947,   947,   947,   nil,   nil,   nil,
-   nil,   nil,   947,   947,   947,   947,   947,   947,   947,   nil,
-   nil,   947,   nil,   nil,   nil,   nil,   nil,   nil,   947,   nil,
-   nil,   947,   947,   947,   947,   947,   947,   947,   947,   nil,
-   947,   947,   947,   nil,   947,   947,   nil,   947,   947,   947,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   947,
-   nil,   nil,   947,   nil,   nil,   947,   947,   nil,   nil,   947,
-   nil,   947,   nil,   nil,   nil,   947,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   947,   nil,   nil,   nil,   nil,   947,   947,
-   947,   947,   947,   947,   nil,   nil,   nil,   947,   947,   nil,
-   nil,   nil,   nil,   nil,   nil,   947,   nil,   nil,   947,   947,
-   947,   nil,   947,   947,   990,   990,   990,   nil,   990,   nil,
-   nil,   nil,   990,   990,   nil,   nil,   nil,   990,   nil,   990,
-   990,   990,   990,   990,   990,   990,   nil,   nil,   nil,   nil,
-   nil,   990,   990,   990,   990,   990,   990,   990,   nil,   nil,
-   990,   nil,   nil,   nil,   nil,   nil,   nil,   990,   nil,   nil,
-   990,   990,   990,   990,   990,   990,   990,   990,   nil,   990,
-   990,   990,   nil,   990,   990,   nil,   nil,   nil,   990,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   990,   nil,
-   nil,   990,   nil,   nil,   990,   990,   nil,   nil,   990,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   990,   990,   990,
-   990,   990,   990,   nil,   nil,   nil,   990,   990,   nil,   nil,
-   nil,   nil,   nil,   nil,   990,   nil,   nil,   990,   990,   990,
-   nil,   990,   990,  1004,  1004,  1004,   nil,  1004,   nil,   nil,
-   nil,  1004,  1004,   nil,   nil,   nil,  1004,   nil,  1004,  1004,
-  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,   nil,   nil,
-  1004,  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,  1004,
-   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,   nil,  1004,
-  1004,  1004,  1004,  1004,  1004,  1004,  1004,   nil,  1004,  1004,
-  1004,   nil,  1004,  1004,   nil,  1004,  1004,  1004,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,   nil,
-  1004,   nil,   nil,  1004,  1004,   nil,   nil,  1004,   nil,   nil,
-   nil,   nil,   nil,  1004,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1004,   nil,   nil,   nil,   nil,  1004,  1004,  1004,  1004,
-  1004,  1004,   nil,   nil,   nil,  1004,  1004,   nil,   nil,   nil,
-   nil,   nil,   nil,  1004,   nil,   nil,  1004,  1004,  1004,   nil,
-  1004,  1004,  1037,  1037,  1037,   nil,  1037,   nil,   nil,   nil,
-  1037,  1037,   nil,   nil,   nil,  1037,   nil,  1037,  1037,  1037,
-  1037,  1037,  1037,  1037,   nil,   nil,   nil,   nil,   nil,  1037,
-  1037,  1037,  1037,  1037,  1037,  1037,   nil,   nil,  1037,   nil,
-   nil,   nil,   nil,   nil,   nil,  1037,   nil,   nil,  1037,  1037,
-  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,
-   nil,  1037,  1037,   nil,  1037,  1037,  1037,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1037,   nil,   nil,  1037,
-   nil,   nil,  1037,  1037,   nil,   nil,  1037,   nil,  1037,   nil,
-  1037,   nil,  1037,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1037,   nil,   nil,   nil,   nil,  1037,  1037,  1037,  1037,  1037,
-  1037,   nil,   nil,   nil,  1037,  1037,   nil,   nil,   nil,   nil,
-   nil,   nil,  1037,   nil,  1037,  1037,  1037,  1037,   nil,  1037,
-  1037,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,   nil,   nil,   nil,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,   nil,   nil,
-   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,   nil,    11,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,
-    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,
-    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    11,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,   nil,   nil,
-   nil,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,   nil,   nil,   nil,   nil,   nil,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,   nil,   nil,    12,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,
-    12,    12,    12,    12,    12,    12,   nil,   nil,    12,    12,
-   nil,   nil,   nil,    12,    12,    12,    12,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    12,    12,   nil,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    12,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,   nil,   nil,   nil,   nil,   nil,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,    75,
-    75,   nil,    75,    75,    75,    75,    75,    75,    75,   nil,
-   nil,    75,    75,   nil,   nil,   nil,    75,    75,    75,    75,
-   nil,   nil,   nil,   nil,   nil,    75,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    75,    75,   nil,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,   nil,   nil,    75,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   nil,   nil,   nil,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   nil,   nil,   nil,
-   nil,   nil,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   nil,   105,   nil,   nil,   nil,   nil,
-   nil,   nil,   105,   105,   nil,   105,   105,   105,   105,   105,
-   105,   105,   nil,   nil,   105,   105,   nil,   nil,   nil,   105,
-   105,   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   nil,   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   105,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   422,   422,   422,   422,   nil,   nil,   nil,
-   422,   422,   422,   422,   422,   422,   422,   422,   422,   422,
-   nil,   nil,   nil,   nil,   nil,   422,   422,   422,   422,   422,
-   422,   422,   422,   422,   nil,   nil,   422,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   422,   422,   nil,   422,   422,
-   422,   422,   422,   422,   422,   nil,   nil,   422,   422,   nil,
-   nil,   nil,   422,   422,   422,   422,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   422,
-   422,   nil,   422,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   nil,   nil,   422,   422,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   422,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   422,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   654,
-   nil,   nil,   nil,   654,   654,   654,   654,   654,   654,   654,
-   654,   654,   654,   nil,   nil,   nil,   nil,   nil,   654,   654,
-   654,   654,   654,   654,   654,   654,   654,   nil,   nil,   654,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,   654,
-   nil,   654,   654,   654,   654,   654,   654,   654,   nil,   nil,
-   654,   654,   nil,   nil,   nil,   654,   654,   654,   654,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   654,   654,   nil,   654,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   nil,   nil,   654,   654,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,   765,
-   765,   765,   765,   765,   765,   765,   765,   765,   765,   765,
-   765,   765,   765,   765,   765,   765,   765,   765,   765,   765,
-   765,   765,   765,   nil,   nil,   nil,   765,   765,   765,   765,
-   765,   765,   765,   765,   765,   765,   nil,   nil,   nil,   nil,
-   nil,   765,   765,   765,   765,   765,   765,   765,   765,   765,
-   nil,   nil,   765,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   765,   765,   nil,   765,   765,   765,   765,   765,   765,
-   765,   nil,   nil,   765,   765,   nil,   nil,   nil,   765,   765,
-   765,   765,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   765,   765,   nil,   765,   765,
-   765,   765,   765,   765,   765,   765,   765,   765,   765,   nil,
-   nil,   765,   nil,   nil,   nil,   nil,   228,   228,   nil,   nil,
-   228,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   228,
-   228,   765,   228,   228,   228,   228,   228,   228,   228,   nil,
-   nil,   228,   228,   nil,   nil,   nil,   228,   228,   228,   228,
-   nil,   nil,   nil,   nil,   nil,   228,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   228,   228,   nil,   228,   228,   228,   228,
-   228,   228,   228,   228,   228,   228,   228,   nil,   nil,   228,
-   nil,   nil,   nil,   nil,   229,   229,   nil,   nil,   229,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,   228,
-   229,   229,   229,   229,   229,   229,   229,   nil,   nil,   229,
-   229,   nil,   nil,   nil,   229,   229,   229,   229,   nil,   nil,
-   nil,   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   229,   229,   nil,   229,   229,   229,   229,   229,   229,
-   229,   229,   229,   229,   229,   nil,   nil,   229,   nil,   nil,
-   nil,   nil,   473,   473,   nil,   nil,   473,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   473,   473,   229,   473,   473,
-   473,   473,   473,   473,   473,   nil,   nil,   473,   473,   nil,
-   nil,   nil,   473,   473,   473,   473,   nil,   nil,   nil,   nil,
-   nil,   473,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   473,
-   473,   nil,   473,   473,   473,   473,   473,   473,   473,   473,
-   473,   473,   473,   nil,   nil,   473,   nil,   nil,   nil,   nil,
-   474,   474,   nil,   nil,   474,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   474,   474,   473,   474,   474,   474,   474,
-   474,   474,   474,   nil,   nil,   474,   474,   nil,   nil,   nil,
-   474,   474,   474,   474,   nil,   nil,   nil,   nil,   nil,   474,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   474,   474,   nil,
-   474,   474,   474,   474,   474,   474,   474,   474,   474,   474,
-   474,   nil,   nil,   474,   nil,   nil,   nil,   nil,   539,   539,
-   nil,   nil,   539,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   539,   539,   474,   539,   539,   539,   539,   539,   539,
-   539,   nil,   nil,   539,   539,   nil,   nil,   nil,   539,   539,
-   539,   539,   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   539,   539,   nil,   539,   539,
-   539,   539,   539,   539,   539,   539,   539,   539,   539,   nil,
-   nil,   539,   nil,   nil,   nil,   nil,   540,   540,   nil,   nil,
-   540,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   540,
-   540,   539,   540,   540,   540,   540,   540,   540,   540,   nil,
-   nil,   540,   540,   nil,   nil,   nil,   540,   540,   540,   540,
-   nil,   nil,   nil,   nil,   nil,   540,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   540,   540,   nil,   540,   540,   540,   540,
-   540,   540,   540,   540,   540,   540,   540,   nil,   nil,   540,
-   nil,   nil,   nil,   nil,   549,   549,   nil,   nil,   549,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   549,   549,   540,
-   549,   549,   549,   549,   549,   549,   549,   nil,   nil,   549,
-   549,   nil,   nil,   nil,   549,   549,   549,   549,   nil,   nil,
-   nil,   nil,   nil,   549,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   549,   549,   nil,   549,   549,   549,   549,   549,   549,
-   549,   549,   549,   549,   549,   nil,   nil,   549,   nil,   nil,
-   nil,   nil,   550,   550,   nil,   nil,   550,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   550,   550,   549,   550,   550,
-   550,   550,   550,   550,   550,   nil,   nil,   550,   550,   nil,
-   nil,   nil,   550,   550,   550,   550,   nil,   nil,   nil,   nil,
-   nil,   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,
-   550,   nil,   550,   550,   550,   550,   550,   550,   550,   550,
-   550,   550,   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,
-   578,   578,   nil,   nil,   578,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   578,   578,   550,   578,   578,   578,   578,
-   578,   578,   578,   nil,   nil,   578,   578,   nil,   nil,   nil,
-   578,   578,   578,   578,   nil,   nil,   nil,   nil,   nil,   578,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   578,   578,   nil,
-   578,   578,   578,   578,   578,   578,   578,   578,   578,   578,
-   578,   nil,   nil,   578,   nil,   nil,   nil,   nil,   579,   579,
-   nil,   nil,   579,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   579,   579,   578,   579,   579,   579,   579,   579,   579,
-   579,   nil,   nil,   579,   579,   nil,   nil,   nil,   579,   579,
-   579,   579,   nil,   nil,   nil,   nil,   nil,   579,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   579,   579,   nil,   579,   579,
-   579,   579,   579,   579,   579,   579,   579,   579,   579,   nil,
-   nil,   579,   nil,   nil,   nil,   nil,   660,   660,   nil,   nil,
-   660,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   660,
-   660,   579,   660,   660,   660,   660,   660,   660,   660,   nil,
-   nil,   660,   660,   nil,   nil,   nil,   660,   660,   660,   660,
-   nil,   nil,   nil,   nil,   nil,   660,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   660,   660,   nil,   660,   660,   660,   660,
-   660,   660,   660,   660,   660,   660,   660,   nil,   nil,   660,
-   nil,   nil,   nil,   nil,   661,   661,   nil,   nil,   661,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   661,   661,   660,
-   661,   661,   661,   661,   661,   661,   661,   nil,   nil,   661,
-   661,   nil,   nil,   nil,   661,   661,   661,   661,   nil,   nil,
-   nil,   nil,   nil,   661,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   661,   661,   nil,   661,   661,   661,   661,   661,   661,
-   661,   661,   661,   661,   661,   nil,   nil,   661,   nil,   nil,
-   nil,   nil,   754,   754,   nil,   nil,   754,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   754,   754,   661,   754,   754,
-   754,   754,   754,   754,   754,   nil,   nil,   754,   754,   nil,
-   nil,   nil,   754,   754,   754,   754,   nil,   nil,   nil,   nil,
-   nil,   754,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   754,
-   754,   nil,   754,   754,   754,   754,   754,   754,   754,   754,
-   754,   754,   754,   nil,   nil,   754,   nil,   nil,   nil,   nil,
-   755,   755,   nil,   nil,   755,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   755,   755,   754,   755,   755,   755,   755,
-   755,   755,   755,   nil,   nil,   755,   755,   nil,   nil,   nil,
-   755,   755,   755,   755,   nil,   nil,   nil,   nil,   nil,   755,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   755,   755,   nil,
-   755,   755,   755,   755,   755,   755,   755,   755,   755,   755,
-   755,   nil,   981,   755,   981,   981,   981,   981,   981,   984,
-   nil,   984,   984,   984,   984,   984,   nil,   nil,   981,   nil,
-   nil,   nil,   nil,   755,   nil,   984,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   981,   nil,   nil,   nil,   nil,   nil,   nil,   984,   nil,   981,
-   981,   981,   981,   nil,   nil,   nil,   984,   984,   984,   984,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1033,  1033,   nil,
-   nil,  1033,   nil,   nil,   nil,   981,   nil,   nil,   nil,   nil,
-  1033,  1033,   984,  1033,  1033,  1033,  1033,  1033,  1033,  1033,
-   nil,   nil,  1033,  1033,   nil,   nil,   nil,  1033,  1033,  1033,
-  1033,   nil,   nil,   nil,   nil,   nil,  1033,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1033,  1033,   nil,  1033,  1033,  1033,
-  1033,  1033,  1033,  1033,  1033,  1033,  1033,  1033,   nil,   nil,
-  1033,   nil,   nil,   nil,   nil,  1038,  1038,   nil,   nil,  1038,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1038,  1038,
-  1033,  1038,  1038,  1038,  1038,  1038,  1038,  1038,   nil,   nil,
-  1038,  1038,   nil,   nil,   nil,  1038,  1038,  1038,  1038,   nil,
-   nil,   nil,   nil,   nil,  1038,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1038,  1038,   nil,  1038,  1038,  1038,  1038,  1038,
-  1038,  1038,  1038,  1038,  1038,  1038,   nil,   nil,  1038,   nil,
-   nil,   nil,   nil,  1039,  1039,   nil,   nil,  1039,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1039,  1039,  1038,  1039,
-  1039,  1039,  1039,  1039,  1039,  1039,   nil,   nil,  1039,  1039,
-   nil,   nil,   nil,  1039,  1039,  1039,  1039,   nil,   nil,   nil,
-   nil,   nil,  1039,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1039,  1039,   nil,  1039,  1039,  1039,  1039,  1039,  1039,  1039,
-  1039,  1039,  1039,  1039,   nil,  1057,  1039,  1057,  1057,  1057,
-  1057,  1057,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1057,   nil,   nil,   nil,   nil,  1039,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1057,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1057,  1057,  1057,  1057,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1057 ]
-
-racc_action_pointer = [
-   nil,    34,  2018,    60,   nil,   201,   nil,   nil,  6077,   763,
-   nil, 23869, 24002,   -12,   nil,   -30,    60,   -17,   152,   279,
-   112,   nil,   -60,  6216,  2298,   236,   nil,   -40,   nil,     0,
-  1084,  1216,  6355,  6494,  6633,   nil,  2158,  6772,  6911,   nil,
-   144,   208,   304,   268,   159,  7050,  7189,   489,  7328,   203,
-   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1348,   nil,  7467,   nil,   nil,    73,   nil,  7606,  7745,   nil,
-   nil,  7884,  8023,   270,   nil, 24135,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   -65,   nil,   nil,   nil,   nil,   nil,   nil,   255,
-   278,   284,   294,   nil,   nil, 24268,   nil,   nil,   nil,   nil,
-   nil,   nil,     0,   nil,   nil,   139,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  8162,   nil,
-   nil,   nil,   nil,  8301,  8440,  8579,  8718,  8857,   323,   nil,
-   605,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   331,
-   nil,  2298,  8996,  9135,  9274,  9413,  9552,  9691, 24735, 24803,
-   nil,   nil,  9830,  9969, 10108,   nil,   nil,   356,   -55,   -52,
-   430,   162,   351,   434,   nil, 10247,  2438,   433, 10386, 10525,
- 10664, 10803, 10942, 11081, 11220, 11359, 11498, 11637, 11776, 11915,
- 12054, 12193, 12332, 12471, 12610, 12749, 12888, 13027, 13166, 13305,
-   nil,   nil,   nil,   nil, 13444,   nil,   nil,   nil,  1876,   nil,
-   nil,   434, 13583, 13722,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil, 13861,   nil,  2438,   nil,   406,   419,   nil, 14000,
-   475, 14139,   nil,   nil, 14278, 14417,   nil,   nil,   460,   nil,
-   nil, 14556,   925,   nil,   443,  2578,   464,   512,   477, 14695,
-  2718,   371,   411,   458,   583,   510,   nil,   552,   531,   206,
-   nil,   nil,   nil,   575,   254,   556, 14834,   nil,   308,   620,
-   514,   nil,   646, 14973,   nil, 15112,  2858,  1166,   589, 15251,
- 15390,   nil,    11,   -10,    -1, 15529,  2998,  3138,   476,   700,
-   594,   -19,   -14,   589,   671,    -7,   703,   nil,   nil, 15668,
-   nil, 15807,   112,   118,   120,   239,   344,   373,   377,   455,
-   459,   nil,   461,   nil,   nil,   nil,   nil,   645,   nil,   -59,
-   nil,   370,   nil,   538,   nil,   605,   378,   nil,   607,   397,
-   nil,   609,   -37,   nil,   610,   -27,   nil,   443,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil, 24401,   nil,   nil,   nil,   nil,   624,   nil,   nil,
-   612, 15946,   618,   nil,   nil,   618,   nil,   625,   182,   nil,
-   nil,   nil,  2018,   nil,   nil,   nil,   nil,   nil,  2158,   637,
-   nil,   nil,   641,   642,   430,   547,  1480,   nil,   nil,   nil,
-   271,   403,   683,   nil,   nil,  1612,  1744,   nil,   nil,   nil,
-   -33,   nil,   686, 24871, 24939, 16085,   187, 16224, 16363, 16502,
-  3138,  3278,   364,   490,   714,   724,   726,   729,   976,  1430,
-  1562,  3418,  3558,  3698,  3838,  3978,  4118,   844,  1039,  4258,
-  4398,  2578,  1166,   806,   nil,  1876,   nil,   nil,   nil,   nil,
-   690,   nil,   nil,   nil,   691,   nil,   nil, 16641,   nil,   nil,
- 16780,   nil, 16919,   nil,   265,   nil,   nil,   nil, 17058,  1178,
-   706,   698,   699,   nil,   nil,   703, 17197,   708, 17336, 25007,
- 25075,   752,   745,   nil, 17475,   707,   nil, 17614, 17753, 25143,
- 25211,  1298,  2718, 17892,   832,   831,   734,   nil,   nil,   -80,
-   -68,   766,   749,   nil,   340,   776,  3278,   853,   nil,  3418,
-    30,   859,   860,   861,   870,   nil,   nil, 18031, 25279, 25347,
-     5,   nil,   311,   342,   308,   nil,   753,   nil,   792, 18170,
-   nil,   811,   nil,   nil,   nil, 18309,   nil,   744,   nil,   773,
-   774,   nil,   777,   780,   781,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   769,   685,   nil,   nil, 18448,   nil,   nil,
-   nil,   882,   nil,   nil,   nil,   886,   nil,   nil,   895,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   198,   nil,   nil,   200,   nil,   nil,   nil,   826,   nil,   nil,
-   830,   nil,  3558,   nil, 24534,   nil,   842, 18587, 18726, 18865,
- 25415, 25483, 19004,   585,   882, 19143, 19282, 19421, 19560,   882,
-   nil,   nil,   nil, 19699, 19838,   883,   nil,   nil,   nil,   189,
-   216,   542,   681,   870,   869,   nil,   116,   972,   163,   nil,
-   nil,   888,   nil,   996,   nil,   880,   nil,   922, 19977,   nil,
-   nil, 20116,   nil,   nil,  -123, 20255,   882,   nil,   901,    -9,
-    28,   951,    33,   773,   952,   916, 20394,   nil,   995,   156,
-   221,   nil, 20533,   nil,   nil,   nil,   nil, 20672,   nil,   nil,
- 20811,   nil,   nil,   nil,   610,   nil,  1052,   nil,   nil,   nil,
-   nil,   nil,  1059,   nil, 20950,   944,    20,    29,   163,   165,
-  3698,   nil,   763,   nil, 25551, 25619, 21089,   nil,   nil,   nil,
-   595,  3838,  3978,   874,  1048, 24667,   165,    27,   947,   234,
-   nil,   nil,   578,  1147,   nil,  1279,   nil,   471,   nil, 21228,
-   nil,   949,   nil,   956,   957,   881,   962,   nil,   nil,   nil,
-   nil,   936,  4118,   nil,   nil,   nil,   nil,   nil,   977,   nil,
-   965, 21367,   969,   222,   274,   813,   945,  2858, 21506,   nil,
-   978,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil, 21645, 21784, 21923, 22062,   317, 22201,   nil,   nil,  1411,
-   nil,  4258,   nil,   nil,   995,   nil,   119,   nil,   nil,   nil,
-   nil,   983,   160,   nil,   nil,   nil,   nil,   nil,   nil,  4398,
-   nil,   984,  1026,   nil,   nil,   447,  1107,   nil,   nil, 22340,
-   nil,  4538,  1108,   nil,   nil,   nil, 22479,    42,    41,  1109,
-   550,   781,   nil,   993,  4678, 22618,   535,  1113,  1120,  1007,
-   551,   nil,   nil,   nil,  4818,  4958,  1004,  1010,  1010,   nil,
-   nil,   nil,  1011,  1012,   nil,  1021,  1036,   nil,  1041,   nil,
-   nil,  1045,   980,   819,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1035,   nil,  1047,   320,   nil,   nil, 22757, 22896,  2998,
-  1048,  1051,   nil,  1055,  1057,  1065,   nil,  1090,  1086,  1083,
- 23035,   nil,   nil,   nil,   nil,  5098,  5238,   nil,     6, 23174,
-   nil,   nil,   nil,    10,   nil,   nil,   nil, 23313,  5378,   nil,
-   nil,  1222,   580,   nil,   nil,   nil,   nil,   nil,  1144,  1127,
-  1235,  1010,   nil,   nil,  1543,   nil,  1675,   nil,  6793,   nil,
-  6932,   nil,   nil,   nil,   nil,  1122,  1125,   nil,   325,   nil,
-   nil, 25681,   nil,   nil, 25688,   nil,  8044,   nil,   nil,  1152,
- 23452,   884,  1213,   nil,  1266,  5518,    19,    38,   898,  1221,
-    69,   nil,  5658,   nil, 23591,   355,   nil,   nil,  5798,  5938,
-   nil,   nil,   451,   nil,   nil,   nil,  1149,  1150,  1151,  1153,
-  1077,  1184,  1168,   nil,   nil,  1169,  1173,  1174,  1176,   nil,
-  1179,   nil,   913, 25756,   nil,   nil,  1302, 23730, 25824, 25892,
-   106,   691,   nil,   nil,   nil,   nil,  1303,  1305,   nil,  1209,
- 14716,   nil,   nil,   nil,   nil,  1187,   nil, 25954,   nil, 14855,
-   nil, 15689,   nil, 15828,   nil,   nil,  1228,  1236,   nil,  1202,
-   128,   131,   171,   174,   nil,   nil,   nil,   nil,  1202,  1208,
-  1209,  1210,  1211,   162,   nil, 17218,   nil,   nil,   nil,   nil,
-  1212,   nil ]
-
-racc_action_default = [
-    -1,  -648,  -647,  -648,    -2,  -634,    -4,    -5,  -648,    -8,
-    -9,  -648,  -648,  -648,   -36,  -648,  -648,   -40,  -648,  -648,
-  -291,   -51,  -636,  -648,   -56,   -61,   -62,   -63,   -67,  -268,
-  -268,  -268,  -306,  -339,  -340,   -79,  -647,   -83,   -91,   -93,
-  -648,  -535,  -536,  -648,  -648,  -648,  -648,  -227,  -648,  -636,
-  -241,  -282,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,
-  -620,  -293,  -295,  -302,  -304,  -314,  -316,  -648,  -648,   -58,
-   -58,  -634,  -648,  -324,  -331,  -648,  -341,  -342,  -344,  -345,
-  -346,  -347,  -348,  -349,  -350,  -351,  -352,  -353,  -362,  -417,
-  -465,  -466,  -467,  -468,  -469,  -647,  -472,  -647,  -647,  -647,
-  -647,  -647,  -647,  -508,  -509,  -647,  -511,  -517,  -519,  -520,
-  -521,  -522,  -618,  -524,  -525,  -619,  -527,  -528,  -529,  -530,
-  -531,  -532,  -533,  -534,  -539,  -540,  1092,    -3,  -635,  -643,
-  -644,  -645,    -7,  -648,  -648,  -648,  -648,  -648,  -648,   -24,
-  -648,  -122,  -123,  -124,  -125,  -126,  -127,  -128,  -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,
-  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,   -29,
-  -129,  -647,  -648,  -648,  -648,  -648,  -648,  -647,  -648,  -648,
-  -630,  -631,  -648,  -648,  -636,  -637,   -55,  -648,  -535,  -536,
-  -648,  -291,  -648,  -648,  -233,  -648,  -647,  -648,  -648,  -648,
-  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,
-  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,
-  -242,  -243,  -244,  -245,  -648,  -355,  -445,  -425,  -648,  -632,
-  -633,   -68,  -647,  -648,  -313,  -354,  -429,  -438,  -440,   -74,
-  -435,   -75,  -636,   -76,  -248,  -263,  -647,  -647,  -267,  -648,
-  -273,  -648,  -647,  -612,  -648,  -648,   -77,   -78,  -634,   -17,
-   -18,  -648,   -21,   -22,   -81,  -647,  -636,  -648,   -84,   -87,
-  -647,   -99,  -100,  -648,  -648,  -107,  -306,  -309,  -636,  -648,
-  -339,  -340,  -343,  -436,  -648,   -89,  -648,   -95,  -301,  -518,
-  -648,  -221,  -222,  -648,  -234,  -648,  -647,  -297,  -636,  -647,
-  -647,  -315,   -57,  -648,  -648,  -648,  -647,  -647,  -634,  -648,
-  -635,  -535,  -536,  -648,  -648,  -291,  -648,  -372,  -373,  -648,
-  -327,  -648,  -122,  -123,  -162,  -163,  -164,  -180,  -185,  -192,
-  -195,  -334,  -648,  -535,  -536,  -607,  -608,  -567,  -470,  -648,
-  -493,  -648,  -495,  -648,  -497,  -648,  -648,  -477,  -648,  -648,
-  -483,  -648,  -648,  -489,  -648,  -648,  -491,  -648,  -510,  -512,
-  -513,  -514,  -515,    -6,  -646,   -30,   -31,   -32,   -33,   -34,
-   -10,   -11,  -648,   -26,   -27,   -28,  -130,  -648,   -37,   -39,
-  -278,  -648,  -648,  -277,   -38,  -648,   -41,  -648,  -291,   -49,
-   -50,  -203,  -253,  -273,   -52,   -53,   -42,  -204,  -253,  -636,
-  -258,  -259,  -647,  -647,  -621,  -622,  -268,  -433,  -623,  -624,
-  -622,  -621,  -268,  -432,  -434,  -623,  -624,   -48,  -211,   -54,
-  -636,  -312,  -648,  -648,  -648,  -647,  -301,  -648,  -648,  -648,
-  -212,  -213,  -214,  -215,  -216,  -217,  -218,  -219,  -223,  -224,
-  -225,  -226,  -228,  -229,  -230,  -231,  -232,  -235,  -236,  -237,
-  -238,  -636,  -246,  -648,  -446,  -268,  -621,  -622,   -65,   -69,
-  -636,  -269,  -442,  -445,  -636,  -308,  -264,  -648,  -272,  -265,
-  -648,  -270,  -648,  -274,  -648,  -615,  -617,   -16,  -635,   -20,
-  -648,  -636,   -80,  -299,   -96,   -85,  -648,  -636,  -647,  -648,
-  -648,  -106,  -648,  -518,  -648,   -92,   -97,  -648,  -648,  -648,
-  -648,  -247,  -239,  -648,  -457,  -648,  -636,  -296,  -249,  -640,
-  -640,  -648,  -648,  -610,  -640,  -648,  -647,  -363,  -364,  -647,
-  -648,  -648,  -648,  -648,  -648,  -358,  -452,  -647,  -648,  -648,
-  -301,   -58,  -117,  -118,  -648,  -120,  -648,  -291,  -647,  -648,
-  -332,  -545,  -336,  -628,  -629,  -648,  -418,  -567,  -421,  -606,
-  -606,  -550,  -552,  -552,  -552,  -566,  -568,  -569,  -570,  -571,
-  -572,  -573,  -574,  -575,  -648,  -577,  -579,  -581,  -586,  -588,
-  -589,  -591,  -596,  -598,  -599,  -601,  -602,  -603,  -648,  -471,
-  -494,  -499,  -500,  -502,  -473,  -496,  -474,  -498,  -475,  -476,
-  -648,  -479,  -481,  -648,  -482,  -485,  -486,  -648,  -487,  -488,
-  -648,  -516,  -647,   -25,  -648,   -35,  -281,  -648,  -648,  -647,
-  -648,  -648,  -648,  -437,  -648,  -260,  -262,  -648,  -648,   -70,
-  -256,  -257,  -430,  -648,  -648,   -72,  -431,  -311,  -638,  -621,
-  -622,  -621,  -622,  -636,  -648,  -424,  -647,   -64,  -426,  -442,
-  -255,  -648,  -443,  -648,  -307,  -647,  -271,  -275,  -648,  -613,
-  -614,  -648,   -19,   -23,   -82,  -648,   -88,   -94,  -636,  -621,
-  -622,  -647,  -625,  -105,  -648,   -90,  -648,  -210,  -220,  -636,
-  -647,  -356,  -647,  -294,  -361,  -298,  -250,  -642,  -641,  -252,
-  -642,  -303,  -305,  -611,  -647,  -365,  -647,   -59,  -366,  -367,
-  -319,  -320,  -648,  -322,  -648,  -636,  -621,  -622,  -625,  -300,
-  -647,  -117,  -118,  -119,  -648,  -648,  -647,  -325,  -541,  -543,
-  -328,  -647,  -647,  -567,  -567,  -648,  -636,  -648,  -636,  -648,
-  -548,  -549,  -648,  -648,  -559,  -648,  -562,  -648,  -564,  -648,
-  -374,  -648,  -376,  -378,  -381,  -384,  -636,  -580,  -590,  -600,
-  -604,  -648,  -647,  -478,  -480,  -484,  -490,  -492,  -648,  -131,
-  -279,  -648,  -636,  -621,  -622,  -622,  -621,  -254,  -648,  -639,
-  -647,   -44,  -206,   -45,  -207,   -71,   -46,  -209,   -47,  -208,
-   -73,  -648,  -648,  -648,  -648,  -437,  -648,  -406,  -407,  -636,
-  -409,  -647,  -428,  -427,  -648,  -439,  -647,  -441,  -266,  -276,
-  -616,   -86,  -437,   -98,  -310,   -13,   -15,  -357,  -359,  -647,
-  -464,  -458,  -647,  -459,  -460,  -640,  -648,  -360,  -368,  -648,
-  -370,  -647,  -648,   -60,  -321,  -448,  -648,  -648,  -437,  -648,
-  -117,  -118,  -121,  -636,  -647,  -648,  -648,  -648,  -648,  -636,
-  -648,  -337,  -609,  -419,  -647,  -647,  -411,  -636,  -606,  -587,
-  -605,  -551,  -552,  -552,  -578,  -552,  -552,  -597,  -552,  -575,
-  -592,  -636,  -648,  -648,  -383,  -576,  -501,  -504,  -505,  -506,
-  -507,  -648,   -12,  -280,  -437,   -43,  -205,  -261,  -648,  -240,
-  -606,  -606,  -388,  -647,  -647,  -647,  -405,  -648,  -636,  -575,
-  -583,  -584,  -594,  -447,   -66,  -647,  -647,  -463,  -648,  -648,
-  -462,  -251,  -317,  -648,  -371,  -318,  -449,  -648,  -647,  -323,
-  -437,  -648,  -648,  -329,  -333,  -335,  -544,  -546,  -545,  -648,
-  -648,  -648,  -420,  -547,  -648,  -555,  -648,  -557,  -648,  -560,
-  -648,  -563,  -565,  -375,  -377,  -379,  -382,  -503,  -648,  -386,
-  -387,  -396,  -390,  -398,  -648,  -401,  -648,  -403,  -408,  -648,
-  -648,  -582,  -648,  -444,  -647,  -647,  -535,  -536,  -648,  -648,
-  -291,  -461,  -647,  -450,  -648,  -647,  -326,  -542,  -647,  -647,
-  -422,  -423,  -636,  -413,  -415,  -416,  -552,  -552,  -552,  -552,
-  -648,  -648,  -606,  -585,  -389,  -647,  -647,  -647,  -647,  -595,
-  -647,  -410,  -593,  -648,  -301,   -14,  -457,  -647,  -648,  -648,
-  -301,  -647,  -451,  -453,  -454,  -455,  -648,  -648,  -412,  -648,
-  -648,  -553,  -556,  -558,  -561,  -380,  -385,  -648,  -393,  -648,
-  -395,  -648,  -399,  -648,  -402,  -404,  -300,  -625,  -456,  -636,
-  -621,  -622,  -625,  -300,  -369,  -330,  -338,  -414,  -552,  -647,
-  -647,  -647,  -647,  -437,  -554,  -648,  -391,  -394,  -397,  -400,
-  -647,  -392 ]
-
-racc_goto_table = [
-     6,   277,   318,   233,   295,   295,   295,   131,   144,   144,
-   228,   381,   286,   290,   449,     4,   574,   351,   279,   509,
-   555,   699,   297,   297,   297,   456,   462,   519,   433,   434,
-   345,   332,   332,   139,   220,   720,   317,   420,   353,   354,
-   545,   409,   358,   762,   147,   147,   356,   357,   566,   569,
-   598,   856,   446,     9,   335,   613,   352,   352,   467,     9,
-   352,   897,   691,   846,   770,   771,   332,   696,   128,   510,
-   696,   339,   144,   131,   503,   505,   862,   894,   281,   289,
-   291,   127,   389,   605,   663,   780,   786,   753,   893,   887,
-   895,   924,   407,   390,   831,   392,   394,   397,   400,   403,
-   406,   974,   144,   390,   415,   416,   417,   418,  1013,   726,
-   729,  1029,   976,   347,   733,   132,     1,   293,   306,   307,
-     2,  1015,   352,   352,   352,   352,   138,   314,   640,   236,
-   588,   643,   590,   652,   845,   936,   316,   702,   635,   530,
-   637,   219,   368,   641,   925,   429,   641,   359,   447,   422,
-   927,   737,   863,   278,   468,   689,   654,   440,   343,   561,
-   440,   296,   296,   296,   688,   385,   440,   699,   562,   366,
-   757,   382,    19,   592,   346,   348,   556,   349,    19,     9,
-   350,   369,   874,   519,  1029,   589,   876,  1008,   419,   371,
-   761,   591,   765,   237,   958,   975,  1077,   926,   928,   295,
-  1012,   596,   237,   237,   237,   883,    19,   323,   323,  1015,
-   387,   457,   767,   444,   445,   696,   696,   512,   513,   836,
-   974,   427,   469,   470,   867,   450,   466,   686,   473,  1055,
-   742,   699,    19,  1043,   744,   413,   852,   237,   237,   834,
-   706,   237,   363,  1025,   935,   938,   317,   388,   715,   989,
-   897,   391,   780,   901,   295,   295,   904,   872,   393,   396,
-   768,   399,   683,   402,   295,   613,   405,   906,   791,   792,
-   456,   462,   408,   297,   894,   875,   892,   889,  1023,  1016,
-   450,   595,   297,   nil,   471,   894,   nil,   nil,   nil,   524,
-   nil,   nil,   nil,   605,   518,   518,  1026,   nil,    19,  1027,
-   390,   546,   nil,   237,   237,   237,   237,    19,   nil,   542,
-   131,   693,   286,   332,   539,   317,   290,   nil,   825,   nil,
-   317,   nil,   nil,   nil,   nil,   708,   570,   nil,   428,   439,
-   332,   549,   439,   nil,   nil,   535,   711,  1035,   439,   560,
-   564,   nil,   515,   842,   352,  1044,   711,   558,   563,   nil,
-   nil,   432,   432,   963,   578,   nil,   571,   572,  1074,   nil,
-   131,   543,   529,   332,   745,   332,   532,   894,   511,   nil,
-   nil,   528,  1079,   780,   780,   711,   nil,   514,   nil,   nil,
-   868,   774,   776,   778,   527,   979,   980,   794,   nil,   nil,
-   794,    19,   237,   437,   237,   237,   437,   237,   557,   468,
-   nil,   447,   437,   237,   237,   941,   314,   815,   nil,   841,
-  1009,   314,   296,   820,   nil,   531,    19,   nil,   699,   144,
-   537,   296,   nil,   nil,   nil,   838,   879,   880,   660,   703,
-   664,   613,   613,   nil,   573,   877,   878,   914,   nil,   671,
-   nil,   613,   nil,   613,   653,   676,   802,   295,   nil,   nil,
-   518,   518,   237,   237,   670,   147,   457,   456,   462,   605,
-   605,   nil,   237,   nil,   nil,   nil,   nil,   696,   nil,   717,
-   nil,   466,   nil,   450,   nil,   nil,   nil,   nil,   559,   nil,
-   nil,    19,   684,   nil,   nil,    19,   nil,  1056,   671,   323,
-    19,   780,   780,   811,   813,   nil,   nil,   929,   nil,   816,
-   818,   546,   nil,   670,   nil,   669,   323,   695,   950,   546,
-   295,   675,   nil,   nil,   nil,   nil,    19,  1068,   nil,   nil,
-   677,   nil,   457,   nil,   nil,   237,    19,    19,   853,   nil,
-   332,   nil,   457,   nil,   nil,   nil,   450,   466,   332,   586,
-   838,   586,   719,   873,   nil,   nil,   nil,   466,   951,   295,
-   nil,   nil,   711,   nil,   687,   nil,   nil,   nil,   750,   960,
-   690,   457,   948,   nil,   694,   nil,   734,   nil,   nil,   736,
-   nil,   nil,   738,   nil,   nil,   450,   466,   nil,   760,   nil,
-   nil,   704,   nil,   nil,   766,   nil,   759,   707,   nil,   812,
-   814,   nil,   440,   nil,   nil,   817,   819,   nil,   nil,   nil,
-   nil,   440,   440,   nil,   nil,   nil,   725,   440,   440,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   295,   613,   995,   915,   nil,   nil,   nil,  1002,   nil,
-   833,   nil,   nil,   457,   nil,   237,   nil,   nil,   nil,   929,
-     6,   144,   929,   nil,   nil,   810,   nil,   450,   466,   nil,
-   nil,   nil,  1045,   832,   664,   798,   nil,   nil,   nil,   nil,
-   546,   965,   967,   nil,   969,   971,   799,   972,   nil,   nil,
-   nil,   843,  1046,  1047,   827,   nil,   nil,   147,   nil,   664,
-   nil,   nil,   nil,   518,   671,   nil,   nil,   676,    19,   332,
-   nil,   881,   nil,     9,  1083,   nil,   323,   nil,   237,   670,
-   332,   nil,   nil,   nil,   323,   nil,   nil,   855,   850,   nil,
-   854,   nil,   nil,   237,   nil,   929,   664,   nil,   295,   nil,
-   916,   nil,   860,   nil,   860,   nil,    19,   nil,   457,    19,
-   nil,   nil,   440,   812,   814,   819,   817,   237,   nil,   886,
-   869,   466,   nil,   nil,   450,   nil,   nil,   nil,   nil,   237,
-   nil,   nil,   144,   nil,   439,   237,   nil,   nil,   nil,   844,
-   nil,   nil,   nil,   439,   439,   nil,   nil,   nil,   nil,   439,
-   439,   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   911,   nil,   nil,  1051,  1052,  1053,  1054,   888,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   518,   nil,
-   886,   nil,   nil,   430,   443,   nil,   882,   nil,   nil,   nil,
-   nil,   nil,    19,   nil,  1069,   nil,   nil,   nil,   437,   237,
-   943,   933,   nil,   nil,   827,   711,   905,   437,   437,    29,
-   916,   nil,   nil,   437,   437,    29,   952,   nil,   352,   937,
-   940,   432,   nil,   nil,   664,   nil,   nil,  1084,   nil,   921,
-    29,   944,   nil,   nil,   352,   nil,   nil,   nil,   nil,    29,
-    29,    29,   nil,    29,   nil,   323,   nil,   nil,   953,   nil,
-   nil,   723,   957,   nil,   959,   nil,   323,   nil,   nil,   nil,
-   521,   nil,   523,   nil,   930,   525,   526,   740,   741,    29,
-   743,   nil,   nil,   nil,    29,    29,   nil,   nil,    29,   886,
-   nil,   nil,   nil,   nil,   439,   nil,   nil,   nil,   nil,   nil,
-    19,   982,   982,   982,   332,   nil,   237,   nil,   nil,   956,
-   nil,    19,    19,   332,   nil,   993,   994,   962,   nil,   nil,
-   nil,   565,   nil,   nil,   890,   nil,   nil,   890,  1005,   nil,
-   nil,   973,   nil,   896,  1007,   898,   nil,   nil,   nil,   nil,
-   nil,   nil,    19,   nil,   nil,    29,   nil,   nil,   nil,   nil,
-    29,    29,    29,    29,    29,   nil,   nil,   nil,   437,   nil,
-   nil,   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,  1038,
-   nil,   nil,   850,  1048,   nil,  1036,   nil,   nil,   nil,   nil,
-   nil,    19,  1041,   860,   922,   nil,   nil,   923,  1022,   295,
-   nil,   921,   nil,   nil,   921,   nil,   921,   nil,   nil,    19,
-   nil,   457,   656,   982,   982,   982,   982,   nil,   982,   237,
-   466,    19,   nil,   nil,   nil,   450,   466,   nil,   nil,   860,
-   nil,   nil,   nil,   930,    19,   237,   930,   nil,   nil,   930,
-   664,   930,   nil,   nil,    19,    19,   nil,   nil,    29,    29,
-    29,    29,    29,    29,    29,   nil,   nil,   nil,   864,    29,
-    29,    29,   nil,   nil,   nil,   nil,   nil,   982,   982,   982,
-   982,   nil,   nil,    29,   nil,   nil,   nil,   921,   982,   921,
-   nil,   921,   nil,   921,   nil,   nil,   nil,   nil,   nil,   nil,
-   991,   nil,   nil,   nil,   nil,    19,    19,   nil,   697,   998,
-   nil,   565,   nil,   700,   nil,   921,   nil,   nil,    19,    29,
-    29,   nil,   930,   nil,   930,   nil,   930,   nil,   930,    29,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   983,
-   985,   987,  1017,   nil,  1018,   nil,  1019,   nil,    29,   nil,
-   930,   nil,    29,   890,   nil,   nil,   922,    29,   nil,   922,
-  1032,   922,  1028,   nil,  1030,    19,   nil,   nil,   nil,   nil,
-   nil,   nil,    19,   nil,   nil,   nil,   nil,   nil,    19,    19,
-   nil,   nil,   942,    29,   nil,   nil,   nil,   nil,   945,   nil,
-   nil,   nil,    29,    29,    29,   949,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   954,   955,   nil,   nil,   237,   787,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,  1078,   nil,
-   nil,   nil,   922,   nil,   922,  1080,   922,  1081,   922,  1082,
-    32,  1058,  1060,  1062,  1064,   nil,  1065,   nil,   800,    32,
-    32,    32,   nil,    32,   nil,   nil,   697,   565,   nil,   nil,
-   922,   nil,   nil,  1090,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1006,   nil,    32,
-   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,    32,   839,
-   nil,   nil,   840,   nil,   nil,  1086,  1087,  1088,  1089,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1091,   nil,   nil,   nil,
-   nil,   nil,    29,   851,   nil,   nil,   nil,   nil,   697,   nil,
-   nil,   565,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   865,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-    32,    32,    32,    32,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
-   900,   nil,  1075,  1076,   nil,    29,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,   913,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,    32,    32,
-    32,    32,    32,    32,    32,   nil,   nil,   nil,   nil,    32,
-    32,    32,   nil,   nil,   nil,   nil,   nil,   946,   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,    29,
-   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,    32,
-    32,   nil,   nil,   nil,    29,    29,   nil,   nil,   565,    32,
-    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,  1003,   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,    32,    32,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,  1042,   nil,   nil,    29,    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,   nil,   nil,   nil,   nil,    29,
-   nil,   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   294,   294,   294,
-   nil,   nil,    32,   nil,   nil,   nil,    29,   nil,    29,   nil,
-   341,   342,   nil,   344,   nil,   nil,   nil,   nil,   nil,    16,
-   nil,    29,    29,   nil,   nil,    16,   nil,   nil,   nil,   nil,
-   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    16,   nil,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-    32,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,   367,
-   nil,   nil,   nil,    32,   nil,    29,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   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,    29,   nil,   nil,    16,   nil,   nil,   nil,    29,
-   nil,   nil,   nil,   nil,    16,    29,    29,   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,    29,    32,    32,   294,   442,   nil,
-   nil,   448,   294,   nil,    32,    32,   nil,   448,   nil,   nil,
-    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   480,   481,   482,   483,   484,   485,   486,
-   487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
-   497,   498,   499,   500,   501,   nil,   nil,   nil,    16,   502,
-   435,   nil,   nil,   435,   nil,   nil,   nil,   294,   294,   435,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,
-   nil,   nil,   nil,    16,   294,   nil,   294,   nil,   nil,   294,
-   294,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   551,   nil,
-   552,   nil,   nil,   nil,   294,   294,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,
-   nil,   nil,    16,   nil,   nil,    32,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    16,    16,   nil,    32,   nil,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   nil,
-   nil,    32,    32,   nil,    18,   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,
-   294,   nil,   448,   448,   448,   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,
-    18,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    18,
-   nil,   nil,   294,   nil,   nil,   294,   nil,   294,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   448,   718,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,
-   nil,   nil,   294,   nil,   nil,    16,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    18,    32,    18,   nil,   nil,    18,   nil,
-   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,    16,   nil,   nil,    16,   nil,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   448,   294,   nil,   nil,   807,   nil,   nil,
-   294,   294,   448,   448,   nil,   nil,   nil,   nil,   448,   448,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    18,   nil,   nil,   nil,    18,   nil,   nil,
-   nil,   nil,    18,   294,   nil,   nil,   294,   nil,   nil,    16,
-   nil,   nil,   nil,   nil,   nil,   435,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   435,   435,   nil,   294,    18,   nil,
-   435,   435,   294,   nil,   nil,   294,   nil,   nil,    18,    18,
-   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   294,
-    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   325,
-   325,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    20,   nil,   294,    16,   nil,   nil,
-   nil,   nil,   nil,   448,   365,   nil,   nil,   nil,    16,    16,
-   nil,   nil,   nil,   nil,   nil,   nil,   448,   448,   448,   448,
-   nil,   919,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,    41,   nil,    16,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   435,   nil,   nil,   nil,   nil,
-    20,   294,   nil,   nil,   nil,    41,   321,   321,   nil,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,
-    18,   361,   nil,   nil,   383,   nil,   nil,   nil,    16,   nil,
-   nil,   nil,   294,   448,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    16,    16,   nil,   nil,   nil,   nil,   nil,    18,   nil,
-   nil,    18,   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    20,   nil,   438,   nil,    41,   438,   nil,
-   nil,   nil,   nil,   nil,   438,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,    16,    16,   nil,   nil,  1001,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   294,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,
-    18,   nil,   294,   nil,   nil,    42,   322,   322,   nil,    18,
-    18,   nil,    16,    20,   nil,    18,    18,    20,   nil,    16,
-    41,   325,    20,   nil,   nil,    16,    16,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   325,   nil,
-   nil,   362,   nil,   nil,   384,    41,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   587,   nil,   587,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,    42,   nil,   nil,
-   nil,   nil,   nil,    18,    18,   nil,    42,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,    41,   nil,   nil,   nil,   321,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    18,   321,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   383,   nil,
-   383,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    42,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,
-    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   325,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   325,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,    20,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,
-    42,   nil,   nil,   nil,    42,   nil,   nil,   nil,   322,    42,
-    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    42,    42,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   321,   nil,    18,   384,   nil,
-   384,   nil,   nil,   321,    18,   nil,   nil,   nil,   nil,   nil,
-    18,    18,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
-   438,   nil,   nil,   nil,   nil,    41,   nil,   nil,    41,   438,
-   438,   nil,   nil,   nil,   nil,   438,   438,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   325,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   325,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   910,    20,   nil,   nil,    42,   nil,   nil,
-   nil,   nil,   nil,   nil,   321,   322,   nil,   nil,   nil,   nil,
-   438,   nil,   nil,   322,   nil,   321,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    20,   nil,    42,   nil,   nil,    42,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,    41,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    20,    20,   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,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   587,   nil,   nil,   nil,   nil,    20,    20,   nil,
-   nil,  1000,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,    41,   322,   nil,   nil,   nil,   nil,
-   nil,   nil,   587,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
-    20,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   383,
-    42,    42,   nil,   nil,    41,    41,   nil,   nil,   996,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    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,   nil,   nil,   383,
-   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-    42,    41,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,    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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   384,
-   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   997,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   384,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,    42,    42 ]
-
-racc_goto_check = [
-     6,   171,    63,    40,    46,    46,    46,   118,    71,    71,
-    38,    70,    85,    85,    36,     2,   113,   102,    38,    52,
-    12,   220,    84,    84,    84,    50,    50,    87,    29,    29,
-    40,    78,    78,    22,    22,    15,    14,    10,    24,    24,
-    65,    70,    24,   121,    73,    73,    42,    42,   106,   106,
-   170,   107,    33,     9,    64,   209,    31,    31,    33,     9,
-    31,   215,    53,    17,   153,   153,    78,    88,     8,    36,
-    88,    76,    71,   118,   172,    50,   109,   210,    51,    51,
-    51,     5,   188,   204,    37,   146,   147,    68,   159,   162,
-   159,   158,   188,     6,   160,     6,     6,     6,     6,     6,
-     6,   145,    71,     6,    24,    24,    24,    24,   164,    83,
-    83,   216,   148,     9,    83,     7,     1,    58,    58,    58,
-     3,   165,    31,    31,    31,    31,    11,    59,   192,    27,
-    69,   192,    69,    13,    16,    18,    60,    20,   193,    21,
-   193,    23,    26,   193,   159,    30,   193,     5,    75,    32,
-   162,    43,    45,    49,    75,    55,    74,    25,    79,    81,
-    25,    82,    82,    82,    86,    98,    25,   220,   101,   115,
-   117,   122,    35,   123,   124,   125,   126,   127,    35,     9,
-   128,   129,   130,    87,   216,   131,   132,   133,     9,   134,
-   135,   136,   137,    35,   138,   149,   164,   150,   156,    46,
-   163,   166,    35,    35,    35,   167,    35,    35,    35,   165,
-   168,    85,   169,    31,    31,    88,    88,   174,   175,   177,
-   145,    14,    31,    31,   178,     6,    71,   180,    38,   148,
-   113,   220,    35,   181,   182,     7,   183,    35,    35,    53,
-    65,    35,    35,   158,   160,   184,    14,   187,    65,   162,
-   215,   189,   146,   147,    46,    46,   146,    68,   190,   191,
-   170,   194,    36,   195,    46,   209,   196,   197,   198,   199,
-    50,    50,   202,    84,   210,   203,   208,   212,   213,   159,
-     6,   219,    84,   nil,    61,   210,   nil,   nil,   nil,   188,
-   nil,   nil,   nil,   204,     6,     6,   159,   nil,    35,   159,
-     6,    63,   nil,    35,    35,    35,    35,    35,   nil,    40,
-   118,   172,    85,    78,    38,    14,    85,   nil,    37,   nil,
-    14,   nil,   nil,   nil,   nil,    36,    24,   nil,    27,    27,
-    78,    38,    27,   nil,   nil,    64,    50,    17,    27,    84,
-    84,   nil,    61,    37,    31,   109,    50,     6,     6,   nil,
-   nil,    82,    82,   153,    38,   nil,    14,    14,   107,   nil,
-   118,    76,     9,    78,    36,    78,    61,   210,    58,   nil,
-   nil,     8,   159,   146,   146,    50,   nil,    58,   nil,   nil,
-    37,   207,   207,   207,     5,   153,   153,   193,   nil,   nil,
-   193,    35,    35,    35,    35,    35,    35,    35,    61,    75,
-   nil,    75,    35,    35,    35,    83,    59,    52,   nil,    65,
-   121,    59,    82,    52,   nil,    60,    35,   nil,   220,    71,
-    60,    82,   nil,   nil,   nil,    87,   170,   170,    38,    10,
-    40,   209,   209,   nil,     5,    12,    12,    37,   nil,    85,
-   nil,   209,   nil,   209,    22,    85,    36,    46,   nil,   nil,
-     6,     6,    35,    35,     6,    73,    85,    50,    50,   204,
-   204,   nil,    35,   nil,   nil,   nil,   nil,    88,   nil,    75,
-   nil,    71,   nil,     6,   nil,   nil,   nil,   nil,    82,   nil,
-   nil,    35,    40,   nil,   nil,    35,   nil,   153,    85,    35,
-    35,   146,   146,    33,    33,   nil,   nil,   209,   nil,    33,
-    33,    63,   nil,     6,   nil,    51,    35,    84,    37,    63,
-    46,    51,   nil,   nil,   nil,   nil,    35,    15,   nil,   nil,
-    61,   nil,    85,   nil,   nil,    35,    35,    35,    29,   nil,
-    78,   nil,    85,   nil,   nil,   nil,     6,    71,    78,    35,
-    87,    35,    31,    36,   nil,   nil,   nil,    71,    12,    46,
-   nil,   nil,    50,   nil,    51,   nil,   nil,   nil,    42,    12,
-    61,    85,   106,   nil,    61,   nil,    14,   nil,   nil,    14,
-   nil,   nil,   118,   nil,   nil,     6,    71,   nil,    31,   nil,
-   nil,    61,   nil,   nil,    31,   nil,     6,    61,   nil,    75,
-    75,   nil,    25,   nil,   nil,    75,    75,   nil,   nil,   nil,
-   nil,    25,    25,   nil,   nil,   nil,    61,    25,    25,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    46,   209,   106,    33,   nil,   nil,   nil,   106,   nil,
-   102,   nil,   nil,    85,   nil,    35,   nil,   nil,   nil,   209,
-     6,    71,   209,   nil,   nil,    84,   nil,     6,    71,   nil,
-   nil,   nil,   113,   171,    40,     2,   nil,   nil,   nil,   nil,
-    63,   207,   207,   nil,   207,   207,    22,   207,   nil,   nil,
-   nil,    63,    12,    12,     6,   nil,   nil,    73,   nil,    40,
-   nil,   nil,   nil,     6,    85,   nil,   nil,    85,    35,    78,
-   nil,    70,   nil,     9,    37,   nil,    35,   nil,    35,     6,
-    78,   nil,   nil,   nil,    35,   nil,   nil,    84,     6,   nil,
-     6,   nil,   nil,    35,   nil,   209,    40,   nil,    46,   nil,
-    75,   nil,     6,   nil,     6,   nil,    35,   nil,    85,    35,
-   nil,   nil,    25,    75,    75,    75,    75,    35,   nil,    40,
-    14,    71,   nil,   nil,     6,   nil,   nil,   nil,   nil,    35,
-   nil,   nil,    71,   nil,    27,    35,   nil,   nil,   nil,    61,
-   nil,   nil,   nil,    27,    27,   nil,   nil,   nil,   nil,    27,
-    27,   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    14,   nil,   nil,   207,   207,   207,   207,   152,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,     6,   nil,
-    40,   nil,   nil,    80,    80,   nil,    61,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,    36,   nil,   nil,   nil,    35,    35,
-    24,    14,   nil,   nil,     6,    50,    61,    35,    35,    54,
-    75,   nil,   nil,    35,    35,    54,    24,   nil,    31,    14,
-     6,    82,   nil,   nil,    40,   nil,   nil,   207,   nil,   152,
-    54,    14,   nil,   nil,    31,   nil,   nil,   nil,   nil,    54,
-    54,    54,   nil,    54,   nil,    35,   nil,   nil,   118,   nil,
-   nil,   100,   118,   nil,    14,   nil,    35,   nil,   nil,   nil,
-    80,   nil,    80,   nil,   211,    80,    80,   100,   100,    54,
-   100,   nil,   nil,   nil,    54,    54,   nil,   nil,    54,    40,
-   nil,   nil,   nil,   nil,    27,   nil,   nil,   nil,   nil,   nil,
-    35,     6,     6,     6,    78,   nil,    35,   nil,   nil,    61,
-   nil,    35,    35,    78,   nil,    14,    14,    61,   nil,   nil,
-   nil,    80,   nil,   nil,   154,   nil,   nil,   154,    14,   nil,
-   nil,    61,   nil,   157,   118,   157,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,   nil,    54,   nil,   nil,   nil,   nil,
-    54,    54,    54,    54,    54,   nil,   nil,   nil,    35,   nil,
-   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,   nil,    38,
-   nil,   nil,     6,    40,   nil,    14,   nil,   nil,   nil,   nil,
-   nil,    35,    14,     6,   154,   nil,   nil,   157,   152,    46,
-   nil,   152,   nil,   nil,   152,   nil,   152,   nil,   nil,    35,
-   nil,    85,    80,     6,     6,     6,     6,   nil,     6,    35,
-    71,    35,   nil,   nil,   nil,     6,    71,   nil,   nil,     6,
-   nil,   nil,   nil,   211,    35,    35,   211,   nil,   nil,   211,
-    40,   211,   nil,   nil,    35,    35,   nil,   nil,    54,    54,
-    54,    54,    54,    54,    54,   nil,   nil,   nil,   100,    54,
-    54,    54,   nil,   nil,   nil,   nil,   nil,     6,     6,     6,
-     6,   nil,   nil,    54,   nil,   nil,   nil,   152,     6,   152,
-   nil,   152,   nil,   152,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,    35,    35,   nil,    80,    35,
-   nil,    80,   nil,    80,   nil,   152,   nil,   nil,    35,    54,
-    54,   nil,   211,   nil,   211,   nil,   211,   nil,   211,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   155,
-   155,   155,   157,   nil,   157,   nil,   157,   nil,    54,   nil,
-   211,   nil,    54,   154,   nil,   nil,   154,    54,   nil,   154,
-    35,   154,   157,   nil,   157,    35,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,    35,    35,
-   nil,   nil,   100,    54,   nil,   nil,   nil,   nil,   100,   nil,
-   nil,   nil,    54,    54,    54,   100,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   100,   100,   nil,   nil,    35,    80,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   157,   nil,
-   nil,   nil,   154,   nil,   154,   157,   154,   157,   154,   157,
-    57,   155,   155,   155,   155,   nil,   155,   nil,    80,    57,
-    57,    57,   nil,    57,   nil,   nil,    80,    80,   nil,   nil,
-   154,   nil,   nil,   157,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   100,   nil,    57,
-   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,    57,    80,
-   nil,   nil,    80,   nil,   nil,   155,   155,   155,   155,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   155,   nil,   nil,   nil,
-   nil,   nil,    54,    80,   nil,   nil,   nil,   nil,    80,   nil,
-   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-    57,    57,    57,    57,    57,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
-    80,   nil,   100,   100,   nil,    54,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,    57,    57,
-    57,    57,    57,    57,    57,   nil,   nil,   nil,   nil,    57,
-    57,    57,   nil,   nil,   nil,   nil,   nil,    80,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,    57,
-    57,   nil,   nil,   nil,    54,    54,   nil,   nil,    80,    57,
-    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,    80,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    57,    57,    57,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,    80,   nil,   nil,    54,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,    41,    41,    41,
-   nil,   nil,    57,   nil,   nil,   nil,    54,   nil,    54,   nil,
-    41,    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,    28,
-   nil,    54,    54,   nil,   nil,    28,   nil,   nil,   nil,   nil,
-   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    28,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,
-    57,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,    28,
-   nil,   nil,   nil,    57,   nil,    54,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,    28,   nil,   nil,   nil,    54,
-   nil,   nil,   nil,   nil,    28,    54,    54,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,    54,    57,    57,    41,    41,   nil,
-   nil,    41,    41,   nil,    57,    57,   nil,    41,   nil,   nil,
-    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,   nil,   nil,   nil,    28,    41,
-    28,   nil,   nil,    28,   nil,   nil,   nil,    41,    41,    28,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,   nil,    28,    41,   nil,    41,   nil,   nil,    41,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,    57,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-    41,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,
-   nil,   nil,    28,   nil,   nil,    57,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
-   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    28,    28,   nil,    57,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,    57,    57,   nil,    34,   nil,   nil,   nil,   nil,   nil,
-   nil,    57,    57,   nil,   nil,   nil,   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,    41,    41,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,    34,
-   nil,   nil,    41,   nil,   nil,    41,   nil,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,    28,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,    57,    34,   nil,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,    28,   nil,   nil,    28,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,    41,    41,   nil,   nil,    41,   nil,   nil,
-    41,    41,    41,    41,   nil,   nil,   nil,   nil,    41,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,    34,   nil,   nil,
-   nil,   nil,    34,    41,   nil,   nil,    41,   nil,   nil,    28,
-   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    28,    28,   nil,    41,    34,   nil,
-    28,    28,    41,   nil,   nil,    41,   nil,   nil,    34,    34,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,    41,
-    39,   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,   nil,   nil,    39,    39,
-    39,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,    41,    28,   nil,   nil,
-   nil,   nil,   nil,    41,    39,   nil,   nil,   nil,    28,    28,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,    41,    41,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    66,   nil,    28,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,
-    39,    41,   nil,   nil,   nil,    66,    66,    66,   nil,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,
-    34,    66,   nil,   nil,    66,   nil,   nil,   nil,    28,   nil,
-   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    28,    28,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-   nil,    34,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,    39,   nil,    66,    39,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,    28,    28,   nil,   nil,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,    41,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,    41,   nil,   nil,    67,    67,    67,   nil,    34,
-    34,   nil,    28,    39,   nil,    34,    34,    39,   nil,    28,
-    66,    39,    39,   nil,   nil,    28,    28,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,    67,   nil,   nil,    67,    66,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,    34,    34,   nil,    67,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,    66,   nil,   nil,   nil,    66,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    34,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-    66,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,
-    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   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,    39,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,
-    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,    67,    67,
-    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,    67,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,   nil,    34,    67,   nil,
-    67,   nil,   nil,    66,    34,   nil,   nil,   nil,   nil,   nil,
-    34,    34,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-    39,   nil,   nil,   nil,   nil,    66,   nil,   nil,    66,    39,
-    39,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,    39,   nil,   nil,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,    39,    39,   nil,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,    66,    67,   nil,   nil,   nil,   nil,
-    39,   nil,   nil,    67,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,    67,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    66,    66,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,    39,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    66,   nil,    39,   nil,   nil,   nil,   nil,    39,    39,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,    66,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-    39,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-    67,    67,   nil,   nil,    66,    66,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    67,    66,   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,    67,    67 ]
-
-racc_goto_pointer = [
-   nil,   116,    13,   120,   nil,    76,    -2,   107,    63,    51,
-  -101,   116,  -326,  -288,     0,  -519,  -586,  -657,  -710,   nil,
-  -391,  -174,    22,   129,   -29,   -66,    70,   106,  1707,  -194,
-   -77,   -11,    10,  -174,  2032,   170,  -213,  -365,    -9,  2392,
-   -19,  1655,   -23,  -419,   nil,  -585,   -28,   nil,   nil,   126,
-  -203,    49,  -262,  -450,   837,  -353,   nil,  1217,    85,    91,
-   100,    50,   nil,   -35,    16,  -296,  2489,  2659,  -497,  -239,
-   -64,    -3,   nil,    33,  -270,   -78,    27,   nil,    -6,   111,
-   591,  -190,   129,  -450,   -10,   -17,  -341,  -270,  -450,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,
-   326,  -182,   -48,   nil,   nil,   nil,  -305,  -683,   nil,  -660,
-   nil,   nil,   nil,  -343,   nil,    97,   nil,  -418,     2,   nil,
-   nil,  -548,    96,  -209,   113,   113,  -171,   114,   116,   108,
-  -575,  -185,  -574,  -766,   115,  -400,  -190,  -400,  -687,   nil,
-   nil,   nil,   nil,   nil,   nil,  -801,  -529,  -528,  -791,  -707,
-  -632,   nil,    30,  -535,   175,   216,  -631,   178,  -738,  -685,
-  -592,   nil,  -679,  -761,  -853,  -840,  -186,  -562,   121,  -384,
-  -337,   -24,  -202,   nil,   -70,   -70,   nil,  -473,  -520,   nil,
-  -277,  -772,  -342,  -486,  -607,   nil,   nil,   155,   -13,   154,
-   160,   160,  -268,  -253,   161,   162,   164,  -524,  -364,  -364,
-   nil,   nil,   167,  -483,  -304,   nil,   nil,  -221,  -497,  -332,
-  -696,    65,  -492,  -700,   nil,  -714,  -873,   nil,   nil,  -105,
-  -499 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   309,     7,   360,   312,
-   nil,   nil,   nil,   nil,   554,   nil,   nil,   nil,   nil,   308,
-   310,   nil,   nil,   nil,   nil,    14,    15,    21,   242,   nil,
-   nil,    17,   nil,   436,   243,   340,   nil,   nil,   755,   241,
-   472,    24,   nil,   nil,   355,   nil,    25,    26,    27,   nil,
-   714,   nil,   nil,   nil,   329,   nil,    28,   326,   451,    35,
-   nil,   nil,    37,    40,    39,   nil,   238,   239,   585,   nil,
-   146,   459,   145,    91,   nil,   441,   107,    47,    50,   274,
-   300,   nil,   452,   nil,   453,   464,   672,   516,   298,   283,
-    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
-   nil,   nil,   284,    65,    66,    67,   nil,   nil,    68,   858,
-    69,    70,    71,   nil,    72,   nil,    73,   nil,   567,    74,
-    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   288,
-   276,   722,   849,   576,   859,   782,   612,   nil,   783,   784,
-  1024,   920,   600,   nil,   601,   nil,   nil,   602,   nil,   604,
-   nil,   828,   nil,   nil,   nil,   610,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   463,   nil,   nil,   692,   nil,   nil,   504,
-   nil,   nil,   nil,   nil,   nil,    90,    92,    94,   nil,   nil,
-   nil,   nil,   nil,   630,   nil,   nil,   nil,   nil,   nil,   nil,
-   103,   104,   nil,   nil,   891,   764,   599,   nil,   603,   899,
-   615,   617,   618,   931,   621,   622,   932,   625,   628,   nil,
-   303 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 150, :_reduce_1,
-  2, 148, :_reduce_2,
-  2, 149, :_reduce_3,
-  1, 151, :_reduce_none,
-  1, 151, :_reduce_none,
-  3, 151, :_reduce_6,
-  2, 151, :_reduce_none,
-  1, 154, :_reduce_none,
-  0, 158, :_reduce_9,
-  3, 154, :_reduce_10,
-  0, 160, :_reduce_11,
-  4, 157, :_reduce_12,
-  0, 165, :_reduce_13,
-  6, 159, :_reduce_14,
-  3, 159, :_reduce_15,
-  2, 161, :_reduce_16,
-  1, 166, :_reduce_none,
-  1, 166, :_reduce_none,
-  3, 166, :_reduce_19,
-  2, 166, :_reduce_20,
-  1, 167, :_reduce_none,
-  0, 168, :_reduce_22,
-  3, 167, :_reduce_23,
-  0, 179, :_reduce_24,
-  4, 156, :_reduce_25,
-  3, 156, :_reduce_26,
-  3, 156, :_reduce_27,
-  3, 156, :_reduce_28,
-  2, 156, :_reduce_29,
-  3, 156, :_reduce_30,
-  3, 156, :_reduce_31,
-  3, 156, :_reduce_32,
-  3, 156, :_reduce_33,
-  3, 156, :_reduce_34,
-  4, 156, :_reduce_35,
-  1, 156, :_reduce_none,
-  3, 156, :_reduce_37,
-  3, 156, :_reduce_38,
-  3, 156, :_reduce_39,
-  1, 156, :_reduce_none,
-  3, 172, :_reduce_41,
-  3, 172, :_reduce_42,
-  6, 172, :_reduce_43,
-  5, 172, :_reduce_44,
-  5, 172, :_reduce_45,
-  5, 172, :_reduce_46,
-  5, 172, :_reduce_47,
-  3, 172, :_reduce_48,
-  1, 180, :_reduce_49,
-  1, 180, :_reduce_none,
-  1, 178, :_reduce_none,
-  3, 178, :_reduce_52,
-  3, 178, :_reduce_53,
-  3, 178, :_reduce_54,
-  2, 178, :_reduce_55,
-  1, 178, :_reduce_none,
-  1, 171, :_reduce_57,
-  0, 191, :_reduce_58,
-  0, 192, :_reduce_59,
-  4, 189, :_reduce_60,
-  1, 174, :_reduce_none,
-  1, 174, :_reduce_none,
-  1, 194, :_reduce_none,
-  4, 194, :_reduce_64,
-  0, 202, :_reduce_65,
-  4, 199, :_reduce_66,
-  1, 201, :_reduce_67,
-  2, 193, :_reduce_68,
-  3, 193, :_reduce_69,
-  4, 193, :_reduce_70,
-  5, 193, :_reduce_71,
-  4, 193, :_reduce_72,
-  5, 193, :_reduce_73,
-  2, 193, :_reduce_74,
-  2, 193, :_reduce_75,
-  2, 193, :_reduce_76,
-  2, 193, :_reduce_77,
-  2, 193, :_reduce_78,
-  1, 173, :_reduce_none,
-  3, 173, :_reduce_80,
-  1, 207, :_reduce_none,
-  3, 207, :_reduce_82,
-  1, 206, :_reduce_83,
-  2, 206, :_reduce_84,
-  3, 206, :_reduce_85,
-  5, 206, :_reduce_86,
-  2, 206, :_reduce_87,
-  4, 206, :_reduce_88,
-  2, 206, :_reduce_89,
-  4, 206, :_reduce_90,
-  1, 206, :_reduce_91,
-  3, 206, :_reduce_92,
-  1, 210, :_reduce_none,
-  3, 210, :_reduce_94,
-  2, 209, :_reduce_95,
-  3, 209, :_reduce_96,
-  1, 212, :_reduce_97,
-  3, 212, :_reduce_98,
-  1, 211, :_reduce_99,
-  1, 211, :_reduce_100,
-  4, 211, :_reduce_101,
-  3, 211, :_reduce_102,
-  3, 211, :_reduce_103,
-  3, 211, :_reduce_104,
-  3, 211, :_reduce_105,
-  2, 211, :_reduce_106,
-  1, 211, :_reduce_107,
-  1, 175, :_reduce_108,
-  1, 175, :_reduce_109,
-  4, 175, :_reduce_110,
-  3, 175, :_reduce_111,
-  3, 175, :_reduce_112,
-  3, 175, :_reduce_113,
-  3, 175, :_reduce_114,
-  2, 175, :_reduce_115,
-  1, 175, :_reduce_116,
-  1, 215, :_reduce_117,
-  1, 215, :_reduce_none,
-  2, 216, :_reduce_119,
-  1, 216, :_reduce_120,
-  3, 216, :_reduce_121,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_125,
-  1, 217, :_reduce_none,
-  1, 169, :_reduce_127,
-  1, 169, :_reduce_none,
-  1, 170, :_reduce_129,
-  0, 221, :_reduce_130,
-  4, 170, :_reduce_131,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  3, 188, :_reduce_203,
-  3, 188, :_reduce_204,
-  6, 188, :_reduce_205,
-  5, 188, :_reduce_206,
-  5, 188, :_reduce_207,
-  5, 188, :_reduce_208,
-  5, 188, :_reduce_209,
-  4, 188, :_reduce_210,
-  3, 188, :_reduce_211,
-  3, 188, :_reduce_212,
-  3, 188, :_reduce_213,
-  3, 188, :_reduce_214,
-  3, 188, :_reduce_215,
-  3, 188, :_reduce_216,
-  3, 188, :_reduce_217,
-  3, 188, :_reduce_218,
-  3, 188, :_reduce_219,
-  4, 188, :_reduce_220,
-  2, 188, :_reduce_221,
-  2, 188, :_reduce_222,
-  3, 188, :_reduce_223,
-  3, 188, :_reduce_224,
-  3, 188, :_reduce_225,
-  3, 188, :_reduce_226,
-  1, 188, :_reduce_none,
-  3, 188, :_reduce_228,
-  3, 188, :_reduce_229,
-  3, 188, :_reduce_230,
-  3, 188, :_reduce_231,
-  3, 188, :_reduce_232,
-  2, 188, :_reduce_233,
-  2, 188, :_reduce_234,
-  3, 188, :_reduce_235,
-  3, 188, :_reduce_236,
-  3, 188, :_reduce_237,
-  3, 188, :_reduce_238,
-  3, 188, :_reduce_239,
-  6, 188, :_reduce_240,
-  1, 188, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  3, 224, :_reduce_246,
-  3, 224, :_reduce_247,
-  1, 227, :_reduce_248,
-  1, 228, :_reduce_none,
-  2, 228, :_reduce_250,
-  4, 228, :_reduce_251,
-  2, 228, :_reduce_252,
-  1, 222, :_reduce_none,
-  3, 222, :_reduce_254,
-  3, 232, :_reduce_255,
-  1, 233, :_reduce_none,
-  1, 233, :_reduce_none,
-  1, 183, :_reduce_none,
-  1, 183, :_reduce_none,
-  2, 183, :_reduce_260,
-  4, 183, :_reduce_261,
-  2, 183, :_reduce_262,
-  1, 205, :_reduce_263,
-  2, 205, :_reduce_264,
-  2, 205, :_reduce_265,
-  4, 205, :_reduce_266,
-  1, 205, :_reduce_267,
-  0, 236, :_reduce_268,
-  2, 198, :_reduce_269,
-  2, 235, :_reduce_270,
-  2, 234, :_reduce_271,
-  1, 234, :_reduce_none,
-  1, 229, :_reduce_273,
-  2, 229, :_reduce_274,
-  3, 229, :_reduce_275,
-  4, 229, :_reduce_276,
-  1, 177, :_reduce_277,
-  1, 177, :_reduce_278,
-  3, 176, :_reduce_279,
-  4, 176, :_reduce_280,
-  2, 176, :_reduce_281,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_292,
-  0, 271, :_reduce_293,
-  4, 225, :_reduce_294,
-  0, 272, :_reduce_295,
-  3, 225, :_reduce_296,
-  0, 273, :_reduce_297,
-  4, 225, :_reduce_298,
-  3, 225, :_reduce_299,
-  3, 225, :_reduce_300,
-  2, 225, :_reduce_301,
-  0, 274, :_reduce_302,
-  4, 225, :_reduce_303,
-  0, 275, :_reduce_304,
-  4, 225, :_reduce_305,
-  1, 225, :_reduce_306,
-  4, 225, :_reduce_307,
-  3, 225, :_reduce_308,
-  1, 225, :_reduce_309,
-  5, 225, :_reduce_310,
-  4, 225, :_reduce_311,
-  3, 225, :_reduce_312,
-  2, 225, :_reduce_313,
-  1, 225, :_reduce_none,
-  2, 225, :_reduce_315,
-  1, 225, :_reduce_316,
-  6, 225, :_reduce_317,
-  6, 225, :_reduce_318,
-  4, 225, :_reduce_319,
-  4, 225, :_reduce_320,
-  5, 225, :_reduce_321,
-  4, 225, :_reduce_322,
-  6, 225, :_reduce_323,
-  0, 276, :_reduce_324,
-  0, 277, :_reduce_325,
-  7, 225, :_reduce_326,
-  0, 278, :_reduce_327,
-  0, 279, :_reduce_328,
-  0, 280, :_reduce_329,
-  9, 225, :_reduce_330,
-  0, 281, :_reduce_331,
-  0, 282, :_reduce_332,
-  6, 225, :_reduce_333,
-  0, 283, :_reduce_334,
-  6, 225, :_reduce_335,
-  0, 284, :_reduce_336,
-  0, 285, :_reduce_337,
-  9, 225, :_reduce_338,
-  1, 225, :_reduce_339,
-  1, 225, :_reduce_340,
-  1, 225, :_reduce_341,
-  1, 225, :_reduce_342,
-  1, 182, :_reduce_343,
-  1, 246, :_reduce_none,
-  1, 252, :_reduce_none,
-  1, 255, :_reduce_none,
-  1, 257, :_reduce_none,
-  1, 258, :_reduce_none,
-  1, 259, :_reduce_none,
-  1, 261, :_reduce_none,
-  1, 263, :_reduce_351,
-  1, 266, :_reduce_352,
-  1, 267, :_reduce_353,
-  1, 286, :_reduce_none,
-  1, 287, :_reduce_none,
-  1, 288, :_reduce_none,
-  1, 289, :_reduce_none,
-  1, 290, :_reduce_none,
-  1, 163, :_reduce_none,
-  1, 291, :_reduce_none,
-  1, 247, :_reduce_none,
-  1, 204, :_reduce_none,
-  1, 253, :_reduce_none,
-  1, 253, :_reduce_none,
-  2, 253, :_reduce_none,
-  1, 190, :_reduce_none,
-  1, 190, :_reduce_none,
-  1, 254, :_reduce_none,
-  5, 254, :_reduce_369,
-  1, 256, :_reduce_none,
-  2, 256, :_reduce_371,
-  1, 262, :_reduce_none,
-  1, 262, :_reduce_373,
-  1, 292, :_reduce_none,
-  3, 292, :_reduce_375,
-  1, 295, :_reduce_376,
-  3, 295, :_reduce_377,
-  1, 294, :_reduce_378,
-  3, 294, :_reduce_379,
-  5, 294, :_reduce_380,
-  1, 294, :_reduce_381,
-  3, 294, :_reduce_382,
-  2, 296, :_reduce_383,
-  1, 296, :_reduce_384,
-  4, 297, :_reduce_385,
-  2, 297, :_reduce_386,
-  2, 297, :_reduce_387,
-  1, 297, :_reduce_388,
-  2, 302, :_reduce_389,
-  1, 302, :_reduce_none,
-  6, 303, :_reduce_391,
-  8, 303, :_reduce_392,
-  4, 303, :_reduce_393,
-  6, 303, :_reduce_394,
-  4, 303, :_reduce_395,
-  2, 303, :_reduce_396,
-  6, 303, :_reduce_397,
-  2, 303, :_reduce_398,
-  4, 303, :_reduce_399,
-  6, 303, :_reduce_400,
-  2, 303, :_reduce_401,
-  4, 303, :_reduce_402,
-  2, 303, :_reduce_403,
-  4, 303, :_reduce_404,
-  1, 303, :_reduce_405,
-  1, 307, :_reduce_406,
-  1, 307, :_reduce_407,
-  3, 308, :_reduce_408,
-  1, 308, :_reduce_409,
-  4, 308, :_reduce_410,
-  1, 309, :_reduce_none,
-  4, 309, :_reduce_412,
-  1, 310, :_reduce_413,
-  3, 310, :_reduce_414,
-  1, 311, :_reduce_415,
-  1, 311, :_reduce_none,
-  0, 315, :_reduce_417,
-  0, 316, :_reduce_418,
-  5, 251, :_reduce_419,
-  4, 313, :_reduce_420,
-  1, 313, :_reduce_421,
-  3, 314, :_reduce_422,
-  3, 314, :_reduce_423,
-  3, 318, :_reduce_424,
-  2, 195, :_reduce_425,
-  4, 195, :_reduce_426,
-  5, 195, :_reduce_427,
-  5, 195, :_reduce_428,
-  2, 250, :_reduce_429,
-  4, 250, :_reduce_430,
-  4, 250, :_reduce_431,
-  3, 250, :_reduce_432,
-  3, 250, :_reduce_433,
-  3, 250, :_reduce_434,
-  2, 250, :_reduce_435,
-  1, 250, :_reduce_436,
-  4, 250, :_reduce_437,
-  0, 321, :_reduce_438,
-  4, 249, :_reduce_439,
-  0, 322, :_reduce_440,
-  4, 249, :_reduce_441,
-  0, 323, :_reduce_442,
-  0, 324, :_reduce_443,
-  4, 200, :_reduce_444,
-  0, 326, :_reduce_445,
-  0, 327, :_reduce_446,
-  4, 319, :_reduce_447,
-  1, 325, :_reduce_448,
-  2, 325, :_reduce_449,
-  3, 325, :_reduce_450,
-  4, 325, :_reduce_451,
-  0, 329, :_reduce_452,
-  6, 260, :_reduce_453,
-  1, 328, :_reduce_none,
-  1, 328, :_reduce_none,
-  6, 162, :_reduce_456,
-  0, 162, :_reduce_457,
-  1, 330, :_reduce_458,
-  1, 330, :_reduce_none,
-  1, 330, :_reduce_none,
-  2, 331, :_reduce_461,
-  1, 331, :_reduce_none,
-  2, 164, :_reduce_463,
-  1, 164, :_reduce_none,
-  1, 237, :_reduce_465,
-  1, 237, :_reduce_none,
-  1, 238, :_reduce_467,
-  1, 333, :_reduce_468,
-  1, 333, :_reduce_none,
-  2, 333, :_reduce_470,
-  3, 334, :_reduce_471,
-  1, 334, :_reduce_472,
-  3, 239, :_reduce_473,
-  3, 240, :_reduce_474,
-  3, 241, :_reduce_475,
-  3, 241, :_reduce_476,
-  1, 338, :_reduce_477,
-  3, 338, :_reduce_478,
-  1, 339, :_reduce_none,
-  2, 339, :_reduce_480,
-  3, 243, :_reduce_481,
-  3, 243, :_reduce_482,
-  1, 341, :_reduce_483,
-  3, 341, :_reduce_484,
-  3, 242, :_reduce_485,
-  3, 242, :_reduce_486,
-  3, 244, :_reduce_487,
-  3, 244, :_reduce_488,
-  1, 342, :_reduce_489,
-  3, 342, :_reduce_490,
-  1, 343, :_reduce_491,
-  3, 343, :_reduce_492,
-  1, 335, :_reduce_493,
-  2, 335, :_reduce_494,
-  1, 336, :_reduce_495,
-  2, 336, :_reduce_496,
-  1, 337, :_reduce_497,
-  2, 337, :_reduce_498,
-  1, 340, :_reduce_499,
-  0, 345, :_reduce_500,
-  3, 340, :_reduce_501,
-  0, 346, :_reduce_502,
-  4, 340, :_reduce_503,
-  1, 344, :_reduce_504,
-  1, 344, :_reduce_505,
-  1, 344, :_reduce_506,
-  1, 344, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  2, 347, :_reduce_510,
-  1, 347, :_reduce_511,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  3, 348, :_reduce_516,
-  1, 332, :_reduce_none,
-  2, 332, :_reduce_518,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 214, :_reduce_528,
-  1, 214, :_reduce_529,
-  1, 214, :_reduce_530,
-  1, 214, :_reduce_531,
-  1, 214, :_reduce_532,
-  1, 214, :_reduce_533,
-  1, 214, :_reduce_534,
-  1, 245, :_reduce_535,
-  1, 245, :_reduce_536,
-  1, 181, :_reduce_537,
-  1, 181, :_reduce_538,
-  1, 186, :_reduce_539,
-  1, 186, :_reduce_540,
-  0, 350, :_reduce_541,
-  4, 264, :_reduce_542,
-  1, 264, :_reduce_543,
-  3, 268, :_reduce_544,
-  0, 352, :_reduce_545,
-  3, 268, :_reduce_546,
-  4, 351, :_reduce_547,
-  2, 351, :_reduce_548,
-  2, 351, :_reduce_549,
-  1, 351, :_reduce_none,
-  2, 354, :_reduce_551,
-  0, 354, :_reduce_552,
-  6, 317, :_reduce_553,
-  8, 317, :_reduce_554,
-  4, 317, :_reduce_555,
-  6, 317, :_reduce_556,
-  4, 317, :_reduce_557,
-  6, 317, :_reduce_558,
-  2, 317, :_reduce_559,
-  4, 317, :_reduce_560,
-  6, 317, :_reduce_561,
-  2, 317, :_reduce_562,
-  4, 317, :_reduce_563,
-  2, 317, :_reduce_564,
-  4, 317, :_reduce_565,
-  1, 317, :_reduce_566,
-  0, 317, :_reduce_567,
-  1, 312, :_reduce_568,
-  1, 312, :_reduce_569,
-  1, 312, :_reduce_570,
-  1, 312, :_reduce_571,
-  1, 293, :_reduce_none,
-  1, 293, :_reduce_573,
-  1, 356, :_reduce_none,
-  1, 357, :_reduce_none,
-  3, 357, :_reduce_576,
-  1, 304, :_reduce_577,
-  3, 304, :_reduce_578,
-  1, 358, :_reduce_none,
-  2, 359, :_reduce_580,
-  1, 359, :_reduce_581,
-  2, 360, :_reduce_582,
-  1, 360, :_reduce_583,
-  1, 298, :_reduce_none,
-  3, 298, :_reduce_585,
-  1, 353, :_reduce_none,
-  3, 353, :_reduce_587,
-  1, 361, :_reduce_none,
-  1, 361, :_reduce_none,
-  2, 299, :_reduce_590,
-  1, 299, :_reduce_591,
-  3, 362, :_reduce_592,
-  3, 363, :_reduce_593,
-  1, 305, :_reduce_594,
-  3, 305, :_reduce_595,
-  1, 355, :_reduce_596,
-  3, 355, :_reduce_597,
-  1, 364, :_reduce_none,
-  1, 364, :_reduce_none,
-  2, 306, :_reduce_600,
-  1, 306, :_reduce_601,
-  1, 365, :_reduce_none,
-  1, 365, :_reduce_none,
-  2, 301, :_reduce_604,
-  2, 300, :_reduce_605,
-  0, 300, :_reduce_606,
-  1, 269, :_reduce_none,
-  0, 366, :_reduce_608,
-  4, 269, :_reduce_609,
-  1, 248, :_reduce_610,
-  2, 248, :_reduce_none,
-  1, 231, :_reduce_none,
-  3, 231, :_reduce_613,
-  3, 367, :_reduce_614,
-  2, 367, :_reduce_615,
-  4, 367, :_reduce_616,
-  2, 367, :_reduce_617,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 196, :_reduce_none,
-  1, 196, :_reduce_none,
-  0, 152, :_reduce_none,
-  1, 152, :_reduce_none,
-  0, 187, :_reduce_none,
-  1, 187, :_reduce_none,
-  2, 208, :_reduce_none,
-  2, 184, :_reduce_none,
-  0, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 265, :_reduce_643,
-  1, 265, :_reduce_none,
-  1, 155, :_reduce_none,
-  2, 155, :_reduce_646,
-  0, 153, :_reduce_647 ]
-
-racc_reduce_n = 648
-
-racc_shift_n = 1092
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLABEL_END => 141,
-  :tLONELY => 142,
-  :tLOWEST => 143,
-  :tEQL => 144,
-  :tBDOT2 => 145,
-  :tBDOT3 => 146 }
-
-racc_nt_base = 147
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLABEL_END",
-  "tLONELY",
-  "tLOWEST",
-  "tEQL",
-  "tBDOT2",
-  "tBDOT3",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "backref",
-  "opt_nl",
-  "arg",
-  "expr_value_do",
-  "do",
-  "@7",
-  "@8",
-  "command",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@9",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "fname",
-  "op",
-  "reswords",
-  "symbol",
-  "@10",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@11",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "k_def",
-  "f_arglist",
-  "singleton",
-  "dot_or_colon",
-  "@12",
-  "@13",
-  "@14",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "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",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "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",
-  "@36",
-  "@37",
-  "ssym",
-  "dsym",
-  "sym",
-  "@38",
-  "args_tail",
-  "@39",
-  "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",
-  "@40",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 12
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 40 omitted
-
-def _reduce_41(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_42(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-# reduce 50 omitted
-
-# reduce 51 omitted
-
-def _reduce_52(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_53(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_54(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-# reduce 56 omitted
-
-def _reduce_57(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_58(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 61 omitted
-
-# reduce 62 omitted
-
-# reduce 63 omitted
-
-def _reduce_64(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_65(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_66(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_67(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_75(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_76(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_77(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_78(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 79 omitted
-
-def _reduce_80(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 81 omitted
-
-def _reduce_82(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_83(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 93 omitted
-
-def _reduce_94(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_95(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_96(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_107(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_108(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 118 omitted
-
-def _reduce_119(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_120(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 122 omitted
-
-# reduce 123 omitted
-
-# reduce 124 omitted
-
-def _reduce_125(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 126 omitted
-
-def _reduce_127(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 128 omitted
-
-def _reduce_129(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_130(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-def _reduce_203(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_204(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_205(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_206(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_207(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_208(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_209(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_210(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_211(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_212(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_213(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_214(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_215(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_216(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_217(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 227 omitted
-
-def _reduce_228(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_229(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_230(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-# reduce 241 omitted
-
-# reduce 242 omitted
-
-# reduce 243 omitted
-
-# reduce 244 omitted
-
-# reduce 245 omitted
-
-def _reduce_246(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_247(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_248(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 249 omitted
-
-def _reduce_250(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_251(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_252(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 253 omitted
-
-def _reduce_254(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_255(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-# reduce 256 omitted
-
-# reduce 257 omitted
-
-# reduce 258 omitted
-
-# reduce 259 omitted
-
-def _reduce_260(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_261(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_262(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_263(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_264(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_265(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_266(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_267(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_268(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_271(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 272 omitted
-
-def _reduce_273(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_274(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_275(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_276(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_280(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_281(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 282 omitted
-
-# reduce 283 omitted
-
-# reduce 284 omitted
-
-# reduce 285 omitted
-
-# reduce 286 omitted
-
-# reduce 287 omitted
-
-# reduce 288 omitted
-
-# reduce 289 omitted
-
-# reduce 290 omitted
-
-# reduce 291 omitted
-
-def _reduce_292(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_293(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_294(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_295(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_297(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_298(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_302(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_303(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_305(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_307(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_308(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_309(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_310(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_311(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_312(val, _values, result)
-                      debug 20
-
-    result
-end
-
-def _reduce_313(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 314 omitted
-
-def _reduce_315(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_316(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_317(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_327(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_339(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_340(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 344 omitted
-
-# reduce 345 omitted
-
-# reduce 346 omitted
-
-# reduce 347 omitted
-
-# reduce 348 omitted
-
-# reduce 349 omitted
-
-# reduce 350 omitted
-
-def _reduce_351(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_352(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 354 omitted
-
-# reduce 355 omitted
-
-# reduce 356 omitted
-
-# reduce 357 omitted
-
-# reduce 358 omitted
-
-# reduce 359 omitted
-
-# reduce 360 omitted
-
-# reduce 361 omitted
-
-# reduce 362 omitted
-
-# reduce 363 omitted
-
-# reduce 364 omitted
-
-# reduce 365 omitted
-
-# reduce 366 omitted
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-def _reduce_369(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 370 omitted
-
-def _reduce_371(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 372 omitted
-
-def _reduce_373(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 374 omitted
-
-def _reduce_375(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_376(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_377(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_378(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_379(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_380(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_381(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_382(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_383(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_384(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-def _reduce_385(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_386(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_387(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_388(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_389(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 390 omitted
-
-def _reduce_391(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_392(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_393(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_394(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_395(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_396(val, _values, result)
-                      result = args(val) << nil
-
-    result
-end
-
-def _reduce_397(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_398(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_403(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_406(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_407(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_408(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_409(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_410(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 411 omitted
-
-def _reduce_412(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_413(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 416 omitted
-
-def _reduce_417(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_418(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_433(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_438(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_439(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_442(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_443(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_444(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_445(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_446(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_447(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 454 omitted
-
-# reduce 455 omitted
-
-def _reduce_456(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_457(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_458(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 459 omitted
-
-# reduce 460 omitted
-
-def _reduce_461(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 462 omitted
-
-def _reduce_463(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 464 omitted
-
-def _reduce_465(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 466 omitted
-
-def _reduce_467(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_468(val, _values, result)
-                      debug 37
-
-    result
-end
-
-# reduce 469 omitted
-
-def _reduce_470(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_471(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_472(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_473(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_476(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_477(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 479 omitted
-
-def _reduce_480(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_481(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_482(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_483(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_485(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_486(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_487(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_488(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_489(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_491(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_492(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_495(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_497(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_498(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_499(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_500(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_501(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_502(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_503(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_504(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_505(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_506(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 507 omitted
-
-# reduce 508 omitted
-
-# reduce 509 omitted
-
-def _reduce_510(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_511(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 512 omitted
-
-# reduce 513 omitted
-
-# reduce 514 omitted
-
-# reduce 515 omitted
-
-def _reduce_516(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-
-    result
-end
-
-# reduce 517 omitted
-
-def _reduce_518(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 519 omitted
-
-# reduce 520 omitted
-
-# reduce 521 omitted
-
-# reduce 522 omitted
-
-# reduce 523 omitted
-
-# reduce 524 omitted
-
-# reduce 525 omitted
-
-# reduce 526 omitted
-
-# reduce 527 omitted
-
-def _reduce_528(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_529(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_530(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_531(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_532(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_533(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_534(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_535(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_537(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_538(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 40
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_544(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_545(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_546(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_547(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_548(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 550 omitted
-
-def _reduce_551(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_552(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_553(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_554(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_555(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_556(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_560(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_561(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_562(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_563(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_565(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_566(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_567(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_568(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_569(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_570(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 572 omitted
-
-def _reduce_573(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 574 omitted
-
-# reduce 575 omitted
-
-def _reduce_576(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_577(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_578(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 579 omitted
-
-def _reduce_580(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_581(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_582(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_583(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 584 omitted
-
-def _reduce_585(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 586 omitted
-
-def _reduce_587(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 588 omitted
-
-# reduce 589 omitted
-
-def _reduce_590(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_591(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_592(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-
-    result
-end
-
-def _reduce_593(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_595(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_596(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_597(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 598 omitted
-
-# reduce 599 omitted
-
-def _reduce_600(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_601(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 602 omitted
-
-# reduce 603 omitted
-
-def _reduce_604(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_605(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_606(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 607 omitted
-
-def _reduce_608(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_609(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_610(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 611 omitted
-
-# reduce 612 omitted
-
-def _reduce_613(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_614(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_615(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_616(val, _values, result)
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-
-    result
-end
-
-def _reduce_617(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 618 omitted
-
-# reduce 619 omitted
-
-# reduce 620 omitted
-
-# reduce 621 omitted
-
-# reduce 622 omitted
-
-# reduce 623 omitted
-
-# reduce 624 omitted
-
-# reduce 625 omitted
-
-# reduce 626 omitted
-
-# reduce 627 omitted
-
-# reduce 628 omitted
-
-# reduce 629 omitted
-
-# reduce 630 omitted
-
-# reduce 631 omitted
-
-# reduce 632 omitted
-
-# reduce 633 omitted
-
-# reduce 634 omitted
-
-# reduce 635 omitted
-
-# reduce 636 omitted
-
-# reduce 637 omitted
-
-# reduce 638 omitted
-
-# reduce 639 omitted
-
-# reduce 640 omitted
-
-# reduce 641 omitted
-
-# reduce 642 omitted
-
-def _reduce_643(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 644 omitted
-
-# reduce 645 omitted
-
-def _reduce_646(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_647(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby23Parser
diff -pruN 3.20.0-2/lib/ruby23_parser.y 3.21.1-1/lib/ruby23_parser.y
--- 3.20.0-2/lib/ruby23_parser.y	2023-03-30 13:56:31.000000000 +0000
+++ 3.21.1-1/lib/ruby23_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,2713 +0,0 @@
-# -*- racc -*-
-
-class Ruby23Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-       tLONELY
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 12
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg                                   =tLBRACE_ARG
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 20
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def fname
-                    {
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-                    }
-                    f_arglist bodystmt k_end
-                    {
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fname
-                    {
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                    }
-                    f_arglist bodystmt k_end
-                    {
-
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA
-                    {
-                      result = args(val) << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    compstmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 37
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 40
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-       f_arglist: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn tEQL arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                    }
-
-     f_block_opt: f_arg_asgn tEQL primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-                | tLONELY # TODO: rename tANDDOT?
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-        rbracket: opt_nl tRBRACK
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby24_parser.rb 3.21.1-1/lib/ruby24_parser.rb
--- 3.20.0-2/lib/ruby24_parser.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby24_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,11231 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby24Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -524,   631,   568,   224,   225,  -109,   -95,  -524,  -524,  -524,
-  -110,   568,  -524,  -524,  -524,  -103,  -524,  -117,   568,   224,
-   225,   -81,   568,   647,  -524,   285,  -524,  -524,  -524,  -116,
-   234,  -109,  -538,   650,     3,  -539,  -524,  -524,   230,  -524,
-  -524,  -524,  -524,  -524,  -112,   280,   729,   224,   225,   728,
-  -110,    95,  -105,  -114,   568,   887,   740,  -104,   729,    96,
-   126,   731,   633,   632,   629,  -111,   235,  -524,  -524,  -524,
-  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,
-  -524,  -117,  -103,  -524,  -524,  -524,   646,  -524,  -524,  -109,
-   282,  -524,  -110,   235,  -524,  -524,   649,  -524,   285,  -524,
-   221,  -524,   231,  -524,  -524,  -524,  -524,  -524,  -524,  -524,
-  -100,  -524,   287,  -524,   222,  -101,   130,  -103,  -116,  -105,
-  -103,   129,  -108,  -622,  -104,   130,  -524,  -524,  -524,  -524,
-   129,  -524,   130,  -524,  -107,  -103,   130,   129,  -524,  -527,
-  -112,   129,  -524,  -114,  -524,  -109,  -527,  -527,  -527,  -103,
-  -109,  -527,  -527,  -527,  -105,  -527,   130,  -105,  -105,  -104,
-   886,   129,  -104,  -527,  -110,  -527,  -527,  -527,   130,  -110,
-  -102,   949,  -105,   129,  -111,  -527,  -527,  -104,  -527,  -527,
-  -527,  -527,  -527,  -113,  -102,   287,  -115,  -113,   285,  -115,
-  -524,   832,   224,   225,   832,  -117,  -527,  -524,  -534,   232,
-  -117,   224,   225,  -527,   223,  -534,  -527,  -527,  -527,  -527,
-  -527,  -527,  -527,  -527,  -527,  -527,  -527,  -527,  -527,  -527,
-   108,   109,  -527,  -527,  -527,   831,  -527,  -527,   831,   849,
-  -527,   285,  -116,  -527,  -527,   850,  -527,  -116,  -527,   226,
-  -527,  -108,  -527,  -527,  -527,  -527,  -527,  -527,  -527,   477,
-  -527,  -102,  -527,  -622,  -112,  -623,  -117,  -114,   631,  -112,
-   631,  -622,  -114,   275,  -623,  -527,  -527,  -527,  -527,   232,
-  -527,  -301,  -527,   337,   547,   287,   823,  -527,  -301,  -301,
-  -301,  -527,   235,  -527,  -301,  -301,  -102,  -301,  -111,  -102,
-   616,   235,  -104,  -111,  -106,  -538,   282,  -113,   110,   111,
-  -115,   619,  -113,   824,  -102,  -115,  -117,  -301,  -301,   668,
-  -301,  -301,  -301,  -301,  -301,   108,   109,  -533,   287,   633,
-   632,   633,   632,   338,  -533,   631,  -117,   130,   794,   235,
-   796,  -116,   129,  -112,   627,   626,  -619,  -100,  -301,  -301,
-  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,  -301,  -109,   370,  -301,  -301,  -301,   230,   674,   752,
-  -114,   669,  -301,   753,   229,  -301,  -112,  -620,   620,   863,
-  -301,   575,  -301,   227,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,   616,  -301,  -344,  -301,   395,   633,   632,   629,  -524,
-  -344,  -539,   619,   110,   111,   547,  -524,  -301,  -301,  -344,
-  -106,  -619,  -301,  -626,   920,  -524,   702,   810,   398,  -301,
-  -626,  -626,  -626,  -301,   401,  -115,  -626,  -626,  -114,  -626,
-  -527,   231,  -535,  -619,   404,   627,   626,  -527,  -626,  -535,
-   631,   255,  -620,  -101,   230,   421,  -527,  -107,   631,  -626,
-  -626,   474,  -626,  -626,  -626,  -626,  -626,  -344,  -110,  -536,
-   475,  -532,  -116,  -524,  -620,  -529,  -536,   631,  -532,   620,
-   426,  -111,  -529,   252,  -111,  -536,   729,   254,   253,   731,
-  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,  -626,  -626,  -527,   476,  -626,  -626,  -626,  -537,
-   675,   633,   632,   634,  -626,   478,  -537,  -626,   231,   633,
-   632,   639,  -626,   631,  -626,  -537,  -626,  -626,  -626,  -626,
-  -626,  -626,  -626,  -536,  -626,  -626,  -626,   668,   633,   632,
-   644,   479,   611,   234,   608,   607,   606,   616,   609,  -626,
-  -626,   508,  -104,  -530,  -626,   517,   230,  -531,   619,   593,
-  -530,  -626,  -626,   540,  -531,  -626,   594,  -113,   520,  -626,
-  -626,  -626,   538,  -537,  -626,  -626,  -626,   255,  -626,  -103,
-   614,   272,   273,   522,   633,   632,   651,  -626,  -626,  -626,
-  -626,   627,   626,   729,  -112,  -626,   731,   235,  -626,  -626,
-  1051,  -626,  -626,  -626,  -626,  -626,   130,   -80,  -292,   252,
-   235,   129,   230,   254,   253,  -292,   271,   270,   631,   550,
-   231,   636,   130,   533,  -292,   620,   534,   129,   475,  -626,
-  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,  -626,   859,   863,  -626,  -626,  -626,  -626,   825,
-  -626,   224,   225,  -626,   669,  -626,  -626,  -626,   541,  -626,
-  -622,  -626,   292,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,  -292,  -626,  -626,  -626,   231,   235,   423,   633,
-   632,   130,  -626,   425,   424,   282,   129,   230,  -626,  -626,
-  -626,  -626,   810,  -626,   579,  -626,  -105,   130,   627,   626,
-  -626,  -301,   129,   577,  -626,   544,  -113,   548,  -301,  -301,
-  -301,  -114,  -626,  -301,  -301,  -301,   611,  -301,   608,   607,
-   606,   616,   609,   230,   859,   863,   130,  -301,  -301,  -301,
-   661,   129,   619,   255,  -102,   235,   575,  -301,  -301,   659,
-  -301,  -301,  -301,  -301,  -301,   414,   580,   581,   638,  -111,
-   642,   231,   645,   648,   614,   597,   611,   655,   608,   607,
-   606,  -274,   609,   624,   623,   627,   626,   657,  -301,  -301,
-  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,  -301,   658,   662,  -301,  -301,  -301,   231,   826,  -301,
-   235,   666,  -301,   667,   782,  -301,  -301,   282,  -301,   620,
-  -301,   679,  -301,   786,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,   255,  -301,   255,  -301,   611,   255,   608,   607,   606,
-   616,   609,   133,   134,   135,   136,   137,  -301,  -301,  -301,
-  -301,   619,  -301,  -301,  -301,   255,   686,   235,   235,  -301,
-  -301,  -301,  -301,  -301,   421,  -115,  -301,  -301,   235,  -301,
-  -302,   230,   -95,   614,   706,   235,   553,  -302,   755,   717,
-   722,  -302,   624,   623,   627,   626,  -302,   757,  -302,  -301,
-  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -302,  -301,  -301,
-   725,   235,   732,  -623,   733,   522,  -301,  -301,   736,   725,
-   611,  -623,   608,   607,   606,  -301,   609,   725,   620,   575,
-  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,  -301,  -301,  -301,  -302,   231,  -301,  -301,  -301,   725,
-   674,   759,   764,   770,  -301,  -302,   773,  -301,   782,   774,
-   776,   255,  -301,   778,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,  -301,  -301,  -301,  -301,   611,  -301,   608,   607,   606,
-   616,   609,   611,   780,   608,   607,   606,   789,   609,  -301,
-  -301,   619,  -301,   252,  -301,  -626,   790,   254,   253,   250,
-   251,  -301,  -626,  -626,  -626,  -301,   791,  -115,  -626,  -626,
-   797,  -626,   230,   614,   133,   134,   135,   136,   137,  1035,
-  -626,   798,   624,   623,   627,   626,   230,  -275,   757,   811,
-   508,  -626,  -626,  1041,  -626,  -626,  -626,  -626,  -626,   909,
-   910,   230,  1039,   911,   124,   125,   508,   235,  1035,   828,
-   611,   275,   608,   607,   606,   837,   609,   757,   620,   839,
-   520,   522,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,  -626,  -626,  -626,  -626,   231,   717,  -626,  -626,
-  -626,   611,   675,   608,   607,   606,  -626,   609,   782,  -626,
-   231,   235,   282,   255,  -626,   282,  -626,   786,  -626,  -626,
-  -626,  -626,  -626,  -626,  -626,   231,  -626,  -626,  -626,   265,
-   266,  1016,   717,   608,   607,   606,   255,   609,   863,   782,
-   725,  -626,  -626,   235,  -626,   252,  -626,   258,   786,   254,
-   253,   250,   251,  -626,  -437,   235,   904,  -626,   905,  -113,
-   235,  -437,  -437,  -437,   914,  -276,  -437,  -437,  -437,   611,
-  -437,   608,   607,   606,   616,   609,   255,   235,   919,  -437,
-  -437,  -437,   936,   717,  -274,   619,   941,   725,   725,   725,
-  -437,  -437,   235,  -437,  -437,  -437,  -437,  -437,   611,   725,
-   608,   607,   606,   725,   609,   235,   963,   614,   252,   235,
-   773,   966,   254,   253,   250,   251,   624,   623,   627,   626,
-   968,  -437,  -437,  -437,  -437,  -437,  -437,  -437,  -437,  -437,
-  -437,  -437,  -437,  -437,  -437,   970,   782,  -437,  -437,  -437,
-   972,   972,  -437,   235,   282,  -437,   979,  -277,  -437,  -437,
-   980,  -437,   620,  -437,   773,  -437,   983,  -437,  -437,  -437,
-  -437,  -437,  -437,  -437,   986,  -437,  -437,  -437,   611,   988,
-   608,   607,   606,   616,   609,   133,   134,   135,   136,   137,
-  -437,  -437,   990,  -437,   619,  -437,  -310,   133,   134,   135,
-   136,   137,  -437,  -310,  -310,  -310,  -437,   235,  -310,  -310,
-  -310,   992,  -310,   255,   725,   611,   614,   608,   607,   606,
-   764,   609,  -310,  -310,  1012,   624,   623,   627,   626,   265,
-   266,  1013,  -310,  -310,  1022,  -310,  -310,  -310,  -310,  -310,
-  1016,  1023,   608,   607,   606,   252,   609,   258,  1033,   254,
-   253,   250,   251,   782,  1036,   256,   849,   257,  1042,  1052,
-   972,   620,   972,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
-  -310,  -310,  -310,  -310,  -310,  -310,  -310,   972,   773,  -310,
-  -310,  -310,  1059,  1061,  -310,  1063,   292,  -310,  1065,  1065,
-  -310,  -310,   722,  -310,   725,  -310,   725,  -310,  1023,  -310,
-  -310,  -310,  -310,  -310,  -310,  -310,  -623,  -310,  -622,  -310,
-   611,   235,   608,   607,   606,   616,   609,   972,  1087,  1065,
-  1065,  1065,  -310,  -310,  1065,  -310,   619,  -310,  -293,   nil,
-   nil,   nil,   nil,   nil,  -310,  -293,  -293,  -293,  -310,   nil,
-  -293,  -293,  -293,   nil,  -293,   255,   nil,   nil,   614,   nil,
-   nil,   nil,   nil,   nil,  -293,  -293,  -293,   624,   623,   627,
-   626,   265,   266,   nil,  -293,  -293,   nil,  -293,  -293,  -293,
-  -293,  -293,   nil,   nil,   nil,   nil,   nil,   252,   nil,   258,
-   nil,   254,   253,   250,   251,   nil,   nil,   256,   nil,   257,
-   nil,   nil,   nil,   620,   nil,  -293,  -293,  -293,  -293,  -293,
-  -293,  -293,  -293,  -293,  -293,  -293,  -293,  -293,  -293,   nil,
-   nil,  -293,  -293,  -293,   nil,   nil,  -293,   nil,   nil,  -293,
-   nil,   nil,  -293,  -293,   nil,  -293,   nil,  -293,   nil,  -293,
-   nil,  -293,  -293,  -293,  -293,  -293,  -293,  -293,   nil,  -293,
-   nil,  -293,   611,   nil,   608,   607,   606,   616,   609,   nil,
-   nil,   nil,   nil,   nil,  -293,  -293,  -293,  -293,   619,  -293,
-  -648,  -293,   nil,   nil,   nil,   nil,  -293,  -648,  -648,  -648,
-  -293,   nil,  -648,  -648,  -648,   nil,  -648,   255,   nil,   nil,
-   614,   nil,   nil,   nil,   nil,  -648,  -648,  -648,   nil,   624,
-   623,   627,   626,   265,   266,   nil,  -648,  -648,   nil,  -648,
-  -648,  -648,  -648,  -648,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   258,   nil,   254,   253,   250,   251,   235,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   620,   nil,  -648,  -648,  -648,
-  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,
-  -648,   nil,   nil,  -648,  -648,  -648,   nil,   nil,  -648,   nil,
-   282,  -648,   nil,   nil,  -648,  -648,   nil,  -648,   nil,  -648,
-   nil,  -648,   nil,  -648,  -648,  -648,  -648,  -648,  -648,  -648,
-   nil,  -648,  -648,  -648,   611,   nil,   608,   607,   606,   616,
-   609,   nil,   nil,   nil,   nil,   nil,  -648,  -648,   nil,  -648,
-   619,  -648,  -627,   nil,   nil,   nil,   nil,   nil,  -648,  -627,
-  -627,  -627,  -648,   nil,  -627,  -627,  -627,   nil,  -627,   255,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,  -627,  -627,  -627,
-  -627,   624,   623,   627,   626,   265,   266,   nil,  -627,  -627,
-   nil,  -627,  -627,  -627,  -627,  -627,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   nil,   254,   253,   250,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,   nil,  -627,
-  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,
-  -627,  -627,  -627,   nil,   nil,  -627,  -627,  -627,   nil,   nil,
-  -627,   nil,   nil,  -627,   nil,   nil,  -627,  -627,   nil,  -627,
-   nil,  -627,   nil,  -627,   nil,  -627,  -627,  -627,  -627,  -627,
-  -627,  -627,   nil,  -627,  -627,  -627,   611,   nil,   608,   607,
-   606,   616,   609,   nil,   nil,   nil,   nil,   nil,  -627,  -627,
-  -627,  -627,   619,  -627,  -628,  -627,   nil,   nil,   nil,   nil,
-  -627,  -628,  -628,  -628,  -627,   nil,  -628,  -628,  -628,   nil,
-  -628,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,  -628,
-  -628,  -628,  -628,   nil,   nil,   627,   626,   nil,   nil,   nil,
-  -628,  -628,   nil,  -628,  -628,  -628,  -628,  -628,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,
-   nil,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,
-  -628,  -628,  -628,  -628,  -628,   nil,   nil,  -628,  -628,  -628,
-   nil,   nil,  -628,   nil,   nil,  -628,   nil,   nil,  -628,  -628,
-   nil,  -628,   nil,  -628,   nil,  -628,   nil,  -628,  -628,  -628,
-  -628,  -628,  -628,  -628,   nil,  -628,  -628,  -628,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  -628,  -628,  -628,  -628,   nil,  -628,  -648,  -628,   nil,   nil,
-   nil,   nil,  -628,  -648,  -648,  -648,  -628,   nil,  -648,  -648,
-  -648,   nil,  -648,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  -648,  -648,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -648,  -648,   nil,  -648,  -648,  -648,  -648,  -648,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   506,   458,   nil,
-   nil,   507,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,  -648,   nil,   nil,   175,   176,   161,
-   162,  -648,   nil,   nil,   nil,   nil,   282,  -648,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,  -648,  -648,
-   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -648,   nil,   nil,   nil,   nil,  -648,   nil,   nil,
-   170,   nil,   nil,   nil,  -648,   nil,   nil,   nil,  -648,     8,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   663,    11,    49,    10,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,  -249,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   663,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   235,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,  -649,  -649,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,  -649,  -649,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,     8,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,    10,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   nil,   nil,   263,   264,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   nil,   263,   264,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,    10,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
-   nil,   nil,   nil,   nil,   611,   nil,   608,   607,   606,   616,
-   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
-   619,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   319,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   627,   626,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   620,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
-   nil,   nil,   nil,   611,   nil,   608,   607,   606,   616,   609,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,   619,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   614,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   627,   626,   nil,    96,   106,   nil,   nil,   nil,
-   336,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   620,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   130,   nil,   nil,   nil,   nil,   129,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
-   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,   607,   606,
-   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   364,
-   nil,   619,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   627,   626,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   620,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   414,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   431,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   431,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   235,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   235,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   nil,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,
-   607,   606,   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   619,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   627,   626,   nil,    96,
-   106,   nil,   nil,   nil,   536,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   620,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   334,   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,   607,
-   606,   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   324,   nil,   619,   320,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   627,   626,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   620,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   553,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,   582,
-    60,   114,   113,   583,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,
-   611,   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   584,   nil,   619,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   627,
-   626,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   620,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   nil,   nil,   122,   121,   123,   582,    60,
-   114,   113,   583,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,
-   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   584,   nil,   619,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   627,   626,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   620,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   699,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   414,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,
-   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   324,   nil,   619,   320,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   627,   626,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   620,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   304,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   305,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   802,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,    12,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
-   nil,    13,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   699,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,
-   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   431,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   699,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   868,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   304,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   305,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   304,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   299,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   305,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   994,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1001,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-  1006,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   994,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
-   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
-   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
-   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
-   208,   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,
-   nil,   nil,   183,   190,   181,   182,   178,   179,   180,   141,
-   143,   140,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   188,   199,   189,   212,   185,   205,   195,
-   194,   215,   216,   210,   193,   192,   187,   213,   217,   218,
-   197,   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,
-   207,   214,   209,   208,   201,   211,   196,   184,   203,   202,
-   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,
-   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,
-   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
-   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
-   nil,   nil,   nil,   207,   214,   209,   379,   378,   380,   377,
-   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
-   181,   182,   374,   375,   376,   372,   143,   114,   113,   373,
-   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   386,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
-   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
-   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
-   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
-   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
-   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
-   411,   410,   142,   nil,   412,   nil,   nil,   nil,   nil,   nil,
-   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
-   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
-   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
-   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
-   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   188,   199,   189,   212,   185,   205,   195,   194,
-   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
-   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
-   214,   209,   208,   201,   211,   196,   184,   203,   202,   nil,
-   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,
-   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,
-   205,   195,   194,   215,   216,   210,   193,   192,   187,   213,
-   217,   218,   197,   186,   200,   204,   206,   198,   191,   nil,
-   nil,   nil,   207,   214,   209,   208,   201,   211,   196,   184,
-   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,
-   182,   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,
-   189,   212,   185,   205,   195,   194,   215,   216,   210,   193,
-   192,   187,   213,   217,   218,   197,   186,   200,   204,   206,
-   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,
-   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,
-   183,   190,   181,   182,   178,   179,   180,   141,   143,   nil,
-   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   454,   458,   nil,   nil,   455,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   461,   465,   nil,   nil,   460,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   680,   458,   nil,   nil,   681,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   682,
-   465,   nil,   nil,   683,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   710,   458,   nil,
-   nil,   711,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   713,   465,   nil,   nil,   714,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   680,   458,   nil,   nil,   681,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   682,   465,   nil,   nil,   683,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   747,
-   458,   nil,   nil,   748,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   749,   465,   nil,
-   nil,   750,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   804,   458,   nil,   nil,   805,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   807,   465,   nil,   nil,   806,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   872,   465,   nil,   nil,   873,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   506,
-   458,   nil,   nil,   507,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   611,   177,   608,   607,   606,   616,   609,   611,   nil,
-   608,   607,   606,   616,   609,   nil,   nil,   619,   nil,   nil,
-   nil,   nil,   170,   nil,   619,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,
-   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   624,   623,
-   627,   626,   nil,   nil,   nil,   624,   623,   627,   626,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1069,   465,   nil,   nil,
-  1068,   nil,   nil,   nil,   620,   nil,   nil,   nil,   nil,   173,
-   174,   620,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
-   nil,   nil,   nil,   nil,  1072,   458,   nil,   nil,  1073,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
-   nil,   nil,  1074,   465,   nil,   nil,  1075,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   611,   177,   608,   607,   606,   616,
-   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   619,   nil,   nil,   nil,   nil,   170,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   624,   623,   627,   626,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620 ]
-
-racc_action_check = [
-   112,   389,   353,   470,   470,   361,   705,   112,   112,   112,
-   362,   354,   112,   112,   112,   710,   112,   365,   940,    17,
-    17,   705,   945,   402,   112,    29,   112,   112,   112,   580,
-    22,   998,   238,   405,     1,   239,   112,   112,    27,   112,
-   112,   112,   112,   112,   747,    27,   559,   352,   352,   559,
-   999,    92,   711,   748,   869,   768,   570,   713,   560,    92,
-     3,   560,   389,   389,   389,   870,    22,   112,   112,   112,
-   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
-   112,  1002,   710,   112,   112,   112,   402,   112,   112,   238,
-    29,   112,   239,   470,   112,   112,   405,   112,    65,   112,
-    13,   112,    27,   112,   112,   112,   112,   112,   112,   112,
-   361,   112,    29,   112,    15,   362,   353,   710,  1042,   711,
-   710,   353,   365,   713,   713,   354,   112,   112,   112,   112,
-   354,   112,   940,   112,   580,   710,   945,   940,   112,   115,
-  1072,   945,   112,  1073,   112,   998,   115,   115,   115,   747,
-   998,   115,   115,   115,   711,   115,   570,   711,   748,   713,
-   768,   570,   713,   115,   999,   115,   115,   115,   869,   999,
-   870,   869,   711,   869,  1085,   115,   115,   713,   115,   115,
-   115,   115,   115,  1074,   844,    65,  1075,   749,   689,   750,
-   372,   687,   720,   720,   838,  1002,   373,   372,   374,    20,
-  1002,   767,   767,   373,    16,   374,   115,   115,   115,   115,
-   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
-    44,    44,   115,   115,   115,   687,   115,   115,   838,   721,
-   115,   329,  1042,   115,   115,   721,   115,  1042,   115,    18,
-   115,    20,   115,   115,   115,   115,   115,   115,   115,   241,
-   115,   844,   115,   749,  1072,   750,    20,  1073,   640,  1072,
-   643,  1074,  1073,    25,  1075,   115,   115,   115,   115,   438,
-   115,   460,   115,    40,   476,   689,   680,   115,   460,   460,
-   460,   115,   720,   115,   460,   460,   844,   460,  1085,   844,
-   770,   767,   749,  1085,   750,    41,   329,  1074,    44,    44,
-  1075,   770,  1074,   681,   844,  1075,   241,   460,   460,   804,
-   460,   460,   460,   460,   460,   334,   334,   375,   329,   640,
-   640,   643,   643,    43,   375,   524,   438,     5,   640,    49,
-   643,   476,     5,   680,   770,   770,   582,    41,   460,   460,
-   460,   460,   460,   460,   460,   460,   460,   460,   460,   460,
-   460,   460,    41,    73,   460,   460,   460,    19,   460,   584,
-   681,   805,   460,   584,    19,   460,   804,   583,   770,  1007,
-   460,  1007,   460,    19,   460,   460,   460,   460,   460,   460,
-   460,   980,   460,    50,   460,    99,   524,   524,   524,   582,
-    50,    42,   980,   334,   334,   338,   582,   460,   460,    50,
-   460,   582,   460,   461,   827,   582,   524,   916,   100,   460,
-   461,   461,   461,   460,   101,   460,   461,   461,   805,   461,
-   583,    19,   376,   582,   102,   980,   980,   583,   461,   376,
-   391,   482,   583,    42,   237,   138,   583,   338,   396,   461,
-   461,   237,   461,   461,   461,   461,   461,    50,    42,   321,
-   237,   377,   338,   582,   583,   378,   321,   399,   377,   980,
-   219,   827,   378,   482,   916,   321,   564,   482,   482,   564,
-   461,   461,   461,   461,   461,   461,   461,   461,   461,   461,
-   461,   461,   461,   461,   583,   240,   461,   461,   461,   322,
-   461,   391,   391,   391,   461,   242,   322,   461,   237,   396,
-   396,   396,   461,   407,   461,   322,   461,   461,   461,   461,
-   461,   461,   461,   321,   461,   461,   461,   454,   399,   399,
-   399,   243,   778,   247,   778,   778,   778,   778,   778,   461,
-   461,   281,   461,   379,   461,   296,   323,   380,   778,   382,
-   379,   461,   682,   323,   380,   461,   382,   461,   297,   682,
-   682,   682,   323,   322,   682,   682,   682,   483,   682,   454,
-   778,    47,    47,   300,   407,   407,   407,   682,   682,   682,
-   682,   778,   778,   857,   454,   872,   857,  1014,   682,   682,
-  1014,   682,   682,   682,   682,   682,   308,   314,   325,   483,
-   316,   308,   340,   483,   483,   325,    47,    47,   393,   340,
-   323,   393,   358,   317,   325,   778,   318,   358,   340,   682,
-   682,   682,   682,   682,   682,   682,   682,   682,   682,   682,
-   682,   682,   682,   735,   735,   682,   682,   682,   872,   682,
-   682,   761,   761,   682,   455,   872,   682,   682,   324,   682,
-   872,   682,   327,   682,   872,   682,   682,   682,   682,   682,
-   682,   682,   325,   682,   682,   682,   340,   328,   140,   393,
-   393,   878,   872,   140,   140,   333,   878,   363,   682,   682,
-   682,   682,   664,   682,   363,   682,   455,   882,   773,   773,
-   682,   683,   882,   363,   682,   335,   682,   339,   683,   683,
-   683,   455,   872,   683,   683,   683,   387,   683,   387,   387,
-   387,   387,   387,   437,  1043,  1043,   954,   683,   683,   683,
-   437,   954,   387,   342,   664,   348,   359,   683,   683,   437,
-   683,   683,   683,   683,   683,   360,   364,   366,   395,   664,
-   398,   363,   401,   404,   387,   387,   614,   427,   614,   614,
-   614,   430,   614,   387,   387,   387,   387,   432,   683,   683,
-   683,   683,   683,   683,   683,   683,   683,   683,   683,   683,
-   683,   683,   435,   439,   683,   683,   683,   437,   683,   683,
-   449,   452,   683,   453,   614,   683,   683,   462,   683,   387,
-   683,   472,   683,   614,   683,   683,   683,   683,   683,   683,
-   683,   484,   683,   485,   683,   597,   486,   597,   597,   597,
-   597,   597,     9,     9,     9,     9,     9,   683,   683,   683,
-   683,   597,   683,   806,   683,   487,   503,   510,   514,   683,
-   806,   806,   806,   683,   530,   683,   806,   806,   531,   806,
-   541,   586,   532,   597,   535,   537,   542,   541,   586,   545,
-   554,   753,   597,   597,   597,   597,   541,   586,   753,   806,
-   806,   714,   806,   806,   806,   806,   806,   753,   714,   873,
-   555,   556,   561,   714,   562,   565,   873,   714,   567,   571,
-   905,   873,   905,   905,   905,   873,   905,   572,   597,   573,
-   806,   806,   806,   806,   806,   806,   806,   806,   806,   806,
-   806,   806,   806,   806,   541,   586,   806,   806,   806,   574,
-   806,   588,   591,   599,   806,   753,   600,   806,   905,   602,
-   603,   497,   806,   604,   806,   714,   806,   806,   806,   806,
-   806,   806,   806,   873,   806,   764,   806,   764,   764,   764,
-   764,   764,   786,   613,   786,   786,   786,   621,   786,   806,
-   806,   764,   806,   497,   806,   807,   625,   497,   497,   497,
-   497,   806,   807,   807,   807,   806,   628,   806,   807,   807,
-   647,   807,   993,   764,   312,   312,   312,   312,   312,   993,
-   807,   650,   764,   764,   764,   764,  1000,   656,   993,   665,
-   670,   807,   807,  1000,   807,   807,   807,   807,   807,   792,
-   792,  1034,  1000,   792,   792,   792,   676,   684,  1034,   685,
-   782,   688,   782,   782,   782,   692,   782,  1034,   764,   694,
-   696,   698,   807,   807,   807,   807,   807,   807,   807,   807,
-   807,   807,   807,   807,   807,   807,   993,   707,   807,   807,
-   807,   904,   807,   904,   904,   904,   807,   904,   782,   807,
-  1000,   709,   712,   488,   807,   715,   807,   782,   807,   807,
-   807,   807,   807,   807,   807,  1034,   807,   807,   807,   488,
-   488,   963,   716,   963,   963,   963,   719,   963,   737,   904,
-   743,   807,   807,   746,   807,   488,   807,   488,   904,   488,
-   488,   488,   488,   807,    30,   769,   784,   807,   785,   807,
-   787,    30,    30,    30,   799,   801,    30,    30,    30,   765,
-    30,   765,   765,   765,   765,   765,   498,   803,   812,    30,
-    30,    30,   836,   843,   853,   765,   854,   858,   864,   871,
-    30,    30,   875,    30,    30,    30,    30,    30,  1022,   879,
-  1022,  1022,  1022,   880,  1022,   881,   888,   765,   498,   889,
-   890,   894,   498,   498,   498,   498,   765,   765,   765,   765,
-   895,    30,    30,    30,    30,    30,    30,    30,    30,    30,
-    30,    30,    30,    30,    30,   897,  1022,    30,    30,    30,
-   898,   900,    30,   903,    30,    30,   913,   915,    30,    30,
-   922,    30,   765,    30,   923,    30,   925,    30,    30,    30,
-    30,    30,    30,    30,   926,    30,    30,    30,   774,   927,
-   774,   774,   774,   774,   774,   347,   347,   347,   347,   347,
-    30,    30,   929,    30,   774,    30,    31,   529,   529,   529,
-   529,   529,    30,    31,    31,    31,    30,   930,    31,    31,
-    31,   931,    31,   502,   953,  1023,   774,  1023,  1023,  1023,
-   960,  1023,    31,    31,   961,   774,   774,   774,   774,   502,
-   502,   962,    31,    31,   977,    31,    31,    31,    31,    31,
-  1051,   978,  1051,  1051,  1051,   502,  1051,   502,   991,   502,
-   502,   502,   502,  1023,   994,   502,   996,   502,  1001,  1018,
-  1019,   774,  1020,    31,    31,    31,    31,    31,    31,    31,
-    31,    31,    31,    31,    31,    31,    31,  1021,  1024,    31,
-    31,    31,  1027,  1028,    31,  1029,    31,    31,  1030,  1032,
-    31,    31,  1038,    31,  1048,    31,  1049,    31,  1057,    31,
-    31,    31,    31,    31,    31,    31,  1068,    31,  1069,    31,
-   776,  1071,   776,   776,   776,   776,   776,  1080,  1081,  1082,
-  1083,  1084,    31,    31,  1092,    31,   776,    31,    60,   nil,
-   nil,   nil,   nil,   nil,    31,    60,    60,    60,    31,   nil,
-    60,    60,    60,   nil,    60,   551,   nil,   nil,   776,   nil,
-   nil,   nil,   nil,   nil,    60,    60,    60,   776,   776,   776,
-   776,   551,   551,   nil,    60,    60,   nil,    60,    60,    60,
-    60,    60,   nil,   nil,   nil,   nil,   nil,   551,   nil,   551,
-   nil,   551,   551,   551,   551,   nil,   nil,   551,   nil,   551,
-   nil,   nil,   nil,   776,   nil,    60,    60,    60,    60,    60,
-    60,    60,    60,    60,    60,    60,    60,    60,    60,   nil,
-   nil,    60,    60,    60,   nil,   nil,    60,   nil,   nil,    60,
-   nil,   nil,    60,    60,   nil,    60,   nil,    60,   nil,    60,
-   nil,    60,    60,    60,    60,    60,    60,    60,   nil,    60,
-   nil,    60,   831,   nil,   831,   831,   831,   831,   831,   nil,
-   nil,   nil,   nil,   nil,    60,    60,    60,    60,   831,    60,
-   456,    60,   nil,   nil,   nil,   nil,    60,   456,   456,   456,
-    60,   nil,   456,   456,   456,   nil,   456,   489,   nil,   nil,
-   831,   nil,   nil,   nil,   nil,   456,   456,   456,   nil,   831,
-   831,   831,   831,   489,   489,   nil,   456,   456,   nil,   456,
-   456,   456,   456,   456,   nil,   nil,   nil,   nil,   nil,   489,
-   nil,   489,   nil,   489,   489,   489,   489,   831,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   831,   nil,   456,   456,   456,
-   456,   456,   456,   456,   456,   456,   456,   456,   456,   456,
-   456,   nil,   nil,   456,   456,   456,   nil,   nil,   456,   nil,
-   456,   456,   nil,   nil,   456,   456,   nil,   456,   nil,   456,
-   nil,   456,   nil,   456,   456,   456,   456,   456,   456,   456,
-   nil,   456,   456,   456,   966,   nil,   966,   966,   966,   966,
-   966,   nil,   nil,   nil,   nil,   nil,   456,   456,   nil,   456,
-   966,   456,   465,   nil,   nil,   nil,   nil,   nil,   456,   465,
-   465,   465,   456,   nil,   465,   465,   465,   nil,   465,   490,
-   nil,   nil,   966,   nil,   nil,   nil,   nil,   465,   465,   465,
-   465,   966,   966,   966,   966,   490,   490,   nil,   465,   465,
-   nil,   465,   465,   465,   465,   465,   nil,   nil,   nil,   nil,
-   nil,   490,   nil,   nil,   nil,   490,   490,   490,   490,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   966,   nil,   465,
-   465,   465,   465,   465,   465,   465,   465,   465,   465,   465,
-   465,   465,   465,   nil,   nil,   465,   465,   465,   nil,   nil,
-   465,   nil,   nil,   465,   nil,   nil,   465,   465,   nil,   465,
-   nil,   465,   nil,   465,   nil,   465,   465,   465,   465,   465,
-   465,   465,   nil,   465,   465,   465,   968,   nil,   968,   968,
-   968,   968,   968,   nil,   nil,   nil,   nil,   nil,   465,   465,
-   465,   465,   968,   465,   466,   465,   nil,   nil,   nil,   nil,
-   465,   466,   466,   466,   465,   nil,   466,   466,   466,   nil,
-   466,   nil,   nil,   nil,   968,   nil,   nil,   nil,   nil,   466,
-   466,   466,   466,   nil,   nil,   968,   968,   nil,   nil,   nil,
-   466,   466,   nil,   466,   466,   466,   466,   466,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   968,
-   nil,   466,   466,   466,   466,   466,   466,   466,   466,   466,
-   466,   466,   466,   466,   466,   nil,   nil,   466,   466,   466,
-   nil,   nil,   466,   nil,   nil,   466,   nil,   nil,   466,   466,
-   nil,   466,   nil,   466,   nil,   466,   nil,   466,   466,   466,
-   466,   466,   466,   466,   nil,   466,   466,   466,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   466,   466,   466,   466,   nil,   466,   505,   466,   nil,   nil,
-   nil,   nil,   466,   505,   505,   505,   466,   nil,   505,   505,
-   505,   nil,   505,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   505,   505,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   505,   505,   nil,   505,   505,   505,   505,   505,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   278,   278,   nil,
-   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   278,   278,   nil,   278,   278,   278,   278,   278,   278,   278,
-   nil,   nil,   278,   278,   505,   nil,   nil,   278,   278,   278,
-   278,   505,   nil,   nil,   nil,   nil,   505,   505,   nil,   nil,
-   nil,   nil,   nil,   nil,   278,   278,   nil,   278,   278,   278,
-   278,   278,   278,   278,   278,   278,   278,   278,   505,   505,
-   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   505,   nil,   nil,   nil,   nil,   505,   nil,   nil,
-   278,   nil,   nil,   nil,   505,   nil,   nil,   nil,   505,     2,
-     2,     2,     2,     2,     2,   nil,   nil,   nil,     2,     2,
-   nil,   nil,   nil,     2,   nil,     2,     2,     2,     2,     2,
-     2,     2,   nil,   nil,   nil,   nil,   nil,     2,     2,     2,
-     2,     2,     2,     2,   nil,   nil,     2,   nil,   nil,   nil,
-   nil,   442,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,   nil,     2,     2,     2,   nil,     2,
-     2,   nil,     2,     2,     2,   442,   442,   442,   442,   442,
-   442,   442,   442,   442,   442,   442,   nil,   442,   442,   nil,
-   nil,   442,   442,   nil,     2,   nil,   nil,     2,   nil,   nil,
-     2,     2,   nil,   nil,     2,   nil,     2,   442,   nil,   442,
-     2,   442,   442,   442,   442,   442,   442,   442,     2,   442,
-   nil,   nil,   nil,     2,     2,     2,     2,     2,     2,   nil,
-   nil,   nil,     2,     2,   nil,   442,   nil,   442,   nil,   nil,
-     2,   nil,   nil,     2,     2,     2,   nil,     2,     2,    36,
-    36,    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,
-   nil,   nil,   nil,    36,   nil,    36,    36,    36,    36,    36,
-    36,    36,   nil,   nil,   nil,   nil,   nil,    36,    36,    36,
-    36,    36,    36,    36,   nil,   nil,    36,   nil,   nil,   nil,
-   nil,   448,    36,    36,    36,    36,    36,    36,    36,    36,
-    36,    36,    36,    36,   nil,    36,    36,    36,   nil,    36,
-    36,   nil,    36,    36,    36,   448,   448,   448,   448,   448,
-   448,   448,   448,   448,   448,   448,   nil,   448,   448,   nil,
-   nil,   448,   448,   nil,    36,   nil,   nil,    36,   nil,   nil,
-    36,    36,   nil,   nil,    36,   nil,    36,   448,   nil,   448,
-    36,   448,   448,   448,   448,   448,   448,   448,    36,   448,
-   nil,   nil,   nil,    36,    36,    36,    36,    36,    36,   nil,
-   nil,   nil,    36,    36,   nil,   448,   nil,   nil,   nil,   nil,
-    36,   nil,   nil,    36,    36,    36,   nil,    36,    36,   221,
-   221,   221,   221,   221,   221,   nil,   nil,   nil,   221,   221,
-   nil,   nil,   nil,   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,   221,   221,   221,   221,   221,   221,   221,   221,
-   221,   221,   221,   221,   nil,   221,   221,   221,   nil,   221,
-   221,   nil,   221,   221,   221,    24,    24,    24,    24,    24,
-    24,    24,    24,    24,    24,    24,   nil,    24,    24,   nil,
-   nil,    24,    24,   nil,   221,   nil,   nil,   221,   nil,   nil,
-   221,   221,   nil,   nil,   221,   nil,   221,    24,   nil,    24,
-   221,    24,    24,    24,    24,    24,    24,    24,   221,    24,
-   nil,   nil,   nil,   221,   221,   221,   221,   221,   221,   nil,
-   nil,   nil,   221,   221,   nil,    24,   nil,   nil,   nil,   nil,
-   221,   nil,   nil,   221,   221,   221,   nil,   221,   221,   246,
-   246,   246,   246,   246,   246,   nil,   nil,   nil,   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,   246,   246,   246,   246,   246,   246,   246,   246,
-   246,   246,   246,   246,   nil,   246,   246,   246,   nil,   246,
-   246,   nil,   246,   246,   246,   294,   294,   294,   294,   294,
-   294,   294,   294,   294,   294,   294,   nil,   294,   294,   nil,
-   nil,   294,   294,   nil,   246,   nil,   nil,   246,   nil,   nil,
-   246,   246,   nil,   nil,   246,   nil,   246,   294,   nil,   294,
-   246,   294,   294,   294,   294,   294,   294,   294,   246,   294,
-   nil,   nil,   nil,   246,   246,   246,   246,   246,   246,   nil,
-   nil,   nil,   246,   246,   nil,   294,   nil,   nil,   nil,   nil,
-   246,   nil,   nil,   246,   246,   246,   nil,   246,   246,   315,
-   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,   315,
-   nil,   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,   315,   315,   315,   315,   315,   315,   315,   315,
-   315,   315,   315,   315,   nil,   315,   315,   315,   nil,   315,
-   315,   nil,   315,   315,   315,   501,   501,   501,   501,   501,
-   501,   501,   501,   501,   501,   501,   nil,   501,   501,   nil,
-   nil,   501,   501,   nil,   315,   nil,   nil,   315,   nil,   nil,
-   315,   315,   nil,   nil,   315,   nil,   315,   501,   nil,   501,
-   315,   501,   501,   501,   501,   501,   501,   501,   315,   501,
-   nil,   nil,   nil,   315,   315,   315,   315,   315,   315,   nil,
-   nil,   nil,   315,   315,   501,   501,   nil,   nil,   nil,   nil,
-   315,   nil,   nil,   315,   315,   315,   nil,   315,   315,   320,
-   320,   320,   320,   320,   320,   nil,   nil,   nil,   320,   320,
-   nil,   nil,   nil,   320,   nil,   320,   320,   320,   320,   320,
-   320,   320,   nil,   nil,   nil,   nil,   nil,   320,   320,   320,
-   320,   320,   320,   320,   nil,   nil,   320,   nil,   nil,   nil,
-   nil,   nil,   320,   320,   320,   320,   320,   320,   320,   320,
-   320,   320,   320,   320,   nil,   320,   320,   320,   nil,   320,
-   320,   nil,   320,   320,   320,   552,   552,   552,   552,   552,
-   552,   552,   552,   552,   552,   552,   nil,   552,   552,   nil,
-   nil,   552,   552,   nil,   320,   nil,   nil,   320,   nil,   nil,
-   320,   320,   nil,   nil,   320,   nil,   320,   552,   nil,   552,
-   320,   552,   552,   552,   552,   552,   552,   552,   320,   552,
-   nil,   nil,   nil,   320,   320,   320,   320,   320,   320,   nil,
-   nil,   nil,   320,   320,   nil,   552,   nil,   nil,   nil,   nil,
-   320,   nil,   nil,   320,   320,   320,   nil,   320,   320,   346,
-   346,   346,   346,   346,   346,   nil,   nil,   nil,   346,   346,
-   nil,   nil,   nil,   346,   nil,   346,   346,   346,   346,   346,
-   346,   346,   nil,   nil,   nil,   nil,   nil,   346,   346,   346,
-   346,   346,   346,   346,   nil,   nil,   346,   nil,   nil,   nil,
-   nil,   nil,   346,   346,   346,   346,   346,   346,   346,   346,
-   346,   346,   346,   346,   nil,   346,   346,   346,   nil,   346,
-   346,   nil,   346,   346,   346,   809,   809,   809,   809,   809,
-   809,   809,   809,   809,   809,   809,   nil,   809,   809,   nil,
-   nil,   809,   809,   nil,   346,   nil,   nil,   346,   nil,   nil,
-   346,   346,   nil,   nil,   346,   nil,   346,   809,   nil,   809,
-   346,   809,   809,   809,   809,   809,   809,   809,   346,   809,
-   nil,   nil,   nil,   346,   346,   346,   346,   346,   346,   nil,
-   nil,   nil,   346,   346,   nil,   809,   nil,   nil,   nil,   nil,
-   346,   nil,   nil,   346,   346,   346,   nil,   346,   346,   356,
-   356,   356,   356,   356,   356,   nil,   nil,   nil,   356,   356,
-   nil,   nil,   nil,   356,   nil,   356,   356,   356,   356,   356,
-   356,   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,
-   356,   356,   356,   356,   nil,   nil,   356,   nil,   nil,   nil,
-   nil,   nil,   356,   356,   356,   356,   356,   356,   356,   356,
-   356,   356,   356,   356,   nil,   356,   356,   356,   nil,   356,
-   356,   nil,   356,   356,   356,   921,   921,   921,   921,   921,
-   921,   921,   921,   921,   921,   921,   nil,   921,   921,   nil,
-   nil,   921,   921,   nil,   356,   nil,   nil,   356,   nil,   nil,
-   356,   356,   nil,   nil,   356,   nil,   356,   921,   nil,   921,
-   356,   921,   921,   921,   921,   921,   921,   921,   356,   921,
-   nil,   nil,   nil,   356,   356,   356,   356,   356,   356,   nil,
-   nil,   nil,   356,   356,   nil,   921,   nil,   nil,   nil,   nil,
-   356,   nil,   nil,   356,   356,   356,   nil,   356,   356,   357,
-   357,   357,   357,   357,   357,   nil,   nil,   nil,   357,   357,
-   nil,   nil,   nil,   357,   nil,   357,   357,   357,   357,   357,
-   357,   357,   nil,   nil,   nil,   nil,   nil,   357,   357,   357,
-   357,   357,   357,   357,   nil,   nil,   357,   nil,   nil,   nil,
-   nil,   nil,   357,   357,   357,   357,   357,   357,   357,   357,
-   357,   357,   357,   357,   nil,   357,   357,   357,   nil,   357,
-   357,   nil,   357,   357,   357,   480,   480,   480,   480,   480,
-   480,   480,   480,   480,   480,   480,   nil,   480,   480,   nil,
-   nil,   480,   480,   nil,   357,   nil,   nil,   357,   nil,   nil,
-   357,   357,   nil,   nil,   357,   nil,   357,   480,   nil,   480,
-   357,   480,   480,   480,   480,   480,   480,   480,   357,   480,
-   nil,   nil,   nil,   357,   357,   357,   357,   357,   357,   nil,
-   nil,   nil,   357,   357,   nil,   nil,   nil,   nil,   nil,   nil,
-   357,   nil,   nil,   357,   357,   357,   nil,   357,   357,   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,   481,   481,   481,   481,   481,
-   481,   481,   481,   481,   481,   481,   nil,   481,   481,   nil,
-   nil,   481,   481,   nil,   566,   nil,   nil,   566,   nil,   nil,
-   566,   566,   nil,   nil,   566,   nil,   566,   481,   nil,   481,
-   566,   481,   481,   481,   481,   481,   481,   481,   566,   481,
-   nil,   nil,   nil,   566,   566,   566,   566,   566,   566,   nil,
-   nil,   nil,   566,   566,   nil,   nil,   nil,   nil,   nil,   nil,
-   566,   nil,   nil,   566,   566,   566,   nil,   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,   491,   491,   491,   491,   491,
-   491,   491,   nil,   nil,   491,   491,   nil,   nil,   nil,   nil,
-   nil,   491,   491,   nil,   569,   nil,   nil,   569,   nil,   nil,
-   569,   569,   nil,   nil,   569,   nil,   569,   491,   nil,   491,
-   569,   491,   491,   491,   491,   491,   491,   491,   569,   491,
-   nil,   nil,   nil,   569,   569,   569,   569,   569,   569,   nil,
-   nil,   nil,   569,   569,   nil,   nil,   nil,   nil,   nil,   nil,
-   569,   nil,   nil,   569,   569,   569,   nil,   569,   569,   652,
-   652,   652,   652,   652,   652,   nil,   nil,   nil,   652,   652,
-   nil,   nil,   nil,   652,   nil,   652,   652,   652,   652,   652,
-   652,   652,   nil,   nil,   nil,   nil,   nil,   652,   652,   652,
-   652,   652,   652,   652,   nil,   nil,   652,   nil,   nil,   nil,
-   nil,   nil,   652,   652,   652,   652,   652,   652,   652,   652,
-   652,   652,   652,   652,   nil,   652,   652,   652,   nil,   652,
-   652,   nil,   652,   652,   652,   492,   492,   492,   492,   492,
-   492,   492,   nil,   nil,   492,   492,   nil,   nil,   nil,   nil,
-   nil,   492,   492,   nil,   652,   nil,   nil,   652,   nil,   nil,
-   652,   652,   nil,   nil,   652,   nil,   652,   492,   nil,   492,
-   652,   492,   492,   492,   492,   492,   492,   492,   652,   492,
-   nil,   nil,   nil,   652,   652,   652,   652,   652,   652,   nil,
-   nil,   nil,   652,   652,   nil,   nil,   nil,   nil,   nil,   nil,
-   652,   nil,   nil,   652,   652,   652,   nil,   652,   652,   751,
-   751,   751,   751,   751,   751,   nil,   nil,   nil,   751,   751,
-   nil,   nil,   nil,   751,   nil,   751,   751,   751,   751,   751,
-   751,   751,   nil,   nil,   nil,   nil,   nil,   751,   751,   751,
-   751,   751,   751,   751,   nil,   nil,   751,   nil,   nil,   nil,
-   nil,   nil,   751,   751,   751,   751,   751,   751,   751,   751,
-   751,   751,   751,   751,   nil,   751,   751,   751,   nil,   751,
-   751,   nil,   751,   751,   751,   493,   493,   493,   493,   493,
-   493,   493,   nil,   nil,   493,   493,   nil,   nil,   nil,   nil,
-   nil,   493,   493,   nil,   751,   nil,   nil,   751,   nil,   nil,
-   751,   751,   nil,   nil,   751,   nil,   751,   493,   nil,   493,
-   751,   493,   493,   493,   493,   493,   493,   493,   751,   493,
-   nil,   nil,   nil,   751,   751,   751,   751,   751,   751,   nil,
-   nil,   nil,   751,   751,   nil,   nil,   nil,   nil,   nil,   nil,
-   751,   nil,   nil,   751,   751,   751,   nil,   751,   751,   762,
-   762,   762,   762,   762,   762,   nil,   nil,   nil,   762,   762,
-   nil,   nil,   nil,   762,   nil,   762,   762,   762,   762,   762,
-   762,   762,   nil,   nil,   nil,   nil,   nil,   762,   762,   762,
-   762,   762,   762,   762,   nil,   nil,   762,   nil,   nil,   nil,
-   nil,   nil,   762,   762,   762,   762,   762,   762,   762,   762,
-   762,   762,   762,   762,   nil,   762,   762,   762,   nil,   762,
-   762,   nil,   762,   762,   762,   494,   494,   494,   494,   494,
-   494,   494,   nil,   nil,   494,   494,   nil,   nil,   nil,   nil,
-   nil,   494,   494,   nil,   762,   nil,   nil,   762,   nil,   nil,
-   762,   762,   nil,   nil,   762,   nil,   762,   494,   nil,   494,
-   762,   494,   494,   494,   494,   494,   494,   494,   762,   494,
-   nil,   nil,   nil,   762,   762,   762,   762,   762,   762,   nil,
-   nil,   nil,   762,   762,   nil,   nil,   nil,   nil,   nil,   nil,
-   762,   nil,   nil,   762,   762,   762,   nil,   762,   762,   763,
-   763,   763,   763,   763,   763,   nil,   nil,   nil,   763,   763,
-   nil,   nil,   nil,   763,   nil,   763,   763,   763,   763,   763,
-   763,   763,   nil,   nil,   nil,   nil,   nil,   763,   763,   763,
-   763,   763,   763,   763,   nil,   nil,   763,   nil,   nil,   nil,
-   nil,   nil,   763,   763,   763,   763,   763,   763,   763,   763,
-   763,   763,   763,   763,   nil,   763,   763,   763,   nil,   763,
-   763,   nil,   763,   763,   763,   495,   495,   495,   495,   495,
-   495,   495,   nil,   nil,   495,   495,   nil,   nil,   nil,   nil,
-   nil,   495,   495,   nil,   763,   nil,   nil,   763,   nil,   nil,
-   763,   763,   nil,   nil,   763,   nil,   763,   495,   nil,   495,
-   763,   495,   495,   495,   495,   495,   495,   495,   763,   495,
-   nil,   nil,   nil,   763,   763,   763,   763,   763,   763,   nil,
-   nil,   nil,   763,   763,   nil,   nil,   nil,   nil,   nil,   nil,
-   763,   nil,   nil,   763,   763,   763,   nil,   763,   763,   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,   496,   496,   496,   496,   496,
-   496,   496,   nil,   nil,   496,   496,   nil,   nil,   nil,   nil,
-   nil,   496,   496,   nil,   793,   nil,   nil,   793,   nil,   nil,
-   793,   793,   nil,   nil,   793,   nil,   793,   496,   nil,   496,
-   793,   496,   496,   496,   496,   496,   496,   496,   793,   496,
-   nil,   nil,   nil,   793,   793,   793,   793,   793,   793,   nil,
-   nil,   nil,   793,   793,   nil,   nil,   nil,   nil,   nil,   nil,
-   793,   nil,   nil,   793,   793,   793,   nil,   793,   793,   833,
-   833,   833,   833,   833,   833,   nil,   nil,   nil,   833,   833,
-   nil,   nil,   nil,   833,   nil,   833,   833,   833,   833,   833,
-   833,   833,   nil,   nil,   nil,   nil,   nil,   833,   833,   833,
-   833,   833,   833,   833,   nil,   nil,   833,   nil,   nil,   nil,
-   nil,   nil,   833,   833,   833,   833,   833,   833,   833,   833,
-   833,   833,   833,   833,   nil,   833,   833,   833,   nil,   833,
-   833,   nil,   833,   833,   833,   499,   499,   499,   499,   499,
-   499,   499,   nil,   nil,   499,   499,   nil,   nil,   nil,   nil,
-   nil,   499,   499,   nil,   833,   nil,   nil,   833,   nil,   nil,
-   833,   833,   nil,   nil,   833,   nil,   833,   499,   nil,   499,
-   833,   499,   499,   499,   499,   499,   499,   499,   833,   499,
-   nil,   nil,   nil,   833,   833,   833,   833,   833,   833,   nil,
-   nil,   nil,   833,   833,   nil,   nil,   nil,   nil,   nil,   nil,
-   833,   nil,   nil,   833,   833,   833,   nil,   833,   833,   851,
-   851,   851,   851,   851,   851,   nil,   nil,   nil,   851,   851,
-   nil,   nil,   nil,   851,   nil,   851,   851,   851,   851,   851,
-   851,   851,   nil,   nil,   nil,   nil,   nil,   851,   851,   851,
-   851,   851,   851,   851,   nil,   nil,   851,   nil,   nil,   nil,
-   nil,   nil,   851,   851,   851,   851,   851,   851,   851,   851,
-   851,   851,   851,   851,   nil,   851,   851,   851,   nil,   851,
-   851,   nil,   851,   851,   851,   500,   500,   500,   500,   500,
-   500,   500,   500,   nil,   500,   500,   nil,   nil,   nil,   nil,
-   nil,   500,   500,   nil,   851,   nil,   nil,   851,   nil,   nil,
-   851,   851,   nil,   nil,   851,   nil,   851,   500,   nil,   500,
-   851,   500,   500,   500,   500,   500,   500,   500,   851,   500,
-   nil,   nil,   nil,   851,   851,   851,   851,   851,   851,   nil,
-   nil,   nil,   851,   851,   nil,   nil,   nil,   nil,   nil,   nil,
-   851,   nil,   nil,   851,   851,   851,   nil,   851,   851,   863,
-   863,   863,   863,   863,   863,   nil,   nil,   nil,   863,   863,
-   nil,   nil,   nil,   863,   nil,   863,   863,   863,   863,   863,
-   863,   863,   nil,   nil,   nil,   nil,   nil,   863,   863,   863,
-   863,   863,   863,   863,   nil,   nil,   863,   nil,   nil,   nil,
-   nil,   nil,   863,   863,   863,   863,   863,   863,   863,   863,
-   863,   863,   863,   863,   nil,   863,   863,   863,   nil,   863,
-   863,   nil,   863,   863,   863,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   863,   nil,   nil,   863,   nil,   nil,
-   863,   863,   nil,   nil,   863,   nil,   863,   nil,   nil,   nil,
-   863,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   863,   nil,
-   nil,   nil,   nil,   863,   863,   863,   863,   863,   863,   nil,
-   nil,   nil,   863,   863,   nil,   nil,   nil,   nil,   nil,   nil,
-   863,   nil,   nil,   863,   863,   863,   nil,   863,   863,   876,
-   876,   876,   876,   876,   876,   nil,   nil,   nil,   876,   876,
-   nil,   nil,   nil,   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,   876,   876,   876,   876,   876,   876,   876,   876,
-   876,   876,   876,   876,   nil,   876,   876,   876,   nil,   876,
-   876,   nil,   876,   876,   876,   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,   876,   nil,   nil,   876,   nil,   876,   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,   nil,   nil,   nil,
-   876,   nil,   nil,   876,   876,   876,   nil,   876,   876,   886,
-   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,   886,   886,   886,   886,   886,   886,
-   886,   886,   886,   886,   nil,   886,   886,   886,   nil,   886,
-   886,   nil,   886,   886,   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,   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,   nil,   nil,   nil,
-   886,   nil,   nil,   886,   886,   886,   nil,   886,   886,   887,
-   887,   887,   887,   887,   887,   nil,   nil,   nil,   887,   887,
-   nil,   nil,   nil,   887,   nil,   887,   887,   887,   887,   887,
-   887,   887,   nil,   nil,   nil,   nil,   nil,   887,   887,   887,
-   887,   887,   887,   887,   nil,   nil,   887,   nil,   nil,   nil,
-   nil,   nil,   887,   887,   887,   887,   887,   887,   887,   887,
-   887,   887,   887,   887,   nil,   887,   887,   887,   nil,   887,
-   887,   nil,   887,   887,   887,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   887,   nil,   nil,   887,   nil,   nil,
-   887,   887,   nil,   nil,   887,   nil,   887,   nil,   nil,   nil,
-   887,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   887,   nil,
-   nil,   nil,   nil,   887,   887,   887,   887,   887,   887,   nil,
-   nil,   nil,   887,   887,   nil,   nil,   nil,   nil,   nil,   nil,
-   887,   nil,   nil,   887,   887,   887,   nil,   887,   887,   937,
-   937,   937,   937,   937,   937,   nil,   nil,   nil,   937,   937,
-   nil,   nil,   nil,   937,   nil,   937,   937,   937,   937,   937,
-   937,   937,   nil,   nil,   nil,   nil,   nil,   937,   937,   937,
-   937,   937,   937,   937,   nil,   nil,   937,   nil,   nil,   nil,
-   nil,   nil,   937,   937,   937,   937,   937,   937,   937,   937,
-   937,   937,   937,   937,   nil,   937,   937,   937,   nil,   937,
-   937,   nil,   937,   937,   937,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   937,   nil,   nil,   937,   nil,   nil,
-   937,   937,   nil,   nil,   937,   nil,   937,   nil,   nil,   nil,
-   937,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   937,   nil,
-   nil,   nil,   nil,   937,   937,   937,   937,   937,   937,   nil,
-   nil,   nil,   937,   937,   nil,   nil,   nil,   nil,   nil,   nil,
-   937,   nil,   nil,   937,   937,   937,   nil,   937,   937,   938,
-   938,   938,   938,   938,   938,   nil,   nil,   nil,   938,   938,
-   nil,   nil,   nil,   938,   nil,   938,   938,   938,   938,   938,
-   938,   938,   nil,   nil,   nil,   nil,   nil,   938,   938,   938,
-   938,   938,   938,   938,   nil,   nil,   938,   nil,   nil,   nil,
-   nil,   nil,   938,   938,   938,   938,   938,   938,   938,   938,
-   938,   938,   938,   938,   nil,   938,   938,   938,   nil,   938,
-   938,   nil,   938,   938,   938,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   938,   nil,   nil,   938,   nil,   nil,
-   938,   938,   nil,   nil,   938,   nil,   938,   nil,   nil,   nil,
-   938,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   938,   nil,
-   nil,   nil,   nil,   938,   938,   938,   938,   938,   938,   nil,
-   nil,   nil,   938,   938,   nil,   nil,   nil,   nil,   nil,   nil,
-   938,   nil,   nil,   938,   938,   938,   nil,   938,   938,   950,
-   950,   950,   950,   950,   950,   nil,   nil,   nil,   950,   950,
-   nil,   nil,   nil,   950,   nil,   950,   950,   950,   950,   950,
-   950,   950,   nil,   nil,   nil,   nil,   nil,   950,   950,   950,
-   950,   950,   950,   950,   nil,   nil,   950,   nil,   nil,   nil,
-   nil,   nil,   950,   950,   950,   950,   950,   950,   950,   950,
-   950,   950,   950,   950,   nil,   950,   950,   950,   nil,   950,
-   950,   nil,   950,   950,   950,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   950,   nil,   nil,   950,   nil,   nil,
-   950,   950,   nil,   nil,   950,   nil,   950,   nil,   nil,   nil,
-   950,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   950,   nil,
-   nil,   nil,   nil,   950,   950,   950,   950,   950,   950,   nil,
-   nil,   nil,   950,   950,   nil,   nil,   nil,   nil,   nil,   nil,
-   950,   nil,   nil,   950,   950,   950,   nil,   950,   950,   997,
-   997,   997,   997,   997,   997,   nil,   nil,   nil,   997,   997,
-   nil,   nil,   nil,   997,   nil,   997,   997,   997,   997,   997,
-   997,   997,   nil,   nil,   nil,   nil,   nil,   997,   997,   997,
-   997,   997,   997,   997,   nil,   nil,   997,   nil,   nil,   nil,
-   nil,   nil,   997,   997,   997,   997,   997,   997,   997,   997,
-   997,   997,   997,   997,   nil,   997,   997,   997,   nil,   997,
-   997,   nil,   997,   997,   997,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,   nil,   nil,
-   997,   997,   nil,   nil,   997,   nil,   997,   nil,   nil,   nil,
-   997,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,
-   nil,   nil,   nil,   997,   997,   997,   997,   997,   997,   nil,
-   nil,   nil,   997,   997,   nil,   nil,   nil,   nil,   nil,   nil,
-   997,   nil,   nil,   997,   997,   997,   nil,   997,   997,  1004,
-  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,  1004,  1004,
-   nil,   nil,   nil,  1004,   nil,  1004,  1004,  1004,  1004,  1004,
-  1004,  1004,   nil,   nil,   nil,   nil,   nil,  1004,  1004,  1004,
-  1004,  1004,  1004,  1004,   nil,   nil,  1004,   nil,   nil,   nil,
-   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,  1004,  1004,
-  1004,  1004,  1004,  1004,   nil,  1004,  1004,  1004,   nil,  1004,
-  1004,   nil,  1004,  1004,  1004,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1004,   nil,   nil,  1004,   nil,   nil,
-  1004,  1004,   nil,   nil,  1004,   nil,  1004,   nil,   nil,   nil,
-  1004,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,
-   nil,   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,   nil,
-   nil,   nil,  1004,  1004,   nil,   nil,   nil,   nil,   nil,   nil,
-  1004,   nil,   nil,  1004,  1004,  1004,   nil,  1004,  1004,  1010,
-  1010,  1010,  1010,  1010,  1010,   nil,   nil,   nil,  1010,  1010,
-   nil,   nil,   nil,  1010,   nil,  1010,  1010,  1010,  1010,  1010,
-  1010,  1010,   nil,   nil,   nil,   nil,   nil,  1010,  1010,  1010,
-  1010,  1010,  1010,  1010,   nil,   nil,  1010,   nil,   nil,   nil,
-   nil,   nil,  1010,  1010,  1010,  1010,  1010,  1010,  1010,  1010,
-  1010,  1010,  1010,  1010,   nil,  1010,  1010,  1010,   nil,  1010,
-  1010,   nil,  1010,  1010,  1010,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1010,   nil,   nil,  1010,   nil,   nil,
-  1010,  1010,   nil,   nil,  1010,   nil,  1010,   nil,   nil,   nil,
-  1010,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1010,   nil,
-   nil,   nil,   nil,  1010,  1010,  1010,  1010,  1010,  1010,   nil,
-   nil,   nil,  1010,  1010,   nil,   nil,   nil,   nil,   nil,   nil,
-  1010,   nil,   nil,  1010,  1010,  1010,   nil,  1010,  1010,  1011,
-  1011,  1011,  1011,  1011,  1011,   nil,   nil,   nil,  1011,  1011,
-   nil,   nil,   nil,  1011,   nil,  1011,  1011,  1011,  1011,  1011,
-  1011,  1011,   nil,   nil,   nil,   nil,   nil,  1011,  1011,  1011,
-  1011,  1011,  1011,  1011,   nil,   nil,  1011,   nil,   nil,   nil,
-   nil,   nil,  1011,  1011,  1011,  1011,  1011,  1011,  1011,  1011,
-  1011,  1011,  1011,  1011,   nil,  1011,  1011,  1011,   nil,  1011,
-  1011,   nil,  1011,  1011,  1011,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1011,   nil,   nil,  1011,   nil,   nil,
-  1011,  1011,   nil,   nil,  1011,   nil,  1011,   nil,   nil,   nil,
-  1011,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1011,   nil,
-   nil,   nil,   nil,  1011,  1011,  1011,  1011,  1011,  1011,   nil,
-   nil,   nil,  1011,  1011,   nil,   nil,   nil,   nil,   nil,   nil,
-  1011,   nil,   nil,  1011,  1011,  1011,   nil,  1011,  1011,     8,
-     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
-   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
-     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
-     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
-   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
-     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
-   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
-     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
-   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
-   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
-   nil,   nil,     8,     8,     8,   nil,     8,     8,    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,   nil,    23,    23,    23,    23,    23,
-    23,    23,   nil,   nil,    23,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,    23,    23,    23,    23,    23,    23,
-    23,    23,   nil,    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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,    23,    23,    23,   nil,    23,    23,    32,    32,    32,
-   nil,    32,   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,
-    32,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
-   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,
-    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,    32,    32,    32,    32,    32,    32,    32,
-    32,    32,    32,    32,    32,   nil,    32,    32,   nil,    32,
-    32,    32,   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,    32,    32,   nil,
-   nil,    32,   nil,    32,   nil,    32,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,    32,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,
-    32,    32,    32,   nil,    32,    32,    33,    33,    33,   nil,
-    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,
-   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
-   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
-   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,
-   nil,   nil,    33,    33,    33,    33,    33,    33,    33,    33,
-    33,    33,    33,    33,   nil,    33,    33,   nil,    33,    33,
-    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,
-    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
-    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,
-   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,
-    33,    33,   nil,    33,    33,    34,    34,    34,   nil,    34,
-   nil,   nil,   nil,    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,    34,
-    34,    34,    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,    34,
-    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,    34,
-    34,   nil,    34,    34,    37,    37,    37,   nil,    37,   nil,
-   nil,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,    37,
-    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,   nil,
-   nil,    37,    37,    37,    37,    37,    37,    37,   nil,   nil,
-    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,
-    37,    37,    37,    37,    37,    37,    37,    37,   nil,    37,
-    37,    37,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,
-   nil,   nil,   nil,   nil,   970,   nil,   970,   970,   970,   970,
-   970,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
-   970,    37,   nil,   nil,    37,    37,   nil,   nil,    37,   nil,
-    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   970,   nil,   nil,   nil,   nil,    37,    37,    37,
-    37,    37,    37,   970,   970,   nil,    37,    37,   nil,   nil,
-   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,    37,
-   nil,    37,    37,    38,    38,    38,   nil,    38,   nil,   nil,
-   nil,    38,    38,   nil,   nil,   nil,    38,   970,    38,    38,
-    38,    38,    38,    38,    38,   nil,   nil,   nil,   nil,   nil,
-    38,    38,    38,    38,    38,    38,    38,   nil,   nil,    38,
-   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,
-    38,    38,    38,    38,    38,    38,    38,   nil,    38,    38,
-    38,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,   nil,
-   nil,   nil,   nil,   972,   nil,   972,   972,   972,   972,   972,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   972,
-    38,   nil,   nil,    38,    38,   nil,   nil,    38,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   972,   nil,   nil,   nil,   nil,    38,    38,    38,    38,
-    38,    38,   972,   972,   nil,    38,    38,   nil,   nil,   nil,
-    38,   nil,   nil,    38,   nil,   nil,    38,    38,    38,   nil,
-    38,    38,    45,    45,    45,   nil,    45,   nil,   nil,   nil,
-    45,    45,   nil,   nil,   nil,    45,   972,    45,    45,    45,
-    45,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,    45,
-    45,    45,    45,    45,    45,    45,   nil,   nil,    45,   nil,
-   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,
-    45,    45,    45,    45,    45,    45,   nil,    45,    45,    45,
-   nil,    45,    45,   nil,    45,    45,    45,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
-   nil,   nil,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
-   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    45,   nil,   nil,   nil,   nil,    45,    45,    45,    45,    45,
-    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,
-   nil,   nil,    45,   nil,   nil,    45,    45,    45,   nil,    45,
-    45,    46,    46,    46,   nil,    46,   nil,   nil,   nil,    46,
-    46,   nil,   nil,   nil,    46,   nil,    46,    46,    46,    46,
-    46,    46,    46,   nil,   nil,   nil,   nil,   nil,    46,    46,
-    46,    46,    46,    46,    46,   nil,   nil,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,    46,
-    46,    46,    46,    46,    46,   nil,    46,    46,    46,   nil,
-    46,    46,   nil,    46,    46,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,   nil,
-   nil,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,
-   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
-   nil,   nil,   nil,   nil,    46,    46,    46,    46,    46,    46,
-   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,    46,   nil,   nil,    46,    46,    46,   nil,    46,    46,
-    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,    48,
-   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,    48,
-    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,    48,
-    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,    48,
-    48,    48,    48,    48,   nil,    48,    48,    48,   nil,    48,
-    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,
-    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,   nil,
-   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,    48,    48,    48,   nil,    48,    48,    62,
-    62,    62,    62,    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,    62,    62,   nil,    62,    62,    62,    62,    62,    62,
-    62,    62,    62,   nil,    62,    62,    62,   nil,    62,    62,
-   nil,    62,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    62,   nil,   nil,    62,   nil,   nil,    62,
-    62,   nil,   nil,    62,   nil,    62,   nil,   nil,   nil,    62,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,
-   nil,   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,
-   nil,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,    62,
-   nil,   nil,    62,    62,    62,   nil,    62,    62,    67,    67,
-    67,   nil,    67,   nil,   nil,   nil,    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,    67,   nil,   nil,   nil,
-   nil,    67,    67,    67,    67,    67,    67,   nil,   nil,   nil,
-    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,    67,    67,    67,   nil,    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,    68,
-    68,    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,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,
-    68,    68,    68,    68,    68,    68,   nil,   nil,   nil,    68,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-    68,    68,    68,   nil,    68,    68,    71,    71,    71,   nil,
-    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
-   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
-   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
-   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
-   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
-   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
-    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
-    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
-    71,    71,   nil,    71,    71,    72,    72,    72,   nil,    72,
-   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
-    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
-   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
-   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
-    72,    72,    72,   nil,    72,    72,   nil,   nil,   nil,    72,
-   nil,   nil,   nil,   nil,   nil,   988,   nil,   988,   988,   988,
-   988,   988,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
-   nil,   988,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   988,   nil,   nil,   nil,   nil,    72,    72,
-    72,    72,    72,    72,   988,   988,   nil,    72,    72,   nil,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
-    72,   nil,    72,    72,   128,   128,   128,   128,   128,   nil,
-   nil,   nil,   128,   128,   nil,   nil,   nil,   128,   988,   128,
-   128,   128,   128,   128,   128,   128,   nil,   nil,   nil,   nil,
-   nil,   128,   128,   128,   128,   128,   128,   128,   nil,   nil,
-   128,   nil,   nil,   nil,   nil,   nil,   128,   128,   128,   128,
-   128,   128,   128,   128,   128,   128,   128,   128,   nil,   128,
-   128,   128,   nil,   128,   128,   nil,   128,   128,   128,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,
-   nil,   128,   nil,   nil,   128,   128,   nil,   nil,   128,   nil,
-   128,   nil,   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   128,   nil,   nil,   nil,   nil,   128,   128,   128,
-   128,   128,   128,   nil,   nil,   nil,   128,   128,   nil,   nil,
-   nil,   nil,   nil,   128,   128,   nil,   nil,   128,   128,   128,
-   nil,   128,   128,   133,   133,   133,   nil,   133,   nil,   nil,
-   nil,   133,   133,   nil,   nil,   nil,   133,   nil,   133,   133,
-   133,   133,   133,   133,   133,   nil,   nil,   nil,   nil,   nil,
-   133,   133,   133,   133,   133,   133,   133,   nil,   nil,   133,
-   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,
-   133,   133,   133,   133,   133,   133,   133,   nil,   133,   133,
-   133,   nil,   133,   133,   nil,   133,   133,   133,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,
-   133,   nil,   nil,   133,   133,   nil,   nil,   133,   nil,   nil,
-   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   133,   nil,   nil,   nil,   nil,   133,   133,   133,   133,
-   133,   133,   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,
-   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,   nil,
-   133,   133,   134,   134,   134,   nil,   134,   nil,   nil,   nil,
-   134,   134,   nil,   nil,   nil,   134,   nil,   134,   134,   134,
-   134,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,   134,
-   134,   134,   134,   134,   134,   134,   nil,   nil,   134,   nil,
-   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   134,
-   134,   134,   134,   134,   134,   134,   nil,   134,   134,   134,
-   nil,   134,   134,   nil,   134,   134,   134,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,
-   nil,   nil,   134,   134,   nil,   nil,   134,   nil,   nil,   nil,
-   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   134,   nil,   nil,   nil,   nil,   134,   134,   134,   134,   134,
-   134,   nil,   nil,   nil,   134,   134,   nil,   nil,   nil,   nil,
-   nil,   nil,   134,   nil,   nil,   134,   134,   134,   nil,   134,
-   134,   135,   135,   135,   nil,   135,   nil,   nil,   nil,   135,
-   135,   nil,   nil,   nil,   135,   nil,   135,   135,   135,   135,
-   135,   135,   135,   nil,   nil,   nil,   nil,   nil,   135,   135,
-   135,   135,   135,   135,   135,   nil,   nil,   135,   nil,   nil,
-   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   135,   135,
-   135,   135,   135,   135,   135,   nil,   135,   135,   135,   nil,
-   135,   135,   nil,   135,   135,   135,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   nil,
-   nil,   135,   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,
-   nil,   135,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,
-   nil,   nil,   nil,   nil,   135,   135,   135,   135,   135,   135,
-   nil,   nil,   nil,   135,   135,   nil,   nil,   nil,   nil,   nil,
-   nil,   135,   nil,   nil,   135,   135,   135,   nil,   135,   135,
-   136,   136,   136,   nil,   136,   nil,   nil,   nil,   136,   136,
-   nil,   nil,   nil,   136,   nil,   136,   136,   136,   136,   136,
-   136,   136,   nil,   nil,   nil,   nil,   nil,   136,   136,   136,
-   136,   136,   136,   136,   nil,   nil,   136,   nil,   nil,   nil,
-   nil,   nil,   nil,   136,   nil,   nil,   136,   136,   136,   136,
-   136,   136,   136,   136,   nil,   136,   136,   136,   nil,   136,
-   136,   nil,   136,   136,   136,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,
-   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
-   nil,   nil,   nil,   136,   136,   136,   136,   136,   136,   nil,
-   nil,   nil,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   136,   136,   136,   nil,   136,   136,   137,
-   137,   137,   137,   137,   nil,   nil,   nil,   137,   137,   nil,
-   nil,   nil,   137,   nil,   137,   137,   137,   137,   137,   137,
-   137,   nil,   nil,   nil,   nil,   nil,   137,   137,   137,   137,
-   137,   137,   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,
-   nil,   137,   137,   nil,   137,   137,   137,   137,   137,   137,
-   137,   137,   137,   nil,   137,   137,   137,   nil,   137,   137,
-   nil,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,   nil,   137,
-   137,   nil,   nil,   137,   nil,   137,   nil,   nil,   nil,   137,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   nil,   nil,   137,   137,   137,   137,   137,   137,   nil,   nil,
-   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,
-   nil,   nil,   137,   137,   137,   nil,   137,   137,   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,   nil,   222,   222,   222,   222,   222,
-   222,   222,   nil,   nil,   222,   nil,   nil,   nil,   nil,   nil,
-   nil,   222,   nil,   nil,   222,   222,   222,   222,   222,   222,
-   222,   222,   nil,   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,   222,   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,   nil,   nil,   nil,   222,   nil,
-   nil,   222,   222,   222,   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,   nil,   223,   223,   223,   223,   223,   223,
-   223,   nil,   nil,   223,   nil,   nil,   nil,   nil,   nil,   nil,
-   223,   nil,   nil,   223,   223,   223,   223,   223,   223,   223,
-   223,   nil,   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,   223,   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,   nil,   nil,   nil,   223,   nil,   nil,
-   223,   223,   223,   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,   nil,   224,   224,   224,   224,   224,   224,   224,
-   nil,   nil,   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,
-   nil,   nil,   224,   224,   224,   224,   224,   224,   224,   224,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,
-   224,   224,   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,   nil,   225,   225,   225,   225,   225,   225,   225,   nil,
-   nil,   225,   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,
-   nil,   225,   225,   225,   225,   225,   225,   225,   225,   nil,
-   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,   225,   225,
-   225,   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,
-   nil,   226,   226,   226,   226,   226,   226,   226,   nil,   nil,
-   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,
-   226,   226,   226,   226,   226,   226,   226,   226,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,   226,
-   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,   nil,
-   227,   227,   227,   227,   227,   227,   227,   nil,   nil,   227,
-   nil,   nil,   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,
-   227,   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,   227,
-   nil,   227,   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,
-   nil,   nil,   nil,   227,   nil,   227,   227,   227,   227,   nil,
-   227,   227,   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,   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,
-   232,   nil,   nil,   nil,   nil,   232,   232,   232,   232,   232,
-   232,   nil,   nil,   nil,   232,   232,   nil,   nil,   nil,   nil,
-   nil,   nil,   232,   nil,   nil,   232,   232,   232,   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,   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,   233,
-   nil,   nil,   nil,   nil,   233,   233,   233,   233,   233,   233,
-   nil,   nil,   nil,   233,   233,   nil,   nil,   nil,   nil,   nil,
-   nil,   233,   nil,   nil,   233,   233,   233,   nil,   233,   233,
-   234,   234,   234,   nil,   234,   nil,   nil,   nil,   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,   234,   nil,
-   nil,   nil,   nil,   234,   234,   234,   234,   234,   234,   nil,
-   nil,   nil,   234,   234,   234,   nil,   nil,   nil,   nil,   nil,
-   234,   nil,   nil,   234,   234,   234,   nil,   234,   234,   245,
-   245,   245,   nil,   245,   nil,   nil,   nil,   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,   245,   nil,   nil,
-   nil,   nil,   245,   245,   245,   245,   245,   245,   nil,   nil,
-   nil,   245,   245,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   245,   245,   245,   nil,   245,   245,   248,   248,
-   248,   nil,   248,   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,
-   nil,   248,   248,   248,   248,   248,   248,   nil,   nil,   nil,
-   248,   248,   nil,   nil,   nil,   nil,   nil,   nil,   248,   nil,
-   nil,   248,   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,   nil,   nil,
-   249,   249,   249,   249,   249,   249,   nil,   nil,   nil,   249,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   249,   249,   249,   nil,   249,   249,   250,   250,   250,   nil,
-   250,   nil,   nil,   nil,   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,   250,   nil,   nil,   nil,   nil,   250,
-   250,   250,   250,   250,   250,   nil,   nil,   nil,   250,   250,
-   nil,   nil,   nil,   nil,   nil,   nil,   250,   nil,   nil,   250,
-   250,   250,   nil,   250,   250,   251,   251,   251,   nil,   251,
-   nil,   nil,   nil,   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,   251,   nil,   nil,   nil,   nil,   251,   251,
-   251,   251,   251,   251,   nil,   nil,   nil,   251,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,   251,   nil,   nil,   251,   251,
-   251,   nil,   251,   251,   252,   252,   252,   nil,   252,   nil,
-   nil,   nil,   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,   252,   nil,   nil,   nil,   nil,   252,   252,   252,
-   252,   252,   252,   nil,   nil,   nil,   252,   252,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   252,   252,   252,
-   nil,   252,   252,   253,   253,   253,   nil,   253,   nil,   nil,
-   nil,   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,   253,   nil,   nil,   nil,   nil,   253,   253,   253,   253,
-   253,   253,   nil,   nil,   nil,   253,   253,   nil,   nil,   nil,
-   nil,   nil,   nil,   253,   nil,   nil,   253,   253,   253,   nil,
-   253,   253,   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,   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,
-   254,   nil,   nil,   nil,   nil,   254,   254,   254,   254,   254,
-   254,   nil,   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,
-   nil,   nil,   254,   nil,   nil,   254,   254,   254,   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,   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,   255,
-   nil,   nil,   nil,   nil,   255,   255,   255,   255,   255,   255,
-   nil,   nil,   nil,   255,   255,   nil,   nil,   nil,   nil,   nil,
-   nil,   255,   nil,   nil,   255,   255,   255,   nil,   255,   255,
-   256,   256,   256,   nil,   256,   nil,   nil,   nil,   256,   256,
-   nil,   nil,   nil,   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,   256,   256,
-   256,   256,   256,   256,   nil,   256,   256,   256,   nil,   256,
-   256,   nil,   256,   256,   256,   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,   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,   nil,   nil,   nil,
-   256,   nil,   nil,   256,   256,   256,   nil,   256,   256,   257,
-   257,   257,   nil,   257,   nil,   nil,   nil,   257,   257,   nil,
-   nil,   nil,   257,   nil,   257,   257,   257,   257,   257,   257,
-   257,   nil,   nil,   nil,   nil,   nil,   257,   257,   257,   257,
-   257,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   257,   257,   257,   257,   257,
-   257,   257,   257,   nil,   257,   257,   257,   nil,   257,   257,
-   nil,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,   nil,   257,
-   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   257,   257,   257,   257,   257,   257,   nil,   nil,
-   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   257,   257,   257,   nil,   257,   257,   258,   258,
-   258,   nil,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,
-   nil,   258,   nil,   258,   258,   258,   258,   258,   258,   258,
-   nil,   nil,   nil,   nil,   nil,   258,   258,   258,   258,   258,
-   258,   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,
-   nil,   258,   nil,   nil,   258,   258,   258,   258,   258,   258,
-   258,   258,   nil,   258,   258,   258,   nil,   258,   258,   nil,
-   258,   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   258,   nil,   nil,   258,   nil,   nil,   258,   258,
-   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,
-   nil,   258,   258,   258,   258,   258,   258,   nil,   nil,   nil,
-   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   258,   258,   258,   nil,   258,   258,   259,   259,   259,
-   nil,   259,   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,
-   259,   nil,   259,   259,   259,   259,   259,   259,   259,   nil,
-   nil,   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,
-   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,
-   259,   nil,   nil,   259,   259,   259,   259,   259,   259,   259,
-   259,   nil,   259,   259,   259,   nil,   259,   259,   nil,   259,
-   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   259,   nil,   nil,   259,   nil,   nil,   259,   259,   nil,
-   nil,   259,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,
-   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,   259,
-   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   259,   259,   259,   nil,   259,   259,   260,   260,   260,   nil,
-   260,   nil,   nil,   nil,   260,   260,   nil,   nil,   nil,   260,
-   nil,   260,   260,   260,   260,   260,   260,   260,   nil,   nil,
-   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   260,
-   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,
-   nil,   nil,   260,   260,   260,   260,   260,   260,   260,   260,
-   nil,   260,   260,   260,   nil,   260,   260,   nil,   260,   260,
-   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   260,   nil,   nil,   260,   260,   nil,   nil,
-   260,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   260,
-   260,   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,
-   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,
-   260,   260,   nil,   260,   260,   261,   261,   261,   nil,   261,
-   nil,   nil,   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,   nil,
-   261,   261,   261,   nil,   261,   261,   nil,   261,   261,   261,
-   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,   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,   nil,   nil,   nil,   261,   nil,   nil,   261,   261,
-   261,   nil,   261,   261,   262,   262,   262,   nil,   262,   nil,
-   nil,   nil,   262,   262,   nil,   nil,   nil,   262,   nil,   262,
-   262,   262,   262,   262,   262,   262,   nil,   nil,   nil,   nil,
-   nil,   262,   262,   262,   262,   262,   262,   262,   nil,   nil,
-   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,
-   262,   262,   262,   262,   262,   262,   262,   262,   nil,   262,
-   262,   262,   nil,   262,   262,   nil,   262,   262,   262,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,
-   nil,   262,   nil,   nil,   262,   262,   nil,   nil,   262,   nil,
-   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,   262,   262,
-   262,   262,   262,   nil,   nil,   nil,   262,   262,   nil,   nil,
-   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,   262,
-   nil,   262,   262,   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,   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,   nil,   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,   nil,
-   nil,   nil,   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,   nil,   nil,   nil,
-   nil,   nil,   nil,   263,   nil,   nil,   263,   263,   263,   nil,
-   263,   263,   264,   264,   264,   nil,   264,   nil,   nil,   nil,
-   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,   nil,   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,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   264,   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,
-   264,   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,
-   264,   265,   265,   265,   nil,   265,   nil,   nil,   nil,   265,
-   265,   nil,   nil,   nil,   265,   nil,   265,   265,   265,   265,
-   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   265,   265,
-   265,   265,   265,   265,   265,   nil,   nil,   265,   nil,   nil,
-   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,
-   265,   265,   265,   265,   265,   nil,   265,   265,   265,   nil,
-   265,   265,   nil,   265,   265,   265,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   nil,
-   nil,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,
-   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,
-   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,   265,
-   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,   nil,   nil,
-   nil,   265,   nil,   nil,   265,   265,   265,   nil,   265,   265,
-   266,   266,   266,   nil,   266,   nil,   nil,   nil,   266,   266,
-   nil,   nil,   nil,   266,   nil,   266,   266,   266,   266,   266,
-   266,   266,   nil,   nil,   nil,   nil,   nil,   266,   266,   266,
-   266,   266,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,
-   nil,   nil,   nil,   266,   nil,   nil,   266,   266,   266,   266,
-   266,   266,   266,   266,   nil,   266,   266,   266,   nil,   266,
-   266,   nil,   266,   266,   266,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,
-   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
-   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,   nil,
-   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,
-   266,   nil,   nil,   266,   266,   266,   nil,   266,   266,   267,
-   267,   267,   nil,   267,   nil,   nil,   nil,   267,   267,   nil,
-   nil,   nil,   267,   nil,   267,   267,   267,   267,   267,   267,
-   267,   nil,   nil,   nil,   nil,   nil,   267,   267,   267,   267,
-   267,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,
-   nil,   nil,   267,   nil,   nil,   267,   267,   267,   267,   267,
-   267,   267,   267,   nil,   267,   267,   267,   nil,   267,   267,
-   nil,   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,   nil,   267,
-   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
-   nil,   nil,   267,   267,   267,   267,   267,   267,   nil,   nil,
-   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   267,   267,   267,   nil,   267,   267,   268,   268,
-   268,   nil,   268,   nil,   nil,   nil,   268,   268,   nil,   nil,
-   nil,   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,   268,   268,   268,   268,
-   268,   268,   nil,   268,   268,   268,   nil,   268,   268,   nil,
-   268,   268,   268,   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,   268,
-   nil,   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,
-   nil,   268,   268,   268,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,
-   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,
-   269,   nil,   nil,   269,   269,   269,   269,   269,   269,   269,
-   269,   nil,   269,   269,   269,   nil,   269,   269,   nil,   269,
-   269,   269,   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,   269,   nil,
-   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,
-   269,   269,   269,   nil,   269,   269,   274,   274,   274,   nil,
-   274,   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   274,
-   nil,   274,   274,   274,   274,   274,   274,   274,   nil,   nil,
-   nil,   nil,   nil,   274,   274,   274,   274,   274,   274,   274,
-   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,
-   nil,   nil,   274,   274,   274,   274,   274,   274,   274,   274,
-   nil,   274,   274,   274,   nil,   274,   274,   nil,   274,   274,
-   274,   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,   274,   274,   nil,   nil,
-   274,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,
-   274,   274,   274,   274,   274,   nil,   nil,   nil,   274,   274,
-   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,
-   274,   274,   nil,   274,   274,   282,   282,   282,   nil,   282,
-   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,   282,   nil,
-   282,   282,   282,   282,   282,   282,   282,   nil,   nil,   nil,
-   nil,   nil,   282,   282,   282,   282,   282,   282,   282,   nil,
-   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   282,   282,   282,   282,   282,   282,   282,   282,   282,
-   282,   282,   282,   nil,   282,   282,   nil,   282,   282,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   nil,   282,   nil,   nil,   282,   282,   nil,   nil,   282,
-   nil,   282,   nil,   282,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   282,   282,
-   282,   282,   282,   282,   nil,   nil,   nil,   282,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   282,   282,   282,
-   282,   nil,   282,   282,   283,   283,   283,   nil,   283,   nil,
-   nil,   nil,   283,   283,   nil,   nil,   nil,   283,   nil,   283,
-   283,   283,   283,   283,   283,   283,   nil,   nil,   nil,   nil,
-   nil,   283,   283,   283,   283,   283,   283,   283,   nil,   nil,
-   283,   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,
-   283,   283,   283,   283,   283,   283,   283,   283,   283,   283,
-   283,   283,   nil,   283,   283,   nil,   283,   283,   283,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,
-   nil,   283,   nil,   nil,   283,   283,   nil,   nil,   283,   nil,
-   283,   nil,   283,   nil,   283,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   283,   nil,   nil,   nil,   nil,   283,   283,   283,
-   283,   283,   283,   nil,   nil,   nil,   283,   283,   nil,   nil,
-   nil,   nil,   nil,   nil,   283,   nil,   283,   283,   283,   283,
-   nil,   283,   283,   292,   292,   292,   nil,   292,   nil,   nil,
-   nil,   292,   292,   nil,   nil,   nil,   292,   nil,   292,   292,
-   292,   292,   292,   292,   292,   nil,   nil,   nil,   nil,   nil,
-   292,   292,   292,   292,   292,   292,   292,   nil,   nil,   292,
-   nil,   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,   292,
-   292,   292,   292,   292,   292,   292,   292,   292,   292,   292,
-   292,   nil,   292,   292,   nil,   292,   292,   292,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,
-   292,   nil,   nil,   292,   292,   nil,   nil,   292,   nil,   292,
-   nil,   292,   nil,   292,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   292,   nil,   nil,   nil,   nil,   292,   292,   292,   292,
-   292,   292,   nil,   nil,   nil,   292,   292,   292,   nil,   nil,
-   nil,   nil,   nil,   292,   nil,   292,   292,   292,   292,   nil,
-   292,   292,   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,   nil,   299,
-   299,   299,   299,   299,   299,   299,   nil,   nil,   299,   nil,
-   nil,   nil,   nil,   nil,   nil,   299,   nil,   nil,   299,   299,
-   299,   299,   299,   299,   299,   299,   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   299,   nil,   nil,   299,   299,   299,   nil,   299,
-   299,   301,   301,   301,   nil,   301,   nil,   nil,   nil,   301,
-   301,   nil,   nil,   nil,   301,   nil,   301,   301,   301,   301,
-   301,   301,   301,   nil,   nil,   nil,   nil,   nil,   301,   301,
-   301,   301,   301,   301,   301,   nil,   nil,   301,   nil,   nil,
-   nil,   nil,   nil,   nil,   301,   nil,   nil,   301,   301,   301,
-   301,   301,   301,   301,   301,   nil,   301,   301,   301,   nil,
-   301,   301,   nil,   301,   301,   301,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,   301,   nil,
-   nil,   301,   301,   nil,   nil,   301,   nil,   nil,   nil,   nil,
-   nil,   301,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   301,
-   nil,   nil,   nil,   nil,   301,   301,   301,   301,   301,   301,
-   nil,   nil,   nil,   301,   301,   nil,   nil,   nil,   nil,   nil,
-   nil,   301,   nil,   nil,   301,   301,   301,   nil,   301,   301,
-   304,   304,   304,   nil,   304,   nil,   nil,   nil,   304,   304,
-   nil,   nil,   nil,   304,   nil,   304,   304,   304,   304,   304,
-   304,   304,   nil,   nil,   nil,   nil,   nil,   304,   304,   304,
-   304,   304,   304,   304,   nil,   nil,   304,   nil,   nil,   nil,
-   nil,   nil,   nil,   304,   nil,   nil,   304,   304,   304,   304,
-   304,   304,   304,   304,   nil,   304,   304,   304,   nil,   304,
-   304,   nil,   304,   304,   304,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,   nil,   nil,
-   304,   304,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
-   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,
-   nil,   nil,   nil,   304,   304,   304,   304,   304,   304,   nil,
-   nil,   nil,   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,
-   304,   nil,   nil,   304,   304,   304,   nil,   304,   304,   305,
-   305,   305,   nil,   305,   nil,   nil,   nil,   305,   305,   nil,
-   nil,   nil,   305,   nil,   305,   305,   305,   305,   305,   305,
-   305,   nil,   nil,   nil,   nil,   nil,   305,   305,   305,   305,
-   305,   305,   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,
-   nil,   nil,   305,   nil,   nil,   305,   305,   305,   305,   305,
-   305,   305,   305,   nil,   305,   305,   305,   nil,   305,   305,
-   nil,   305,   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   305,   nil,   nil,   305,   nil,   nil,   305,
-   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,   nil,   305,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
-   nil,   nil,   305,   305,   305,   305,   305,   305,   nil,   nil,
-   nil,   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,   305,
-   nil,   nil,   305,   305,   305,   nil,   305,   305,   311,   311,
-   311,   311,   311,   nil,   nil,   nil,   311,   311,   nil,   nil,
-   nil,   311,   nil,   311,   311,   311,   311,   311,   311,   311,
-   nil,   nil,   nil,   nil,   nil,   311,   311,   311,   311,   311,
-   311,   311,   nil,   nil,   311,   nil,   nil,   nil,   nil,   nil,
-   311,   311,   nil,   311,   311,   311,   311,   311,   311,   311,
-   311,   311,   nil,   311,   311,   311,   nil,   311,   311,   nil,
-   311,   311,   311,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   311,   nil,   nil,   311,   nil,   nil,   311,   311,
-   nil,   nil,   311,   nil,   311,   nil,   nil,   nil,   311,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,   nil,   nil,
-   nil,   311,   311,   311,   311,   311,   311,   nil,   nil,   nil,
-   311,   311,   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,
-   nil,   311,   311,   311,   nil,   311,   311,   319,   319,   319,
-   nil,   319,   nil,   nil,   nil,   319,   319,   nil,   nil,   nil,
-   319,   nil,   319,   319,   319,   319,   319,   319,   319,   nil,
-   nil,   nil,   nil,   nil,   319,   319,   319,   319,   319,   319,
-   319,   nil,   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,
-   319,   nil,   nil,   319,   319,   319,   319,   319,   319,   319,
-   319,   nil,   319,   319,   319,   nil,   319,   319,   nil,   nil,
-   nil,   319,   nil,   nil,   nil,   nil,   nil,  1052,   nil,  1052,
-  1052,  1052,  1052,  1052,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   319,   nil,  1052,   319,   nil,   nil,   319,   319,   nil,
-   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1052,   nil,   nil,   nil,   nil,
-   319,   319,   319,   319,   319,   319,  1052,  1052,   nil,   319,
-   319,   nil,   nil,   nil,   319,   nil,   nil,   319,   nil,   nil,
-   319,   319,   319,   nil,   319,   319,   336,   336,   336,   nil,
-   336,   nil,   nil,   nil,   336,   336,   nil,   nil,   nil,   336,
-  1052,   336,   336,   336,   336,   336,   336,   336,   nil,   nil,
-   nil,   nil,   nil,   336,   336,   336,   336,   336,   336,   336,
-   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,
-   nil,   nil,   336,   336,   336,   336,   336,   336,   336,   336,
-   nil,   336,   336,   336,   nil,   336,   336,   nil,   nil,   nil,
-   336,   nil,   nil,   nil,   nil,   nil,  1061,   nil,  1061,  1061,
-  1061,  1061,  1061,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   336,   nil,  1061,   336,   nil,   nil,   336,   336,   nil,   nil,
-   336,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1061,   nil,   nil,   nil,   nil,   336,
-   336,   336,   336,   336,   336,  1061,  1061,   nil,   336,   336,
-   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,   336,
-   336,   336,   nil,   336,   336,   343,   343,   343,   nil,   343,
-   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,   343,  1061,
-   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   nil,
-   nil,   nil,   343,   343,   343,   343,   343,   343,   343,   nil,
-   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,
-   nil,   343,   343,   343,   343,   343,   343,   343,   343,   nil,
-   343,   343,   343,   nil,   343,   343,   nil,   343,   343,   343,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,
-   nil,   nil,   343,   nil,   nil,   343,   343,   nil,   nil,   343,
-   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   343,   343,
-   343,   343,   343,   343,   nil,   nil,   nil,   343,   343,   nil,
-   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,   343,
-   343,   nil,   343,   343,   345,   345,   345,   nil,   345,   nil,
-   nil,   nil,   345,   345,   nil,   nil,   nil,   345,   nil,   345,
-   345,   345,   345,   345,   345,   345,   nil,   nil,   nil,   nil,
-   nil,   345,   345,   345,   345,   345,   345,   345,   nil,   nil,
-   345,   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,
-   345,   345,   345,   345,   345,   345,   345,   345,   nil,   345,
-   345,   345,   nil,   345,   345,   nil,   345,   345,   345,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,
-   nil,   345,   345,   nil,   345,   345,   nil,   nil,   345,   nil,
-   nil,   nil,   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   345,   nil,   nil,   nil,   nil,   345,   345,   345,
-   345,   345,   345,   nil,   nil,   nil,   345,   345,   nil,   nil,
-   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,   345,   345,
-   nil,   345,   345,   349,   349,   349,   nil,   349,   nil,   nil,
-   nil,   349,   349,   nil,   nil,   nil,   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,   349,   349,   349,   349,   349,   349,   349,   349,   349,
-   349,   nil,   349,   349,   nil,   349,   349,   349,   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,   349,   nil,   nil,   349,   nil,   349,
-   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,
-   nil,   nil,   nil,   349,   nil,   349,   349,   349,   349,   nil,
-   349,   349,   350,   350,   350,   nil,   350,   nil,   nil,   nil,
-   350,   350,   nil,   nil,   nil,   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,
-   350,   350,   350,   350,   350,   350,   350,   350,   350,   350,
-   nil,   350,   350,   nil,   350,   350,   350,   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,   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,   nil,
-   nil,   nil,   350,   nil,   350,   350,   350,   350,   nil,   350,
-   350,   355,   355,   355,   nil,   355,   nil,   nil,   nil,   355,
-   355,   nil,   nil,   nil,   355,   nil,   355,   355,   355,   355,
-   355,   355,   355,   nil,   nil,   nil,   nil,   nil,   355,   355,
-   355,   355,   355,   355,   355,   nil,   nil,   355,   nil,   nil,
-   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,   355,   355,
-   355,   355,   355,   355,   355,   nil,   355,   355,   355,   nil,
-   355,   355,   nil,   355,   355,   355,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,   nil,
-   nil,   355,   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,
-   nil,   355,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,
-   nil,   nil,   nil,   nil,   355,   355,   355,   355,   355,   355,
-   nil,   nil,   nil,   355,   355,   nil,   nil,   nil,   nil,   nil,
-   nil,   355,   nil,   nil,   355,   355,   355,   nil,   355,   355,
-   369,   369,   369,   nil,   369,   nil,   nil,   nil,   369,   369,
-   nil,   nil,   nil,   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,   369,   369,
-   369,   369,   369,   369,   nil,   369,   369,   369,   nil,   369,
-   369,   nil,   nil,   nil,   369,   nil,   nil,   nil,   nil,   nil,
-  1063,   nil,  1063,  1063,  1063,  1063,  1063,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   369,   nil,  1063,   369,   nil,   nil,
-   369,   369,   nil,   nil,   369,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1063,   nil,
-   nil,   nil,   nil,   369,   369,   369,   369,   369,   369,  1063,
-  1063,   nil,   369,   369,   nil,   nil,   nil,   nil,   nil,   nil,
-   369,   nil,   nil,   369,   369,   369,   nil,   369,   369,   371,
-   371,   371,   nil,   371,   nil,   nil,   nil,   371,   371,   nil,
-   nil,   nil,   371,  1063,   371,   371,   371,   371,   371,   371,
-   371,   nil,   nil,   nil,   nil,   nil,   371,   371,   371,   371,
-   371,   371,   371,   nil,   nil,   371,   nil,   nil,   nil,   nil,
-   nil,   nil,   371,   nil,   nil,   371,   371,   371,   371,   371,
-   371,   371,   371,   nil,   371,   371,   371,   nil,   371,   371,
-   nil,   nil,   nil,   371,   nil,   nil,   nil,   nil,   nil,  1065,
-   nil,  1065,  1065,  1065,  1065,  1065,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   371,   nil,  1065,   371,   nil,   nil,   371,
-   371,   nil,   nil,   371,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1065,   nil,   nil,
-   nil,   nil,   371,   371,   371,   371,   371,   371,  1065,  1065,
-   nil,   371,   371,   nil,   nil,   nil,   nil,   nil,   nil,   371,
-   nil,   nil,   371,   371,   371,   nil,   371,   371,   431,   431,
-   431,   nil,   431,   nil,   nil,   nil,   431,   431,   nil,   nil,
-   nil,   431,  1065,   431,   431,   431,   431,   431,   431,   431,
-   nil,   nil,   nil,   nil,   nil,   431,   431,   431,   431,   431,
-   431,   431,   nil,   nil,   431,   nil,   nil,   nil,   nil,   nil,
-   nil,   431,   nil,   nil,   431,   431,   431,   431,   431,   431,
-   431,   431,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   431,   nil,
-   nil,   431,   431,   431,   nil,   431,   431,   475,   475,   475,
-   nil,   475,   nil,   nil,   nil,   475,   475,   nil,   nil,   nil,
-   475,   nil,   475,   475,   475,   475,   475,   475,   475,   nil,
-   nil,   nil,   nil,   nil,   475,   475,   475,   475,   475,   475,
-   475,   nil,   nil,   475,   nil,   nil,   nil,   nil,   nil,   nil,
-   475,   nil,   nil,   475,   475,   475,   475,   475,   475,   475,
-   475,   475,   475,   475,   475,   nil,   475,   475,   nil,   475,
-   475,   475,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   475,   nil,   nil,   475,   nil,   nil,   475,   475,   nil,
-   nil,   475,   nil,   475,   nil,   475,   nil,   475,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   475,   nil,   nil,   nil,   nil,
-   475,   475,   475,   475,   475,   475,   nil,   nil,   nil,   475,
-   475,   nil,   nil,   nil,   nil,   nil,   nil,   475,   nil,   475,
-   475,   475,   475,   nil,   475,   475,   477,   477,   477,   nil,
-   477,   nil,   nil,   nil,   477,   477,   nil,   nil,   nil,   477,
-   nil,   477,   477,   477,   477,   477,   477,   477,   nil,   nil,
-   nil,   nil,   nil,   477,   477,   477,   477,   477,   477,   477,
-   nil,   nil,   477,   nil,   nil,   nil,   nil,   nil,   nil,   477,
-   nil,   nil,   477,   477,   477,   477,   477,   477,   477,   477,
-   nil,   477,   477,   477,   nil,   477,   477,   nil,   477,   477,
-   477,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   477,   nil,   nil,   477,   nil,   nil,   477,   477,   nil,   nil,
-   477,   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   477,   nil,   nil,   nil,   nil,   477,
-   477,   477,   477,   477,   477,   nil,   nil,   nil,   477,   477,
-   nil,   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   477,
-   477,   477,   nil,   477,   477,   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,   nil,   478,   478,   478,   478,   478,   478,   478,   nil,
-   nil,   478,   nil,   nil,   nil,   nil,   nil,   nil,   478,   nil,
-   nil,   478,   478,   478,   478,   478,   478,   478,   478,   nil,
-   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,   nil,   nil,   478,   478,   nil,   nil,   478,
-   nil,   nil,   nil,   nil,   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,   478,   478,
-   478,   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,
-   nil,   479,   479,   479,   479,   479,   479,   479,   nil,   nil,
-   479,   nil,   nil,   nil,   nil,   nil,   nil,   479,   nil,   nil,
-   479,   479,   479,   479,   479,   479,   479,   479,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   479,   nil,   nil,   479,   479,   479,
-   nil,   479,   479,   517,   517,   517,   nil,   517,   nil,   nil,
-   nil,   517,   517,   nil,   nil,   nil,   517,   nil,   517,   517,
-   517,   517,   517,   517,   517,   nil,   nil,   nil,   nil,   nil,
-   517,   517,   517,   517,   517,   517,   517,   nil,   nil,   517,
-   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,   517,
-   517,   517,   517,   517,   517,   517,   517,   517,   517,   517,
-   517,   nil,   517,   517,   nil,   517,   517,   517,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,
-   517,   nil,   nil,   517,   517,   nil,   nil,   517,   nil,   517,
-   nil,   517,   nil,   517,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   517,   nil,   nil,   nil,   nil,   517,   517,   517,   517,
-   517,   517,   nil,   nil,   nil,   517,   517,   nil,   nil,   nil,
-   nil,   nil,   nil,   517,   nil,   517,   517,   517,   517,   nil,
-   517,   517,   520,   520,   520,   nil,   520,   nil,   nil,   nil,
-   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,   520,   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,
-   520,   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,   nil,
-   nil,   nil,   520,   nil,   520,   520,   520,   520,   nil,   520,
-   520,   522,   522,   522,   nil,   522,   nil,   nil,   nil,   522,
-   522,   nil,   nil,   nil,   522,   nil,   522,   522,   522,   522,
-   522,   522,   522,   nil,   nil,   nil,   nil,   nil,   522,   522,
-   522,   522,   522,   522,   522,   nil,   nil,   522,   nil,   nil,
-   nil,   nil,   nil,   nil,   522,   nil,   nil,   522,   522,   522,
-   522,   522,   522,   522,   522,   nil,   522,   522,   522,   nil,
-   522,   522,   nil,   522,   522,   522,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   522,   nil,   nil,   522,   nil,
-   nil,   522,   522,   nil,   nil,   522,   nil,   nil,   nil,   nil,
-   nil,   522,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   522,
-   nil,   nil,   nil,   nil,   522,   522,   522,   522,   522,   522,
-   nil,   nil,   nil,   522,   522,   nil,   nil,   nil,   nil,   nil,
-   nil,   522,   nil,   nil,   522,   522,   522,   nil,   522,   522,
-   528,   528,   528,   528,   528,   nil,   nil,   nil,   528,   528,
-   nil,   nil,   nil,   528,   nil,   528,   528,   528,   528,   528,
-   528,   528,   nil,   nil,   nil,   nil,   nil,   528,   528,   528,
-   528,   528,   528,   528,   nil,   nil,   528,   nil,   nil,   nil,
-   nil,   nil,   528,   528,   528,   528,   528,   528,   528,   528,
-   528,   528,   528,   528,   nil,   528,   528,   528,   nil,   528,
-   528,   nil,   528,   528,   528,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   528,   nil,   nil,   528,   nil,   nil,
-   528,   528,   nil,   nil,   528,   nil,   528,   nil,   nil,   nil,
-   528,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,
-   nil,   nil,   nil,   528,   528,   528,   528,   528,   528,   nil,
-   nil,   nil,   528,   528,   nil,   nil,   nil,   nil,   nil,   528,
-   528,   nil,   nil,   528,   528,   528,   nil,   528,   528,   536,
-   536,   536,   nil,   536,   nil,   nil,   nil,   536,   536,   nil,
-   nil,   nil,   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,   536,   536,   536,
-   536,   536,   536,   nil,   536,   536,   536,   nil,   536,   536,
-   nil,   nil,   nil,   536,   nil,   nil,   nil,   nil,   nil,  1087,
-   nil,  1087,  1087,  1087,  1087,  1087,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   536,   nil,  1087,   536,   nil,   nil,   536,
-   536,   nil,   nil,   536,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1087,   nil,   nil,
-   nil,   nil,   536,   536,   536,   536,   536,   536,  1087,  1087,
-   nil,   536,   536,   nil,   nil,   nil,   nil,   nil,   nil,   536,
-   nil,   nil,   536,   536,   536,   nil,   536,   536,   538,   538,
-   538,   nil,   538,   nil,   nil,   nil,   538,   538,   nil,   nil,
-   nil,   538,  1087,   538,   538,   538,   538,   538,   538,   538,
-   nil,   nil,   nil,   nil,   nil,   538,   538,   538,   538,   538,
-   538,   538,   nil,   nil,   538,   nil,   nil,   nil,   nil,   nil,
-   nil,   538,   nil,   nil,   538,   538,   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,   538,   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,   nil,   nil,   nil,   nil,   nil,   nil,   538,   nil,
-   538,   538,   538,   538,   nil,   538,   538,   544,   544,   544,
-   nil,   544,   nil,   nil,   nil,   544,   544,   nil,   nil,   nil,
-   544,   nil,   544,   544,   544,   544,   544,   544,   544,   nil,
-   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,   544,
-   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
-   544,   nil,   nil,   544,   544,   544,   544,   544,   544,   544,
-   544,   nil,   544,   544,   544,   nil,   544,   544,   nil,   nil,
-   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   544,   nil,   nil,   544,   nil,   nil,   544,   544,   nil,
-   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   544,   544,   544,   544,   544,   544,   nil,   nil,   nil,   544,
-   544,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,
-   544,   544,   544,   nil,   544,   544,   547,   547,   547,   nil,
-   547,   nil,   nil,   nil,   547,   547,   nil,   nil,   nil,   547,
-   nil,   547,   547,   547,   547,   547,   547,   547,   nil,   nil,
-   nil,   nil,   nil,   547,   547,   547,   547,   547,   547,   547,
-   nil,   nil,   547,   nil,   nil,   nil,   nil,   nil,   nil,   547,
-   nil,   nil,   547,   547,   547,   547,   547,   547,   547,   547,
-   nil,   547,   547,   547,   nil,   547,   547,   nil,   547,   547,
-   547,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   547,   nil,   nil,   547,   nil,   nil,   547,   547,   nil,   nil,
-   547,   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   547,   nil,   nil,   nil,   nil,   547,
-   547,   547,   547,   547,   547,   nil,   nil,   nil,   547,   547,
-   nil,   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   547,
-   547,   547,   nil,   547,   547,   548,   548,   548,   nil,   548,
-   nil,   nil,   nil,   548,   548,   nil,   nil,   nil,   548,   nil,
-   548,   548,   548,   548,   548,   548,   548,   nil,   nil,   nil,
-   nil,   nil,   548,   548,   548,   548,   548,   548,   548,   nil,
-   nil,   548,   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,
-   nil,   548,   548,   548,   548,   548,   548,   548,   548,   nil,
-   548,   548,   548,   nil,   548,   548,   nil,   548,   548,   548,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   548,
-   nil,   nil,   548,   nil,   nil,   548,   548,   nil,   nil,   548,
-   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   548,   nil,   nil,   nil,   nil,   548,   548,
-   548,   548,   548,   548,   nil,   nil,   nil,   548,   548,   nil,
-   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   548,   548,
-   548,   nil,   548,   548,   553,   553,   553,   nil,   553,   nil,
-   nil,   nil,   553,   553,   nil,   nil,   nil,   553,   nil,   553,
-   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,   nil,
-   nil,   553,   553,   553,   553,   553,   553,   553,   nil,   nil,
-   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,
-   553,   553,   553,   553,   553,   553,   553,   553,   nil,   553,
-   553,   553,   nil,   553,   553,   nil,   553,   553,   553,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,
-   nil,   553,   nil,   nil,   553,   553,   nil,   nil,   553,   nil,
-   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   553,   nil,   nil,   nil,   nil,   553,   553,   553,
-   553,   553,   553,   nil,   nil,   nil,   553,   553,   nil,   nil,
-   nil,   nil,   nil,   nil,   553,   nil,   nil,   553,   553,   553,
-   nil,   553,   553,   577,   577,   577,   nil,   577,   nil,   nil,
-   nil,   577,   577,   nil,   nil,   nil,   577,   nil,   577,   577,
-   577,   577,   577,   577,   577,   nil,   nil,   nil,   nil,   nil,
-   577,   577,   577,   577,   577,   577,   577,   nil,   nil,   577,
-   nil,   nil,   nil,   nil,   nil,   nil,   577,   nil,   nil,   577,
-   577,   577,   577,   577,   577,   577,   577,   577,   577,   577,
-   577,   nil,   577,   577,   nil,   577,   577,   577,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   577,   nil,   nil,
-   577,   nil,   nil,   577,   577,   nil,   nil,   577,   nil,   577,
-   nil,   577,   nil,   577,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   577,   nil,   nil,   nil,   nil,   577,   577,   577,   577,
-   577,   577,   nil,   nil,   nil,   577,   577,   nil,   nil,   nil,
-   nil,   nil,   nil,   577,   nil,   577,   577,   577,   577,   nil,
-   577,   577,   589,   589,   589,   nil,   589,   nil,   nil,   nil,
-   589,   589,   nil,   nil,   nil,   589,   nil,   589,   589,   589,
-   589,   589,   589,   589,   nil,   nil,   nil,   nil,   nil,   589,
-   589,   589,   589,   589,   589,   589,   nil,   nil,   589,   nil,
-   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   589,
-   589,   589,   589,   589,   589,   589,   nil,   589,   589,   589,
-   nil,   589,   589,   nil,   589,   589,   589,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,
-   nil,   nil,   589,   589,   nil,   nil,   589,   nil,   nil,   nil,
-   nil,   nil,   589,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   589,   nil,   nil,   nil,   nil,   589,   589,   589,   589,   589,
-   589,   nil,   nil,   nil,   589,   589,   nil,   nil,   nil,   nil,
-   nil,   nil,   589,   nil,   nil,   589,   589,   589,   nil,   589,
-   589,   595,   595,   595,   nil,   595,   nil,   nil,   nil,   595,
-   595,   nil,   nil,   nil,   595,   nil,   595,   595,   595,   595,
-   595,   595,   595,   nil,   nil,   nil,   nil,   nil,   595,   595,
-   595,   595,   595,   595,   595,   nil,   nil,   595,   nil,   nil,
-   nil,   nil,   nil,   nil,   595,   nil,   nil,   595,   595,   595,
-   595,   595,   595,   595,   595,   nil,   595,   595,   595,   nil,
-   595,   595,   nil,   595,   595,   595,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,   595,   nil,
-   nil,   595,   595,   nil,   nil,   595,   nil,   nil,   nil,   nil,
-   nil,   595,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   595,
-   nil,   nil,   nil,   nil,   595,   595,   595,   595,   595,   595,
-   nil,   nil,   nil,   595,   595,   nil,   nil,   nil,   nil,   nil,
-   nil,   595,   nil,   nil,   595,   595,   595,   nil,   595,   595,
-   617,   617,   617,   nil,   617,   nil,   nil,   nil,   617,   617,
-   nil,   nil,   nil,   617,   nil,   617,   617,   617,   617,   617,
-   617,   617,   nil,   nil,   nil,   nil,   nil,   617,   617,   617,
-   617,   617,   617,   617,   nil,   nil,   617,   nil,   nil,   nil,
-   nil,   nil,   nil,   617,   nil,   nil,   617,   617,   617,   617,
-   617,   617,   617,   617,   nil,   617,   617,   617,   nil,   617,
-   617,   nil,   617,   617,   617,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   617,   nil,   nil,   617,   nil,   nil,
-   617,   617,   nil,   nil,   617,   nil,   nil,   nil,   nil,   nil,
-   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   617,   nil,
-   nil,   nil,   nil,   617,   617,   617,   617,   617,   617,   nil,
-   nil,   nil,   617,   617,   nil,   nil,   nil,   nil,   nil,   nil,
-   617,   nil,   nil,   617,   617,   617,   nil,   617,   617,   657,
-   657,   657,   nil,   657,   nil,   nil,   nil,   657,   657,   nil,
-   nil,   nil,   657,   nil,   657,   657,   657,   657,   657,   657,
-   657,   nil,   nil,   nil,   nil,   nil,   657,   657,   657,   657,
-   657,   657,   657,   nil,   nil,   657,   nil,   nil,   nil,   nil,
-   nil,   nil,   657,   nil,   nil,   657,   657,   657,   657,   657,
-   657,   657,   657,   nil,   657,   657,   657,   nil,   657,   657,
-   nil,   657,   657,   657,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   657,   nil,   nil,   657,   nil,   nil,   657,
-   657,   nil,   nil,   657,   nil,   657,   nil,   nil,   nil,   657,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   657,   nil,   nil,
-   nil,   nil,   657,   657,   657,   657,   657,   657,   nil,   nil,
-   nil,   657,   657,   nil,   nil,   nil,   nil,   nil,   nil,   657,
-   nil,   nil,   657,   657,   657,   nil,   657,   657,   658,   658,
-   658,   nil,   658,   nil,   nil,   nil,   658,   658,   nil,   nil,
-   nil,   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,   658,   658,   658,   658,
-   658,   658,   nil,   658,   658,   658,   nil,   658,   658,   nil,
-   658,   658,   658,   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,   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,   658,   658,   nil,   658,   658,   659,   659,   659,
-   nil,   659,   nil,   nil,   nil,   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,   659,   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,   659,   nil,   659,   nil,   659,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   659,   nil,   nil,   nil,   nil,
-   659,   659,   659,   659,   659,   659,   nil,   nil,   nil,   659,
-   659,   nil,   nil,   nil,   nil,   nil,   nil,   659,   nil,   659,
-   659,   659,   659,   nil,   659,   659,   662,   662,   662,   662,
-   662,   nil,   nil,   nil,   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,   662,   662,
-   nil,   662,   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,   662,   nil,   nil,   nil,   662,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   662,   nil,   nil,   nil,   nil,   662,
-   662,   662,   662,   662,   662,   nil,   nil,   nil,   662,   662,
-   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,   nil,   662,
-   662,   662,   nil,   662,   662,   663,   663,   663,   nil,   663,
-   nil,   nil,   nil,   663,   663,   nil,   nil,   nil,   663,   nil,
-   663,   663,   663,   663,   663,   663,   663,   nil,   nil,   nil,
-   nil,   nil,   663,   663,   663,   663,   663,   663,   663,   nil,
-   nil,   663,   nil,   nil,   nil,   nil,   nil,   nil,   663,   nil,
-   nil,   663,   663,   663,   663,   663,   663,   663,   663,   nil,
-   663,   663,   663,   nil,   663,   663,   nil,   663,   663,   663,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   663,
-   nil,   nil,   663,   nil,   nil,   663,   663,   nil,   nil,   663,
-   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   663,   nil,   nil,   nil,   nil,   663,   663,
-   663,   663,   663,   663,   nil,   nil,   nil,   663,   663,   nil,
-   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,   663,   663,
-   663,   nil,   663,   663,   666,   666,   666,   nil,   666,   nil,
-   nil,   nil,   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,   666,   666,
-   666,   666,   nil,   666,   666,   nil,   666,   666,   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,
-   666,   nil,   666,   nil,   666,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   666,   nil,   nil,   nil,   nil,   666,   666,   666,
-   666,   666,   666,   nil,   nil,   nil,   666,   666,   nil,   nil,
-   nil,   nil,   nil,   nil,   666,   nil,   666,   666,   666,   666,
-   nil,   666,   666,   667,   667,   667,   nil,   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,   nil,   667,   nil,   nil,   667,
-   667,   667,   667,   667,   667,   667,   667,   667,   667,   667,
-   667,   nil,   667,   667,   nil,   667,   667,   667,   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,   667,   nil,   nil,   667,   nil,   nil,
-   nil,   667,   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,
-   nil,   nil,   nil,   667,   nil,   667,   667,   667,   667,   nil,
-   667,   667,   668,   668,   668,   nil,   668,   nil,   nil,   nil,
-   668,   668,   nil,   nil,   nil,   668,   nil,   668,   668,   668,
-   668,   668,   668,   668,   nil,   nil,   nil,   nil,   nil,   668,
-   668,   668,   668,   668,   668,   668,   nil,   nil,   668,   nil,
-   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   668,   668,
-   668,   668,   668,   668,   668,   668,   nil,   668,   668,   668,
-   nil,   668,   668,   nil,   668,   668,   668,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   668,
-   nil,   nil,   668,   668,   nil,   nil,   668,   nil,   nil,   nil,
-   nil,   nil,   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   668,   nil,   nil,   nil,   nil,   668,   668,   668,   668,   668,
-   668,   nil,   nil,   nil,   668,   668,   nil,   nil,   nil,   nil,
-   nil,   nil,   668,   nil,   nil,   668,   668,   668,   nil,   668,
-   668,   669,   669,   669,   nil,   669,   nil,   nil,   nil,   669,
-   669,   nil,   nil,   nil,   669,   nil,   669,   669,   669,   669,
-   669,   669,   669,   nil,   nil,   nil,   nil,   nil,   669,   669,
-   669,   669,   669,   669,   669,   nil,   nil,   669,   nil,   nil,
-   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,   669,   669,
-   669,   669,   669,   669,   669,   nil,   669,   669,   669,   nil,
-   669,   669,   nil,   669,   669,   669,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,   nil,
-   nil,   669,   669,   nil,   nil,   669,   nil,   nil,   nil,   nil,
-   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   669,
-   nil,   nil,   nil,   nil,   669,   669,   669,   669,   669,   669,
-   nil,   nil,   nil,   669,   669,   nil,   nil,   nil,   nil,   nil,
-   nil,   669,   nil,   nil,   669,   669,   669,   nil,   669,   669,
-   674,   674,   674,   nil,   674,   nil,   nil,   nil,   674,   674,
-   nil,   nil,   nil,   674,   nil,   674,   674,   674,   674,   674,
-   674,   674,   nil,   nil,   nil,   nil,   nil,   674,   674,   674,
-   674,   674,   674,   674,   nil,   nil,   674,   nil,   nil,   nil,
-   nil,   nil,   nil,   674,   nil,   nil,   674,   674,   674,   674,
-   674,   674,   674,   674,   nil,   674,   674,   674,   nil,   674,
-   674,   nil,   674,   674,   674,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,   nil,   nil,
-   674,   674,   nil,   nil,   674,   nil,   nil,   nil,   nil,   nil,
-   674,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,
-   nil,   nil,   nil,   674,   674,   674,   674,   674,   674,   nil,
-   nil,   nil,   674,   674,   nil,   nil,   nil,   nil,   nil,   nil,
-   674,   nil,   nil,   674,   674,   674,   nil,   674,   674,   675,
-   675,   675,   nil,   675,   nil,   nil,   nil,   675,   675,   nil,
-   nil,   nil,   675,   nil,   675,   675,   675,   675,   675,   675,
-   675,   nil,   nil,   nil,   nil,   nil,   675,   675,   675,   675,
-   675,   675,   675,   nil,   nil,   675,   nil,   nil,   nil,   nil,
-   nil,   nil,   675,   nil,   nil,   675,   675,   675,   675,   675,
-   675,   675,   675,   nil,   675,   675,   675,   nil,   675,   675,
-   nil,   675,   675,   675,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   675,   nil,   nil,   675,   nil,   nil,   675,
-   675,   nil,   nil,   675,   nil,   nil,   nil,   nil,   nil,   675,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,
-   nil,   nil,   675,   675,   675,   675,   675,   675,   nil,   nil,
-   nil,   675,   675,   nil,   nil,   nil,   nil,   nil,   nil,   675,
-   nil,   nil,   675,   675,   675,   nil,   675,   675,   699,   699,
-   699,   nil,   699,   nil,   nil,   nil,   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,   699,   nil,   nil,   nil,
-   nil,   699,   699,   699,   699,   699,   699,   nil,   nil,   nil,
-   699,   699,   nil,   nil,   nil,   nil,   nil,   nil,   699,   nil,
-   nil,   699,   699,   699,   nil,   699,   699,   702,   702,   702,
-   nil,   702,   nil,   nil,   nil,   702,   702,   nil,   nil,   nil,
-   702,   nil,   702,   702,   702,   702,   702,   702,   702,   nil,
-   nil,   nil,   nil,   nil,   702,   702,   702,   702,   702,   702,
-   702,   nil,   nil,   702,   nil,   nil,   nil,   nil,   nil,   nil,
-   702,   nil,   nil,   702,   702,   702,   702,   702,   702,   702,
-   702,   nil,   702,   702,   702,   nil,   702,   702,   nil,   702,
-   702,   702,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   702,   nil,   nil,   702,   nil,   nil,   702,   702,   nil,
-   nil,   702,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,   nil,   nil,
-   702,   702,   702,   702,   702,   702,   nil,   nil,   nil,   702,
-   702,   nil,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,
-   702,   702,   702,   nil,   702,   702,   706,   706,   706,   nil,
-   706,   nil,   nil,   nil,   706,   706,   nil,   nil,   nil,   706,
-   nil,   706,   706,   706,   706,   706,   706,   706,   nil,   nil,
-   nil,   nil,   nil,   706,   706,   706,   706,   706,   706,   706,
-   nil,   nil,   706,   nil,   nil,   nil,   nil,   nil,   nil,   706,
-   nil,   nil,   706,   706,   706,   706,   706,   706,   706,   706,
-   nil,   706,   706,   706,   nil,   706,   706,   nil,   nil,   nil,
-   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,
-   706,   706,   706,   706,   706,   nil,   nil,   nil,   706,   706,
-   nil,   nil,   nil,   nil,   nil,   nil,   706,   nil,   nil,   706,
-   706,   706,   nil,   706,   706,   717,   717,   717,   nil,   717,
-   nil,   nil,   nil,   717,   717,   nil,   nil,   nil,   717,   nil,
-   717,   717,   717,   717,   717,   717,   717,   nil,   nil,   nil,
-   nil,   nil,   717,   717,   717,   717,   717,   717,   717,   nil,
-   nil,   717,   nil,   nil,   nil,   nil,   nil,   nil,   717,   nil,
-   nil,   717,   717,   717,   717,   717,   717,   717,   717,   nil,
-   717,   717,   717,   nil,   717,   717,   nil,   nil,   nil,   717,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   717,
-   nil,   nil,   717,   nil,   nil,   717,   717,   nil,   nil,   717,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   717,   717,
-   717,   717,   717,   717,   nil,   nil,   nil,   717,   717,   nil,
-   nil,   nil,   nil,   nil,   nil,   717,   nil,   nil,   717,   717,
-   717,   nil,   717,   717,   723,   723,   723,   nil,   723,   nil,
-   nil,   nil,   723,   723,   nil,   nil,   nil,   723,   nil,   723,
-   723,   723,   723,   723,   723,   723,   nil,   nil,   nil,   nil,
-   nil,   723,   723,   723,   723,   723,   723,   723,   nil,   nil,
-   723,   nil,   nil,   nil,   nil,   nil,   nil,   723,   nil,   nil,
-   723,   723,   723,   723,   723,   723,   723,   723,   nil,   723,
-   723,   723,   nil,   723,   723,   nil,   723,   723,   723,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   723,   nil,
-   nil,   723,   nil,   nil,   723,   723,   nil,   nil,   723,   nil,
-   723,   nil,   nil,   nil,   723,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   723,   nil,   nil,   nil,   nil,   723,   723,   723,
-   723,   723,   723,   nil,   nil,   nil,   723,   723,   nil,   nil,
-   nil,   nil,   nil,   nil,   723,   nil,   nil,   723,   723,   723,
-   nil,   723,   723,   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,   nil,
-   728,   728,   728,   728,   728,   728,   728,   nil,   nil,   728,
-   nil,   nil,   nil,   nil,   nil,   nil,   728,   nil,   nil,   728,
-   728,   728,   728,   728,   728,   728,   728,   728,   728,   728,
-   728,   nil,   728,   728,   nil,   728,   728,   728,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   728,   nil,   nil,
-   728,   nil,   nil,   728,   728,   nil,   nil,   728,   nil,   728,
-   nil,   nil,   nil,   728,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   728,   nil,   nil,   nil,   nil,   728,   728,   728,   728,
-   728,   728,   nil,   nil,   nil,   728,   728,   nil,   nil,   nil,
-   nil,   nil,   nil,   728,   nil,   728,   728,   728,   728,   nil,
-   728,   728,   731,   731,   731,   nil,   731,   nil,   nil,   nil,
-   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,   731,   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,
-   731,   nil,   nil,   nil,   nil,   731,   731,   731,   731,   731,
-   731,   nil,   nil,   nil,   731,   731,   nil,   nil,   nil,   nil,
-   nil,   nil,   731,   nil,   731,   731,   731,   731,   nil,   731,
-   731,   745,   745,   745,   nil,   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,   nil,   745,   nil,   nil,   745,   745,   745,
-   745,   745,   745,   745,   745,   nil,   745,   745,   745,   nil,
-   745,   745,   nil,   745,   745,   745,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   745,   nil,   nil,   745,   nil,
-   nil,   745,   745,   nil,   nil,   745,   nil,   745,   nil,   nil,
-   nil,   745,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   745,
-   nil,   nil,   nil,   nil,   745,   745,   745,   745,   745,   745,
-   nil,   nil,   nil,   745,   745,   nil,   nil,   nil,   nil,   nil,
-   nil,   745,   nil,   nil,   745,   745,   745,   nil,   745,   745,
-   757,   757,   757,   nil,   757,   nil,   nil,   nil,   757,   757,
-   nil,   nil,   nil,   757,   nil,   757,   757,   757,   757,   757,
-   757,   757,   nil,   nil,   nil,   nil,   nil,   757,   757,   757,
-   757,   757,   757,   757,   nil,   nil,   757,   nil,   nil,   nil,
-   nil,   nil,   nil,   757,   nil,   nil,   757,   757,   757,   757,
-   757,   757,   757,   757,   757,   757,   757,   757,   nil,   757,
-   757,   nil,   757,   757,   757,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   757,   nil,   nil,   757,   nil,   nil,
-   757,   757,   nil,   nil,   757,   nil,   757,   nil,   757,   nil,
-   757,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   757,   nil,
-   nil,   nil,   nil,   757,   757,   757,   757,   757,   757,   nil,
-   nil,   nil,   757,   757,   nil,   nil,   nil,   nil,   nil,   nil,
-   757,   nil,   757,   757,   757,   757,   nil,   757,   757,   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,   nil,   780,   780,   780,   780,
-   780,   780,   780,   nil,   nil,   780,   nil,   nil,   nil,   nil,
-   nil,   nil,   780,   nil,   nil,   780,   780,   780,   780,   780,
-   780,   780,   780,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   780,
-   nil,   nil,   780,   780,   780,   nil,   780,   780,   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,   nil,   802,   802,   802,   802,   802,
-   802,   802,   nil,   nil,   802,   nil,   nil,   nil,   nil,   nil,
-   nil,   802,   nil,   nil,   802,   802,   802,   802,   802,   802,
-   802,   802,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   802,   nil,
-   nil,   802,   802,   802,   nil,   802,   802,   810,   810,   810,
-   nil,   810,   nil,   nil,   nil,   810,   810,   nil,   nil,   nil,
-   810,   nil,   810,   810,   810,   810,   810,   810,   810,   nil,
-   nil,   nil,   nil,   nil,   810,   810,   810,   810,   810,   810,
-   810,   nil,   nil,   810,   nil,   nil,   nil,   nil,   nil,   nil,
-   810,   nil,   nil,   810,   810,   810,   810,   810,   810,   810,
-   810,   nil,   810,   810,   810,   nil,   810,   810,   nil,   810,
-   810,   810,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   810,   nil,   nil,   810,   nil,   nil,   810,   810,   nil,
-   nil,   810,   nil,   nil,   nil,   nil,   nil,   810,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   810,   nil,   nil,   nil,   nil,
-   810,   810,   810,   810,   810,   810,   nil,   nil,   nil,   810,
-   810,   nil,   nil,   nil,   nil,   nil,   nil,   810,   nil,   nil,
-   810,   810,   810,   nil,   810,   810,   823,   823,   823,   nil,
-   823,   nil,   nil,   nil,   823,   823,   nil,   nil,   nil,   823,
-   nil,   823,   823,   823,   823,   823,   823,   823,   nil,   nil,
-   nil,   nil,   nil,   823,   823,   823,   823,   823,   823,   823,
-   nil,   nil,   823,   nil,   nil,   nil,   nil,   nil,   nil,   823,
-   nil,   nil,   823,   823,   823,   823,   823,   823,   823,   823,
-   nil,   823,   823,   823,   nil,   823,   823,   nil,   823,   823,
-   823,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   823,   nil,   nil,   823,   nil,   nil,   823,   823,   nil,   nil,
-   823,   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   823,   nil,   nil,   nil,   nil,   823,
-   823,   823,   823,   823,   823,   nil,   nil,   nil,   823,   823,
-   nil,   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,   823,
-   823,   823,   nil,   823,   823,   824,   824,   824,   nil,   824,
-   nil,   nil,   nil,   824,   824,   nil,   nil,   nil,   824,   nil,
-   824,   824,   824,   824,   824,   824,   824,   nil,   nil,   nil,
-   nil,   nil,   824,   824,   824,   824,   824,   824,   824,   nil,
-   nil,   824,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,
-   nil,   824,   824,   824,   824,   824,   824,   824,   824,   nil,
-   824,   824,   824,   nil,   824,   824,   nil,   824,   824,   824,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   824,
-   nil,   nil,   824,   nil,   nil,   824,   824,   nil,   nil,   824,
-   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   824,   nil,   nil,   nil,   nil,   824,   824,
-   824,   824,   824,   824,   nil,   nil,   nil,   824,   824,   nil,
-   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,   824,   824,
-   824,   nil,   824,   824,   825,   825,   825,   nil,   825,   nil,
-   nil,   nil,   825,   825,   nil,   nil,   nil,   825,   nil,   825,
-   825,   825,   825,   825,   825,   825,   nil,   nil,   nil,   nil,
-   nil,   825,   825,   825,   825,   825,   825,   825,   nil,   nil,
-   825,   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,
-   825,   825,   825,   825,   825,   825,   825,   825,   nil,   825,
-   825,   825,   nil,   825,   825,   nil,   825,   825,   825,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,
-   nil,   825,   nil,   nil,   825,   825,   nil,   nil,   825,   nil,
-   nil,   nil,   nil,   nil,   825,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   825,   nil,   nil,   nil,   nil,   825,   825,   825,
-   825,   825,   825,   nil,   nil,   nil,   825,   825,   nil,   nil,
-   nil,   nil,   nil,   nil,   825,   nil,   nil,   825,   825,   825,
-   nil,   825,   825,   826,   826,   826,   nil,   826,   nil,   nil,
-   nil,   826,   826,   nil,   nil,   nil,   826,   nil,   826,   826,
-   826,   826,   826,   826,   826,   nil,   nil,   nil,   nil,   nil,
-   826,   826,   826,   826,   826,   826,   826,   nil,   nil,   826,
-   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,   826,
-   826,   826,   826,   826,   826,   826,   826,   nil,   826,   826,
-   826,   nil,   826,   826,   nil,   826,   826,   826,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,
-   826,   nil,   nil,   826,   826,   nil,   nil,   826,   nil,   nil,
-   nil,   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   826,   nil,   nil,   nil,   nil,   826,   826,   826,   826,
-   826,   826,   nil,   nil,   nil,   826,   826,   nil,   nil,   nil,
-   nil,   nil,   nil,   826,   nil,   nil,   826,   826,   826,   nil,
-   826,   826,   828,   828,   828,   nil,   828,   nil,   nil,   nil,
-   828,   828,   nil,   nil,   nil,   828,   nil,   828,   828,   828,
-   828,   828,   828,   828,   nil,   nil,   nil,   nil,   nil,   828,
-   828,   828,   828,   828,   828,   828,   nil,   nil,   828,   nil,
-   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,   828,
-   828,   828,   828,   828,   828,   828,   nil,   828,   828,   828,
-   nil,   828,   828,   nil,   828,   828,   828,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,
-   nil,   nil,   828,   828,   nil,   nil,   828,   nil,   nil,   nil,
-   nil,   nil,   828,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   828,   nil,   nil,   nil,   nil,   828,   828,   828,   828,   828,
-   828,   nil,   nil,   nil,   828,   828,   nil,   nil,   nil,   nil,
-   nil,   nil,   828,   nil,   nil,   828,   828,   828,   nil,   828,
-   828,   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,   nil,   861,   861,
-   861,   861,   861,   861,   861,   nil,   nil,   861,   nil,   nil,
-   nil,   nil,   nil,   nil,   861,   nil,   nil,   861,   861,   861,
-   861,   861,   861,   861,   861,   nil,   861,   861,   861,   nil,
-   861,   861,   nil,   861,   861,   861,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   861,   nil,   nil,   861,   nil,
-   nil,   861,   861,   nil,   nil,   861,   nil,   nil,   nil,   nil,
-   nil,   861,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   861,
-   nil,   nil,   nil,   nil,   861,   861,   861,   861,   861,   861,
-   nil,   nil,   nil,   861,   861,   nil,   nil,   nil,   nil,   nil,
-   nil,   861,   nil,   nil,   861,   861,   861,   nil,   861,   861,
-   868,   868,   868,   nil,   868,   nil,   nil,   nil,   868,   868,
-   nil,   nil,   nil,   868,   nil,   868,   868,   868,   868,   868,
-   868,   868,   nil,   nil,   nil,   nil,   nil,   868,   868,   868,
-   868,   868,   868,   868,   nil,   nil,   868,   nil,   nil,   nil,
-   nil,   nil,   nil,   868,   nil,   nil,   868,   868,   868,   868,
-   868,   868,   868,   868,   nil,   868,   868,   868,   nil,   868,
-   868,   nil,   868,   868,   868,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   868,   nil,   nil,   868,   nil,   nil,
-   868,   868,   nil,   nil,   868,   nil,   nil,   nil,   nil,   nil,
-   868,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,
-   nil,   nil,   nil,   868,   868,   868,   868,   868,   868,   nil,
-   nil,   nil,   868,   868,   nil,   nil,   nil,   nil,   nil,   nil,
-   868,   nil,   nil,   868,   868,   868,   nil,   868,   868,   877,
-   877,   877,   nil,   877,   nil,   nil,   nil,   877,   877,   nil,
-   nil,   nil,   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,   877,   877,   877,
-   877,   877,   877,   nil,   877,   877,   877,   nil,   877,   877,
-   nil,   877,   877,   877,   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,
-   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,   nil,   nil,   nil,   877,
-   nil,   nil,   877,   877,   877,   nil,   877,   877,   919,   919,
-   919,   nil,   919,   nil,   nil,   nil,   919,   919,   nil,   nil,
-   nil,   919,   nil,   919,   919,   919,   919,   919,   919,   919,
-   nil,   nil,   nil,   nil,   nil,   919,   919,   919,   919,   919,
-   919,   919,   nil,   nil,   919,   nil,   nil,   nil,   nil,   nil,
-   nil,   919,   nil,   nil,   919,   919,   919,   919,   919,   919,
-   919,   919,   919,   919,   919,   919,   nil,   919,   919,   nil,
-   919,   919,   919,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   919,   nil,   nil,   919,   nil,   nil,   919,   919,
-   nil,   nil,   919,   nil,   nil,   nil,   919,   nil,   919,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   919,   nil,   nil,   nil,
-   nil,   919,   919,   919,   919,   919,   919,   nil,   nil,   nil,
-   919,   919,   nil,   nil,   nil,   nil,   nil,   nil,   919,   nil,
-   919,   919,   919,   919,   nil,   919,   919,   920,   920,   920,
-   nil,   920,   nil,   nil,   nil,   920,   920,   nil,   nil,   nil,
-   920,   nil,   920,   920,   920,   920,   920,   920,   920,   nil,
-   nil,   nil,   nil,   nil,   920,   920,   920,   920,   920,   920,
-   920,   nil,   nil,   920,   nil,   nil,   nil,   nil,   nil,   nil,
-   920,   nil,   nil,   920,   920,   920,   920,   920,   920,   920,
-   920,   nil,   920,   920,   920,   nil,   920,   920,   nil,   920,
-   920,   920,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   920,   nil,   nil,   920,   nil,   nil,   920,   920,   nil,
-   nil,   920,   nil,   nil,   nil,   nil,   nil,   920,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   920,   nil,   nil,   nil,   nil,
-   920,   920,   920,   920,   920,   920,   nil,   nil,   nil,   920,
-   920,   nil,   nil,   nil,   nil,   nil,   nil,   920,   nil,   nil,
-   920,   920,   920,   nil,   920,   920,   932,   932,   932,   nil,
-   932,   nil,   nil,   nil,   932,   932,   nil,   nil,   nil,   932,
-   nil,   932,   932,   932,   932,   932,   932,   932,   nil,   nil,
-   nil,   nil,   nil,   932,   932,   932,   932,   932,   932,   932,
-   nil,   nil,   932,   nil,   nil,   nil,   nil,   nil,   nil,   932,
-   nil,   nil,   932,   932,   932,   932,   932,   932,   932,   932,
-   nil,   932,   932,   932,   nil,   932,   932,   nil,   nil,   nil,
-   932,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   932,   nil,   nil,   932,   nil,   nil,   932,   932,   nil,   nil,
-   932,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   932,
-   932,   932,   932,   932,   932,   nil,   nil,   nil,   932,   932,
-   nil,   nil,   nil,   nil,   nil,   nil,   932,   nil,   nil,   932,
-   932,   932,   nil,   932,   932,   941,   941,   941,   nil,   941,
-   nil,   nil,   nil,   941,   941,   nil,   nil,   nil,   941,   nil,
-   941,   941,   941,   941,   941,   941,   941,   nil,   nil,   nil,
-   nil,   nil,   941,   941,   941,   941,   941,   941,   941,   nil,
-   nil,   941,   nil,   nil,   nil,   nil,   nil,   nil,   941,   nil,
-   nil,   941,   941,   941,   941,   941,   941,   941,   941,   nil,
-   941,   941,   941,   nil,   941,   941,   nil,   nil,   nil,   941,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   941,
-   nil,   nil,   941,   nil,   nil,   941,   941,   nil,   nil,   941,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   941,   941,
-   941,   941,   941,   941,   nil,   nil,   nil,   941,   941,   nil,
-   nil,   nil,   nil,   nil,   nil,   941,   nil,   nil,   941,   941,
-   941,   nil,   941,   941,   949,   949,   949,   nil,   949,   nil,
-   nil,   nil,   949,   949,   nil,   nil,   nil,   949,   nil,   949,
-   949,   949,   949,   949,   949,   949,   nil,   nil,   nil,   nil,
-   nil,   949,   949,   949,   949,   949,   949,   949,   nil,   nil,
-   949,   nil,   nil,   nil,   nil,   nil,   nil,   949,   nil,   nil,
-   949,   949,   949,   949,   949,   949,   949,   949,   nil,   949,
-   949,   949,   nil,   949,   949,   nil,   949,   949,   949,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   949,   nil,
-   nil,   949,   nil,   nil,   949,   949,   nil,   nil,   949,   nil,
-   949,   nil,   nil,   nil,   949,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   949,   nil,   nil,   nil,   nil,   949,   949,   949,
-   949,   949,   949,   nil,   nil,   nil,   949,   949,   nil,   nil,
-   nil,   nil,   nil,   nil,   949,   nil,   nil,   949,   949,   949,
-   nil,   949,   949,   992,   992,   992,   nil,   992,   nil,   nil,
-   nil,   992,   992,   nil,   nil,   nil,   992,   nil,   992,   992,
-   992,   992,   992,   992,   992,   nil,   nil,   nil,   nil,   nil,
-   992,   992,   992,   992,   992,   992,   992,   nil,   nil,   992,
-   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,   992,
-   992,   992,   992,   992,   992,   992,   992,   nil,   992,   992,
-   992,   nil,   992,   992,   nil,   nil,   nil,   992,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,
-   992,   nil,   nil,   992,   992,   nil,   nil,   992,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   992,   992,   992,   992,
-   992,   992,   nil,   nil,   nil,   992,   992,   nil,   nil,   nil,
-   nil,   nil,   nil,   992,   nil,   nil,   992,   992,   992,   nil,
-   992,   992,  1006,  1006,  1006,   nil,  1006,   nil,   nil,   nil,
-  1006,  1006,   nil,   nil,   nil,  1006,   nil,  1006,  1006,  1006,
-  1006,  1006,  1006,  1006,   nil,   nil,   nil,   nil,   nil,  1006,
-  1006,  1006,  1006,  1006,  1006,  1006,   nil,   nil,  1006,   nil,
-   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,  1006,
-  1006,  1006,  1006,  1006,  1006,  1006,   nil,  1006,  1006,  1006,
-   nil,  1006,  1006,   nil,  1006,  1006,  1006,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,
-   nil,   nil,  1006,  1006,   nil,   nil,  1006,   nil,   nil,   nil,
-   nil,   nil,  1006,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1006,   nil,   nil,   nil,   nil,  1006,  1006,  1006,  1006,  1006,
-  1006,   nil,   nil,   nil,  1006,  1006,   nil,   nil,   nil,   nil,
-   nil,   nil,  1006,   nil,   nil,  1006,  1006,  1006,   nil,  1006,
-  1006,  1039,  1039,  1039,   nil,  1039,   nil,   nil,   nil,  1039,
-  1039,   nil,   nil,   nil,  1039,   nil,  1039,  1039,  1039,  1039,
-  1039,  1039,  1039,   nil,   nil,   nil,   nil,   nil,  1039,  1039,
-  1039,  1039,  1039,  1039,  1039,   nil,   nil,  1039,   nil,   nil,
-   nil,   nil,   nil,   nil,  1039,   nil,   nil,  1039,  1039,  1039,
-  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,   nil,
-  1039,  1039,   nil,  1039,  1039,  1039,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1039,   nil,   nil,  1039,   nil,
-   nil,  1039,  1039,   nil,   nil,  1039,   nil,  1039,   nil,  1039,
-   nil,  1039,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1039,
-   nil,   nil,   nil,   nil,  1039,  1039,  1039,  1039,  1039,  1039,
-   nil,   nil,   nil,  1039,  1039,   nil,   nil,   nil,   nil,   nil,
-   nil,  1039,   nil,  1039,  1039,  1039,  1039,   nil,  1039,  1039,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,   nil,   nil,   nil,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,
-   nil,   nil,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,   nil,    11,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,    11,
-    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,    11,
-    11,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    11,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-   nil,   nil,   nil,   nil,   nil,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,   nil,   nil,    12,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,
-    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
-   nil,   nil,    12,    12,    12,    12,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,
-    12,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,   nil,   nil,    12,    12,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    12,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,   nil,   nil,   nil,   nil,   nil,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,
-   nil,    75,    75,    75,    75,    75,    75,    75,   nil,   nil,
-    75,    75,   nil,   nil,   nil,    75,    75,    75,    75,   nil,
-   nil,   nil,   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    75,    75,   nil,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,   nil,   nil,    75,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   nil,   nil,   nil,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   nil,   nil,   nil,   nil,
-   nil,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   nil,   105,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,   105,   nil,   105,   105,   105,   105,   105,   105,
-   105,   nil,   nil,   105,   105,   nil,   nil,   nil,   105,   105,
-   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
-   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,   422,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   422,   422,   422,   nil,   nil,   nil,   422,
-   422,   422,   422,   422,   422,   422,   422,   422,   422,   nil,
-   nil,   nil,   nil,   nil,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   nil,   nil,   422,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   422,   422,   nil,   422,   422,   422,
-   422,   422,   422,   422,   nil,   nil,   422,   422,   nil,   nil,
-   nil,   422,   422,   422,   422,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   422,   422,
-   nil,   422,   422,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   nil,   nil,   422,   422,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   422,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   422,   654,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   nil,
-   nil,   nil,   654,   654,   654,   654,   654,   654,   654,   654,
-   654,   654,   nil,   nil,   nil,   nil,   nil,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   nil,   nil,   654,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,   654,   nil,
-   654,   654,   654,   654,   654,   654,   654,   nil,   nil,   654,
-   654,   nil,   nil,   nil,   654,   654,   654,   654,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   654,   654,   nil,   654,   654,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   nil,   nil,   654,   654,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,   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,   nil,   nil,   nil,   nil,   nil,
-   766,   766,   766,   766,   766,   766,   766,   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,   766,   766,   766,
-   766,   nil,   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,   nil,   nil,
-   766,   nil,   nil,   nil,   nil,   228,   228,   nil,   nil,   228,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   228,   228,
-   766,   228,   228,   228,   228,   228,   228,   228,   nil,   nil,
-   228,   228,   nil,   nil,   nil,   228,   228,   228,   228,   nil,
-   nil,   nil,   nil,   nil,   228,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   228,   228,   nil,   228,   228,   228,   228,   228,
-   228,   228,   228,   228,   228,   228,   nil,   nil,   228,   nil,
-   nil,   nil,   nil,   229,   229,   nil,   nil,   229,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,   228,   229,
-   229,   229,   229,   229,   229,   229,   nil,   nil,   229,   229,
-   nil,   nil,   nil,   229,   229,   229,   229,   nil,   nil,   nil,
-   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   229,   229,   nil,   229,   229,   229,   229,   229,   229,   229,
-   229,   229,   229,   229,   nil,   nil,   229,   nil,   nil,   nil,
-   nil,   473,   473,   nil,   nil,   473,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   473,   473,   229,   473,   473,   473,
-   473,   473,   473,   473,   nil,   nil,   473,   473,   nil,   nil,
-   nil,   473,   473,   473,   473,   nil,   nil,   nil,   nil,   nil,
-   473,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   473,   473,
-   nil,   473,   473,   473,   473,   473,   473,   473,   473,   473,
-   473,   473,   nil,   nil,   473,   nil,   nil,   nil,   nil,   474,
-   474,   nil,   nil,   474,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   474,   474,   473,   474,   474,   474,   474,   474,
-   474,   474,   nil,   nil,   474,   474,   nil,   nil,   nil,   474,
-   474,   474,   474,   nil,   nil,   nil,   nil,   nil,   474,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   474,   474,   nil,   474,
-   474,   474,   474,   474,   474,   474,   474,   474,   474,   474,
-   nil,   nil,   474,   nil,   nil,   nil,   nil,   539,   539,   nil,
-   nil,   539,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   539,   539,   474,   539,   539,   539,   539,   539,   539,   539,
-   nil,   nil,   539,   539,   nil,   nil,   nil,   539,   539,   539,
-   539,   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   539,   539,   nil,   539,   539,   539,
-   539,   539,   539,   539,   539,   539,   539,   539,   nil,   nil,
-   539,   nil,   nil,   nil,   nil,   540,   540,   nil,   nil,   540,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   540,   540,
-   539,   540,   540,   540,   540,   540,   540,   540,   nil,   nil,
-   540,   540,   nil,   nil,   nil,   540,   540,   540,   540,   nil,
-   nil,   nil,   nil,   nil,   540,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   540,   540,   nil,   540,   540,   540,   540,   540,
-   540,   540,   540,   540,   540,   540,   nil,   nil,   540,   nil,
-   nil,   nil,   nil,   549,   549,   nil,   nil,   549,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   549,   549,   540,   549,
-   549,   549,   549,   549,   549,   549,   nil,   nil,   549,   549,
-   nil,   nil,   nil,   549,   549,   549,   549,   nil,   nil,   nil,
-   nil,   nil,   549,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   549,   549,   nil,   549,   549,   549,   549,   549,   549,   549,
-   549,   549,   549,   549,   nil,   nil,   549,   nil,   nil,   nil,
-   nil,   550,   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   550,   550,   549,   550,   550,   550,
-   550,   550,   550,   550,   nil,   nil,   550,   550,   nil,   nil,
-   nil,   550,   550,   550,   550,   nil,   nil,   nil,   nil,   nil,
-   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,   550,
-   nil,   550,   550,   550,   550,   550,   550,   550,   550,   550,
-   550,   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,   578,
-   578,   nil,   nil,   578,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   578,   578,   550,   578,   578,   578,   578,   578,
-   578,   578,   nil,   nil,   578,   578,   nil,   nil,   nil,   578,
-   578,   578,   578,   nil,   nil,   nil,   nil,   nil,   578,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   578,   578,   nil,   578,
-   578,   578,   578,   578,   578,   578,   578,   578,   578,   578,
-   nil,   nil,   578,   nil,   nil,   nil,   nil,   579,   579,   nil,
-   nil,   579,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   579,   579,   578,   579,   579,   579,   579,   579,   579,   579,
-   nil,   nil,   579,   579,   nil,   nil,   nil,   579,   579,   579,
-   579,   nil,   nil,   nil,   nil,   nil,   579,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   579,   579,   nil,   579,   579,   579,
-   579,   579,   579,   579,   579,   579,   579,   579,   nil,   nil,
-   579,   nil,   nil,   nil,   nil,   660,   660,   nil,   nil,   660,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   660,   660,
-   579,   660,   660,   660,   660,   660,   660,   660,   nil,   nil,
-   660,   660,   nil,   nil,   nil,   660,   660,   660,   660,   nil,
-   nil,   nil,   nil,   nil,   660,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   660,   660,   nil,   660,   660,   660,   660,   660,
-   660,   660,   660,   660,   660,   660,   nil,   nil,   660,   nil,
-   nil,   nil,   nil,   661,   661,   nil,   nil,   661,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   661,   661,   660,   661,
-   661,   661,   661,   661,   661,   661,   nil,   nil,   661,   661,
-   nil,   nil,   nil,   661,   661,   661,   661,   nil,   nil,   nil,
-   nil,   nil,   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   661,   661,   nil,   661,   661,   661,   661,   661,   661,   661,
-   661,   661,   661,   661,   nil,   nil,   661,   nil,   nil,   nil,
-   nil,   755,   755,   nil,   nil,   755,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   755,   755,   661,   755,   755,   755,
-   755,   755,   755,   755,   nil,   nil,   755,   755,   nil,   nil,
-   nil,   755,   755,   755,   755,   nil,   nil,   nil,   nil,   nil,
-   755,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   755,   755,
-   nil,   755,   755,   755,   755,   755,   755,   755,   755,   755,
-   755,   755,   nil,   nil,   755,   nil,   nil,   nil,   nil,   756,
-   756,   nil,   nil,   756,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   756,   756,   755,   756,   756,   756,   756,   756,
-   756,   756,   nil,   nil,   756,   756,   nil,   nil,   nil,   756,
-   756,   756,   756,   nil,   nil,   nil,   nil,   nil,   756,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   756,   756,   nil,   756,
-   756,   756,   756,   756,   756,   756,   756,   756,   756,   756,
-   nil,   983,   756,   983,   983,   983,   983,   983,   986,   nil,
-   986,   986,   986,   986,   986,   nil,   nil,   983,   nil,   nil,
-   nil,   nil,   756,   nil,   986,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   983,
-   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   983,   983,
-   983,   983,   nil,   nil,   nil,   986,   986,   986,   986,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1035,  1035,   nil,   nil,
-  1035,   nil,   nil,   nil,   983,   nil,   nil,   nil,   nil,  1035,
-  1035,   986,  1035,  1035,  1035,  1035,  1035,  1035,  1035,   nil,
-   nil,  1035,  1035,   nil,   nil,   nil,  1035,  1035,  1035,  1035,
-   nil,   nil,   nil,   nil,   nil,  1035,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1035,  1035,   nil,  1035,  1035,  1035,  1035,
-  1035,  1035,  1035,  1035,  1035,  1035,  1035,   nil,   nil,  1035,
-   nil,   nil,   nil,   nil,  1040,  1040,   nil,   nil,  1040,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1040,  1040,  1035,
-  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,   nil,  1040,
-  1040,   nil,   nil,   nil,  1040,  1040,  1040,  1040,   nil,   nil,
-   nil,   nil,   nil,  1040,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1040,  1040,   nil,  1040,  1040,  1040,  1040,  1040,  1040,
-  1040,  1040,  1040,  1040,  1040,   nil,   nil,  1040,   nil,   nil,
-   nil,   nil,  1041,  1041,   nil,   nil,  1041,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1041,  1041,  1040,  1041,  1041,
-  1041,  1041,  1041,  1041,  1041,   nil,   nil,  1041,  1041,   nil,
-   nil,   nil,  1041,  1041,  1041,  1041,   nil,   nil,   nil,   nil,
-   nil,  1041,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1041,
-  1041,   nil,  1041,  1041,  1041,  1041,  1041,  1041,  1041,  1041,
-  1041,  1041,  1041,   nil,  1059,  1041,  1059,  1059,  1059,  1059,
-  1059,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1059,   nil,   nil,   nil,   nil,  1041,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1059,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1059,  1059,  1059,  1059,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1059 ]
-
-racc_action_pointer = [
-   nil,    34,  2018,    60,   nil,   201,   nil,   nil,  6077,   763,
-   nil, 24008, 24141,   -12,   nil,   -30,    60,   -17,   152,   279,
-   112,   nil,   -60,  6216,  2298,   236,   nil,   -40,   nil,     0,
-  1084,  1216,  6355,  6494,  6633,   nil,  2158,  6772,  6911,   nil,
-   144,   208,   304,   268,   159,  7050,  7189,   489,  7328,   203,
-   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1348,   nil,  7467,   nil,   nil,    73,   nil,  7606,  7745,   nil,
-   nil,  7884,  8023,   270,   nil, 24274,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   -65,   nil,   nil,   nil,   nil,   nil,   nil,   255,
-   278,   284,   294,   nil,   nil, 24407,   nil,   nil,   nil,   nil,
-   nil,   nil,     0,   nil,   nil,   139,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  8162,   nil,
-   nil,   nil,   nil,  8301,  8440,  8579,  8718,  8857,   323,   nil,
-   605,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   331,
-   nil,  2298,  8996,  9135,  9274,  9413,  9552,  9691, 24874, 24942,
-   nil,   nil,  9830,  9969, 10108,   nil,   nil,   356,   -55,   -52,
-   430,   162,   351,   434,   nil, 10247,  2438,   433, 10386, 10525,
- 10664, 10803, 10942, 11081, 11220, 11359, 11498, 11637, 11776, 11915,
- 12054, 12193, 12332, 12471, 12610, 12749, 12888, 13027, 13166, 13305,
-   nil,   nil,   nil,   nil, 13444,   nil,   nil,   nil,  1876,   nil,
-   nil,   434, 13583, 13722,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil, 13861,   nil,  2438,   nil,   406,   419,   nil, 14000,
-   475, 14139,   nil,   nil, 14278, 14417,   nil,   nil,   460,   nil,
-   nil, 14556,   925,   nil,   443,  2578,   464,   512,   477, 14695,
-  2718,   371,   411,   458,   583,   510,   nil,   552,   531,   206,
-   nil,   nil,   nil,   575,   254,   556, 14834,   nil,   308,   620,
-   514,   nil,   646, 14973,   nil, 15112,  2858,  1166,   589, 15251,
- 15390,   nil,    11,   -10,    -1, 15529,  2998,  3138,   476,   700,
-   594,   -19,   -14,   589,   671,    -7,   703,   nil,   nil, 15668,
-   nil, 15807,   112,   118,   120,   239,   344,   373,   377,   455,
-   459,   nil,   461,   nil,   nil,   nil,   nil,   645,   nil,   -59,
-   nil,   370,   nil,   538,   nil,   605,   378,   nil,   607,   397,
-   nil,   609,   -37,   nil,   610,   -27,   nil,   443,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil, 24540,   nil,   nil,   nil,   nil,   624,   nil,   nil,
-   612, 15946,   618,   nil,   nil,   618,   nil,   625,   182,   720,
-   nil,   nil,  2018,   nil,   nil,   nil,   nil,   nil,  2158,   644,
-   nil,   nil,   642,   644,   430,   547,  1480,   nil,   nil,   nil,
-   271,   403,   687,   nil,   nil,  1612,  1744,   nil,   nil,   nil,
-   -33,   nil,   690, 25010, 25078, 16085,   187, 16224, 16363, 16502,
-  3138,  3278,   364,   490,   724,   726,   729,   748,   976,  1430,
-  1562,  3418,  3558,  3698,  3838,  3978,  4118,   844,  1039,  4258,
-  4398,  2578,  1166,   807,   nil,  1876,   nil,   nil,   nil,   nil,
-   691,   nil,   nil,   nil,   692,   nil,   nil, 16641,   nil,   nil,
- 16780,   nil, 16919,   nil,   265,   nil,   nil,   nil, 17058,  1178,
-   712,   702,   703,   nil,   nil,   705, 17197,   709, 17336, 25146,
- 25214,   752,   746,   nil, 17475,   710,   nil, 17614, 17753, 25282,
- 25350,  1298,  2718, 17892,   833,   851,   735,   nil,   nil,   -80,
-   -68,   767,   751,   nil,   340,   777,  3278,   856,   nil,  3418,
-    30,   860,   868,   863,   890,   nil,   nil, 18031, 25418, 25486,
-     5,   nil,   311,   342,   308,   nil,   753,   nil,   794, 18170,
-   nil,   812,   nil,   nil,   nil, 18309,   nil,   744,   nil,   774,
-   777,   nil,   780,   781,   784,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   789,   685,   nil,   nil, 18448,   nil,   nil,
-   nil,   886,   nil,   nil,   nil,   895,   nil,   nil,   905,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   198,   nil,   nil,   200,   nil,   nil,   nil,   830,   nil,   nil,
-   841,   nil,  3558,   nil, 24673,   nil,   848, 18587, 18726, 18865,
- 25554, 25622, 19004, 19143,   585,   884, 19282, 19421, 19560, 19699,
-   883,   nil,   nil,   nil, 19838, 19977,   899,   nil,   nil,   nil,
-   189,   216,   542,   681,   871,   871,   nil,   116,   974,   163,
-   nil,   nil,   892,   nil,  1000,   nil,   881,   nil,   923, 20116,
-   nil,   nil, 20255,   nil,   nil,  -123, 20394,   898,   nil,   915,
-    -9,    28,   952,    33,   773,   955,   933, 20533,   nil,   999,
-   156,   221,   nil, 20672,   nil,   nil,   nil,   nil, 20811,   nil,
-   nil, 20950,   nil,   nil,   nil,   610,   nil,  1054,   nil,   nil,
-   nil,   nil,   nil,  1061,   nil, 21089,   947,    20,    29,   163,
-   165,  3698,   nil,   763,   nil, 25690, 25758, 21228,   nil,   nil,
-   nil,   595,  3838,  3978,   874,  1048, 24806,   165,    27,   959,
-   234,   nil,   nil,   578,  1147,   nil,  1279,   nil,   471,   nil,
- 21367,   nil,   949,   nil,   957,   959,   881,   964,   nil,   nil,
-   nil,   nil,   936,  4118,   nil,   nil,   nil,   nil,   nil,   981,
-   nil,   966, 21506,   981,   222,   274,   813,   945,   nil,  2858,
- 21645,   nil,   979,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil, 21784, 21923, 22062, 22201,   317, 22340,   nil,
-   nil,  1411,   nil,  4258,   nil,   nil,   999,   nil,   119,   nil,
-   nil,   nil,   nil,   984,   160,   nil,   nil,   nil,   nil,   nil,
-   nil,  4398,   nil,   985,  1028,   nil,   nil,   447,  1108,   nil,
-   nil, 22479,   nil,  4538,  1109,   nil,   nil,   nil, 22618,    42,
-    41,  1110,   550,   781,   nil,   996,  4678, 22757,   535,  1120,
-  1124,  1009,   551,   nil,   nil,   nil,  4818,  4958,  1005,  1013,
-  1011,   nil,   nil,   nil,  1012,  1021,   nil,  1036,  1041,   nil,
-  1042,   nil,   nil,  1047,   980,   819,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1038,   nil,  1048,   320,   nil,   nil, 22896,
- 23035,  2998,  1051,  1055,   nil,  1057,  1065,  1070,   nil,  1103,
-  1101,  1087, 23174,   nil,   nil,   nil,   nil,  5098,  5238,   nil,
-     6, 23313,   nil,   nil,   nil,    10,   nil,   nil,   nil, 23452,
-  5378,   nil,   nil,  1225,   580,   nil,   nil,   nil,   nil,   nil,
-  1150,  1131,  1242,  1010,   nil,   nil,  1543,   nil,  1675,   nil,
-  6793,   nil,  6932,   nil,   nil,   nil,   nil,  1125,  1132,   nil,
-   325,   nil,   nil, 25820,   nil,   nil, 25827,   nil,  8044,   nil,
-   nil,  1159, 23591,   884,  1219,   nil,  1268,  5518,    19,    38,
-   898,  1223,    69,   nil,  5658,   nil, 23730,   355,   nil,   nil,
-  5798,  5938,   nil,   nil,   451,   nil,   nil,   nil,  1150,  1151,
-  1153,  1168,  1077,  1184,  1169,   nil,   nil,  1173,  1174,  1176,
-  1179,   nil,  1180,   nil,   913, 25895,   nil,   nil,  1305, 23869,
- 25963, 26031,   106,   691,   nil,   nil,   nil,   nil,  1305,  1307,
-   nil,  1209, 14716,   nil,   nil,   nil,   nil,  1189,   nil, 26093,
-   nil, 14855,   nil, 15689,   nil, 15828,   nil,   nil,  1236,  1238,
-   nil,  1205,   128,   131,   171,   174,   nil,   nil,   nil,   nil,
-  1208,  1209,  1210,  1211,  1212,   162,   nil, 17218,   nil,   nil,
-   nil,   nil,  1215,   nil ]
-
-racc_action_default = [
-    -1,  -649,  -648,  -649,    -2,  -635,    -4,    -5,  -649,    -8,
-    -9,  -649,  -649,  -649,   -36,  -649,  -649,   -40,  -649,  -649,
-  -292,   -52,  -637,  -649,   -57,   -62,   -63,   -64,   -68,  -269,
-  -269,  -269,  -307,  -340,  -341,   -80,  -648,   -84,   -92,   -94,
-  -649,  -536,  -537,  -649,  -649,  -649,  -649,  -228,  -649,  -637,
-  -242,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,  -291,
-  -621,  -294,  -296,  -303,  -305,  -315,  -317,  -649,  -649,   -59,
-   -59,  -635,  -649,  -325,  -332,  -649,  -342,  -343,  -345,  -346,
-  -347,  -348,  -349,  -350,  -351,  -352,  -353,  -354,  -363,  -418,
-  -466,  -467,  -468,  -469,  -470,  -648,  -473,  -648,  -648,  -648,
-  -648,  -648,  -648,  -509,  -510,  -648,  -512,  -518,  -520,  -521,
-  -522,  -523,  -619,  -525,  -526,  -620,  -528,  -529,  -530,  -531,
-  -532,  -533,  -534,  -535,  -540,  -541,  1094,    -3,  -636,  -644,
-  -645,  -646,    -7,  -649,  -649,  -649,  -649,  -649,  -649,   -24,
-  -649,  -123,  -124,  -125,  -126,  -127,  -128,  -129,  -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,  -194,
-  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,   -29,
-  -130,  -648,  -649,  -649,  -649,  -649,  -649,  -648,  -649,  -649,
-  -631,  -632,  -649,  -649,  -637,  -638,   -56,  -649,  -536,  -537,
-  -649,  -292,  -649,  -649,  -234,  -649,  -648,  -649,  -649,  -649,
-  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,
-  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,
-  -243,  -244,  -245,  -246,  -649,  -356,  -446,  -426,  -649,  -633,
-  -634,   -69,  -648,  -649,  -314,  -355,  -430,  -439,  -441,   -75,
-  -436,   -76,  -637,   -77,  -249,  -264,  -648,  -648,  -268,  -649,
-  -274,  -649,  -648,  -613,  -649,  -649,   -78,   -79,  -635,   -17,
-   -18,  -649,   -21,   -22,   -82,  -648,  -637,  -649,   -85,   -88,
-  -648,  -100,  -101,  -649,  -649,  -108,  -307,  -310,  -637,  -649,
-  -340,  -341,  -344,  -437,  -649,   -90,  -649,   -96,  -302,  -519,
-  -649,  -222,  -223,  -649,  -235,  -649,  -648,  -298,  -637,  -648,
-  -648,  -316,   -58,  -649,  -649,  -649,  -648,  -648,  -635,  -649,
-  -636,  -536,  -537,  -649,  -649,  -292,  -649,  -373,  -374,  -649,
-  -328,  -649,  -123,  -124,  -163,  -164,  -165,  -181,  -186,  -193,
-  -196,  -335,  -649,  -536,  -537,  -608,  -609,  -568,  -471,  -649,
-  -494,  -649,  -496,  -649,  -498,  -649,  -649,  -478,  -649,  -649,
-  -484,  -649,  -649,  -490,  -649,  -649,  -492,  -649,  -511,  -513,
-  -514,  -515,  -516,    -6,  -647,   -30,   -31,   -32,   -33,   -34,
-   -10,   -11,  -649,   -26,   -27,   -28,  -131,  -649,   -37,   -39,
-  -279,  -649,  -649,  -278,   -38,  -649,   -41,  -649,  -292,   -49,
-   -51,  -204,  -254,  -274,   -53,   -54,   -42,  -205,  -254,  -637,
-  -259,  -260,  -648,  -648,  -622,  -623,  -269,  -434,  -624,  -625,
-  -623,  -622,  -269,  -433,  -435,  -624,  -625,   -48,  -212,   -55,
-  -637,  -313,  -649,  -649,  -649,  -648,  -302,  -649,  -649,  -649,
-  -213,  -214,  -215,  -216,  -217,  -218,  -219,  -220,  -224,  -225,
-  -226,  -227,  -229,  -230,  -231,  -232,  -233,  -236,  -237,  -238,
-  -239,  -637,  -247,  -649,  -447,  -269,  -622,  -623,   -66,   -70,
-  -637,  -270,  -443,  -446,  -637,  -309,  -265,  -649,  -273,  -266,
-  -649,  -271,  -649,  -275,  -649,  -616,  -618,   -16,  -636,   -20,
-  -649,  -637,   -81,  -300,   -97,   -86,  -649,  -637,  -648,  -649,
-  -649,  -107,  -649,  -519,  -649,   -93,   -98,  -649,  -649,  -649,
-  -649,  -248,  -240,  -649,  -458,  -649,  -637,  -297,  -250,  -641,
-  -641,  -649,  -649,  -611,  -641,  -649,  -648,  -364,  -365,  -648,
-  -649,  -649,  -649,  -649,  -649,  -359,  -453,  -648,  -649,  -649,
-  -302,   -59,  -118,  -119,  -649,  -121,  -649,  -292,  -648,  -649,
-  -333,  -546,  -337,  -629,  -630,  -649,  -419,  -568,  -422,  -607,
-  -607,  -551,  -553,  -553,  -553,  -567,  -569,  -570,  -571,  -572,
-  -573,  -574,  -575,  -576,  -649,  -578,  -580,  -582,  -587,  -589,
-  -590,  -592,  -597,  -599,  -600,  -602,  -603,  -604,  -649,  -472,
-  -495,  -500,  -501,  -503,  -474,  -497,  -475,  -499,  -476,  -477,
-  -649,  -480,  -482,  -649,  -483,  -486,  -487,  -649,  -488,  -489,
-  -649,  -517,  -648,   -25,  -649,   -35,  -282,  -649,  -649,  -648,
-  -649,  -649,  -649,  -649,  -438,  -649,  -261,  -263,  -649,  -649,
-   -71,  -257,  -258,  -431,  -649,  -649,   -73,  -432,  -312,  -639,
-  -622,  -623,  -622,  -623,  -637,  -649,  -425,  -648,   -65,  -427,
-  -443,  -256,  -649,  -444,  -649,  -308,  -648,  -272,  -276,  -649,
-  -614,  -615,  -649,   -19,   -23,   -83,  -649,   -89,   -95,  -637,
-  -622,  -623,  -648,  -626,  -106,  -649,   -91,  -649,  -211,  -221,
-  -637,  -648,  -357,  -648,  -295,  -362,  -299,  -251,  -643,  -642,
-  -253,  -643,  -304,  -306,  -612,  -648,  -366,  -648,   -60,  -367,
-  -368,  -320,  -321,  -649,  -323,  -649,  -637,  -622,  -623,  -626,
-  -301,  -648,  -118,  -119,  -120,  -649,  -649,  -648,  -326,  -542,
-  -544,  -329,  -648,  -648,  -568,  -568,  -649,  -637,  -649,  -637,
-  -649,  -549,  -550,  -649,  -649,  -560,  -649,  -563,  -649,  -565,
-  -649,  -375,  -649,  -377,  -379,  -382,  -385,  -637,  -581,  -591,
-  -601,  -605,  -649,  -648,  -479,  -481,  -485,  -491,  -493,  -649,
-  -132,  -280,  -649,  -637,  -622,  -623,  -623,  -622,   -50,  -255,
-  -649,  -640,  -648,   -44,  -207,   -45,  -208,   -72,   -46,  -210,
-   -47,  -209,   -74,  -649,  -649,  -649,  -649,  -438,  -649,  -407,
-  -408,  -637,  -410,  -648,  -429,  -428,  -649,  -440,  -648,  -442,
-  -267,  -277,  -617,   -87,  -438,   -99,  -311,   -13,   -15,  -358,
-  -360,  -648,  -465,  -459,  -648,  -460,  -461,  -641,  -649,  -361,
-  -369,  -649,  -371,  -648,  -649,   -61,  -322,  -449,  -649,  -649,
-  -438,  -649,  -118,  -119,  -122,  -637,  -648,  -649,  -649,  -649,
-  -649,  -637,  -649,  -338,  -610,  -420,  -648,  -648,  -412,  -637,
-  -607,  -588,  -606,  -552,  -553,  -553,  -579,  -553,  -553,  -598,
-  -553,  -576,  -593,  -637,  -649,  -649,  -384,  -577,  -502,  -505,
-  -506,  -507,  -508,  -649,   -12,  -281,  -438,   -43,  -206,  -262,
-  -649,  -241,  -607,  -607,  -389,  -648,  -648,  -648,  -406,  -649,
-  -637,  -576,  -584,  -585,  -595,  -448,   -67,  -648,  -648,  -464,
-  -649,  -649,  -463,  -252,  -318,  -649,  -372,  -319,  -450,  -649,
-  -648,  -324,  -438,  -649,  -649,  -330,  -334,  -336,  -545,  -547,
-  -546,  -649,  -649,  -649,  -421,  -548,  -649,  -556,  -649,  -558,
-  -649,  -561,  -649,  -564,  -566,  -376,  -378,  -380,  -383,  -504,
-  -649,  -387,  -388,  -397,  -391,  -399,  -649,  -402,  -649,  -404,
-  -409,  -649,  -649,  -583,  -649,  -445,  -648,  -648,  -536,  -537,
-  -649,  -649,  -292,  -462,  -648,  -451,  -649,  -648,  -327,  -543,
-  -648,  -648,  -423,  -424,  -637,  -414,  -416,  -417,  -553,  -553,
-  -553,  -553,  -649,  -649,  -607,  -586,  -390,  -648,  -648,  -648,
-  -648,  -596,  -648,  -411,  -594,  -649,  -302,   -14,  -458,  -648,
-  -649,  -649,  -302,  -648,  -452,  -454,  -455,  -456,  -649,  -649,
-  -413,  -649,  -649,  -554,  -557,  -559,  -562,  -381,  -386,  -649,
-  -394,  -649,  -396,  -649,  -400,  -649,  -403,  -405,  -301,  -626,
-  -457,  -637,  -622,  -623,  -626,  -301,  -370,  -331,  -339,  -415,
-  -553,  -648,  -648,  -648,  -648,  -438,  -555,  -649,  -392,  -395,
-  -398,  -401,  -648,  -393 ]
-
-racc_goto_table = [
-     6,   449,   318,   233,   295,   295,   295,   131,   144,   144,
-   228,   381,   456,   462,   277,   555,     9,     4,   279,   351,
-   353,   354,     9,   721,   358,   574,   139,   220,   566,   569,
-   345,   332,   332,   433,   434,   519,   317,   858,   147,   147,
-   598,   409,   763,   356,   357,   281,   289,   291,   440,   446,
-   420,   440,   771,   772,   848,   467,   510,   440,   700,   781,
-   335,   664,   505,   605,   697,   724,   332,   697,   128,   339,
-   127,   899,   144,   131,   503,   509,   347,   754,   286,   290,
-   389,   741,   742,   787,   744,   833,   415,   416,   417,   418,
-   407,   864,   692,   390,   978,   392,   394,   397,   400,   403,
-   406,   314,   144,   390,   297,   297,   297,   727,   730,   132,
-   926,   889,   734,  1015,   976,  1031,     1,   640,   352,   352,
-   643,  1017,   352,   588,     2,   590,   296,   296,   296,   138,
-   316,   652,   545,   847,   938,   236,   359,   703,   530,   219,
-   368,   429,     9,   422,   896,   738,   865,   293,   306,   307,
-   278,   419,   690,   654,   343,   561,   689,   385,   562,   366,
-   758,   382,   592,   775,   777,   779,   346,   348,   556,   349,
-   350,   369,    19,   929,   447,   876,   589,   878,    19,  1010,
-   468,   371,   762,   591,   352,   352,   352,   352,  1031,   766,
-   960,   519,   977,   237,   928,   930,  1014,   596,   885,   295,
-   387,  1079,   237,   237,   237,   700,    19,   323,   323,  1017,
-   768,  1057,   512,   697,   697,   513,   838,   869,   687,   613,
-  1045,   427,   745,   854,   940,   450,   466,   781,   473,   413,
-   388,   906,    19,   976,   391,   393,   937,   237,   237,   743,
-   396,   237,   363,   399,   402,   405,   317,   908,   874,   684,
-   769,   903,   792,   866,   295,   295,   793,   456,   462,   408,
-   877,   899,  1027,   635,   295,   637,   894,   891,   641,   700,
-   836,   641,   991,   605,  1025,   444,   445,   457,   595,   nil,
-   450,   nil,   nil,   nil,   469,   470,   nil,   524,   nil,   nil,
-   nil,   nil,   nil,   nil,   518,   518,   827,   nil,    19,   nil,
-   390,   546,   nil,   237,   237,   237,   237,    19,   570,   542,
-   131,   694,   709,   332,   539,   317,   432,   432,   nil,   nil,
-   317,   844,   nil,   712,   nil,   529,   nil,   nil,   nil,  1037,
-   332,   549,   707,   712,   428,   439,   nil,   nil,   439,   nil,
-   716,   535,   896,   965,   439,  1076,   nil,   558,   563,   781,
-   781,   746,   nil,   896,   578,   297,   571,   572,   870,   543,
-   131,  1046,   712,   332,   297,   332,   nil,   nil,   944,   nil,
-   nil,   528,   nil,   527,   947,   981,   982,   296,   286,   nil,
-   314,   951,   290,   nil,   nil,   314,   296,   nil,   nil,   956,
-   957,    19,   237,   437,   237,   237,   437,   237,   511,   nil,
-   nil,   nil,   437,   237,   237,   943,   352,   514,   890,   531,
-   nil,  1011,   nil,   nil,   537,   916,    19,   881,   882,   144,
-   nil,   560,   564,   573,   nil,   468,   nil,   447,   660,   613,
-   665,   879,   880,   803,   840,   896,   nil,   653,   nil,   nil,
-   605,   605,   704,   559,   456,   462,   nil,   295,   nil,   147,
-   518,   518,   237,   237,   671,   967,   969,   700,   971,   973,
-   nil,   974,   237,  1008,   817,   nil,   697,   781,   781,   923,
-   822,   466,   670,   450,   nil,   nil,   nil,  1058,   676,   nil,
-   nil,    19,   685,   440,   nil,    19,   nil,   952,   nil,   323,
-    19,   813,   815,   440,   440,   718,   nil,   818,   820,   440,
-   440,   546,   843,   671,   nil,   672,   323,  1070,   nil,   546,
-   295,   677,   795,   nil,   nil,   795,    19,   nil,   nil,   nil,
-   nil,   688,   457,   nil,   nil,   237,    19,    19,   nil,   nil,
-   332,   875,   nil,   nil,   855,   nil,   450,   466,   332,   586,
-   712,   586,   nil,   nil,   950,   953,   nil,   466,   nil,   295,
-   840,   nil,   nil,   nil,   672,   751,   962,   nil,  1077,  1078,
-   nil,   nil,   nil,   nil,   nil,   nil,   735,   nil,   nil,   737,
-   nil,   nil,   739,   nil,   nil,   450,   466,   nil,   nil,  1053,
-  1054,  1055,  1056,   nil,   nil,   895,   760,   897,   457,   696,
-   nil,   nil,   nil,   nil,   nil,   nil,   613,   613,   457,   nil,
-   nil,   nil,   nil,   nil,   720,   nil,   613,   nil,   613,   898,
-   nil,   900,   nil,   nil,   nil,   997,   814,   816,  1024,   nil,
-  1004,   923,   819,   821,   923,   nil,   923,   457,   nil,   nil,
-   nil,   295,   nil,   917,   nil,   440,   nil,   nil,   nil,   nil,
-   761,  1086,   927,   835,   nil,   237,   767,   nil,   nil,   nil,
-     6,   144,   nil,   nil,   nil,   nil,   nil,   450,   466,   nil,
-   nil,   nil,   nil,   931,   925,   665,     9,   799,   nil,   800,
-   nil,   546,   nil,  1047,   nil,   nil,   808,   834,   nil,  1048,
-  1049,   147,   845,  1085,   nil,   829,   nil,   nil,   nil,   nil,
-   665,   nil,   nil,   nil,   518,   nil,   nil,   923,    19,   923,
-   332,   923,   883,   923,   nil,   nil,   323,   nil,   237,   457,
-   671,   332,   932,   nil,   323,   nil,   nil,   nil,   nil,   852,
-   nil,   856,   nil,   237,   nil,   923,   nil,   665,   nil,   295,
-   nil,   nil,   nil,   862,   nil,   862,    19,   nil,   812,    19,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,   nil,   nil,
-   888,   871,   466,   nil,   nil,   450,   nil,   nil,   918,   237,
-   nil,   672,   nil,   144,   677,   237,   nil,   nil,   nil,   nil,
-   439,   814,   816,   821,   819,   nil,   nil,  1018,   nil,   nil,
-   439,   439,   nil,   nil,   665,   nil,   439,   439,   nil,   nil,
-   nil,   nil,   nil,   913,  1028,   nil,   nil,  1029,   613,  1019,
-   857,  1020,   nil,  1021,   nil,   457,   nil,   nil,   nil,   nil,
-   518,   nil,   888,  1071,   945,   931,   nil,   432,   931,  1030,
-   nil,  1032,    19,   nil,   712,   nil,   nil,   nil,   437,   237,
-   954,   nil,    19,   935,   nil,   nil,   829,   nil,   437,   437,
-   nil,    29,   nil,   nil,   437,   437,   nil,    29,   nil,   nil,
-   nil,   939,   942,   nil,   nil,   nil,   665,   nil,   nil,   nil,
-   nil,   932,    29,   946,   932,   nil,   nil,   932,   918,   932,
-  1081,    29,    29,    29,   nil,    29,   323,   nil,   430,   443,
-   955,   nil,   nil,   nil,   959,  1080,   961,   323,   nil,   nil,
-   nil,   931,  1082,   nil,  1083,   nil,  1084,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,
-    29,   888,   352,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1092,    19,   439,   984,   984,   984,   332,   237,   352,   nil,
-   nil,   nil,    19,    19,   471,   332,   nil,   995,   996,   nil,
-   932,   nil,   932,   nil,   932,   nil,   932,   nil,   nil,   nil,
-  1007,   nil,   nil,   nil,   nil,   521,  1009,   523,   nil,   nil,
-   525,   526,   nil,    19,   nil,   nil,   nil,    29,   932,   nil,
-   nil,   nil,    29,    29,    29,    29,    29,   nil,   nil,   nil,
-   437,   nil,   nil,   nil,   nil,   nil,   332,   nil,   nil,   nil,
-   nil,  1040,   515,   nil,   852,  1050,   nil,  1038,   nil,   nil,
-   nil,   nil,   nil,    19,  1043,   862,   565,   nil,   nil,   nil,
-   nil,   295,   nil,   nil,   892,   nil,   532,   892,   nil,   nil,
-   nil,    19,   nil,   nil,   nil,   984,   984,   984,   984,   nil,
-   984,   237,   466,    19,   985,   987,   989,   450,   466,   nil,
-   nil,   862,   nil,   nil,   nil,   nil,    19,   237,   557,   nil,
-   nil,   nil,   665,   nil,   nil,   nil,    19,    19,   nil,   nil,
-    29,    29,    29,    29,    29,    29,    29,   nil,   nil,   nil,
-   nil,    29,    29,    29,   nil,   924,   nil,   nil,   nil,   984,
-   984,   984,   984,   nil,   nil,    29,   nil,   656,   nil,   457,
-   984,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   993,   nil,   nil,   nil,   nil,    19,    19,   nil,
-   nil,  1000,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    19,    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,  1060,  1062,  1064,  1066,
-   nil,  1067,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,
-   nil,   nil,  1034,   nil,   nil,   nil,   nil,    19,   nil,   nil,
-   678,   nil,   nil,   698,    19,   nil,   565,   nil,   701,   nil,
-    19,    19,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
-  1088,  1089,  1090,  1091,    29,    29,    29,   nil,   nil,   nil,
-   nil,  1093,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,
-   691,   nil,   nil,   nil,   695,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   892,    32,   nil,   924,   nil,   nil,
-   924,   705,   924,   nil,   nil,   nil,   nil,   708,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-    32,    32,   nil,    32,   nil,   nil,   726,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   788,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   924,   nil,   924,   nil,   924,   nil,   924,
-   nil,   nil,   nil,   801,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   698,   565,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   924,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-    32,    32,    32,    32,    32,   841,   nil,   nil,   842,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   853,
-   nil,   nil,   nil,   nil,   698,   nil,   nil,   565,   nil,   nil,
-   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   867,   nil,   nil,   nil,    29,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   846,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,    29,   nil,   902,   nil,    32,    32,
-    32,    32,    32,    32,    32,   nil,   nil,   nil,   nil,    32,
-    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,   915,   nil,
-   nil,   nil,   nil,    32,   nil,   nil,   nil,   884,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   907,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,   nil,    29,    29,    32,
-    32,    29,   nil,   nil,   nil,   nil,   nil,    29,    29,    32,
-   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   948,   nil,   nil,   nil,    32,   nil,
-   nil,   nil,    32,   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,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    32,    32,    32,   565,   nil,   nil,   nil,   nil,
-   nil,   958,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,
-    29,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,    29,    29,   975,   nil,  1005,   nil,   nil,   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,   nil,   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,  1044,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   244,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,    29,   294,   294,   294,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   341,   342,   nil,   344,   nil,    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,
-    32,   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,   nil,    32,   nil,   nil,    29,
-   nil,   nil,   nil,    16,    32,   nil,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,    29,
-    29,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   367,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,    29,    32,
-   nil,   nil,   nil,   nil,   nil,    32,    32,   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,   294,   442,    16,
-   nil,   448,   294,   nil,   nil,   nil,   nil,   448,    16,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,    18,   nil,
-   244,   nil,   nil,   480,   481,   482,   483,   484,   485,   486,
-   487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
-   497,   498,   499,   500,   501,   nil,    18,   nil,    32,   502,
-   nil,   nil,   nil,   nil,    32,   nil,   nil,   294,   294,    32,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,
-   nil,   nil,    18,   nil,   294,   nil,   294,   nil,   nil,   294,
-   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,    16,   nil,   435,   nil,   nil,   435,   nil,   nil,
-   nil,   nil,   nil,   435,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   551,   nil,
-   552,   nil,   nil,   nil,   294,   294,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,    32,    32,   nil,    16,   nil,   nil,   nil,
-   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,
-   nil,    18,   nil,    18,    32,    32,    18,   nil,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   294,   nil,   448,   448,   448,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   nil,    32,   294,   nil,   294,   nil,   nil,
-   nil,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,   448,   719,   nil,    18,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   294,   nil,   nil,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   325,   325,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   365,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   448,   294,   nil,   nil,    16,   809,   nil,
-    16,   294,   294,   448,   448,   nil,   nil,   nil,   nil,   448,
-   448,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   nil,   nil,   294,   nil,   nil,   294,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   294,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   294,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   435,
-   nil,   nil,   294,    16,   nil,   nil,   nil,   nil,    18,   435,
-   435,   nil,   nil,   nil,   nil,   435,   435,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   438,   nil,   nil,   438,   nil,   nil,
-   nil,   nil,   nil,   438,   nil,   nil,    18,   294,   nil,    18,
-   nil,   nil,   nil,   nil,   nil,   448,   nil,    20,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   448,   448,
-   448,   448,   nil,   921,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    16,    16,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,   nil,    20,    41,   nil,   nil,
-   325,    20,    18,    41,    16,   nil,   nil,   nil,    18,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   325,    18,    18,
-   nil,   435,   nil,   nil,    18,    18,   nil,    20,   nil,   nil,
-   nil,    41,   321,   321,   294,   448,   nil,    20,    20,   nil,
-   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
-   587,   nil,   587,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,    16,   nil,   294,   nil,   nil,   361,   nil,   nil,
-   383,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,
-   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   294,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,    16,    16,
-   nil,   nil,  1003,   nil,   294,   nil,   nil,   nil,   nil,   nil,
-    18,    16,   nil,   nil,   nil,   nil,   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,   nil,
-   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,    16,    20,
-   nil,   nil,   nil,    18,   nil,    16,    41,   325,   nil,   nil,
-   nil,    16,    16,   nil,   nil,   325,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,    20,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,   321,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   321,   nil,    20,   nil,   nil,   nil,   nil,   nil,   438,
-   nil,    41,   nil,    20,   nil,   nil,   nil,    18,   nil,   438,
-   438,    41,    41,   nil,    18,   438,   438,   nil,   nil,   nil,
-    18,    18,   nil,   nil,   383,   nil,   383,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,    42,   325,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   325,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   322,   322,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
-   362,   nil,   nil,   384,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   912,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   438,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    20,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   321,    20,   nil,   nil,   nil,   nil,   nil,   nil,   321,
-   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-   nil,    41,   nil,   nil,    41,   nil,   nil,    20,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   587,   nil,   nil,   nil,   nil,    20,    20,
-   nil,   nil,  1002,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   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,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   587,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,    42,
-   nil,    20,    20,    42,   nil,   nil,   nil,   322,    42,   nil,
-   nil,   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   321,   nil,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,   384,   nil,   384,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    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,   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,   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,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   322,   nil,   nil,   nil,   nil,   383,   nil,   nil,
-   nil,   nil,    41,    41,   nil,   nil,   998,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    41,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   383,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,    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,   nil,   nil,   nil,
-   nil,    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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   384,   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   999,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   384,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,    42,    42 ]
-
-racc_goto_check = [
-     6,    36,    63,    40,    46,    46,    46,   118,    71,    71,
-    38,    70,    50,    50,   171,    12,     9,     2,    38,   102,
-    24,    24,     9,    15,    24,   113,    22,    22,   106,   106,
-    40,    78,    78,    29,    29,    87,    14,   107,    73,    73,
-   170,    70,   121,    42,    42,    51,    51,    51,    25,    33,
-    10,    25,   153,   153,    17,    33,    36,    25,   220,   146,
-    64,    37,    50,   204,    88,   100,    78,    88,     8,    76,
-     5,   215,    71,   118,   172,    52,     9,    68,    85,    85,
-   188,   100,   100,   147,   100,   160,    24,    24,    24,    24,
-   188,   109,    53,     6,   148,     6,     6,     6,     6,     6,
-     6,    59,    71,     6,    84,    84,    84,    83,    83,     7,
-   158,   162,    83,   164,   145,   216,     1,   192,    31,    31,
-   192,   165,    31,    69,     3,    69,    82,    82,    82,    11,
-    60,    13,    65,    16,    18,    27,     5,    20,    21,    23,
-    26,    30,     9,    32,   210,    43,    45,    58,    58,    58,
-    49,     9,    55,    74,    79,    81,    86,    98,   101,   115,
-   117,   122,   123,   207,   207,   207,   124,   125,   126,   127,
-   128,   129,    35,   162,    75,   130,   131,   132,    35,   133,
-    75,   134,   135,   136,    31,    31,    31,    31,   216,   137,
-   138,    87,   149,    35,   150,   156,   163,   166,   167,    46,
-   168,   164,    35,    35,    35,   220,    35,    35,    35,   165,
-   169,   148,   174,    88,    88,   175,   177,   178,   180,   209,
-   181,    14,   182,   183,   184,     6,    71,   146,    38,     7,
-   187,   146,    35,   145,   189,   190,   160,    35,    35,   113,
-   191,    35,    35,   194,   195,   196,    14,   197,    68,    36,
-   170,   147,   198,   100,    46,    46,   199,    50,    50,   202,
-   203,   215,   158,   193,    46,   193,   208,   212,   193,   220,
-    53,   193,   162,   204,   213,    31,    31,    85,   219,   nil,
-     6,   nil,   nil,   nil,    31,    31,   nil,   188,   nil,   nil,
-   nil,   nil,   nil,   nil,     6,     6,    37,   nil,    35,   nil,
-     6,    63,   nil,    35,    35,    35,    35,    35,    24,    40,
-   118,   172,    36,    78,    38,    14,    82,    82,   nil,   nil,
-    14,    37,   nil,    50,   nil,     9,   nil,   nil,   nil,    17,
-    78,    38,    65,    50,    27,    27,   nil,   nil,    27,   nil,
-    65,    64,   210,   153,    27,   107,   nil,     6,     6,   146,
-   146,    36,   nil,   210,    38,    84,    14,    14,    37,    76,
-   118,   109,    50,    78,    84,    78,   nil,   nil,   100,   nil,
-   nil,     8,   nil,     5,   100,   153,   153,    82,    85,   nil,
-    59,   100,    85,   nil,   nil,    59,    82,   nil,   nil,   100,
-   100,    35,    35,    35,    35,    35,    35,    35,    58,   nil,
-   nil,   nil,    35,    35,    35,    83,    31,    58,   152,    60,
-   nil,   121,   nil,   nil,    60,    37,    35,   170,   170,    71,
-   nil,    84,    84,     5,   nil,    75,   nil,    75,    38,   209,
-    40,    12,    12,    36,    87,   210,   nil,    22,   nil,   nil,
-   204,   204,    10,    82,    50,    50,   nil,    46,   nil,    73,
-     6,     6,    35,    35,     6,   207,   207,   220,   207,   207,
-   nil,   207,    35,   100,    52,   nil,    88,   146,   146,   152,
-    52,    71,    51,     6,   nil,   nil,   nil,   153,    51,   nil,
-   nil,    35,    40,    25,   nil,    35,   nil,    37,   nil,    35,
-    35,    33,    33,    25,    25,    75,   nil,    33,    33,    25,
-    25,    63,    65,     6,   nil,    85,    35,    15,   nil,    63,
-    46,    85,   193,   nil,   nil,   193,    35,   nil,   nil,   nil,
-   nil,    51,    85,   nil,   nil,    35,    35,    35,   nil,   nil,
-    78,    36,   nil,   nil,    29,   nil,     6,    71,    78,    35,
-    50,    35,   nil,   nil,   106,    12,   nil,    71,   nil,    46,
-    87,   nil,   nil,   nil,    85,    42,    12,   nil,   100,   100,
-   nil,   nil,   nil,   nil,   nil,   nil,    14,   nil,   nil,    14,
-   nil,   nil,   118,   nil,   nil,     6,    71,   nil,   nil,   207,
-   207,   207,   207,   nil,   nil,   159,     6,   159,    85,    84,
-   nil,   nil,   nil,   nil,   nil,   nil,   209,   209,    85,   nil,
-   nil,   nil,   nil,   nil,    31,   nil,   209,   nil,   209,   157,
-   nil,   157,   nil,   nil,   nil,   106,    75,    75,   152,   nil,
-   106,   152,    75,    75,   152,   nil,   152,    85,   nil,   nil,
-   nil,    46,   nil,    33,   nil,    25,   nil,   nil,   nil,   nil,
-    31,   207,   159,   102,   nil,    35,    31,   nil,   nil,   nil,
-     6,    71,   nil,   nil,   nil,   nil,   nil,     6,    71,   nil,
-   nil,   nil,   nil,   209,   157,    40,     9,     2,   nil,    22,
-   nil,    63,   nil,   113,   nil,   nil,     9,   171,   nil,    12,
-    12,    73,    63,    37,   nil,     6,   nil,   nil,   nil,   nil,
-    40,   nil,   nil,   nil,     6,   nil,   nil,   152,    35,   152,
-    78,   152,    70,   152,   nil,   nil,    35,   nil,    35,    85,
-     6,    78,   211,   nil,    35,   nil,   nil,   nil,   nil,     6,
-   nil,     6,   nil,    35,   nil,   152,   nil,    40,   nil,    46,
-   nil,   nil,   nil,     6,   nil,     6,    35,   nil,    84,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,
-    40,    14,    71,   nil,   nil,     6,   nil,   nil,    75,    35,
-   nil,    85,   nil,    71,    85,    35,   nil,   nil,   nil,   nil,
-    27,    75,    75,    75,    75,   nil,   nil,   159,   nil,   nil,
-    27,    27,   nil,   nil,    40,   nil,    27,    27,   nil,   nil,
-   nil,   nil,   nil,    14,   159,   nil,   nil,   159,   209,   157,
-    84,   157,   nil,   157,   nil,    85,   nil,   nil,   nil,   nil,
-     6,   nil,    40,    36,    24,   209,   nil,    82,   209,   157,
-   nil,   157,    35,   nil,    50,   nil,   nil,   nil,    35,    35,
-    24,   nil,    35,    14,   nil,   nil,     6,   nil,    35,    35,
-   nil,    54,   nil,   nil,    35,    35,   nil,    54,   nil,   nil,
-   nil,    14,     6,   nil,   nil,   nil,    40,   nil,   nil,   nil,
-   nil,   211,    54,    14,   211,   nil,   nil,   211,    75,   211,
-   159,    54,    54,    54,   nil,    54,    35,   nil,    80,    80,
-   118,   nil,   nil,   nil,   118,   157,    14,    35,   nil,   nil,
-   nil,   209,   157,   nil,   157,   nil,   157,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,
-    54,    40,    31,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   157,    35,    27,     6,     6,     6,    78,    35,    31,   nil,
-   nil,   nil,    35,    35,    61,    78,   nil,    14,    14,   nil,
-   211,   nil,   211,   nil,   211,   nil,   211,   nil,   nil,   nil,
-    14,   nil,   nil,   nil,   nil,    80,   118,    80,   nil,   nil,
-    80,    80,   nil,    35,   nil,   nil,   nil,    54,   211,   nil,
-   nil,   nil,    54,    54,    54,    54,    54,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,
-   nil,    38,    61,   nil,     6,    40,   nil,    14,   nil,   nil,
-   nil,   nil,   nil,    35,    14,     6,    80,   nil,   nil,   nil,
-   nil,    46,   nil,   nil,   154,   nil,    61,   154,   nil,   nil,
-   nil,    35,   nil,   nil,   nil,     6,     6,     6,     6,   nil,
-     6,    35,    71,    35,   155,   155,   155,     6,    71,   nil,
-   nil,     6,   nil,   nil,   nil,   nil,    35,    35,    61,   nil,
-   nil,   nil,    40,   nil,   nil,   nil,    35,    35,   nil,   nil,
-    54,    54,    54,    54,    54,    54,    54,   nil,   nil,   nil,
-   nil,    54,    54,    54,   nil,   154,   nil,   nil,   nil,     6,
-     6,     6,     6,   nil,   nil,    54,   nil,    80,   nil,    85,
-     6,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,    35,   nil,
-   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   155,   155,   155,   155,
-   nil,   155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,   nil,   nil,
-    61,   nil,   nil,    80,    35,   nil,    80,   nil,    80,   nil,
-    35,    35,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
-   155,   155,   155,   155,    54,    54,    54,   nil,   nil,   nil,
-   nil,   155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-    61,   nil,   nil,   nil,    61,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   154,    57,   nil,   154,   nil,   nil,
-   154,    61,   154,   nil,   nil,   nil,   nil,    61,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
-    57,    57,   nil,    57,   nil,   nil,    61,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   154,   nil,   154,   nil,   154,   nil,   154,
-   nil,   nil,   nil,    80,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    80,    80,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   154,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-    57,    57,    57,    57,    57,    80,   nil,   nil,    80,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,    80,
-   nil,   nil,   nil,   nil,    80,   nil,   nil,    80,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    80,   nil,   nil,   nil,    54,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-    61,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,    80,   nil,    57,    57,
-    57,    57,    57,    57,    57,   nil,   nil,   nil,   nil,    57,
-    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,    61,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   nil,    54,    54,    57,
-    57,    54,   nil,   nil,   nil,   nil,   nil,    54,    54,    57,
-   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,    57,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    57,    57,    57,    80,   nil,   nil,   nil,   nil,
-   nil,    61,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,
-    54,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,    54,    54,    61,   nil,    80,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,    54,    41,    41,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,    41,   nil,    41,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,    57,   nil,   nil,    54,
-   nil,   nil,   nil,    28,    57,   nil,   nil,   nil,   nil,    28,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,    54,
-    54,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,    54,    57,
-   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,   nil,
-   nil,    57,    57,   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,    41,    28,
-   nil,    41,    41,   nil,   nil,   nil,   nil,    41,    28,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-    41,   nil,   nil,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,   nil,    34,   nil,    57,    41,
-   nil,   nil,   nil,   nil,    57,   nil,   nil,    41,    41,    57,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,    34,   nil,    41,   nil,    41,   nil,   nil,    41,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,    28,   nil,    28,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,    28,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    41,   nil,
-    41,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    28,    57,    57,   nil,    28,   nil,   nil,   nil,
-   nil,    28,   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,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
-   nil,    34,   nil,    34,    57,    57,    34,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-    41,   nil,    41,    41,    41,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,    57,    41,   nil,    41,   nil,   nil,
-   nil,    57,   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,    41,    41,   nil,    34,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,    41,   nil,   nil,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,    39,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    28,
-   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,    41,    41,    41,   nil,   nil,    28,    41,   nil,
-    28,    41,    41,    41,    41,   nil,   nil,   nil,   nil,    41,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,   nil,   nil,    41,   nil,   nil,    41,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,    28,
-   nil,   nil,    41,    28,   nil,   nil,   nil,   nil,    34,    28,
-    28,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,    39,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,    34,    41,   nil,    34,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,
-    41,    41,   nil,    41,   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,    28,    28,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,    39,    66,   nil,   nil,
-    39,    39,    34,    66,    28,   nil,   nil,   nil,    34,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,    39,    34,    34,
-   nil,    28,   nil,   nil,    34,    34,   nil,    39,   nil,   nil,
-   nil,    66,    66,    66,    41,    41,   nil,    39,    39,   nil,
-   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-    39,   nil,    39,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    28,   nil,    41,   nil,   nil,    66,   nil,   nil,
-    66,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
-   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    28,    28,
-   nil,   nil,    28,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-    34,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,    28,    39,
-   nil,   nil,   nil,    34,   nil,    28,    66,    39,   nil,   nil,
-   nil,    28,    28,   nil,   nil,    39,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    39,   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,    34,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,    66,   nil,    39,   nil,   nil,   nil,    34,   nil,    39,
-    39,    66,    66,   nil,    34,    39,    39,   nil,   nil,   nil,
-    34,    34,   nil,   nil,    66,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,    67,    39,   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,    67,    67,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   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,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,    39,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-   nil,    66,   nil,   nil,    66,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,    39,
-   nil,   nil,    39,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   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,    39,   nil,   nil,   nil,    67,
-   nil,    39,    39,    67,   nil,   nil,   nil,    67,    67,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,    67,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    66,    66,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    66,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,    67,    67 ]
-
-racc_goto_pointer = [
-   nil,   116,    15,   124,   nil,    65,    -2,   101,    63,    14,
-   -88,   119,  -331,  -290,     0,  -531,  -588,  -667,  -713,   nil,
-  -391,  -175,    15,   127,   -47,  -175,    68,   112,  1791,  -189,
-   -81,    51,     4,  -177,  1930,   170,  -226,  -388,    -9,  2261,
-   -19,  1695,   -26,  -425,   nil,  -592,   -28,   nil,   nil,   123,
-  -216,    16,  -206,  -420,   839,  -356,   nil,  1217,   115,    65,
-    94,   700,   nil,   -35,    22,  -204,  2575,  2958,  -507,  -246,
-   -64,    -3,   nil,    27,  -273,   -52,    25,   nil,    -6,   107,
-   656,  -194,    94,  -452,    72,    49,  -349,  -262,  -453,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    82,   nil,
-  -490,  -192,   -46,   nil,   nil,   nil,  -325,  -698,   nil,  -646,
-   nil,   nil,   nil,  -334,   nil,    87,   nil,  -428,     2,   nil,
-   nil,  -549,    86,  -220,   105,   105,  -179,   106,   106,    98,
-  -583,  -194,  -584,  -776,   107,  -408,  -198,  -403,  -693,   nil,
-   nil,   nil,   nil,   nil,   nil,  -790,  -555,  -531,  -811,  -712,
-  -637,   nil,  -362,  -547,   244,   109,  -636,  -167,  -721,  -189,
-  -602,   nil,  -658,  -767,  -850,  -842,  -190,  -570,   111,  -386,
-  -347,   -11,  -202,   nil,   -75,   -73,   nil,  -477,  -528,   nil,
-  -286,  -787,  -354,  -500,  -630,   nil,   nil,   138,   -15,   137,
-   137,   141,  -279,  -128,   143,   143,   143,  -545,  -380,  -377,
-   nil,   nil,   154,  -499,  -324,   nil,   nil,  -439,  -508,  -168,
-  -630,  -119,  -503,  -706,   nil,  -705,  -871,   nil,   nil,  -108,
-  -462 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   309,     7,   360,   312,
-   nil,   nil,   nil,   nil,   554,   nil,   nil,   nil,   nil,   308,
-   310,   nil,   nil,   nil,   nil,    14,    15,    21,   242,   nil,
-   nil,    17,   nil,   436,   243,   340,   nil,   nil,   756,   241,
-   472,    24,   nil,   nil,   355,   nil,    25,    26,    27,   nil,
-   715,   nil,   nil,   nil,   329,   nil,    28,   326,   451,    35,
-   nil,   nil,    37,    40,    39,   nil,   238,   239,   585,   nil,
-   146,   459,   145,    91,   nil,   441,   107,    47,    50,   274,
-   300,   nil,   452,   nil,   453,   464,   673,   516,   298,   283,
-    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
-   nil,   nil,   284,    65,    66,    67,   nil,   nil,    68,   860,
-    69,    70,    71,   nil,    72,   nil,    73,   nil,   567,    74,
-    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   288,
-   276,   723,   851,   576,   861,   783,   612,   nil,   784,   785,
-  1026,   922,   600,   nil,   601,   nil,   nil,   602,   nil,   604,
-   nil,   830,   nil,   nil,   nil,   610,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   463,   nil,   nil,   693,   nil,   nil,   504,
-   nil,   nil,   nil,   nil,   nil,    90,    92,    94,   nil,   nil,
-   nil,   nil,   nil,   630,   nil,   nil,   nil,   nil,   nil,   nil,
-   103,   104,   nil,   nil,   893,   765,   599,   nil,   603,   901,
-   615,   617,   618,   933,   621,   622,   934,   625,   628,   nil,
-   303 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 150, :_reduce_1,
-  2, 148, :_reduce_2,
-  2, 149, :_reduce_3,
-  1, 151, :_reduce_none,
-  1, 151, :_reduce_none,
-  3, 151, :_reduce_6,
-  2, 151, :_reduce_none,
-  1, 154, :_reduce_none,
-  0, 158, :_reduce_9,
-  3, 154, :_reduce_10,
-  0, 160, :_reduce_11,
-  4, 157, :_reduce_12,
-  0, 165, :_reduce_13,
-  6, 159, :_reduce_14,
-  3, 159, :_reduce_15,
-  2, 161, :_reduce_16,
-  1, 166, :_reduce_none,
-  1, 166, :_reduce_none,
-  3, 166, :_reduce_19,
-  2, 166, :_reduce_20,
-  1, 167, :_reduce_none,
-  0, 168, :_reduce_22,
-  3, 167, :_reduce_23,
-  0, 179, :_reduce_24,
-  4, 156, :_reduce_25,
-  3, 156, :_reduce_26,
-  3, 156, :_reduce_27,
-  3, 156, :_reduce_28,
-  2, 156, :_reduce_29,
-  3, 156, :_reduce_30,
-  3, 156, :_reduce_31,
-  3, 156, :_reduce_32,
-  3, 156, :_reduce_33,
-  3, 156, :_reduce_34,
-  4, 156, :_reduce_35,
-  1, 156, :_reduce_none,
-  3, 156, :_reduce_37,
-  3, 156, :_reduce_38,
-  3, 156, :_reduce_39,
-  1, 156, :_reduce_none,
-  3, 172, :_reduce_41,
-  3, 172, :_reduce_42,
-  6, 172, :_reduce_43,
-  5, 172, :_reduce_44,
-  5, 172, :_reduce_45,
-  5, 172, :_reduce_46,
-  5, 172, :_reduce_47,
-  3, 172, :_reduce_48,
-  1, 180, :_reduce_49,
-  3, 180, :_reduce_50,
-  1, 180, :_reduce_none,
-  1, 178, :_reduce_none,
-  3, 178, :_reduce_53,
-  3, 178, :_reduce_54,
-  3, 178, :_reduce_55,
-  2, 178, :_reduce_56,
-  1, 178, :_reduce_none,
-  1, 171, :_reduce_58,
-  0, 191, :_reduce_59,
-  0, 192, :_reduce_60,
-  4, 189, :_reduce_61,
-  1, 174, :_reduce_none,
-  1, 174, :_reduce_none,
-  1, 194, :_reduce_none,
-  4, 194, :_reduce_65,
-  0, 202, :_reduce_66,
-  4, 199, :_reduce_67,
-  1, 201, :_reduce_68,
-  2, 193, :_reduce_69,
-  3, 193, :_reduce_70,
-  4, 193, :_reduce_71,
-  5, 193, :_reduce_72,
-  4, 193, :_reduce_73,
-  5, 193, :_reduce_74,
-  2, 193, :_reduce_75,
-  2, 193, :_reduce_76,
-  2, 193, :_reduce_77,
-  2, 193, :_reduce_78,
-  2, 193, :_reduce_79,
-  1, 173, :_reduce_none,
-  3, 173, :_reduce_81,
-  1, 207, :_reduce_none,
-  3, 207, :_reduce_83,
-  1, 206, :_reduce_84,
-  2, 206, :_reduce_85,
-  3, 206, :_reduce_86,
-  5, 206, :_reduce_87,
-  2, 206, :_reduce_88,
-  4, 206, :_reduce_89,
-  2, 206, :_reduce_90,
-  4, 206, :_reduce_91,
-  1, 206, :_reduce_92,
-  3, 206, :_reduce_93,
-  1, 210, :_reduce_none,
-  3, 210, :_reduce_95,
-  2, 209, :_reduce_96,
-  3, 209, :_reduce_97,
-  1, 212, :_reduce_98,
-  3, 212, :_reduce_99,
-  1, 211, :_reduce_100,
-  1, 211, :_reduce_101,
-  4, 211, :_reduce_102,
-  3, 211, :_reduce_103,
-  3, 211, :_reduce_104,
-  3, 211, :_reduce_105,
-  3, 211, :_reduce_106,
-  2, 211, :_reduce_107,
-  1, 211, :_reduce_108,
-  1, 175, :_reduce_109,
-  1, 175, :_reduce_110,
-  4, 175, :_reduce_111,
-  3, 175, :_reduce_112,
-  3, 175, :_reduce_113,
-  3, 175, :_reduce_114,
-  3, 175, :_reduce_115,
-  2, 175, :_reduce_116,
-  1, 175, :_reduce_117,
-  1, 215, :_reduce_118,
-  1, 215, :_reduce_none,
-  2, 216, :_reduce_120,
-  1, 216, :_reduce_121,
-  3, 216, :_reduce_122,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_126,
-  1, 217, :_reduce_none,
-  1, 169, :_reduce_128,
-  1, 169, :_reduce_none,
-  1, 170, :_reduce_130,
-  0, 221, :_reduce_131,
-  4, 170, :_reduce_132,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  3, 188, :_reduce_204,
-  3, 188, :_reduce_205,
-  6, 188, :_reduce_206,
-  5, 188, :_reduce_207,
-  5, 188, :_reduce_208,
-  5, 188, :_reduce_209,
-  5, 188, :_reduce_210,
-  4, 188, :_reduce_211,
-  3, 188, :_reduce_212,
-  3, 188, :_reduce_213,
-  3, 188, :_reduce_214,
-  3, 188, :_reduce_215,
-  3, 188, :_reduce_216,
-  3, 188, :_reduce_217,
-  3, 188, :_reduce_218,
-  3, 188, :_reduce_219,
-  3, 188, :_reduce_220,
-  4, 188, :_reduce_221,
-  2, 188, :_reduce_222,
-  2, 188, :_reduce_223,
-  3, 188, :_reduce_224,
-  3, 188, :_reduce_225,
-  3, 188, :_reduce_226,
-  3, 188, :_reduce_227,
-  1, 188, :_reduce_none,
-  3, 188, :_reduce_229,
-  3, 188, :_reduce_230,
-  3, 188, :_reduce_231,
-  3, 188, :_reduce_232,
-  3, 188, :_reduce_233,
-  2, 188, :_reduce_234,
-  2, 188, :_reduce_235,
-  3, 188, :_reduce_236,
-  3, 188, :_reduce_237,
-  3, 188, :_reduce_238,
-  3, 188, :_reduce_239,
-  3, 188, :_reduce_240,
-  6, 188, :_reduce_241,
-  1, 188, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  3, 224, :_reduce_247,
-  3, 224, :_reduce_248,
-  1, 227, :_reduce_249,
-  1, 228, :_reduce_none,
-  2, 228, :_reduce_251,
-  4, 228, :_reduce_252,
-  2, 228, :_reduce_253,
-  1, 222, :_reduce_none,
-  3, 222, :_reduce_255,
-  3, 232, :_reduce_256,
-  1, 233, :_reduce_none,
-  1, 233, :_reduce_none,
-  1, 183, :_reduce_none,
-  1, 183, :_reduce_none,
-  2, 183, :_reduce_261,
-  4, 183, :_reduce_262,
-  2, 183, :_reduce_263,
-  1, 205, :_reduce_264,
-  2, 205, :_reduce_265,
-  2, 205, :_reduce_266,
-  4, 205, :_reduce_267,
-  1, 205, :_reduce_268,
-  0, 236, :_reduce_269,
-  2, 198, :_reduce_270,
-  2, 235, :_reduce_271,
-  2, 234, :_reduce_272,
-  1, 234, :_reduce_none,
-  1, 229, :_reduce_274,
-  2, 229, :_reduce_275,
-  3, 229, :_reduce_276,
-  4, 229, :_reduce_277,
-  1, 177, :_reduce_278,
-  1, 177, :_reduce_279,
-  3, 176, :_reduce_280,
-  4, 176, :_reduce_281,
-  2, 176, :_reduce_282,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_293,
-  0, 271, :_reduce_294,
-  4, 225, :_reduce_295,
-  0, 272, :_reduce_296,
-  3, 225, :_reduce_297,
-  0, 273, :_reduce_298,
-  4, 225, :_reduce_299,
-  3, 225, :_reduce_300,
-  3, 225, :_reduce_301,
-  2, 225, :_reduce_302,
-  0, 274, :_reduce_303,
-  4, 225, :_reduce_304,
-  0, 275, :_reduce_305,
-  4, 225, :_reduce_306,
-  1, 225, :_reduce_307,
-  4, 225, :_reduce_308,
-  3, 225, :_reduce_309,
-  1, 225, :_reduce_310,
-  5, 225, :_reduce_311,
-  4, 225, :_reduce_312,
-  3, 225, :_reduce_313,
-  2, 225, :_reduce_314,
-  1, 225, :_reduce_none,
-  2, 225, :_reduce_316,
-  1, 225, :_reduce_317,
-  6, 225, :_reduce_318,
-  6, 225, :_reduce_319,
-  4, 225, :_reduce_320,
-  4, 225, :_reduce_321,
-  5, 225, :_reduce_322,
-  4, 225, :_reduce_323,
-  6, 225, :_reduce_324,
-  0, 276, :_reduce_325,
-  0, 277, :_reduce_326,
-  7, 225, :_reduce_327,
-  0, 278, :_reduce_328,
-  0, 279, :_reduce_329,
-  0, 280, :_reduce_330,
-  9, 225, :_reduce_331,
-  0, 281, :_reduce_332,
-  0, 282, :_reduce_333,
-  6, 225, :_reduce_334,
-  0, 283, :_reduce_335,
-  6, 225, :_reduce_336,
-  0, 284, :_reduce_337,
-  0, 285, :_reduce_338,
-  9, 225, :_reduce_339,
-  1, 225, :_reduce_340,
-  1, 225, :_reduce_341,
-  1, 225, :_reduce_342,
-  1, 225, :_reduce_343,
-  1, 182, :_reduce_344,
-  1, 246, :_reduce_none,
-  1, 252, :_reduce_none,
-  1, 255, :_reduce_none,
-  1, 257, :_reduce_none,
-  1, 258, :_reduce_none,
-  1, 259, :_reduce_none,
-  1, 261, :_reduce_none,
-  1, 263, :_reduce_352,
-  1, 266, :_reduce_353,
-  1, 267, :_reduce_354,
-  1, 286, :_reduce_none,
-  1, 287, :_reduce_none,
-  1, 288, :_reduce_none,
-  1, 289, :_reduce_none,
-  1, 290, :_reduce_none,
-  1, 163, :_reduce_none,
-  1, 291, :_reduce_none,
-  1, 247, :_reduce_none,
-  1, 204, :_reduce_none,
-  1, 253, :_reduce_none,
-  1, 253, :_reduce_none,
-  2, 253, :_reduce_none,
-  1, 190, :_reduce_none,
-  1, 190, :_reduce_none,
-  1, 254, :_reduce_none,
-  5, 254, :_reduce_370,
-  1, 256, :_reduce_none,
-  2, 256, :_reduce_372,
-  1, 262, :_reduce_none,
-  1, 262, :_reduce_374,
-  1, 292, :_reduce_none,
-  3, 292, :_reduce_376,
-  1, 295, :_reduce_377,
-  3, 295, :_reduce_378,
-  1, 294, :_reduce_379,
-  3, 294, :_reduce_380,
-  5, 294, :_reduce_381,
-  1, 294, :_reduce_382,
-  3, 294, :_reduce_383,
-  2, 296, :_reduce_384,
-  1, 296, :_reduce_385,
-  4, 297, :_reduce_386,
-  2, 297, :_reduce_387,
-  2, 297, :_reduce_388,
-  1, 297, :_reduce_389,
-  2, 302, :_reduce_390,
-  1, 302, :_reduce_none,
-  6, 303, :_reduce_392,
-  8, 303, :_reduce_393,
-  4, 303, :_reduce_394,
-  6, 303, :_reduce_395,
-  4, 303, :_reduce_396,
-  2, 303, :_reduce_397,
-  6, 303, :_reduce_398,
-  2, 303, :_reduce_399,
-  4, 303, :_reduce_400,
-  6, 303, :_reduce_401,
-  2, 303, :_reduce_402,
-  4, 303, :_reduce_403,
-  2, 303, :_reduce_404,
-  4, 303, :_reduce_405,
-  1, 303, :_reduce_406,
-  1, 307, :_reduce_407,
-  1, 307, :_reduce_408,
-  3, 308, :_reduce_409,
-  1, 308, :_reduce_410,
-  4, 308, :_reduce_411,
-  1, 309, :_reduce_none,
-  4, 309, :_reduce_413,
-  1, 310, :_reduce_414,
-  3, 310, :_reduce_415,
-  1, 311, :_reduce_416,
-  1, 311, :_reduce_none,
-  0, 315, :_reduce_418,
-  0, 316, :_reduce_419,
-  5, 251, :_reduce_420,
-  4, 313, :_reduce_421,
-  1, 313, :_reduce_422,
-  3, 314, :_reduce_423,
-  3, 314, :_reduce_424,
-  3, 318, :_reduce_425,
-  2, 195, :_reduce_426,
-  4, 195, :_reduce_427,
-  5, 195, :_reduce_428,
-  5, 195, :_reduce_429,
-  2, 250, :_reduce_430,
-  4, 250, :_reduce_431,
-  4, 250, :_reduce_432,
-  3, 250, :_reduce_433,
-  3, 250, :_reduce_434,
-  3, 250, :_reduce_435,
-  2, 250, :_reduce_436,
-  1, 250, :_reduce_437,
-  4, 250, :_reduce_438,
-  0, 321, :_reduce_439,
-  4, 249, :_reduce_440,
-  0, 322, :_reduce_441,
-  4, 249, :_reduce_442,
-  0, 323, :_reduce_443,
-  0, 324, :_reduce_444,
-  4, 200, :_reduce_445,
-  0, 326, :_reduce_446,
-  0, 327, :_reduce_447,
-  4, 319, :_reduce_448,
-  1, 325, :_reduce_449,
-  2, 325, :_reduce_450,
-  3, 325, :_reduce_451,
-  4, 325, :_reduce_452,
-  0, 329, :_reduce_453,
-  6, 260, :_reduce_454,
-  1, 328, :_reduce_none,
-  1, 328, :_reduce_none,
-  6, 162, :_reduce_457,
-  0, 162, :_reduce_458,
-  1, 330, :_reduce_459,
-  1, 330, :_reduce_none,
-  1, 330, :_reduce_none,
-  2, 331, :_reduce_462,
-  1, 331, :_reduce_none,
-  2, 164, :_reduce_464,
-  1, 164, :_reduce_none,
-  1, 237, :_reduce_466,
-  1, 237, :_reduce_none,
-  1, 238, :_reduce_468,
-  1, 333, :_reduce_469,
-  1, 333, :_reduce_none,
-  2, 333, :_reduce_471,
-  3, 334, :_reduce_472,
-  1, 334, :_reduce_473,
-  3, 239, :_reduce_474,
-  3, 240, :_reduce_475,
-  3, 241, :_reduce_476,
-  3, 241, :_reduce_477,
-  1, 338, :_reduce_478,
-  3, 338, :_reduce_479,
-  1, 339, :_reduce_none,
-  2, 339, :_reduce_481,
-  3, 243, :_reduce_482,
-  3, 243, :_reduce_483,
-  1, 341, :_reduce_484,
-  3, 341, :_reduce_485,
-  3, 242, :_reduce_486,
-  3, 242, :_reduce_487,
-  3, 244, :_reduce_488,
-  3, 244, :_reduce_489,
-  1, 342, :_reduce_490,
-  3, 342, :_reduce_491,
-  1, 343, :_reduce_492,
-  3, 343, :_reduce_493,
-  1, 335, :_reduce_494,
-  2, 335, :_reduce_495,
-  1, 336, :_reduce_496,
-  2, 336, :_reduce_497,
-  1, 337, :_reduce_498,
-  2, 337, :_reduce_499,
-  1, 340, :_reduce_500,
-  0, 345, :_reduce_501,
-  3, 340, :_reduce_502,
-  0, 346, :_reduce_503,
-  4, 340, :_reduce_504,
-  1, 344, :_reduce_505,
-  1, 344, :_reduce_506,
-  1, 344, :_reduce_507,
-  1, 344, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  2, 347, :_reduce_511,
-  1, 347, :_reduce_512,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  3, 348, :_reduce_517,
-  1, 332, :_reduce_none,
-  2, 332, :_reduce_519,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 214, :_reduce_529,
-  1, 214, :_reduce_530,
-  1, 214, :_reduce_531,
-  1, 214, :_reduce_532,
-  1, 214, :_reduce_533,
-  1, 214, :_reduce_534,
-  1, 214, :_reduce_535,
-  1, 245, :_reduce_536,
-  1, 245, :_reduce_537,
-  1, 181, :_reduce_538,
-  1, 181, :_reduce_539,
-  1, 186, :_reduce_540,
-  1, 186, :_reduce_541,
-  0, 350, :_reduce_542,
-  4, 264, :_reduce_543,
-  1, 264, :_reduce_544,
-  3, 268, :_reduce_545,
-  0, 352, :_reduce_546,
-  3, 268, :_reduce_547,
-  4, 351, :_reduce_548,
-  2, 351, :_reduce_549,
-  2, 351, :_reduce_550,
-  1, 351, :_reduce_none,
-  2, 354, :_reduce_552,
-  0, 354, :_reduce_553,
-  6, 317, :_reduce_554,
-  8, 317, :_reduce_555,
-  4, 317, :_reduce_556,
-  6, 317, :_reduce_557,
-  4, 317, :_reduce_558,
-  6, 317, :_reduce_559,
-  2, 317, :_reduce_560,
-  4, 317, :_reduce_561,
-  6, 317, :_reduce_562,
-  2, 317, :_reduce_563,
-  4, 317, :_reduce_564,
-  2, 317, :_reduce_565,
-  4, 317, :_reduce_566,
-  1, 317, :_reduce_567,
-  0, 317, :_reduce_568,
-  1, 312, :_reduce_569,
-  1, 312, :_reduce_570,
-  1, 312, :_reduce_571,
-  1, 312, :_reduce_572,
-  1, 293, :_reduce_none,
-  1, 293, :_reduce_574,
-  1, 356, :_reduce_none,
-  1, 357, :_reduce_none,
-  3, 357, :_reduce_577,
-  1, 304, :_reduce_578,
-  3, 304, :_reduce_579,
-  1, 358, :_reduce_none,
-  2, 359, :_reduce_581,
-  1, 359, :_reduce_582,
-  2, 360, :_reduce_583,
-  1, 360, :_reduce_584,
-  1, 298, :_reduce_none,
-  3, 298, :_reduce_586,
-  1, 353, :_reduce_none,
-  3, 353, :_reduce_588,
-  1, 361, :_reduce_none,
-  1, 361, :_reduce_none,
-  2, 299, :_reduce_591,
-  1, 299, :_reduce_592,
-  3, 362, :_reduce_593,
-  3, 363, :_reduce_594,
-  1, 305, :_reduce_595,
-  3, 305, :_reduce_596,
-  1, 355, :_reduce_597,
-  3, 355, :_reduce_598,
-  1, 364, :_reduce_none,
-  1, 364, :_reduce_none,
-  2, 306, :_reduce_601,
-  1, 306, :_reduce_602,
-  1, 365, :_reduce_none,
-  1, 365, :_reduce_none,
-  2, 301, :_reduce_605,
-  2, 300, :_reduce_606,
-  0, 300, :_reduce_607,
-  1, 269, :_reduce_none,
-  0, 366, :_reduce_609,
-  4, 269, :_reduce_610,
-  1, 248, :_reduce_611,
-  2, 248, :_reduce_none,
-  1, 231, :_reduce_none,
-  3, 231, :_reduce_614,
-  3, 367, :_reduce_615,
-  2, 367, :_reduce_616,
-  4, 367, :_reduce_617,
-  2, 367, :_reduce_618,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 196, :_reduce_none,
-  1, 196, :_reduce_none,
-  0, 152, :_reduce_none,
-  1, 152, :_reduce_none,
-  0, 187, :_reduce_none,
-  1, 187, :_reduce_none,
-  2, 208, :_reduce_none,
-  2, 184, :_reduce_none,
-  0, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 265, :_reduce_644,
-  1, 265, :_reduce_none,
-  1, 155, :_reduce_none,
-  2, 155, :_reduce_647,
-  0, 153, :_reduce_648 ]
-
-racc_reduce_n = 649
-
-racc_shift_n = 1094
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLABEL_END => 141,
-  :tLONELY => 142,
-  :tLOWEST => 143,
-  :tEQL => 144,
-  :tBDOT2 => 145,
-  :tBDOT3 => 146 }
-
-racc_nt_base = 147
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLABEL_END",
-  "tLONELY",
-  "tLOWEST",
-  "tEQL",
-  "tBDOT2",
-  "tBDOT3",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "backref",
-  "opt_nl",
-  "arg",
-  "expr_value_do",
-  "do",
-  "@7",
-  "@8",
-  "command",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@9",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "fname",
-  "op",
-  "reswords",
-  "symbol",
-  "@10",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@11",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "k_def",
-  "f_arglist",
-  "singleton",
-  "dot_or_colon",
-  "@12",
-  "@13",
-  "@14",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "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",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "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",
-  "@36",
-  "@37",
-  "ssym",
-  "dsym",
-  "sym",
-  "@38",
-  "args_tail",
-  "@39",
-  "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",
-  "@40",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 12
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 40 omitted
-
-def _reduce_41(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_42(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-def _reduce_50(val, _values, result)
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-
-    result
-end
-
-# reduce 51 omitted
-
-# reduce 52 omitted
-
-def _reduce_53(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_54(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_56(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-# reduce 57 omitted
-
-def _reduce_58(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_61(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 62 omitted
-
-# reduce 63 omitted
-
-# reduce 64 omitted
-
-def _reduce_65(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_66(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_67(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_75(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_76(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_77(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_78(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_79(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 80 omitted
-
-def _reduce_81(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 82 omitted
-
-def _reduce_83(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_93(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 94 omitted
-
-def _reduce_95(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_96(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_107(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_108(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_118(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 119 omitted
-
-def _reduce_120(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_122(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 123 omitted
-
-# reduce 124 omitted
-
-# reduce 125 omitted
-
-def _reduce_126(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 127 omitted
-
-def _reduce_128(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 129 omitted
-
-def _reduce_130(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_132(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-# reduce 203 omitted
-
-def _reduce_204(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_205(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_206(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_207(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_208(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_209(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_210(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_211(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_212(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_213(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_214(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_215(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_216(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_217(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_227(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 228 omitted
-
-def _reduce_229(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_230(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_241(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-# reduce 242 omitted
-
-# reduce 243 omitted
-
-# reduce 244 omitted
-
-# reduce 245 omitted
-
-# reduce 246 omitted
-
-def _reduce_247(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_248(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_249(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 250 omitted
-
-def _reduce_251(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_252(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_253(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 254 omitted
-
-def _reduce_255(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_256(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-# reduce 257 omitted
-
-# reduce 258 omitted
-
-# reduce 259 omitted
-
-# reduce 260 omitted
-
-def _reduce_261(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_262(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_263(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_264(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_265(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_266(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_267(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_268(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_271(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_272(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 273 omitted
-
-def _reduce_274(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_275(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_276(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_280(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_281(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_282(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 283 omitted
-
-# reduce 284 omitted
-
-# reduce 285 omitted
-
-# reduce 286 omitted
-
-# reduce 287 omitted
-
-# reduce 288 omitted
-
-# reduce 289 omitted
-
-# reduce 290 omitted
-
-# reduce 291 omitted
-
-# reduce 292 omitted
-
-def _reduce_293(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_294(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_295(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_297(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_298(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_302(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_303(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_305(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_307(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_308(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_309(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_310(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_311(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_312(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_313(val, _values, result)
-                      debug 20
-
-    result
-end
-
-def _reduce_314(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 315 omitted
-
-def _reduce_316(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_317(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_327(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-
-    result
-end
-
-def _reduce_339(val, _values, result)
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_340(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_344(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 345 omitted
-
-# reduce 346 omitted
-
-# reduce 347 omitted
-
-# reduce 348 omitted
-
-# reduce 349 omitted
-
-# reduce 350 omitted
-
-# reduce 351 omitted
-
-def _reduce_352(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_354(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 355 omitted
-
-# reduce 356 omitted
-
-# reduce 357 omitted
-
-# reduce 358 omitted
-
-# reduce 359 omitted
-
-# reduce 360 omitted
-
-# reduce 361 omitted
-
-# reduce 362 omitted
-
-# reduce 363 omitted
-
-# reduce 364 omitted
-
-# reduce 365 omitted
-
-# reduce 366 omitted
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-# reduce 369 omitted
-
-def _reduce_370(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 371 omitted
-
-def _reduce_372(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 373 omitted
-
-def _reduce_374(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 375 omitted
-
-def _reduce_376(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_377(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_378(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_379(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_380(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_381(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_382(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_383(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_384(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_385(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-def _reduce_386(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_387(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_388(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_389(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_390(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 391 omitted
-
-def _reduce_392(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_393(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_394(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_395(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_396(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_397(val, _values, result)
-                      result = args(val) << nil
-
-    result
-end
-
-def _reduce_398(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_403(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_406(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_407(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_408(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_409(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_410(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_411(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 412 omitted
-
-def _reduce_413(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_416(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 417 omitted
-
-def _reduce_418(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_433(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_438(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_439(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_442(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_443(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_444(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_445(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_446(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_447(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_454(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 455 omitted
-
-# reduce 456 omitted
-
-def _reduce_457(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_458(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_459(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 460 omitted
-
-# reduce 461 omitted
-
-def _reduce_462(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 463 omitted
-
-def _reduce_464(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 465 omitted
-
-def _reduce_466(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 467 omitted
-
-def _reduce_468(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_469(val, _values, result)
-                      debug 37
-
-    result
-end
-
-# reduce 470 omitted
-
-def _reduce_471(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_472(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_473(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_476(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_477(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_479(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 480 omitted
-
-def _reduce_481(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_482(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_483(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_485(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_486(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_487(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_488(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_489(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_491(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_492(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_495(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_497(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_498(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_499(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_500(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_501(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_502(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_503(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_504(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_505(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_506(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_507(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 508 omitted
-
-# reduce 509 omitted
-
-# reduce 510 omitted
-
-def _reduce_511(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_512(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 513 omitted
-
-# reduce 514 omitted
-
-# reduce 515 omitted
-
-# reduce 516 omitted
-
-def _reduce_517(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-
-    result
-end
-
-# reduce 518 omitted
-
-def _reduce_519(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 520 omitted
-
-# reduce 521 omitted
-
-# reduce 522 omitted
-
-# reduce 523 omitted
-
-# reduce 524 omitted
-
-# reduce 525 omitted
-
-# reduce 526 omitted
-
-# reduce 527 omitted
-
-# reduce 528 omitted
-
-def _reduce_529(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_530(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_531(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_532(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_533(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_534(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_535(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-
-    result
-end
-
-def _reduce_537(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_538(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 40
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_544(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_545(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_546(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_547(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_548(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_550(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 551 omitted
-
-def _reduce_552(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_553(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_554(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_555(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_556(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_560(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_561(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_562(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_563(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_565(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_566(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_567(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_568(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_569(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_570(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_572(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 573 omitted
-
-def _reduce_574(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 575 omitted
-
-# reduce 576 omitted
-
-def _reduce_577(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_578(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_579(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 580 omitted
-
-def _reduce_581(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_582(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_583(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_584(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 585 omitted
-
-def _reduce_586(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 587 omitted
-
-def _reduce_588(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 589 omitted
-
-# reduce 590 omitted
-
-def _reduce_591(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_592(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_593(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-
-    result
-end
-
-def _reduce_595(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_596(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_597(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_598(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 599 omitted
-
-# reduce 600 omitted
-
-def _reduce_601(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_602(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 603 omitted
-
-# reduce 604 omitted
-
-def _reduce_605(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_606(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_607(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 608 omitted
-
-def _reduce_609(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_610(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_611(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 612 omitted
-
-# reduce 613 omitted
-
-def _reduce_614(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_615(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_616(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_617(val, _values, result)
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-
-    result
-end
-
-def _reduce_618(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 619 omitted
-
-# reduce 620 omitted
-
-# reduce 621 omitted
-
-# reduce 622 omitted
-
-# reduce 623 omitted
-
-# reduce 624 omitted
-
-# reduce 625 omitted
-
-# reduce 626 omitted
-
-# reduce 627 omitted
-
-# reduce 628 omitted
-
-# reduce 629 omitted
-
-# reduce 630 omitted
-
-# reduce 631 omitted
-
-# reduce 632 omitted
-
-# reduce 633 omitted
-
-# reduce 634 omitted
-
-# reduce 635 omitted
-
-# reduce 636 omitted
-
-# reduce 637 omitted
-
-# reduce 638 omitted
-
-# reduce 639 omitted
-
-# reduce 640 omitted
-
-# reduce 641 omitted
-
-# reduce 642 omitted
-
-# reduce 643 omitted
-
-def _reduce_644(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 645 omitted
-
-# reduce 646 omitted
-
-def _reduce_647(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_648(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby24Parser
diff -pruN 3.20.0-2/lib/ruby24_parser.y 3.21.1-1/lib/ruby24_parser.y
--- 3.20.0-2/lib/ruby24_parser.y	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby24_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,2721 +0,0 @@
-# -*- racc -*-
-
-class Ruby24Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-       tLONELY
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 12
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_call kRESCUE_MOD stmt
-                    {
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg                                   =tLBRACE_ARG
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 20
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def fname
-                    {
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-                    }
-                    f_arglist bodystmt k_end
-                    {
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fname
-                    {
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                    }
-                    f_arglist bodystmt k_end
-                    {
-
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA
-                    {
-                      result = args(val) << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    compstmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 37
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 40
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-       f_arglist: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn tEQL arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                    }
-
-     f_block_opt: f_arg_asgn tEQL primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-                | tLONELY # TODO: rename tANDDOT?
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-        rbracket: opt_nl tRBRACK
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby25_parser.rb 3.21.1-1/lib/ruby25_parser.rb
--- 3.20.0-2/lib/ruby25_parser.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby25_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,11231 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby25Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -524,   631,   568,   224,   225,  -109,   -95,  -524,  -524,  -524,
-  -110,   568,  -524,  -524,  -524,  -103,  -524,  -117,   568,   224,
-   225,   -81,   568,   647,  -524,   285,  -524,  -524,  -524,  -116,
-   234,  -109,  -538,   650,     3,  -539,  -524,  -524,   230,  -524,
-  -524,  -524,  -524,  -524,  -112,   280,   729,   224,   225,   728,
-  -110,    95,  -105,  -114,   568,   887,   740,  -104,   729,    96,
-   126,   731,   633,   632,   629,  -111,   235,  -524,  -524,  -524,
-  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,
-  -524,  -117,  -103,  -524,  -524,  -524,   646,  -524,  -524,  -109,
-   282,  -524,  -110,   235,  -524,  -524,   649,  -524,   285,  -524,
-   221,  -524,   231,  -524,  -524,  -524,  -524,  -524,  -524,  -524,
-  -100,  -524,   287,  -524,   222,  -101,   130,  -103,  -116,  -105,
-  -103,   129,  -108,  -622,  -104,   130,  -524,  -524,  -524,  -524,
-   129,  -524,   130,  -524,  -107,  -103,   130,   129,  -524,  -527,
-  -112,   129,  -524,  -114,  -524,  -109,  -527,  -527,  -527,  -103,
-  -109,  -527,  -527,  -527,  -105,  -527,   130,  -105,  -105,  -104,
-   886,   129,  -104,  -527,  -110,  -527,  -527,  -527,   130,  -110,
-  -102,   949,  -105,   129,  -111,  -527,  -527,  -104,  -527,  -527,
-  -527,  -527,  -527,  -113,  -102,   287,  -115,  -113,   285,  -115,
-  -524,   832,   224,   225,   832,  -117,  -527,  -524,  -534,   232,
-  -117,   224,   225,  -527,   223,  -534,  -527,  -527,  -527,  -527,
-  -527,  -527,  -527,  -527,  -527,  -527,  -527,  -527,  -527,  -527,
-   108,   109,  -527,  -527,  -527,   831,  -527,  -527,   831,   849,
-  -527,   285,  -116,  -527,  -527,   850,  -527,  -116,  -527,   226,
-  -527,  -108,  -527,  -527,  -527,  -527,  -527,  -527,  -527,   477,
-  -527,  -102,  -527,  -622,  -112,  -623,  -117,  -114,   631,  -112,
-   631,  -622,  -114,   275,  -623,  -527,  -527,  -527,  -527,   232,
-  -527,  -301,  -527,   337,   547,   287,   823,  -527,  -301,  -301,
-  -301,  -527,   235,  -527,  -301,  -301,  -102,  -301,  -111,  -102,
-   616,   235,  -104,  -111,  -106,  -538,   282,  -113,   110,   111,
-  -115,   619,  -113,   824,  -102,  -115,  -117,  -301,  -301,   668,
-  -301,  -301,  -301,  -301,  -301,   108,   109,  -533,   287,   633,
-   632,   633,   632,   338,  -533,   631,  -117,   130,   794,   235,
-   796,  -116,   129,  -112,   627,   626,  -619,  -100,  -301,  -301,
-  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,  -301,  -109,   370,  -301,  -301,  -301,   230,   674,   752,
-  -114,   669,  -301,   753,   229,  -301,  -112,  -620,   620,   863,
-  -301,   575,  -301,   227,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,   616,  -301,  -344,  -301,   395,   633,   632,   629,  -524,
-  -344,  -539,   619,   110,   111,   547,  -524,  -301,  -301,  -344,
-  -106,  -619,  -301,  -626,   920,  -524,   702,   810,   398,  -301,
-  -626,  -626,  -626,  -301,   401,  -115,  -626,  -626,  -114,  -626,
-  -527,   231,  -535,  -619,   404,   627,   626,  -527,  -626,  -535,
-   631,   255,  -620,  -101,   230,   421,  -527,  -107,   631,  -626,
-  -626,   474,  -626,  -626,  -626,  -626,  -626,  -344,  -110,  -536,
-   475,  -532,  -116,  -524,  -620,  -529,  -536,   631,  -532,   620,
-   426,  -111,  -529,   252,  -111,  -536,   729,   254,   253,   731,
-  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,  -626,  -626,  -527,   476,  -626,  -626,  -626,  -537,
-   675,   633,   632,   634,  -626,   478,  -537,  -626,   231,   633,
-   632,   639,  -626,   631,  -626,  -537,  -626,  -626,  -626,  -626,
-  -626,  -626,  -626,  -536,  -626,  -626,  -626,   668,   633,   632,
-   644,   479,   611,   234,   608,   607,   606,   616,   609,  -626,
-  -626,   508,  -104,  -530,  -626,   517,   230,  -531,   619,   593,
-  -530,  -626,  -626,   540,  -531,  -626,   594,  -113,   520,  -626,
-  -626,  -626,   538,  -537,  -626,  -626,  -626,   255,  -626,  -103,
-   614,   272,   273,   522,   633,   632,   651,  -626,  -626,  -626,
-  -626,   627,   626,   729,  -112,  -626,   731,   235,  -626,  -626,
-  1051,  -626,  -626,  -626,  -626,  -626,   130,   -80,  -292,   252,
-   235,   129,   230,   254,   253,  -292,   271,   270,   631,   550,
-   231,   636,   130,   533,  -292,   620,   534,   129,   475,  -626,
-  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,  -626,   859,   863,  -626,  -626,  -626,  -626,   825,
-  -626,   224,   225,  -626,   669,  -626,  -626,  -626,   541,  -626,
-  -622,  -626,   292,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,  -292,  -626,  -626,  -626,   231,   235,   423,   633,
-   632,   130,  -626,   425,   424,   282,   129,   230,  -626,  -626,
-  -626,  -626,   810,  -626,   579,  -626,  -105,   130,   627,   626,
-  -626,  -301,   129,   577,  -626,   544,  -113,   548,  -301,  -301,
-  -301,  -114,  -626,  -301,  -301,  -301,   611,  -301,   608,   607,
-   606,   616,   609,   230,   859,   863,   130,  -301,  -301,  -301,
-   661,   129,   619,   255,  -102,   235,   575,  -301,  -301,   659,
-  -301,  -301,  -301,  -301,  -301,   414,   580,   581,   638,  -111,
-   642,   231,   645,   648,   614,   597,   611,   655,   608,   607,
-   606,  -274,   609,   624,   623,   627,   626,   657,  -301,  -301,
-  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,  -301,   658,   662,  -301,  -301,  -301,   231,   826,  -301,
-   235,   666,  -301,   667,   782,  -301,  -301,   282,  -301,   620,
-  -301,   679,  -301,   786,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,   255,  -301,   255,  -301,   611,   255,   608,   607,   606,
-   616,   609,   133,   134,   135,   136,   137,  -301,  -301,  -301,
-  -301,   619,  -301,  -301,  -301,   255,   686,   235,   235,  -301,
-  -301,  -301,  -301,  -301,   421,  -115,  -301,  -301,   235,  -301,
-  -302,   230,   -95,   614,   706,   235,   553,  -302,   755,   717,
-   722,  -302,   624,   623,   627,   626,  -302,   757,  -302,  -301,
-  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -302,  -301,  -301,
-   725,   235,   732,  -623,   733,   522,  -301,  -301,   736,   725,
-   611,  -623,   608,   607,   606,  -301,   609,   725,   620,   575,
-  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,  -301,  -301,  -301,  -302,   231,  -301,  -301,  -301,   725,
-   674,   759,   764,   770,  -301,  -302,   773,  -301,   782,   774,
-   776,   255,  -301,   778,  -301,  -301,  -301,  -301,  -301,  -301,
-  -301,  -301,  -301,  -301,  -301,   611,  -301,   608,   607,   606,
-   616,   609,   611,   780,   608,   607,   606,   789,   609,  -301,
-  -301,   619,  -301,   252,  -301,  -626,   790,   254,   253,   250,
-   251,  -301,  -626,  -626,  -626,  -301,   791,  -115,  -626,  -626,
-   797,  -626,   230,   614,   133,   134,   135,   136,   137,  1035,
-  -626,   798,   624,   623,   627,   626,   230,  -275,   757,   811,
-   508,  -626,  -626,  1041,  -626,  -626,  -626,  -626,  -626,   909,
-   910,   230,  1039,   911,   124,   125,   508,   235,  1035,   828,
-   611,   275,   608,   607,   606,   837,   609,   757,   620,   839,
-   520,   522,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,  -626,  -626,  -626,  -626,  -626,   231,   717,  -626,  -626,
-  -626,   611,   675,   608,   607,   606,  -626,   609,   782,  -626,
-   231,   235,   282,   255,  -626,   282,  -626,   786,  -626,  -626,
-  -626,  -626,  -626,  -626,  -626,   231,  -626,  -626,  -626,   265,
-   266,  1016,   717,   608,   607,   606,   255,   609,   863,   782,
-   725,  -626,  -626,   235,  -626,   252,  -626,   258,   786,   254,
-   253,   250,   251,  -626,  -437,   235,   904,  -626,   905,  -113,
-   235,  -437,  -437,  -437,   914,  -276,  -437,  -437,  -437,   611,
-  -437,   608,   607,   606,   616,   609,   255,   235,   919,  -437,
-  -437,  -437,   936,   717,  -274,   619,   941,   725,   725,   725,
-  -437,  -437,   235,  -437,  -437,  -437,  -437,  -437,   611,   725,
-   608,   607,   606,   725,   609,   235,   963,   614,   252,   235,
-   773,   966,   254,   253,   250,   251,   624,   623,   627,   626,
-   968,  -437,  -437,  -437,  -437,  -437,  -437,  -437,  -437,  -437,
-  -437,  -437,  -437,  -437,  -437,   970,   782,  -437,  -437,  -437,
-   972,   972,  -437,   235,   282,  -437,   979,  -277,  -437,  -437,
-   980,  -437,   620,  -437,   773,  -437,   983,  -437,  -437,  -437,
-  -437,  -437,  -437,  -437,   986,  -437,  -437,  -437,   611,   988,
-   608,   607,   606,   616,   609,   133,   134,   135,   136,   137,
-  -437,  -437,   990,  -437,   619,  -437,  -310,   133,   134,   135,
-   136,   137,  -437,  -310,  -310,  -310,  -437,   235,  -310,  -310,
-  -310,   992,  -310,   255,   725,   611,   614,   608,   607,   606,
-   764,   609,  -310,  -310,  1012,   624,   623,   627,   626,   265,
-   266,  1013,  -310,  -310,  1022,  -310,  -310,  -310,  -310,  -310,
-  1016,  1023,   608,   607,   606,   252,   609,   258,  1033,   254,
-   253,   250,   251,   782,  1036,   256,   849,   257,  1042,  1052,
-   972,   620,   972,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
-  -310,  -310,  -310,  -310,  -310,  -310,  -310,   972,   773,  -310,
-  -310,  -310,  1059,  1061,  -310,  1063,   292,  -310,  1065,  1065,
-  -310,  -310,   722,  -310,   725,  -310,   725,  -310,  1023,  -310,
-  -310,  -310,  -310,  -310,  -310,  -310,  -623,  -310,  -622,  -310,
-   611,   235,   608,   607,   606,   616,   609,   972,  1087,  1065,
-  1065,  1065,  -310,  -310,  1065,  -310,   619,  -310,  -293,   nil,
-   nil,   nil,   nil,   nil,  -310,  -293,  -293,  -293,  -310,   nil,
-  -293,  -293,  -293,   nil,  -293,   255,   nil,   nil,   614,   nil,
-   nil,   nil,   nil,   nil,  -293,  -293,  -293,   624,   623,   627,
-   626,   265,   266,   nil,  -293,  -293,   nil,  -293,  -293,  -293,
-  -293,  -293,   nil,   nil,   nil,   nil,   nil,   252,   nil,   258,
-   nil,   254,   253,   250,   251,   nil,   nil,   256,   nil,   257,
-   nil,   nil,   nil,   620,   nil,  -293,  -293,  -293,  -293,  -293,
-  -293,  -293,  -293,  -293,  -293,  -293,  -293,  -293,  -293,   nil,
-   nil,  -293,  -293,  -293,   nil,   nil,  -293,   nil,   nil,  -293,
-   nil,   nil,  -293,  -293,   nil,  -293,   nil,  -293,   nil,  -293,
-   nil,  -293,  -293,  -293,  -293,  -293,  -293,  -293,   nil,  -293,
-   nil,  -293,   611,   nil,   608,   607,   606,   616,   609,   nil,
-   nil,   nil,   nil,   nil,  -293,  -293,  -293,  -293,   619,  -293,
-  -648,  -293,   nil,   nil,   nil,   nil,  -293,  -648,  -648,  -648,
-  -293,   nil,  -648,  -648,  -648,   nil,  -648,   255,   nil,   nil,
-   614,   nil,   nil,   nil,   nil,  -648,  -648,  -648,   nil,   624,
-   623,   627,   626,   265,   266,   nil,  -648,  -648,   nil,  -648,
-  -648,  -648,  -648,  -648,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   258,   nil,   254,   253,   250,   251,   235,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   620,   nil,  -648,  -648,  -648,
-  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,
-  -648,   nil,   nil,  -648,  -648,  -648,   nil,   nil,  -648,   nil,
-   282,  -648,   nil,   nil,  -648,  -648,   nil,  -648,   nil,  -648,
-   nil,  -648,   nil,  -648,  -648,  -648,  -648,  -648,  -648,  -648,
-   nil,  -648,  -648,  -648,   611,   nil,   608,   607,   606,   616,
-   609,   nil,   nil,   nil,   nil,   nil,  -648,  -648,   nil,  -648,
-   619,  -648,  -627,   nil,   nil,   nil,   nil,   nil,  -648,  -627,
-  -627,  -627,  -648,   nil,  -627,  -627,  -627,   nil,  -627,   255,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,  -627,  -627,  -627,
-  -627,   624,   623,   627,   626,   265,   266,   nil,  -627,  -627,
-   nil,  -627,  -627,  -627,  -627,  -627,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   nil,   254,   253,   250,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,   nil,  -627,
-  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,
-  -627,  -627,  -627,   nil,   nil,  -627,  -627,  -627,   nil,   nil,
-  -627,   nil,   nil,  -627,   nil,   nil,  -627,  -627,   nil,  -627,
-   nil,  -627,   nil,  -627,   nil,  -627,  -627,  -627,  -627,  -627,
-  -627,  -627,   nil,  -627,  -627,  -627,   611,   nil,   608,   607,
-   606,   616,   609,   nil,   nil,   nil,   nil,   nil,  -627,  -627,
-  -627,  -627,   619,  -627,  -628,  -627,   nil,   nil,   nil,   nil,
-  -627,  -628,  -628,  -628,  -627,   nil,  -628,  -628,  -628,   nil,
-  -628,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,  -628,
-  -628,  -628,  -628,   nil,   nil,   627,   626,   nil,   nil,   nil,
-  -628,  -628,   nil,  -628,  -628,  -628,  -628,  -628,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,
-   nil,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,
-  -628,  -628,  -628,  -628,  -628,   nil,   nil,  -628,  -628,  -628,
-   nil,   nil,  -628,   nil,   nil,  -628,   nil,   nil,  -628,  -628,
-   nil,  -628,   nil,  -628,   nil,  -628,   nil,  -628,  -628,  -628,
-  -628,  -628,  -628,  -628,   nil,  -628,  -628,  -628,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  -628,  -628,  -628,  -628,   nil,  -628,  -648,  -628,   nil,   nil,
-   nil,   nil,  -628,  -648,  -648,  -648,  -628,   nil,  -648,  -648,
-  -648,   nil,  -648,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  -648,  -648,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -648,  -648,   nil,  -648,  -648,  -648,  -648,  -648,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   506,   458,   nil,
-   nil,   507,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,  -648,   nil,   nil,   175,   176,   161,
-   162,  -648,   nil,   nil,   nil,   nil,   282,  -648,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,  -648,  -648,
-   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -648,   nil,   nil,   nil,   nil,  -648,   nil,   nil,
-   170,   nil,   nil,   nil,  -648,   nil,   nil,   nil,  -648,     8,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   663,    11,    49,    10,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,  -249,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   663,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   235,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,  -649,  -649,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   268,   263,   264,   nil,  -649,  -649,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,     8,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,    10,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,  -649,  -649,  -649,  -649,
-   272,   273,   nil,   nil,  -649,  -649,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   nil,   nil,   263,   264,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
-   272,   273,   267,   nil,   263,   264,   nil,   nil,   nil,   nil,
-   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
-    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,    10,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
-   nil,   nil,   nil,   nil,   611,   nil,   608,   607,   606,   616,
-   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
-   619,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   319,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   627,   626,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   620,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
-   nil,   nil,   nil,   611,   nil,   608,   607,   606,   616,   609,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,   619,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   614,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   627,   626,   nil,    96,   106,   nil,   nil,   nil,
-   336,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   620,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   130,   nil,   nil,   nil,   nil,   129,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
-   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,   607,   606,
-   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   364,
-   nil,   619,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   627,   626,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   620,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   414,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   431,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   431,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   235,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   235,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,   nil,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,
-   607,   606,   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   619,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   627,   626,   nil,    96,
-   106,   nil,   nil,   nil,   536,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   620,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   334,   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,   607,
-   606,   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   324,   nil,   619,   320,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   627,   626,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   620,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   553,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,   582,
-    60,   114,   113,   583,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,
-   611,   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   584,   nil,   619,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   627,
-   626,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   620,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   nil,   nil,   122,   121,   123,   582,    60,
-   114,   113,   583,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,
-   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   584,   nil,   619,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   627,   626,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   620,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   699,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   414,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,
-   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   324,   nil,   619,   320,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   627,   626,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   620,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   304,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   305,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   802,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,    12,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
-   nil,    13,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   699,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,
-   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   431,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   699,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   868,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   304,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   305,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   304,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   299,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   305,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
-   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   994,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1001,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-  1006,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   994,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
-   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
-   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
-   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
-   208,   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,
-   nil,   nil,   183,   190,   181,   182,   178,   179,   180,   141,
-   143,   140,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   188,   199,   189,   212,   185,   205,   195,
-   194,   215,   216,   210,   193,   192,   187,   213,   217,   218,
-   197,   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,
-   207,   214,   209,   208,   201,   211,   196,   184,   203,   202,
-   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,
-   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,
-   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
-   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
-   nil,   nil,   nil,   207,   214,   209,   379,   378,   380,   377,
-   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
-   181,   182,   374,   375,   376,   372,   143,   114,   113,   373,
-   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   386,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
-   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
-   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
-   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
-   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
-   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
-   411,   410,   142,   nil,   412,   nil,   nil,   nil,   nil,   nil,
-   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
-   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
-   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
-   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
-   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   188,   199,   189,   212,   185,   205,   195,   194,
-   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
-   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
-   214,   209,   208,   201,   211,   196,   184,   203,   202,   nil,
-   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,
-   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,
-   205,   195,   194,   215,   216,   210,   193,   192,   187,   213,
-   217,   218,   197,   186,   200,   204,   206,   198,   191,   nil,
-   nil,   nil,   207,   214,   209,   208,   201,   211,   196,   184,
-   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,
-   182,   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,
-   189,   212,   185,   205,   195,   194,   215,   216,   210,   193,
-   192,   187,   213,   217,   218,   197,   186,   200,   204,   206,
-   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,
-   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,
-   183,   190,   181,   182,   178,   179,   180,   141,   143,   nil,
-   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   454,   458,   nil,   nil,   455,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   461,   465,   nil,   nil,   460,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   680,   458,   nil,   nil,   681,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   682,
-   465,   nil,   nil,   683,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   710,   458,   nil,
-   nil,   711,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   713,   465,   nil,   nil,   714,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   680,   458,   nil,   nil,   681,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   682,   465,   nil,   nil,   683,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   747,
-   458,   nil,   nil,   748,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   749,   465,   nil,
-   nil,   750,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   804,   458,   nil,   nil,   805,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   807,   465,   nil,   nil,   806,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   872,   465,   nil,   nil,   873,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   506,
-   458,   nil,   nil,   507,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   611,   177,   608,   607,   606,   616,   609,   611,   nil,
-   608,   607,   606,   616,   609,   nil,   nil,   619,   nil,   nil,
-   nil,   nil,   170,   nil,   619,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,
-   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   624,   623,
-   627,   626,   nil,   nil,   nil,   624,   623,   627,   626,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1069,   465,   nil,   nil,
-  1068,   nil,   nil,   nil,   620,   nil,   nil,   nil,   nil,   173,
-   174,   620,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
-   nil,   nil,   nil,   nil,  1072,   458,   nil,   nil,  1073,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
-   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
-   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
-   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
-   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
-   nil,   nil,  1074,   465,   nil,   nil,  1075,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   611,   177,   608,   607,   606,   616,
-   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   619,   nil,   nil,   nil,   nil,   170,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   624,   623,   627,   626,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620 ]
-
-racc_action_check = [
-   112,   389,   353,   470,   470,   361,   705,   112,   112,   112,
-   362,   354,   112,   112,   112,   710,   112,   365,   940,    17,
-    17,   705,   945,   402,   112,    29,   112,   112,   112,   580,
-    22,   998,   238,   405,     1,   239,   112,   112,    27,   112,
-   112,   112,   112,   112,   747,    27,   559,   352,   352,   559,
-   999,    92,   711,   748,   869,   768,   570,   713,   560,    92,
-     3,   560,   389,   389,   389,   870,    22,   112,   112,   112,
-   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
-   112,  1002,   710,   112,   112,   112,   402,   112,   112,   238,
-    29,   112,   239,   470,   112,   112,   405,   112,    65,   112,
-    13,   112,    27,   112,   112,   112,   112,   112,   112,   112,
-   361,   112,    29,   112,    15,   362,   353,   710,  1042,   711,
-   710,   353,   365,   713,   713,   354,   112,   112,   112,   112,
-   354,   112,   940,   112,   580,   710,   945,   940,   112,   115,
-  1072,   945,   112,  1073,   112,   998,   115,   115,   115,   747,
-   998,   115,   115,   115,   711,   115,   570,   711,   748,   713,
-   768,   570,   713,   115,   999,   115,   115,   115,   869,   999,
-   870,   869,   711,   869,  1085,   115,   115,   713,   115,   115,
-   115,   115,   115,  1074,   844,    65,  1075,   749,   689,   750,
-   372,   687,   720,   720,   838,  1002,   373,   372,   374,    20,
-  1002,   767,   767,   373,    16,   374,   115,   115,   115,   115,
-   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
-    44,    44,   115,   115,   115,   687,   115,   115,   838,   721,
-   115,   329,  1042,   115,   115,   721,   115,  1042,   115,    18,
-   115,    20,   115,   115,   115,   115,   115,   115,   115,   241,
-   115,   844,   115,   749,  1072,   750,    20,  1073,   640,  1072,
-   643,  1074,  1073,    25,  1075,   115,   115,   115,   115,   438,
-   115,   460,   115,    40,   476,   689,   680,   115,   460,   460,
-   460,   115,   720,   115,   460,   460,   844,   460,  1085,   844,
-   770,   767,   749,  1085,   750,    41,   329,  1074,    44,    44,
-  1075,   770,  1074,   681,   844,  1075,   241,   460,   460,   804,
-   460,   460,   460,   460,   460,   334,   334,   375,   329,   640,
-   640,   643,   643,    43,   375,   524,   438,     5,   640,    49,
-   643,   476,     5,   680,   770,   770,   582,    41,   460,   460,
-   460,   460,   460,   460,   460,   460,   460,   460,   460,   460,
-   460,   460,    41,    73,   460,   460,   460,    19,   460,   584,
-   681,   805,   460,   584,    19,   460,   804,   583,   770,  1007,
-   460,  1007,   460,    19,   460,   460,   460,   460,   460,   460,
-   460,   980,   460,    50,   460,    99,   524,   524,   524,   582,
-    50,    42,   980,   334,   334,   338,   582,   460,   460,    50,
-   460,   582,   460,   461,   827,   582,   524,   916,   100,   460,
-   461,   461,   461,   460,   101,   460,   461,   461,   805,   461,
-   583,    19,   376,   582,   102,   980,   980,   583,   461,   376,
-   391,   482,   583,    42,   237,   138,   583,   338,   396,   461,
-   461,   237,   461,   461,   461,   461,   461,    50,    42,   321,
-   237,   377,   338,   582,   583,   378,   321,   399,   377,   980,
-   219,   827,   378,   482,   916,   321,   564,   482,   482,   564,
-   461,   461,   461,   461,   461,   461,   461,   461,   461,   461,
-   461,   461,   461,   461,   583,   240,   461,   461,   461,   322,
-   461,   391,   391,   391,   461,   242,   322,   461,   237,   396,
-   396,   396,   461,   407,   461,   322,   461,   461,   461,   461,
-   461,   461,   461,   321,   461,   461,   461,   454,   399,   399,
-   399,   243,   778,   247,   778,   778,   778,   778,   778,   461,
-   461,   281,   461,   379,   461,   296,   323,   380,   778,   382,
-   379,   461,   682,   323,   380,   461,   382,   461,   297,   682,
-   682,   682,   323,   322,   682,   682,   682,   483,   682,   454,
-   778,    47,    47,   300,   407,   407,   407,   682,   682,   682,
-   682,   778,   778,   857,   454,   872,   857,  1014,   682,   682,
-  1014,   682,   682,   682,   682,   682,   308,   314,   325,   483,
-   316,   308,   340,   483,   483,   325,    47,    47,   393,   340,
-   323,   393,   358,   317,   325,   778,   318,   358,   340,   682,
-   682,   682,   682,   682,   682,   682,   682,   682,   682,   682,
-   682,   682,   682,   735,   735,   682,   682,   682,   872,   682,
-   682,   761,   761,   682,   455,   872,   682,   682,   324,   682,
-   872,   682,   327,   682,   872,   682,   682,   682,   682,   682,
-   682,   682,   325,   682,   682,   682,   340,   328,   140,   393,
-   393,   878,   872,   140,   140,   333,   878,   363,   682,   682,
-   682,   682,   664,   682,   363,   682,   455,   882,   773,   773,
-   682,   683,   882,   363,   682,   335,   682,   339,   683,   683,
-   683,   455,   872,   683,   683,   683,   387,   683,   387,   387,
-   387,   387,   387,   437,  1043,  1043,   954,   683,   683,   683,
-   437,   954,   387,   342,   664,   348,   359,   683,   683,   437,
-   683,   683,   683,   683,   683,   360,   364,   366,   395,   664,
-   398,   363,   401,   404,   387,   387,   614,   427,   614,   614,
-   614,   430,   614,   387,   387,   387,   387,   432,   683,   683,
-   683,   683,   683,   683,   683,   683,   683,   683,   683,   683,
-   683,   683,   435,   439,   683,   683,   683,   437,   683,   683,
-   449,   452,   683,   453,   614,   683,   683,   462,   683,   387,
-   683,   472,   683,   614,   683,   683,   683,   683,   683,   683,
-   683,   484,   683,   485,   683,   597,   486,   597,   597,   597,
-   597,   597,     9,     9,     9,     9,     9,   683,   683,   683,
-   683,   597,   683,   806,   683,   487,   503,   510,   514,   683,
-   806,   806,   806,   683,   530,   683,   806,   806,   531,   806,
-   541,   586,   532,   597,   535,   537,   542,   541,   586,   545,
-   554,   753,   597,   597,   597,   597,   541,   586,   753,   806,
-   806,   714,   806,   806,   806,   806,   806,   753,   714,   873,
-   555,   556,   561,   714,   562,   565,   873,   714,   567,   571,
-   905,   873,   905,   905,   905,   873,   905,   572,   597,   573,
-   806,   806,   806,   806,   806,   806,   806,   806,   806,   806,
-   806,   806,   806,   806,   541,   586,   806,   806,   806,   574,
-   806,   588,   591,   599,   806,   753,   600,   806,   905,   602,
-   603,   497,   806,   604,   806,   714,   806,   806,   806,   806,
-   806,   806,   806,   873,   806,   764,   806,   764,   764,   764,
-   764,   764,   786,   613,   786,   786,   786,   621,   786,   806,
-   806,   764,   806,   497,   806,   807,   625,   497,   497,   497,
-   497,   806,   807,   807,   807,   806,   628,   806,   807,   807,
-   647,   807,   993,   764,   312,   312,   312,   312,   312,   993,
-   807,   650,   764,   764,   764,   764,  1000,   656,   993,   665,
-   670,   807,   807,  1000,   807,   807,   807,   807,   807,   792,
-   792,  1034,  1000,   792,   792,   792,   676,   684,  1034,   685,
-   782,   688,   782,   782,   782,   692,   782,  1034,   764,   694,
-   696,   698,   807,   807,   807,   807,   807,   807,   807,   807,
-   807,   807,   807,   807,   807,   807,   993,   707,   807,   807,
-   807,   904,   807,   904,   904,   904,   807,   904,   782,   807,
-  1000,   709,   712,   488,   807,   715,   807,   782,   807,   807,
-   807,   807,   807,   807,   807,  1034,   807,   807,   807,   488,
-   488,   963,   716,   963,   963,   963,   719,   963,   737,   904,
-   743,   807,   807,   746,   807,   488,   807,   488,   904,   488,
-   488,   488,   488,   807,    30,   769,   784,   807,   785,   807,
-   787,    30,    30,    30,   799,   801,    30,    30,    30,   765,
-    30,   765,   765,   765,   765,   765,   498,   803,   812,    30,
-    30,    30,   836,   843,   853,   765,   854,   858,   864,   871,
-    30,    30,   875,    30,    30,    30,    30,    30,  1022,   879,
-  1022,  1022,  1022,   880,  1022,   881,   888,   765,   498,   889,
-   890,   894,   498,   498,   498,   498,   765,   765,   765,   765,
-   895,    30,    30,    30,    30,    30,    30,    30,    30,    30,
-    30,    30,    30,    30,    30,   897,  1022,    30,    30,    30,
-   898,   900,    30,   903,    30,    30,   913,   915,    30,    30,
-   922,    30,   765,    30,   923,    30,   925,    30,    30,    30,
-    30,    30,    30,    30,   926,    30,    30,    30,   774,   927,
-   774,   774,   774,   774,   774,   347,   347,   347,   347,   347,
-    30,    30,   929,    30,   774,    30,    31,   529,   529,   529,
-   529,   529,    30,    31,    31,    31,    30,   930,    31,    31,
-    31,   931,    31,   502,   953,  1023,   774,  1023,  1023,  1023,
-   960,  1023,    31,    31,   961,   774,   774,   774,   774,   502,
-   502,   962,    31,    31,   977,    31,    31,    31,    31,    31,
-  1051,   978,  1051,  1051,  1051,   502,  1051,   502,   991,   502,
-   502,   502,   502,  1023,   994,   502,   996,   502,  1001,  1018,
-  1019,   774,  1020,    31,    31,    31,    31,    31,    31,    31,
-    31,    31,    31,    31,    31,    31,    31,  1021,  1024,    31,
-    31,    31,  1027,  1028,    31,  1029,    31,    31,  1030,  1032,
-    31,    31,  1038,    31,  1048,    31,  1049,    31,  1057,    31,
-    31,    31,    31,    31,    31,    31,  1068,    31,  1069,    31,
-   776,  1071,   776,   776,   776,   776,   776,  1080,  1081,  1082,
-  1083,  1084,    31,    31,  1092,    31,   776,    31,    60,   nil,
-   nil,   nil,   nil,   nil,    31,    60,    60,    60,    31,   nil,
-    60,    60,    60,   nil,    60,   551,   nil,   nil,   776,   nil,
-   nil,   nil,   nil,   nil,    60,    60,    60,   776,   776,   776,
-   776,   551,   551,   nil,    60,    60,   nil,    60,    60,    60,
-    60,    60,   nil,   nil,   nil,   nil,   nil,   551,   nil,   551,
-   nil,   551,   551,   551,   551,   nil,   nil,   551,   nil,   551,
-   nil,   nil,   nil,   776,   nil,    60,    60,    60,    60,    60,
-    60,    60,    60,    60,    60,    60,    60,    60,    60,   nil,
-   nil,    60,    60,    60,   nil,   nil,    60,   nil,   nil,    60,
-   nil,   nil,    60,    60,   nil,    60,   nil,    60,   nil,    60,
-   nil,    60,    60,    60,    60,    60,    60,    60,   nil,    60,
-   nil,    60,   831,   nil,   831,   831,   831,   831,   831,   nil,
-   nil,   nil,   nil,   nil,    60,    60,    60,    60,   831,    60,
-   456,    60,   nil,   nil,   nil,   nil,    60,   456,   456,   456,
-    60,   nil,   456,   456,   456,   nil,   456,   489,   nil,   nil,
-   831,   nil,   nil,   nil,   nil,   456,   456,   456,   nil,   831,
-   831,   831,   831,   489,   489,   nil,   456,   456,   nil,   456,
-   456,   456,   456,   456,   nil,   nil,   nil,   nil,   nil,   489,
-   nil,   489,   nil,   489,   489,   489,   489,   831,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   831,   nil,   456,   456,   456,
-   456,   456,   456,   456,   456,   456,   456,   456,   456,   456,
-   456,   nil,   nil,   456,   456,   456,   nil,   nil,   456,   nil,
-   456,   456,   nil,   nil,   456,   456,   nil,   456,   nil,   456,
-   nil,   456,   nil,   456,   456,   456,   456,   456,   456,   456,
-   nil,   456,   456,   456,   966,   nil,   966,   966,   966,   966,
-   966,   nil,   nil,   nil,   nil,   nil,   456,   456,   nil,   456,
-   966,   456,   465,   nil,   nil,   nil,   nil,   nil,   456,   465,
-   465,   465,   456,   nil,   465,   465,   465,   nil,   465,   490,
-   nil,   nil,   966,   nil,   nil,   nil,   nil,   465,   465,   465,
-   465,   966,   966,   966,   966,   490,   490,   nil,   465,   465,
-   nil,   465,   465,   465,   465,   465,   nil,   nil,   nil,   nil,
-   nil,   490,   nil,   nil,   nil,   490,   490,   490,   490,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   966,   nil,   465,
-   465,   465,   465,   465,   465,   465,   465,   465,   465,   465,
-   465,   465,   465,   nil,   nil,   465,   465,   465,   nil,   nil,
-   465,   nil,   nil,   465,   nil,   nil,   465,   465,   nil,   465,
-   nil,   465,   nil,   465,   nil,   465,   465,   465,   465,   465,
-   465,   465,   nil,   465,   465,   465,   968,   nil,   968,   968,
-   968,   968,   968,   nil,   nil,   nil,   nil,   nil,   465,   465,
-   465,   465,   968,   465,   466,   465,   nil,   nil,   nil,   nil,
-   465,   466,   466,   466,   465,   nil,   466,   466,   466,   nil,
-   466,   nil,   nil,   nil,   968,   nil,   nil,   nil,   nil,   466,
-   466,   466,   466,   nil,   nil,   968,   968,   nil,   nil,   nil,
-   466,   466,   nil,   466,   466,   466,   466,   466,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   968,
-   nil,   466,   466,   466,   466,   466,   466,   466,   466,   466,
-   466,   466,   466,   466,   466,   nil,   nil,   466,   466,   466,
-   nil,   nil,   466,   nil,   nil,   466,   nil,   nil,   466,   466,
-   nil,   466,   nil,   466,   nil,   466,   nil,   466,   466,   466,
-   466,   466,   466,   466,   nil,   466,   466,   466,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   466,   466,   466,   466,   nil,   466,   505,   466,   nil,   nil,
-   nil,   nil,   466,   505,   505,   505,   466,   nil,   505,   505,
-   505,   nil,   505,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   505,   505,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   505,   505,   nil,   505,   505,   505,   505,   505,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   278,   278,   nil,
-   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   278,   278,   nil,   278,   278,   278,   278,   278,   278,   278,
-   nil,   nil,   278,   278,   505,   nil,   nil,   278,   278,   278,
-   278,   505,   nil,   nil,   nil,   nil,   505,   505,   nil,   nil,
-   nil,   nil,   nil,   nil,   278,   278,   nil,   278,   278,   278,
-   278,   278,   278,   278,   278,   278,   278,   278,   505,   505,
-   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   505,   nil,   nil,   nil,   nil,   505,   nil,   nil,
-   278,   nil,   nil,   nil,   505,   nil,   nil,   nil,   505,     2,
-     2,     2,     2,     2,     2,   nil,   nil,   nil,     2,     2,
-   nil,   nil,   nil,     2,   nil,     2,     2,     2,     2,     2,
-     2,     2,   nil,   nil,   nil,   nil,   nil,     2,     2,     2,
-     2,     2,     2,     2,   nil,   nil,     2,   nil,   nil,   nil,
-   nil,   442,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,   nil,     2,     2,     2,   nil,     2,
-     2,   nil,     2,     2,     2,   442,   442,   442,   442,   442,
-   442,   442,   442,   442,   442,   442,   nil,   442,   442,   nil,
-   nil,   442,   442,   nil,     2,   nil,   nil,     2,   nil,   nil,
-     2,     2,   nil,   nil,     2,   nil,     2,   442,   nil,   442,
-     2,   442,   442,   442,   442,   442,   442,   442,     2,   442,
-   nil,   nil,   nil,     2,     2,     2,     2,     2,     2,   nil,
-   nil,   nil,     2,     2,   nil,   442,   nil,   442,   nil,   nil,
-     2,   nil,   nil,     2,     2,     2,   nil,     2,     2,    36,
-    36,    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,
-   nil,   nil,   nil,    36,   nil,    36,    36,    36,    36,    36,
-    36,    36,   nil,   nil,   nil,   nil,   nil,    36,    36,    36,
-    36,    36,    36,    36,   nil,   nil,    36,   nil,   nil,   nil,
-   nil,   448,    36,    36,    36,    36,    36,    36,    36,    36,
-    36,    36,    36,    36,   nil,    36,    36,    36,   nil,    36,
-    36,   nil,    36,    36,    36,   448,   448,   448,   448,   448,
-   448,   448,   448,   448,   448,   448,   nil,   448,   448,   nil,
-   nil,   448,   448,   nil,    36,   nil,   nil,    36,   nil,   nil,
-    36,    36,   nil,   nil,    36,   nil,    36,   448,   nil,   448,
-    36,   448,   448,   448,   448,   448,   448,   448,    36,   448,
-   nil,   nil,   nil,    36,    36,    36,    36,    36,    36,   nil,
-   nil,   nil,    36,    36,   nil,   448,   nil,   nil,   nil,   nil,
-    36,   nil,   nil,    36,    36,    36,   nil,    36,    36,   221,
-   221,   221,   221,   221,   221,   nil,   nil,   nil,   221,   221,
-   nil,   nil,   nil,   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,   221,   221,   221,   221,   221,   221,   221,   221,
-   221,   221,   221,   221,   nil,   221,   221,   221,   nil,   221,
-   221,   nil,   221,   221,   221,    24,    24,    24,    24,    24,
-    24,    24,    24,    24,    24,    24,   nil,    24,    24,   nil,
-   nil,    24,    24,   nil,   221,   nil,   nil,   221,   nil,   nil,
-   221,   221,   nil,   nil,   221,   nil,   221,    24,   nil,    24,
-   221,    24,    24,    24,    24,    24,    24,    24,   221,    24,
-   nil,   nil,   nil,   221,   221,   221,   221,   221,   221,   nil,
-   nil,   nil,   221,   221,   nil,    24,   nil,   nil,   nil,   nil,
-   221,   nil,   nil,   221,   221,   221,   nil,   221,   221,   246,
-   246,   246,   246,   246,   246,   nil,   nil,   nil,   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,   246,   246,   246,   246,   246,   246,   246,   246,
-   246,   246,   246,   246,   nil,   246,   246,   246,   nil,   246,
-   246,   nil,   246,   246,   246,   294,   294,   294,   294,   294,
-   294,   294,   294,   294,   294,   294,   nil,   294,   294,   nil,
-   nil,   294,   294,   nil,   246,   nil,   nil,   246,   nil,   nil,
-   246,   246,   nil,   nil,   246,   nil,   246,   294,   nil,   294,
-   246,   294,   294,   294,   294,   294,   294,   294,   246,   294,
-   nil,   nil,   nil,   246,   246,   246,   246,   246,   246,   nil,
-   nil,   nil,   246,   246,   nil,   294,   nil,   nil,   nil,   nil,
-   246,   nil,   nil,   246,   246,   246,   nil,   246,   246,   315,
-   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,   315,
-   nil,   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,   315,   315,   315,   315,   315,   315,   315,   315,
-   315,   315,   315,   315,   nil,   315,   315,   315,   nil,   315,
-   315,   nil,   315,   315,   315,   501,   501,   501,   501,   501,
-   501,   501,   501,   501,   501,   501,   nil,   501,   501,   nil,
-   nil,   501,   501,   nil,   315,   nil,   nil,   315,   nil,   nil,
-   315,   315,   nil,   nil,   315,   nil,   315,   501,   nil,   501,
-   315,   501,   501,   501,   501,   501,   501,   501,   315,   501,
-   nil,   nil,   nil,   315,   315,   315,   315,   315,   315,   nil,
-   nil,   nil,   315,   315,   501,   501,   nil,   nil,   nil,   nil,
-   315,   nil,   nil,   315,   315,   315,   nil,   315,   315,   320,
-   320,   320,   320,   320,   320,   nil,   nil,   nil,   320,   320,
-   nil,   nil,   nil,   320,   nil,   320,   320,   320,   320,   320,
-   320,   320,   nil,   nil,   nil,   nil,   nil,   320,   320,   320,
-   320,   320,   320,   320,   nil,   nil,   320,   nil,   nil,   nil,
-   nil,   nil,   320,   320,   320,   320,   320,   320,   320,   320,
-   320,   320,   320,   320,   nil,   320,   320,   320,   nil,   320,
-   320,   nil,   320,   320,   320,   552,   552,   552,   552,   552,
-   552,   552,   552,   552,   552,   552,   nil,   552,   552,   nil,
-   nil,   552,   552,   nil,   320,   nil,   nil,   320,   nil,   nil,
-   320,   320,   nil,   nil,   320,   nil,   320,   552,   nil,   552,
-   320,   552,   552,   552,   552,   552,   552,   552,   320,   552,
-   nil,   nil,   nil,   320,   320,   320,   320,   320,   320,   nil,
-   nil,   nil,   320,   320,   nil,   552,   nil,   nil,   nil,   nil,
-   320,   nil,   nil,   320,   320,   320,   nil,   320,   320,   346,
-   346,   346,   346,   346,   346,   nil,   nil,   nil,   346,   346,
-   nil,   nil,   nil,   346,   nil,   346,   346,   346,   346,   346,
-   346,   346,   nil,   nil,   nil,   nil,   nil,   346,   346,   346,
-   346,   346,   346,   346,   nil,   nil,   346,   nil,   nil,   nil,
-   nil,   nil,   346,   346,   346,   346,   346,   346,   346,   346,
-   346,   346,   346,   346,   nil,   346,   346,   346,   nil,   346,
-   346,   nil,   346,   346,   346,   809,   809,   809,   809,   809,
-   809,   809,   809,   809,   809,   809,   nil,   809,   809,   nil,
-   nil,   809,   809,   nil,   346,   nil,   nil,   346,   nil,   nil,
-   346,   346,   nil,   nil,   346,   nil,   346,   809,   nil,   809,
-   346,   809,   809,   809,   809,   809,   809,   809,   346,   809,
-   nil,   nil,   nil,   346,   346,   346,   346,   346,   346,   nil,
-   nil,   nil,   346,   346,   nil,   809,   nil,   nil,   nil,   nil,
-   346,   nil,   nil,   346,   346,   346,   nil,   346,   346,   356,
-   356,   356,   356,   356,   356,   nil,   nil,   nil,   356,   356,
-   nil,   nil,   nil,   356,   nil,   356,   356,   356,   356,   356,
-   356,   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,
-   356,   356,   356,   356,   nil,   nil,   356,   nil,   nil,   nil,
-   nil,   nil,   356,   356,   356,   356,   356,   356,   356,   356,
-   356,   356,   356,   356,   nil,   356,   356,   356,   nil,   356,
-   356,   nil,   356,   356,   356,   921,   921,   921,   921,   921,
-   921,   921,   921,   921,   921,   921,   nil,   921,   921,   nil,
-   nil,   921,   921,   nil,   356,   nil,   nil,   356,   nil,   nil,
-   356,   356,   nil,   nil,   356,   nil,   356,   921,   nil,   921,
-   356,   921,   921,   921,   921,   921,   921,   921,   356,   921,
-   nil,   nil,   nil,   356,   356,   356,   356,   356,   356,   nil,
-   nil,   nil,   356,   356,   nil,   921,   nil,   nil,   nil,   nil,
-   356,   nil,   nil,   356,   356,   356,   nil,   356,   356,   357,
-   357,   357,   357,   357,   357,   nil,   nil,   nil,   357,   357,
-   nil,   nil,   nil,   357,   nil,   357,   357,   357,   357,   357,
-   357,   357,   nil,   nil,   nil,   nil,   nil,   357,   357,   357,
-   357,   357,   357,   357,   nil,   nil,   357,   nil,   nil,   nil,
-   nil,   nil,   357,   357,   357,   357,   357,   357,   357,   357,
-   357,   357,   357,   357,   nil,   357,   357,   357,   nil,   357,
-   357,   nil,   357,   357,   357,   480,   480,   480,   480,   480,
-   480,   480,   480,   480,   480,   480,   nil,   480,   480,   nil,
-   nil,   480,   480,   nil,   357,   nil,   nil,   357,   nil,   nil,
-   357,   357,   nil,   nil,   357,   nil,   357,   480,   nil,   480,
-   357,   480,   480,   480,   480,   480,   480,   480,   357,   480,
-   nil,   nil,   nil,   357,   357,   357,   357,   357,   357,   nil,
-   nil,   nil,   357,   357,   nil,   nil,   nil,   nil,   nil,   nil,
-   357,   nil,   nil,   357,   357,   357,   nil,   357,   357,   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,   481,   481,   481,   481,   481,
-   481,   481,   481,   481,   481,   481,   nil,   481,   481,   nil,
-   nil,   481,   481,   nil,   566,   nil,   nil,   566,   nil,   nil,
-   566,   566,   nil,   nil,   566,   nil,   566,   481,   nil,   481,
-   566,   481,   481,   481,   481,   481,   481,   481,   566,   481,
-   nil,   nil,   nil,   566,   566,   566,   566,   566,   566,   nil,
-   nil,   nil,   566,   566,   nil,   nil,   nil,   nil,   nil,   nil,
-   566,   nil,   nil,   566,   566,   566,   nil,   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,   491,   491,   491,   491,   491,
-   491,   491,   nil,   nil,   491,   491,   nil,   nil,   nil,   nil,
-   nil,   491,   491,   nil,   569,   nil,   nil,   569,   nil,   nil,
-   569,   569,   nil,   nil,   569,   nil,   569,   491,   nil,   491,
-   569,   491,   491,   491,   491,   491,   491,   491,   569,   491,
-   nil,   nil,   nil,   569,   569,   569,   569,   569,   569,   nil,
-   nil,   nil,   569,   569,   nil,   nil,   nil,   nil,   nil,   nil,
-   569,   nil,   nil,   569,   569,   569,   nil,   569,   569,   652,
-   652,   652,   652,   652,   652,   nil,   nil,   nil,   652,   652,
-   nil,   nil,   nil,   652,   nil,   652,   652,   652,   652,   652,
-   652,   652,   nil,   nil,   nil,   nil,   nil,   652,   652,   652,
-   652,   652,   652,   652,   nil,   nil,   652,   nil,   nil,   nil,
-   nil,   nil,   652,   652,   652,   652,   652,   652,   652,   652,
-   652,   652,   652,   652,   nil,   652,   652,   652,   nil,   652,
-   652,   nil,   652,   652,   652,   492,   492,   492,   492,   492,
-   492,   492,   nil,   nil,   492,   492,   nil,   nil,   nil,   nil,
-   nil,   492,   492,   nil,   652,   nil,   nil,   652,   nil,   nil,
-   652,   652,   nil,   nil,   652,   nil,   652,   492,   nil,   492,
-   652,   492,   492,   492,   492,   492,   492,   492,   652,   492,
-   nil,   nil,   nil,   652,   652,   652,   652,   652,   652,   nil,
-   nil,   nil,   652,   652,   nil,   nil,   nil,   nil,   nil,   nil,
-   652,   nil,   nil,   652,   652,   652,   nil,   652,   652,   751,
-   751,   751,   751,   751,   751,   nil,   nil,   nil,   751,   751,
-   nil,   nil,   nil,   751,   nil,   751,   751,   751,   751,   751,
-   751,   751,   nil,   nil,   nil,   nil,   nil,   751,   751,   751,
-   751,   751,   751,   751,   nil,   nil,   751,   nil,   nil,   nil,
-   nil,   nil,   751,   751,   751,   751,   751,   751,   751,   751,
-   751,   751,   751,   751,   nil,   751,   751,   751,   nil,   751,
-   751,   nil,   751,   751,   751,   493,   493,   493,   493,   493,
-   493,   493,   nil,   nil,   493,   493,   nil,   nil,   nil,   nil,
-   nil,   493,   493,   nil,   751,   nil,   nil,   751,   nil,   nil,
-   751,   751,   nil,   nil,   751,   nil,   751,   493,   nil,   493,
-   751,   493,   493,   493,   493,   493,   493,   493,   751,   493,
-   nil,   nil,   nil,   751,   751,   751,   751,   751,   751,   nil,
-   nil,   nil,   751,   751,   nil,   nil,   nil,   nil,   nil,   nil,
-   751,   nil,   nil,   751,   751,   751,   nil,   751,   751,   762,
-   762,   762,   762,   762,   762,   nil,   nil,   nil,   762,   762,
-   nil,   nil,   nil,   762,   nil,   762,   762,   762,   762,   762,
-   762,   762,   nil,   nil,   nil,   nil,   nil,   762,   762,   762,
-   762,   762,   762,   762,   nil,   nil,   762,   nil,   nil,   nil,
-   nil,   nil,   762,   762,   762,   762,   762,   762,   762,   762,
-   762,   762,   762,   762,   nil,   762,   762,   762,   nil,   762,
-   762,   nil,   762,   762,   762,   494,   494,   494,   494,   494,
-   494,   494,   nil,   nil,   494,   494,   nil,   nil,   nil,   nil,
-   nil,   494,   494,   nil,   762,   nil,   nil,   762,   nil,   nil,
-   762,   762,   nil,   nil,   762,   nil,   762,   494,   nil,   494,
-   762,   494,   494,   494,   494,   494,   494,   494,   762,   494,
-   nil,   nil,   nil,   762,   762,   762,   762,   762,   762,   nil,
-   nil,   nil,   762,   762,   nil,   nil,   nil,   nil,   nil,   nil,
-   762,   nil,   nil,   762,   762,   762,   nil,   762,   762,   763,
-   763,   763,   763,   763,   763,   nil,   nil,   nil,   763,   763,
-   nil,   nil,   nil,   763,   nil,   763,   763,   763,   763,   763,
-   763,   763,   nil,   nil,   nil,   nil,   nil,   763,   763,   763,
-   763,   763,   763,   763,   nil,   nil,   763,   nil,   nil,   nil,
-   nil,   nil,   763,   763,   763,   763,   763,   763,   763,   763,
-   763,   763,   763,   763,   nil,   763,   763,   763,   nil,   763,
-   763,   nil,   763,   763,   763,   495,   495,   495,   495,   495,
-   495,   495,   nil,   nil,   495,   495,   nil,   nil,   nil,   nil,
-   nil,   495,   495,   nil,   763,   nil,   nil,   763,   nil,   nil,
-   763,   763,   nil,   nil,   763,   nil,   763,   495,   nil,   495,
-   763,   495,   495,   495,   495,   495,   495,   495,   763,   495,
-   nil,   nil,   nil,   763,   763,   763,   763,   763,   763,   nil,
-   nil,   nil,   763,   763,   nil,   nil,   nil,   nil,   nil,   nil,
-   763,   nil,   nil,   763,   763,   763,   nil,   763,   763,   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,   496,   496,   496,   496,   496,
-   496,   496,   nil,   nil,   496,   496,   nil,   nil,   nil,   nil,
-   nil,   496,   496,   nil,   793,   nil,   nil,   793,   nil,   nil,
-   793,   793,   nil,   nil,   793,   nil,   793,   496,   nil,   496,
-   793,   496,   496,   496,   496,   496,   496,   496,   793,   496,
-   nil,   nil,   nil,   793,   793,   793,   793,   793,   793,   nil,
-   nil,   nil,   793,   793,   nil,   nil,   nil,   nil,   nil,   nil,
-   793,   nil,   nil,   793,   793,   793,   nil,   793,   793,   833,
-   833,   833,   833,   833,   833,   nil,   nil,   nil,   833,   833,
-   nil,   nil,   nil,   833,   nil,   833,   833,   833,   833,   833,
-   833,   833,   nil,   nil,   nil,   nil,   nil,   833,   833,   833,
-   833,   833,   833,   833,   nil,   nil,   833,   nil,   nil,   nil,
-   nil,   nil,   833,   833,   833,   833,   833,   833,   833,   833,
-   833,   833,   833,   833,   nil,   833,   833,   833,   nil,   833,
-   833,   nil,   833,   833,   833,   499,   499,   499,   499,   499,
-   499,   499,   nil,   nil,   499,   499,   nil,   nil,   nil,   nil,
-   nil,   499,   499,   nil,   833,   nil,   nil,   833,   nil,   nil,
-   833,   833,   nil,   nil,   833,   nil,   833,   499,   nil,   499,
-   833,   499,   499,   499,   499,   499,   499,   499,   833,   499,
-   nil,   nil,   nil,   833,   833,   833,   833,   833,   833,   nil,
-   nil,   nil,   833,   833,   nil,   nil,   nil,   nil,   nil,   nil,
-   833,   nil,   nil,   833,   833,   833,   nil,   833,   833,   851,
-   851,   851,   851,   851,   851,   nil,   nil,   nil,   851,   851,
-   nil,   nil,   nil,   851,   nil,   851,   851,   851,   851,   851,
-   851,   851,   nil,   nil,   nil,   nil,   nil,   851,   851,   851,
-   851,   851,   851,   851,   nil,   nil,   851,   nil,   nil,   nil,
-   nil,   nil,   851,   851,   851,   851,   851,   851,   851,   851,
-   851,   851,   851,   851,   nil,   851,   851,   851,   nil,   851,
-   851,   nil,   851,   851,   851,   500,   500,   500,   500,   500,
-   500,   500,   500,   nil,   500,   500,   nil,   nil,   nil,   nil,
-   nil,   500,   500,   nil,   851,   nil,   nil,   851,   nil,   nil,
-   851,   851,   nil,   nil,   851,   nil,   851,   500,   nil,   500,
-   851,   500,   500,   500,   500,   500,   500,   500,   851,   500,
-   nil,   nil,   nil,   851,   851,   851,   851,   851,   851,   nil,
-   nil,   nil,   851,   851,   nil,   nil,   nil,   nil,   nil,   nil,
-   851,   nil,   nil,   851,   851,   851,   nil,   851,   851,   863,
-   863,   863,   863,   863,   863,   nil,   nil,   nil,   863,   863,
-   nil,   nil,   nil,   863,   nil,   863,   863,   863,   863,   863,
-   863,   863,   nil,   nil,   nil,   nil,   nil,   863,   863,   863,
-   863,   863,   863,   863,   nil,   nil,   863,   nil,   nil,   nil,
-   nil,   nil,   863,   863,   863,   863,   863,   863,   863,   863,
-   863,   863,   863,   863,   nil,   863,   863,   863,   nil,   863,
-   863,   nil,   863,   863,   863,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   863,   nil,   nil,   863,   nil,   nil,
-   863,   863,   nil,   nil,   863,   nil,   863,   nil,   nil,   nil,
-   863,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   863,   nil,
-   nil,   nil,   nil,   863,   863,   863,   863,   863,   863,   nil,
-   nil,   nil,   863,   863,   nil,   nil,   nil,   nil,   nil,   nil,
-   863,   nil,   nil,   863,   863,   863,   nil,   863,   863,   876,
-   876,   876,   876,   876,   876,   nil,   nil,   nil,   876,   876,
-   nil,   nil,   nil,   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,   876,   876,   876,   876,   876,   876,   876,   876,
-   876,   876,   876,   876,   nil,   876,   876,   876,   nil,   876,
-   876,   nil,   876,   876,   876,   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,   876,   nil,   nil,   876,   nil,   876,   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,   nil,   nil,   nil,
-   876,   nil,   nil,   876,   876,   876,   nil,   876,   876,   886,
-   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,   886,   886,   886,   886,   886,   886,
-   886,   886,   886,   886,   nil,   886,   886,   886,   nil,   886,
-   886,   nil,   886,   886,   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,   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,   nil,   nil,   nil,
-   886,   nil,   nil,   886,   886,   886,   nil,   886,   886,   887,
-   887,   887,   887,   887,   887,   nil,   nil,   nil,   887,   887,
-   nil,   nil,   nil,   887,   nil,   887,   887,   887,   887,   887,
-   887,   887,   nil,   nil,   nil,   nil,   nil,   887,   887,   887,
-   887,   887,   887,   887,   nil,   nil,   887,   nil,   nil,   nil,
-   nil,   nil,   887,   887,   887,   887,   887,   887,   887,   887,
-   887,   887,   887,   887,   nil,   887,   887,   887,   nil,   887,
-   887,   nil,   887,   887,   887,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   887,   nil,   nil,   887,   nil,   nil,
-   887,   887,   nil,   nil,   887,   nil,   887,   nil,   nil,   nil,
-   887,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   887,   nil,
-   nil,   nil,   nil,   887,   887,   887,   887,   887,   887,   nil,
-   nil,   nil,   887,   887,   nil,   nil,   nil,   nil,   nil,   nil,
-   887,   nil,   nil,   887,   887,   887,   nil,   887,   887,   937,
-   937,   937,   937,   937,   937,   nil,   nil,   nil,   937,   937,
-   nil,   nil,   nil,   937,   nil,   937,   937,   937,   937,   937,
-   937,   937,   nil,   nil,   nil,   nil,   nil,   937,   937,   937,
-   937,   937,   937,   937,   nil,   nil,   937,   nil,   nil,   nil,
-   nil,   nil,   937,   937,   937,   937,   937,   937,   937,   937,
-   937,   937,   937,   937,   nil,   937,   937,   937,   nil,   937,
-   937,   nil,   937,   937,   937,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   937,   nil,   nil,   937,   nil,   nil,
-   937,   937,   nil,   nil,   937,   nil,   937,   nil,   nil,   nil,
-   937,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   937,   nil,
-   nil,   nil,   nil,   937,   937,   937,   937,   937,   937,   nil,
-   nil,   nil,   937,   937,   nil,   nil,   nil,   nil,   nil,   nil,
-   937,   nil,   nil,   937,   937,   937,   nil,   937,   937,   938,
-   938,   938,   938,   938,   938,   nil,   nil,   nil,   938,   938,
-   nil,   nil,   nil,   938,   nil,   938,   938,   938,   938,   938,
-   938,   938,   nil,   nil,   nil,   nil,   nil,   938,   938,   938,
-   938,   938,   938,   938,   nil,   nil,   938,   nil,   nil,   nil,
-   nil,   nil,   938,   938,   938,   938,   938,   938,   938,   938,
-   938,   938,   938,   938,   nil,   938,   938,   938,   nil,   938,
-   938,   nil,   938,   938,   938,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   938,   nil,   nil,   938,   nil,   nil,
-   938,   938,   nil,   nil,   938,   nil,   938,   nil,   nil,   nil,
-   938,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   938,   nil,
-   nil,   nil,   nil,   938,   938,   938,   938,   938,   938,   nil,
-   nil,   nil,   938,   938,   nil,   nil,   nil,   nil,   nil,   nil,
-   938,   nil,   nil,   938,   938,   938,   nil,   938,   938,   950,
-   950,   950,   950,   950,   950,   nil,   nil,   nil,   950,   950,
-   nil,   nil,   nil,   950,   nil,   950,   950,   950,   950,   950,
-   950,   950,   nil,   nil,   nil,   nil,   nil,   950,   950,   950,
-   950,   950,   950,   950,   nil,   nil,   950,   nil,   nil,   nil,
-   nil,   nil,   950,   950,   950,   950,   950,   950,   950,   950,
-   950,   950,   950,   950,   nil,   950,   950,   950,   nil,   950,
-   950,   nil,   950,   950,   950,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   950,   nil,   nil,   950,   nil,   nil,
-   950,   950,   nil,   nil,   950,   nil,   950,   nil,   nil,   nil,
-   950,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   950,   nil,
-   nil,   nil,   nil,   950,   950,   950,   950,   950,   950,   nil,
-   nil,   nil,   950,   950,   nil,   nil,   nil,   nil,   nil,   nil,
-   950,   nil,   nil,   950,   950,   950,   nil,   950,   950,   997,
-   997,   997,   997,   997,   997,   nil,   nil,   nil,   997,   997,
-   nil,   nil,   nil,   997,   nil,   997,   997,   997,   997,   997,
-   997,   997,   nil,   nil,   nil,   nil,   nil,   997,   997,   997,
-   997,   997,   997,   997,   nil,   nil,   997,   nil,   nil,   nil,
-   nil,   nil,   997,   997,   997,   997,   997,   997,   997,   997,
-   997,   997,   997,   997,   nil,   997,   997,   997,   nil,   997,
-   997,   nil,   997,   997,   997,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,   nil,   nil,
-   997,   997,   nil,   nil,   997,   nil,   997,   nil,   nil,   nil,
-   997,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,
-   nil,   nil,   nil,   997,   997,   997,   997,   997,   997,   nil,
-   nil,   nil,   997,   997,   nil,   nil,   nil,   nil,   nil,   nil,
-   997,   nil,   nil,   997,   997,   997,   nil,   997,   997,  1004,
-  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,  1004,  1004,
-   nil,   nil,   nil,  1004,   nil,  1004,  1004,  1004,  1004,  1004,
-  1004,  1004,   nil,   nil,   nil,   nil,   nil,  1004,  1004,  1004,
-  1004,  1004,  1004,  1004,   nil,   nil,  1004,   nil,   nil,   nil,
-   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,  1004,  1004,
-  1004,  1004,  1004,  1004,   nil,  1004,  1004,  1004,   nil,  1004,
-  1004,   nil,  1004,  1004,  1004,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1004,   nil,   nil,  1004,   nil,   nil,
-  1004,  1004,   nil,   nil,  1004,   nil,  1004,   nil,   nil,   nil,
-  1004,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,
-   nil,   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,   nil,
-   nil,   nil,  1004,  1004,   nil,   nil,   nil,   nil,   nil,   nil,
-  1004,   nil,   nil,  1004,  1004,  1004,   nil,  1004,  1004,  1010,
-  1010,  1010,  1010,  1010,  1010,   nil,   nil,   nil,  1010,  1010,
-   nil,   nil,   nil,  1010,   nil,  1010,  1010,  1010,  1010,  1010,
-  1010,  1010,   nil,   nil,   nil,   nil,   nil,  1010,  1010,  1010,
-  1010,  1010,  1010,  1010,   nil,   nil,  1010,   nil,   nil,   nil,
-   nil,   nil,  1010,  1010,  1010,  1010,  1010,  1010,  1010,  1010,
-  1010,  1010,  1010,  1010,   nil,  1010,  1010,  1010,   nil,  1010,
-  1010,   nil,  1010,  1010,  1010,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1010,   nil,   nil,  1010,   nil,   nil,
-  1010,  1010,   nil,   nil,  1010,   nil,  1010,   nil,   nil,   nil,
-  1010,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1010,   nil,
-   nil,   nil,   nil,  1010,  1010,  1010,  1010,  1010,  1010,   nil,
-   nil,   nil,  1010,  1010,   nil,   nil,   nil,   nil,   nil,   nil,
-  1010,   nil,   nil,  1010,  1010,  1010,   nil,  1010,  1010,  1011,
-  1011,  1011,  1011,  1011,  1011,   nil,   nil,   nil,  1011,  1011,
-   nil,   nil,   nil,  1011,   nil,  1011,  1011,  1011,  1011,  1011,
-  1011,  1011,   nil,   nil,   nil,   nil,   nil,  1011,  1011,  1011,
-  1011,  1011,  1011,  1011,   nil,   nil,  1011,   nil,   nil,   nil,
-   nil,   nil,  1011,  1011,  1011,  1011,  1011,  1011,  1011,  1011,
-  1011,  1011,  1011,  1011,   nil,  1011,  1011,  1011,   nil,  1011,
-  1011,   nil,  1011,  1011,  1011,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1011,   nil,   nil,  1011,   nil,   nil,
-  1011,  1011,   nil,   nil,  1011,   nil,  1011,   nil,   nil,   nil,
-  1011,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1011,   nil,
-   nil,   nil,   nil,  1011,  1011,  1011,  1011,  1011,  1011,   nil,
-   nil,   nil,  1011,  1011,   nil,   nil,   nil,   nil,   nil,   nil,
-  1011,   nil,   nil,  1011,  1011,  1011,   nil,  1011,  1011,     8,
-     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
-   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
-     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
-     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
-   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
-     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
-   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
-     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
-   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
-   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
-   nil,   nil,     8,     8,     8,   nil,     8,     8,    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,   nil,    23,    23,    23,    23,    23,
-    23,    23,   nil,   nil,    23,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,    23,    23,    23,    23,    23,    23,
-    23,    23,   nil,    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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,    23,    23,    23,   nil,    23,    23,    32,    32,    32,
-   nil,    32,   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,
-    32,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
-   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,
-    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,    32,    32,    32,    32,    32,    32,    32,
-    32,    32,    32,    32,    32,   nil,    32,    32,   nil,    32,
-    32,    32,   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,    32,    32,   nil,
-   nil,    32,   nil,    32,   nil,    32,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,    32,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,
-    32,    32,    32,   nil,    32,    32,    33,    33,    33,   nil,
-    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,
-   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
-   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
-   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,
-   nil,   nil,    33,    33,    33,    33,    33,    33,    33,    33,
-    33,    33,    33,    33,   nil,    33,    33,   nil,    33,    33,
-    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,
-    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
-    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,
-   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,
-    33,    33,   nil,    33,    33,    34,    34,    34,   nil,    34,
-   nil,   nil,   nil,    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,    34,
-    34,    34,    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,    34,
-    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,    34,
-    34,   nil,    34,    34,    37,    37,    37,   nil,    37,   nil,
-   nil,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,    37,
-    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,   nil,
-   nil,    37,    37,    37,    37,    37,    37,    37,   nil,   nil,
-    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,
-    37,    37,    37,    37,    37,    37,    37,    37,   nil,    37,
-    37,    37,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,
-   nil,   nil,   nil,   nil,   970,   nil,   970,   970,   970,   970,
-   970,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
-   970,    37,   nil,   nil,    37,    37,   nil,   nil,    37,   nil,
-    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   970,   nil,   nil,   nil,   nil,    37,    37,    37,
-    37,    37,    37,   970,   970,   nil,    37,    37,   nil,   nil,
-   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,    37,
-   nil,    37,    37,    38,    38,    38,   nil,    38,   nil,   nil,
-   nil,    38,    38,   nil,   nil,   nil,    38,   970,    38,    38,
-    38,    38,    38,    38,    38,   nil,   nil,   nil,   nil,   nil,
-    38,    38,    38,    38,    38,    38,    38,   nil,   nil,    38,
-   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,
-    38,    38,    38,    38,    38,    38,    38,   nil,    38,    38,
-    38,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,   nil,
-   nil,   nil,   nil,   972,   nil,   972,   972,   972,   972,   972,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   972,
-    38,   nil,   nil,    38,    38,   nil,   nil,    38,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   972,   nil,   nil,   nil,   nil,    38,    38,    38,    38,
-    38,    38,   972,   972,   nil,    38,    38,   nil,   nil,   nil,
-    38,   nil,   nil,    38,   nil,   nil,    38,    38,    38,   nil,
-    38,    38,    45,    45,    45,   nil,    45,   nil,   nil,   nil,
-    45,    45,   nil,   nil,   nil,    45,   972,    45,    45,    45,
-    45,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,    45,
-    45,    45,    45,    45,    45,    45,   nil,   nil,    45,   nil,
-   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,
-    45,    45,    45,    45,    45,    45,   nil,    45,    45,    45,
-   nil,    45,    45,   nil,    45,    45,    45,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
-   nil,   nil,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
-   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    45,   nil,   nil,   nil,   nil,    45,    45,    45,    45,    45,
-    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,
-   nil,   nil,    45,   nil,   nil,    45,    45,    45,   nil,    45,
-    45,    46,    46,    46,   nil,    46,   nil,   nil,   nil,    46,
-    46,   nil,   nil,   nil,    46,   nil,    46,    46,    46,    46,
-    46,    46,    46,   nil,   nil,   nil,   nil,   nil,    46,    46,
-    46,    46,    46,    46,    46,   nil,   nil,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,    46,
-    46,    46,    46,    46,    46,   nil,    46,    46,    46,   nil,
-    46,    46,   nil,    46,    46,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,   nil,
-   nil,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,
-   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
-   nil,   nil,   nil,   nil,    46,    46,    46,    46,    46,    46,
-   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,    46,   nil,   nil,    46,    46,    46,   nil,    46,    46,
-    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,    48,
-   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,    48,
-    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,    48,
-    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,    48,
-    48,    48,    48,    48,   nil,    48,    48,    48,   nil,    48,
-    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,
-    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,   nil,
-   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,    48,    48,    48,   nil,    48,    48,    62,
-    62,    62,    62,    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,    62,    62,   nil,    62,    62,    62,    62,    62,    62,
-    62,    62,    62,   nil,    62,    62,    62,   nil,    62,    62,
-   nil,    62,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    62,   nil,   nil,    62,   nil,   nil,    62,
-    62,   nil,   nil,    62,   nil,    62,   nil,   nil,   nil,    62,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,
-   nil,   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,
-   nil,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,    62,
-   nil,   nil,    62,    62,    62,   nil,    62,    62,    67,    67,
-    67,   nil,    67,   nil,   nil,   nil,    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,    67,   nil,   nil,   nil,
-   nil,    67,    67,    67,    67,    67,    67,   nil,   nil,   nil,
-    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,    67,    67,    67,   nil,    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,    68,
-    68,    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,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,
-    68,    68,    68,    68,    68,    68,   nil,   nil,   nil,    68,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-    68,    68,    68,   nil,    68,    68,    71,    71,    71,   nil,
-    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
-   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
-   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
-   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
-   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
-   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
-    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
-    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
-    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
-    71,    71,   nil,    71,    71,    72,    72,    72,   nil,    72,
-   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
-    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
-   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
-   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
-    72,    72,    72,   nil,    72,    72,   nil,   nil,   nil,    72,
-   nil,   nil,   nil,   nil,   nil,   988,   nil,   988,   988,   988,
-   988,   988,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
-   nil,   988,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   988,   nil,   nil,   nil,   nil,    72,    72,
-    72,    72,    72,    72,   988,   988,   nil,    72,    72,   nil,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
-    72,   nil,    72,    72,   128,   128,   128,   128,   128,   nil,
-   nil,   nil,   128,   128,   nil,   nil,   nil,   128,   988,   128,
-   128,   128,   128,   128,   128,   128,   nil,   nil,   nil,   nil,
-   nil,   128,   128,   128,   128,   128,   128,   128,   nil,   nil,
-   128,   nil,   nil,   nil,   nil,   nil,   128,   128,   128,   128,
-   128,   128,   128,   128,   128,   128,   128,   128,   nil,   128,
-   128,   128,   nil,   128,   128,   nil,   128,   128,   128,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,
-   nil,   128,   nil,   nil,   128,   128,   nil,   nil,   128,   nil,
-   128,   nil,   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   128,   nil,   nil,   nil,   nil,   128,   128,   128,
-   128,   128,   128,   nil,   nil,   nil,   128,   128,   nil,   nil,
-   nil,   nil,   nil,   128,   128,   nil,   nil,   128,   128,   128,
-   nil,   128,   128,   133,   133,   133,   nil,   133,   nil,   nil,
-   nil,   133,   133,   nil,   nil,   nil,   133,   nil,   133,   133,
-   133,   133,   133,   133,   133,   nil,   nil,   nil,   nil,   nil,
-   133,   133,   133,   133,   133,   133,   133,   nil,   nil,   133,
-   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,
-   133,   133,   133,   133,   133,   133,   133,   nil,   133,   133,
-   133,   nil,   133,   133,   nil,   133,   133,   133,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,
-   133,   nil,   nil,   133,   133,   nil,   nil,   133,   nil,   nil,
-   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   133,   nil,   nil,   nil,   nil,   133,   133,   133,   133,
-   133,   133,   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,
-   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,   nil,
-   133,   133,   134,   134,   134,   nil,   134,   nil,   nil,   nil,
-   134,   134,   nil,   nil,   nil,   134,   nil,   134,   134,   134,
-   134,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,   134,
-   134,   134,   134,   134,   134,   134,   nil,   nil,   134,   nil,
-   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   134,
-   134,   134,   134,   134,   134,   134,   nil,   134,   134,   134,
-   nil,   134,   134,   nil,   134,   134,   134,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,
-   nil,   nil,   134,   134,   nil,   nil,   134,   nil,   nil,   nil,
-   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   134,   nil,   nil,   nil,   nil,   134,   134,   134,   134,   134,
-   134,   nil,   nil,   nil,   134,   134,   nil,   nil,   nil,   nil,
-   nil,   nil,   134,   nil,   nil,   134,   134,   134,   nil,   134,
-   134,   135,   135,   135,   nil,   135,   nil,   nil,   nil,   135,
-   135,   nil,   nil,   nil,   135,   nil,   135,   135,   135,   135,
-   135,   135,   135,   nil,   nil,   nil,   nil,   nil,   135,   135,
-   135,   135,   135,   135,   135,   nil,   nil,   135,   nil,   nil,
-   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   135,   135,
-   135,   135,   135,   135,   135,   nil,   135,   135,   135,   nil,
-   135,   135,   nil,   135,   135,   135,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   nil,
-   nil,   135,   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,
-   nil,   135,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,
-   nil,   nil,   nil,   nil,   135,   135,   135,   135,   135,   135,
-   nil,   nil,   nil,   135,   135,   nil,   nil,   nil,   nil,   nil,
-   nil,   135,   nil,   nil,   135,   135,   135,   nil,   135,   135,
-   136,   136,   136,   nil,   136,   nil,   nil,   nil,   136,   136,
-   nil,   nil,   nil,   136,   nil,   136,   136,   136,   136,   136,
-   136,   136,   nil,   nil,   nil,   nil,   nil,   136,   136,   136,
-   136,   136,   136,   136,   nil,   nil,   136,   nil,   nil,   nil,
-   nil,   nil,   nil,   136,   nil,   nil,   136,   136,   136,   136,
-   136,   136,   136,   136,   nil,   136,   136,   136,   nil,   136,
-   136,   nil,   136,   136,   136,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,
-   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
-   nil,   nil,   nil,   136,   136,   136,   136,   136,   136,   nil,
-   nil,   nil,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   136,   136,   136,   nil,   136,   136,   137,
-   137,   137,   137,   137,   nil,   nil,   nil,   137,   137,   nil,
-   nil,   nil,   137,   nil,   137,   137,   137,   137,   137,   137,
-   137,   nil,   nil,   nil,   nil,   nil,   137,   137,   137,   137,
-   137,   137,   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,
-   nil,   137,   137,   nil,   137,   137,   137,   137,   137,   137,
-   137,   137,   137,   nil,   137,   137,   137,   nil,   137,   137,
-   nil,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,   nil,   137,
-   137,   nil,   nil,   137,   nil,   137,   nil,   nil,   nil,   137,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   nil,   nil,   137,   137,   137,   137,   137,   137,   nil,   nil,
-   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,
-   nil,   nil,   137,   137,   137,   nil,   137,   137,   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,   nil,   222,   222,   222,   222,   222,
-   222,   222,   nil,   nil,   222,   nil,   nil,   nil,   nil,   nil,
-   nil,   222,   nil,   nil,   222,   222,   222,   222,   222,   222,
-   222,   222,   nil,   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,   222,   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,   nil,   nil,   nil,   222,   nil,
-   nil,   222,   222,   222,   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,   nil,   223,   223,   223,   223,   223,   223,
-   223,   nil,   nil,   223,   nil,   nil,   nil,   nil,   nil,   nil,
-   223,   nil,   nil,   223,   223,   223,   223,   223,   223,   223,
-   223,   nil,   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,   223,   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,   nil,   nil,   nil,   223,   nil,   nil,
-   223,   223,   223,   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,   nil,   224,   224,   224,   224,   224,   224,   224,
-   nil,   nil,   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,
-   nil,   nil,   224,   224,   224,   224,   224,   224,   224,   224,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,
-   224,   224,   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,   nil,   225,   225,   225,   225,   225,   225,   225,   nil,
-   nil,   225,   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,
-   nil,   225,   225,   225,   225,   225,   225,   225,   225,   nil,
-   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,   225,   225,
-   225,   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,
-   nil,   226,   226,   226,   226,   226,   226,   226,   nil,   nil,
-   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,
-   226,   226,   226,   226,   226,   226,   226,   226,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,   226,
-   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,   nil,
-   227,   227,   227,   227,   227,   227,   227,   nil,   nil,   227,
-   nil,   nil,   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,
-   227,   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,   227,
-   nil,   227,   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,
-   nil,   nil,   nil,   227,   nil,   227,   227,   227,   227,   nil,
-   227,   227,   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,   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,
-   232,   nil,   nil,   nil,   nil,   232,   232,   232,   232,   232,
-   232,   nil,   nil,   nil,   232,   232,   nil,   nil,   nil,   nil,
-   nil,   nil,   232,   nil,   nil,   232,   232,   232,   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,   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,   233,
-   nil,   nil,   nil,   nil,   233,   233,   233,   233,   233,   233,
-   nil,   nil,   nil,   233,   233,   nil,   nil,   nil,   nil,   nil,
-   nil,   233,   nil,   nil,   233,   233,   233,   nil,   233,   233,
-   234,   234,   234,   nil,   234,   nil,   nil,   nil,   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,   234,   nil,
-   nil,   nil,   nil,   234,   234,   234,   234,   234,   234,   nil,
-   nil,   nil,   234,   234,   234,   nil,   nil,   nil,   nil,   nil,
-   234,   nil,   nil,   234,   234,   234,   nil,   234,   234,   245,
-   245,   245,   nil,   245,   nil,   nil,   nil,   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,   245,   nil,   nil,
-   nil,   nil,   245,   245,   245,   245,   245,   245,   nil,   nil,
-   nil,   245,   245,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   245,   245,   245,   nil,   245,   245,   248,   248,
-   248,   nil,   248,   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,
-   nil,   248,   248,   248,   248,   248,   248,   nil,   nil,   nil,
-   248,   248,   nil,   nil,   nil,   nil,   nil,   nil,   248,   nil,
-   nil,   248,   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,   nil,   nil,
-   249,   249,   249,   249,   249,   249,   nil,   nil,   nil,   249,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   249,   249,   249,   nil,   249,   249,   250,   250,   250,   nil,
-   250,   nil,   nil,   nil,   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,   250,   nil,   nil,   nil,   nil,   250,
-   250,   250,   250,   250,   250,   nil,   nil,   nil,   250,   250,
-   nil,   nil,   nil,   nil,   nil,   nil,   250,   nil,   nil,   250,
-   250,   250,   nil,   250,   250,   251,   251,   251,   nil,   251,
-   nil,   nil,   nil,   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,   251,   nil,   nil,   nil,   nil,   251,   251,
-   251,   251,   251,   251,   nil,   nil,   nil,   251,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,   251,   nil,   nil,   251,   251,
-   251,   nil,   251,   251,   252,   252,   252,   nil,   252,   nil,
-   nil,   nil,   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,   252,   nil,   nil,   nil,   nil,   252,   252,   252,
-   252,   252,   252,   nil,   nil,   nil,   252,   252,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   252,   252,   252,
-   nil,   252,   252,   253,   253,   253,   nil,   253,   nil,   nil,
-   nil,   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,   253,   nil,   nil,   nil,   nil,   253,   253,   253,   253,
-   253,   253,   nil,   nil,   nil,   253,   253,   nil,   nil,   nil,
-   nil,   nil,   nil,   253,   nil,   nil,   253,   253,   253,   nil,
-   253,   253,   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,   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,
-   254,   nil,   nil,   nil,   nil,   254,   254,   254,   254,   254,
-   254,   nil,   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,
-   nil,   nil,   254,   nil,   nil,   254,   254,   254,   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,   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,   255,
-   nil,   nil,   nil,   nil,   255,   255,   255,   255,   255,   255,
-   nil,   nil,   nil,   255,   255,   nil,   nil,   nil,   nil,   nil,
-   nil,   255,   nil,   nil,   255,   255,   255,   nil,   255,   255,
-   256,   256,   256,   nil,   256,   nil,   nil,   nil,   256,   256,
-   nil,   nil,   nil,   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,   256,   256,
-   256,   256,   256,   256,   nil,   256,   256,   256,   nil,   256,
-   256,   nil,   256,   256,   256,   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,   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,   nil,   nil,   nil,
-   256,   nil,   nil,   256,   256,   256,   nil,   256,   256,   257,
-   257,   257,   nil,   257,   nil,   nil,   nil,   257,   257,   nil,
-   nil,   nil,   257,   nil,   257,   257,   257,   257,   257,   257,
-   257,   nil,   nil,   nil,   nil,   nil,   257,   257,   257,   257,
-   257,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   257,   257,   257,   257,   257,
-   257,   257,   257,   nil,   257,   257,   257,   nil,   257,   257,
-   nil,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,   nil,   257,
-   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   257,   257,   257,   257,   257,   257,   nil,   nil,
-   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   257,   257,   257,   nil,   257,   257,   258,   258,
-   258,   nil,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,
-   nil,   258,   nil,   258,   258,   258,   258,   258,   258,   258,
-   nil,   nil,   nil,   nil,   nil,   258,   258,   258,   258,   258,
-   258,   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,
-   nil,   258,   nil,   nil,   258,   258,   258,   258,   258,   258,
-   258,   258,   nil,   258,   258,   258,   nil,   258,   258,   nil,
-   258,   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   258,   nil,   nil,   258,   nil,   nil,   258,   258,
-   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,
-   nil,   258,   258,   258,   258,   258,   258,   nil,   nil,   nil,
-   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   258,   258,   258,   nil,   258,   258,   259,   259,   259,
-   nil,   259,   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,
-   259,   nil,   259,   259,   259,   259,   259,   259,   259,   nil,
-   nil,   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,
-   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,
-   259,   nil,   nil,   259,   259,   259,   259,   259,   259,   259,
-   259,   nil,   259,   259,   259,   nil,   259,   259,   nil,   259,
-   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   259,   nil,   nil,   259,   nil,   nil,   259,   259,   nil,
-   nil,   259,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,
-   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,   259,
-   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   259,   259,   259,   nil,   259,   259,   260,   260,   260,   nil,
-   260,   nil,   nil,   nil,   260,   260,   nil,   nil,   nil,   260,
-   nil,   260,   260,   260,   260,   260,   260,   260,   nil,   nil,
-   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   260,
-   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,
-   nil,   nil,   260,   260,   260,   260,   260,   260,   260,   260,
-   nil,   260,   260,   260,   nil,   260,   260,   nil,   260,   260,
-   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   260,   nil,   nil,   260,   260,   nil,   nil,
-   260,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   260,
-   260,   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,
-   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,
-   260,   260,   nil,   260,   260,   261,   261,   261,   nil,   261,
-   nil,   nil,   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,   nil,
-   261,   261,   261,   nil,   261,   261,   nil,   261,   261,   261,
-   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,   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,   nil,   nil,   nil,   261,   nil,   nil,   261,   261,
-   261,   nil,   261,   261,   262,   262,   262,   nil,   262,   nil,
-   nil,   nil,   262,   262,   nil,   nil,   nil,   262,   nil,   262,
-   262,   262,   262,   262,   262,   262,   nil,   nil,   nil,   nil,
-   nil,   262,   262,   262,   262,   262,   262,   262,   nil,   nil,
-   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,
-   262,   262,   262,   262,   262,   262,   262,   262,   nil,   262,
-   262,   262,   nil,   262,   262,   nil,   262,   262,   262,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,
-   nil,   262,   nil,   nil,   262,   262,   nil,   nil,   262,   nil,
-   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,   262,   262,
-   262,   262,   262,   nil,   nil,   nil,   262,   262,   nil,   nil,
-   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,   262,
-   nil,   262,   262,   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,   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,   nil,   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,   nil,
-   nil,   nil,   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,   nil,   nil,   nil,
-   nil,   nil,   nil,   263,   nil,   nil,   263,   263,   263,   nil,
-   263,   263,   264,   264,   264,   nil,   264,   nil,   nil,   nil,
-   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,   nil,   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,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   264,   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,
-   264,   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,
-   264,   265,   265,   265,   nil,   265,   nil,   nil,   nil,   265,
-   265,   nil,   nil,   nil,   265,   nil,   265,   265,   265,   265,
-   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   265,   265,
-   265,   265,   265,   265,   265,   nil,   nil,   265,   nil,   nil,
-   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,
-   265,   265,   265,   265,   265,   nil,   265,   265,   265,   nil,
-   265,   265,   nil,   265,   265,   265,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   nil,
-   nil,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,
-   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,
-   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,   265,
-   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,   nil,   nil,
-   nil,   265,   nil,   nil,   265,   265,   265,   nil,   265,   265,
-   266,   266,   266,   nil,   266,   nil,   nil,   nil,   266,   266,
-   nil,   nil,   nil,   266,   nil,   266,   266,   266,   266,   266,
-   266,   266,   nil,   nil,   nil,   nil,   nil,   266,   266,   266,
-   266,   266,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,
-   nil,   nil,   nil,   266,   nil,   nil,   266,   266,   266,   266,
-   266,   266,   266,   266,   nil,   266,   266,   266,   nil,   266,
-   266,   nil,   266,   266,   266,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,
-   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
-   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,   nil,
-   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,
-   266,   nil,   nil,   266,   266,   266,   nil,   266,   266,   267,
-   267,   267,   nil,   267,   nil,   nil,   nil,   267,   267,   nil,
-   nil,   nil,   267,   nil,   267,   267,   267,   267,   267,   267,
-   267,   nil,   nil,   nil,   nil,   nil,   267,   267,   267,   267,
-   267,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,
-   nil,   nil,   267,   nil,   nil,   267,   267,   267,   267,   267,
-   267,   267,   267,   nil,   267,   267,   267,   nil,   267,   267,
-   nil,   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,   nil,   267,
-   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
-   nil,   nil,   267,   267,   267,   267,   267,   267,   nil,   nil,
-   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   267,   267,   267,   nil,   267,   267,   268,   268,
-   268,   nil,   268,   nil,   nil,   nil,   268,   268,   nil,   nil,
-   nil,   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,   268,   268,   268,   268,
-   268,   268,   nil,   268,   268,   268,   nil,   268,   268,   nil,
-   268,   268,   268,   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,   268,
-   nil,   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,
-   nil,   268,   268,   268,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,
-   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,
-   269,   nil,   nil,   269,   269,   269,   269,   269,   269,   269,
-   269,   nil,   269,   269,   269,   nil,   269,   269,   nil,   269,
-   269,   269,   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,   269,   nil,
-   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,
-   269,   269,   269,   nil,   269,   269,   274,   274,   274,   nil,
-   274,   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   274,
-   nil,   274,   274,   274,   274,   274,   274,   274,   nil,   nil,
-   nil,   nil,   nil,   274,   274,   274,   274,   274,   274,   274,
-   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,
-   nil,   nil,   274,   274,   274,   274,   274,   274,   274,   274,
-   nil,   274,   274,   274,   nil,   274,   274,   nil,   274,   274,
-   274,   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,   274,   274,   nil,   nil,
-   274,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,
-   274,   274,   274,   274,   274,   nil,   nil,   nil,   274,   274,
-   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,
-   274,   274,   nil,   274,   274,   282,   282,   282,   nil,   282,
-   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,   282,   nil,
-   282,   282,   282,   282,   282,   282,   282,   nil,   nil,   nil,
-   nil,   nil,   282,   282,   282,   282,   282,   282,   282,   nil,
-   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   282,   282,   282,   282,   282,   282,   282,   282,   282,
-   282,   282,   282,   nil,   282,   282,   nil,   282,   282,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   nil,   282,   nil,   nil,   282,   282,   nil,   nil,   282,
-   nil,   282,   nil,   282,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   282,   282,
-   282,   282,   282,   282,   nil,   nil,   nil,   282,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   282,   282,   282,
-   282,   nil,   282,   282,   283,   283,   283,   nil,   283,   nil,
-   nil,   nil,   283,   283,   nil,   nil,   nil,   283,   nil,   283,
-   283,   283,   283,   283,   283,   283,   nil,   nil,   nil,   nil,
-   nil,   283,   283,   283,   283,   283,   283,   283,   nil,   nil,
-   283,   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,
-   283,   283,   283,   283,   283,   283,   283,   283,   283,   283,
-   283,   283,   nil,   283,   283,   nil,   283,   283,   283,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,
-   nil,   283,   nil,   nil,   283,   283,   nil,   nil,   283,   nil,
-   283,   nil,   283,   nil,   283,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   283,   nil,   nil,   nil,   nil,   283,   283,   283,
-   283,   283,   283,   nil,   nil,   nil,   283,   283,   nil,   nil,
-   nil,   nil,   nil,   nil,   283,   nil,   283,   283,   283,   283,
-   nil,   283,   283,   292,   292,   292,   nil,   292,   nil,   nil,
-   nil,   292,   292,   nil,   nil,   nil,   292,   nil,   292,   292,
-   292,   292,   292,   292,   292,   nil,   nil,   nil,   nil,   nil,
-   292,   292,   292,   292,   292,   292,   292,   nil,   nil,   292,
-   nil,   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,   292,
-   292,   292,   292,   292,   292,   292,   292,   292,   292,   292,
-   292,   nil,   292,   292,   nil,   292,   292,   292,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,
-   292,   nil,   nil,   292,   292,   nil,   nil,   292,   nil,   292,
-   nil,   292,   nil,   292,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   292,   nil,   nil,   nil,   nil,   292,   292,   292,   292,
-   292,   292,   nil,   nil,   nil,   292,   292,   292,   nil,   nil,
-   nil,   nil,   nil,   292,   nil,   292,   292,   292,   292,   nil,
-   292,   292,   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,   nil,   299,
-   299,   299,   299,   299,   299,   299,   nil,   nil,   299,   nil,
-   nil,   nil,   nil,   nil,   nil,   299,   nil,   nil,   299,   299,
-   299,   299,   299,   299,   299,   299,   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   299,   nil,   nil,   299,   299,   299,   nil,   299,
-   299,   301,   301,   301,   nil,   301,   nil,   nil,   nil,   301,
-   301,   nil,   nil,   nil,   301,   nil,   301,   301,   301,   301,
-   301,   301,   301,   nil,   nil,   nil,   nil,   nil,   301,   301,
-   301,   301,   301,   301,   301,   nil,   nil,   301,   nil,   nil,
-   nil,   nil,   nil,   nil,   301,   nil,   nil,   301,   301,   301,
-   301,   301,   301,   301,   301,   nil,   301,   301,   301,   nil,
-   301,   301,   nil,   301,   301,   301,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,   301,   nil,
-   nil,   301,   301,   nil,   nil,   301,   nil,   nil,   nil,   nil,
-   nil,   301,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   301,
-   nil,   nil,   nil,   nil,   301,   301,   301,   301,   301,   301,
-   nil,   nil,   nil,   301,   301,   nil,   nil,   nil,   nil,   nil,
-   nil,   301,   nil,   nil,   301,   301,   301,   nil,   301,   301,
-   304,   304,   304,   nil,   304,   nil,   nil,   nil,   304,   304,
-   nil,   nil,   nil,   304,   nil,   304,   304,   304,   304,   304,
-   304,   304,   nil,   nil,   nil,   nil,   nil,   304,   304,   304,
-   304,   304,   304,   304,   nil,   nil,   304,   nil,   nil,   nil,
-   nil,   nil,   nil,   304,   nil,   nil,   304,   304,   304,   304,
-   304,   304,   304,   304,   nil,   304,   304,   304,   nil,   304,
-   304,   nil,   304,   304,   304,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,   nil,   nil,
-   304,   304,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
-   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,
-   nil,   nil,   nil,   304,   304,   304,   304,   304,   304,   nil,
-   nil,   nil,   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,
-   304,   nil,   nil,   304,   304,   304,   nil,   304,   304,   305,
-   305,   305,   nil,   305,   nil,   nil,   nil,   305,   305,   nil,
-   nil,   nil,   305,   nil,   305,   305,   305,   305,   305,   305,
-   305,   nil,   nil,   nil,   nil,   nil,   305,   305,   305,   305,
-   305,   305,   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,
-   nil,   nil,   305,   nil,   nil,   305,   305,   305,   305,   305,
-   305,   305,   305,   nil,   305,   305,   305,   nil,   305,   305,
-   nil,   305,   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   305,   nil,   nil,   305,   nil,   nil,   305,
-   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,   nil,   305,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
-   nil,   nil,   305,   305,   305,   305,   305,   305,   nil,   nil,
-   nil,   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,   305,
-   nil,   nil,   305,   305,   305,   nil,   305,   305,   311,   311,
-   311,   311,   311,   nil,   nil,   nil,   311,   311,   nil,   nil,
-   nil,   311,   nil,   311,   311,   311,   311,   311,   311,   311,
-   nil,   nil,   nil,   nil,   nil,   311,   311,   311,   311,   311,
-   311,   311,   nil,   nil,   311,   nil,   nil,   nil,   nil,   nil,
-   311,   311,   nil,   311,   311,   311,   311,   311,   311,   311,
-   311,   311,   nil,   311,   311,   311,   nil,   311,   311,   nil,
-   311,   311,   311,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   311,   nil,   nil,   311,   nil,   nil,   311,   311,
-   nil,   nil,   311,   nil,   311,   nil,   nil,   nil,   311,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,   nil,   nil,
-   nil,   311,   311,   311,   311,   311,   311,   nil,   nil,   nil,
-   311,   311,   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,
-   nil,   311,   311,   311,   nil,   311,   311,   319,   319,   319,
-   nil,   319,   nil,   nil,   nil,   319,   319,   nil,   nil,   nil,
-   319,   nil,   319,   319,   319,   319,   319,   319,   319,   nil,
-   nil,   nil,   nil,   nil,   319,   319,   319,   319,   319,   319,
-   319,   nil,   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,
-   319,   nil,   nil,   319,   319,   319,   319,   319,   319,   319,
-   319,   nil,   319,   319,   319,   nil,   319,   319,   nil,   nil,
-   nil,   319,   nil,   nil,   nil,   nil,   nil,  1052,   nil,  1052,
-  1052,  1052,  1052,  1052,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   319,   nil,  1052,   319,   nil,   nil,   319,   319,   nil,
-   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1052,   nil,   nil,   nil,   nil,
-   319,   319,   319,   319,   319,   319,  1052,  1052,   nil,   319,
-   319,   nil,   nil,   nil,   319,   nil,   nil,   319,   nil,   nil,
-   319,   319,   319,   nil,   319,   319,   336,   336,   336,   nil,
-   336,   nil,   nil,   nil,   336,   336,   nil,   nil,   nil,   336,
-  1052,   336,   336,   336,   336,   336,   336,   336,   nil,   nil,
-   nil,   nil,   nil,   336,   336,   336,   336,   336,   336,   336,
-   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,
-   nil,   nil,   336,   336,   336,   336,   336,   336,   336,   336,
-   nil,   336,   336,   336,   nil,   336,   336,   nil,   nil,   nil,
-   336,   nil,   nil,   nil,   nil,   nil,  1061,   nil,  1061,  1061,
-  1061,  1061,  1061,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   336,   nil,  1061,   336,   nil,   nil,   336,   336,   nil,   nil,
-   336,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1061,   nil,   nil,   nil,   nil,   336,
-   336,   336,   336,   336,   336,  1061,  1061,   nil,   336,   336,
-   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,   336,
-   336,   336,   nil,   336,   336,   343,   343,   343,   nil,   343,
-   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,   343,  1061,
-   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   nil,
-   nil,   nil,   343,   343,   343,   343,   343,   343,   343,   nil,
-   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,
-   nil,   343,   343,   343,   343,   343,   343,   343,   343,   nil,
-   343,   343,   343,   nil,   343,   343,   nil,   343,   343,   343,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,
-   nil,   nil,   343,   nil,   nil,   343,   343,   nil,   nil,   343,
-   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   343,   343,
-   343,   343,   343,   343,   nil,   nil,   nil,   343,   343,   nil,
-   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,   343,
-   343,   nil,   343,   343,   345,   345,   345,   nil,   345,   nil,
-   nil,   nil,   345,   345,   nil,   nil,   nil,   345,   nil,   345,
-   345,   345,   345,   345,   345,   345,   nil,   nil,   nil,   nil,
-   nil,   345,   345,   345,   345,   345,   345,   345,   nil,   nil,
-   345,   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,
-   345,   345,   345,   345,   345,   345,   345,   345,   nil,   345,
-   345,   345,   nil,   345,   345,   nil,   345,   345,   345,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,
-   nil,   345,   345,   nil,   345,   345,   nil,   nil,   345,   nil,
-   nil,   nil,   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   345,   nil,   nil,   nil,   nil,   345,   345,   345,
-   345,   345,   345,   nil,   nil,   nil,   345,   345,   nil,   nil,
-   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,   345,   345,
-   nil,   345,   345,   349,   349,   349,   nil,   349,   nil,   nil,
-   nil,   349,   349,   nil,   nil,   nil,   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,   349,   349,   349,   349,   349,   349,   349,   349,   349,
-   349,   nil,   349,   349,   nil,   349,   349,   349,   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,   349,   nil,   nil,   349,   nil,   349,
-   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,
-   nil,   nil,   nil,   349,   nil,   349,   349,   349,   349,   nil,
-   349,   349,   350,   350,   350,   nil,   350,   nil,   nil,   nil,
-   350,   350,   nil,   nil,   nil,   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,
-   350,   350,   350,   350,   350,   350,   350,   350,   350,   350,
-   nil,   350,   350,   nil,   350,   350,   350,   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,   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,   nil,
-   nil,   nil,   350,   nil,   350,   350,   350,   350,   nil,   350,
-   350,   355,   355,   355,   nil,   355,   nil,   nil,   nil,   355,
-   355,   nil,   nil,   nil,   355,   nil,   355,   355,   355,   355,
-   355,   355,   355,   nil,   nil,   nil,   nil,   nil,   355,   355,
-   355,   355,   355,   355,   355,   nil,   nil,   355,   nil,   nil,
-   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,   355,   355,
-   355,   355,   355,   355,   355,   nil,   355,   355,   355,   nil,
-   355,   355,   nil,   355,   355,   355,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,   nil,
-   nil,   355,   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,
-   nil,   355,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,
-   nil,   nil,   nil,   nil,   355,   355,   355,   355,   355,   355,
-   nil,   nil,   nil,   355,   355,   nil,   nil,   nil,   nil,   nil,
-   nil,   355,   nil,   nil,   355,   355,   355,   nil,   355,   355,
-   369,   369,   369,   nil,   369,   nil,   nil,   nil,   369,   369,
-   nil,   nil,   nil,   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,   369,   369,
-   369,   369,   369,   369,   nil,   369,   369,   369,   nil,   369,
-   369,   nil,   nil,   nil,   369,   nil,   nil,   nil,   nil,   nil,
-  1063,   nil,  1063,  1063,  1063,  1063,  1063,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   369,   nil,  1063,   369,   nil,   nil,
-   369,   369,   nil,   nil,   369,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1063,   nil,
-   nil,   nil,   nil,   369,   369,   369,   369,   369,   369,  1063,
-  1063,   nil,   369,   369,   nil,   nil,   nil,   nil,   nil,   nil,
-   369,   nil,   nil,   369,   369,   369,   nil,   369,   369,   371,
-   371,   371,   nil,   371,   nil,   nil,   nil,   371,   371,   nil,
-   nil,   nil,   371,  1063,   371,   371,   371,   371,   371,   371,
-   371,   nil,   nil,   nil,   nil,   nil,   371,   371,   371,   371,
-   371,   371,   371,   nil,   nil,   371,   nil,   nil,   nil,   nil,
-   nil,   nil,   371,   nil,   nil,   371,   371,   371,   371,   371,
-   371,   371,   371,   nil,   371,   371,   371,   nil,   371,   371,
-   nil,   nil,   nil,   371,   nil,   nil,   nil,   nil,   nil,  1065,
-   nil,  1065,  1065,  1065,  1065,  1065,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   371,   nil,  1065,   371,   nil,   nil,   371,
-   371,   nil,   nil,   371,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1065,   nil,   nil,
-   nil,   nil,   371,   371,   371,   371,   371,   371,  1065,  1065,
-   nil,   371,   371,   nil,   nil,   nil,   nil,   nil,   nil,   371,
-   nil,   nil,   371,   371,   371,   nil,   371,   371,   431,   431,
-   431,   nil,   431,   nil,   nil,   nil,   431,   431,   nil,   nil,
-   nil,   431,  1065,   431,   431,   431,   431,   431,   431,   431,
-   nil,   nil,   nil,   nil,   nil,   431,   431,   431,   431,   431,
-   431,   431,   nil,   nil,   431,   nil,   nil,   nil,   nil,   nil,
-   nil,   431,   nil,   nil,   431,   431,   431,   431,   431,   431,
-   431,   431,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   431,   nil,
-   nil,   431,   431,   431,   nil,   431,   431,   475,   475,   475,
-   nil,   475,   nil,   nil,   nil,   475,   475,   nil,   nil,   nil,
-   475,   nil,   475,   475,   475,   475,   475,   475,   475,   nil,
-   nil,   nil,   nil,   nil,   475,   475,   475,   475,   475,   475,
-   475,   nil,   nil,   475,   nil,   nil,   nil,   nil,   nil,   nil,
-   475,   nil,   nil,   475,   475,   475,   475,   475,   475,   475,
-   475,   475,   475,   475,   475,   nil,   475,   475,   nil,   475,
-   475,   475,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   475,   nil,   nil,   475,   nil,   nil,   475,   475,   nil,
-   nil,   475,   nil,   475,   nil,   475,   nil,   475,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   475,   nil,   nil,   nil,   nil,
-   475,   475,   475,   475,   475,   475,   nil,   nil,   nil,   475,
-   475,   nil,   nil,   nil,   nil,   nil,   nil,   475,   nil,   475,
-   475,   475,   475,   nil,   475,   475,   477,   477,   477,   nil,
-   477,   nil,   nil,   nil,   477,   477,   nil,   nil,   nil,   477,
-   nil,   477,   477,   477,   477,   477,   477,   477,   nil,   nil,
-   nil,   nil,   nil,   477,   477,   477,   477,   477,   477,   477,
-   nil,   nil,   477,   nil,   nil,   nil,   nil,   nil,   nil,   477,
-   nil,   nil,   477,   477,   477,   477,   477,   477,   477,   477,
-   nil,   477,   477,   477,   nil,   477,   477,   nil,   477,   477,
-   477,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   477,   nil,   nil,   477,   nil,   nil,   477,   477,   nil,   nil,
-   477,   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   477,   nil,   nil,   nil,   nil,   477,
-   477,   477,   477,   477,   477,   nil,   nil,   nil,   477,   477,
-   nil,   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   477,
-   477,   477,   nil,   477,   477,   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,   nil,   478,   478,   478,   478,   478,   478,   478,   nil,
-   nil,   478,   nil,   nil,   nil,   nil,   nil,   nil,   478,   nil,
-   nil,   478,   478,   478,   478,   478,   478,   478,   478,   nil,
-   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,   nil,   nil,   478,   478,   nil,   nil,   478,
-   nil,   nil,   nil,   nil,   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,   478,   478,
-   478,   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,
-   nil,   479,   479,   479,   479,   479,   479,   479,   nil,   nil,
-   479,   nil,   nil,   nil,   nil,   nil,   nil,   479,   nil,   nil,
-   479,   479,   479,   479,   479,   479,   479,   479,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   479,   nil,   nil,   479,   479,   479,
-   nil,   479,   479,   517,   517,   517,   nil,   517,   nil,   nil,
-   nil,   517,   517,   nil,   nil,   nil,   517,   nil,   517,   517,
-   517,   517,   517,   517,   517,   nil,   nil,   nil,   nil,   nil,
-   517,   517,   517,   517,   517,   517,   517,   nil,   nil,   517,
-   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,   517,
-   517,   517,   517,   517,   517,   517,   517,   517,   517,   517,
-   517,   nil,   517,   517,   nil,   517,   517,   517,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,
-   517,   nil,   nil,   517,   517,   nil,   nil,   517,   nil,   517,
-   nil,   517,   nil,   517,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   517,   nil,   nil,   nil,   nil,   517,   517,   517,   517,
-   517,   517,   nil,   nil,   nil,   517,   517,   nil,   nil,   nil,
-   nil,   nil,   nil,   517,   nil,   517,   517,   517,   517,   nil,
-   517,   517,   520,   520,   520,   nil,   520,   nil,   nil,   nil,
-   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,   520,   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,
-   520,   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,   nil,
-   nil,   nil,   520,   nil,   520,   520,   520,   520,   nil,   520,
-   520,   522,   522,   522,   nil,   522,   nil,   nil,   nil,   522,
-   522,   nil,   nil,   nil,   522,   nil,   522,   522,   522,   522,
-   522,   522,   522,   nil,   nil,   nil,   nil,   nil,   522,   522,
-   522,   522,   522,   522,   522,   nil,   nil,   522,   nil,   nil,
-   nil,   nil,   nil,   nil,   522,   nil,   nil,   522,   522,   522,
-   522,   522,   522,   522,   522,   nil,   522,   522,   522,   nil,
-   522,   522,   nil,   522,   522,   522,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   522,   nil,   nil,   522,   nil,
-   nil,   522,   522,   nil,   nil,   522,   nil,   nil,   nil,   nil,
-   nil,   522,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   522,
-   nil,   nil,   nil,   nil,   522,   522,   522,   522,   522,   522,
-   nil,   nil,   nil,   522,   522,   nil,   nil,   nil,   nil,   nil,
-   nil,   522,   nil,   nil,   522,   522,   522,   nil,   522,   522,
-   528,   528,   528,   528,   528,   nil,   nil,   nil,   528,   528,
-   nil,   nil,   nil,   528,   nil,   528,   528,   528,   528,   528,
-   528,   528,   nil,   nil,   nil,   nil,   nil,   528,   528,   528,
-   528,   528,   528,   528,   nil,   nil,   528,   nil,   nil,   nil,
-   nil,   nil,   528,   528,   528,   528,   528,   528,   528,   528,
-   528,   528,   528,   528,   nil,   528,   528,   528,   nil,   528,
-   528,   nil,   528,   528,   528,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   528,   nil,   nil,   528,   nil,   nil,
-   528,   528,   nil,   nil,   528,   nil,   528,   nil,   nil,   nil,
-   528,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,
-   nil,   nil,   nil,   528,   528,   528,   528,   528,   528,   nil,
-   nil,   nil,   528,   528,   nil,   nil,   nil,   nil,   nil,   528,
-   528,   nil,   nil,   528,   528,   528,   nil,   528,   528,   536,
-   536,   536,   nil,   536,   nil,   nil,   nil,   536,   536,   nil,
-   nil,   nil,   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,   536,   536,   536,
-   536,   536,   536,   nil,   536,   536,   536,   nil,   536,   536,
-   nil,   nil,   nil,   536,   nil,   nil,   nil,   nil,   nil,  1087,
-   nil,  1087,  1087,  1087,  1087,  1087,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   536,   nil,  1087,   536,   nil,   nil,   536,
-   536,   nil,   nil,   536,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1087,   nil,   nil,
-   nil,   nil,   536,   536,   536,   536,   536,   536,  1087,  1087,
-   nil,   536,   536,   nil,   nil,   nil,   nil,   nil,   nil,   536,
-   nil,   nil,   536,   536,   536,   nil,   536,   536,   538,   538,
-   538,   nil,   538,   nil,   nil,   nil,   538,   538,   nil,   nil,
-   nil,   538,  1087,   538,   538,   538,   538,   538,   538,   538,
-   nil,   nil,   nil,   nil,   nil,   538,   538,   538,   538,   538,
-   538,   538,   nil,   nil,   538,   nil,   nil,   nil,   nil,   nil,
-   nil,   538,   nil,   nil,   538,   538,   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,   538,   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,   nil,   nil,   nil,   nil,   nil,   nil,   538,   nil,
-   538,   538,   538,   538,   nil,   538,   538,   544,   544,   544,
-   nil,   544,   nil,   nil,   nil,   544,   544,   nil,   nil,   nil,
-   544,   nil,   544,   544,   544,   544,   544,   544,   544,   nil,
-   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,   544,
-   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
-   544,   nil,   nil,   544,   544,   544,   544,   544,   544,   544,
-   544,   nil,   544,   544,   544,   nil,   544,   544,   nil,   nil,
-   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   544,   nil,   nil,   544,   nil,   nil,   544,   544,   nil,
-   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   544,   544,   544,   544,   544,   544,   nil,   nil,   nil,   544,
-   544,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,
-   544,   544,   544,   nil,   544,   544,   547,   547,   547,   nil,
-   547,   nil,   nil,   nil,   547,   547,   nil,   nil,   nil,   547,
-   nil,   547,   547,   547,   547,   547,   547,   547,   nil,   nil,
-   nil,   nil,   nil,   547,   547,   547,   547,   547,   547,   547,
-   nil,   nil,   547,   nil,   nil,   nil,   nil,   nil,   nil,   547,
-   nil,   nil,   547,   547,   547,   547,   547,   547,   547,   547,
-   nil,   547,   547,   547,   nil,   547,   547,   nil,   547,   547,
-   547,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   547,   nil,   nil,   547,   nil,   nil,   547,   547,   nil,   nil,
-   547,   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   547,   nil,   nil,   nil,   nil,   547,
-   547,   547,   547,   547,   547,   nil,   nil,   nil,   547,   547,
-   nil,   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   547,
-   547,   547,   nil,   547,   547,   548,   548,   548,   nil,   548,
-   nil,   nil,   nil,   548,   548,   nil,   nil,   nil,   548,   nil,
-   548,   548,   548,   548,   548,   548,   548,   nil,   nil,   nil,
-   nil,   nil,   548,   548,   548,   548,   548,   548,   548,   nil,
-   nil,   548,   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,
-   nil,   548,   548,   548,   548,   548,   548,   548,   548,   nil,
-   548,   548,   548,   nil,   548,   548,   nil,   548,   548,   548,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   548,
-   nil,   nil,   548,   nil,   nil,   548,   548,   nil,   nil,   548,
-   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   548,   nil,   nil,   nil,   nil,   548,   548,
-   548,   548,   548,   548,   nil,   nil,   nil,   548,   548,   nil,
-   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   548,   548,
-   548,   nil,   548,   548,   553,   553,   553,   nil,   553,   nil,
-   nil,   nil,   553,   553,   nil,   nil,   nil,   553,   nil,   553,
-   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,   nil,
-   nil,   553,   553,   553,   553,   553,   553,   553,   nil,   nil,
-   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,
-   553,   553,   553,   553,   553,   553,   553,   553,   nil,   553,
-   553,   553,   nil,   553,   553,   nil,   553,   553,   553,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,
-   nil,   553,   nil,   nil,   553,   553,   nil,   nil,   553,   nil,
-   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   553,   nil,   nil,   nil,   nil,   553,   553,   553,
-   553,   553,   553,   nil,   nil,   nil,   553,   553,   nil,   nil,
-   nil,   nil,   nil,   nil,   553,   nil,   nil,   553,   553,   553,
-   nil,   553,   553,   577,   577,   577,   nil,   577,   nil,   nil,
-   nil,   577,   577,   nil,   nil,   nil,   577,   nil,   577,   577,
-   577,   577,   577,   577,   577,   nil,   nil,   nil,   nil,   nil,
-   577,   577,   577,   577,   577,   577,   577,   nil,   nil,   577,
-   nil,   nil,   nil,   nil,   nil,   nil,   577,   nil,   nil,   577,
-   577,   577,   577,   577,   577,   577,   577,   577,   577,   577,
-   577,   nil,   577,   577,   nil,   577,   577,   577,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   577,   nil,   nil,
-   577,   nil,   nil,   577,   577,   nil,   nil,   577,   nil,   577,
-   nil,   577,   nil,   577,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   577,   nil,   nil,   nil,   nil,   577,   577,   577,   577,
-   577,   577,   nil,   nil,   nil,   577,   577,   nil,   nil,   nil,
-   nil,   nil,   nil,   577,   nil,   577,   577,   577,   577,   nil,
-   577,   577,   589,   589,   589,   nil,   589,   nil,   nil,   nil,
-   589,   589,   nil,   nil,   nil,   589,   nil,   589,   589,   589,
-   589,   589,   589,   589,   nil,   nil,   nil,   nil,   nil,   589,
-   589,   589,   589,   589,   589,   589,   nil,   nil,   589,   nil,
-   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   589,
-   589,   589,   589,   589,   589,   589,   nil,   589,   589,   589,
-   nil,   589,   589,   nil,   589,   589,   589,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,
-   nil,   nil,   589,   589,   nil,   nil,   589,   nil,   nil,   nil,
-   nil,   nil,   589,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   589,   nil,   nil,   nil,   nil,   589,   589,   589,   589,   589,
-   589,   nil,   nil,   nil,   589,   589,   nil,   nil,   nil,   nil,
-   nil,   nil,   589,   nil,   nil,   589,   589,   589,   nil,   589,
-   589,   595,   595,   595,   nil,   595,   nil,   nil,   nil,   595,
-   595,   nil,   nil,   nil,   595,   nil,   595,   595,   595,   595,
-   595,   595,   595,   nil,   nil,   nil,   nil,   nil,   595,   595,
-   595,   595,   595,   595,   595,   nil,   nil,   595,   nil,   nil,
-   nil,   nil,   nil,   nil,   595,   nil,   nil,   595,   595,   595,
-   595,   595,   595,   595,   595,   nil,   595,   595,   595,   nil,
-   595,   595,   nil,   595,   595,   595,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,   595,   nil,
-   nil,   595,   595,   nil,   nil,   595,   nil,   nil,   nil,   nil,
-   nil,   595,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   595,
-   nil,   nil,   nil,   nil,   595,   595,   595,   595,   595,   595,
-   nil,   nil,   nil,   595,   595,   nil,   nil,   nil,   nil,   nil,
-   nil,   595,   nil,   nil,   595,   595,   595,   nil,   595,   595,
-   617,   617,   617,   nil,   617,   nil,   nil,   nil,   617,   617,
-   nil,   nil,   nil,   617,   nil,   617,   617,   617,   617,   617,
-   617,   617,   nil,   nil,   nil,   nil,   nil,   617,   617,   617,
-   617,   617,   617,   617,   nil,   nil,   617,   nil,   nil,   nil,
-   nil,   nil,   nil,   617,   nil,   nil,   617,   617,   617,   617,
-   617,   617,   617,   617,   nil,   617,   617,   617,   nil,   617,
-   617,   nil,   617,   617,   617,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   617,   nil,   nil,   617,   nil,   nil,
-   617,   617,   nil,   nil,   617,   nil,   nil,   nil,   nil,   nil,
-   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   617,   nil,
-   nil,   nil,   nil,   617,   617,   617,   617,   617,   617,   nil,
-   nil,   nil,   617,   617,   nil,   nil,   nil,   nil,   nil,   nil,
-   617,   nil,   nil,   617,   617,   617,   nil,   617,   617,   657,
-   657,   657,   nil,   657,   nil,   nil,   nil,   657,   657,   nil,
-   nil,   nil,   657,   nil,   657,   657,   657,   657,   657,   657,
-   657,   nil,   nil,   nil,   nil,   nil,   657,   657,   657,   657,
-   657,   657,   657,   nil,   nil,   657,   nil,   nil,   nil,   nil,
-   nil,   nil,   657,   nil,   nil,   657,   657,   657,   657,   657,
-   657,   657,   657,   nil,   657,   657,   657,   nil,   657,   657,
-   nil,   657,   657,   657,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   657,   nil,   nil,   657,   nil,   nil,   657,
-   657,   nil,   nil,   657,   nil,   657,   nil,   nil,   nil,   657,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   657,   nil,   nil,
-   nil,   nil,   657,   657,   657,   657,   657,   657,   nil,   nil,
-   nil,   657,   657,   nil,   nil,   nil,   nil,   nil,   nil,   657,
-   nil,   nil,   657,   657,   657,   nil,   657,   657,   658,   658,
-   658,   nil,   658,   nil,   nil,   nil,   658,   658,   nil,   nil,
-   nil,   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,   658,   658,   658,   658,
-   658,   658,   nil,   658,   658,   658,   nil,   658,   658,   nil,
-   658,   658,   658,   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,   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,   658,   658,   nil,   658,   658,   659,   659,   659,
-   nil,   659,   nil,   nil,   nil,   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,   659,   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,   659,   nil,   659,   nil,   659,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   659,   nil,   nil,   nil,   nil,
-   659,   659,   659,   659,   659,   659,   nil,   nil,   nil,   659,
-   659,   nil,   nil,   nil,   nil,   nil,   nil,   659,   nil,   659,
-   659,   659,   659,   nil,   659,   659,   662,   662,   662,   662,
-   662,   nil,   nil,   nil,   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,   662,   662,
-   nil,   662,   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,   662,   nil,   nil,   nil,   662,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   662,   nil,   nil,   nil,   nil,   662,
-   662,   662,   662,   662,   662,   nil,   nil,   nil,   662,   662,
-   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,   nil,   662,
-   662,   662,   nil,   662,   662,   663,   663,   663,   nil,   663,
-   nil,   nil,   nil,   663,   663,   nil,   nil,   nil,   663,   nil,
-   663,   663,   663,   663,   663,   663,   663,   nil,   nil,   nil,
-   nil,   nil,   663,   663,   663,   663,   663,   663,   663,   nil,
-   nil,   663,   nil,   nil,   nil,   nil,   nil,   nil,   663,   nil,
-   nil,   663,   663,   663,   663,   663,   663,   663,   663,   nil,
-   663,   663,   663,   nil,   663,   663,   nil,   663,   663,   663,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   663,
-   nil,   nil,   663,   nil,   nil,   663,   663,   nil,   nil,   663,
-   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   663,   nil,   nil,   nil,   nil,   663,   663,
-   663,   663,   663,   663,   nil,   nil,   nil,   663,   663,   nil,
-   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,   663,   663,
-   663,   nil,   663,   663,   666,   666,   666,   nil,   666,   nil,
-   nil,   nil,   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,   666,   666,
-   666,   666,   nil,   666,   666,   nil,   666,   666,   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,
-   666,   nil,   666,   nil,   666,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   666,   nil,   nil,   nil,   nil,   666,   666,   666,
-   666,   666,   666,   nil,   nil,   nil,   666,   666,   nil,   nil,
-   nil,   nil,   nil,   nil,   666,   nil,   666,   666,   666,   666,
-   nil,   666,   666,   667,   667,   667,   nil,   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,   nil,   667,   nil,   nil,   667,
-   667,   667,   667,   667,   667,   667,   667,   667,   667,   667,
-   667,   nil,   667,   667,   nil,   667,   667,   667,   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,   667,   nil,   nil,   667,   nil,   nil,
-   nil,   667,   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,
-   nil,   nil,   nil,   667,   nil,   667,   667,   667,   667,   nil,
-   667,   667,   668,   668,   668,   nil,   668,   nil,   nil,   nil,
-   668,   668,   nil,   nil,   nil,   668,   nil,   668,   668,   668,
-   668,   668,   668,   668,   nil,   nil,   nil,   nil,   nil,   668,
-   668,   668,   668,   668,   668,   668,   nil,   nil,   668,   nil,
-   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   668,   668,
-   668,   668,   668,   668,   668,   668,   nil,   668,   668,   668,
-   nil,   668,   668,   nil,   668,   668,   668,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   668,
-   nil,   nil,   668,   668,   nil,   nil,   668,   nil,   nil,   nil,
-   nil,   nil,   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   668,   nil,   nil,   nil,   nil,   668,   668,   668,   668,   668,
-   668,   nil,   nil,   nil,   668,   668,   nil,   nil,   nil,   nil,
-   nil,   nil,   668,   nil,   nil,   668,   668,   668,   nil,   668,
-   668,   669,   669,   669,   nil,   669,   nil,   nil,   nil,   669,
-   669,   nil,   nil,   nil,   669,   nil,   669,   669,   669,   669,
-   669,   669,   669,   nil,   nil,   nil,   nil,   nil,   669,   669,
-   669,   669,   669,   669,   669,   nil,   nil,   669,   nil,   nil,
-   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,   669,   669,
-   669,   669,   669,   669,   669,   nil,   669,   669,   669,   nil,
-   669,   669,   nil,   669,   669,   669,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,   nil,
-   nil,   669,   669,   nil,   nil,   669,   nil,   nil,   nil,   nil,
-   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   669,
-   nil,   nil,   nil,   nil,   669,   669,   669,   669,   669,   669,
-   nil,   nil,   nil,   669,   669,   nil,   nil,   nil,   nil,   nil,
-   nil,   669,   nil,   nil,   669,   669,   669,   nil,   669,   669,
-   674,   674,   674,   nil,   674,   nil,   nil,   nil,   674,   674,
-   nil,   nil,   nil,   674,   nil,   674,   674,   674,   674,   674,
-   674,   674,   nil,   nil,   nil,   nil,   nil,   674,   674,   674,
-   674,   674,   674,   674,   nil,   nil,   674,   nil,   nil,   nil,
-   nil,   nil,   nil,   674,   nil,   nil,   674,   674,   674,   674,
-   674,   674,   674,   674,   nil,   674,   674,   674,   nil,   674,
-   674,   nil,   674,   674,   674,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,   nil,   nil,
-   674,   674,   nil,   nil,   674,   nil,   nil,   nil,   nil,   nil,
-   674,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,
-   nil,   nil,   nil,   674,   674,   674,   674,   674,   674,   nil,
-   nil,   nil,   674,   674,   nil,   nil,   nil,   nil,   nil,   nil,
-   674,   nil,   nil,   674,   674,   674,   nil,   674,   674,   675,
-   675,   675,   nil,   675,   nil,   nil,   nil,   675,   675,   nil,
-   nil,   nil,   675,   nil,   675,   675,   675,   675,   675,   675,
-   675,   nil,   nil,   nil,   nil,   nil,   675,   675,   675,   675,
-   675,   675,   675,   nil,   nil,   675,   nil,   nil,   nil,   nil,
-   nil,   nil,   675,   nil,   nil,   675,   675,   675,   675,   675,
-   675,   675,   675,   nil,   675,   675,   675,   nil,   675,   675,
-   nil,   675,   675,   675,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   675,   nil,   nil,   675,   nil,   nil,   675,
-   675,   nil,   nil,   675,   nil,   nil,   nil,   nil,   nil,   675,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,
-   nil,   nil,   675,   675,   675,   675,   675,   675,   nil,   nil,
-   nil,   675,   675,   nil,   nil,   nil,   nil,   nil,   nil,   675,
-   nil,   nil,   675,   675,   675,   nil,   675,   675,   699,   699,
-   699,   nil,   699,   nil,   nil,   nil,   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,   699,   nil,   nil,   nil,
-   nil,   699,   699,   699,   699,   699,   699,   nil,   nil,   nil,
-   699,   699,   nil,   nil,   nil,   nil,   nil,   nil,   699,   nil,
-   nil,   699,   699,   699,   nil,   699,   699,   702,   702,   702,
-   nil,   702,   nil,   nil,   nil,   702,   702,   nil,   nil,   nil,
-   702,   nil,   702,   702,   702,   702,   702,   702,   702,   nil,
-   nil,   nil,   nil,   nil,   702,   702,   702,   702,   702,   702,
-   702,   nil,   nil,   702,   nil,   nil,   nil,   nil,   nil,   nil,
-   702,   nil,   nil,   702,   702,   702,   702,   702,   702,   702,
-   702,   nil,   702,   702,   702,   nil,   702,   702,   nil,   702,
-   702,   702,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   702,   nil,   nil,   702,   nil,   nil,   702,   702,   nil,
-   nil,   702,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,   nil,   nil,
-   702,   702,   702,   702,   702,   702,   nil,   nil,   nil,   702,
-   702,   nil,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,
-   702,   702,   702,   nil,   702,   702,   706,   706,   706,   nil,
-   706,   nil,   nil,   nil,   706,   706,   nil,   nil,   nil,   706,
-   nil,   706,   706,   706,   706,   706,   706,   706,   nil,   nil,
-   nil,   nil,   nil,   706,   706,   706,   706,   706,   706,   706,
-   nil,   nil,   706,   nil,   nil,   nil,   nil,   nil,   nil,   706,
-   nil,   nil,   706,   706,   706,   706,   706,   706,   706,   706,
-   nil,   706,   706,   706,   nil,   706,   706,   nil,   nil,   nil,
-   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,
-   706,   706,   706,   706,   706,   nil,   nil,   nil,   706,   706,
-   nil,   nil,   nil,   nil,   nil,   nil,   706,   nil,   nil,   706,
-   706,   706,   nil,   706,   706,   717,   717,   717,   nil,   717,
-   nil,   nil,   nil,   717,   717,   nil,   nil,   nil,   717,   nil,
-   717,   717,   717,   717,   717,   717,   717,   nil,   nil,   nil,
-   nil,   nil,   717,   717,   717,   717,   717,   717,   717,   nil,
-   nil,   717,   nil,   nil,   nil,   nil,   nil,   nil,   717,   nil,
-   nil,   717,   717,   717,   717,   717,   717,   717,   717,   nil,
-   717,   717,   717,   nil,   717,   717,   nil,   nil,   nil,   717,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   717,
-   nil,   nil,   717,   nil,   nil,   717,   717,   nil,   nil,   717,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   717,   717,
-   717,   717,   717,   717,   nil,   nil,   nil,   717,   717,   nil,
-   nil,   nil,   nil,   nil,   nil,   717,   nil,   nil,   717,   717,
-   717,   nil,   717,   717,   723,   723,   723,   nil,   723,   nil,
-   nil,   nil,   723,   723,   nil,   nil,   nil,   723,   nil,   723,
-   723,   723,   723,   723,   723,   723,   nil,   nil,   nil,   nil,
-   nil,   723,   723,   723,   723,   723,   723,   723,   nil,   nil,
-   723,   nil,   nil,   nil,   nil,   nil,   nil,   723,   nil,   nil,
-   723,   723,   723,   723,   723,   723,   723,   723,   nil,   723,
-   723,   723,   nil,   723,   723,   nil,   723,   723,   723,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   723,   nil,
-   nil,   723,   nil,   nil,   723,   723,   nil,   nil,   723,   nil,
-   723,   nil,   nil,   nil,   723,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   723,   nil,   nil,   nil,   nil,   723,   723,   723,
-   723,   723,   723,   nil,   nil,   nil,   723,   723,   nil,   nil,
-   nil,   nil,   nil,   nil,   723,   nil,   nil,   723,   723,   723,
-   nil,   723,   723,   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,   nil,
-   728,   728,   728,   728,   728,   728,   728,   nil,   nil,   728,
-   nil,   nil,   nil,   nil,   nil,   nil,   728,   nil,   nil,   728,
-   728,   728,   728,   728,   728,   728,   728,   728,   728,   728,
-   728,   nil,   728,   728,   nil,   728,   728,   728,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   728,   nil,   nil,
-   728,   nil,   nil,   728,   728,   nil,   nil,   728,   nil,   728,
-   nil,   nil,   nil,   728,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   728,   nil,   nil,   nil,   nil,   728,   728,   728,   728,
-   728,   728,   nil,   nil,   nil,   728,   728,   nil,   nil,   nil,
-   nil,   nil,   nil,   728,   nil,   728,   728,   728,   728,   nil,
-   728,   728,   731,   731,   731,   nil,   731,   nil,   nil,   nil,
-   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,   731,   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,
-   731,   nil,   nil,   nil,   nil,   731,   731,   731,   731,   731,
-   731,   nil,   nil,   nil,   731,   731,   nil,   nil,   nil,   nil,
-   nil,   nil,   731,   nil,   731,   731,   731,   731,   nil,   731,
-   731,   745,   745,   745,   nil,   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,   nil,   745,   nil,   nil,   745,   745,   745,
-   745,   745,   745,   745,   745,   nil,   745,   745,   745,   nil,
-   745,   745,   nil,   745,   745,   745,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   745,   nil,   nil,   745,   nil,
-   nil,   745,   745,   nil,   nil,   745,   nil,   745,   nil,   nil,
-   nil,   745,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   745,
-   nil,   nil,   nil,   nil,   745,   745,   745,   745,   745,   745,
-   nil,   nil,   nil,   745,   745,   nil,   nil,   nil,   nil,   nil,
-   nil,   745,   nil,   nil,   745,   745,   745,   nil,   745,   745,
-   757,   757,   757,   nil,   757,   nil,   nil,   nil,   757,   757,
-   nil,   nil,   nil,   757,   nil,   757,   757,   757,   757,   757,
-   757,   757,   nil,   nil,   nil,   nil,   nil,   757,   757,   757,
-   757,   757,   757,   757,   nil,   nil,   757,   nil,   nil,   nil,
-   nil,   nil,   nil,   757,   nil,   nil,   757,   757,   757,   757,
-   757,   757,   757,   757,   757,   757,   757,   757,   nil,   757,
-   757,   nil,   757,   757,   757,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   757,   nil,   nil,   757,   nil,   nil,
-   757,   757,   nil,   nil,   757,   nil,   757,   nil,   757,   nil,
-   757,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   757,   nil,
-   nil,   nil,   nil,   757,   757,   757,   757,   757,   757,   nil,
-   nil,   nil,   757,   757,   nil,   nil,   nil,   nil,   nil,   nil,
-   757,   nil,   757,   757,   757,   757,   nil,   757,   757,   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,   nil,   780,   780,   780,   780,
-   780,   780,   780,   nil,   nil,   780,   nil,   nil,   nil,   nil,
-   nil,   nil,   780,   nil,   nil,   780,   780,   780,   780,   780,
-   780,   780,   780,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   780,
-   nil,   nil,   780,   780,   780,   nil,   780,   780,   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,   nil,   802,   802,   802,   802,   802,
-   802,   802,   nil,   nil,   802,   nil,   nil,   nil,   nil,   nil,
-   nil,   802,   nil,   nil,   802,   802,   802,   802,   802,   802,
-   802,   802,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   802,   nil,
-   nil,   802,   802,   802,   nil,   802,   802,   810,   810,   810,
-   nil,   810,   nil,   nil,   nil,   810,   810,   nil,   nil,   nil,
-   810,   nil,   810,   810,   810,   810,   810,   810,   810,   nil,
-   nil,   nil,   nil,   nil,   810,   810,   810,   810,   810,   810,
-   810,   nil,   nil,   810,   nil,   nil,   nil,   nil,   nil,   nil,
-   810,   nil,   nil,   810,   810,   810,   810,   810,   810,   810,
-   810,   nil,   810,   810,   810,   nil,   810,   810,   nil,   810,
-   810,   810,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   810,   nil,   nil,   810,   nil,   nil,   810,   810,   nil,
-   nil,   810,   nil,   nil,   nil,   nil,   nil,   810,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   810,   nil,   nil,   nil,   nil,
-   810,   810,   810,   810,   810,   810,   nil,   nil,   nil,   810,
-   810,   nil,   nil,   nil,   nil,   nil,   nil,   810,   nil,   nil,
-   810,   810,   810,   nil,   810,   810,   823,   823,   823,   nil,
-   823,   nil,   nil,   nil,   823,   823,   nil,   nil,   nil,   823,
-   nil,   823,   823,   823,   823,   823,   823,   823,   nil,   nil,
-   nil,   nil,   nil,   823,   823,   823,   823,   823,   823,   823,
-   nil,   nil,   823,   nil,   nil,   nil,   nil,   nil,   nil,   823,
-   nil,   nil,   823,   823,   823,   823,   823,   823,   823,   823,
-   nil,   823,   823,   823,   nil,   823,   823,   nil,   823,   823,
-   823,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   823,   nil,   nil,   823,   nil,   nil,   823,   823,   nil,   nil,
-   823,   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   823,   nil,   nil,   nil,   nil,   823,
-   823,   823,   823,   823,   823,   nil,   nil,   nil,   823,   823,
-   nil,   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,   823,
-   823,   823,   nil,   823,   823,   824,   824,   824,   nil,   824,
-   nil,   nil,   nil,   824,   824,   nil,   nil,   nil,   824,   nil,
-   824,   824,   824,   824,   824,   824,   824,   nil,   nil,   nil,
-   nil,   nil,   824,   824,   824,   824,   824,   824,   824,   nil,
-   nil,   824,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,
-   nil,   824,   824,   824,   824,   824,   824,   824,   824,   nil,
-   824,   824,   824,   nil,   824,   824,   nil,   824,   824,   824,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   824,
-   nil,   nil,   824,   nil,   nil,   824,   824,   nil,   nil,   824,
-   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   824,   nil,   nil,   nil,   nil,   824,   824,
-   824,   824,   824,   824,   nil,   nil,   nil,   824,   824,   nil,
-   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,   824,   824,
-   824,   nil,   824,   824,   825,   825,   825,   nil,   825,   nil,
-   nil,   nil,   825,   825,   nil,   nil,   nil,   825,   nil,   825,
-   825,   825,   825,   825,   825,   825,   nil,   nil,   nil,   nil,
-   nil,   825,   825,   825,   825,   825,   825,   825,   nil,   nil,
-   825,   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,
-   825,   825,   825,   825,   825,   825,   825,   825,   nil,   825,
-   825,   825,   nil,   825,   825,   nil,   825,   825,   825,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,
-   nil,   825,   nil,   nil,   825,   825,   nil,   nil,   825,   nil,
-   nil,   nil,   nil,   nil,   825,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   825,   nil,   nil,   nil,   nil,   825,   825,   825,
-   825,   825,   825,   nil,   nil,   nil,   825,   825,   nil,   nil,
-   nil,   nil,   nil,   nil,   825,   nil,   nil,   825,   825,   825,
-   nil,   825,   825,   826,   826,   826,   nil,   826,   nil,   nil,
-   nil,   826,   826,   nil,   nil,   nil,   826,   nil,   826,   826,
-   826,   826,   826,   826,   826,   nil,   nil,   nil,   nil,   nil,
-   826,   826,   826,   826,   826,   826,   826,   nil,   nil,   826,
-   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,   826,
-   826,   826,   826,   826,   826,   826,   826,   nil,   826,   826,
-   826,   nil,   826,   826,   nil,   826,   826,   826,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,
-   826,   nil,   nil,   826,   826,   nil,   nil,   826,   nil,   nil,
-   nil,   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   826,   nil,   nil,   nil,   nil,   826,   826,   826,   826,
-   826,   826,   nil,   nil,   nil,   826,   826,   nil,   nil,   nil,
-   nil,   nil,   nil,   826,   nil,   nil,   826,   826,   826,   nil,
-   826,   826,   828,   828,   828,   nil,   828,   nil,   nil,   nil,
-   828,   828,   nil,   nil,   nil,   828,   nil,   828,   828,   828,
-   828,   828,   828,   828,   nil,   nil,   nil,   nil,   nil,   828,
-   828,   828,   828,   828,   828,   828,   nil,   nil,   828,   nil,
-   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,   828,
-   828,   828,   828,   828,   828,   828,   nil,   828,   828,   828,
-   nil,   828,   828,   nil,   828,   828,   828,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,
-   nil,   nil,   828,   828,   nil,   nil,   828,   nil,   nil,   nil,
-   nil,   nil,   828,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   828,   nil,   nil,   nil,   nil,   828,   828,   828,   828,   828,
-   828,   nil,   nil,   nil,   828,   828,   nil,   nil,   nil,   nil,
-   nil,   nil,   828,   nil,   nil,   828,   828,   828,   nil,   828,
-   828,   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,   nil,   861,   861,
-   861,   861,   861,   861,   861,   nil,   nil,   861,   nil,   nil,
-   nil,   nil,   nil,   nil,   861,   nil,   nil,   861,   861,   861,
-   861,   861,   861,   861,   861,   nil,   861,   861,   861,   nil,
-   861,   861,   nil,   861,   861,   861,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   861,   nil,   nil,   861,   nil,
-   nil,   861,   861,   nil,   nil,   861,   nil,   nil,   nil,   nil,
-   nil,   861,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   861,
-   nil,   nil,   nil,   nil,   861,   861,   861,   861,   861,   861,
-   nil,   nil,   nil,   861,   861,   nil,   nil,   nil,   nil,   nil,
-   nil,   861,   nil,   nil,   861,   861,   861,   nil,   861,   861,
-   868,   868,   868,   nil,   868,   nil,   nil,   nil,   868,   868,
-   nil,   nil,   nil,   868,   nil,   868,   868,   868,   868,   868,
-   868,   868,   nil,   nil,   nil,   nil,   nil,   868,   868,   868,
-   868,   868,   868,   868,   nil,   nil,   868,   nil,   nil,   nil,
-   nil,   nil,   nil,   868,   nil,   nil,   868,   868,   868,   868,
-   868,   868,   868,   868,   nil,   868,   868,   868,   nil,   868,
-   868,   nil,   868,   868,   868,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   868,   nil,   nil,   868,   nil,   nil,
-   868,   868,   nil,   nil,   868,   nil,   nil,   nil,   nil,   nil,
-   868,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,
-   nil,   nil,   nil,   868,   868,   868,   868,   868,   868,   nil,
-   nil,   nil,   868,   868,   nil,   nil,   nil,   nil,   nil,   nil,
-   868,   nil,   nil,   868,   868,   868,   nil,   868,   868,   877,
-   877,   877,   nil,   877,   nil,   nil,   nil,   877,   877,   nil,
-   nil,   nil,   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,   877,   877,   877,
-   877,   877,   877,   nil,   877,   877,   877,   nil,   877,   877,
-   nil,   877,   877,   877,   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,
-   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,   nil,   nil,   nil,   877,
-   nil,   nil,   877,   877,   877,   nil,   877,   877,   919,   919,
-   919,   nil,   919,   nil,   nil,   nil,   919,   919,   nil,   nil,
-   nil,   919,   nil,   919,   919,   919,   919,   919,   919,   919,
-   nil,   nil,   nil,   nil,   nil,   919,   919,   919,   919,   919,
-   919,   919,   nil,   nil,   919,   nil,   nil,   nil,   nil,   nil,
-   nil,   919,   nil,   nil,   919,   919,   919,   919,   919,   919,
-   919,   919,   919,   919,   919,   919,   nil,   919,   919,   nil,
-   919,   919,   919,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   919,   nil,   nil,   919,   nil,   nil,   919,   919,
-   nil,   nil,   919,   nil,   nil,   nil,   919,   nil,   919,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   919,   nil,   nil,   nil,
-   nil,   919,   919,   919,   919,   919,   919,   nil,   nil,   nil,
-   919,   919,   nil,   nil,   nil,   nil,   nil,   nil,   919,   nil,
-   919,   919,   919,   919,   nil,   919,   919,   920,   920,   920,
-   nil,   920,   nil,   nil,   nil,   920,   920,   nil,   nil,   nil,
-   920,   nil,   920,   920,   920,   920,   920,   920,   920,   nil,
-   nil,   nil,   nil,   nil,   920,   920,   920,   920,   920,   920,
-   920,   nil,   nil,   920,   nil,   nil,   nil,   nil,   nil,   nil,
-   920,   nil,   nil,   920,   920,   920,   920,   920,   920,   920,
-   920,   nil,   920,   920,   920,   nil,   920,   920,   nil,   920,
-   920,   920,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   920,   nil,   nil,   920,   nil,   nil,   920,   920,   nil,
-   nil,   920,   nil,   nil,   nil,   nil,   nil,   920,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   920,   nil,   nil,   nil,   nil,
-   920,   920,   920,   920,   920,   920,   nil,   nil,   nil,   920,
-   920,   nil,   nil,   nil,   nil,   nil,   nil,   920,   nil,   nil,
-   920,   920,   920,   nil,   920,   920,   932,   932,   932,   nil,
-   932,   nil,   nil,   nil,   932,   932,   nil,   nil,   nil,   932,
-   nil,   932,   932,   932,   932,   932,   932,   932,   nil,   nil,
-   nil,   nil,   nil,   932,   932,   932,   932,   932,   932,   932,
-   nil,   nil,   932,   nil,   nil,   nil,   nil,   nil,   nil,   932,
-   nil,   nil,   932,   932,   932,   932,   932,   932,   932,   932,
-   nil,   932,   932,   932,   nil,   932,   932,   nil,   nil,   nil,
-   932,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   932,   nil,   nil,   932,   nil,   nil,   932,   932,   nil,   nil,
-   932,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   932,
-   932,   932,   932,   932,   932,   nil,   nil,   nil,   932,   932,
-   nil,   nil,   nil,   nil,   nil,   nil,   932,   nil,   nil,   932,
-   932,   932,   nil,   932,   932,   941,   941,   941,   nil,   941,
-   nil,   nil,   nil,   941,   941,   nil,   nil,   nil,   941,   nil,
-   941,   941,   941,   941,   941,   941,   941,   nil,   nil,   nil,
-   nil,   nil,   941,   941,   941,   941,   941,   941,   941,   nil,
-   nil,   941,   nil,   nil,   nil,   nil,   nil,   nil,   941,   nil,
-   nil,   941,   941,   941,   941,   941,   941,   941,   941,   nil,
-   941,   941,   941,   nil,   941,   941,   nil,   nil,   nil,   941,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   941,
-   nil,   nil,   941,   nil,   nil,   941,   941,   nil,   nil,   941,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   941,   941,
-   941,   941,   941,   941,   nil,   nil,   nil,   941,   941,   nil,
-   nil,   nil,   nil,   nil,   nil,   941,   nil,   nil,   941,   941,
-   941,   nil,   941,   941,   949,   949,   949,   nil,   949,   nil,
-   nil,   nil,   949,   949,   nil,   nil,   nil,   949,   nil,   949,
-   949,   949,   949,   949,   949,   949,   nil,   nil,   nil,   nil,
-   nil,   949,   949,   949,   949,   949,   949,   949,   nil,   nil,
-   949,   nil,   nil,   nil,   nil,   nil,   nil,   949,   nil,   nil,
-   949,   949,   949,   949,   949,   949,   949,   949,   nil,   949,
-   949,   949,   nil,   949,   949,   nil,   949,   949,   949,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   949,   nil,
-   nil,   949,   nil,   nil,   949,   949,   nil,   nil,   949,   nil,
-   949,   nil,   nil,   nil,   949,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   949,   nil,   nil,   nil,   nil,   949,   949,   949,
-   949,   949,   949,   nil,   nil,   nil,   949,   949,   nil,   nil,
-   nil,   nil,   nil,   nil,   949,   nil,   nil,   949,   949,   949,
-   nil,   949,   949,   992,   992,   992,   nil,   992,   nil,   nil,
-   nil,   992,   992,   nil,   nil,   nil,   992,   nil,   992,   992,
-   992,   992,   992,   992,   992,   nil,   nil,   nil,   nil,   nil,
-   992,   992,   992,   992,   992,   992,   992,   nil,   nil,   992,
-   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,   992,
-   992,   992,   992,   992,   992,   992,   992,   nil,   992,   992,
-   992,   nil,   992,   992,   nil,   nil,   nil,   992,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,
-   992,   nil,   nil,   992,   992,   nil,   nil,   992,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   992,   992,   992,   992,
-   992,   992,   nil,   nil,   nil,   992,   992,   nil,   nil,   nil,
-   nil,   nil,   nil,   992,   nil,   nil,   992,   992,   992,   nil,
-   992,   992,  1006,  1006,  1006,   nil,  1006,   nil,   nil,   nil,
-  1006,  1006,   nil,   nil,   nil,  1006,   nil,  1006,  1006,  1006,
-  1006,  1006,  1006,  1006,   nil,   nil,   nil,   nil,   nil,  1006,
-  1006,  1006,  1006,  1006,  1006,  1006,   nil,   nil,  1006,   nil,
-   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,  1006,
-  1006,  1006,  1006,  1006,  1006,  1006,   nil,  1006,  1006,  1006,
-   nil,  1006,  1006,   nil,  1006,  1006,  1006,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,
-   nil,   nil,  1006,  1006,   nil,   nil,  1006,   nil,   nil,   nil,
-   nil,   nil,  1006,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1006,   nil,   nil,   nil,   nil,  1006,  1006,  1006,  1006,  1006,
-  1006,   nil,   nil,   nil,  1006,  1006,   nil,   nil,   nil,   nil,
-   nil,   nil,  1006,   nil,   nil,  1006,  1006,  1006,   nil,  1006,
-  1006,  1039,  1039,  1039,   nil,  1039,   nil,   nil,   nil,  1039,
-  1039,   nil,   nil,   nil,  1039,   nil,  1039,  1039,  1039,  1039,
-  1039,  1039,  1039,   nil,   nil,   nil,   nil,   nil,  1039,  1039,
-  1039,  1039,  1039,  1039,  1039,   nil,   nil,  1039,   nil,   nil,
-   nil,   nil,   nil,   nil,  1039,   nil,   nil,  1039,  1039,  1039,
-  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,   nil,
-  1039,  1039,   nil,  1039,  1039,  1039,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1039,   nil,   nil,  1039,   nil,
-   nil,  1039,  1039,   nil,   nil,  1039,   nil,  1039,   nil,  1039,
-   nil,  1039,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1039,
-   nil,   nil,   nil,   nil,  1039,  1039,  1039,  1039,  1039,  1039,
-   nil,   nil,   nil,  1039,  1039,   nil,   nil,   nil,   nil,   nil,
-   nil,  1039,   nil,  1039,  1039,  1039,  1039,   nil,  1039,  1039,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,   nil,   nil,   nil,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,
-   nil,   nil,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,   nil,    11,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,    11,
-    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,    11,
-    11,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    11,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-   nil,   nil,   nil,   nil,   nil,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,   nil,   nil,    12,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,
-    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
-   nil,   nil,    12,    12,    12,    12,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,
-    12,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,   nil,   nil,    12,    12,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    12,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,   nil,   nil,   nil,   nil,   nil,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,
-   nil,    75,    75,    75,    75,    75,    75,    75,   nil,   nil,
-    75,    75,   nil,   nil,   nil,    75,    75,    75,    75,   nil,
-   nil,   nil,   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    75,    75,   nil,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,   nil,   nil,    75,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   nil,   nil,   nil,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   nil,   nil,   nil,   nil,
-   nil,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   nil,   105,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,   105,   nil,   105,   105,   105,   105,   105,   105,
-   105,   nil,   nil,   105,   105,   nil,   nil,   nil,   105,   105,
-   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
-   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   105,   422,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   422,   422,   422,   nil,   nil,   nil,   422,
-   422,   422,   422,   422,   422,   422,   422,   422,   422,   nil,
-   nil,   nil,   nil,   nil,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   nil,   nil,   422,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   422,   422,   nil,   422,   422,   422,
-   422,   422,   422,   422,   nil,   nil,   422,   422,   nil,   nil,
-   nil,   422,   422,   422,   422,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   422,   422,
-   nil,   422,   422,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   nil,   nil,   422,   422,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   422,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   422,   654,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   nil,
-   nil,   nil,   654,   654,   654,   654,   654,   654,   654,   654,
-   654,   654,   nil,   nil,   nil,   nil,   nil,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   nil,   nil,   654,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,   654,   nil,
-   654,   654,   654,   654,   654,   654,   654,   nil,   nil,   654,
-   654,   nil,   nil,   nil,   654,   654,   654,   654,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   654,   654,   nil,   654,   654,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   nil,   nil,   654,   654,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,   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,   nil,   nil,   nil,   nil,   nil,
-   766,   766,   766,   766,   766,   766,   766,   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,   766,   766,   766,
-   766,   nil,   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,   nil,   nil,
-   766,   nil,   nil,   nil,   nil,   228,   228,   nil,   nil,   228,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   228,   228,
-   766,   228,   228,   228,   228,   228,   228,   228,   nil,   nil,
-   228,   228,   nil,   nil,   nil,   228,   228,   228,   228,   nil,
-   nil,   nil,   nil,   nil,   228,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   228,   228,   nil,   228,   228,   228,   228,   228,
-   228,   228,   228,   228,   228,   228,   nil,   nil,   228,   nil,
-   nil,   nil,   nil,   229,   229,   nil,   nil,   229,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,   228,   229,
-   229,   229,   229,   229,   229,   229,   nil,   nil,   229,   229,
-   nil,   nil,   nil,   229,   229,   229,   229,   nil,   nil,   nil,
-   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   229,   229,   nil,   229,   229,   229,   229,   229,   229,   229,
-   229,   229,   229,   229,   nil,   nil,   229,   nil,   nil,   nil,
-   nil,   473,   473,   nil,   nil,   473,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   473,   473,   229,   473,   473,   473,
-   473,   473,   473,   473,   nil,   nil,   473,   473,   nil,   nil,
-   nil,   473,   473,   473,   473,   nil,   nil,   nil,   nil,   nil,
-   473,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   473,   473,
-   nil,   473,   473,   473,   473,   473,   473,   473,   473,   473,
-   473,   473,   nil,   nil,   473,   nil,   nil,   nil,   nil,   474,
-   474,   nil,   nil,   474,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   474,   474,   473,   474,   474,   474,   474,   474,
-   474,   474,   nil,   nil,   474,   474,   nil,   nil,   nil,   474,
-   474,   474,   474,   nil,   nil,   nil,   nil,   nil,   474,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   474,   474,   nil,   474,
-   474,   474,   474,   474,   474,   474,   474,   474,   474,   474,
-   nil,   nil,   474,   nil,   nil,   nil,   nil,   539,   539,   nil,
-   nil,   539,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   539,   539,   474,   539,   539,   539,   539,   539,   539,   539,
-   nil,   nil,   539,   539,   nil,   nil,   nil,   539,   539,   539,
-   539,   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   539,   539,   nil,   539,   539,   539,
-   539,   539,   539,   539,   539,   539,   539,   539,   nil,   nil,
-   539,   nil,   nil,   nil,   nil,   540,   540,   nil,   nil,   540,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   540,   540,
-   539,   540,   540,   540,   540,   540,   540,   540,   nil,   nil,
-   540,   540,   nil,   nil,   nil,   540,   540,   540,   540,   nil,
-   nil,   nil,   nil,   nil,   540,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   540,   540,   nil,   540,   540,   540,   540,   540,
-   540,   540,   540,   540,   540,   540,   nil,   nil,   540,   nil,
-   nil,   nil,   nil,   549,   549,   nil,   nil,   549,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   549,   549,   540,   549,
-   549,   549,   549,   549,   549,   549,   nil,   nil,   549,   549,
-   nil,   nil,   nil,   549,   549,   549,   549,   nil,   nil,   nil,
-   nil,   nil,   549,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   549,   549,   nil,   549,   549,   549,   549,   549,   549,   549,
-   549,   549,   549,   549,   nil,   nil,   549,   nil,   nil,   nil,
-   nil,   550,   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   550,   550,   549,   550,   550,   550,
-   550,   550,   550,   550,   nil,   nil,   550,   550,   nil,   nil,
-   nil,   550,   550,   550,   550,   nil,   nil,   nil,   nil,   nil,
-   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,   550,
-   nil,   550,   550,   550,   550,   550,   550,   550,   550,   550,
-   550,   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,   578,
-   578,   nil,   nil,   578,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   578,   578,   550,   578,   578,   578,   578,   578,
-   578,   578,   nil,   nil,   578,   578,   nil,   nil,   nil,   578,
-   578,   578,   578,   nil,   nil,   nil,   nil,   nil,   578,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   578,   578,   nil,   578,
-   578,   578,   578,   578,   578,   578,   578,   578,   578,   578,
-   nil,   nil,   578,   nil,   nil,   nil,   nil,   579,   579,   nil,
-   nil,   579,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   579,   579,   578,   579,   579,   579,   579,   579,   579,   579,
-   nil,   nil,   579,   579,   nil,   nil,   nil,   579,   579,   579,
-   579,   nil,   nil,   nil,   nil,   nil,   579,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   579,   579,   nil,   579,   579,   579,
-   579,   579,   579,   579,   579,   579,   579,   579,   nil,   nil,
-   579,   nil,   nil,   nil,   nil,   660,   660,   nil,   nil,   660,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   660,   660,
-   579,   660,   660,   660,   660,   660,   660,   660,   nil,   nil,
-   660,   660,   nil,   nil,   nil,   660,   660,   660,   660,   nil,
-   nil,   nil,   nil,   nil,   660,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   660,   660,   nil,   660,   660,   660,   660,   660,
-   660,   660,   660,   660,   660,   660,   nil,   nil,   660,   nil,
-   nil,   nil,   nil,   661,   661,   nil,   nil,   661,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   661,   661,   660,   661,
-   661,   661,   661,   661,   661,   661,   nil,   nil,   661,   661,
-   nil,   nil,   nil,   661,   661,   661,   661,   nil,   nil,   nil,
-   nil,   nil,   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   661,   661,   nil,   661,   661,   661,   661,   661,   661,   661,
-   661,   661,   661,   661,   nil,   nil,   661,   nil,   nil,   nil,
-   nil,   755,   755,   nil,   nil,   755,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   755,   755,   661,   755,   755,   755,
-   755,   755,   755,   755,   nil,   nil,   755,   755,   nil,   nil,
-   nil,   755,   755,   755,   755,   nil,   nil,   nil,   nil,   nil,
-   755,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   755,   755,
-   nil,   755,   755,   755,   755,   755,   755,   755,   755,   755,
-   755,   755,   nil,   nil,   755,   nil,   nil,   nil,   nil,   756,
-   756,   nil,   nil,   756,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   756,   756,   755,   756,   756,   756,   756,   756,
-   756,   756,   nil,   nil,   756,   756,   nil,   nil,   nil,   756,
-   756,   756,   756,   nil,   nil,   nil,   nil,   nil,   756,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   756,   756,   nil,   756,
-   756,   756,   756,   756,   756,   756,   756,   756,   756,   756,
-   nil,   983,   756,   983,   983,   983,   983,   983,   986,   nil,
-   986,   986,   986,   986,   986,   nil,   nil,   983,   nil,   nil,
-   nil,   nil,   756,   nil,   986,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   983,
-   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   983,   983,
-   983,   983,   nil,   nil,   nil,   986,   986,   986,   986,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1035,  1035,   nil,   nil,
-  1035,   nil,   nil,   nil,   983,   nil,   nil,   nil,   nil,  1035,
-  1035,   986,  1035,  1035,  1035,  1035,  1035,  1035,  1035,   nil,
-   nil,  1035,  1035,   nil,   nil,   nil,  1035,  1035,  1035,  1035,
-   nil,   nil,   nil,   nil,   nil,  1035,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1035,  1035,   nil,  1035,  1035,  1035,  1035,
-  1035,  1035,  1035,  1035,  1035,  1035,  1035,   nil,   nil,  1035,
-   nil,   nil,   nil,   nil,  1040,  1040,   nil,   nil,  1040,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1040,  1040,  1035,
-  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,   nil,  1040,
-  1040,   nil,   nil,   nil,  1040,  1040,  1040,  1040,   nil,   nil,
-   nil,   nil,   nil,  1040,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1040,  1040,   nil,  1040,  1040,  1040,  1040,  1040,  1040,
-  1040,  1040,  1040,  1040,  1040,   nil,   nil,  1040,   nil,   nil,
-   nil,   nil,  1041,  1041,   nil,   nil,  1041,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1041,  1041,  1040,  1041,  1041,
-  1041,  1041,  1041,  1041,  1041,   nil,   nil,  1041,  1041,   nil,
-   nil,   nil,  1041,  1041,  1041,  1041,   nil,   nil,   nil,   nil,
-   nil,  1041,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1041,
-  1041,   nil,  1041,  1041,  1041,  1041,  1041,  1041,  1041,  1041,
-  1041,  1041,  1041,   nil,  1059,  1041,  1059,  1059,  1059,  1059,
-  1059,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1059,   nil,   nil,   nil,   nil,  1041,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1059,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1059,  1059,  1059,  1059,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1059 ]
-
-racc_action_pointer = [
-   nil,    34,  2018,    60,   nil,   201,   nil,   nil,  6077,   763,
-   nil, 24008, 24141,   -12,   nil,   -30,    60,   -17,   152,   279,
-   112,   nil,   -60,  6216,  2298,   236,   nil,   -40,   nil,     0,
-  1084,  1216,  6355,  6494,  6633,   nil,  2158,  6772,  6911,   nil,
-   144,   208,   304,   268,   159,  7050,  7189,   489,  7328,   203,
-   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1348,   nil,  7467,   nil,   nil,    73,   nil,  7606,  7745,   nil,
-   nil,  7884,  8023,   270,   nil, 24274,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   -65,   nil,   nil,   nil,   nil,   nil,   nil,   255,
-   278,   284,   294,   nil,   nil, 24407,   nil,   nil,   nil,   nil,
-   nil,   nil,     0,   nil,   nil,   139,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  8162,   nil,
-   nil,   nil,   nil,  8301,  8440,  8579,  8718,  8857,   323,   nil,
-   605,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   331,
-   nil,  2298,  8996,  9135,  9274,  9413,  9552,  9691, 24874, 24942,
-   nil,   nil,  9830,  9969, 10108,   nil,   nil,   356,   -55,   -52,
-   430,   162,   351,   434,   nil, 10247,  2438,   433, 10386, 10525,
- 10664, 10803, 10942, 11081, 11220, 11359, 11498, 11637, 11776, 11915,
- 12054, 12193, 12332, 12471, 12610, 12749, 12888, 13027, 13166, 13305,
-   nil,   nil,   nil,   nil, 13444,   nil,   nil,   nil,  1876,   nil,
-   nil,   434, 13583, 13722,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil, 13861,   nil,  2438,   nil,   406,   419,   nil, 14000,
-   475, 14139,   nil,   nil, 14278, 14417,   nil,   nil,   460,   nil,
-   nil, 14556,   925,   nil,   443,  2578,   464,   512,   477, 14695,
-  2718,   371,   411,   458,   583,   510,   nil,   552,   531,   206,
-   nil,   nil,   nil,   575,   254,   556, 14834,   nil,   308,   620,
-   514,   nil,   646, 14973,   nil, 15112,  2858,  1166,   589, 15251,
- 15390,   nil,    11,   -10,    -1, 15529,  2998,  3138,   476,   700,
-   594,   -19,   -14,   589,   671,    -7,   703,   nil,   nil, 15668,
-   nil, 15807,   112,   118,   120,   239,   344,   373,   377,   455,
-   459,   nil,   461,   nil,   nil,   nil,   nil,   645,   nil,   -59,
-   nil,   370,   nil,   538,   nil,   605,   378,   nil,   607,   397,
-   nil,   609,   -37,   nil,   610,   -27,   nil,   443,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil, 24540,   nil,   nil,   nil,   nil,   624,   nil,   nil,
-   612, 15946,   618,   nil,   nil,   618,   nil,   625,   182,   720,
-   nil,   nil,  2018,   nil,   nil,   nil,   nil,   nil,  2158,   644,
-   nil,   nil,   642,   644,   430,   547,  1480,   nil,   nil,   nil,
-   271,   403,   687,   nil,   nil,  1612,  1744,   nil,   nil,   nil,
-   -33,   nil,   690, 25010, 25078, 16085,   187, 16224, 16363, 16502,
-  3138,  3278,   364,   490,   724,   726,   729,   748,   976,  1430,
-  1562,  3418,  3558,  3698,  3838,  3978,  4118,   844,  1039,  4258,
-  4398,  2578,  1166,   807,   nil,  1876,   nil,   nil,   nil,   nil,
-   691,   nil,   nil,   nil,   692,   nil,   nil, 16641,   nil,   nil,
- 16780,   nil, 16919,   nil,   265,   nil,   nil,   nil, 17058,  1178,
-   712,   702,   703,   nil,   nil,   705, 17197,   709, 17336, 25146,
- 25214,   752,   746,   nil, 17475,   710,   nil, 17614, 17753, 25282,
- 25350,  1298,  2718, 17892,   833,   851,   735,   nil,   nil,   -80,
-   -68,   767,   751,   nil,   340,   777,  3278,   856,   nil,  3418,
-    30,   860,   868,   863,   890,   nil,   nil, 18031, 25418, 25486,
-     5,   nil,   311,   342,   308,   nil,   753,   nil,   794, 18170,
-   nil,   812,   nil,   nil,   nil, 18309,   nil,   744,   nil,   774,
-   777,   nil,   780,   781,   784,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   789,   685,   nil,   nil, 18448,   nil,   nil,
-   nil,   886,   nil,   nil,   nil,   895,   nil,   nil,   905,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   198,   nil,   nil,   200,   nil,   nil,   nil,   830,   nil,   nil,
-   841,   nil,  3558,   nil, 24673,   nil,   848, 18587, 18726, 18865,
- 25554, 25622, 19004, 19143,   585,   884, 19282, 19421, 19560, 19699,
-   883,   nil,   nil,   nil, 19838, 19977,   899,   nil,   nil,   nil,
-   189,   216,   542,   681,   871,   871,   nil,   116,   974,   163,
-   nil,   nil,   892,   nil,  1000,   nil,   881,   nil,   923, 20116,
-   nil,   nil, 20255,   nil,   nil,  -123, 20394,   898,   nil,   915,
-    -9,    28,   952,    33,   773,   955,   933, 20533,   nil,   999,
-   156,   221,   nil, 20672,   nil,   nil,   nil,   nil, 20811,   nil,
-   nil, 20950,   nil,   nil,   nil,   610,   nil,  1054,   nil,   nil,
-   nil,   nil,   nil,  1061,   nil, 21089,   947,    20,    29,   163,
-   165,  3698,   nil,   763,   nil, 25690, 25758, 21228,   nil,   nil,
-   nil,   595,  3838,  3978,   874,  1048, 24806,   165,    27,   959,
-   234,   nil,   nil,   578,  1147,   nil,  1279,   nil,   471,   nil,
- 21367,   nil,   949,   nil,   957,   959,   881,   964,   nil,   nil,
-   nil,   nil,   936,  4118,   nil,   nil,   nil,   nil,   nil,   981,
-   nil,   966, 21506,   981,   222,   274,   813,   945,   nil,  2858,
- 21645,   nil,   979,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil, 21784, 21923, 22062, 22201,   317, 22340,   nil,
-   nil,  1411,   nil,  4258,   nil,   nil,   999,   nil,   119,   nil,
-   nil,   nil,   nil,   984,   160,   nil,   nil,   nil,   nil,   nil,
-   nil,  4398,   nil,   985,  1028,   nil,   nil,   447,  1108,   nil,
-   nil, 22479,   nil,  4538,  1109,   nil,   nil,   nil, 22618,    42,
-    41,  1110,   550,   781,   nil,   996,  4678, 22757,   535,  1120,
-  1124,  1009,   551,   nil,   nil,   nil,  4818,  4958,  1005,  1013,
-  1011,   nil,   nil,   nil,  1012,  1021,   nil,  1036,  1041,   nil,
-  1042,   nil,   nil,  1047,   980,   819,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1038,   nil,  1048,   320,   nil,   nil, 22896,
- 23035,  2998,  1051,  1055,   nil,  1057,  1065,  1070,   nil,  1103,
-  1101,  1087, 23174,   nil,   nil,   nil,   nil,  5098,  5238,   nil,
-     6, 23313,   nil,   nil,   nil,    10,   nil,   nil,   nil, 23452,
-  5378,   nil,   nil,  1225,   580,   nil,   nil,   nil,   nil,   nil,
-  1150,  1131,  1242,  1010,   nil,   nil,  1543,   nil,  1675,   nil,
-  6793,   nil,  6932,   nil,   nil,   nil,   nil,  1125,  1132,   nil,
-   325,   nil,   nil, 25820,   nil,   nil, 25827,   nil,  8044,   nil,
-   nil,  1159, 23591,   884,  1219,   nil,  1268,  5518,    19,    38,
-   898,  1223,    69,   nil,  5658,   nil, 23730,   355,   nil,   nil,
-  5798,  5938,   nil,   nil,   451,   nil,   nil,   nil,  1150,  1151,
-  1153,  1168,  1077,  1184,  1169,   nil,   nil,  1173,  1174,  1176,
-  1179,   nil,  1180,   nil,   913, 25895,   nil,   nil,  1305, 23869,
- 25963, 26031,   106,   691,   nil,   nil,   nil,   nil,  1305,  1307,
-   nil,  1209, 14716,   nil,   nil,   nil,   nil,  1189,   nil, 26093,
-   nil, 14855,   nil, 15689,   nil, 15828,   nil,   nil,  1236,  1238,
-   nil,  1205,   128,   131,   171,   174,   nil,   nil,   nil,   nil,
-  1208,  1209,  1210,  1211,  1212,   162,   nil, 17218,   nil,   nil,
-   nil,   nil,  1215,   nil ]
-
-racc_action_default = [
-    -1,  -649,  -648,  -649,    -2,  -635,    -4,    -5,  -649,    -8,
-    -9,  -649,  -649,  -649,   -36,  -649,  -649,   -40,  -649,  -649,
-  -292,   -52,  -637,  -649,   -57,   -62,   -63,   -64,   -68,  -269,
-  -269,  -269,  -307,  -340,  -341,   -80,  -648,   -84,   -92,   -94,
-  -649,  -536,  -537,  -649,  -649,  -649,  -649,  -228,  -649,  -637,
-  -242,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,  -291,
-  -621,  -294,  -296,  -303,  -305,  -315,  -317,  -649,  -649,   -59,
-   -59,  -635,  -649,  -325,  -332,  -649,  -342,  -343,  -345,  -346,
-  -347,  -348,  -349,  -350,  -351,  -352,  -353,  -354,  -363,  -418,
-  -466,  -467,  -468,  -469,  -470,  -648,  -473,  -648,  -648,  -648,
-  -648,  -648,  -648,  -509,  -510,  -648,  -512,  -518,  -520,  -521,
-  -522,  -523,  -619,  -525,  -526,  -620,  -528,  -529,  -530,  -531,
-  -532,  -533,  -534,  -535,  -540,  -541,  1094,    -3,  -636,  -644,
-  -645,  -646,    -7,  -649,  -649,  -649,  -649,  -649,  -649,   -24,
-  -649,  -123,  -124,  -125,  -126,  -127,  -128,  -129,  -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,  -194,
-  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,   -29,
-  -130,  -648,  -649,  -649,  -649,  -649,  -649,  -648,  -649,  -649,
-  -631,  -632,  -649,  -649,  -637,  -638,   -56,  -649,  -536,  -537,
-  -649,  -292,  -649,  -649,  -234,  -649,  -648,  -649,  -649,  -649,
-  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,
-  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,  -649,
-  -243,  -244,  -245,  -246,  -649,  -356,  -446,  -426,  -649,  -633,
-  -634,   -69,  -648,  -649,  -314,  -355,  -430,  -439,  -441,   -75,
-  -436,   -76,  -637,   -77,  -249,  -264,  -648,  -648,  -268,  -649,
-  -274,  -649,  -648,  -613,  -649,  -649,   -78,   -79,  -635,   -17,
-   -18,  -649,   -21,   -22,   -82,  -648,  -637,  -649,   -85,   -88,
-  -648,  -100,  -101,  -649,  -649,  -108,  -307,  -310,  -637,  -649,
-  -340,  -341,  -344,  -437,  -649,   -90,  -649,   -96,  -302,  -519,
-  -649,  -222,  -223,  -649,  -235,  -649,  -648,  -298,  -637,  -648,
-  -648,  -316,   -58,  -649,  -649,  -649,  -648,  -648,  -635,  -649,
-  -636,  -536,  -537,  -649,  -649,  -292,  -649,  -373,  -374,  -649,
-  -328,  -649,  -123,  -124,  -163,  -164,  -165,  -181,  -186,  -193,
-  -196,  -335,  -649,  -536,  -537,  -608,  -609,  -568,  -471,  -649,
-  -494,  -649,  -496,  -649,  -498,  -649,  -649,  -478,  -649,  -649,
-  -484,  -649,  -649,  -490,  -649,  -649,  -492,  -649,  -511,  -513,
-  -514,  -515,  -516,    -6,  -647,   -30,   -31,   -32,   -33,   -34,
-   -10,   -11,  -649,   -26,   -27,   -28,  -131,  -649,   -37,   -39,
-  -279,  -649,  -649,  -278,   -38,  -649,   -41,  -649,  -292,   -49,
-   -51,  -204,  -254,  -274,   -53,   -54,   -42,  -205,  -254,  -637,
-  -259,  -260,  -648,  -648,  -622,  -623,  -269,  -434,  -624,  -625,
-  -623,  -622,  -269,  -433,  -435,  -624,  -625,   -48,  -212,   -55,
-  -637,  -313,  -649,  -649,  -649,  -648,  -302,  -649,  -649,  -649,
-  -213,  -214,  -215,  -216,  -217,  -218,  -219,  -220,  -224,  -225,
-  -226,  -227,  -229,  -230,  -231,  -232,  -233,  -236,  -237,  -238,
-  -239,  -637,  -247,  -649,  -447,  -269,  -622,  -623,   -66,   -70,
-  -637,  -270,  -443,  -446,  -637,  -309,  -265,  -649,  -273,  -266,
-  -649,  -271,  -649,  -275,  -649,  -616,  -618,   -16,  -636,   -20,
-  -649,  -637,   -81,  -300,   -97,   -86,  -649,  -637,  -648,  -649,
-  -649,  -107,  -649,  -519,  -649,   -93,   -98,  -649,  -649,  -649,
-  -649,  -248,  -240,  -649,  -458,  -649,  -637,  -297,  -250,  -641,
-  -641,  -649,  -649,  -611,  -641,  -649,  -648,  -364,  -365,  -648,
-  -649,  -649,  -649,  -649,  -649,  -359,  -453,  -648,  -649,  -649,
-  -302,   -59,  -118,  -119,  -649,  -121,  -649,  -292,  -648,  -649,
-  -333,  -546,  -337,  -629,  -630,  -649,  -419,  -568,  -422,  -607,
-  -607,  -551,  -553,  -553,  -553,  -567,  -569,  -570,  -571,  -572,
-  -573,  -574,  -575,  -576,  -649,  -578,  -580,  -582,  -587,  -589,
-  -590,  -592,  -597,  -599,  -600,  -602,  -603,  -604,  -649,  -472,
-  -495,  -500,  -501,  -503,  -474,  -497,  -475,  -499,  -476,  -477,
-  -649,  -480,  -482,  -649,  -483,  -486,  -487,  -649,  -488,  -489,
-  -649,  -517,  -648,   -25,  -649,   -35,  -282,  -649,  -649,  -648,
-  -649,  -649,  -649,  -649,  -438,  -649,  -261,  -263,  -649,  -649,
-   -71,  -257,  -258,  -431,  -649,  -649,   -73,  -432,  -312,  -639,
-  -622,  -623,  -622,  -623,  -637,  -649,  -425,  -648,   -65,  -427,
-  -443,  -256,  -649,  -444,  -649,  -308,  -648,  -272,  -276,  -649,
-  -614,  -615,  -649,   -19,   -23,   -83,  -649,   -89,   -95,  -637,
-  -622,  -623,  -648,  -626,  -106,  -649,   -91,  -649,  -211,  -221,
-  -637,  -648,  -357,  -648,  -295,  -362,  -299,  -251,  -643,  -642,
-  -253,  -643,  -304,  -306,  -612,  -648,  -366,  -648,   -60,  -367,
-  -368,  -320,  -321,  -649,  -323,  -649,  -637,  -622,  -623,  -626,
-  -301,  -648,  -118,  -119,  -120,  -649,  -649,  -648,  -326,  -542,
-  -544,  -329,  -648,  -648,  -568,  -568,  -649,  -637,  -649,  -637,
-  -649,  -549,  -550,  -649,  -649,  -560,  -649,  -563,  -649,  -565,
-  -649,  -375,  -649,  -377,  -379,  -382,  -385,  -637,  -581,  -591,
-  -601,  -605,  -649,  -648,  -479,  -481,  -485,  -491,  -493,  -649,
-  -132,  -280,  -649,  -637,  -622,  -623,  -623,  -622,   -50,  -255,
-  -649,  -640,  -648,   -44,  -207,   -45,  -208,   -72,   -46,  -210,
-   -47,  -209,   -74,  -649,  -649,  -649,  -649,  -438,  -649,  -407,
-  -408,  -637,  -410,  -648,  -429,  -428,  -649,  -440,  -648,  -442,
-  -267,  -277,  -617,   -87,  -438,   -99,  -311,   -13,   -15,  -358,
-  -360,  -648,  -465,  -459,  -648,  -460,  -461,  -641,  -649,  -361,
-  -369,  -649,  -371,  -648,  -649,   -61,  -322,  -449,  -649,  -649,
-  -438,  -649,  -118,  -119,  -122,  -637,  -648,  -649,  -649,  -649,
-  -649,  -637,  -649,  -338,  -610,  -420,  -648,  -648,  -412,  -637,
-  -607,  -588,  -606,  -552,  -553,  -553,  -579,  -553,  -553,  -598,
-  -553,  -576,  -593,  -637,  -649,  -649,  -384,  -577,  -502,  -505,
-  -506,  -507,  -508,  -649,   -12,  -281,  -438,   -43,  -206,  -262,
-  -649,  -241,  -607,  -607,  -389,  -648,  -648,  -648,  -406,  -649,
-  -637,  -576,  -584,  -585,  -595,  -448,   -67,  -648,  -648,  -464,
-  -649,  -649,  -463,  -252,  -318,  -649,  -372,  -319,  -450,  -649,
-  -648,  -324,  -438,  -649,  -649,  -330,  -334,  -336,  -545,  -547,
-  -546,  -649,  -649,  -649,  -421,  -548,  -649,  -556,  -649,  -558,
-  -649,  -561,  -649,  -564,  -566,  -376,  -378,  -380,  -383,  -504,
-  -649,  -387,  -388,  -397,  -391,  -399,  -649,  -402,  -649,  -404,
-  -409,  -649,  -649,  -583,  -649,  -445,  -648,  -648,  -536,  -537,
-  -649,  -649,  -292,  -462,  -648,  -451,  -649,  -648,  -327,  -543,
-  -648,  -648,  -423,  -424,  -637,  -414,  -416,  -417,  -553,  -553,
-  -553,  -553,  -649,  -649,  -607,  -586,  -390,  -648,  -648,  -648,
-  -648,  -596,  -648,  -411,  -594,  -649,  -302,   -14,  -458,  -648,
-  -649,  -649,  -302,  -648,  -452,  -454,  -455,  -456,  -649,  -649,
-  -413,  -649,  -649,  -554,  -557,  -559,  -562,  -381,  -386,  -649,
-  -394,  -649,  -396,  -649,  -400,  -649,  -403,  -405,  -301,  -626,
-  -457,  -637,  -622,  -623,  -626,  -301,  -370,  -331,  -339,  -415,
-  -553,  -648,  -648,  -648,  -648,  -438,  -555,  -649,  -392,  -395,
-  -398,  -401,  -648,  -393 ]
-
-racc_goto_table = [
-     6,   449,   318,   233,   295,   295,   295,   131,   144,   144,
-   228,   381,   456,   462,   277,   555,     9,     4,   279,   351,
-   353,   354,     9,   721,   358,   574,   139,   220,   566,   569,
-   345,   332,   332,   433,   434,   519,   317,   128,   147,   147,
-   598,   409,   763,   356,   357,   281,   289,   291,   440,   446,
-   420,   440,   771,   772,   848,   467,   510,   440,   700,   781,
-   335,   664,   505,   605,   697,   724,   332,   697,   787,   339,
-   127,   858,   144,   131,   503,   509,   347,   899,   286,   290,
-   896,   741,   742,   692,   744,   754,   415,   416,   417,   418,
-   889,   864,   926,   390,   833,   392,   394,   397,   400,   403,
-   406,   314,   144,   390,   297,   297,   297,   727,   730,   132,
-  1015,   389,   734,   978,   976,  1031,     1,   640,   352,   352,
-   643,   407,   352,  1017,     2,   138,   296,   296,   296,   588,
-   316,   590,   652,   847,   938,   236,   359,   703,   530,   219,
-   368,   429,     9,   422,   738,   545,   865,   293,   306,   307,
-   278,   419,   929,   690,   654,   343,   561,   689,   385,   562,
-   366,   758,   382,   775,   777,   779,   592,   346,   348,   556,
-   349,   350,    19,   369,   447,   876,   589,   878,    19,  1010,
-   468,   371,   762,   591,   352,   352,   352,   352,  1031,   766,
-   960,   519,   977,   237,   928,   930,  1014,   596,  1079,   295,
-   885,   387,   237,   237,   237,   700,    19,   323,   323,   768,
-   512,  1017,   513,   697,   697,   838,   869,   687,  1045,   613,
-   745,   427,   854,   940,   388,   450,   466,   781,   473,   413,
-  1057,   906,    19,   976,   391,   393,   903,   237,   237,   743,
-   396,   237,   363,   399,  1027,   937,   317,   402,   405,   684,
-   769,   991,   908,   866,   295,   295,   874,   456,   462,   792,
-   793,   836,   408,   877,   295,   894,   891,   899,  1025,   700,
-   595,   nil,   nil,   605,   nil,   444,   445,   457,   896,   nil,
-   450,   nil,   nil,   nil,   469,   470,   nil,   nil,   nil,   896,
-   nil,   nil,   nil,   nil,   518,   518,   827,   nil,    19,   nil,
-   390,   546,   nil,   237,   237,   237,   237,    19,   570,   542,
-   131,   694,   709,   332,   539,   317,   432,   432,   524,   nil,
-   317,   844,   nil,   712,   nil,   529,   nil,   nil,   nil,  1037,
-   332,   549,   nil,   712,   428,   439,   nil,   nil,   439,   nil,
-   528,   535,   nil,   965,   439,   707,   nil,   558,   563,   781,
-   781,   746,   nil,   716,   578,   297,   571,   572,   870,   543,
-   131,  1046,   712,   332,   297,   332,   nil,   nil,   944,   nil,
-   nil,   896,   nil,   527,   947,   981,   982,   296,   286,  1076,
-   314,   951,   290,   nil,   nil,   314,   296,   nil,   nil,   956,
-   957,    19,   237,   437,   237,   237,   437,   237,   511,   nil,
-   nil,   nil,   437,   237,   237,   943,   352,   514,   890,   531,
-   nil,  1011,   nil,   nil,   537,   916,    19,   881,   882,   144,
-   nil,   560,   564,   573,   nil,   468,   nil,   447,   660,   613,
-   665,   879,   880,   803,   840,   nil,   nil,   653,   nil,   nil,
-   605,   605,   704,   559,   456,   462,   nil,   295,   nil,   147,
-   518,   518,   237,   237,   671,   967,   969,   700,   971,   973,
-   nil,   974,   237,  1008,   817,   nil,   697,   781,   781,   923,
-   822,   466,   670,   450,   nil,   nil,   nil,  1058,   676,   nil,
-   nil,    19,   685,   440,   nil,    19,   nil,   952,   nil,   323,
-    19,   813,   815,   440,   440,   718,   nil,   818,   820,   440,
-   440,   546,   935,   671,   nil,   672,   323,  1070,   nil,   546,
-   295,   677,   nil,   nil,   nil,   843,    19,   nil,   nil,   nil,
-   nil,   688,   457,   nil,   nil,   237,    19,    19,   nil,   nil,
-   332,   875,   nil,   nil,   855,   nil,   450,   466,   332,   586,
-   712,   586,   nil,   nil,   950,   953,   nil,   466,   nil,   295,
-   840,   nil,   nil,   nil,   672,   751,   962,   nil,  1077,  1078,
-   nil,   nil,   nil,   nil,   nil,   nil,   735,   nil,   nil,   737,
-   nil,   nil,   739,   nil,   nil,   450,   466,   nil,   nil,  1053,
-  1054,  1055,  1056,   nil,   nil,   895,   760,   897,   457,   696,
-   nil,   nil,   nil,   nil,   nil,   nil,   613,   613,   457,   nil,
-   nil,   nil,   nil,   nil,   720,   635,   613,   637,   613,   898,
-   641,   900,   nil,   641,   nil,   997,   814,   816,  1024,   nil,
-  1004,   923,   819,   821,   923,   nil,   923,   457,   nil,   nil,
-   nil,   295,   nil,   917,   nil,   440,   nil,   nil,   nil,   nil,
-   761,  1086,   927,   835,   nil,   237,   767,   nil,   nil,   nil,
-     6,   144,   nil,   nil,   nil,   nil,   nil,   450,   466,   nil,
-   nil,   nil,   nil,   931,   925,   665,     9,   799,   nil,   800,
-   nil,   546,   nil,  1047,   nil,   nil,   808,   834,   nil,  1048,
-  1049,   147,   845,  1085,   nil,   829,   nil,   nil,   nil,   nil,
-   665,   nil,   nil,   nil,   518,   nil,   nil,   923,    19,   923,
-   332,   923,   883,   923,   nil,   nil,   323,   nil,   237,   457,
-   671,   332,   932,   nil,   323,   nil,   nil,   nil,   nil,   852,
-   nil,   856,   nil,   237,   nil,   923,   nil,   665,   nil,   295,
-   nil,   nil,   nil,   862,   nil,   862,    19,   nil,   812,    19,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,   nil,   nil,
-   888,   871,   466,   nil,   nil,   450,   nil,   nil,   918,   237,
-   nil,   672,   nil,   144,   677,   237,   nil,   nil,   nil,   nil,
-   439,   814,   816,   821,   819,   nil,   nil,  1018,   nil,   nil,
-   439,   439,   nil,   nil,   665,   nil,   439,   439,   nil,   nil,
-   nil,   nil,   nil,   913,  1028,   nil,   nil,  1029,   613,  1019,
-   857,  1020,   nil,  1021,   nil,   457,   nil,   nil,   nil,   nil,
-   518,   nil,   888,  1071,   945,   931,   nil,   432,   931,  1030,
-   nil,  1032,    19,   nil,   712,   nil,   nil,   nil,   437,   237,
-   954,   nil,    19,   nil,   nil,   nil,   829,   nil,   437,   437,
-   nil,    29,   nil,   nil,   437,   437,   nil,    29,   nil,   nil,
-   nil,   939,   942,   nil,   795,   nil,   665,   795,   nil,   nil,
-   nil,   932,    29,   946,   932,   nil,   nil,   932,   918,   932,
-  1081,    29,    29,    29,   nil,    29,   323,   nil,   430,   443,
-   955,   nil,   nil,   nil,   959,  1080,   961,   323,   nil,   nil,
-   nil,   931,  1082,   nil,  1083,   nil,  1084,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,
-    29,   888,   352,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1092,    19,   439,   984,   984,   984,   332,   237,   352,   nil,
-   nil,   nil,    19,    19,   471,   332,   nil,   995,   996,   nil,
-   932,   nil,   932,   nil,   932,   nil,   932,   nil,   nil,   nil,
-  1007,   nil,   nil,   nil,   nil,   521,  1009,   523,   nil,   nil,
-   525,   526,   nil,    19,   nil,   nil,   nil,    29,   932,   nil,
-   nil,   nil,    29,    29,    29,    29,    29,   nil,   nil,   nil,
-   437,   nil,   nil,   nil,   nil,   nil,   332,   nil,   nil,   nil,
-   nil,  1040,   515,   nil,   852,  1050,   nil,  1038,   nil,   nil,
-   nil,   nil,   nil,    19,  1043,   862,   565,   nil,   nil,   nil,
-   nil,   295,   nil,   nil,   892,   nil,   532,   892,   nil,   nil,
-   nil,    19,   nil,   nil,   nil,   984,   984,   984,   984,   nil,
-   984,   237,   466,    19,   985,   987,   989,   450,   466,   nil,
-   nil,   862,   nil,   nil,   nil,   nil,    19,   237,   557,   nil,
-   nil,   nil,   665,   nil,   nil,   nil,    19,    19,   nil,   nil,
-    29,    29,    29,    29,    29,    29,    29,   nil,   nil,   nil,
-   nil,    29,    29,    29,   nil,   924,   nil,   nil,   nil,   984,
-   984,   984,   984,   nil,   nil,    29,   nil,   656,   nil,   457,
-   984,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   993,   nil,   nil,   nil,   nil,    19,    19,   nil,
-   nil,  1000,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    19,    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,  1060,  1062,  1064,  1066,
-   nil,  1067,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,
-   nil,   nil,  1034,   nil,   nil,   nil,   nil,    19,   nil,   nil,
-   678,   nil,   nil,   698,    19,   nil,   565,   nil,   701,   nil,
-    19,    19,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
-  1088,  1089,  1090,  1091,    29,    29,    29,   nil,   nil,   nil,
-   nil,  1093,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,
-   691,   nil,   nil,   nil,   695,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   892,    32,   nil,   924,   nil,   nil,
-   924,   705,   924,   nil,   nil,   nil,   nil,   708,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-    32,    32,   nil,    32,   nil,   nil,   726,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   788,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   924,   nil,   924,   nil,   924,   nil,   924,
-   nil,   nil,   nil,   801,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   698,   565,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   924,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-    32,    32,    32,    32,    32,   841,   nil,   nil,   842,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   853,
-   nil,   nil,   nil,   nil,   698,   nil,   nil,   565,   nil,   nil,
-   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   867,   nil,   nil,   nil,    29,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   846,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,    29,   nil,   902,   nil,    32,    32,
-    32,    32,    32,    32,    32,   nil,   nil,   nil,   nil,    32,
-    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,   915,   nil,
-   nil,   nil,   nil,    32,   nil,   nil,   nil,   884,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   907,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,   nil,    29,    29,    32,
-    32,    29,   nil,   nil,   nil,   nil,   nil,    29,    29,    32,
-   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   948,   nil,   nil,   nil,    32,   nil,
-   nil,   nil,    32,   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,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    32,    32,    32,   565,   nil,   nil,   nil,   nil,
-   nil,   958,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,
-    29,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,    29,    29,   975,   nil,  1005,   nil,   nil,   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,   nil,   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,  1044,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   244,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,    29,   294,   294,   294,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   341,   342,   nil,   344,   nil,    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,
-    32,   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,   nil,    32,   nil,   nil,    29,
-   nil,   nil,   nil,    16,    32,   nil,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,    29,
-    29,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   367,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,    29,    32,
-   nil,   nil,   nil,   nil,   nil,    32,    32,   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,   294,   442,    16,
-   nil,   448,   294,   nil,   nil,   nil,   nil,   448,    16,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,    18,   nil,
-   244,   nil,   nil,   480,   481,   482,   483,   484,   485,   486,
-   487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
-   497,   498,   499,   500,   501,   nil,    18,   nil,    32,   502,
-   nil,   nil,   nil,   nil,    32,   nil,   nil,   294,   294,    32,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,
-   nil,   nil,    18,   nil,   294,   nil,   294,   nil,   nil,   294,
-   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,    16,   nil,   435,   nil,   nil,   435,   nil,   nil,
-   nil,   nil,   nil,   435,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   551,   nil,
-   552,   nil,   nil,   nil,   294,   294,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,    32,    32,   nil,    16,   nil,   nil,   nil,
-   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,
-   nil,    18,   nil,    18,    32,    32,    18,   nil,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   294,   nil,   448,   448,   448,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   nil,    32,   294,   nil,   294,   nil,   nil,
-   nil,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,   448,   719,   nil,    18,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   294,   nil,   nil,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   325,   325,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   365,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   448,   294,   nil,   nil,    16,   809,   nil,
-    16,   294,   294,   448,   448,   nil,   nil,   nil,   nil,   448,
-   448,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   nil,   nil,   294,   nil,   nil,   294,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   294,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   294,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   435,
-   nil,   nil,   294,    16,   nil,   nil,   nil,   nil,    18,   435,
-   435,   nil,   nil,   nil,   nil,   435,   435,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   438,   nil,   nil,   438,   nil,   nil,
-   nil,   nil,   nil,   438,   nil,   nil,    18,   294,   nil,    18,
-   nil,   nil,   nil,   nil,   nil,   448,   nil,    20,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   448,   448,
-   448,   448,   nil,   921,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    16,    16,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,   nil,    20,    41,   nil,   nil,
-   325,    20,    18,    41,    16,   nil,   nil,   nil,    18,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   325,    18,    18,
-   nil,   435,   nil,   nil,    18,    18,   nil,    20,   nil,   nil,
-   nil,    41,   321,   321,   294,   448,   nil,    20,    20,   nil,
-   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
-   587,   nil,   587,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,    16,   nil,   294,   nil,   nil,   361,   nil,   nil,
-   383,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,
-   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   294,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,    16,    16,
-   nil,   nil,  1003,   nil,   294,   nil,   nil,   nil,   nil,   nil,
-    18,    16,   nil,   nil,   nil,   nil,   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,   nil,
-   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,    16,    20,
-   nil,   nil,   nil,    18,   nil,    16,    41,   325,   nil,   nil,
-   nil,    16,    16,   nil,   nil,   325,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,    20,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,   321,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   321,   nil,    20,   nil,   nil,   nil,   nil,   nil,   438,
-   nil,    41,   nil,    20,   nil,   nil,   nil,    18,   nil,   438,
-   438,    41,    41,   nil,    18,   438,   438,   nil,   nil,   nil,
-    18,    18,   nil,   nil,   383,   nil,   383,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,    42,   325,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   325,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   322,   322,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
-   362,   nil,   nil,   384,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   912,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   438,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    20,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   321,    20,   nil,   nil,   nil,   nil,   nil,   nil,   321,
-   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-   nil,    41,   nil,   nil,    41,   nil,   nil,    20,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   587,   nil,   nil,   nil,   nil,    20,    20,
-   nil,   nil,  1002,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   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,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   587,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,    42,
-   nil,    20,    20,    42,   nil,   nil,   nil,   322,    42,   nil,
-   nil,   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   321,   nil,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,   384,   nil,   384,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    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,   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,   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,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   322,   nil,   nil,   nil,   nil,   383,   nil,   nil,
-   nil,   nil,    41,    41,   nil,   nil,   998,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    41,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   383,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,    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,   nil,   nil,   nil,
-   nil,    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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   384,   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   999,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   384,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,    42,    42 ]
-
-racc_goto_check = [
-     6,    36,    63,    40,    46,    46,    46,   118,    71,    71,
-    38,    70,    50,    50,   171,    12,     9,     2,    38,   102,
-    24,    24,     9,    15,    24,   113,    22,    22,   106,   106,
-    40,    78,    78,    29,    29,    87,    14,     8,    73,    73,
-   170,    70,   121,    42,    42,    51,    51,    51,    25,    33,
-    10,    25,   153,   153,    17,    33,    36,    25,   220,   146,
-    64,    37,    50,   204,    88,   100,    78,    88,   147,    76,
-     5,   107,    71,   118,   172,    52,     9,   215,    85,    85,
-   210,   100,   100,    53,   100,    68,    24,    24,    24,    24,
-   162,   109,   158,     6,   160,     6,     6,     6,     6,     6,
-     6,    59,    71,     6,    84,    84,    84,    83,    83,     7,
-   164,   188,    83,   148,   145,   216,     1,   192,    31,    31,
-   192,   188,    31,   165,     3,    11,    82,    82,    82,    69,
-    60,    69,    13,    16,    18,    27,     5,    20,    21,    23,
-    26,    30,     9,    32,    43,    65,    45,    58,    58,    58,
-    49,     9,   162,    55,    74,    79,    81,    86,    98,   101,
-   115,   117,   122,   207,   207,   207,   123,   124,   125,   126,
-   127,   128,    35,   129,    75,   130,   131,   132,    35,   133,
-    75,   134,   135,   136,    31,    31,    31,    31,   216,   137,
-   138,    87,   149,    35,   150,   156,   163,   166,   164,    46,
-   167,   168,    35,    35,    35,   220,    35,    35,    35,   169,
-   174,   165,   175,    88,    88,   177,   178,   180,   181,   209,
-   182,    14,   183,   184,   187,     6,    71,   146,    38,     7,
-   148,   146,    35,   145,   189,   190,   147,    35,    35,   113,
-   191,    35,    35,   194,   158,   160,    14,   195,   196,    36,
-   170,   162,   197,   100,    46,    46,    68,    50,    50,   198,
-   199,    53,   202,   203,    46,   208,   212,   215,   213,   220,
-   219,   nil,   nil,   204,   nil,    31,    31,    85,   210,   nil,
-     6,   nil,   nil,   nil,    31,    31,   nil,   nil,   nil,   210,
-   nil,   nil,   nil,   nil,     6,     6,    37,   nil,    35,   nil,
-     6,    63,   nil,    35,    35,    35,    35,    35,    24,    40,
-   118,   172,    36,    78,    38,    14,    82,    82,   188,   nil,
-    14,    37,   nil,    50,   nil,     9,   nil,   nil,   nil,    17,
-    78,    38,   nil,    50,    27,    27,   nil,   nil,    27,   nil,
-     8,    64,   nil,   153,    27,    65,   nil,     6,     6,   146,
-   146,    36,   nil,    65,    38,    84,    14,    14,    37,    76,
-   118,   109,    50,    78,    84,    78,   nil,   nil,   100,   nil,
-   nil,   210,   nil,     5,   100,   153,   153,    82,    85,   107,
-    59,   100,    85,   nil,   nil,    59,    82,   nil,   nil,   100,
-   100,    35,    35,    35,    35,    35,    35,    35,    58,   nil,
-   nil,   nil,    35,    35,    35,    83,    31,    58,   152,    60,
-   nil,   121,   nil,   nil,    60,    37,    35,   170,   170,    71,
-   nil,    84,    84,     5,   nil,    75,   nil,    75,    38,   209,
-    40,    12,    12,    36,    87,   nil,   nil,    22,   nil,   nil,
-   204,   204,    10,    82,    50,    50,   nil,    46,   nil,    73,
-     6,     6,    35,    35,     6,   207,   207,   220,   207,   207,
-   nil,   207,    35,   100,    52,   nil,    88,   146,   146,   152,
-    52,    71,    51,     6,   nil,   nil,   nil,   153,    51,   nil,
-   nil,    35,    40,    25,   nil,    35,   nil,    37,   nil,    35,
-    35,    33,    33,    25,    25,    75,   nil,    33,    33,    25,
-    25,    63,    12,     6,   nil,    85,    35,    15,   nil,    63,
-    46,    85,   nil,   nil,   nil,    65,    35,   nil,   nil,   nil,
-   nil,    51,    85,   nil,   nil,    35,    35,    35,   nil,   nil,
-    78,    36,   nil,   nil,    29,   nil,     6,    71,    78,    35,
-    50,    35,   nil,   nil,   106,    12,   nil,    71,   nil,    46,
-    87,   nil,   nil,   nil,    85,    42,    12,   nil,   100,   100,
-   nil,   nil,   nil,   nil,   nil,   nil,    14,   nil,   nil,    14,
-   nil,   nil,   118,   nil,   nil,     6,    71,   nil,   nil,   207,
-   207,   207,   207,   nil,   nil,   159,     6,   159,    85,    84,
-   nil,   nil,   nil,   nil,   nil,   nil,   209,   209,    85,   nil,
-   nil,   nil,   nil,   nil,    31,   193,   209,   193,   209,   157,
-   193,   157,   nil,   193,   nil,   106,    75,    75,   152,   nil,
-   106,   152,    75,    75,   152,   nil,   152,    85,   nil,   nil,
-   nil,    46,   nil,    33,   nil,    25,   nil,   nil,   nil,   nil,
-    31,   207,   159,   102,   nil,    35,    31,   nil,   nil,   nil,
-     6,    71,   nil,   nil,   nil,   nil,   nil,     6,    71,   nil,
-   nil,   nil,   nil,   209,   157,    40,     9,     2,   nil,    22,
-   nil,    63,   nil,   113,   nil,   nil,     9,   171,   nil,    12,
-    12,    73,    63,    37,   nil,     6,   nil,   nil,   nil,   nil,
-    40,   nil,   nil,   nil,     6,   nil,   nil,   152,    35,   152,
-    78,   152,    70,   152,   nil,   nil,    35,   nil,    35,    85,
-     6,    78,   211,   nil,    35,   nil,   nil,   nil,   nil,     6,
-   nil,     6,   nil,    35,   nil,   152,   nil,    40,   nil,    46,
-   nil,   nil,   nil,     6,   nil,     6,    35,   nil,    84,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,
-    40,    14,    71,   nil,   nil,     6,   nil,   nil,    75,    35,
-   nil,    85,   nil,    71,    85,    35,   nil,   nil,   nil,   nil,
-    27,    75,    75,    75,    75,   nil,   nil,   159,   nil,   nil,
-    27,    27,   nil,   nil,    40,   nil,    27,    27,   nil,   nil,
-   nil,   nil,   nil,    14,   159,   nil,   nil,   159,   209,   157,
-    84,   157,   nil,   157,   nil,    85,   nil,   nil,   nil,   nil,
-     6,   nil,    40,    36,    24,   209,   nil,    82,   209,   157,
-   nil,   157,    35,   nil,    50,   nil,   nil,   nil,    35,    35,
-    24,   nil,    35,   nil,   nil,   nil,     6,   nil,    35,    35,
-   nil,    54,   nil,   nil,    35,    35,   nil,    54,   nil,   nil,
-   nil,    14,     6,   nil,   193,   nil,    40,   193,   nil,   nil,
-   nil,   211,    54,    14,   211,   nil,   nil,   211,    75,   211,
-   159,    54,    54,    54,   nil,    54,    35,   nil,    80,    80,
-   118,   nil,   nil,   nil,   118,   157,    14,    35,   nil,   nil,
-   nil,   209,   157,   nil,   157,   nil,   157,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,
-    54,    40,    31,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   157,    35,    27,     6,     6,     6,    78,    35,    31,   nil,
-   nil,   nil,    35,    35,    61,    78,   nil,    14,    14,   nil,
-   211,   nil,   211,   nil,   211,   nil,   211,   nil,   nil,   nil,
-    14,   nil,   nil,   nil,   nil,    80,   118,    80,   nil,   nil,
-    80,    80,   nil,    35,   nil,   nil,   nil,    54,   211,   nil,
-   nil,   nil,    54,    54,    54,    54,    54,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,
-   nil,    38,    61,   nil,     6,    40,   nil,    14,   nil,   nil,
-   nil,   nil,   nil,    35,    14,     6,    80,   nil,   nil,   nil,
-   nil,    46,   nil,   nil,   154,   nil,    61,   154,   nil,   nil,
-   nil,    35,   nil,   nil,   nil,     6,     6,     6,     6,   nil,
-     6,    35,    71,    35,   155,   155,   155,     6,    71,   nil,
-   nil,     6,   nil,   nil,   nil,   nil,    35,    35,    61,   nil,
-   nil,   nil,    40,   nil,   nil,   nil,    35,    35,   nil,   nil,
-    54,    54,    54,    54,    54,    54,    54,   nil,   nil,   nil,
-   nil,    54,    54,    54,   nil,   154,   nil,   nil,   nil,     6,
-     6,     6,     6,   nil,   nil,    54,   nil,    80,   nil,    85,
-     6,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,    35,   nil,
-   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   155,   155,   155,   155,
-   nil,   155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,   nil,   nil,
-    61,   nil,   nil,    80,    35,   nil,    80,   nil,    80,   nil,
-    35,    35,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
-   155,   155,   155,   155,    54,    54,    54,   nil,   nil,   nil,
-   nil,   155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-    61,   nil,   nil,   nil,    61,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   154,    57,   nil,   154,   nil,   nil,
-   154,    61,   154,   nil,   nil,   nil,   nil,    61,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
-    57,    57,   nil,    57,   nil,   nil,    61,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   154,   nil,   154,   nil,   154,   nil,   154,
-   nil,   nil,   nil,    80,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    80,    80,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   154,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-    57,    57,    57,    57,    57,    80,   nil,   nil,    80,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,    80,
-   nil,   nil,   nil,   nil,    80,   nil,   nil,    80,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    80,   nil,   nil,   nil,    54,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-    61,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,    80,   nil,    57,    57,
-    57,    57,    57,    57,    57,   nil,   nil,   nil,   nil,    57,
-    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,    61,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   nil,    54,    54,    57,
-    57,    54,   nil,   nil,   nil,   nil,   nil,    54,    54,    57,
-   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,    57,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    57,    57,    57,    80,   nil,   nil,   nil,   nil,
-   nil,    61,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,
-    54,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,    54,    54,    61,   nil,    80,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,    54,    41,    41,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,    41,   nil,    41,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,    57,   nil,   nil,    54,
-   nil,   nil,   nil,    28,    57,   nil,   nil,   nil,   nil,    28,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,    54,
-    54,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,    54,    57,
-   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,   nil,
-   nil,    57,    57,   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,    41,    28,
-   nil,    41,    41,   nil,   nil,   nil,   nil,    41,    28,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-    41,   nil,   nil,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,   nil,    34,   nil,    57,    41,
-   nil,   nil,   nil,   nil,    57,   nil,   nil,    41,    41,    57,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,    34,   nil,    41,   nil,    41,   nil,   nil,    41,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,    28,   nil,    28,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,    28,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    41,   nil,
-    41,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    28,    57,    57,   nil,    28,   nil,   nil,   nil,
-   nil,    28,   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,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
-   nil,    34,   nil,    34,    57,    57,    34,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-    41,   nil,    41,    41,    41,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,    57,    41,   nil,    41,   nil,   nil,
-   nil,    57,   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,    41,    41,   nil,    34,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,    41,   nil,   nil,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,    39,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    28,
-   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,    41,    41,    41,   nil,   nil,    28,    41,   nil,
-    28,    41,    41,    41,    41,   nil,   nil,   nil,   nil,    41,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,   nil,   nil,    41,   nil,   nil,    41,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,    28,
-   nil,   nil,    41,    28,   nil,   nil,   nil,   nil,    34,    28,
-    28,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,    39,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,    34,    41,   nil,    34,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,
-    41,    41,   nil,    41,   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,    28,    28,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,    39,    66,   nil,   nil,
-    39,    39,    34,    66,    28,   nil,   nil,   nil,    34,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,    39,    34,    34,
-   nil,    28,   nil,   nil,    34,    34,   nil,    39,   nil,   nil,
-   nil,    66,    66,    66,    41,    41,   nil,    39,    39,   nil,
-   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-    39,   nil,    39,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    28,   nil,    41,   nil,   nil,    66,   nil,   nil,
-    66,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
-   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    28,    28,
-   nil,   nil,    28,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-    34,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,    28,    39,
-   nil,   nil,   nil,    34,   nil,    28,    66,    39,   nil,   nil,
-   nil,    28,    28,   nil,   nil,    39,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    39,   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,    34,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,    66,   nil,    39,   nil,   nil,   nil,    34,   nil,    39,
-    39,    66,    66,   nil,    34,    39,    39,   nil,   nil,   nil,
-    34,    34,   nil,   nil,    66,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,    67,    39,   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,    67,    67,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   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,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,    39,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-   nil,    66,   nil,   nil,    66,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,    39,
-   nil,   nil,    39,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   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,    39,   nil,   nil,   nil,    67,
-   nil,    39,    39,    67,   nil,   nil,   nil,    67,    67,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,    67,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    66,    66,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    66,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,    67,    67 ]
-
-racc_goto_pointer = [
-   nil,   116,    15,   124,   nil,    65,    -2,   101,    32,    14,
-   -88,   115,  -331,  -289,     0,  -531,  -588,  -667,  -713,   nil,
-  -391,  -175,    15,   127,   -47,  -175,    68,   112,  1791,  -189,
-   -81,    51,     4,  -177,  1930,   170,  -226,  -388,    -9,  2261,
-   -19,  1695,   -26,  -426,   nil,  -592,   -28,   nil,   nil,   123,
-  -216,    16,  -206,  -429,   839,  -355,   nil,  1217,   115,    65,
-    94,   700,   nil,   -35,    22,  -191,  2575,  2958,  -499,  -240,
-   -64,    -3,   nil,    27,  -272,   -52,    25,   nil,    -6,   108,
-   656,  -193,    94,  -452,    72,    49,  -348,  -262,  -453,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    83,   nil,
-  -490,  -191,   -46,   nil,   nil,   nil,  -325,  -664,   nil,  -646,
-   nil,   nil,   nil,  -334,   nil,    88,   nil,  -427,     2,   nil,
-   nil,  -549,    87,  -216,   106,   106,  -178,   107,   107,   100,
-  -583,  -194,  -584,  -776,   107,  -408,  -198,  -403,  -693,   nil,
-   nil,   nil,   nil,   nil,   nil,  -790,  -555,  -546,  -792,  -712,
-  -637,   nil,  -362,  -547,   244,   109,  -636,  -167,  -739,  -189,
-  -593,   nil,  -679,  -767,  -853,  -840,  -190,  -568,   112,  -387,
-  -347,   -11,  -202,   nil,   -77,   -76,   nil,  -478,  -529,   nil,
-  -287,  -789,  -356,  -501,  -631,   nil,   nil,   132,    16,   137,
-   137,   141,  -279,   214,   143,   146,   146,  -540,  -373,  -373,
-   nil,   nil,   157,  -496,  -324,   nil,   nil,  -439,  -509,  -168,
-  -694,  -119,  -504,  -712,   nil,  -699,  -871,   nil,   nil,  -116,
-  -462 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   309,     7,   360,   312,
-   nil,   nil,   nil,   nil,   554,   nil,   nil,   nil,   nil,   308,
-   310,   nil,   nil,   nil,   nil,    14,    15,    21,   242,   nil,
-   nil,    17,   nil,   436,   243,   340,   nil,   nil,   756,   241,
-   472,    24,   nil,   nil,   355,   nil,    25,    26,    27,   nil,
-   715,   nil,   nil,   nil,   329,   nil,    28,   326,   451,    35,
-   nil,   nil,    37,    40,    39,   nil,   238,   239,   585,   nil,
-   146,   459,   145,    91,   nil,   441,   107,    47,    50,   274,
-   300,   nil,   452,   nil,   453,   464,   673,   516,   298,   283,
-    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
-   nil,   nil,   284,    65,    66,    67,   nil,   nil,    68,   860,
-    69,    70,    71,   nil,    72,   nil,    73,   nil,   567,    74,
-    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   288,
-   276,   723,   851,   576,   861,   783,   612,   nil,   784,   785,
-  1026,   922,   600,   nil,   601,   nil,   nil,   602,   nil,   604,
-   nil,   830,   nil,   nil,   nil,   610,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   463,   nil,   nil,   693,   nil,   nil,   504,
-   nil,   nil,   nil,   nil,   nil,    90,    92,    94,   nil,   nil,
-   nil,   nil,   nil,   630,   nil,   nil,   nil,   nil,   nil,   nil,
-   103,   104,   nil,   nil,   893,   765,   599,   nil,   603,   901,
-   615,   617,   618,   933,   621,   622,   934,   625,   628,   nil,
-   303 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 150, :_reduce_1,
-  2, 148, :_reduce_2,
-  2, 149, :_reduce_3,
-  1, 151, :_reduce_none,
-  1, 151, :_reduce_none,
-  3, 151, :_reduce_6,
-  2, 151, :_reduce_none,
-  1, 154, :_reduce_none,
-  0, 158, :_reduce_9,
-  3, 154, :_reduce_10,
-  0, 160, :_reduce_11,
-  4, 157, :_reduce_12,
-  0, 165, :_reduce_13,
-  6, 159, :_reduce_14,
-  3, 159, :_reduce_15,
-  2, 161, :_reduce_16,
-  1, 166, :_reduce_none,
-  1, 166, :_reduce_none,
-  3, 166, :_reduce_19,
-  2, 166, :_reduce_20,
-  1, 167, :_reduce_none,
-  0, 168, :_reduce_22,
-  3, 167, :_reduce_23,
-  0, 179, :_reduce_24,
-  4, 156, :_reduce_25,
-  3, 156, :_reduce_26,
-  3, 156, :_reduce_27,
-  3, 156, :_reduce_28,
-  2, 156, :_reduce_29,
-  3, 156, :_reduce_30,
-  3, 156, :_reduce_31,
-  3, 156, :_reduce_32,
-  3, 156, :_reduce_33,
-  3, 156, :_reduce_34,
-  4, 156, :_reduce_35,
-  1, 156, :_reduce_none,
-  3, 156, :_reduce_37,
-  3, 156, :_reduce_38,
-  3, 156, :_reduce_39,
-  1, 156, :_reduce_none,
-  3, 172, :_reduce_41,
-  3, 172, :_reduce_42,
-  6, 172, :_reduce_43,
-  5, 172, :_reduce_44,
-  5, 172, :_reduce_45,
-  5, 172, :_reduce_46,
-  5, 172, :_reduce_47,
-  3, 172, :_reduce_48,
-  1, 180, :_reduce_49,
-  3, 180, :_reduce_50,
-  1, 180, :_reduce_none,
-  1, 178, :_reduce_none,
-  3, 178, :_reduce_53,
-  3, 178, :_reduce_54,
-  3, 178, :_reduce_55,
-  2, 178, :_reduce_56,
-  1, 178, :_reduce_none,
-  1, 171, :_reduce_58,
-  0, 191, :_reduce_59,
-  0, 192, :_reduce_60,
-  4, 189, :_reduce_61,
-  1, 174, :_reduce_none,
-  1, 174, :_reduce_none,
-  1, 194, :_reduce_none,
-  4, 194, :_reduce_65,
-  0, 202, :_reduce_66,
-  4, 199, :_reduce_67,
-  1, 201, :_reduce_68,
-  2, 193, :_reduce_69,
-  3, 193, :_reduce_70,
-  4, 193, :_reduce_71,
-  5, 193, :_reduce_72,
-  4, 193, :_reduce_73,
-  5, 193, :_reduce_74,
-  2, 193, :_reduce_75,
-  2, 193, :_reduce_76,
-  2, 193, :_reduce_77,
-  2, 193, :_reduce_78,
-  2, 193, :_reduce_79,
-  1, 173, :_reduce_none,
-  3, 173, :_reduce_81,
-  1, 207, :_reduce_none,
-  3, 207, :_reduce_83,
-  1, 206, :_reduce_84,
-  2, 206, :_reduce_85,
-  3, 206, :_reduce_86,
-  5, 206, :_reduce_87,
-  2, 206, :_reduce_88,
-  4, 206, :_reduce_89,
-  2, 206, :_reduce_90,
-  4, 206, :_reduce_91,
-  1, 206, :_reduce_92,
-  3, 206, :_reduce_93,
-  1, 210, :_reduce_none,
-  3, 210, :_reduce_95,
-  2, 209, :_reduce_96,
-  3, 209, :_reduce_97,
-  1, 212, :_reduce_98,
-  3, 212, :_reduce_99,
-  1, 211, :_reduce_100,
-  1, 211, :_reduce_101,
-  4, 211, :_reduce_102,
-  3, 211, :_reduce_103,
-  3, 211, :_reduce_104,
-  3, 211, :_reduce_105,
-  3, 211, :_reduce_106,
-  2, 211, :_reduce_107,
-  1, 211, :_reduce_108,
-  1, 175, :_reduce_109,
-  1, 175, :_reduce_110,
-  4, 175, :_reduce_111,
-  3, 175, :_reduce_112,
-  3, 175, :_reduce_113,
-  3, 175, :_reduce_114,
-  3, 175, :_reduce_115,
-  2, 175, :_reduce_116,
-  1, 175, :_reduce_117,
-  1, 215, :_reduce_118,
-  1, 215, :_reduce_none,
-  2, 216, :_reduce_120,
-  1, 216, :_reduce_121,
-  3, 216, :_reduce_122,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_126,
-  1, 217, :_reduce_none,
-  1, 169, :_reduce_128,
-  1, 169, :_reduce_none,
-  1, 170, :_reduce_130,
-  0, 221, :_reduce_131,
-  4, 170, :_reduce_132,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  3, 188, :_reduce_204,
-  3, 188, :_reduce_205,
-  6, 188, :_reduce_206,
-  5, 188, :_reduce_207,
-  5, 188, :_reduce_208,
-  5, 188, :_reduce_209,
-  5, 188, :_reduce_210,
-  4, 188, :_reduce_211,
-  3, 188, :_reduce_212,
-  3, 188, :_reduce_213,
-  3, 188, :_reduce_214,
-  3, 188, :_reduce_215,
-  3, 188, :_reduce_216,
-  3, 188, :_reduce_217,
-  3, 188, :_reduce_218,
-  3, 188, :_reduce_219,
-  3, 188, :_reduce_220,
-  4, 188, :_reduce_221,
-  2, 188, :_reduce_222,
-  2, 188, :_reduce_223,
-  3, 188, :_reduce_224,
-  3, 188, :_reduce_225,
-  3, 188, :_reduce_226,
-  3, 188, :_reduce_227,
-  1, 188, :_reduce_none,
-  3, 188, :_reduce_229,
-  3, 188, :_reduce_230,
-  3, 188, :_reduce_231,
-  3, 188, :_reduce_232,
-  3, 188, :_reduce_233,
-  2, 188, :_reduce_234,
-  2, 188, :_reduce_235,
-  3, 188, :_reduce_236,
-  3, 188, :_reduce_237,
-  3, 188, :_reduce_238,
-  3, 188, :_reduce_239,
-  3, 188, :_reduce_240,
-  6, 188, :_reduce_241,
-  1, 188, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  3, 224, :_reduce_247,
-  3, 224, :_reduce_248,
-  1, 227, :_reduce_249,
-  1, 228, :_reduce_none,
-  2, 228, :_reduce_251,
-  4, 228, :_reduce_252,
-  2, 228, :_reduce_253,
-  1, 222, :_reduce_none,
-  3, 222, :_reduce_255,
-  3, 232, :_reduce_256,
-  1, 233, :_reduce_none,
-  1, 233, :_reduce_none,
-  1, 183, :_reduce_none,
-  1, 183, :_reduce_none,
-  2, 183, :_reduce_261,
-  4, 183, :_reduce_262,
-  2, 183, :_reduce_263,
-  1, 205, :_reduce_264,
-  2, 205, :_reduce_265,
-  2, 205, :_reduce_266,
-  4, 205, :_reduce_267,
-  1, 205, :_reduce_268,
-  0, 236, :_reduce_269,
-  2, 198, :_reduce_270,
-  2, 235, :_reduce_271,
-  2, 234, :_reduce_272,
-  1, 234, :_reduce_none,
-  1, 229, :_reduce_274,
-  2, 229, :_reduce_275,
-  3, 229, :_reduce_276,
-  4, 229, :_reduce_277,
-  1, 177, :_reduce_278,
-  1, 177, :_reduce_279,
-  3, 176, :_reduce_280,
-  4, 176, :_reduce_281,
-  2, 176, :_reduce_282,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_293,
-  0, 271, :_reduce_294,
-  4, 225, :_reduce_295,
-  0, 272, :_reduce_296,
-  3, 225, :_reduce_297,
-  0, 273, :_reduce_298,
-  4, 225, :_reduce_299,
-  3, 225, :_reduce_300,
-  3, 225, :_reduce_301,
-  2, 225, :_reduce_302,
-  0, 274, :_reduce_303,
-  4, 225, :_reduce_304,
-  0, 275, :_reduce_305,
-  4, 225, :_reduce_306,
-  1, 225, :_reduce_307,
-  4, 225, :_reduce_308,
-  3, 225, :_reduce_309,
-  1, 225, :_reduce_310,
-  5, 225, :_reduce_311,
-  4, 225, :_reduce_312,
-  3, 225, :_reduce_313,
-  2, 225, :_reduce_314,
-  1, 225, :_reduce_none,
-  2, 225, :_reduce_316,
-  1, 225, :_reduce_317,
-  6, 225, :_reduce_318,
-  6, 225, :_reduce_319,
-  4, 225, :_reduce_320,
-  4, 225, :_reduce_321,
-  5, 225, :_reduce_322,
-  4, 225, :_reduce_323,
-  6, 225, :_reduce_324,
-  0, 276, :_reduce_325,
-  0, 277, :_reduce_326,
-  7, 225, :_reduce_327,
-  0, 278, :_reduce_328,
-  0, 279, :_reduce_329,
-  0, 280, :_reduce_330,
-  9, 225, :_reduce_331,
-  0, 281, :_reduce_332,
-  0, 282, :_reduce_333,
-  6, 225, :_reduce_334,
-  0, 283, :_reduce_335,
-  6, 225, :_reduce_336,
-  0, 284, :_reduce_337,
-  0, 285, :_reduce_338,
-  9, 225, :_reduce_339,
-  1, 225, :_reduce_340,
-  1, 225, :_reduce_341,
-  1, 225, :_reduce_342,
-  1, 225, :_reduce_343,
-  1, 182, :_reduce_344,
-  1, 246, :_reduce_none,
-  1, 252, :_reduce_none,
-  1, 255, :_reduce_none,
-  1, 257, :_reduce_none,
-  1, 258, :_reduce_none,
-  1, 259, :_reduce_none,
-  1, 261, :_reduce_none,
-  1, 263, :_reduce_352,
-  1, 266, :_reduce_353,
-  1, 267, :_reduce_354,
-  1, 286, :_reduce_none,
-  1, 287, :_reduce_none,
-  1, 288, :_reduce_none,
-  1, 289, :_reduce_none,
-  1, 290, :_reduce_none,
-  1, 163, :_reduce_none,
-  1, 291, :_reduce_none,
-  1, 247, :_reduce_none,
-  1, 204, :_reduce_none,
-  1, 253, :_reduce_none,
-  1, 253, :_reduce_none,
-  2, 253, :_reduce_none,
-  1, 190, :_reduce_none,
-  1, 190, :_reduce_none,
-  1, 254, :_reduce_none,
-  5, 254, :_reduce_370,
-  1, 256, :_reduce_none,
-  2, 256, :_reduce_372,
-  1, 262, :_reduce_none,
-  1, 262, :_reduce_374,
-  1, 292, :_reduce_none,
-  3, 292, :_reduce_376,
-  1, 295, :_reduce_377,
-  3, 295, :_reduce_378,
-  1, 294, :_reduce_379,
-  3, 294, :_reduce_380,
-  5, 294, :_reduce_381,
-  1, 294, :_reduce_382,
-  3, 294, :_reduce_383,
-  2, 296, :_reduce_384,
-  1, 296, :_reduce_385,
-  4, 297, :_reduce_386,
-  2, 297, :_reduce_387,
-  2, 297, :_reduce_388,
-  1, 297, :_reduce_389,
-  2, 302, :_reduce_390,
-  1, 302, :_reduce_none,
-  6, 303, :_reduce_392,
-  8, 303, :_reduce_393,
-  4, 303, :_reduce_394,
-  6, 303, :_reduce_395,
-  4, 303, :_reduce_396,
-  2, 303, :_reduce_397,
-  6, 303, :_reduce_398,
-  2, 303, :_reduce_399,
-  4, 303, :_reduce_400,
-  6, 303, :_reduce_401,
-  2, 303, :_reduce_402,
-  4, 303, :_reduce_403,
-  2, 303, :_reduce_404,
-  4, 303, :_reduce_405,
-  1, 303, :_reduce_406,
-  1, 307, :_reduce_407,
-  1, 307, :_reduce_408,
-  3, 308, :_reduce_409,
-  1, 308, :_reduce_410,
-  4, 308, :_reduce_411,
-  1, 309, :_reduce_none,
-  4, 309, :_reduce_413,
-  1, 310, :_reduce_414,
-  3, 310, :_reduce_415,
-  1, 311, :_reduce_416,
-  1, 311, :_reduce_none,
-  0, 315, :_reduce_418,
-  0, 316, :_reduce_419,
-  5, 251, :_reduce_420,
-  4, 313, :_reduce_421,
-  1, 313, :_reduce_422,
-  3, 314, :_reduce_423,
-  3, 314, :_reduce_424,
-  3, 318, :_reduce_425,
-  2, 195, :_reduce_426,
-  4, 195, :_reduce_427,
-  5, 195, :_reduce_428,
-  5, 195, :_reduce_429,
-  2, 250, :_reduce_430,
-  4, 250, :_reduce_431,
-  4, 250, :_reduce_432,
-  3, 250, :_reduce_433,
-  3, 250, :_reduce_434,
-  3, 250, :_reduce_435,
-  2, 250, :_reduce_436,
-  1, 250, :_reduce_437,
-  4, 250, :_reduce_438,
-  0, 321, :_reduce_439,
-  4, 249, :_reduce_440,
-  0, 322, :_reduce_441,
-  4, 249, :_reduce_442,
-  0, 323, :_reduce_443,
-  0, 324, :_reduce_444,
-  4, 200, :_reduce_445,
-  0, 326, :_reduce_446,
-  0, 327, :_reduce_447,
-  4, 319, :_reduce_448,
-  1, 325, :_reduce_449,
-  2, 325, :_reduce_450,
-  3, 325, :_reduce_451,
-  4, 325, :_reduce_452,
-  0, 329, :_reduce_453,
-  6, 260, :_reduce_454,
-  1, 328, :_reduce_none,
-  1, 328, :_reduce_none,
-  6, 162, :_reduce_457,
-  0, 162, :_reduce_458,
-  1, 330, :_reduce_459,
-  1, 330, :_reduce_none,
-  1, 330, :_reduce_none,
-  2, 331, :_reduce_462,
-  1, 331, :_reduce_none,
-  2, 164, :_reduce_464,
-  1, 164, :_reduce_none,
-  1, 237, :_reduce_466,
-  1, 237, :_reduce_none,
-  1, 238, :_reduce_468,
-  1, 333, :_reduce_469,
-  1, 333, :_reduce_none,
-  2, 333, :_reduce_471,
-  3, 334, :_reduce_472,
-  1, 334, :_reduce_473,
-  3, 239, :_reduce_474,
-  3, 240, :_reduce_475,
-  3, 241, :_reduce_476,
-  3, 241, :_reduce_477,
-  1, 338, :_reduce_478,
-  3, 338, :_reduce_479,
-  1, 339, :_reduce_none,
-  2, 339, :_reduce_481,
-  3, 243, :_reduce_482,
-  3, 243, :_reduce_483,
-  1, 341, :_reduce_484,
-  3, 341, :_reduce_485,
-  3, 242, :_reduce_486,
-  3, 242, :_reduce_487,
-  3, 244, :_reduce_488,
-  3, 244, :_reduce_489,
-  1, 342, :_reduce_490,
-  3, 342, :_reduce_491,
-  1, 343, :_reduce_492,
-  3, 343, :_reduce_493,
-  1, 335, :_reduce_494,
-  2, 335, :_reduce_495,
-  1, 336, :_reduce_496,
-  2, 336, :_reduce_497,
-  1, 337, :_reduce_498,
-  2, 337, :_reduce_499,
-  1, 340, :_reduce_500,
-  0, 345, :_reduce_501,
-  3, 340, :_reduce_502,
-  0, 346, :_reduce_503,
-  4, 340, :_reduce_504,
-  1, 344, :_reduce_505,
-  1, 344, :_reduce_506,
-  1, 344, :_reduce_507,
-  1, 344, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  2, 347, :_reduce_511,
-  1, 347, :_reduce_512,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  3, 348, :_reduce_517,
-  1, 332, :_reduce_none,
-  2, 332, :_reduce_519,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 214, :_reduce_529,
-  1, 214, :_reduce_530,
-  1, 214, :_reduce_531,
-  1, 214, :_reduce_532,
-  1, 214, :_reduce_533,
-  1, 214, :_reduce_534,
-  1, 214, :_reduce_535,
-  1, 245, :_reduce_536,
-  1, 245, :_reduce_537,
-  1, 181, :_reduce_538,
-  1, 181, :_reduce_539,
-  1, 186, :_reduce_540,
-  1, 186, :_reduce_541,
-  0, 350, :_reduce_542,
-  4, 264, :_reduce_543,
-  1, 264, :_reduce_544,
-  3, 268, :_reduce_545,
-  0, 352, :_reduce_546,
-  3, 268, :_reduce_547,
-  4, 351, :_reduce_548,
-  2, 351, :_reduce_549,
-  2, 351, :_reduce_550,
-  1, 351, :_reduce_none,
-  2, 354, :_reduce_552,
-  0, 354, :_reduce_553,
-  6, 317, :_reduce_554,
-  8, 317, :_reduce_555,
-  4, 317, :_reduce_556,
-  6, 317, :_reduce_557,
-  4, 317, :_reduce_558,
-  6, 317, :_reduce_559,
-  2, 317, :_reduce_560,
-  4, 317, :_reduce_561,
-  6, 317, :_reduce_562,
-  2, 317, :_reduce_563,
-  4, 317, :_reduce_564,
-  2, 317, :_reduce_565,
-  4, 317, :_reduce_566,
-  1, 317, :_reduce_567,
-  0, 317, :_reduce_568,
-  1, 312, :_reduce_569,
-  1, 312, :_reduce_570,
-  1, 312, :_reduce_571,
-  1, 312, :_reduce_572,
-  1, 293, :_reduce_none,
-  1, 293, :_reduce_574,
-  1, 356, :_reduce_none,
-  1, 357, :_reduce_none,
-  3, 357, :_reduce_577,
-  1, 304, :_reduce_578,
-  3, 304, :_reduce_579,
-  1, 358, :_reduce_none,
-  2, 359, :_reduce_581,
-  1, 359, :_reduce_582,
-  2, 360, :_reduce_583,
-  1, 360, :_reduce_584,
-  1, 298, :_reduce_none,
-  3, 298, :_reduce_586,
-  1, 353, :_reduce_none,
-  3, 353, :_reduce_588,
-  1, 361, :_reduce_none,
-  1, 361, :_reduce_none,
-  2, 299, :_reduce_591,
-  1, 299, :_reduce_592,
-  3, 362, :_reduce_593,
-  3, 363, :_reduce_594,
-  1, 305, :_reduce_595,
-  3, 305, :_reduce_596,
-  1, 355, :_reduce_597,
-  3, 355, :_reduce_598,
-  1, 364, :_reduce_none,
-  1, 364, :_reduce_none,
-  2, 306, :_reduce_601,
-  1, 306, :_reduce_602,
-  1, 365, :_reduce_none,
-  1, 365, :_reduce_none,
-  2, 301, :_reduce_605,
-  2, 300, :_reduce_606,
-  0, 300, :_reduce_607,
-  1, 269, :_reduce_none,
-  0, 366, :_reduce_609,
-  4, 269, :_reduce_610,
-  1, 248, :_reduce_611,
-  2, 248, :_reduce_none,
-  1, 231, :_reduce_none,
-  3, 231, :_reduce_614,
-  3, 367, :_reduce_615,
-  2, 367, :_reduce_616,
-  4, 367, :_reduce_617,
-  2, 367, :_reduce_618,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 196, :_reduce_none,
-  1, 196, :_reduce_none,
-  0, 152, :_reduce_none,
-  1, 152, :_reduce_none,
-  0, 187, :_reduce_none,
-  1, 187, :_reduce_none,
-  2, 208, :_reduce_none,
-  2, 184, :_reduce_none,
-  0, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 265, :_reduce_644,
-  1, 265, :_reduce_none,
-  1, 155, :_reduce_none,
-  2, 155, :_reduce_647,
-  0, 153, :_reduce_648 ]
-
-racc_reduce_n = 649
-
-racc_shift_n = 1094
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLABEL_END => 141,
-  :tLONELY => 142,
-  :tLOWEST => 143,
-  :tEQL => 144,
-  :tBDOT2 => 145,
-  :tBDOT3 => 146 }
-
-racc_nt_base = 147
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLABEL_END",
-  "tLONELY",
-  "tLOWEST",
-  "tEQL",
-  "tBDOT2",
-  "tBDOT3",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "backref",
-  "opt_nl",
-  "arg",
-  "expr_value_do",
-  "do",
-  "@7",
-  "@8",
-  "command",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@9",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "fname",
-  "op",
-  "reswords",
-  "symbol",
-  "@10",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@11",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "k_def",
-  "f_arglist",
-  "singleton",
-  "dot_or_colon",
-  "@12",
-  "@13",
-  "@14",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "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",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "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",
-  "@36",
-  "@37",
-  "ssym",
-  "dsym",
-  "sym",
-  "@38",
-  "args_tail",
-  "@39",
-  "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",
-  "@40",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 12
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 40 omitted
-
-def _reduce_41(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_42(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-def _reduce_50(val, _values, result)
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-
-    result
-end
-
-# reduce 51 omitted
-
-# reduce 52 omitted
-
-def _reduce_53(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_54(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_56(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-# reduce 57 omitted
-
-def _reduce_58(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_61(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 62 omitted
-
-# reduce 63 omitted
-
-# reduce 64 omitted
-
-def _reduce_65(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_66(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_67(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_75(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_76(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_77(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_78(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_79(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 80 omitted
-
-def _reduce_81(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 82 omitted
-
-def _reduce_83(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_93(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 94 omitted
-
-def _reduce_95(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_96(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_107(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_108(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_118(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 119 omitted
-
-def _reduce_120(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_122(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 123 omitted
-
-# reduce 124 omitted
-
-# reduce 125 omitted
-
-def _reduce_126(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 127 omitted
-
-def _reduce_128(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 129 omitted
-
-def _reduce_130(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_132(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-# reduce 203 omitted
-
-def _reduce_204(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_205(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_206(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_207(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_208(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_209(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_210(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_211(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_212(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_213(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_214(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_215(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_216(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_217(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_227(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 228 omitted
-
-def _reduce_229(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_230(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_241(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-# reduce 242 omitted
-
-# reduce 243 omitted
-
-# reduce 244 omitted
-
-# reduce 245 omitted
-
-# reduce 246 omitted
-
-def _reduce_247(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_248(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_249(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 250 omitted
-
-def _reduce_251(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_252(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_253(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 254 omitted
-
-def _reduce_255(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_256(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-# reduce 257 omitted
-
-# reduce 258 omitted
-
-# reduce 259 omitted
-
-# reduce 260 omitted
-
-def _reduce_261(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_262(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_263(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_264(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_265(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_266(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_267(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_268(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_271(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_272(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 273 omitted
-
-def _reduce_274(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_275(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_276(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_280(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_281(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_282(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 283 omitted
-
-# reduce 284 omitted
-
-# reduce 285 omitted
-
-# reduce 286 omitted
-
-# reduce 287 omitted
-
-# reduce 288 omitted
-
-# reduce 289 omitted
-
-# reduce 290 omitted
-
-# reduce 291 omitted
-
-# reduce 292 omitted
-
-def _reduce_293(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_294(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_295(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_297(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_298(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_302(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_303(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_305(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_307(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_308(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_309(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_310(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_311(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_312(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_313(val, _values, result)
-                      debug 20
-
-    result
-end
-
-def _reduce_314(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 315 omitted
-
-def _reduce_316(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_317(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_327(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-
-    result
-end
-
-def _reduce_339(val, _values, result)
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_340(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_344(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 345 omitted
-
-# reduce 346 omitted
-
-# reduce 347 omitted
-
-# reduce 348 omitted
-
-# reduce 349 omitted
-
-# reduce 350 omitted
-
-# reduce 351 omitted
-
-def _reduce_352(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_354(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 355 omitted
-
-# reduce 356 omitted
-
-# reduce 357 omitted
-
-# reduce 358 omitted
-
-# reduce 359 omitted
-
-# reduce 360 omitted
-
-# reduce 361 omitted
-
-# reduce 362 omitted
-
-# reduce 363 omitted
-
-# reduce 364 omitted
-
-# reduce 365 omitted
-
-# reduce 366 omitted
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-# reduce 369 omitted
-
-def _reduce_370(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 371 omitted
-
-def _reduce_372(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 373 omitted
-
-def _reduce_374(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 375 omitted
-
-def _reduce_376(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_377(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_378(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_379(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_380(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_381(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_382(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_383(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_384(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_385(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-def _reduce_386(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_387(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_388(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_389(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_390(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 391 omitted
-
-def _reduce_392(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_393(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_394(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_395(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_396(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_397(val, _values, result)
-                      result = args(val) << nil
-
-    result
-end
-
-def _reduce_398(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_403(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_406(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_407(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_408(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_409(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_410(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_411(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 412 omitted
-
-def _reduce_413(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_416(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 417 omitted
-
-def _reduce_418(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_433(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_438(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_439(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_442(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_443(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_444(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_445(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_446(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_447(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_454(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 455 omitted
-
-# reduce 456 omitted
-
-def _reduce_457(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_458(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_459(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 460 omitted
-
-# reduce 461 omitted
-
-def _reduce_462(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 463 omitted
-
-def _reduce_464(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 465 omitted
-
-def _reduce_466(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 467 omitted
-
-def _reduce_468(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_469(val, _values, result)
-                      debug 37
-
-    result
-end
-
-# reduce 470 omitted
-
-def _reduce_471(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_472(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_473(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_476(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_477(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_479(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 480 omitted
-
-def _reduce_481(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_482(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_483(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_485(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_486(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_487(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_488(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_489(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_491(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_492(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_495(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_497(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_498(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_499(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_500(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_501(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_502(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_503(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_504(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_505(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_506(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_507(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 508 omitted
-
-# reduce 509 omitted
-
-# reduce 510 omitted
-
-def _reduce_511(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_512(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 513 omitted
-
-# reduce 514 omitted
-
-# reduce 515 omitted
-
-# reduce 516 omitted
-
-def _reduce_517(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-
-    result
-end
-
-# reduce 518 omitted
-
-def _reduce_519(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 520 omitted
-
-# reduce 521 omitted
-
-# reduce 522 omitted
-
-# reduce 523 omitted
-
-# reduce 524 omitted
-
-# reduce 525 omitted
-
-# reduce 526 omitted
-
-# reduce 527 omitted
-
-# reduce 528 omitted
-
-def _reduce_529(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_530(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_531(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_532(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_533(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_534(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_535(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-
-    result
-end
-
-def _reduce_537(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_538(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 40
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_544(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_545(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_546(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_547(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_548(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_550(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 551 omitted
-
-def _reduce_552(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_553(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_554(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_555(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_556(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_560(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_561(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_562(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_563(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_565(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_566(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_567(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_568(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_569(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_570(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_572(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 573 omitted
-
-def _reduce_574(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 575 omitted
-
-# reduce 576 omitted
-
-def _reduce_577(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_578(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_579(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 580 omitted
-
-def _reduce_581(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_582(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_583(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_584(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 585 omitted
-
-def _reduce_586(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 587 omitted
-
-def _reduce_588(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 589 omitted
-
-# reduce 590 omitted
-
-def _reduce_591(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_592(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_593(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-
-    result
-end
-
-def _reduce_595(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_596(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_597(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_598(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 599 omitted
-
-# reduce 600 omitted
-
-def _reduce_601(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_602(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 603 omitted
-
-# reduce 604 omitted
-
-def _reduce_605(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_606(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_607(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 608 omitted
-
-def _reduce_609(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_610(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_611(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 612 omitted
-
-# reduce 613 omitted
-
-def _reduce_614(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_615(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_616(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_617(val, _values, result)
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-
-    result
-end
-
-def _reduce_618(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 619 omitted
-
-# reduce 620 omitted
-
-# reduce 621 omitted
-
-# reduce 622 omitted
-
-# reduce 623 omitted
-
-# reduce 624 omitted
-
-# reduce 625 omitted
-
-# reduce 626 omitted
-
-# reduce 627 omitted
-
-# reduce 628 omitted
-
-# reduce 629 omitted
-
-# reduce 630 omitted
-
-# reduce 631 omitted
-
-# reduce 632 omitted
-
-# reduce 633 omitted
-
-# reduce 634 omitted
-
-# reduce 635 omitted
-
-# reduce 636 omitted
-
-# reduce 637 omitted
-
-# reduce 638 omitted
-
-# reduce 639 omitted
-
-# reduce 640 omitted
-
-# reduce 641 omitted
-
-# reduce 642 omitted
-
-# reduce 643 omitted
-
-def _reduce_644(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 645 omitted
-
-# reduce 646 omitted
-
-def _reduce_647(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_648(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby25Parser
diff -pruN 3.20.0-2/lib/ruby25_parser.y 3.21.1-1/lib/ruby25_parser.y
--- 3.20.0-2/lib/ruby25_parser.y	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby25_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,2721 +0,0 @@
-# -*- racc -*-
-
-class Ruby25Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-       tLONELY
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      warn "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 12
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_call kRESCUE_MOD stmt
-                    {
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg                                   =tLBRACE_ARG
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 20
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def fname
-                    {
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-                    }
-                    f_arglist bodystmt k_end
-                    {
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fname
-                    {
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                    }
-                    f_arglist bodystmt k_end
-                    {
-
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA
-                    {
-                      result = args(val) << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    bodystmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 37
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 40
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-       f_arglist: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn tEQL arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                    }
-
-     f_block_opt: f_arg_asgn tEQL primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-                | tLONELY # TODO: rename tANDDOT?
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-        rbracket: opt_nl tRBRACK
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby26_parser.rb 3.21.1-1/lib/ruby26_parser.rb
--- 3.20.0-2/lib/ruby26_parser.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby26_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,11253 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby26Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -526,   647,   650,   285,   568,  -109,   285,  -526,  -526,  -526,
-   224,   225,  -526,  -526,  -526,  -103,  -526,  -110,   832,  -105,
-   568,   568,   224,   225,  -526,   234,  -526,  -526,  -526,   224,
-   225,   752,   224,   225,   -95,   753,  -526,  -526,   230,  -526,
-  -526,  -526,  -526,  -526,   863,   280,   575,   568,  -117,  -104,
-  -116,   -81,   831,  -112,  -114,  -109,   133,   134,   135,   136,
-   137,   235,   887,  -102,   646,   649,  -540,  -526,  -526,  -526,
-  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,  -526,
-  -526,   568,  -103,  -526,  -526,  -526,  -105,  -526,  -526,   740,
-   287,  -526,  -111,   287,  -526,  -526,     3,  -526,   126,  -526,
-   235,  -526,   231,  -526,  -526,  -526,  -526,  -526,  -526,  -526,
-  -100,  -526,   235,  -526,   221,  -624,  -104,  -103,   130,   235,
-  -103,  -105,  -101,   129,  -105,  -109,  -526,  -526,  -526,  -526,
-  -102,  -526,  -110,  -526,   130,   130,  -529,  -103,  -526,   129,
-   129,  -105,  -526,  -529,  -529,  -529,  -526,  -117,  -529,  -529,
-  -529,  -104,  -529,  -108,  -104,  -107,  -116,  -112,  -103,  -105,
-  -529,   130,  -529,  -529,  -529,  -102,   129,   886,  -102,  -109,
-  -114,  -104,  -529,  -529,  -109,  -529,  -529,  -529,  -529,  -529,
-  -113,  -115,  -111,   832,    95,  -102,  -113,  -115,   222,   130,
-   285,  -541,    96,   849,   129,   130,   423,  -102,   949,   850,
-   129,   425,   424,  -529,  -529,  -529,  -529,  -529,  -529,  -529,
-  -529,  -529,  -529,  -529,  -529,  -529,  -529,   831,   285,  -529,
-  -529,  -529,   223,  -529,  -529,   108,   109,  -529,   108,   109,
-  -529,  -529,   226,  -529,   477,  -529,   275,  -529,   232,  -529,
-  -529,  -529,  -529,  -529,  -529,  -529,  -110,  -529,   337,  -529,
-  -110,  -110,  -624,  -625,   338,   282,   631,   547,  -624,  -625,
-   631,  -117,  -529,  -529,  -529,  -529,  -117,  -529,   130,  -529,
-  -116,  -112,  -303,   129,  -529,  -116,  -112,   287,  -529,  -303,
-  -303,  -303,  -529,   282,  -114,  -303,  -303,   616,  -303,  -114,
-   235,  -104,  -106,  -117,  -113,  -115,  -111,  -117,   619,  -113,
-  -115,  -111,   823,   110,   111,   287,   110,   111,  -303,  -303,
-   370,  -303,  -303,  -303,  -303,  -303,  -116,   633,   632,   629,
-   230,   633,   632,   824,   616,   395,   631,   229,   130,   130,
-   794,   627,   626,   129,   129,   619,   227,   702,   398,  -303,
-  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,
-  -303,  -303,  -303,   130,   668,  -303,  -303,  -303,   129,   674,
-   669,  -112,   401,  -303,   920,   620,  -303,   631,   627,   626,
-   404,  -303,  -621,  -303,   421,  -303,  -303,  -303,  -303,  -303,
-  -303,  -303,  -114,  -303,   231,  -303,   426,   633,   632,   611,
-  -346,   608,   607,   606,   616,   609,   796,  -346,  -303,  -303,
-   476,  -106,   620,  -303,   230,   619,  -346,   810,  -628,   631,
-  -303,   474,   636,  -112,  -303,  -628,  -628,  -628,  -115,  -114,
-   475,  -628,  -628,  -111,  -628,  -526,   478,   614,   633,   632,
-   629,   232,  -526,  -628,   479,   631,  -538,  -621,   627,   626,
-   234,  -526,   631,  -538,  -628,  -628,  -539,  -628,  -628,  -628,
-  -628,  -628,  -538,  -539,  -346,   508,  -526,   517,   230,  -621,
-  -529,   520,  -539,  -526,  -540,   540,  -111,  -529,   231,   522,
-   633,   632,   620,  -108,   538,  -628,  -628,  -628,  -628,  -628,
-  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -526,
-  -117,  -628,  -628,  -628,  -536,   675,   633,   632,   634,  -628,
-  -538,  -536,  -628,   633,   632,   639,  -100,  -628,  -622,  -628,
-  -539,  -628,  -628,  -628,  -628,  -628,  -628,  -628,   -80,  -628,
-  -628,  -628,   231,  -109,   235,   611,  -294,   608,   607,   606,
-   616,   609,   533,  -294,  -628,  -628,   534,  -104,  -535,  -628,
-  -537,   619,  -294,   631,  -628,  -535,  -628,  -537,  -534,   541,
-  -628,  -628,  -628,  -628,  -113,  -534,  -628,  -628,  -628,  -531,
-  -628,  -529,   729,   614,   292,   728,  -531,  -541,  -529,  -628,
-  -628,  -628,  -628,  -622,   627,   626,   729,  -529,   235,   731,
-  -628,  -628,   230,  -628,  -628,  -628,  -628,  -628,   130,   550,
-  -294,   282,  -532,   129,   230,  -622,  -533,   130,   475,  -532,
-   547,   579,   129,  -533,   633,   632,   644,   544,   620,  -101,
-   577,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,
-  -628,  -628,  -628,  -628,  -628,  -529,  -110,  -628,  -628,  -628,
-   593,   825,  -628,   729,   548,  -628,   731,   594,  -628,  -628,
-   631,  -628,  -107,  -628,  -628,  -628,   231,  -628,  -628,  -628,
-  -628,  -628,  -628,  -628,   255,  -628,  -628,  -628,   231,  -116,
-   729,   235,   611,   731,   608,   607,   606,   616,   609,   230,
-  -628,  -628,  -628,  -628,   575,  -628,   661,  -628,   619,   414,
-  -303,   580,  -628,   581,   668,   659,  -628,  -303,  -303,  -303,
-  -113,   638,  -303,  -303,  -303,   642,  -303,  -628,  -304,   645,
-   614,   633,   632,   651,  -628,  -304,  -303,  -303,  -303,  -624,
-   648,   627,   626,  -628,  -304,   655,  -303,  -303,   230,  -303,
-  -303,  -303,  -303,  -303,   235,   755,  -103,  1051,  -303,  -276,
-  -304,  -628,   657,   231,   757,  -303,   669,  -304,   810,   658,
-  -625,   224,   225,  -112,  -303,   620,  -304,  -303,  -303,  -303,
-  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,
-  -303,  -628,  -304,  -303,  -303,  -303,   662,   826,  -303,   859,
-   863,  -303,   224,   225,  -303,  -303,   235,  -303,  -105,  -303,
-  -102,  -303,   231,  -303,  -303,  -303,  -303,  -303,  -303,  -303,
-   666,  -303,  -303,  -303,  -304,  -114,   611,  -111,   608,   607,
-   606,   616,   609,  -303,   667,   255,  -303,  -303,  -303,  -303,
-  -303,  -303,   619,  -303,   282,  -625,  -303,   679,  -303,  -303,
-   627,   626,  -303,  -303,  -303,  -303,  -115,   255,   255,  -303,
-  -303,   255,  -303,   230,   614,   597,   255,   252,   859,   863,
-  1035,   254,   253,   624,   623,   627,   626,   230,   255,   757,
-   686,   235,  -303,  -303,  1041,  -303,  -303,  -303,  -303,  -303,
-   252,   235,   230,  1039,   254,   253,   421,  -303,   235,  1035,
-   -95,   611,   706,   608,   607,   606,   235,   609,   757,   620,
-   553,   717,   722,  -303,  -303,  -303,  -303,  -303,  -303,  -303,
-  -303,  -303,  -303,  -303,  -303,  -303,  -303,   231,   725,  -303,
-  -303,  -303,   611,   674,   608,   607,   606,  -303,   609,   782,
-  -303,   231,   235,   732,   733,  -303,   522,  -303,   786,  -303,
-  -303,  -303,  -303,  -303,  -303,  -303,   231,  -303,   736,  -303,
-   725,   725,   611,   575,   608,   607,   606,   616,   609,   725,
-   782,   759,  -303,  -303,   764,  -303,   770,  -303,   619,   786,
-   272,   273,  -628,   773,  -303,   774,   776,   778,  -303,  -628,
-  -628,  -628,  -115,   780,   789,  -628,  -628,   255,  -628,   611,
-   614,   608,   607,   606,   790,   609,   791,  -628,   797,   624,
-   623,   627,   626,   265,   266,   271,   270,   798,  -628,  -628,
-  -277,  -628,  -628,  -628,  -628,  -628,   811,   508,   508,   252,
-   235,   258,   828,   254,   253,   250,   251,   782,   275,   256,
-   837,   257,   839,   520,   522,   620,   786,   717,   235,  -628,
-  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,  -628,
-  -628,  -628,  -628,   282,   282,  -628,  -628,  -628,   611,   675,
-   608,   607,   606,  -628,   609,   717,  -628,   255,   863,   725,
-   235,  -628,   235,  -628,   904,  -628,  -628,  -628,  -628,  -628,
-  -628,  -628,   905,  -628,  -628,  -628,   235,   914,  -278,   611,
-   235,   608,   607,   606,   616,   609,   782,   919,  -628,  -628,
-   936,  -628,   717,  -628,  -276,   619,   941,   725,  -439,   725,
-  -628,   725,   235,   725,  -628,  -439,  -439,  -439,  -113,   725,
-  -439,  -439,  -439,   235,  -439,   255,   611,   614,   608,   607,
-   606,   963,   609,  -439,  -439,  -439,   624,   623,   627,   626,
-   235,   265,   266,   773,  -439,  -439,   966,  -439,  -439,  -439,
-  -439,  -439,   611,   968,   608,   607,   606,   252,   609,   258,
-   970,   254,   253,   250,   251,   972,   972,   256,   235,   257,
-   979,  -279,   620,   980,   773,  -439,  -439,  -439,  -439,  -439,
-  -439,  -439,  -439,  -439,  -439,  -439,  -439,  -439,  -439,   983,
-   782,  -439,  -439,  -439,   986,   988,  -439,   990,   282,  -439,
-   235,   992,  -439,  -439,   725,  -439,   764,  -439,  1012,  -439,
-  1013,  -439,  -439,  -439,  -439,  -439,  -439,  -439,  1022,  -439,
-  -439,  -439,   611,  1023,   608,   607,   606,   616,   609,   133,
-   134,   135,   136,   137,  -439,  -439,  1033,  -439,   619,  -439,
-  -312,   133,   134,   135,   136,   137,  -439,  -312,  -312,  -312,
-  -439,  1036,  -312,  -312,  -312,   849,  -312,   255,   909,   910,
-   614,  1042,   911,   124,   125,   255,  -312,  -312,  1052,   624,
-   623,   627,   626,   265,   266,   972,  -312,  -312,   972,  -312,
-  -312,  -312,  -312,  -312,   611,   972,   608,   607,   606,   252,
-   609,   258,   773,   254,   253,   250,   251,   252,  1059,  1061,
-  1063,   254,   253,   250,   251,   620,  1065,  -312,  -312,  -312,
-  -312,  -312,  -312,  -312,  -312,  -312,  -312,  -312,  -312,  -312,
-  -312,  1065,   782,  -312,  -312,  -312,   722,   725,  -312,   725,
-   292,  -312,  1023,  -625,  -312,  -312,  -624,  -312,   235,  -312,
-   972,  -312,  1087,  -312,  -312,  -312,  -312,  -312,  -312,  -312,
-  1065,  -312,  1065,  -312,   611,  1065,   608,   607,   606,   616,
-   609,   133,   134,   135,   136,   137,  -312,  -312,  1065,  -312,
-   619,  -312,  -295,   nil,   nil,   nil,   nil,   nil,  -312,  -295,
-  -295,  -295,  -312,   nil,  -295,  -295,  -295,   nil,  -295,   255,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,   255,  -295,  -295,
-  -295,   624,   623,   627,   626,   265,   266,   nil,  -295,  -295,
-   nil,  -295,  -295,  -295,  -295,  -295,  1016,   nil,   608,   607,
-   606,   252,   609,   258,   nil,   254,   253,   250,   251,   252,
-   nil,   nil,   nil,   254,   253,   250,   251,   620,   nil,  -295,
-  -295,  -295,  -295,  -295,  -295,  -295,  -295,  -295,  -295,  -295,
-  -295,  -295,  -295,   nil,   nil,  -295,  -295,  -295,   nil,   nil,
-  -295,   nil,   nil,  -295,   nil,   nil,  -295,  -295,   nil,  -295,
-   nil,  -295,   nil,  -295,   nil,  -295,  -295,  -295,  -295,  -295,
-  -295,  -295,   nil,  -295,   nil,  -295,   611,   nil,   608,   607,
-   606,   616,   609,   nil,   nil,   nil,   nil,   nil,  -295,  -295,
-  -295,  -295,   619,  -295,  -650,  -295,   nil,   nil,   nil,   nil,
-  -295,  -650,  -650,  -650,  -295,   nil,  -650,  -650,  -650,   nil,
-  -650,   255,   nil,   nil,   614,   nil,   nil,   nil,   nil,  -650,
-  -650,  -650,   nil,   624,   623,   627,   626,   265,   266,   nil,
-  -650,  -650,   nil,  -650,  -650,  -650,  -650,  -650,  1016,   nil,
-   608,   607,   606,   252,   609,   nil,   nil,   254,   253,   250,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,
-   nil,  -650,  -650,  -650,  -650,  -650,  -650,  -650,  -650,  -650,
-  -650,  -650,  -650,  -650,  -650,   nil,   nil,  -650,  -650,  -650,
-   nil,   nil,  -650,   nil,   282,  -650,   nil,   nil,  -650,  -650,
-   nil,  -650,   nil,  -650,   nil,  -650,   nil,  -650,  -650,  -650,
-  -650,  -650,  -650,  -650,   nil,  -650,  -650,  -650,   611,   nil,
-   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,   nil,
-  -650,  -650,   nil,  -650,   619,  -650,  -629,   nil,   nil,   nil,
-   nil,   nil,  -650,  -629,  -629,  -629,  -650,   nil,  -629,  -629,
-  -629,   nil,  -629,   nil,   nil,   nil,   614,   nil,   nil,   nil,
-   nil,  -629,  -629,  -629,  -629,   624,   623,   627,   626,   nil,
-   nil,   nil,  -629,  -629,   nil,  -629,  -629,  -629,  -629,  -629,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   235,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   620,   nil,  -629,  -629,  -629,  -629,  -629,  -629,  -629,
-  -629,  -629,  -629,  -629,  -629,  -629,  -629,   nil,   nil,  -629,
-  -629,  -629,   nil,   nil,  -629,   nil,   nil,  -629,   nil,   nil,
-  -629,  -629,   nil,  -629,   nil,  -629,   nil,  -629,   nil,  -629,
-  -629,  -629,  -629,  -629,  -629,  -629,   nil,  -629,  -629,  -629,
-   611,   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,
-   nil,   nil,  -629,  -629,  -629,  -629,   619,  -629,  -630,  -629,
-   nil,   nil,   nil,   nil,  -629,  -630,  -630,  -630,  -629,   nil,
-  -630,  -630,  -630,   nil,  -630,   nil,   nil,   nil,   614,   nil,
-   nil,   nil,   nil,  -630,  -630,  -630,  -630,   624,   623,   627,
-   626,   nil,   nil,   nil,  -630,  -630,   nil,  -630,  -630,  -630,
-  -630,  -630,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   620,   nil,  -630,  -630,  -630,  -630,  -630,
-  -630,  -630,  -630,  -630,  -630,  -630,  -630,  -630,  -630,   nil,
-   nil,  -630,  -630,  -630,   nil,   nil,  -630,   nil,   nil,  -630,
-   nil,   nil,  -630,  -630,   nil,  -630,   nil,  -630,   nil,  -630,
-   nil,  -630,  -630,  -630,  -630,  -630,  -630,  -630,   nil,  -630,
-  -630,  -630,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -630,  -630,  -630,  -630,   nil,  -630,
-  -650,  -630,   nil,   nil,   nil,   nil,  -630,  -650,  -650,  -650,
-  -630,   nil,  -650,  -650,  -650,   nil,  -650,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  -650,  -650,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  -650,  -650,   nil,  -650,
-  -650,  -650,  -650,  -650,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   506,   458,   nil,   nil,   507,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,  -650,   nil,
-   nil,   175,   176,   161,   162,  -650,   nil,   nil,   nil,   nil,
-   282,  -650,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,  -650,  -650,   177,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  -650,   nil,   nil,   nil,
-   nil,  -650,   nil,   nil,   170,   nil,   nil,   nil,  -650,   nil,
-   nil,   nil,  -650,     8,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   663,    11,    49,    10,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
-   nil,  -251,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   663,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,   315,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,   315,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   235,   269,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,   315,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,  -651,  -651,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
-   nil,  -651,  -651,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-  -651,  -651,  -651,  -651,   272,   273,   nil,   nil,  -651,  -651,
-   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,     8,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-  -651,  -651,  -651,  -651,   272,   273,   nil,   nil,  -651,  -651,
-   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-  -651,  -651,  -651,  -651,   272,   273,   nil,   nil,  -651,  -651,
-   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-  -651,  -651,  -651,  -651,   272,   273,   nil,   nil,  -651,  -651,
-   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-  -651,  -651,  -651,  -651,   272,   273,   nil,   nil,  -651,  -651,
-   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-  -651,  -651,  -651,  -651,   272,   273,   nil,   nil,  -651,  -651,
-   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   nil,   nil,   263,   264,
-   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
-   259,   260,   261,   262,   272,   273,   267,   nil,   263,   264,
-   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
-   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,    12,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
-    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   304,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   305,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   304,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   301,   nil,   299,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   305,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,   nil,
-   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   324,   nil,   619,   320,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   319,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   627,   626,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   620,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,   nil,   608,
-   607,   606,   616,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   619,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   627,   626,   nil,    96,
-   106,   nil,   nil,   nil,   336,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   620,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,    12,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,    11,    49,   nil,    13,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
-    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   130,   nil,   nil,   nil,   nil,   129,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   611,
-   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   364,   nil,   619,    36,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   627,   626,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   620,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    49,    10,    13,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   414,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,    12,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,    11,    49,   nil,    13,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
-    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   431,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   431,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   235,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   304,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   301,   nil,   299,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   305,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   304,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   305,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   235,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,    12,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    49,   nil,    13,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,
-   nil,   611,   nil,   608,   607,   606,   616,   609,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   324,   nil,   619,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   627,   626,   nil,    96,   106,   nil,   nil,   nil,   536,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   620,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,
-   611,   nil,   608,   607,   606,   616,   609,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   324,   nil,   619,   320,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   627,
-   626,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   620,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   553,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
-   122,   121,   123,   582,    60,   114,   113,   583,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
-   nil,   nil,   nil,   nil,   611,   nil,   608,   607,   606,   616,
-   609,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   584,   nil,
-   619,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   614,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   627,   626,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   620,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
-   121,   123,   582,    60,   114,   113,   583,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
-   nil,   nil,   nil,   611,   nil,   608,   607,   606,   616,   609,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   584,   nil,   619,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   614,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   627,   626,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   620,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   699,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   299,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,    12,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   414,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,   nil,
-   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,
-   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   324,   nil,   nil,   320,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
-   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   802,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
-   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    49,   nil,    13,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   304,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   699,   nil,   299,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   305,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   299,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   324,   nil,   nil,   320,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   324,   nil,   nil,   320,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   431,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   699,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   868,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
-    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
-    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
-    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
-   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
-   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
-    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
-   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
-   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
-   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
-   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
-    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
-   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
-   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
-    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
-    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
-   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
-   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
-   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
-    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
-   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
-    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
-   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
-   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
-   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
-   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
-   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
-   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
-   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
-   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
-    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
-   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
-   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
-   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
-   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
-   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
-   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
-   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
-    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
-   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
-    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
-   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,
-    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
-   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   994,   nil,   nil,   246,   nil,   nil,
-    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
-   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
-    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
-    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
-   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
-    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
-   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
-   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
-   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1001,   nil,   nil,   246,   nil,   nil,    62,
-    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
-   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
-   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
-    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
-   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
-   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
-   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
-   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
-   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
-    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
-   nil,   nil,    64,   nil,  1006,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
-   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
-    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
-   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
-   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
-    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
-   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
-   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
-   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
-   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
-   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   994,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
-   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
-    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
-    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
-   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
-   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
-   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
-   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
-    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
-    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
-   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
-   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
-    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
-   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
-   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
-   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
-   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
-    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
-   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
-   102,   nil,   110,   111,   188,   199,   189,   212,   185,   205,
-   195,   194,   215,   216,   210,   193,   192,   187,   213,   217,
-   218,   197,   186,   200,   204,   206,   198,   191,   nil,   nil,
-   nil,   207,   214,   209,   208,   201,   211,   196,   184,   203,
-   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,
-   178,   179,   180,   141,   143,   140,   nil,   142,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,
-   212,   185,   205,   195,   194,   215,   216,   210,   193,   192,
-   187,   213,   217,   218,   197,   186,   200,   204,   206,   198,
-   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,
-   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,
-   190,   181,   182,   178,   179,   180,   141,   143,   nil,   nil,
-   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
-   174,   nil,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
-   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
-   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
-   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
-   379,   378,   380,   377,   184,   203,   202,   nil,   nil,   nil,
-   nil,   nil,   183,   190,   181,   182,   374,   375,   376,   372,
-   143,   114,   113,   373,   nil,   116,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   386,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   188,   199,   189,   212,   185,   205,   195,
-   194,   215,   216,   210,   193,   192,   187,   213,   217,   218,
-   197,   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,
-   207,   214,   209,   208,   201,   211,   196,   184,   203,   202,
-   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,
-   179,   180,   141,   143,   411,   410,   142,   nil,   412,   nil,
-   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,
-   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
-   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
-   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
-   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,
-   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
-   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
-   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,   196,
-   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
-   181,   182,   178,   179,   180,   141,   143,   nil,   nil,   142,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   105,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
-   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
-   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
-   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
-   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
-   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
-   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
-   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
-   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
-   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
-   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   188,   199,   189,   212,   185,   205,   195,   194,
-   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
-   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
-   214,   209,   208,   201,   211,   196,   184,   203,   202,   nil,
-   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,
-   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   454,
-   458,   nil,   nil,   455,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   461,   465,   nil,
-   nil,   460,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   680,   458,   nil,   nil,   681,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   682,   465,   nil,   nil,   683,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   710,   458,   nil,   nil,   711,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   713,
-   465,   nil,   nil,   714,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   680,   458,   nil,
-   nil,   681,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   682,   465,   nil,   nil,   683,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   747,   458,   nil,   nil,   748,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
-   nil,   749,   465,   nil,   nil,   750,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
-   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
-   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
-   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
-   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   804,
-   458,   nil,   nil,   805,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
-   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
-   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
-   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
-   nil,   nil,   177,   nil,   nil,   nil,   nil,   807,   465,   nil,
-   nil,   806,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
-   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
-   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
-   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
-   177,   nil,   nil,   nil,   nil,   872,   465,   nil,   nil,   873,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
-   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
-   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
-   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
-   nil,   nil,   nil,   506,   458,   nil,   nil,   507,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
-   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
-   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
-   156,   148,   171,   149,   nil,   611,   177,   608,   607,   606,
-   616,   609,   611,   nil,   608,   607,   606,   616,   609,   nil,
-   nil,   619,   nil,   nil,   nil,   nil,   170,   nil,   619,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   614,   nil,   nil,   nil,   nil,   nil,   nil,
-   614,   nil,   624,   623,   627,   626,   nil,   nil,   nil,   624,
-   623,   627,   626,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1069,   465,   nil,   nil,  1068,   nil,   nil,   nil,   620,   nil,
-   nil,   nil,   nil,   173,   174,   620,   169,   151,   152,   153,
-   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
-   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
-   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
-   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,  1072,   458,
-   nil,   nil,  1073,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   173,   174,   170,   169,   151,   152,   153,   160,   157,
-   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
-   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
-   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
-   nil,   177,   nil,   nil,   nil,   nil,  1074,   465,   nil,   nil,
-  1075,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
-   174,   170,   169,   151,   152,   153,   160,   157,   159,   nil,
-   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
-   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
-   163,   164,   158,   156,   148,   171,   149,   nil,   611,   177,
-   608,   607,   606,   616,   609,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   619,   nil,   nil,   nil,   nil,   170,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   614,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   624,   623,   627,   626,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   620 ]
-
-racc_action_check = [
-   112,   402,   405,    65,   353,   361,   689,   112,   112,   112,
-   470,   470,   112,   112,   112,   710,   112,   362,   687,   711,
-   354,   940,   720,   720,   112,    22,   112,   112,   112,   767,
-   767,   584,    17,    17,   705,   584,   112,   112,    27,   112,
-   112,   112,   112,   112,  1007,    27,  1007,   945,   365,   713,
-   580,   705,   687,   747,   748,   998,     9,     9,     9,     9,
-     9,    22,   768,   844,   402,   405,   238,   112,   112,   112,
-   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
-   112,   869,   710,   112,   112,   112,   711,   112,   112,   570,
-    65,   112,   870,   689,   112,   112,     1,   112,     3,   112,
-   470,   112,    27,   112,   112,   112,   112,   112,   112,   112,
-   361,   112,   720,   112,    13,   713,   713,   710,   353,   767,
-   710,   711,   362,   353,   711,   238,   112,   112,   112,   112,
-   844,   112,   999,   112,   354,   940,   115,   710,   112,   354,
-   940,   711,   112,   115,   115,   115,   112,  1002,   115,   115,
-   115,   713,   115,   365,   713,   580,  1042,  1072,   747,   748,
-   115,   945,   115,   115,   115,   844,   945,   768,   844,   998,
-  1073,   713,   115,   115,   998,   115,   115,   115,   115,   115,
-  1074,  1075,  1085,   838,    92,   844,   749,   750,    15,   570,
-    29,   239,    92,   721,   570,   869,   140,   870,   869,   721,
-   869,   140,   140,   115,   115,   115,   115,   115,   115,   115,
-   115,   115,   115,   115,   115,   115,   115,   838,   329,   115,
-   115,   115,    16,   115,   115,    44,    44,   115,   334,   334,
-   115,   115,    18,   115,   241,   115,    25,   115,   438,   115,
-   115,   115,   115,   115,   115,   115,   999,   115,    40,   115,
-   239,   999,   749,   750,    43,    29,   524,   476,  1074,  1075,
-   640,  1002,   115,   115,   115,   115,  1002,   115,     5,   115,
-  1042,  1072,   460,     5,   115,  1042,  1072,    29,   115,   460,
-   460,   460,   115,   329,  1073,   460,   460,   770,   460,  1073,
-    49,   749,   750,   241,  1074,  1075,  1085,   438,   770,  1074,
-  1075,  1085,   680,    44,    44,   329,   334,   334,   460,   460,
-    73,   460,   460,   460,   460,   460,   476,   524,   524,   524,
-    19,   640,   640,   681,   980,    99,   643,    19,   308,   358,
-   640,   770,   770,   308,   358,   980,    19,   524,   100,   460,
-   460,   460,   460,   460,   460,   460,   460,   460,   460,   460,
-   460,   460,   460,   878,   804,   460,   460,   460,   878,   460,
-   805,   680,   101,   460,   827,   770,   460,   389,   980,   980,
-   102,   460,   582,   460,   138,   460,   460,   460,   460,   460,
-   460,   460,   681,   460,    19,   460,   219,   643,   643,   778,
-    50,   778,   778,   778,   778,   778,   643,    50,   460,   460,
-   240,   460,   980,   460,   237,   778,    50,   916,   461,   393,
-   460,   237,   393,   804,   460,   461,   461,   461,   460,   805,
-   237,   461,   461,   827,   461,   582,   242,   778,   389,   389,
-   389,    20,   582,   461,   243,   391,   321,   582,   778,   778,
-   247,   582,   396,   321,   461,   461,   322,   461,   461,   461,
-   461,   461,   321,   322,    50,   281,   372,   296,   323,   582,
-   373,   297,   322,   372,    41,   323,   916,   373,   237,   300,
-   393,   393,   778,    20,   323,   461,   461,   461,   461,   461,
-   461,   461,   461,   461,   461,   461,   461,   461,   461,   582,
-    20,   461,   461,   461,   374,   461,   391,   391,   391,   461,
-   321,   374,   461,   396,   396,   396,    41,   461,   583,   461,
-   322,   461,   461,   461,   461,   461,   461,   461,   314,   461,
-   461,   461,   323,    41,   316,   968,   325,   968,   968,   968,
-   968,   968,   317,   325,   461,   461,   318,   461,   375,   461,
-   376,   968,   325,   399,   682,   375,   461,   376,   377,   324,
-   461,   682,   682,   682,   461,   377,   682,   682,   682,   378,
-   682,   583,   559,   968,   327,   559,   378,    42,   583,   682,
-   682,   682,   682,   583,   968,   968,   560,   583,   328,   560,
-   682,   682,   340,   682,   682,   682,   682,   682,   882,   340,
-   325,   333,   379,   882,   363,   583,   380,   954,   340,   379,
-   338,   363,   954,   380,   399,   399,   399,   335,   968,    42,
-   363,   682,   682,   682,   682,   682,   682,   682,   682,   682,
-   682,   682,   682,   682,   682,   583,    42,   682,   682,   682,
-   382,   682,   682,   564,   339,   682,   564,   382,   682,   682,
-   407,   682,   338,   682,   872,   682,   340,   682,   682,   682,
-   682,   682,   682,   682,   342,   682,   682,   682,   363,   338,
-   857,   348,   970,   857,   970,   970,   970,   970,   970,   437,
-   682,   682,   682,   682,   359,   682,   437,   682,   970,   360,
-   683,   364,   682,   366,   454,   437,   682,   683,   683,   683,
-   682,   395,   683,   683,   683,   398,   683,   872,   541,   401,
-   970,   407,   407,   407,   872,   541,   683,   683,   683,   872,
-   404,   970,   970,   872,   541,   427,   683,   683,   586,   683,
-   683,   683,   683,   683,  1014,   586,   454,  1014,   714,   430,
-   753,   872,   432,   437,   586,   714,   455,   753,   664,   435,
-   714,   352,   352,   454,   714,   970,   753,   683,   683,   683,
-   683,   683,   683,   683,   683,   683,   683,   683,   683,   683,
-   683,   872,   541,   683,   683,   683,   439,   683,   683,   735,
-   735,   683,   761,   761,   683,   683,   449,   683,   455,   683,
-   664,   683,   586,   683,   683,   683,   683,   683,   683,   683,
-   452,   683,   714,   683,   753,   455,   387,   664,   387,   387,
-   387,   387,   387,   873,   453,   482,   683,   683,   683,   683,
-   873,   683,   387,   683,   462,   873,   806,   472,   683,   873,
-   773,   773,   683,   806,   806,   806,   683,   484,   483,   806,
-   806,   485,   806,   993,   387,   387,   486,   482,  1043,  1043,
-   993,   482,   482,   387,   387,   387,   387,  1000,   487,   993,
-   503,   510,   806,   806,  1000,   806,   806,   806,   806,   806,
-   483,   514,  1034,  1000,   483,   483,   530,   873,   531,  1034,
-   532,   614,   535,   614,   614,   614,   537,   614,  1034,   387,
-   542,   545,   554,   806,   806,   806,   806,   806,   806,   806,
-   806,   806,   806,   806,   806,   806,   806,   993,   555,   806,
-   806,   806,   782,   806,   782,   782,   782,   806,   782,   614,
-   806,  1000,   556,   561,   562,   806,   565,   806,   614,   806,
-   806,   806,   806,   806,   806,   806,  1034,   806,   567,   806,
-   571,   572,   597,   573,   597,   597,   597,   597,   597,   574,
-   782,   588,   806,   806,   591,   806,   599,   806,   597,   782,
-    47,    47,   807,   600,   806,   602,   603,   604,   806,   807,
-   807,   807,   806,   613,   621,   807,   807,   502,   807,   904,
-   597,   904,   904,   904,   625,   904,   628,   807,   647,   597,
-   597,   597,   597,   502,   502,    47,    47,   650,   807,   807,
-   656,   807,   807,   807,   807,   807,   665,   670,   676,   502,
-   684,   502,   685,   502,   502,   502,   502,   904,   688,   502,
-   692,   502,   694,   696,   698,   597,   904,   707,   709,   807,
-   807,   807,   807,   807,   807,   807,   807,   807,   807,   807,
-   807,   807,   807,   712,   715,   807,   807,   807,   905,   807,
-   905,   905,   905,   807,   905,   716,   807,   719,   737,   743,
-   746,   807,   769,   807,   784,   807,   807,   807,   807,   807,
-   807,   807,   785,   807,   807,   807,   787,   799,   801,   764,
-   803,   764,   764,   764,   764,   764,   905,   812,   807,   807,
-   836,   807,   843,   807,   853,   764,   854,   858,    30,   864,
-   807,   871,   875,   879,   807,    30,    30,    30,   807,   880,
-    30,    30,    30,   881,    30,   551,   786,   764,   786,   786,
-   786,   888,   786,    30,    30,    30,   764,   764,   764,   764,
-   889,   551,   551,   890,    30,    30,   894,    30,    30,    30,
-    30,    30,  1022,   895,  1022,  1022,  1022,   551,  1022,   551,
-   897,   551,   551,   551,   551,   898,   900,   551,   903,   551,
-   913,   915,   764,   922,   923,    30,    30,    30,    30,    30,
-    30,    30,    30,    30,    30,    30,    30,    30,    30,   925,
-  1022,    30,    30,    30,   926,   927,    30,   929,    30,    30,
-   930,   931,    30,    30,   953,    30,   960,    30,   961,    30,
-   962,    30,    30,    30,    30,    30,    30,    30,   977,    30,
-    30,    30,   765,   978,   765,   765,   765,   765,   765,   312,
-   312,   312,   312,   312,    30,    30,   991,    30,   765,    30,
-    31,   347,   347,   347,   347,   347,    30,    31,    31,    31,
-    30,   994,    31,    31,    31,   996,    31,   488,   792,   792,
-   765,  1001,   792,   792,   792,   497,    31,    31,  1018,   765,
-   765,   765,   765,   488,   488,  1019,    31,    31,  1020,    31,
-    31,    31,    31,    31,  1023,  1021,  1023,  1023,  1023,   488,
-  1023,   488,  1024,   488,   488,   488,   488,   497,  1027,  1028,
-  1029,   497,   497,   497,   497,   765,  1030,    31,    31,    31,
-    31,    31,    31,    31,    31,    31,    31,    31,    31,    31,
-    31,  1032,  1023,    31,    31,    31,  1038,  1048,    31,  1049,
-    31,    31,  1057,  1068,    31,    31,  1069,    31,  1071,    31,
-  1080,    31,  1081,    31,    31,    31,    31,    31,    31,    31,
-  1082,    31,  1083,    31,   774,  1084,   774,   774,   774,   774,
-   774,   529,   529,   529,   529,   529,    31,    31,  1092,    31,
-   774,    31,    60,   nil,   nil,   nil,   nil,   nil,    31,    60,
-    60,    60,    31,   nil,    60,    60,    60,   nil,    60,   489,
-   nil,   nil,   774,   nil,   nil,   nil,   nil,   498,    60,    60,
-    60,   774,   774,   774,   774,   489,   489,   nil,    60,    60,
-   nil,    60,    60,    60,    60,    60,   963,   nil,   963,   963,
-   963,   489,   963,   489,   nil,   489,   489,   489,   489,   498,
-   nil,   nil,   nil,   498,   498,   498,   498,   774,   nil,    60,
-    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,
-    60,    60,    60,   nil,   nil,    60,    60,    60,   nil,   nil,
-    60,   nil,   nil,    60,   nil,   nil,    60,    60,   nil,    60,
-   nil,    60,   nil,    60,   nil,    60,    60,    60,    60,    60,
-    60,    60,   nil,    60,   nil,    60,   776,   nil,   776,   776,
-   776,   776,   776,   nil,   nil,   nil,   nil,   nil,    60,    60,
-    60,    60,   776,    60,   456,    60,   nil,   nil,   nil,   nil,
-    60,   456,   456,   456,    60,   nil,   456,   456,   456,   nil,
-   456,   490,   nil,   nil,   776,   nil,   nil,   nil,   nil,   456,
-   456,   456,   nil,   776,   776,   776,   776,   490,   490,   nil,
-   456,   456,   nil,   456,   456,   456,   456,   456,  1051,   nil,
-  1051,  1051,  1051,   490,  1051,   nil,   nil,   490,   490,   490,
-   490,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   776,
-   nil,   456,   456,   456,   456,   456,   456,   456,   456,   456,
-   456,   456,   456,   456,   456,   nil,   nil,   456,   456,   456,
-   nil,   nil,   456,   nil,   456,   456,   nil,   nil,   456,   456,
-   nil,   456,   nil,   456,   nil,   456,   nil,   456,   456,   456,
-   456,   456,   456,   456,   nil,   456,   456,   456,   831,   nil,
-   831,   831,   831,   831,   831,   nil,   nil,   nil,   nil,   nil,
-   456,   456,   nil,   456,   831,   456,   465,   nil,   nil,   nil,
-   nil,   nil,   456,   465,   465,   465,   456,   nil,   465,   465,
-   465,   nil,   465,   nil,   nil,   nil,   831,   nil,   nil,   nil,
-   nil,   465,   465,   465,   465,   831,   831,   831,   831,   nil,
-   nil,   nil,   465,   465,   nil,   465,   465,   465,   465,   465,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   831,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   831,   nil,   465,   465,   465,   465,   465,   465,   465,
-   465,   465,   465,   465,   465,   465,   465,   nil,   nil,   465,
-   465,   465,   nil,   nil,   465,   nil,   nil,   465,   nil,   nil,
-   465,   465,   nil,   465,   nil,   465,   nil,   465,   nil,   465,
-   465,   465,   465,   465,   465,   465,   nil,   465,   465,   465,
-   966,   nil,   966,   966,   966,   966,   966,   nil,   nil,   nil,
-   nil,   nil,   465,   465,   465,   465,   966,   465,   466,   465,
-   nil,   nil,   nil,   nil,   465,   466,   466,   466,   465,   nil,
-   466,   466,   466,   nil,   466,   nil,   nil,   nil,   966,   nil,
-   nil,   nil,   nil,   466,   466,   466,   466,   966,   966,   966,
-   966,   nil,   nil,   nil,   466,   466,   nil,   466,   466,   466,
-   466,   466,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   966,   nil,   466,   466,   466,   466,   466,
-   466,   466,   466,   466,   466,   466,   466,   466,   466,   nil,
-   nil,   466,   466,   466,   nil,   nil,   466,   nil,   nil,   466,
-   nil,   nil,   466,   466,   nil,   466,   nil,   466,   nil,   466,
-   nil,   466,   466,   466,   466,   466,   466,   466,   nil,   466,
-   466,   466,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   466,   466,   466,   466,   nil,   466,
-   505,   466,   nil,   nil,   nil,   nil,   466,   505,   505,   505,
-   466,   nil,   505,   505,   505,   nil,   505,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   505,   505,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   505,   505,   nil,   505,
-   505,   505,   505,   505,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   278,   278,   nil,   nil,   278,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   278,   278,   nil,   278,   278,   278,
-   278,   278,   278,   278,   nil,   nil,   278,   278,   505,   nil,
-   nil,   278,   278,   278,   278,   505,   nil,   nil,   nil,   nil,
-   505,   505,   nil,   nil,   nil,   nil,   nil,   nil,   278,   278,
-   nil,   278,   278,   278,   278,   278,   278,   278,   278,   278,
-   278,   278,   505,   505,   278,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   505,   nil,   nil,   nil,
-   nil,   505,   nil,   nil,   278,   nil,   nil,   nil,   505,   nil,
-   nil,   nil,   505,     2,     2,     2,     2,     2,     2,   nil,
-   nil,   nil,     2,     2,   nil,   nil,   nil,     2,   nil,     2,
-     2,     2,     2,     2,     2,     2,   nil,   nil,   nil,   nil,
-   nil,     2,     2,     2,     2,     2,     2,     2,   nil,   nil,
-     2,   nil,   nil,   nil,   nil,   442,     2,     2,     2,     2,
-     2,     2,     2,     2,     2,     2,     2,     2,   nil,     2,
-     2,     2,   nil,     2,     2,   nil,     2,     2,     2,   442,
-   442,   442,   442,   442,   442,   442,   442,   442,   442,   442,
-   nil,   442,   442,   nil,   nil,   442,   442,   nil,     2,   nil,
-   nil,     2,   nil,   nil,     2,     2,   nil,   nil,     2,   nil,
-     2,   442,   nil,   442,     2,   442,   442,   442,   442,   442,
-   442,   442,     2,   442,   nil,   nil,   nil,     2,     2,     2,
-     2,     2,     2,   nil,   nil,   nil,     2,     2,   nil,   442,
-   nil,   442,   nil,   nil,     2,   nil,   nil,     2,     2,     2,
-   nil,     2,     2,    36,    36,    36,    36,    36,    36,   nil,
-   nil,   nil,    36,    36,   nil,   nil,   nil,    36,   nil,    36,
-    36,    36,    36,    36,    36,    36,   nil,   nil,   nil,   nil,
-   nil,    36,    36,    36,    36,    36,    36,    36,   nil,   nil,
-    36,   nil,   nil,   nil,   nil,   448,    36,    36,    36,    36,
-    36,    36,    36,    36,    36,    36,    36,    36,   nil,    36,
-    36,    36,   nil,    36,    36,   nil,    36,    36,    36,   448,
-   448,   448,   448,   448,   448,   448,   448,   448,   448,   448,
-   nil,   448,   448,   nil,   nil,   448,   448,   nil,    36,   nil,
-   nil,    36,   nil,   nil,    36,    36,   nil,   nil,    36,   nil,
-    36,   448,   nil,   448,    36,   448,   448,   448,   448,   448,
-   448,   448,    36,   448,   nil,   nil,   nil,    36,    36,    36,
-    36,    36,    36,   nil,   nil,   nil,    36,    36,   nil,   448,
-   nil,   nil,   nil,   nil,    36,   nil,   nil,    36,    36,    36,
-   nil,    36,    36,   221,   221,   221,   221,   221,   221,   nil,
-   nil,   nil,   221,   221,   nil,   nil,   nil,   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,   221,   221,   221,   221,
-   221,   221,   221,   221,   221,   221,   221,   221,   nil,   221,
-   221,   221,   nil,   221,   221,   nil,   221,   221,   221,    24,
-    24,    24,    24,    24,    24,    24,    24,    24,    24,    24,
-   nil,    24,    24,   nil,   nil,    24,    24,   nil,   221,   nil,
-   nil,   221,   nil,   nil,   221,   221,   nil,   nil,   221,   nil,
-   221,    24,   nil,    24,   221,    24,    24,    24,    24,    24,
-    24,    24,   221,    24,   nil,   nil,   nil,   221,   221,   221,
-   221,   221,   221,   nil,   nil,   nil,   221,   221,   nil,    24,
-   nil,   nil,   nil,   nil,   221,   nil,   nil,   221,   221,   221,
-   nil,   221,   221,   246,   246,   246,   246,   246,   246,   nil,
-   nil,   nil,   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,   246,   246,   246,   246,
-   246,   246,   246,   246,   246,   246,   246,   246,   nil,   246,
-   246,   246,   nil,   246,   246,   nil,   246,   246,   246,   294,
-   294,   294,   294,   294,   294,   294,   294,   294,   294,   294,
-   nil,   294,   294,   nil,   nil,   294,   294,   nil,   246,   nil,
-   nil,   246,   nil,   nil,   246,   246,   nil,   nil,   246,   nil,
-   246,   294,   nil,   294,   246,   294,   294,   294,   294,   294,
-   294,   294,   246,   294,   nil,   nil,   nil,   246,   246,   246,
-   246,   246,   246,   nil,   nil,   nil,   246,   246,   nil,   294,
-   nil,   nil,   nil,   nil,   246,   nil,   nil,   246,   246,   246,
-   nil,   246,   246,   315,   315,   315,   315,   315,   315,   nil,
-   nil,   nil,   315,   315,   nil,   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,   315,   315,   315,   315,
-   315,   315,   315,   315,   315,   315,   315,   315,   nil,   315,
-   315,   315,   nil,   315,   315,   nil,   315,   315,   315,   501,
-   501,   501,   501,   501,   501,   501,   501,   501,   501,   501,
-   nil,   501,   501,   nil,   nil,   501,   501,   nil,   315,   nil,
-   nil,   315,   nil,   nil,   315,   315,   nil,   nil,   315,   nil,
-   315,   501,   nil,   501,   315,   501,   501,   501,   501,   501,
-   501,   501,   315,   501,   nil,   nil,   nil,   315,   315,   315,
-   315,   315,   315,   nil,   nil,   nil,   315,   315,   501,   501,
-   nil,   nil,   nil,   nil,   315,   nil,   nil,   315,   315,   315,
-   nil,   315,   315,   320,   320,   320,   320,   320,   320,   nil,
-   nil,   nil,   320,   320,   nil,   nil,   nil,   320,   nil,   320,
-   320,   320,   320,   320,   320,   320,   nil,   nil,   nil,   nil,
-   nil,   320,   320,   320,   320,   320,   320,   320,   nil,   nil,
-   320,   nil,   nil,   nil,   nil,   nil,   320,   320,   320,   320,
-   320,   320,   320,   320,   320,   320,   320,   320,   nil,   320,
-   320,   320,   nil,   320,   320,   nil,   320,   320,   320,   552,
-   552,   552,   552,   552,   552,   552,   552,   552,   552,   552,
-   nil,   552,   552,   nil,   nil,   552,   552,   nil,   320,   nil,
-   nil,   320,   nil,   nil,   320,   320,   nil,   nil,   320,   nil,
-   320,   552,   nil,   552,   320,   552,   552,   552,   552,   552,
-   552,   552,   320,   552,   nil,   nil,   nil,   320,   320,   320,
-   320,   320,   320,   nil,   nil,   nil,   320,   320,   nil,   552,
-   nil,   nil,   nil,   nil,   320,   nil,   nil,   320,   320,   320,
-   nil,   320,   320,   346,   346,   346,   346,   346,   346,   nil,
-   nil,   nil,   346,   346,   nil,   nil,   nil,   346,   nil,   346,
-   346,   346,   346,   346,   346,   346,   nil,   nil,   nil,   nil,
-   nil,   346,   346,   346,   346,   346,   346,   346,   nil,   nil,
-   346,   nil,   nil,   nil,   nil,   nil,   346,   346,   346,   346,
-   346,   346,   346,   346,   346,   346,   346,   346,   nil,   346,
-   346,   346,   nil,   346,   346,   nil,   346,   346,   346,   809,
-   809,   809,   809,   809,   809,   809,   809,   809,   809,   809,
-   nil,   809,   809,   nil,   nil,   809,   809,   nil,   346,   nil,
-   nil,   346,   nil,   nil,   346,   346,   nil,   nil,   346,   nil,
-   346,   809,   nil,   809,   346,   809,   809,   809,   809,   809,
-   809,   809,   346,   809,   nil,   nil,   nil,   346,   346,   346,
-   346,   346,   346,   nil,   nil,   nil,   346,   346,   nil,   809,
-   nil,   nil,   nil,   nil,   346,   nil,   nil,   346,   346,   346,
-   nil,   346,   346,   356,   356,   356,   356,   356,   356,   nil,
-   nil,   nil,   356,   356,   nil,   nil,   nil,   356,   nil,   356,
-   356,   356,   356,   356,   356,   356,   nil,   nil,   nil,   nil,
-   nil,   356,   356,   356,   356,   356,   356,   356,   nil,   nil,
-   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,   356,
-   356,   356,   356,   356,   356,   356,   356,   356,   nil,   356,
-   356,   356,   nil,   356,   356,   nil,   356,   356,   356,   921,
-   921,   921,   921,   921,   921,   921,   921,   921,   921,   921,
-   nil,   921,   921,   nil,   nil,   921,   921,   nil,   356,   nil,
-   nil,   356,   nil,   nil,   356,   356,   nil,   nil,   356,   nil,
-   356,   921,   nil,   921,   356,   921,   921,   921,   921,   921,
-   921,   921,   356,   921,   nil,   nil,   nil,   356,   356,   356,
-   356,   356,   356,   nil,   nil,   nil,   356,   356,   nil,   921,
-   nil,   nil,   nil,   nil,   356,   nil,   nil,   356,   356,   356,
-   nil,   356,   356,   357,   357,   357,   357,   357,   357,   nil,
-   nil,   nil,   357,   357,   nil,   nil,   nil,   357,   nil,   357,
-   357,   357,   357,   357,   357,   357,   nil,   nil,   nil,   nil,
-   nil,   357,   357,   357,   357,   357,   357,   357,   nil,   nil,
-   357,   nil,   nil,   nil,   nil,   nil,   357,   357,   357,   357,
-   357,   357,   357,   357,   357,   357,   357,   357,   nil,   357,
-   357,   357,   nil,   357,   357,   nil,   357,   357,   357,   480,
-   480,   480,   480,   480,   480,   480,   480,   480,   480,   480,
-   nil,   480,   480,   nil,   nil,   480,   480,   nil,   357,   nil,
-   nil,   357,   nil,   nil,   357,   357,   nil,   nil,   357,   nil,
-   357,   480,   nil,   480,   357,   480,   480,   480,   480,   480,
-   480,   480,   357,   480,   nil,   nil,   nil,   357,   357,   357,
-   357,   357,   357,   nil,   nil,   nil,   357,   357,   nil,   nil,
-   nil,   nil,   nil,   nil,   357,   nil,   nil,   357,   357,   357,
-   nil,   357,   357,   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,   481,
-   481,   481,   481,   481,   481,   481,   481,   481,   481,   481,
-   nil,   481,   481,   nil,   nil,   481,   481,   nil,   566,   nil,
-   nil,   566,   nil,   nil,   566,   566,   nil,   nil,   566,   nil,
-   566,   481,   nil,   481,   566,   481,   481,   481,   481,   481,
-   481,   481,   566,   481,   nil,   nil,   nil,   566,   566,   566,
-   566,   566,   566,   nil,   nil,   nil,   566,   566,   nil,   nil,
-   nil,   nil,   nil,   nil,   566,   nil,   nil,   566,   566,   566,
-   nil,   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,   491,
-   491,   491,   491,   491,   491,   491,   nil,   nil,   491,   491,
-   nil,   nil,   nil,   nil,   nil,   491,   491,   nil,   569,   nil,
-   nil,   569,   nil,   nil,   569,   569,   nil,   nil,   569,   nil,
-   569,   491,   nil,   491,   569,   491,   491,   491,   491,   491,
-   491,   491,   569,   491,   nil,   nil,   nil,   569,   569,   569,
-   569,   569,   569,   nil,   nil,   nil,   569,   569,   nil,   nil,
-   nil,   nil,   nil,   nil,   569,   nil,   nil,   569,   569,   569,
-   nil,   569,   569,   652,   652,   652,   652,   652,   652,   nil,
-   nil,   nil,   652,   652,   nil,   nil,   nil,   652,   nil,   652,
-   652,   652,   652,   652,   652,   652,   nil,   nil,   nil,   nil,
-   nil,   652,   652,   652,   652,   652,   652,   652,   nil,   nil,
-   652,   nil,   nil,   nil,   nil,   nil,   652,   652,   652,   652,
-   652,   652,   652,   652,   652,   652,   652,   652,   nil,   652,
-   652,   652,   nil,   652,   652,   nil,   652,   652,   652,   492,
-   492,   492,   492,   492,   492,   492,   nil,   nil,   492,   492,
-   nil,   nil,   nil,   nil,   nil,   492,   492,   nil,   652,   nil,
-   nil,   652,   nil,   nil,   652,   652,   nil,   nil,   652,   nil,
-   652,   492,   nil,   492,   652,   492,   492,   492,   492,   492,
-   492,   492,   652,   492,   nil,   nil,   nil,   652,   652,   652,
-   652,   652,   652,   nil,   nil,   nil,   652,   652,   nil,   nil,
-   nil,   nil,   nil,   nil,   652,   nil,   nil,   652,   652,   652,
-   nil,   652,   652,   751,   751,   751,   751,   751,   751,   nil,
-   nil,   nil,   751,   751,   nil,   nil,   nil,   751,   nil,   751,
-   751,   751,   751,   751,   751,   751,   nil,   nil,   nil,   nil,
-   nil,   751,   751,   751,   751,   751,   751,   751,   nil,   nil,
-   751,   nil,   nil,   nil,   nil,   nil,   751,   751,   751,   751,
-   751,   751,   751,   751,   751,   751,   751,   751,   nil,   751,
-   751,   751,   nil,   751,   751,   nil,   751,   751,   751,   493,
-   493,   493,   493,   493,   493,   493,   nil,   nil,   493,   493,
-   nil,   nil,   nil,   nil,   nil,   493,   493,   nil,   751,   nil,
-   nil,   751,   nil,   nil,   751,   751,   nil,   nil,   751,   nil,
-   751,   493,   nil,   493,   751,   493,   493,   493,   493,   493,
-   493,   493,   751,   493,   nil,   nil,   nil,   751,   751,   751,
-   751,   751,   751,   nil,   nil,   nil,   751,   751,   nil,   nil,
-   nil,   nil,   nil,   nil,   751,   nil,   nil,   751,   751,   751,
-   nil,   751,   751,   762,   762,   762,   762,   762,   762,   nil,
-   nil,   nil,   762,   762,   nil,   nil,   nil,   762,   nil,   762,
-   762,   762,   762,   762,   762,   762,   nil,   nil,   nil,   nil,
-   nil,   762,   762,   762,   762,   762,   762,   762,   nil,   nil,
-   762,   nil,   nil,   nil,   nil,   nil,   762,   762,   762,   762,
-   762,   762,   762,   762,   762,   762,   762,   762,   nil,   762,
-   762,   762,   nil,   762,   762,   nil,   762,   762,   762,   494,
-   494,   494,   494,   494,   494,   494,   nil,   nil,   494,   494,
-   nil,   nil,   nil,   nil,   nil,   494,   494,   nil,   762,   nil,
-   nil,   762,   nil,   nil,   762,   762,   nil,   nil,   762,   nil,
-   762,   494,   nil,   494,   762,   494,   494,   494,   494,   494,
-   494,   494,   762,   494,   nil,   nil,   nil,   762,   762,   762,
-   762,   762,   762,   nil,   nil,   nil,   762,   762,   nil,   nil,
-   nil,   nil,   nil,   nil,   762,   nil,   nil,   762,   762,   762,
-   nil,   762,   762,   763,   763,   763,   763,   763,   763,   nil,
-   nil,   nil,   763,   763,   nil,   nil,   nil,   763,   nil,   763,
-   763,   763,   763,   763,   763,   763,   nil,   nil,   nil,   nil,
-   nil,   763,   763,   763,   763,   763,   763,   763,   nil,   nil,
-   763,   nil,   nil,   nil,   nil,   nil,   763,   763,   763,   763,
-   763,   763,   763,   763,   763,   763,   763,   763,   nil,   763,
-   763,   763,   nil,   763,   763,   nil,   763,   763,   763,   495,
-   495,   495,   495,   495,   495,   495,   nil,   nil,   495,   495,
-   nil,   nil,   nil,   nil,   nil,   495,   495,   nil,   763,   nil,
-   nil,   763,   nil,   nil,   763,   763,   nil,   nil,   763,   nil,
-   763,   495,   nil,   495,   763,   495,   495,   495,   495,   495,
-   495,   495,   763,   495,   nil,   nil,   nil,   763,   763,   763,
-   763,   763,   763,   nil,   nil,   nil,   763,   763,   nil,   nil,
-   nil,   nil,   nil,   nil,   763,   nil,   nil,   763,   763,   763,
-   nil,   763,   763,   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,   496,
-   496,   496,   496,   496,   496,   496,   nil,   nil,   496,   496,
-   nil,   nil,   nil,   nil,   nil,   496,   496,   nil,   793,   nil,
-   nil,   793,   nil,   nil,   793,   793,   nil,   nil,   793,   nil,
-   793,   496,   nil,   496,   793,   496,   496,   496,   496,   496,
-   496,   496,   793,   496,   nil,   nil,   nil,   793,   793,   793,
-   793,   793,   793,   nil,   nil,   nil,   793,   793,   nil,   nil,
-   nil,   nil,   nil,   nil,   793,   nil,   nil,   793,   793,   793,
-   nil,   793,   793,   833,   833,   833,   833,   833,   833,   nil,
-   nil,   nil,   833,   833,   nil,   nil,   nil,   833,   nil,   833,
-   833,   833,   833,   833,   833,   833,   nil,   nil,   nil,   nil,
-   nil,   833,   833,   833,   833,   833,   833,   833,   nil,   nil,
-   833,   nil,   nil,   nil,   nil,   nil,   833,   833,   833,   833,
-   833,   833,   833,   833,   833,   833,   833,   833,   nil,   833,
-   833,   833,   nil,   833,   833,   nil,   833,   833,   833,   499,
-   499,   499,   499,   499,   499,   499,   nil,   nil,   499,   499,
-   nil,   nil,   nil,   nil,   nil,   499,   499,   nil,   833,   nil,
-   nil,   833,   nil,   nil,   833,   833,   nil,   nil,   833,   nil,
-   833,   499,   nil,   499,   833,   499,   499,   499,   499,   499,
-   499,   499,   833,   499,   nil,   nil,   nil,   833,   833,   833,
-   833,   833,   833,   nil,   nil,   nil,   833,   833,   nil,   nil,
-   nil,   nil,   nil,   nil,   833,   nil,   nil,   833,   833,   833,
-   nil,   833,   833,   851,   851,   851,   851,   851,   851,   nil,
-   nil,   nil,   851,   851,   nil,   nil,   nil,   851,   nil,   851,
-   851,   851,   851,   851,   851,   851,   nil,   nil,   nil,   nil,
-   nil,   851,   851,   851,   851,   851,   851,   851,   nil,   nil,
-   851,   nil,   nil,   nil,   nil,   nil,   851,   851,   851,   851,
-   851,   851,   851,   851,   851,   851,   851,   851,   nil,   851,
-   851,   851,   nil,   851,   851,   nil,   851,   851,   851,   500,
-   500,   500,   500,   500,   500,   500,   500,   nil,   500,   500,
-   nil,   nil,   nil,   nil,   nil,   500,   500,   nil,   851,   nil,
-   nil,   851,   nil,   nil,   851,   851,   nil,   nil,   851,   nil,
-   851,   500,   nil,   500,   851,   500,   500,   500,   500,   500,
-   500,   500,   851,   500,   nil,   nil,   nil,   851,   851,   851,
-   851,   851,   851,   nil,   nil,   nil,   851,   851,   nil,   nil,
-   nil,   nil,   nil,   nil,   851,   nil,   nil,   851,   851,   851,
-   nil,   851,   851,   863,   863,   863,   863,   863,   863,   nil,
-   nil,   nil,   863,   863,   nil,   nil,   nil,   863,   nil,   863,
-   863,   863,   863,   863,   863,   863,   nil,   nil,   nil,   nil,
-   nil,   863,   863,   863,   863,   863,   863,   863,   nil,   nil,
-   863,   nil,   nil,   nil,   nil,   nil,   863,   863,   863,   863,
-   863,   863,   863,   863,   863,   863,   863,   863,   nil,   863,
-   863,   863,   nil,   863,   863,   nil,   863,   863,   863,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   863,   nil,
-   nil,   863,   nil,   nil,   863,   863,   nil,   nil,   863,   nil,
-   863,   nil,   nil,   nil,   863,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   863,   nil,   nil,   nil,   nil,   863,   863,   863,
-   863,   863,   863,   nil,   nil,   nil,   863,   863,   nil,   nil,
-   nil,   nil,   nil,   nil,   863,   nil,   nil,   863,   863,   863,
-   nil,   863,   863,   876,   876,   876,   876,   876,   876,   nil,
-   nil,   nil,   876,   876,   nil,   nil,   nil,   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,   876,   876,   876,   876,
-   876,   876,   876,   876,   876,   876,   876,   876,   nil,   876,
-   876,   876,   nil,   876,   876,   nil,   876,   876,   876,   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,   876,   nil,   nil,   876,   nil,
-   876,   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,   nil,   nil,   nil,   876,   nil,   nil,   876,   876,   876,
-   nil,   876,   876,   886,   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,   886,   886,
-   886,   886,   886,   886,   886,   886,   886,   886,   nil,   886,
-   886,   886,   nil,   886,   886,   nil,   886,   886,   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,
-   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,   nil,   nil,   nil,   886,   nil,   nil,   886,   886,   886,
-   nil,   886,   886,   887,   887,   887,   887,   887,   887,   nil,
-   nil,   nil,   887,   887,   nil,   nil,   nil,   887,   nil,   887,
-   887,   887,   887,   887,   887,   887,   nil,   nil,   nil,   nil,
-   nil,   887,   887,   887,   887,   887,   887,   887,   nil,   nil,
-   887,   nil,   nil,   nil,   nil,   nil,   887,   887,   887,   887,
-   887,   887,   887,   887,   887,   887,   887,   887,   nil,   887,
-   887,   887,   nil,   887,   887,   nil,   887,   887,   887,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   887,   nil,
-   nil,   887,   nil,   nil,   887,   887,   nil,   nil,   887,   nil,
-   887,   nil,   nil,   nil,   887,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   887,   nil,   nil,   nil,   nil,   887,   887,   887,
-   887,   887,   887,   nil,   nil,   nil,   887,   887,   nil,   nil,
-   nil,   nil,   nil,   nil,   887,   nil,   nil,   887,   887,   887,
-   nil,   887,   887,   937,   937,   937,   937,   937,   937,   nil,
-   nil,   nil,   937,   937,   nil,   nil,   nil,   937,   nil,   937,
-   937,   937,   937,   937,   937,   937,   nil,   nil,   nil,   nil,
-   nil,   937,   937,   937,   937,   937,   937,   937,   nil,   nil,
-   937,   nil,   nil,   nil,   nil,   nil,   937,   937,   937,   937,
-   937,   937,   937,   937,   937,   937,   937,   937,   nil,   937,
-   937,   937,   nil,   937,   937,   nil,   937,   937,   937,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   937,   nil,
-   nil,   937,   nil,   nil,   937,   937,   nil,   nil,   937,   nil,
-   937,   nil,   nil,   nil,   937,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   937,   nil,   nil,   nil,   nil,   937,   937,   937,
-   937,   937,   937,   nil,   nil,   nil,   937,   937,   nil,   nil,
-   nil,   nil,   nil,   nil,   937,   nil,   nil,   937,   937,   937,
-   nil,   937,   937,   938,   938,   938,   938,   938,   938,   nil,
-   nil,   nil,   938,   938,   nil,   nil,   nil,   938,   nil,   938,
-   938,   938,   938,   938,   938,   938,   nil,   nil,   nil,   nil,
-   nil,   938,   938,   938,   938,   938,   938,   938,   nil,   nil,
-   938,   nil,   nil,   nil,   nil,   nil,   938,   938,   938,   938,
-   938,   938,   938,   938,   938,   938,   938,   938,   nil,   938,
-   938,   938,   nil,   938,   938,   nil,   938,   938,   938,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   938,   nil,
-   nil,   938,   nil,   nil,   938,   938,   nil,   nil,   938,   nil,
-   938,   nil,   nil,   nil,   938,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   938,   nil,   nil,   nil,   nil,   938,   938,   938,
-   938,   938,   938,   nil,   nil,   nil,   938,   938,   nil,   nil,
-   nil,   nil,   nil,   nil,   938,   nil,   nil,   938,   938,   938,
-   nil,   938,   938,   950,   950,   950,   950,   950,   950,   nil,
-   nil,   nil,   950,   950,   nil,   nil,   nil,   950,   nil,   950,
-   950,   950,   950,   950,   950,   950,   nil,   nil,   nil,   nil,
-   nil,   950,   950,   950,   950,   950,   950,   950,   nil,   nil,
-   950,   nil,   nil,   nil,   nil,   nil,   950,   950,   950,   950,
-   950,   950,   950,   950,   950,   950,   950,   950,   nil,   950,
-   950,   950,   nil,   950,   950,   nil,   950,   950,   950,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   950,   nil,
-   nil,   950,   nil,   nil,   950,   950,   nil,   nil,   950,   nil,
-   950,   nil,   nil,   nil,   950,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   950,   nil,   nil,   nil,   nil,   950,   950,   950,
-   950,   950,   950,   nil,   nil,   nil,   950,   950,   nil,   nil,
-   nil,   nil,   nil,   nil,   950,   nil,   nil,   950,   950,   950,
-   nil,   950,   950,   997,   997,   997,   997,   997,   997,   nil,
-   nil,   nil,   997,   997,   nil,   nil,   nil,   997,   nil,   997,
-   997,   997,   997,   997,   997,   997,   nil,   nil,   nil,   nil,
-   nil,   997,   997,   997,   997,   997,   997,   997,   nil,   nil,
-   997,   nil,   nil,   nil,   nil,   nil,   997,   997,   997,   997,
-   997,   997,   997,   997,   997,   997,   997,   997,   nil,   997,
-   997,   997,   nil,   997,   997,   nil,   997,   997,   997,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,
-   nil,   997,   nil,   nil,   997,   997,   nil,   nil,   997,   nil,
-   997,   nil,   nil,   nil,   997,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   997,   nil,   nil,   nil,   nil,   997,   997,   997,
-   997,   997,   997,   nil,   nil,   nil,   997,   997,   nil,   nil,
-   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,   997,   997,
-   nil,   997,   997,  1004,  1004,  1004,  1004,  1004,  1004,   nil,
-   nil,   nil,  1004,  1004,   nil,   nil,   nil,  1004,   nil,  1004,
-  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,   nil,
-   nil,  1004,  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,
-  1004,   nil,   nil,   nil,   nil,   nil,  1004,  1004,  1004,  1004,
-  1004,  1004,  1004,  1004,  1004,  1004,  1004,  1004,   nil,  1004,
-  1004,  1004,   nil,  1004,  1004,   nil,  1004,  1004,  1004,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,
-   nil,  1004,   nil,   nil,  1004,  1004,   nil,   nil,  1004,   nil,
-  1004,   nil,   nil,   nil,  1004,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1004,   nil,   nil,   nil,   nil,  1004,  1004,  1004,
-  1004,  1004,  1004,   nil,   nil,   nil,  1004,  1004,   nil,   nil,
-   nil,   nil,   nil,   nil,  1004,   nil,   nil,  1004,  1004,  1004,
-   nil,  1004,  1004,  1010,  1010,  1010,  1010,  1010,  1010,   nil,
-   nil,   nil,  1010,  1010,   nil,   nil,   nil,  1010,   nil,  1010,
-  1010,  1010,  1010,  1010,  1010,  1010,   nil,   nil,   nil,   nil,
-   nil,  1010,  1010,  1010,  1010,  1010,  1010,  1010,   nil,   nil,
-  1010,   nil,   nil,   nil,   nil,   nil,  1010,  1010,  1010,  1010,
-  1010,  1010,  1010,  1010,  1010,  1010,  1010,  1010,   nil,  1010,
-  1010,  1010,   nil,  1010,  1010,   nil,  1010,  1010,  1010,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1010,   nil,
-   nil,  1010,   nil,   nil,  1010,  1010,   nil,   nil,  1010,   nil,
-  1010,   nil,   nil,   nil,  1010,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1010,   nil,   nil,   nil,   nil,  1010,  1010,  1010,
-  1010,  1010,  1010,   nil,   nil,   nil,  1010,  1010,   nil,   nil,
-   nil,   nil,   nil,   nil,  1010,   nil,   nil,  1010,  1010,  1010,
-   nil,  1010,  1010,  1011,  1011,  1011,  1011,  1011,  1011,   nil,
-   nil,   nil,  1011,  1011,   nil,   nil,   nil,  1011,   nil,  1011,
-  1011,  1011,  1011,  1011,  1011,  1011,   nil,   nil,   nil,   nil,
-   nil,  1011,  1011,  1011,  1011,  1011,  1011,  1011,   nil,   nil,
-  1011,   nil,   nil,   nil,   nil,   nil,  1011,  1011,  1011,  1011,
-  1011,  1011,  1011,  1011,  1011,  1011,  1011,  1011,   nil,  1011,
-  1011,  1011,   nil,  1011,  1011,   nil,  1011,  1011,  1011,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1011,   nil,
-   nil,  1011,   nil,   nil,  1011,  1011,   nil,   nil,  1011,   nil,
-  1011,   nil,   nil,   nil,  1011,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1011,   nil,   nil,   nil,   nil,  1011,  1011,  1011,
-  1011,  1011,  1011,   nil,   nil,   nil,  1011,  1011,   nil,   nil,
-   nil,   nil,   nil,   nil,  1011,   nil,   nil,  1011,  1011,  1011,
-   nil,  1011,  1011,     8,     8,     8,     8,     8,   nil,   nil,
-   nil,     8,     8,   nil,   nil,   nil,     8,   nil,     8,     8,
-     8,     8,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,
-     8,     8,     8,     8,     8,     8,     8,   nil,   nil,     8,
-   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,     8,
-     8,     8,     8,     8,     8,     8,     8,   nil,     8,     8,
-     8,   nil,     8,     8,   nil,     8,     8,     8,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
-     8,   nil,   nil,     8,     8,   nil,   nil,     8,   nil,     8,
-   nil,   nil,   nil,     8,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,     8,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
-     8,     8,   nil,   nil,   nil,     8,     8,   nil,   nil,   nil,
-   nil,   nil,   nil,     8,   nil,   nil,     8,     8,     8,   nil,
-     8,     8,    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,   nil,    23,
-    23,    23,    23,    23,    23,    23,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,    23,    23,
-    23,    23,    23,    23,    23,    23,   nil,    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,   nil,   nil,
-   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,    23,    23,    23,   nil,    23,
-    23,    32,    32,    32,   nil,    32,   nil,   nil,   nil,    32,
-    32,   nil,   nil,   nil,    32,   nil,    32,    32,    32,    32,
-    32,    32,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,
-    32,    32,    32,    32,    32,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,    32,   nil,   nil,    32,    32,    32,
-    32,    32,    32,    32,    32,    32,    32,    32,    32,   nil,
-    32,    32,   nil,    32,    32,    32,   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,    32,    32,   nil,   nil,    32,   nil,    32,   nil,    32,
-   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,
-   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,    32,   nil,    32,    32,    32,    32,   nil,    32,    32,
-    33,    33,    33,   nil,    33,   nil,   nil,   nil,    33,    33,
-   nil,   nil,   nil,    33,   nil,    33,    33,    33,    33,    33,
-    33,    33,   nil,   nil,   nil,   nil,   nil,    33,    33,    33,
-    33,    33,    33,    33,   nil,   nil,    33,   nil,   nil,   nil,
-   nil,   nil,   nil,    33,   nil,   nil,    33,    33,    33,    33,
-    33,    33,    33,    33,    33,    33,    33,    33,   nil,    33,
-    33,   nil,    33,    33,    33,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    33,   nil,   nil,    33,   nil,   nil,
-    33,    33,   nil,   nil,    33,   nil,    33,   nil,    33,   nil,
-    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,
-   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,   nil,
-   nil,   nil,    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,
-    33,   nil,    33,    33,    33,    33,   nil,    33,    33,    34,
-    34,    34,   nil,    34,   nil,   nil,   nil,    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,    34,    34,    34,    34,   nil,    34,    34,
-   nil,    34,    34,    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,    34,   nil,    34,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
-   nil,   nil,    34,    34,    34,    34,    34,    34,   nil,   nil,
-   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,    34,
-   nil,    34,    34,    34,    34,   nil,    34,    34,    37,    37,
-    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,   nil,
-   nil,    37,   nil,    37,    37,    37,    37,    37,    37,    37,
-   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
-    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,
-   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,    37,
-    37,    37,   nil,    37,    37,    37,   nil,    37,    37,   nil,
-   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,   972,   nil,
-   972,   972,   972,   972,   972,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    37,   nil,   972,    37,   nil,   nil,    37,    37,
-   nil,   nil,    37,   nil,    37,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   972,   nil,   nil,   nil,
-   nil,    37,    37,    37,    37,    37,    37,   972,   972,   nil,
-    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
-   nil,    37,    37,    37,   nil,    37,    37,    38,    38,    38,
-   nil,    38,   nil,   nil,   nil,    38,    38,   nil,   nil,   nil,
-    38,   972,    38,    38,    38,    38,    38,    38,    38,   nil,
-   nil,   nil,   nil,   nil,    38,    38,    38,    38,    38,    38,
-    38,   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,
-    38,   nil,   nil,    38,    38,    38,    38,    38,    38,    38,
-    38,   nil,    38,    38,    38,   nil,    38,    38,   nil,   nil,
-   nil,    38,   nil,   nil,   nil,   nil,   nil,   988,   nil,   988,
-   988,   988,   988,   988,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    38,   nil,   988,    38,   nil,   nil,    38,    38,   nil,
-   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   988,   nil,   nil,   nil,   nil,
-    38,    38,    38,    38,    38,    38,   988,   988,   nil,    38,
-    38,   nil,   nil,   nil,    38,   nil,   nil,    38,   nil,   nil,
-    38,    38,    38,   nil,    38,    38,    45,    45,    45,   nil,
-    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,    45,
-   988,    45,    45,    45,    45,    45,    45,    45,   nil,   nil,
-   nil,   nil,   nil,    45,    45,    45,    45,    45,    45,    45,
-   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,    45,
-   nil,   nil,    45,    45,    45,    45,    45,    45,    45,    45,
-   nil,    45,    45,    45,   nil,    45,    45,   nil,    45,    45,
-    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    45,   nil,   nil,    45,   nil,   nil,    45,    45,   nil,   nil,
-    45,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    45,   nil,   nil,   nil,   nil,    45,
-    45,    45,    45,    45,    45,   nil,   nil,   nil,    45,    45,
-   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
-    45,    45,   nil,    45,    45,    46,    46,    46,   nil,    46,
-   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,    46,   nil,
-    46,    46,    46,    46,    46,    46,    46,   nil,   nil,   nil,
-   nil,   nil,    46,    46,    46,    46,    46,    46,    46,   nil,
-   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,
-   nil,    46,    46,    46,    46,    46,    46,    46,    46,   nil,
-    46,    46,    46,   nil,    46,    46,   nil,    46,    46,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
-   nil,   nil,    46,   nil,   nil,    46,    46,   nil,   nil,    46,
-   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    46,   nil,   nil,   nil,   nil,    46,    46,
-    46,    46,    46,    46,   nil,   nil,   nil,    46,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,
-    46,   nil,    46,    46,    48,    48,    48,   nil,    48,   nil,
-   nil,   nil,    48,    48,   nil,   nil,   nil,    48,   nil,    48,
-    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,   nil,
-   nil,    48,    48,    48,    48,    48,    48,    48,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-    48,    48,    48,    48,    48,    48,    48,    48,   nil,    48,
-    48,    48,   nil,    48,    48,   nil,    48,    48,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,    48,   nil,   nil,    48,    48,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,    48,    48,    48,
-    48,    48,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,
-   nil,    48,    48,    62,    62,    62,    62,    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,    62,    62,   nil,    62,    62,
-    62,    62,    62,    62,    62,    62,    62,   nil,    62,    62,
-    62,   nil,    62,    62,   nil,    62,    62,    62,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,
-    62,   nil,   nil,    62,    62,   nil,   nil,    62,   nil,    62,
-   nil,   nil,   nil,    62,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    62,   nil,   nil,   nil,   nil,    62,    62,    62,    62,
-    62,    62,   nil,   nil,   nil,    62,    62,   nil,   nil,   nil,
-   nil,   nil,   nil,    62,   nil,   nil,    62,    62,    62,   nil,
-    62,    62,    67,    67,    67,   nil,    67,   nil,   nil,   nil,
-    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,
-    67,   nil,   nil,   nil,   nil,    67,    67,    67,    67,    67,
-    67,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,    67,    67,    67,   nil,    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,    68,    68,    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,   nil,   nil,   nil,
-   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
-   nil,   nil,   nil,   nil,    68,    68,    68,    68,    68,    68,
-   nil,   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,   nil,
-   nil,    68,   nil,   nil,    68,    68,    68,   nil,    68,    68,
-    71,    71,    71,   nil,    71,   nil,   nil,   nil,    71,    71,
-   nil,   nil,   nil,    71,   nil,    71,    71,    71,    71,    71,
-    71,    71,   nil,   nil,   nil,   nil,   nil,    71,    71,    71,
-    71,    71,    71,    71,   nil,   nil,    71,   nil,   nil,   nil,
-   nil,   nil,   nil,    71,   nil,   nil,    71,    71,    71,    71,
-    71,    71,    71,    71,   nil,    71,    71,    71,   nil,    71,
-    71,   nil,    71,    71,    71,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    71,   nil,   nil,    71,   nil,   nil,
-    71,    71,   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,
-    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    71,   nil,
-   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,   nil,
-   nil,   nil,    71,    71,    71,   nil,   nil,   nil,   nil,    71,
-    71,   nil,   nil,    71,    71,    71,   nil,    71,    71,    72,
-    72,    72,   nil,    72,   nil,   nil,   nil,    72,    72,   nil,
-   nil,   nil,    72,   nil,    72,    72,    72,    72,    72,    72,
-    72,   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,
-    72,    72,    72,   nil,   nil,    72,   nil,   nil,   nil,   nil,
-   nil,   nil,    72,   nil,   nil,    72,    72,    72,    72,    72,
-    72,    72,    72,   nil,    72,    72,    72,   nil,    72,    72,
-   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,  1052,
-   nil,  1052,  1052,  1052,  1052,  1052,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    72,   nil,  1052,    72,   nil,   nil,    72,
-    72,   nil,   nil,    72,   nil,    72,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1052,   nil,   nil,
-   nil,   nil,    72,    72,    72,    72,    72,    72,  1052,  1052,
-   nil,    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,
-   nil,   nil,    72,    72,    72,   nil,    72,    72,   128,   128,
-   128,   128,   128,   nil,   nil,   nil,   128,   128,   nil,   nil,
-   nil,   128,  1052,   128,   128,   128,   128,   128,   128,   128,
-   nil,   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,
-   128,   128,   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,
-   128,   128,   128,   128,   128,   128,   128,   128,   128,   128,
-   128,   128,   nil,   128,   128,   128,   nil,   128,   128,   nil,
-   128,   128,   128,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   128,   nil,   nil,   128,   nil,   nil,   128,   128,
-   nil,   nil,   128,   nil,   128,   nil,   nil,   nil,   128,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,   nil,   nil,
-   nil,   128,   128,   128,   128,   128,   128,   nil,   nil,   nil,
-   128,   128,   nil,   nil,   nil,   nil,   nil,   128,   128,   nil,
-   nil,   128,   128,   128,   nil,   128,   128,   133,   133,   133,
-   nil,   133,   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,
-   133,   nil,   133,   133,   133,   133,   133,   133,   133,   nil,
-   nil,   nil,   nil,   nil,   133,   133,   133,   133,   133,   133,
-   133,   nil,   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,
-   133,   nil,   nil,   133,   133,   133,   133,   133,   133,   133,
-   133,   nil,   133,   133,   133,   nil,   133,   133,   nil,   133,
-   133,   133,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   133,   nil,   nil,   133,   nil,   nil,   133,   133,   nil,
-   nil,   133,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,
-   133,   133,   133,   133,   133,   133,   nil,   nil,   nil,   133,
-   133,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,
-   133,   133,   133,   nil,   133,   133,   134,   134,   134,   nil,
-   134,   nil,   nil,   nil,   134,   134,   nil,   nil,   nil,   134,
-   nil,   134,   134,   134,   134,   134,   134,   134,   nil,   nil,
-   nil,   nil,   nil,   134,   134,   134,   134,   134,   134,   134,
-   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,   nil,   134,
-   nil,   nil,   134,   134,   134,   134,   134,   134,   134,   134,
-   nil,   134,   134,   134,   nil,   134,   134,   nil,   134,   134,
-   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   134,   nil,   nil,   134,   nil,   nil,   134,   134,   nil,   nil,
-   134,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   134,   nil,   nil,   nil,   nil,   134,
-   134,   134,   134,   134,   134,   nil,   nil,   nil,   134,   134,
-   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,
-   134,   134,   nil,   134,   134,   135,   135,   135,   nil,   135,
-   nil,   nil,   nil,   135,   135,   nil,   nil,   nil,   135,   nil,
-   135,   135,   135,   135,   135,   135,   135,   nil,   nil,   nil,
-   nil,   nil,   135,   135,   135,   135,   135,   135,   135,   nil,
-   nil,   135,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,
-   nil,   135,   135,   135,   135,   135,   135,   135,   135,   nil,
-   135,   135,   135,   nil,   135,   135,   nil,   135,   135,   135,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,
-   nil,   nil,   135,   nil,   nil,   135,   135,   nil,   nil,   135,
-   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   135,   nil,   nil,   nil,   nil,   135,   135,
-   135,   135,   135,   135,   nil,   nil,   nil,   135,   135,   nil,
-   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   135,
-   135,   nil,   135,   135,   136,   136,   136,   nil,   136,   nil,
-   nil,   nil,   136,   136,   nil,   nil,   nil,   136,   nil,   136,
-   136,   136,   136,   136,   136,   136,   nil,   nil,   nil,   nil,
-   nil,   136,   136,   136,   136,   136,   136,   136,   nil,   nil,
-   136,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,
-   136,   136,   136,   136,   136,   136,   136,   136,   nil,   136,
-   136,   136,   nil,   136,   136,   nil,   136,   136,   136,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
-   nil,   136,   nil,   nil,   136,   136,   nil,   nil,   136,   nil,
-   nil,   nil,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   136,   nil,   nil,   nil,   nil,   136,   136,   136,
-   136,   136,   136,   nil,   nil,   nil,   136,   136,   nil,   nil,
-   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   136,   136,
-   nil,   136,   136,   137,   137,   137,   137,   137,   nil,   nil,
-   nil,   137,   137,   nil,   nil,   nil,   137,   nil,   137,   137,
-   137,   137,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,
-   137,   137,   137,   137,   137,   137,   137,   nil,   nil,   137,
-   nil,   nil,   nil,   nil,   nil,   137,   137,   nil,   137,   137,
-   137,   137,   137,   137,   137,   137,   137,   nil,   137,   137,
-   137,   nil,   137,   137,   nil,   137,   137,   137,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   137,   nil,   nil,   137,   137,   nil,   nil,   137,   nil,   137,
-   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   137,   nil,   nil,   nil,   nil,   137,   137,   137,   137,
-   137,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
-   nil,   nil,   nil,   137,   nil,   nil,   137,   137,   137,   nil,
-   137,   137,   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,   nil,   222,
-   222,   222,   222,   222,   222,   222,   nil,   nil,   222,   nil,
-   nil,   nil,   nil,   nil,   nil,   222,   nil,   nil,   222,   222,
-   222,   222,   222,   222,   222,   222,   nil,   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,   222,   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,   nil,
-   nil,   nil,   222,   nil,   nil,   222,   222,   222,   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,   nil,   223,   223,
-   223,   223,   223,   223,   223,   nil,   nil,   223,   nil,   nil,
-   nil,   nil,   nil,   nil,   223,   nil,   nil,   223,   223,   223,
-   223,   223,   223,   223,   223,   nil,   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,   223,   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,   nil,   nil,
-   nil,   223,   nil,   nil,   223,   223,   223,   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,   nil,   224,   224,   224,
-   224,   224,   224,   224,   nil,   nil,   224,   nil,   nil,   nil,
-   nil,   nil,   nil,   224,   nil,   nil,   224,   224,   224,   224,
-   224,   224,   224,   224,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
-   224,   nil,   nil,   224,   224,   224,   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,   nil,   225,   225,   225,   225,
-   225,   225,   225,   nil,   nil,   225,   nil,   nil,   nil,   nil,
-   nil,   nil,   225,   nil,   nil,   225,   225,   225,   225,   225,
-   225,   225,   225,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   225,
-   nil,   nil,   225,   225,   225,   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,   nil,   226,   226,   226,   226,   226,
-   226,   226,   nil,   nil,   226,   nil,   nil,   nil,   nil,   nil,
-   nil,   226,   nil,   nil,   226,   226,   226,   226,   226,   226,
-   226,   226,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,
-   nil,   226,   226,   226,   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,   nil,   227,   227,   227,   227,   227,   227,
-   227,   nil,   nil,   227,   nil,   nil,   nil,   nil,   nil,   nil,
-   227,   nil,   nil,   227,   227,   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,   227,   nil,   227,   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,   nil,   nil,   nil,   227,   nil,   227,
-   227,   227,   227,   nil,   227,   227,   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,   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,   232,   nil,   nil,   nil,   nil,   232,
-   232,   232,   232,   232,   232,   nil,   nil,   nil,   232,   232,
-   nil,   nil,   nil,   nil,   nil,   nil,   232,   nil,   nil,   232,
-   232,   232,   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,   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,   233,   nil,   nil,   nil,   nil,   233,   233,
-   233,   233,   233,   233,   nil,   nil,   nil,   233,   233,   nil,
-   nil,   nil,   nil,   nil,   nil,   233,   nil,   nil,   233,   233,
-   233,   nil,   233,   233,   234,   234,   234,   nil,   234,   nil,
-   nil,   nil,   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,   234,   nil,   nil,   nil,   nil,   234,   234,   234,
-   234,   234,   234,   nil,   nil,   nil,   234,   234,   234,   nil,
-   nil,   nil,   nil,   nil,   234,   nil,   nil,   234,   234,   234,
-   nil,   234,   234,   245,   245,   245,   nil,   245,   nil,   nil,
-   nil,   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,   245,   nil,   nil,   nil,   nil,   245,   245,   245,   245,
-   245,   245,   nil,   nil,   nil,   245,   245,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   245,   245,   245,   nil,
-   245,   245,   248,   248,   248,   nil,   248,   nil,   nil,   nil,
-   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,
-   248,   nil,   nil,   nil,   nil,   248,   248,   248,   248,   248,
-   248,   nil,   nil,   nil,   248,   248,   nil,   nil,   nil,   nil,
-   nil,   nil,   248,   nil,   nil,   248,   248,   248,   nil,   248,
-   248,   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,   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,   249,
-   nil,   nil,   nil,   nil,   249,   249,   249,   249,   249,   249,
-   nil,   nil,   nil,   249,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,   249,   nil,   nil,   249,   249,   249,   nil,   249,   249,
-   250,   250,   250,   nil,   250,   nil,   nil,   nil,   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,   250,   nil,
-   nil,   nil,   nil,   250,   250,   250,   250,   250,   250,   nil,
-   nil,   nil,   250,   250,   nil,   nil,   nil,   nil,   nil,   nil,
-   250,   nil,   nil,   250,   250,   250,   nil,   250,   250,   251,
-   251,   251,   nil,   251,   nil,   nil,   nil,   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,   251,   nil,   nil,
-   nil,   nil,   251,   251,   251,   251,   251,   251,   nil,   nil,
-   nil,   251,   251,   nil,   nil,   nil,   nil,   nil,   nil,   251,
-   nil,   nil,   251,   251,   251,   nil,   251,   251,   252,   252,
-   252,   nil,   252,   nil,   nil,   nil,   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,   252,   nil,   nil,   nil,
-   nil,   252,   252,   252,   252,   252,   252,   nil,   nil,   nil,
-   252,   252,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   252,   252,   252,   nil,   252,   252,   253,   253,   253,
-   nil,   253,   nil,   nil,   nil,   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,   253,   nil,   nil,   nil,   nil,
-   253,   253,   253,   253,   253,   253,   nil,   nil,   nil,   253,
-   253,   nil,   nil,   nil,   nil,   nil,   nil,   253,   nil,   nil,
-   253,   253,   253,   nil,   253,   253,   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,   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,   254,   nil,   nil,   nil,   nil,   254,
-   254,   254,   254,   254,   254,   nil,   nil,   nil,   254,   254,
-   nil,   nil,   nil,   nil,   nil,   nil,   254,   nil,   nil,   254,
-   254,   254,   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,   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,   255,   nil,   nil,   nil,   nil,   255,   255,
-   255,   255,   255,   255,   nil,   nil,   nil,   255,   255,   nil,
-   nil,   nil,   nil,   nil,   nil,   255,   nil,   nil,   255,   255,
-   255,   nil,   255,   255,   256,   256,   256,   nil,   256,   nil,
-   nil,   nil,   256,   256,   nil,   nil,   nil,   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,   256,   256,   256,   256,   256,   256,   nil,   256,
-   256,   256,   nil,   256,   256,   nil,   256,   256,   256,   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,   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,   nil,   nil,   nil,   256,   nil,   nil,   256,   256,   256,
-   nil,   256,   256,   257,   257,   257,   nil,   257,   nil,   nil,
-   nil,   257,   257,   nil,   nil,   nil,   257,   nil,   257,   257,
-   257,   257,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,
-   257,   257,   257,   257,   257,   257,   257,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,
-   257,   257,   257,   257,   257,   257,   257,   nil,   257,   257,
-   257,   nil,   257,   257,   nil,   257,   257,   257,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   257,   nil,   nil,   257,   257,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   257,   257,   257,   257,
-   257,   257,   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   257,   257,   257,   nil,
-   257,   257,   258,   258,   258,   nil,   258,   nil,   nil,   nil,
-   258,   258,   nil,   nil,   nil,   258,   nil,   258,   258,   258,
-   258,   258,   258,   258,   nil,   nil,   nil,   nil,   nil,   258,
-   258,   258,   258,   258,   258,   258,   nil,   nil,   258,   nil,
-   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,   258,
-   258,   258,   258,   258,   258,   258,   nil,   258,   258,   258,
-   nil,   258,   258,   nil,   258,   258,   258,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,
-   nil,   nil,   258,   258,   nil,   nil,   258,   nil,   nil,   nil,
-   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   258,   nil,   nil,   nil,   nil,   258,   258,   258,   258,   258,
-   258,   nil,   nil,   nil,   258,   258,   nil,   nil,   nil,   nil,
-   nil,   nil,   258,   nil,   nil,   258,   258,   258,   nil,   258,
-   258,   259,   259,   259,   nil,   259,   nil,   nil,   nil,   259,
-   259,   nil,   nil,   nil,   259,   nil,   259,   259,   259,   259,
-   259,   259,   259,   nil,   nil,   nil,   nil,   nil,   259,   259,
-   259,   259,   259,   259,   259,   nil,   nil,   259,   nil,   nil,
-   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,   259,   259,
-   259,   259,   259,   259,   259,   nil,   259,   259,   259,   nil,
-   259,   259,   nil,   259,   259,   259,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,   nil,
-   nil,   259,   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,
-   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   259,
-   nil,   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,
-   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,   nil,   nil,
-   nil,   259,   nil,   nil,   259,   259,   259,   nil,   259,   259,
-   260,   260,   260,   nil,   260,   nil,   nil,   nil,   260,   260,
-   nil,   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,
-   260,   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,
-   260,   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,
-   nil,   nil,   nil,   260,   nil,   nil,   260,   260,   260,   260,
-   260,   260,   260,   260,   nil,   260,   260,   260,   nil,   260,
-   260,   nil,   260,   260,   260,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,   nil,   nil,
-   260,   260,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,
-   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,
-   nil,   nil,   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   260,   260,   260,   nil,   260,   260,   261,
-   261,   261,   nil,   261,   nil,   nil,   nil,   261,   261,   nil,
-   nil,   nil,   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,   261,   261,   261,
-   261,   261,   261,   nil,   261,   261,   261,   nil,   261,   261,
-   nil,   261,   261,   261,   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,
-   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,   nil,   nil,   nil,   261,
-   nil,   nil,   261,   261,   261,   nil,   261,   261,   262,   262,
-   262,   nil,   262,   nil,   nil,   nil,   262,   262,   nil,   nil,
-   nil,   262,   nil,   262,   262,   262,   262,   262,   262,   262,
-   nil,   nil,   nil,   nil,   nil,   262,   262,   262,   262,   262,
-   262,   262,   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,
-   nil,   262,   nil,   nil,   262,   262,   262,   262,   262,   262,
-   262,   262,   nil,   262,   262,   262,   nil,   262,   262,   nil,
-   262,   262,   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   262,   nil,   nil,   262,   nil,   nil,   262,   262,
-   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   262,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,
-   nil,   262,   262,   262,   262,   262,   262,   nil,   nil,   nil,
-   262,   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,
-   nil,   262,   262,   262,   nil,   262,   262,   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,   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,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   263,   nil,   nil,
-   263,   263,   263,   nil,   263,   263,   264,   264,   264,   nil,
-   264,   nil,   nil,   nil,   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,
-   nil,   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,   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   264,
-   264,   264,   264,   264,   264,   nil,   nil,   nil,   264,   264,
-   nil,   nil,   nil,   nil,   nil,   nil,   264,   nil,   nil,   264,
-   264,   264,   nil,   264,   264,   265,   265,   265,   nil,   265,
-   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,   265,   nil,
-   265,   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,
-   nil,   nil,   265,   265,   265,   265,   265,   265,   265,   nil,
-   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
-   nil,   265,   265,   265,   265,   265,   265,   265,   265,   nil,
-   265,   265,   265,   nil,   265,   265,   nil,   265,   265,   265,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,
-   nil,   nil,   265,   nil,   nil,   265,   265,   nil,   nil,   265,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,   265,   265,
-   265,   265,   265,   265,   nil,   nil,   nil,   265,   265,   nil,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,
-   265,   nil,   265,   265,   266,   266,   266,   nil,   266,   nil,
-   nil,   nil,   266,   266,   nil,   nil,   nil,   266,   nil,   266,
-   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,   nil,
-   nil,   266,   266,   266,   266,   266,   266,   266,   nil,   nil,
-   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,
-   266,   266,   266,   266,   266,   266,   266,   266,   nil,   266,
-   266,   266,   nil,   266,   266,   nil,   266,   266,   266,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   266,   nil,   nil,   266,   266,   nil,   nil,   266,   nil,
-   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   266,   nil,   nil,   nil,   nil,   266,   266,   266,
-   266,   266,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,
-   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   266,   266,
-   nil,   266,   266,   267,   267,   267,   nil,   267,   nil,   nil,
-   nil,   267,   267,   nil,   nil,   nil,   267,   nil,   267,   267,
-   267,   267,   267,   267,   267,   nil,   nil,   nil,   nil,   nil,
-   267,   267,   267,   267,   267,   267,   267,   nil,   nil,   267,
-   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,
-   267,   267,   267,   267,   267,   267,   267,   nil,   267,   267,
-   267,   nil,   267,   267,   nil,   267,   267,   267,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
-   267,   nil,   nil,   267,   267,   nil,   nil,   267,   nil,   nil,
-   nil,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   nil,   nil,   267,   267,   267,   267,
-   267,   267,   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,
-   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,   nil,
-   267,   267,   268,   268,   268,   nil,   268,   nil,   nil,   nil,
-   268,   268,   nil,   nil,   nil,   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,
-   268,   268,   268,   268,   268,   268,   nil,   268,   268,   268,
-   nil,   268,   268,   nil,   268,   268,   268,   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,   268,   nil,   nil,   268,   nil,   nil,   nil,
-   nil,   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,   nil,
-   nil,   nil,   268,   nil,   nil,   268,   268,   268,   nil,   268,
-   268,   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,   nil,   269,   269,
-   269,   269,   269,   269,   269,   nil,   nil,   269,   nil,   nil,
-   nil,   nil,   nil,   nil,   269,   nil,   nil,   269,   269,   269,
-   269,   269,   269,   269,   269,   nil,   269,   269,   269,   nil,
-   269,   269,   nil,   269,   269,   269,   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,   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,
-   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,   nil,   nil,
-   nil,   269,   nil,   nil,   269,   269,   269,   nil,   269,   269,
-   274,   274,   274,   nil,   274,   nil,   nil,   nil,   274,   274,
-   nil,   nil,   nil,   274,   nil,   274,   274,   274,   274,   274,
-   274,   274,   nil,   nil,   nil,   nil,   nil,   274,   274,   274,
-   274,   274,   274,   274,   nil,   nil,   274,   nil,   nil,   nil,
-   nil,   nil,   nil,   274,   nil,   nil,   274,   274,   274,   274,
-   274,   274,   274,   274,   nil,   274,   274,   274,   nil,   274,
-   274,   nil,   274,   274,   274,   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,
-   274,   274,   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,
-   274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,
-   nil,   nil,   nil,   274,   274,   274,   274,   274,   274,   nil,
-   nil,   nil,   274,   274,   nil,   nil,   nil,   nil,   nil,   nil,
-   274,   nil,   nil,   274,   274,   274,   nil,   274,   274,   282,
-   282,   282,   nil,   282,   nil,   nil,   nil,   282,   282,   nil,
-   nil,   nil,   282,   nil,   282,   282,   282,   282,   282,   282,
-   282,   nil,   nil,   nil,   nil,   nil,   282,   282,   282,   282,
-   282,   282,   282,   nil,   nil,   282,   nil,   nil,   nil,   nil,
-   nil,   nil,   282,   nil,   nil,   282,   282,   282,   282,   282,
-   282,   282,   282,   282,   282,   282,   282,   nil,   282,   282,
-   nil,   282,   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   282,   nil,   nil,   282,   nil,   nil,   282,
-   282,   nil,   nil,   282,   nil,   282,   nil,   282,   nil,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
-   nil,   nil,   282,   282,   282,   282,   282,   282,   nil,   nil,
-   nil,   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   282,   282,   282,   282,   nil,   282,   282,   283,   283,
-   283,   nil,   283,   nil,   nil,   nil,   283,   283,   nil,   nil,
-   nil,   283,   nil,   283,   283,   283,   283,   283,   283,   283,
-   nil,   nil,   nil,   nil,   nil,   283,   283,   283,   283,   283,
-   283,   283,   nil,   nil,   283,   nil,   nil,   nil,   nil,   nil,
-   nil,   283,   nil,   nil,   283,   283,   283,   283,   283,   283,
-   283,   283,   283,   283,   283,   283,   nil,   283,   283,   nil,
-   283,   283,   283,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   283,   nil,   nil,   283,   nil,   nil,   283,   283,
-   nil,   nil,   283,   nil,   283,   nil,   283,   nil,   283,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   nil,
-   nil,   283,   283,   283,   283,   283,   283,   nil,   nil,   nil,
-   283,   283,   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,
-   283,   283,   283,   283,   nil,   283,   283,   292,   292,   292,
-   nil,   292,   nil,   nil,   nil,   292,   292,   nil,   nil,   nil,
-   292,   nil,   292,   292,   292,   292,   292,   292,   292,   nil,
-   nil,   nil,   nil,   nil,   292,   292,   292,   292,   292,   292,
-   292,   nil,   nil,   292,   nil,   nil,   nil,   nil,   nil,   nil,
-   292,   nil,   nil,   292,   292,   292,   292,   292,   292,   292,
-   292,   292,   292,   292,   292,   nil,   292,   292,   nil,   292,
-   292,   292,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   292,   nil,   nil,   292,   nil,   nil,   292,   292,   nil,
-   nil,   292,   nil,   292,   nil,   292,   nil,   292,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,   nil,   nil,
-   292,   292,   292,   292,   292,   292,   nil,   nil,   nil,   292,
-   292,   292,   nil,   nil,   nil,   nil,   nil,   292,   nil,   292,
-   292,   292,   292,   nil,   292,   292,   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,   nil,   299,   299,   299,   299,   299,   299,   299,
-   nil,   nil,   299,   nil,   nil,   nil,   nil,   nil,   nil,   299,
-   nil,   nil,   299,   299,   299,   299,   299,   299,   299,   299,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   299,   nil,   nil,   299,
-   299,   299,   nil,   299,   299,   301,   301,   301,   nil,   301,
-   nil,   nil,   nil,   301,   301,   nil,   nil,   nil,   301,   nil,
-   301,   301,   301,   301,   301,   301,   301,   nil,   nil,   nil,
-   nil,   nil,   301,   301,   301,   301,   301,   301,   301,   nil,
-   nil,   301,   nil,   nil,   nil,   nil,   nil,   nil,   301,   nil,
-   nil,   301,   301,   301,   301,   301,   301,   301,   301,   nil,
-   301,   301,   301,   nil,   301,   301,   nil,   301,   301,   301,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   301,
-   nil,   nil,   301,   nil,   nil,   301,   301,   nil,   nil,   301,
-   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   301,   nil,   nil,   nil,   nil,   301,   301,
-   301,   301,   301,   301,   nil,   nil,   nil,   301,   301,   nil,
-   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,   301,   301,
-   301,   nil,   301,   301,   304,   304,   304,   nil,   304,   nil,
-   nil,   nil,   304,   304,   nil,   nil,   nil,   304,   nil,   304,
-   304,   304,   304,   304,   304,   304,   nil,   nil,   nil,   nil,
-   nil,   304,   304,   304,   304,   304,   304,   304,   nil,   nil,
-   304,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,
-   304,   304,   304,   304,   304,   304,   304,   304,   nil,   304,
-   304,   304,   nil,   304,   304,   nil,   304,   304,   304,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,
-   nil,   304,   nil,   nil,   304,   304,   nil,   nil,   304,   nil,
-   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   304,   nil,   nil,   nil,   nil,   304,   304,   304,
-   304,   304,   304,   nil,   nil,   nil,   304,   304,   nil,   nil,
-   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,   304,   304,
-   nil,   304,   304,   305,   305,   305,   nil,   305,   nil,   nil,
-   nil,   305,   305,   nil,   nil,   nil,   305,   nil,   305,   305,
-   305,   305,   305,   305,   305,   nil,   nil,   nil,   nil,   nil,
-   305,   305,   305,   305,   305,   305,   305,   nil,   nil,   305,
-   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,   305,
-   305,   305,   305,   305,   305,   305,   305,   nil,   305,   305,
-   305,   nil,   305,   305,   nil,   305,   305,   305,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
-   305,   nil,   nil,   305,   305,   nil,   nil,   305,   nil,   nil,
-   nil,   nil,   nil,   305,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   305,   nil,   nil,   nil,   nil,   305,   305,   305,   305,
-   305,   305,   nil,   nil,   nil,   305,   305,   nil,   nil,   nil,
-   nil,   nil,   nil,   305,   nil,   nil,   305,   305,   305,   nil,
-   305,   305,   311,   311,   311,   311,   311,   nil,   nil,   nil,
-   311,   311,   nil,   nil,   nil,   311,   nil,   311,   311,   311,
-   311,   311,   311,   311,   nil,   nil,   nil,   nil,   nil,   311,
-   311,   311,   311,   311,   311,   311,   nil,   nil,   311,   nil,
-   nil,   nil,   nil,   nil,   311,   311,   nil,   311,   311,   311,
-   311,   311,   311,   311,   311,   311,   nil,   311,   311,   311,
-   nil,   311,   311,   nil,   311,   311,   311,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,   nil,   311,
-   nil,   nil,   311,   311,   nil,   nil,   311,   nil,   311,   nil,
-   nil,   nil,   311,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   311,   nil,   nil,   nil,   nil,   311,   311,   311,   311,   311,
-   311,   nil,   nil,   nil,   311,   311,   nil,   nil,   nil,   nil,
-   nil,   nil,   311,   nil,   nil,   311,   311,   311,   nil,   311,
-   311,   319,   319,   319,   nil,   319,   nil,   nil,   nil,   319,
-   319,   nil,   nil,   nil,   319,   nil,   319,   319,   319,   319,
-   319,   319,   319,   nil,   nil,   nil,   nil,   nil,   319,   319,
-   319,   319,   319,   319,   319,   nil,   nil,   319,   nil,   nil,
-   nil,   nil,   nil,   nil,   319,   nil,   nil,   319,   319,   319,
-   319,   319,   319,   319,   319,   nil,   319,   319,   319,   nil,
-   319,   319,   nil,   nil,   nil,   319,   nil,   nil,   nil,   nil,
-   nil,  1061,   nil,  1061,  1061,  1061,  1061,  1061,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   319,   nil,  1061,   319,   nil,
-   nil,   319,   319,   nil,   nil,   319,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1061,
-   nil,   nil,   nil,   nil,   319,   319,   319,   319,   319,   319,
-  1061,  1061,   nil,   319,   319,   nil,   nil,   nil,   319,   nil,
-   nil,   319,   nil,   nil,   319,   319,   319,   nil,   319,   319,
-   336,   336,   336,   nil,   336,   nil,   nil,   nil,   336,   336,
-   nil,   nil,   nil,   336,  1061,   336,   336,   336,   336,   336,
-   336,   336,   nil,   nil,   nil,   nil,   nil,   336,   336,   336,
-   336,   336,   336,   336,   nil,   nil,   336,   nil,   nil,   nil,
-   nil,   nil,   nil,   336,   nil,   nil,   336,   336,   336,   336,
-   336,   336,   336,   336,   nil,   336,   336,   336,   nil,   336,
-   336,   nil,   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,
-  1063,   nil,  1063,  1063,  1063,  1063,  1063,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   336,   nil,  1063,   336,   nil,   nil,
-   336,   336,   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1063,   nil,
-   nil,   nil,   nil,   336,   336,   336,   336,   336,   336,  1063,
-  1063,   nil,   336,   336,   nil,   nil,   nil,   nil,   nil,   nil,
-   336,   nil,   nil,   336,   336,   336,   nil,   336,   336,   343,
-   343,   343,   nil,   343,   nil,   nil,   nil,   343,   343,   nil,
-   nil,   nil,   343,  1063,   343,   343,   343,   343,   343,   343,
-   343,   nil,   nil,   nil,   nil,   nil,   343,   343,   343,   343,
-   343,   343,   343,   nil,   nil,   343,   nil,   nil,   nil,   nil,
-   nil,   nil,   343,   nil,   nil,   343,   343,   343,   343,   343,
-   343,   343,   343,   nil,   343,   343,   343,   nil,   343,   343,
-   nil,   343,   343,   343,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   343,   nil,   nil,   343,   nil,   nil,   343,
-   343,   nil,   nil,   343,   nil,   nil,   nil,   nil,   nil,   343,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,
-   nil,   nil,   343,   343,   343,   343,   343,   343,   nil,   nil,
-   nil,   343,   343,   nil,   nil,   nil,   nil,   nil,   nil,   343,
-   nil,   nil,   343,   343,   343,   nil,   343,   343,   345,   345,
-   345,   nil,   345,   nil,   nil,   nil,   345,   345,   nil,   nil,
-   nil,   345,   nil,   345,   345,   345,   345,   345,   345,   345,
-   nil,   nil,   nil,   nil,   nil,   345,   345,   345,   345,   345,
-   345,   345,   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,
-   nil,   345,   nil,   nil,   345,   345,   345,   345,   345,   345,
-   345,   345,   nil,   345,   345,   345,   nil,   345,   345,   nil,
-   345,   345,   345,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   345,   nil,   nil,   345,   345,   nil,   345,   345,
-   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,   345,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   nil,
-   nil,   345,   345,   345,   345,   345,   345,   nil,   nil,   nil,
-   345,   345,   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,
-   nil,   345,   345,   345,   nil,   345,   345,   349,   349,   349,
-   nil,   349,   nil,   nil,   nil,   349,   349,   nil,   nil,   nil,
-   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,   349,   349,   349,   349,   349,
-   349,   349,   349,   349,   349,   nil,   349,   349,   nil,   349,
-   349,   349,   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,   349,   nil,
-   nil,   349,   nil,   349,   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,   nil,   nil,   nil,   349,   nil,   349,
-   349,   349,   349,   nil,   349,   349,   350,   350,   350,   nil,
-   350,   nil,   nil,   nil,   350,   350,   nil,   nil,   nil,   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,   350,   350,   350,   350,   350,   350,
-   350,   350,   350,   350,   nil,   350,   350,   nil,   350,   350,
-   350,   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,   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,   nil,   nil,   nil,   350,   nil,   350,   350,
-   350,   350,   nil,   350,   350,   355,   355,   355,   nil,   355,
-   nil,   nil,   nil,   355,   355,   nil,   nil,   nil,   355,   nil,
-   355,   355,   355,   355,   355,   355,   355,   nil,   nil,   nil,
-   nil,   nil,   355,   355,   355,   355,   355,   355,   355,   nil,
-   nil,   355,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,
-   nil,   355,   355,   355,   355,   355,   355,   355,   355,   nil,
-   355,   355,   355,   nil,   355,   355,   nil,   355,   355,   355,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,
-   nil,   nil,   355,   nil,   nil,   355,   355,   nil,   nil,   355,
-   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   355,   nil,   nil,   nil,   nil,   355,   355,
-   355,   355,   355,   355,   nil,   nil,   nil,   355,   355,   nil,
-   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,   355,
-   355,   nil,   355,   355,   369,   369,   369,   nil,   369,   nil,
-   nil,   nil,   369,   369,   nil,   nil,   nil,   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,   369,   369,   369,   369,   369,   369,   nil,   369,
-   369,   369,   nil,   369,   369,   nil,   nil,   nil,   369,   nil,
-   nil,   nil,   nil,   nil,  1065,   nil,  1065,  1065,  1065,  1065,
-  1065,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   369,   nil,
-  1065,   369,   nil,   nil,   369,   369,   nil,   nil,   369,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1065,   nil,   nil,   nil,   nil,   369,   369,   369,
-   369,   369,   369,  1065,  1065,   nil,   369,   369,   nil,   nil,
-   nil,   nil,   nil,   nil,   369,   nil,   nil,   369,   369,   369,
-   nil,   369,   369,   371,   371,   371,   nil,   371,   nil,   nil,
-   nil,   371,   371,   nil,   nil,   nil,   371,  1065,   371,   371,
-   371,   371,   371,   371,   371,   nil,   nil,   nil,   nil,   nil,
-   371,   371,   371,   371,   371,   371,   371,   nil,   nil,   371,
-   nil,   nil,   nil,   nil,   nil,   nil,   371,   nil,   nil,   371,
-   371,   371,   371,   371,   371,   371,   371,   nil,   371,   371,
-   371,   nil,   371,   371,   nil,   nil,   nil,   371,   nil,   nil,
-   nil,   nil,   nil,  1087,   nil,  1087,  1087,  1087,  1087,  1087,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   371,   nil,  1087,
-   371,   nil,   nil,   371,   371,   nil,   nil,   371,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1087,   nil,   nil,   nil,   nil,   371,   371,   371,   371,
-   371,   371,  1087,  1087,   nil,   371,   371,   nil,   nil,   nil,
-   nil,   nil,   nil,   371,   nil,   nil,   371,   371,   371,   nil,
-   371,   371,   431,   431,   431,   nil,   431,   nil,   nil,   nil,
-   431,   431,   nil,   nil,   nil,   431,  1087,   431,   431,   431,
-   431,   431,   431,   431,   nil,   nil,   nil,   nil,   nil,   431,
-   431,   431,   431,   431,   431,   431,   nil,   nil,   431,   nil,
-   nil,   nil,   nil,   nil,   nil,   431,   nil,   nil,   431,   431,
-   431,   431,   431,   431,   431,   431,   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   431,   nil,   nil,   431,   431,   431,   nil,   431,
-   431,   475,   475,   475,   nil,   475,   nil,   nil,   nil,   475,
-   475,   nil,   nil,   nil,   475,   nil,   475,   475,   475,   475,
-   475,   475,   475,   nil,   nil,   nil,   nil,   nil,   475,   475,
-   475,   475,   475,   475,   475,   nil,   nil,   475,   nil,   nil,
-   nil,   nil,   nil,   nil,   475,   nil,   nil,   475,   475,   475,
-   475,   475,   475,   475,   475,   475,   475,   475,   475,   nil,
-   475,   475,   nil,   475,   475,   475,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   475,   nil,   nil,   475,   nil,
-   nil,   475,   475,   nil,   nil,   475,   nil,   475,   nil,   475,
-   nil,   475,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   475,
-   nil,   nil,   nil,   nil,   475,   475,   475,   475,   475,   475,
-   nil,   nil,   nil,   475,   475,   nil,   nil,   nil,   nil,   nil,
-   nil,   475,   nil,   475,   475,   475,   475,   nil,   475,   475,
-   477,   477,   477,   nil,   477,   nil,   nil,   nil,   477,   477,
-   nil,   nil,   nil,   477,   nil,   477,   477,   477,   477,   477,
-   477,   477,   nil,   nil,   nil,   nil,   nil,   477,   477,   477,
-   477,   477,   477,   477,   nil,   nil,   477,   nil,   nil,   nil,
-   nil,   nil,   nil,   477,   nil,   nil,   477,   477,   477,   477,
-   477,   477,   477,   477,   nil,   477,   477,   477,   nil,   477,
-   477,   nil,   477,   477,   477,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   477,   nil,   nil,   477,   nil,   nil,
-   477,   477,   nil,   nil,   477,   nil,   nil,   nil,   nil,   nil,
-   477,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   477,   nil,
-   nil,   nil,   nil,   477,   477,   477,   477,   477,   477,   nil,
-   nil,   nil,   477,   477,   nil,   nil,   nil,   nil,   nil,   nil,
-   477,   nil,   nil,   477,   477,   477,   nil,   477,   477,   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,   nil,   478,   478,   478,   478,
-   478,   478,   478,   nil,   nil,   478,   nil,   nil,   nil,   nil,
-   nil,   nil,   478,   nil,   nil,   478,   478,   478,   478,   478,
-   478,   478,   478,   nil,   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,   nil,   nil,   478,
-   478,   nil,   nil,   478,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   478,
-   nil,   nil,   478,   478,   478,   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,   nil,   479,   479,   479,   479,   479,
-   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,   nil,
-   nil,   479,   nil,   nil,   479,   479,   479,   479,   479,   479,
-   479,   479,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   479,   nil,
-   nil,   479,   479,   479,   nil,   479,   479,   517,   517,   517,
-   nil,   517,   nil,   nil,   nil,   517,   517,   nil,   nil,   nil,
-   517,   nil,   517,   517,   517,   517,   517,   517,   517,   nil,
-   nil,   nil,   nil,   nil,   517,   517,   517,   517,   517,   517,
-   517,   nil,   nil,   517,   nil,   nil,   nil,   nil,   nil,   nil,
-   517,   nil,   nil,   517,   517,   517,   517,   517,   517,   517,
-   517,   517,   517,   517,   517,   nil,   517,   517,   nil,   517,
-   517,   517,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   517,   nil,   nil,   517,   nil,   nil,   517,   517,   nil,
-   nil,   517,   nil,   517,   nil,   517,   nil,   517,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,   nil,   nil,
-   517,   517,   517,   517,   517,   517,   nil,   nil,   nil,   517,
-   517,   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   517,
-   517,   517,   517,   nil,   517,   517,   520,   520,   520,   nil,
-   520,   nil,   nil,   nil,   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,
-   520,   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,   520,   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,   nil,   nil,   nil,   520,   nil,   520,   520,
-   520,   520,   nil,   520,   520,   522,   522,   522,   nil,   522,
-   nil,   nil,   nil,   522,   522,   nil,   nil,   nil,   522,   nil,
-   522,   522,   522,   522,   522,   522,   522,   nil,   nil,   nil,
-   nil,   nil,   522,   522,   522,   522,   522,   522,   522,   nil,
-   nil,   522,   nil,   nil,   nil,   nil,   nil,   nil,   522,   nil,
-   nil,   522,   522,   522,   522,   522,   522,   522,   522,   nil,
-   522,   522,   522,   nil,   522,   522,   nil,   522,   522,   522,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   522,
-   nil,   nil,   522,   nil,   nil,   522,   522,   nil,   nil,   522,
-   nil,   nil,   nil,   nil,   nil,   522,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   522,   nil,   nil,   nil,   nil,   522,   522,
-   522,   522,   522,   522,   nil,   nil,   nil,   522,   522,   nil,
-   nil,   nil,   nil,   nil,   nil,   522,   nil,   nil,   522,   522,
-   522,   nil,   522,   522,   528,   528,   528,   528,   528,   nil,
-   nil,   nil,   528,   528,   nil,   nil,   nil,   528,   nil,   528,
-   528,   528,   528,   528,   528,   528,   nil,   nil,   nil,   nil,
-   nil,   528,   528,   528,   528,   528,   528,   528,   nil,   nil,
-   528,   nil,   nil,   nil,   nil,   nil,   528,   528,   528,   528,
-   528,   528,   528,   528,   528,   528,   528,   528,   nil,   528,
-   528,   528,   nil,   528,   528,   nil,   528,   528,   528,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,
-   nil,   528,   nil,   nil,   528,   528,   nil,   nil,   528,   nil,
-   528,   nil,   nil,   nil,   528,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   528,   nil,   nil,   nil,   nil,   528,   528,   528,
-   528,   528,   528,   nil,   nil,   nil,   528,   528,   nil,   nil,
-   nil,   nil,   nil,   528,   528,   nil,   nil,   528,   528,   528,
-   nil,   528,   528,   536,   536,   536,   nil,   536,   nil,   nil,
-   nil,   536,   536,   nil,   nil,   nil,   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,   536,   536,   536,   536,   536,   536,   nil,   536,   536,
-   536,   nil,   536,   536,   nil,   nil,   nil,   536,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   536,   nil,   nil,
-   536,   nil,   nil,   536,   536,   nil,   nil,   536,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   536,   536,   536,   536,
-   536,   536,   nil,   nil,   nil,   536,   536,   nil,   nil,   nil,
-   nil,   nil,   nil,   536,   nil,   nil,   536,   536,   536,   nil,
-   536,   536,   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,   nil,   538,
-   538,   538,   538,   538,   538,   538,   nil,   nil,   538,   nil,
-   nil,   nil,   nil,   nil,   nil,   538,   nil,   nil,   538,   538,
-   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,
-   538,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   538,   nil,   538,   538,   538,   538,   nil,   538,
-   538,   544,   544,   544,   nil,   544,   nil,   nil,   nil,   544,
-   544,   nil,   nil,   nil,   544,   nil,   544,   544,   544,   544,
-   544,   544,   544,   nil,   nil,   nil,   nil,   nil,   544,   544,
-   544,   544,   544,   544,   544,   nil,   nil,   544,   nil,   nil,
-   nil,   nil,   nil,   nil,   544,   nil,   nil,   544,   544,   544,
-   544,   544,   544,   544,   544,   nil,   544,   544,   544,   nil,
-   544,   544,   nil,   nil,   nil,   544,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   544,   nil,
-   nil,   544,   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,   544,
-   nil,   nil,   nil,   544,   544,   nil,   nil,   nil,   nil,   nil,
-   nil,   544,   nil,   nil,   544,   544,   544,   nil,   544,   544,
-   547,   547,   547,   nil,   547,   nil,   nil,   nil,   547,   547,
-   nil,   nil,   nil,   547,   nil,   547,   547,   547,   547,   547,
-   547,   547,   nil,   nil,   nil,   nil,   nil,   547,   547,   547,
-   547,   547,   547,   547,   nil,   nil,   547,   nil,   nil,   nil,
-   nil,   nil,   nil,   547,   nil,   nil,   547,   547,   547,   547,
-   547,   547,   547,   547,   nil,   547,   547,   547,   nil,   547,
-   547,   nil,   547,   547,   547,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   547,   nil,   nil,   547,   nil,   nil,
-   547,   547,   nil,   nil,   547,   nil,   nil,   nil,   nil,   nil,
-   547,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   547,   nil,
-   nil,   nil,   nil,   547,   547,   547,   547,   547,   547,   nil,
-   nil,   nil,   547,   547,   nil,   nil,   nil,   nil,   nil,   nil,
-   547,   nil,   nil,   547,   547,   547,   nil,   547,   547,   548,
-   548,   548,   nil,   548,   nil,   nil,   nil,   548,   548,   nil,
-   nil,   nil,   548,   nil,   548,   548,   548,   548,   548,   548,
-   548,   nil,   nil,   nil,   nil,   nil,   548,   548,   548,   548,
-   548,   548,   548,   nil,   nil,   548,   nil,   nil,   nil,   nil,
-   nil,   nil,   548,   nil,   nil,   548,   548,   548,   548,   548,
-   548,   548,   548,   nil,   548,   548,   548,   nil,   548,   548,
-   nil,   548,   548,   548,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   548,   nil,   nil,   548,   nil,   nil,   548,
-   548,   nil,   nil,   548,   nil,   nil,   nil,   nil,   nil,   548,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,
-   nil,   nil,   548,   548,   548,   548,   548,   548,   nil,   nil,
-   nil,   548,   548,   nil,   nil,   nil,   nil,   nil,   nil,   548,
-   nil,   nil,   548,   548,   548,   nil,   548,   548,   553,   553,
-   553,   nil,   553,   nil,   nil,   nil,   553,   553,   nil,   nil,
-   nil,   553,   nil,   553,   553,   553,   553,   553,   553,   553,
-   nil,   nil,   nil,   nil,   nil,   553,   553,   553,   553,   553,
-   553,   553,   nil,   nil,   553,   nil,   nil,   nil,   nil,   nil,
-   nil,   553,   nil,   nil,   553,   553,   553,   553,   553,   553,
-   553,   553,   nil,   553,   553,   553,   nil,   553,   553,   nil,
-   553,   553,   553,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   553,   nil,   nil,   553,   nil,   nil,   553,   553,
-   nil,   nil,   553,   nil,   nil,   nil,   nil,   nil,   553,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,
-   nil,   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,
-   553,   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,
-   nil,   553,   553,   553,   nil,   553,   553,   577,   577,   577,
-   nil,   577,   nil,   nil,   nil,   577,   577,   nil,   nil,   nil,
-   577,   nil,   577,   577,   577,   577,   577,   577,   577,   nil,
-   nil,   nil,   nil,   nil,   577,   577,   577,   577,   577,   577,
-   577,   nil,   nil,   577,   nil,   nil,   nil,   nil,   nil,   nil,
-   577,   nil,   nil,   577,   577,   577,   577,   577,   577,   577,
-   577,   577,   577,   577,   577,   nil,   577,   577,   nil,   577,
-   577,   577,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   577,   nil,   nil,   577,   nil,   nil,   577,   577,   nil,
-   nil,   577,   nil,   577,   nil,   577,   nil,   577,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   577,   nil,   nil,   nil,   nil,
-   577,   577,   577,   577,   577,   577,   nil,   nil,   nil,   577,
-   577,   nil,   nil,   nil,   nil,   nil,   nil,   577,   nil,   577,
-   577,   577,   577,   nil,   577,   577,   589,   589,   589,   nil,
-   589,   nil,   nil,   nil,   589,   589,   nil,   nil,   nil,   589,
-   nil,   589,   589,   589,   589,   589,   589,   589,   nil,   nil,
-   nil,   nil,   nil,   589,   589,   589,   589,   589,   589,   589,
-   nil,   nil,   589,   nil,   nil,   nil,   nil,   nil,   nil,   589,
-   nil,   nil,   589,   589,   589,   589,   589,   589,   589,   589,
-   nil,   589,   589,   589,   nil,   589,   589,   nil,   589,   589,
-   589,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   589,   nil,   nil,   589,   nil,   nil,   589,   589,   nil,   nil,
-   589,   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   589,   nil,   nil,   nil,   nil,   589,
-   589,   589,   589,   589,   589,   nil,   nil,   nil,   589,   589,
-   nil,   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,
-   589,   589,   nil,   589,   589,   595,   595,   595,   nil,   595,
-   nil,   nil,   nil,   595,   595,   nil,   nil,   nil,   595,   nil,
-   595,   595,   595,   595,   595,   595,   595,   nil,   nil,   nil,
-   nil,   nil,   595,   595,   595,   595,   595,   595,   595,   nil,
-   nil,   595,   nil,   nil,   nil,   nil,   nil,   nil,   595,   nil,
-   nil,   595,   595,   595,   595,   595,   595,   595,   595,   nil,
-   595,   595,   595,   nil,   595,   595,   nil,   595,   595,   595,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   595,
-   nil,   nil,   595,   nil,   nil,   595,   595,   nil,   nil,   595,
-   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   595,   nil,   nil,   nil,   nil,   595,   595,
-   595,   595,   595,   595,   nil,   nil,   nil,   595,   595,   nil,
-   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,   595,   595,
-   595,   nil,   595,   595,   617,   617,   617,   nil,   617,   nil,
-   nil,   nil,   617,   617,   nil,   nil,   nil,   617,   nil,   617,
-   617,   617,   617,   617,   617,   617,   nil,   nil,   nil,   nil,
-   nil,   617,   617,   617,   617,   617,   617,   617,   nil,   nil,
-   617,   nil,   nil,   nil,   nil,   nil,   nil,   617,   nil,   nil,
-   617,   617,   617,   617,   617,   617,   617,   617,   nil,   617,
-   617,   617,   nil,   617,   617,   nil,   617,   617,   617,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   617,   nil,
-   nil,   617,   nil,   nil,   617,   617,   nil,   nil,   617,   nil,
-   nil,   nil,   nil,   nil,   617,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   617,   nil,   nil,   nil,   nil,   617,   617,   617,
-   617,   617,   617,   nil,   nil,   nil,   617,   617,   nil,   nil,
-   nil,   nil,   nil,   nil,   617,   nil,   nil,   617,   617,   617,
-   nil,   617,   617,   657,   657,   657,   nil,   657,   nil,   nil,
-   nil,   657,   657,   nil,   nil,   nil,   657,   nil,   657,   657,
-   657,   657,   657,   657,   657,   nil,   nil,   nil,   nil,   nil,
-   657,   657,   657,   657,   657,   657,   657,   nil,   nil,   657,
-   nil,   nil,   nil,   nil,   nil,   nil,   657,   nil,   nil,   657,
-   657,   657,   657,   657,   657,   657,   657,   nil,   657,   657,
-   657,   nil,   657,   657,   nil,   657,   657,   657,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   657,   nil,   nil,
-   657,   nil,   nil,   657,   657,   nil,   nil,   657,   nil,   657,
-   nil,   nil,   nil,   657,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   657,   nil,   nil,   nil,   nil,   657,   657,   657,   657,
-   657,   657,   nil,   nil,   nil,   657,   657,   nil,   nil,   nil,
-   nil,   nil,   nil,   657,   nil,   nil,   657,   657,   657,   nil,
-   657,   657,   658,   658,   658,   nil,   658,   nil,   nil,   nil,
-   658,   658,   nil,   nil,   nil,   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,
-   658,   658,   658,   658,   658,   658,   nil,   658,   658,   658,
-   nil,   658,   658,   nil,   658,   658,   658,   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,   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,   658,   658,   nil,   658,
-   658,   659,   659,   659,   nil,   659,   nil,   nil,   nil,   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,   659,   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,   659,   nil,   659,
-   nil,   659,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   659,
-   nil,   nil,   nil,   nil,   659,   659,   659,   659,   659,   659,
-   nil,   nil,   nil,   659,   659,   nil,   nil,   nil,   nil,   nil,
-   nil,   659,   nil,   659,   659,   659,   659,   nil,   659,   659,
-   662,   662,   662,   662,   662,   nil,   nil,   nil,   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,   662,   662,   nil,   662,   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,   662,   nil,   nil,   nil,
-   662,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,
-   nil,   nil,   nil,   662,   662,   662,   662,   662,   662,   nil,
-   nil,   nil,   662,   662,   nil,   nil,   nil,   nil,   nil,   nil,
-   662,   nil,   nil,   662,   662,   662,   nil,   662,   662,   663,
-   663,   663,   nil,   663,   nil,   nil,   nil,   663,   663,   nil,
-   nil,   nil,   663,   nil,   663,   663,   663,   663,   663,   663,
-   663,   nil,   nil,   nil,   nil,   nil,   663,   663,   663,   663,
-   663,   663,   663,   nil,   nil,   663,   nil,   nil,   nil,   nil,
-   nil,   nil,   663,   nil,   nil,   663,   663,   663,   663,   663,
-   663,   663,   663,   nil,   663,   663,   663,   nil,   663,   663,
-   nil,   663,   663,   663,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   663,   nil,   nil,   663,   nil,   nil,   663,
-   663,   nil,   nil,   663,   nil,   nil,   nil,   nil,   nil,   663,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,
-   nil,   nil,   663,   663,   663,   663,   663,   663,   nil,   nil,
-   nil,   663,   663,   nil,   nil,   nil,   nil,   nil,   nil,   663,
-   nil,   nil,   663,   663,   663,   nil,   663,   663,   666,   666,
-   666,   nil,   666,   nil,   nil,   nil,   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,   666,   666,   666,   666,   nil,   666,   666,   nil,
-   666,   666,   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,   666,   nil,   666,   nil,   666,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,   nil,
-   nil,   666,   666,   666,   666,   666,   666,   nil,   nil,   nil,
-   666,   666,   nil,   nil,   nil,   nil,   nil,   nil,   666,   nil,
-   666,   666,   666,   666,   nil,   666,   666,   667,   667,   667,
-   nil,   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,   nil,
-   667,   nil,   nil,   667,   667,   667,   667,   667,   667,   667,
-   667,   667,   667,   667,   667,   nil,   667,   667,   nil,   667,
-   667,   667,   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,   667,   nil,
-   nil,   667,   nil,   nil,   nil,   667,   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,   nil,   nil,   nil,   667,   nil,   667,
-   667,   667,   667,   nil,   667,   667,   668,   668,   668,   nil,
-   668,   nil,   nil,   nil,   668,   668,   nil,   nil,   nil,   668,
-   nil,   668,   668,   668,   668,   668,   668,   668,   nil,   nil,
-   nil,   nil,   nil,   668,   668,   668,   668,   668,   668,   668,
-   nil,   nil,   668,   nil,   nil,   nil,   nil,   nil,   nil,   668,
-   nil,   nil,   668,   668,   668,   668,   668,   668,   668,   668,
-   nil,   668,   668,   668,   nil,   668,   668,   nil,   668,   668,
-   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   668,   nil,   nil,   668,   nil,   nil,   668,   668,   nil,   nil,
-   668,   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   668,   nil,   nil,   nil,   nil,   668,
-   668,   668,   668,   668,   668,   nil,   nil,   nil,   668,   668,
-   nil,   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   668,
-   668,   668,   nil,   668,   668,   669,   669,   669,   nil,   669,
-   nil,   nil,   nil,   669,   669,   nil,   nil,   nil,   669,   nil,
-   669,   669,   669,   669,   669,   669,   669,   nil,   nil,   nil,
-   nil,   nil,   669,   669,   669,   669,   669,   669,   669,   nil,
-   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,   669,   nil,
-   nil,   669,   669,   669,   669,   669,   669,   669,   669,   nil,
-   669,   669,   669,   nil,   669,   669,   nil,   669,   669,   669,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   669,
-   nil,   nil,   669,   nil,   nil,   669,   669,   nil,   nil,   669,
-   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   669,   nil,   nil,   nil,   nil,   669,   669,
-   669,   669,   669,   669,   nil,   nil,   nil,   669,   669,   nil,
-   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,   669,
-   669,   nil,   669,   669,   674,   674,   674,   nil,   674,   nil,
-   nil,   nil,   674,   674,   nil,   nil,   nil,   674,   nil,   674,
-   674,   674,   674,   674,   674,   674,   nil,   nil,   nil,   nil,
-   nil,   674,   674,   674,   674,   674,   674,   674,   nil,   nil,
-   674,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,
-   674,   674,   674,   674,   674,   674,   674,   674,   nil,   674,
-   674,   674,   nil,   674,   674,   nil,   674,   674,   674,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,
-   nil,   674,   nil,   nil,   674,   674,   nil,   nil,   674,   nil,
-   nil,   nil,   nil,   nil,   674,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   674,   nil,   nil,   nil,   nil,   674,   674,   674,
-   674,   674,   674,   nil,   nil,   nil,   674,   674,   nil,   nil,
-   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,   674,   674,
-   nil,   674,   674,   675,   675,   675,   nil,   675,   nil,   nil,
-   nil,   675,   675,   nil,   nil,   nil,   675,   nil,   675,   675,
-   675,   675,   675,   675,   675,   nil,   nil,   nil,   nil,   nil,
-   675,   675,   675,   675,   675,   675,   675,   nil,   nil,   675,
-   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   675,
-   675,   675,   675,   675,   675,   675,   675,   nil,   675,   675,
-   675,   nil,   675,   675,   nil,   675,   675,   675,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,
-   675,   nil,   nil,   675,   675,   nil,   nil,   675,   nil,   nil,
-   nil,   nil,   nil,   675,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   675,   nil,   nil,   nil,   nil,   675,   675,   675,   675,
-   675,   675,   nil,   nil,   nil,   675,   675,   nil,   nil,   nil,
-   nil,   nil,   nil,   675,   nil,   nil,   675,   675,   675,   nil,
-   675,   675,   699,   699,   699,   nil,   699,   nil,   nil,   nil,
-   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,
-   699,   nil,   nil,   nil,   nil,   699,   699,   699,   699,   699,
-   699,   nil,   nil,   nil,   699,   699,   nil,   nil,   nil,   nil,
-   nil,   nil,   699,   nil,   nil,   699,   699,   699,   nil,   699,
-   699,   702,   702,   702,   nil,   702,   nil,   nil,   nil,   702,
-   702,   nil,   nil,   nil,   702,   nil,   702,   702,   702,   702,
-   702,   702,   702,   nil,   nil,   nil,   nil,   nil,   702,   702,
-   702,   702,   702,   702,   702,   nil,   nil,   702,   nil,   nil,
-   nil,   nil,   nil,   nil,   702,   nil,   nil,   702,   702,   702,
-   702,   702,   702,   702,   702,   nil,   702,   702,   702,   nil,
-   702,   702,   nil,   702,   702,   702,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,   702,   nil,
-   nil,   702,   702,   nil,   nil,   702,   nil,   nil,   nil,   nil,
-   nil,   702,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   702,
-   nil,   nil,   nil,   nil,   702,   702,   702,   702,   702,   702,
-   nil,   nil,   nil,   702,   702,   nil,   nil,   nil,   nil,   nil,
-   nil,   702,   nil,   nil,   702,   702,   702,   nil,   702,   702,
-   706,   706,   706,   nil,   706,   nil,   nil,   nil,   706,   706,
-   nil,   nil,   nil,   706,   nil,   706,   706,   706,   706,   706,
-   706,   706,   nil,   nil,   nil,   nil,   nil,   706,   706,   706,
-   706,   706,   706,   706,   nil,   nil,   706,   nil,   nil,   nil,
-   nil,   nil,   nil,   706,   nil,   nil,   706,   706,   706,   706,
-   706,   706,   706,   706,   nil,   706,   706,   706,   nil,   706,
-   706,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   706,   706,   706,   706,   706,   706,   nil,
-   nil,   nil,   706,   706,   nil,   nil,   nil,   nil,   nil,   nil,
-   706,   nil,   nil,   706,   706,   706,   nil,   706,   706,   717,
-   717,   717,   nil,   717,   nil,   nil,   nil,   717,   717,   nil,
-   nil,   nil,   717,   nil,   717,   717,   717,   717,   717,   717,
-   717,   nil,   nil,   nil,   nil,   nil,   717,   717,   717,   717,
-   717,   717,   717,   nil,   nil,   717,   nil,   nil,   nil,   nil,
-   nil,   nil,   717,   nil,   nil,   717,   717,   717,   717,   717,
-   717,   717,   717,   nil,   717,   717,   717,   nil,   717,   717,
-   nil,   nil,   nil,   717,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   717,   nil,   nil,   717,   nil,   nil,   717,
-   717,   nil,   nil,   717,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   717,   717,   717,   717,   717,   717,   nil,   nil,
-   nil,   717,   717,   nil,   nil,   nil,   nil,   nil,   nil,   717,
-   nil,   nil,   717,   717,   717,   nil,   717,   717,   723,   723,
-   723,   nil,   723,   nil,   nil,   nil,   723,   723,   nil,   nil,
-   nil,   723,   nil,   723,   723,   723,   723,   723,   723,   723,
-   nil,   nil,   nil,   nil,   nil,   723,   723,   723,   723,   723,
-   723,   723,   nil,   nil,   723,   nil,   nil,   nil,   nil,   nil,
-   nil,   723,   nil,   nil,   723,   723,   723,   723,   723,   723,
-   723,   723,   nil,   723,   723,   723,   nil,   723,   723,   nil,
-   723,   723,   723,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   723,   nil,   nil,   723,   nil,   nil,   723,   723,
-   nil,   nil,   723,   nil,   723,   nil,   nil,   nil,   723,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   723,   nil,   nil,   nil,
-   nil,   723,   723,   723,   723,   723,   723,   nil,   nil,   nil,
-   723,   723,   nil,   nil,   nil,   nil,   nil,   nil,   723,   nil,
-   nil,   723,   723,   723,   nil,   723,   723,   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,   nil,   728,   728,   728,   728,   728,   728,
-   728,   nil,   nil,   728,   nil,   nil,   nil,   nil,   nil,   nil,
-   728,   nil,   nil,   728,   728,   728,   728,   728,   728,   728,
-   728,   728,   728,   728,   728,   nil,   728,   728,   nil,   728,
-   728,   728,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   728,   nil,   nil,   728,   nil,   nil,   728,   728,   nil,
-   nil,   728,   nil,   728,   nil,   nil,   nil,   728,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   728,   nil,   nil,   nil,   nil,
-   728,   728,   728,   728,   728,   728,   nil,   nil,   nil,   728,
-   728,   nil,   nil,   nil,   nil,   nil,   nil,   728,   nil,   728,
-   728,   728,   728,   nil,   728,   728,   731,   731,   731,   nil,
-   731,   nil,   nil,   nil,   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,
-   731,   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,   731,   nil,   nil,   nil,   nil,   731,
-   731,   731,   731,   731,   731,   nil,   nil,   nil,   731,   731,
-   nil,   nil,   nil,   nil,   nil,   nil,   731,   nil,   731,   731,
-   731,   731,   nil,   731,   731,   745,   745,   745,   nil,   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,   nil,   745,   nil,
-   nil,   745,   745,   745,   745,   745,   745,   745,   745,   nil,
-   745,   745,   745,   nil,   745,   745,   nil,   745,   745,   745,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   745,
-   nil,   nil,   745,   nil,   nil,   745,   745,   nil,   nil,   745,
-   nil,   745,   nil,   nil,   nil,   745,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   745,   nil,   nil,   nil,   nil,   745,   745,
-   745,   745,   745,   745,   nil,   nil,   nil,   745,   745,   nil,
-   nil,   nil,   nil,   nil,   nil,   745,   nil,   nil,   745,   745,
-   745,   nil,   745,   745,   757,   757,   757,   nil,   757,   nil,
-   nil,   nil,   757,   757,   nil,   nil,   nil,   757,   nil,   757,
-   757,   757,   757,   757,   757,   757,   nil,   nil,   nil,   nil,
-   nil,   757,   757,   757,   757,   757,   757,   757,   nil,   nil,
-   757,   nil,   nil,   nil,   nil,   nil,   nil,   757,   nil,   nil,
-   757,   757,   757,   757,   757,   757,   757,   757,   757,   757,
-   757,   757,   nil,   757,   757,   nil,   757,   757,   757,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   757,   nil,
-   nil,   757,   nil,   nil,   757,   757,   nil,   nil,   757,   nil,
-   757,   nil,   757,   nil,   757,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   757,   nil,   nil,   nil,   nil,   757,   757,   757,
-   757,   757,   757,   nil,   nil,   nil,   757,   757,   nil,   nil,
-   nil,   nil,   nil,   nil,   757,   nil,   757,   757,   757,   757,
-   nil,   757,   757,   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,   nil,
-   780,   780,   780,   780,   780,   780,   780,   nil,   nil,   780,
-   nil,   nil,   nil,   nil,   nil,   nil,   780,   nil,   nil,   780,
-   780,   780,   780,   780,   780,   780,   780,   nil,   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,   nil,   nil,   nil,
-   nil,   nil,   nil,   780,   nil,   nil,   780,   780,   780,   nil,
-   780,   780,   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,   nil,   802,
-   802,   802,   802,   802,   802,   802,   nil,   nil,   802,   nil,
-   nil,   nil,   nil,   nil,   nil,   802,   nil,   nil,   802,   802,
-   802,   802,   802,   802,   802,   802,   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   802,   nil,   nil,   802,   802,   802,   nil,   802,
-   802,   810,   810,   810,   nil,   810,   nil,   nil,   nil,   810,
-   810,   nil,   nil,   nil,   810,   nil,   810,   810,   810,   810,
-   810,   810,   810,   nil,   nil,   nil,   nil,   nil,   810,   810,
-   810,   810,   810,   810,   810,   nil,   nil,   810,   nil,   nil,
-   nil,   nil,   nil,   nil,   810,   nil,   nil,   810,   810,   810,
-   810,   810,   810,   810,   810,   nil,   810,   810,   810,   nil,
-   810,   810,   nil,   810,   810,   810,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   810,   nil,   nil,   810,   nil,
-   nil,   810,   810,   nil,   nil,   810,   nil,   nil,   nil,   nil,
-   nil,   810,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   810,
-   nil,   nil,   nil,   nil,   810,   810,   810,   810,   810,   810,
-   nil,   nil,   nil,   810,   810,   nil,   nil,   nil,   nil,   nil,
-   nil,   810,   nil,   nil,   810,   810,   810,   nil,   810,   810,
-   823,   823,   823,   nil,   823,   nil,   nil,   nil,   823,   823,
-   nil,   nil,   nil,   823,   nil,   823,   823,   823,   823,   823,
-   823,   823,   nil,   nil,   nil,   nil,   nil,   823,   823,   823,
-   823,   823,   823,   823,   nil,   nil,   823,   nil,   nil,   nil,
-   nil,   nil,   nil,   823,   nil,   nil,   823,   823,   823,   823,
-   823,   823,   823,   823,   nil,   823,   823,   823,   nil,   823,
-   823,   nil,   823,   823,   823,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   823,   nil,   nil,   823,   nil,   nil,
-   823,   823,   nil,   nil,   823,   nil,   nil,   nil,   nil,   nil,
-   823,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   823,   nil,
-   nil,   nil,   nil,   823,   823,   823,   823,   823,   823,   nil,
-   nil,   nil,   823,   823,   nil,   nil,   nil,   nil,   nil,   nil,
-   823,   nil,   nil,   823,   823,   823,   nil,   823,   823,   824,
-   824,   824,   nil,   824,   nil,   nil,   nil,   824,   824,   nil,
-   nil,   nil,   824,   nil,   824,   824,   824,   824,   824,   824,
-   824,   nil,   nil,   nil,   nil,   nil,   824,   824,   824,   824,
-   824,   824,   824,   nil,   nil,   824,   nil,   nil,   nil,   nil,
-   nil,   nil,   824,   nil,   nil,   824,   824,   824,   824,   824,
-   824,   824,   824,   nil,   824,   824,   824,   nil,   824,   824,
-   nil,   824,   824,   824,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   824,   nil,   nil,   824,   nil,   nil,   824,
-   824,   nil,   nil,   824,   nil,   nil,   nil,   nil,   nil,   824,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,
-   nil,   nil,   824,   824,   824,   824,   824,   824,   nil,   nil,
-   nil,   824,   824,   nil,   nil,   nil,   nil,   nil,   nil,   824,
-   nil,   nil,   824,   824,   824,   nil,   824,   824,   825,   825,
-   825,   nil,   825,   nil,   nil,   nil,   825,   825,   nil,   nil,
-   nil,   825,   nil,   825,   825,   825,   825,   825,   825,   825,
-   nil,   nil,   nil,   nil,   nil,   825,   825,   825,   825,   825,
-   825,   825,   nil,   nil,   825,   nil,   nil,   nil,   nil,   nil,
-   nil,   825,   nil,   nil,   825,   825,   825,   825,   825,   825,
-   825,   825,   nil,   825,   825,   825,   nil,   825,   825,   nil,
-   825,   825,   825,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   825,   nil,   nil,   825,   nil,   nil,   825,   825,
-   nil,   nil,   825,   nil,   nil,   nil,   nil,   nil,   825,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,   nil,
-   nil,   825,   825,   825,   825,   825,   825,   nil,   nil,   nil,
-   825,   825,   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,
-   nil,   825,   825,   825,   nil,   825,   825,   826,   826,   826,
-   nil,   826,   nil,   nil,   nil,   826,   826,   nil,   nil,   nil,
-   826,   nil,   826,   826,   826,   826,   826,   826,   826,   nil,
-   nil,   nil,   nil,   nil,   826,   826,   826,   826,   826,   826,
-   826,   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,   nil,
-   826,   nil,   nil,   826,   826,   826,   826,   826,   826,   826,
-   826,   nil,   826,   826,   826,   nil,   826,   826,   nil,   826,
-   826,   826,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   826,   nil,   nil,   826,   nil,   nil,   826,   826,   nil,
-   nil,   826,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,   nil,   nil,
-   826,   826,   826,   826,   826,   826,   nil,   nil,   nil,   826,
-   826,   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,
-   826,   826,   826,   nil,   826,   826,   828,   828,   828,   nil,
-   828,   nil,   nil,   nil,   828,   828,   nil,   nil,   nil,   828,
-   nil,   828,   828,   828,   828,   828,   828,   828,   nil,   nil,
-   nil,   nil,   nil,   828,   828,   828,   828,   828,   828,   828,
-   nil,   nil,   828,   nil,   nil,   nil,   nil,   nil,   nil,   828,
-   nil,   nil,   828,   828,   828,   828,   828,   828,   828,   828,
-   nil,   828,   828,   828,   nil,   828,   828,   nil,   828,   828,
-   828,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   828,   nil,   nil,   828,   nil,   nil,   828,   828,   nil,   nil,
-   828,   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,   828,
-   828,   828,   828,   828,   828,   nil,   nil,   nil,   828,   828,
-   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,
-   828,   828,   nil,   828,   828,   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,   nil,   861,   861,   861,   861,   861,   861,   861,   nil,
-   nil,   861,   nil,   nil,   nil,   nil,   nil,   nil,   861,   nil,
-   nil,   861,   861,   861,   861,   861,   861,   861,   861,   nil,
-   861,   861,   861,   nil,   861,   861,   nil,   861,   861,   861,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   861,
-   nil,   nil,   861,   nil,   nil,   861,   861,   nil,   nil,   861,
-   nil,   nil,   nil,   nil,   nil,   861,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   861,   nil,   nil,   nil,   nil,   861,   861,
-   861,   861,   861,   861,   nil,   nil,   nil,   861,   861,   nil,
-   nil,   nil,   nil,   nil,   nil,   861,   nil,   nil,   861,   861,
-   861,   nil,   861,   861,   868,   868,   868,   nil,   868,   nil,
-   nil,   nil,   868,   868,   nil,   nil,   nil,   868,   nil,   868,
-   868,   868,   868,   868,   868,   868,   nil,   nil,   nil,   nil,
-   nil,   868,   868,   868,   868,   868,   868,   868,   nil,   nil,
-   868,   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,   nil,
-   868,   868,   868,   868,   868,   868,   868,   868,   nil,   868,
-   868,   868,   nil,   868,   868,   nil,   868,   868,   868,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,
-   nil,   868,   nil,   nil,   868,   868,   nil,   nil,   868,   nil,
-   nil,   nil,   nil,   nil,   868,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   868,   nil,   nil,   nil,   nil,   868,   868,   868,
-   868,   868,   868,   nil,   nil,   nil,   868,   868,   nil,   nil,
-   nil,   nil,   nil,   nil,   868,   nil,   nil,   868,   868,   868,
-   nil,   868,   868,   877,   877,   877,   nil,   877,   nil,   nil,
-   nil,   877,   877,   nil,   nil,   nil,   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,   877,   877,   877,   877,   877,   877,   nil,   877,   877,
-   877,   nil,   877,   877,   nil,   877,   877,   877,   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,   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,
-   nil,   nil,   nil,   877,   nil,   nil,   877,   877,   877,   nil,
-   877,   877,   919,   919,   919,   nil,   919,   nil,   nil,   nil,
-   919,   919,   nil,   nil,   nil,   919,   nil,   919,   919,   919,
-   919,   919,   919,   919,   nil,   nil,   nil,   nil,   nil,   919,
-   919,   919,   919,   919,   919,   919,   nil,   nil,   919,   nil,
-   nil,   nil,   nil,   nil,   nil,   919,   nil,   nil,   919,   919,
-   919,   919,   919,   919,   919,   919,   919,   919,   919,   919,
-   nil,   919,   919,   nil,   919,   919,   919,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   919,   nil,   nil,   919,
-   nil,   nil,   919,   919,   nil,   nil,   919,   nil,   nil,   nil,
-   919,   nil,   919,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   919,   nil,   nil,   nil,   nil,   919,   919,   919,   919,   919,
-   919,   nil,   nil,   nil,   919,   919,   nil,   nil,   nil,   nil,
-   nil,   nil,   919,   nil,   919,   919,   919,   919,   nil,   919,
-   919,   920,   920,   920,   nil,   920,   nil,   nil,   nil,   920,
-   920,   nil,   nil,   nil,   920,   nil,   920,   920,   920,   920,
-   920,   920,   920,   nil,   nil,   nil,   nil,   nil,   920,   920,
-   920,   920,   920,   920,   920,   nil,   nil,   920,   nil,   nil,
-   nil,   nil,   nil,   nil,   920,   nil,   nil,   920,   920,   920,
-   920,   920,   920,   920,   920,   nil,   920,   920,   920,   nil,
-   920,   920,   nil,   920,   920,   920,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   920,   nil,   nil,   920,   nil,
-   nil,   920,   920,   nil,   nil,   920,   nil,   nil,   nil,   nil,
-   nil,   920,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   920,
-   nil,   nil,   nil,   nil,   920,   920,   920,   920,   920,   920,
-   nil,   nil,   nil,   920,   920,   nil,   nil,   nil,   nil,   nil,
-   nil,   920,   nil,   nil,   920,   920,   920,   nil,   920,   920,
-   932,   932,   932,   nil,   932,   nil,   nil,   nil,   932,   932,
-   nil,   nil,   nil,   932,   nil,   932,   932,   932,   932,   932,
-   932,   932,   nil,   nil,   nil,   nil,   nil,   932,   932,   932,
-   932,   932,   932,   932,   nil,   nil,   932,   nil,   nil,   nil,
-   nil,   nil,   nil,   932,   nil,   nil,   932,   932,   932,   932,
-   932,   932,   932,   932,   nil,   932,   932,   932,   nil,   932,
-   932,   nil,   nil,   nil,   932,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   932,   nil,   nil,   932,   nil,   nil,
-   932,   932,   nil,   nil,   932,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   932,   932,   932,   932,   932,   932,   nil,
-   nil,   nil,   932,   932,   nil,   nil,   nil,   nil,   nil,   nil,
-   932,   nil,   nil,   932,   932,   932,   nil,   932,   932,   941,
-   941,   941,   nil,   941,   nil,   nil,   nil,   941,   941,   nil,
-   nil,   nil,   941,   nil,   941,   941,   941,   941,   941,   941,
-   941,   nil,   nil,   nil,   nil,   nil,   941,   941,   941,   941,
-   941,   941,   941,   nil,   nil,   941,   nil,   nil,   nil,   nil,
-   nil,   nil,   941,   nil,   nil,   941,   941,   941,   941,   941,
-   941,   941,   941,   nil,   941,   941,   941,   nil,   941,   941,
-   nil,   nil,   nil,   941,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   941,   nil,   nil,   941,   nil,   nil,   941,
-   941,   nil,   nil,   941,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   941,   941,   941,   941,   941,   941,   nil,   nil,
-   nil,   941,   941,   nil,   nil,   nil,   nil,   nil,   nil,   941,
-   nil,   nil,   941,   941,   941,   nil,   941,   941,   949,   949,
-   949,   nil,   949,   nil,   nil,   nil,   949,   949,   nil,   nil,
-   nil,   949,   nil,   949,   949,   949,   949,   949,   949,   949,
-   nil,   nil,   nil,   nil,   nil,   949,   949,   949,   949,   949,
-   949,   949,   nil,   nil,   949,   nil,   nil,   nil,   nil,   nil,
-   nil,   949,   nil,   nil,   949,   949,   949,   949,   949,   949,
-   949,   949,   nil,   949,   949,   949,   nil,   949,   949,   nil,
-   949,   949,   949,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   949,   nil,   nil,   949,   nil,   nil,   949,   949,
-   nil,   nil,   949,   nil,   949,   nil,   nil,   nil,   949,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   949,   nil,   nil,   nil,
-   nil,   949,   949,   949,   949,   949,   949,   nil,   nil,   nil,
-   949,   949,   nil,   nil,   nil,   nil,   nil,   nil,   949,   nil,
-   nil,   949,   949,   949,   nil,   949,   949,   992,   992,   992,
-   nil,   992,   nil,   nil,   nil,   992,   992,   nil,   nil,   nil,
-   992,   nil,   992,   992,   992,   992,   992,   992,   992,   nil,
-   nil,   nil,   nil,   nil,   992,   992,   992,   992,   992,   992,
-   992,   nil,   nil,   992,   nil,   nil,   nil,   nil,   nil,   nil,
-   992,   nil,   nil,   992,   992,   992,   992,   992,   992,   992,
-   992,   nil,   992,   992,   992,   nil,   992,   992,   nil,   nil,
-   nil,   992,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   992,   nil,   nil,   992,   nil,   nil,   992,   992,   nil,
-   nil,   992,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   992,   992,   992,   992,   992,   992,   nil,   nil,   nil,   992,
-   992,   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,
-   992,   992,   992,   nil,   992,   992,  1006,  1006,  1006,   nil,
-  1006,   nil,   nil,   nil,  1006,  1006,   nil,   nil,   nil,  1006,
-   nil,  1006,  1006,  1006,  1006,  1006,  1006,  1006,   nil,   nil,
-   nil,   nil,   nil,  1006,  1006,  1006,  1006,  1006,  1006,  1006,
-   nil,   nil,  1006,   nil,   nil,   nil,   nil,   nil,   nil,  1006,
-   nil,   nil,  1006,  1006,  1006,  1006,  1006,  1006,  1006,  1006,
-   nil,  1006,  1006,  1006,   nil,  1006,  1006,   nil,  1006,  1006,
-  1006,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1006,   nil,   nil,  1006,   nil,   nil,  1006,  1006,   nil,   nil,
-  1006,   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1006,   nil,   nil,   nil,   nil,  1006,
-  1006,  1006,  1006,  1006,  1006,   nil,   nil,   nil,  1006,  1006,
-   nil,   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,
-  1006,  1006,   nil,  1006,  1006,  1039,  1039,  1039,   nil,  1039,
-   nil,   nil,   nil,  1039,  1039,   nil,   nil,   nil,  1039,   nil,
-  1039,  1039,  1039,  1039,  1039,  1039,  1039,   nil,   nil,   nil,
-   nil,   nil,  1039,  1039,  1039,  1039,  1039,  1039,  1039,   nil,
-   nil,  1039,   nil,   nil,   nil,   nil,   nil,   nil,  1039,   nil,
-   nil,  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,
-  1039,  1039,  1039,   nil,  1039,  1039,   nil,  1039,  1039,  1039,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1039,
-   nil,   nil,  1039,   nil,   nil,  1039,  1039,   nil,   nil,  1039,
-   nil,  1039,   nil,  1039,   nil,  1039,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1039,   nil,   nil,   nil,   nil,  1039,  1039,
-  1039,  1039,  1039,  1039,   nil,   nil,   nil,  1039,  1039,   nil,
-   nil,   nil,   nil,   nil,   nil,  1039,   nil,  1039,  1039,  1039,
-  1039,   nil,  1039,  1039,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,   nil,   nil,
-   nil,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,   nil,   nil,   nil,   nil,   nil,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,   nil,    11,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,    11,
-    11,    11,    11,    11,    11,    11,   nil,   nil,    11,    11,
-   nil,   nil,   nil,    11,    11,    11,    11,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    11,    11,   nil,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    11,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,   nil,   nil,   nil,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,   nil,   nil,   nil,   nil,   nil,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,   nil,   nil,
-    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,
-    12,   nil,    12,    12,    12,    12,    12,    12,    12,   nil,
-   nil,    12,    12,   nil,   nil,   nil,    12,    12,    12,    12,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    12,    12,   nil,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,   nil,   nil,    12,
-    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,   nil,   nil,   nil,    75,    75,    75,
-    75,    75,    75,    75,    75,    75,    75,   nil,   nil,   nil,
-   nil,   nil,    75,    75,    75,    75,    75,    75,    75,    75,
-    75,    75,    75,    75,   nil,    75,   nil,   nil,   nil,   nil,
-   nil,   nil,    75,    75,   nil,    75,    75,    75,    75,    75,
-    75,    75,   nil,   nil,    75,    75,   nil,   nil,   nil,    75,
-    75,    75,    75,   nil,   nil,   nil,   nil,   nil,    75,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,   nil,    75,
-    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
-   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    75,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   nil,   nil,   nil,
-   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
-   nil,   nil,   nil,   nil,   nil,   105,   105,   105,   105,   105,
-   105,   105,   105,   105,   105,   105,   105,   nil,   105,   nil,
-   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,   105,   105,
-   105,   105,   105,   105,   105,   nil,   nil,   105,   105,   nil,
-   nil,   nil,   105,   105,   105,   105,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-   105,   nil,   105,   105,   105,   105,   105,   105,   105,   105,
-   105,   105,   105,   nil,   nil,   105,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   105,   422,   422,   422,   422,
-   422,   422,   422,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   422,   422,   422,   422,   422,   422,   422,
-   nil,   nil,   nil,   422,   422,   422,   422,   422,   422,   422,
-   422,   422,   422,   nil,   nil,   nil,   nil,   nil,   422,   422,
-   422,   422,   422,   422,   422,   422,   422,   nil,   nil,   422,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   422,   422,
-   nil,   422,   422,   422,   422,   422,   422,   422,   nil,   nil,
-   422,   422,   nil,   nil,   nil,   422,   422,   422,   422,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   422,   422,   nil,   422,   422,   422,   422,   422,
-   422,   422,   422,   422,   422,   422,   nil,   nil,   422,   422,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   422,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   422,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   654,
-   654,   654,   654,   nil,   nil,   nil,   654,   654,   654,   654,
-   654,   654,   654,   654,   654,   654,   nil,   nil,   nil,   nil,
-   nil,   654,   654,   654,   654,   654,   654,   654,   654,   654,
-   nil,   nil,   654,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   654,   654,   nil,   654,   654,   654,   654,   654,   654,
-   654,   nil,   nil,   654,   654,   nil,   nil,   nil,   654,   654,
-   654,   654,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   654,   654,   nil,   654,   654,
-   654,   654,   654,   654,   654,   654,   654,   654,   654,   nil,
-   nil,   654,   654,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   654,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   654,   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,   nil,
-   nil,   nil,   nil,   nil,   766,   766,   766,   766,   766,   766,
-   766,   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,   766,   766,   766,   766,   nil,   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,   nil,   nil,   766,   nil,   nil,   nil,   nil,   228,
-   228,   nil,   nil,   228,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   228,   228,   766,   228,   228,   228,   228,   228,
-   228,   228,   nil,   nil,   228,   228,   nil,   nil,   nil,   228,
-   228,   228,   228,   nil,   nil,   nil,   nil,   nil,   228,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   228,   228,   nil,   228,
-   228,   228,   228,   228,   228,   228,   228,   228,   228,   228,
-   nil,   nil,   228,   nil,   nil,   nil,   nil,   229,   229,   nil,
-   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   229,   229,   228,   229,   229,   229,   229,   229,   229,   229,
-   nil,   nil,   229,   229,   nil,   nil,   nil,   229,   229,   229,
-   229,   nil,   nil,   nil,   nil,   nil,   229,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   229,   229,   nil,   229,   229,   229,
-   229,   229,   229,   229,   229,   229,   229,   229,   nil,   nil,
-   229,   nil,   nil,   nil,   nil,   473,   473,   nil,   nil,   473,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   473,   473,
-   229,   473,   473,   473,   473,   473,   473,   473,   nil,   nil,
-   473,   473,   nil,   nil,   nil,   473,   473,   473,   473,   nil,
-   nil,   nil,   nil,   nil,   473,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   473,   473,   nil,   473,   473,   473,   473,   473,
-   473,   473,   473,   473,   473,   473,   nil,   nil,   473,   nil,
-   nil,   nil,   nil,   474,   474,   nil,   nil,   474,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   474,   474,   473,   474,
-   474,   474,   474,   474,   474,   474,   nil,   nil,   474,   474,
-   nil,   nil,   nil,   474,   474,   474,   474,   nil,   nil,   nil,
-   nil,   nil,   474,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   474,   474,   nil,   474,   474,   474,   474,   474,   474,   474,
-   474,   474,   474,   474,   nil,   nil,   474,   nil,   nil,   nil,
-   nil,   539,   539,   nil,   nil,   539,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   539,   539,   474,   539,   539,   539,
-   539,   539,   539,   539,   nil,   nil,   539,   539,   nil,   nil,
-   nil,   539,   539,   539,   539,   nil,   nil,   nil,   nil,   nil,
-   539,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   539,   539,
-   nil,   539,   539,   539,   539,   539,   539,   539,   539,   539,
-   539,   539,   nil,   nil,   539,   nil,   nil,   nil,   nil,   540,
-   540,   nil,   nil,   540,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   540,   540,   539,   540,   540,   540,   540,   540,
-   540,   540,   nil,   nil,   540,   540,   nil,   nil,   nil,   540,
-   540,   540,   540,   nil,   nil,   nil,   nil,   nil,   540,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   540,   540,   nil,   540,
-   540,   540,   540,   540,   540,   540,   540,   540,   540,   540,
-   nil,   nil,   540,   nil,   nil,   nil,   nil,   549,   549,   nil,
-   nil,   549,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   549,   549,   540,   549,   549,   549,   549,   549,   549,   549,
-   nil,   nil,   549,   549,   nil,   nil,   nil,   549,   549,   549,
-   549,   nil,   nil,   nil,   nil,   nil,   549,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   549,   549,   nil,   549,   549,   549,
-   549,   549,   549,   549,   549,   549,   549,   549,   nil,   nil,
-   549,   nil,   nil,   nil,   nil,   550,   550,   nil,   nil,   550,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,   550,
-   549,   550,   550,   550,   550,   550,   550,   550,   nil,   nil,
-   550,   550,   nil,   nil,   nil,   550,   550,   550,   550,   nil,
-   nil,   nil,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   550,   550,   nil,   550,   550,   550,   550,   550,
-   550,   550,   550,   550,   550,   550,   nil,   nil,   550,   nil,
-   nil,   nil,   nil,   578,   578,   nil,   nil,   578,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   578,   578,   550,   578,
-   578,   578,   578,   578,   578,   578,   nil,   nil,   578,   578,
-   nil,   nil,   nil,   578,   578,   578,   578,   nil,   nil,   nil,
-   nil,   nil,   578,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   578,   578,   nil,   578,   578,   578,   578,   578,   578,   578,
-   578,   578,   578,   578,   nil,   nil,   578,   nil,   nil,   nil,
-   nil,   579,   579,   nil,   nil,   579,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   579,   579,   578,   579,   579,   579,
-   579,   579,   579,   579,   nil,   nil,   579,   579,   nil,   nil,
-   nil,   579,   579,   579,   579,   nil,   nil,   nil,   nil,   nil,
-   579,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   579,   579,
-   nil,   579,   579,   579,   579,   579,   579,   579,   579,   579,
-   579,   579,   nil,   nil,   579,   nil,   nil,   nil,   nil,   660,
-   660,   nil,   nil,   660,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   660,   660,   579,   660,   660,   660,   660,   660,
-   660,   660,   nil,   nil,   660,   660,   nil,   nil,   nil,   660,
-   660,   660,   660,   nil,   nil,   nil,   nil,   nil,   660,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   660,   660,   nil,   660,
-   660,   660,   660,   660,   660,   660,   660,   660,   660,   660,
-   nil,   nil,   660,   nil,   nil,   nil,   nil,   661,   661,   nil,
-   nil,   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   661,   661,   660,   661,   661,   661,   661,   661,   661,   661,
-   nil,   nil,   661,   661,   nil,   nil,   nil,   661,   661,   661,
-   661,   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   661,   661,   nil,   661,   661,   661,
-   661,   661,   661,   661,   661,   661,   661,   661,   nil,   nil,
-   661,   nil,   nil,   nil,   nil,   755,   755,   nil,   nil,   755,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   755,   755,
-   661,   755,   755,   755,   755,   755,   755,   755,   nil,   nil,
-   755,   755,   nil,   nil,   nil,   755,   755,   755,   755,   nil,
-   nil,   nil,   nil,   nil,   755,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   755,   755,   nil,   755,   755,   755,   755,   755,
-   755,   755,   755,   755,   755,   755,   nil,   nil,   755,   nil,
-   nil,   nil,   nil,   756,   756,   nil,   nil,   756,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   756,   756,   755,   756,
-   756,   756,   756,   756,   756,   756,   nil,   nil,   756,   756,
-   nil,   nil,   nil,   756,   756,   756,   756,   nil,   nil,   nil,
-   nil,   nil,   756,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   756,   756,   nil,   756,   756,   756,   756,   756,   756,   756,
-   756,   756,   756,   756,   nil,   983,   756,   983,   983,   983,
-   983,   983,   986,   nil,   986,   986,   986,   986,   986,   nil,
-   nil,   983,   nil,   nil,   nil,   nil,   756,   nil,   986,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   983,   nil,   nil,   nil,   nil,   nil,   nil,
-   986,   nil,   983,   983,   983,   983,   nil,   nil,   nil,   986,
-   986,   986,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1035,  1035,   nil,   nil,  1035,   nil,   nil,   nil,   983,   nil,
-   nil,   nil,   nil,  1035,  1035,   986,  1035,  1035,  1035,  1035,
-  1035,  1035,  1035,   nil,   nil,  1035,  1035,   nil,   nil,   nil,
-  1035,  1035,  1035,  1035,   nil,   nil,   nil,   nil,   nil,  1035,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1035,  1035,   nil,
-  1035,  1035,  1035,  1035,  1035,  1035,  1035,  1035,  1035,  1035,
-  1035,   nil,   nil,  1035,   nil,   nil,   nil,   nil,  1040,  1040,
-   nil,   nil,  1040,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1040,  1040,  1035,  1040,  1040,  1040,  1040,  1040,  1040,
-  1040,   nil,   nil,  1040,  1040,   nil,   nil,   nil,  1040,  1040,
-  1040,  1040,   nil,   nil,   nil,   nil,   nil,  1040,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1040,  1040,   nil,  1040,  1040,
-  1040,  1040,  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,
-   nil,  1040,   nil,   nil,   nil,   nil,  1041,  1041,   nil,   nil,
-  1041,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1041,
-  1041,  1040,  1041,  1041,  1041,  1041,  1041,  1041,  1041,   nil,
-   nil,  1041,  1041,   nil,   nil,   nil,  1041,  1041,  1041,  1041,
-   nil,   nil,   nil,   nil,   nil,  1041,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1041,  1041,   nil,  1041,  1041,  1041,  1041,
-  1041,  1041,  1041,  1041,  1041,  1041,  1041,   nil,  1059,  1041,
-  1059,  1059,  1059,  1059,  1059,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1059,   nil,   nil,   nil,   nil,  1041,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1059,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1059,  1059,  1059,  1059,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1059 ]
-
-racc_action_pointer = [
-   nil,    96,  2022,    98,   nil,   142,   nil,   nil,  6081,    17,
-   nil, 24012, 24145,     2,   nil,    42,    76,    -4,   145,   242,
-   344,   nil,   -65,  6220,  2302,   209,   nil,   -40,   nil,   165,
-  1088,  1220,  6359,  6498,  6637,   nil,  2162,  6776,  6915,   nil,
-   119,   377,   480,   199,   164,  7054,  7193,   878,  7332,   164,
-   312,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1352,   nil,  7471,   nil,   nil,   -22,   nil,  7610,  7749,   nil,
-   nil,  7888,  8027,   227,   nil, 24278,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   195,
-   208,   232,   240,   nil,   nil, 24411,   nil,   nil,   nil,   nil,
-   nil,   nil,     0,   nil,   nil,   136,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  8166,   nil,
-   nil,   nil,   nil,  8305,  8444,  8583,  8722,  8861,   262,   nil,
-   143,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,  2302,  9000,  9139,  9278,  9417,  9556,  9695, 24878, 24946,
-   nil,   nil,  9834,  9973, 10112,   nil,   nil,   326,   -21,   104,
-   345,   147,   280,   347,   nil, 10251,  2442,   350, 10390, 10529,
- 10668, 10807, 10946, 11085, 11224, 11363, 11502, 11641, 11780, 11919,
- 12058, 12197, 12336, 12475, 12614, 12753, 12892, 13031, 13170, 13309,
-   nil,   nil,   nil,   nil, 13448,   nil,   nil,   nil,  1880,   nil,
-   nil,   358, 13587, 13726,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil, 13865,   nil,  2442,   nil,   328,   332,   nil, 14004,
-   381, 14143,   nil,   nil, 14282, 14421,   nil,   nil,   202,   nil,
-   nil, 14560,  1170,   nil,   372,  2582,   398,   441,   407, 14699,
-  2722,   358,   368,   380,   494,   448,   nil,   474,   452,   193,
-   nil,   nil,   nil,   501,   167,   478, 14838,   nil,   513,   567,
-   504,   nil,   587, 14977,   nil, 15116,  2862,  1182,   535, 15255,
- 15394,   nil,   705,    -8,     8, 15533,  3002,  3142,   203,   658,
-   548,   -19,    -7,   516,   626,    24,   659,   nil,   nil, 15672,
-   nil, 15811,   378,   382,   416,   460,   462,   470,   481,   514,
-   518,   nil,   552,   nil,   nil,   nil,   nil,   745,   nil,   307,
-   nil,   375,   nil,   349,   nil,   568,   382,   nil,   572,   483,
-   nil,   576,   -59,   nil,   587,   -58,   nil,   580,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil, 24544,   nil,   nil,   nil,   nil,   602,   nil,   nil,
-   600, 15950,   603,   nil,   nil,   593,   nil,   591,   151,   723,
-   nil,   nil,  2022,   nil,   nil,   nil,   nil,   nil,  2162,   650,
-   nil,   nil,   661,   675,   597,   649,  1484,   nil,   nil,   nil,
-   272,   408,   724,   nil,   nil,  1616,  1748,   nil,   nil,   nil,
-   -26,   nil,   726, 25014, 25082, 16089,   170, 16228, 16367, 16506,
-  3142,  3282,   738,   761,   760,   764,   769,   781,  1170,  1302,
-  1434,  3422,  3562,  3702,  3842,  3982,  4122,  1178,  1310,  4262,
-  4402,  2582,   900,   841,   nil,  1880,   nil,   nil,   nil,   nil,
-   725,   nil,   nil,   nil,   735,   nil,   nil, 16645,   nil,   nil,
- 16784,   nil, 16923,   nil,   196,   nil,   nil,   nil, 17062,  1302,
-   754,   742,   741,   nil,   nil,   743, 17201,   750, 17340, 25150,
- 25218,   620,   790,   nil, 17479,   752,   nil, 17618, 17757, 25286,
- 25354,  1038,  2722, 17896,   875,   889,   786,   nil,   nil,   436,
-   450,   818,   801,   nil,   507,   828,  3282,   916,   nil,  3422,
-    63,   921,   922,   917,   930,   nil,   nil, 18035, 25422, 25490,
-    26,   nil,   347,   483,   -20,   nil,   640,   nil,   834, 18174,
-   nil,   854,   nil,   nil,   nil, 18313,   nil,   881,   nil,   817,
-   824,   nil,   826,   827,   828,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   817,   820,   nil,   nil, 18452,   nil,   nil,
-   nil,   913,   nil,   nil,   nil,   923,   nil,   nil,   925,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   200,   nil,   nil,   266,   nil,   nil,   nil,   848,   nil,   nil,
-   857,   nil,  3562,   nil, 24677,   nil,   861, 18591, 18730, 18869,
- 25558, 25626, 19008, 19147,   651,   901, 19286, 19425, 19564, 19703,
-   900,   nil,   nil,   nil, 19842, 19981,   901,   nil,   nil,   nil,
-   215,   236,   544,   680,   874,   874,   nil,   -57,   981,   -19,
-   nil,   nil,   897,   nil,  1003,   nil,   884,   nil,   926, 20120,
-   nil,   nil, 20259,   nil,   nil,   -95, 20398,   888,   nil,   892,
-    -9,    -5,   943,    25,   650,   944,   916, 20537,   nil,   980,
-   -14,   185,   nil, 20676,   nil,   nil,   nil,   nil, 20815,   nil,
-   nil, 20954,   nil,   nil,   nil,   756,   nil,  1034,   nil,   nil,
-   nil,   nil,   nil,  1040,   nil, 21093,   924,    29,    30,   162,
-   163,  3702,   nil,   652,   nil, 25694, 25762, 21232,   nil,   nil,
-   nil,   736,  3842,  3982,  1018,  1151, 24810,    -7,    34,   926,
-   231,   nil,   nil,   720,  1283,   nil,  1415,   nil,   338,   nil,
- 21371,   nil,   851,   nil,   925,   933,  1055,   940,   nil,   nil,
-   nil,   nil,  1185,  4122,   nil,   nil,   nil,   nil,   nil,   954,
-   nil,   939, 21510,   944,   267,   273,   816,   952,   nil,  2862,
- 21649,   nil,   948,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil, 21788, 21927, 22066, 22205,   277, 22344,   nil,
-   nil,  1547,   nil,  4262,   nil,   nil,   967,   nil,   108,   nil,
-   nil,   nil,   nil,   953,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,  4402,   nil,   955,   998,   nil,   nil,   534,  1078,   nil,
-   nil, 22483,   nil,  4542,  1080,   nil,   nil,   nil, 22622,    69,
-    68,  1082,   619,   725,   nil,   966,  4682, 22761,   227,  1084,
-  1090,   977,   462,   nil,   nil,   nil,  4822,  4962,   980,   994,
-   994,   nil,   nil,   nil,   997,  1004,   nil,  1011,  1016,   nil,
-  1017,   nil,   nil,  1022,   918,   987,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1012,   nil,  1022,   320,   nil,   nil, 22900,
- 23039,  3002,  1024,  1025,   nil,  1040,  1045,  1046,   nil,  1068,
-  1054,  1035, 23178,   nil,   nil,   nil,   nil,  5102,  5242,   nil,
-     9, 23317,   nil,   nil,   nil,    35,   nil,   nil,   nil, 23456,
-  5382,   nil,   nil,  1175,   471,   nil,   nil,   nil,   nil,   nil,
-  1096,  1075,  1181,  1345,   nil,   nil,  1679,   nil,   474,   nil,
-   611,   nil,  6797,   nil,   nil,   nil,   nil,  1069,  1074,   nil,
-   268,   nil,   nil, 25824,   nil,   nil, 25831,   nil,  6936,   nil,
-   nil,  1107, 23595,   755,  1176,   nil,  1227,  5522,    43,   120,
-   769,  1186,   135,   nil,  5662,   nil, 23734,    30,   nil,   nil,
-  5802,  5942,   nil,   nil,   598,   nil,   nil,   nil,  1119,  1126,
-  1129,  1136,  1081,  1213,  1143,   nil,   nil,  1149,  1150,  1151,
-  1157,   nil,  1172,   nil,   784, 25899,   nil,   nil,  1299, 23873,
- 25967, 26035,   144,   825,   nil,   nil,   nil,   nil,  1298,  1300,
-   nil,  1477,  8048,   nil,   nil,   nil,   nil,  1183,   nil, 26097,
-   nil, 14720,   nil, 14859,   nil, 15693,   nil,   nil,  1223,  1226,
-   nil,  1192,   145,   158,   168,   169,   nil,   nil,   nil,   nil,
-  1191,  1193,  1201,  1203,  1206,   170,   nil, 15832,   nil,   nil,
-   nil,   nil,  1219,   nil ]
-
-racc_action_default = [
-    -1,  -651,  -650,  -651,    -2,  -637,    -4,    -5,  -651,    -8,
-    -9,  -651,  -651,  -651,   -36,  -651,  -651,   -40,  -651,  -651,
-  -294,   -52,  -639,  -651,   -57,   -62,   -63,   -64,   -68,  -271,
-  -271,  -271,  -309,  -342,  -343,   -80,  -650,   -84,   -92,   -94,
-  -651,  -538,  -539,  -651,  -651,  -651,  -651,  -230,  -651,  -639,
-  -244,  -285,  -286,  -287,  -288,  -289,  -290,  -291,  -292,  -293,
-  -623,  -296,  -298,  -305,  -307,  -317,  -319,  -651,  -651,   -59,
-   -59,  -637,  -651,  -327,  -334,  -651,  -344,  -345,  -347,  -348,
-  -349,  -350,  -351,  -352,  -353,  -354,  -355,  -356,  -365,  -420,
-  -468,  -469,  -470,  -471,  -472,  -650,  -475,  -650,  -650,  -650,
-  -650,  -650,  -650,  -511,  -512,  -650,  -514,  -520,  -522,  -523,
-  -524,  -525,  -621,  -527,  -528,  -622,  -530,  -531,  -532,  -533,
-  -534,  -535,  -536,  -537,  -542,  -543,  1094,    -3,  -638,  -646,
-  -647,  -648,    -7,  -651,  -651,  -651,  -651,  -651,  -651,   -24,
-  -651,  -123,  -124,  -125,  -126,  -127,  -128,  -129,  -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,  -194,
-  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,   -29,
-  -130,  -650,  -651,  -651,  -651,  -651,  -651,  -650,  -651,  -651,
-  -633,  -634,  -651,  -651,  -639,  -640,   -56,  -651,  -538,  -539,
-  -651,  -294,  -651,  -651,  -236,  -651,  -650,  -651,  -215,  -216,
-  -651,  -651,  -651,  -651,  -651,  -651,  -651,  -651,  -651,  -651,
-  -651,  -651,  -651,  -651,  -651,  -651,  -651,  -651,  -651,  -651,
-  -245,  -246,  -247,  -248,  -651,  -358,  -448,  -428,  -651,  -635,
-  -636,   -69,  -650,  -651,  -316,  -357,  -432,  -441,  -443,   -75,
-  -438,   -76,  -639,   -77,  -251,  -266,  -650,  -650,  -270,  -651,
-  -276,  -651,  -650,  -615,  -651,  -651,   -78,   -79,  -637,   -17,
-   -18,  -651,   -21,   -22,   -82,  -650,  -639,  -651,   -85,   -88,
-  -650,  -100,  -101,  -651,  -651,  -108,  -309,  -312,  -639,  -651,
-  -342,  -343,  -346,  -439,  -651,   -90,  -651,   -96,  -304,  -521,
-  -651,  -224,  -225,  -651,  -237,  -651,  -650,  -300,  -639,  -650,
-  -650,  -318,   -58,  -651,  -651,  -651,  -650,  -650,  -637,  -651,
-  -638,  -538,  -539,  -651,  -651,  -294,  -651,  -375,  -376,  -651,
-  -330,  -651,  -123,  -124,  -163,  -164,  -165,  -181,  -186,  -193,
-  -196,  -337,  -651,  -538,  -539,  -610,  -611,  -570,  -473,  -651,
-  -496,  -651,  -498,  -651,  -500,  -651,  -651,  -480,  -651,  -651,
-  -486,  -651,  -651,  -492,  -651,  -651,  -494,  -651,  -513,  -515,
-  -516,  -517,  -518,    -6,  -649,   -30,   -31,   -32,   -33,   -34,
-   -10,   -11,  -651,   -26,   -27,   -28,  -131,  -651,   -37,   -39,
-  -281,  -651,  -651,  -280,   -38,  -651,   -41,  -651,  -294,   -49,
-   -51,  -204,  -256,  -276,   -53,   -54,   -42,  -205,  -256,  -639,
-  -261,  -262,  -650,  -650,  -624,  -625,  -271,  -436,  -626,  -627,
-  -625,  -624,  -271,  -435,  -437,  -626,  -627,   -48,  -212,   -55,
-  -639,  -315,  -651,  -651,  -651,  -650,  -304,  -651,  -651,  -651,
-  -213,  -214,  -217,  -218,  -219,  -220,  -221,  -222,  -226,  -227,
-  -228,  -229,  -231,  -232,  -233,  -234,  -235,  -238,  -239,  -240,
-  -241,  -639,  -249,  -651,  -449,  -271,  -624,  -625,   -66,   -70,
-  -639,  -272,  -445,  -448,  -639,  -311,  -267,  -651,  -275,  -268,
-  -651,  -273,  -651,  -277,  -651,  -618,  -620,   -16,  -638,   -20,
-  -651,  -639,   -81,  -302,   -97,   -86,  -651,  -639,  -650,  -651,
-  -651,  -107,  -651,  -521,  -651,   -93,   -98,  -651,  -651,  -651,
-  -651,  -250,  -242,  -651,  -460,  -651,  -639,  -299,  -252,  -643,
-  -643,  -651,  -651,  -613,  -643,  -651,  -650,  -366,  -367,  -650,
-  -651,  -651,  -651,  -651,  -651,  -361,  -455,  -650,  -651,  -651,
-  -304,   -59,  -118,  -119,  -651,  -121,  -651,  -294,  -650,  -651,
-  -335,  -548,  -339,  -631,  -632,  -651,  -421,  -570,  -424,  -609,
-  -609,  -553,  -555,  -555,  -555,  -569,  -571,  -572,  -573,  -574,
-  -575,  -576,  -577,  -578,  -651,  -580,  -582,  -584,  -589,  -591,
-  -592,  -594,  -599,  -601,  -602,  -604,  -605,  -606,  -651,  -474,
-  -497,  -502,  -503,  -505,  -476,  -499,  -477,  -501,  -478,  -479,
-  -651,  -482,  -484,  -651,  -485,  -488,  -489,  -651,  -490,  -491,
-  -651,  -519,  -650,   -25,  -651,   -35,  -284,  -651,  -651,  -650,
-  -651,  -651,  -651,  -651,  -440,  -651,  -263,  -265,  -651,  -651,
-   -71,  -259,  -260,  -433,  -651,  -651,   -73,  -434,  -314,  -641,
-  -624,  -625,  -624,  -625,  -639,  -651,  -427,  -650,   -65,  -429,
-  -445,  -258,  -651,  -446,  -651,  -310,  -650,  -274,  -278,  -651,
-  -616,  -617,  -651,   -19,   -23,   -83,  -651,   -89,   -95,  -639,
-  -624,  -625,  -650,  -628,  -106,  -651,   -91,  -651,  -211,  -223,
-  -639,  -650,  -359,  -650,  -297,  -364,  -301,  -253,  -645,  -644,
-  -255,  -645,  -306,  -308,  -614,  -650,  -368,  -650,   -60,  -369,
-  -370,  -322,  -323,  -651,  -325,  -651,  -639,  -624,  -625,  -628,
-  -303,  -650,  -118,  -119,  -120,  -651,  -651,  -650,  -328,  -544,
-  -546,  -331,  -650,  -650,  -570,  -570,  -651,  -639,  -651,  -639,
-  -651,  -551,  -552,  -651,  -651,  -562,  -651,  -565,  -651,  -567,
-  -651,  -377,  -651,  -379,  -381,  -384,  -387,  -639,  -583,  -593,
-  -603,  -607,  -651,  -650,  -481,  -483,  -487,  -493,  -495,  -651,
-  -132,  -282,  -651,  -639,  -624,  -625,  -625,  -624,   -50,  -257,
-  -651,  -642,  -650,   -44,  -207,   -45,  -208,   -72,   -46,  -210,
-   -47,  -209,   -74,  -651,  -651,  -651,  -651,  -440,  -651,  -409,
-  -410,  -639,  -412,  -650,  -431,  -430,  -651,  -442,  -650,  -444,
-  -269,  -279,  -619,   -87,  -440,   -99,  -313,   -13,   -15,  -360,
-  -362,  -650,  -467,  -461,  -650,  -462,  -463,  -643,  -651,  -363,
-  -371,  -651,  -373,  -650,  -651,   -61,  -324,  -451,  -651,  -651,
-  -440,  -651,  -118,  -119,  -122,  -639,  -650,  -651,  -651,  -651,
-  -651,  -639,  -651,  -340,  -612,  -422,  -650,  -650,  -414,  -639,
-  -609,  -590,  -608,  -554,  -555,  -555,  -581,  -555,  -555,  -600,
-  -555,  -578,  -595,  -639,  -651,  -651,  -386,  -579,  -504,  -507,
-  -508,  -509,  -510,  -651,   -12,  -283,  -440,   -43,  -206,  -264,
-  -651,  -243,  -609,  -609,  -391,  -650,  -650,  -650,  -408,  -651,
-  -639,  -578,  -586,  -587,  -597,  -450,   -67,  -650,  -650,  -466,
-  -651,  -651,  -465,  -254,  -320,  -651,  -374,  -321,  -452,  -651,
-  -650,  -326,  -440,  -651,  -651,  -332,  -336,  -338,  -547,  -549,
-  -548,  -651,  -651,  -651,  -423,  -550,  -651,  -558,  -651,  -560,
-  -651,  -563,  -651,  -566,  -568,  -378,  -380,  -382,  -385,  -506,
-  -651,  -389,  -390,  -399,  -393,  -401,  -651,  -404,  -651,  -406,
-  -411,  -651,  -651,  -585,  -651,  -447,  -650,  -650,  -538,  -539,
-  -651,  -651,  -294,  -464,  -650,  -453,  -651,  -650,  -329,  -545,
-  -650,  -650,  -425,  -426,  -639,  -416,  -418,  -419,  -555,  -555,
-  -555,  -555,  -651,  -651,  -609,  -588,  -392,  -650,  -650,  -650,
-  -650,  -598,  -650,  -413,  -596,  -651,  -304,   -14,  -460,  -650,
-  -651,  -651,  -304,  -650,  -454,  -456,  -457,  -458,  -651,  -651,
-  -415,  -651,  -651,  -556,  -559,  -561,  -564,  -383,  -388,  -651,
-  -396,  -651,  -398,  -651,  -402,  -651,  -405,  -407,  -303,  -628,
-  -459,  -639,  -624,  -625,  -628,  -303,  -372,  -333,  -341,  -417,
-  -555,  -650,  -650,  -650,  -650,  -440,  -557,  -651,  -394,  -397,
-  -400,  -403,  -650,  -395 ]
-
-racc_goto_table = [
-     6,   449,   318,   233,   295,   295,   295,   131,   144,   144,
-   228,   381,   456,   462,   277,   555,     9,     4,   279,   351,
-   353,   354,     9,   721,   358,   574,   139,   220,   566,   569,
-   345,   332,   332,   433,   434,   519,   317,   128,   147,   147,
-   598,   409,   763,   356,   357,   281,   289,   291,   440,   446,
-   420,   440,   771,   772,   848,   467,   510,   440,   700,   781,
-   335,   664,   505,   605,   697,   724,   332,   697,   787,   339,
-   127,   858,   144,   131,   503,   509,   347,   899,   286,   290,
-   896,   741,   742,   692,   744,   754,   415,   416,   417,   418,
-   889,   864,   926,   390,   833,   392,   394,   397,   400,   403,
-   406,   314,   144,   390,   297,   297,   297,   727,   730,   132,
-  1015,   389,   734,   978,   976,  1031,     1,   640,   352,   352,
-   643,   407,   352,  1017,     2,   138,   296,   296,   296,   588,
-   316,   590,   652,   847,   938,   236,   359,   703,   530,   219,
-   368,   429,     9,   422,   738,   545,   865,   293,   306,   307,
-   278,   419,   929,   690,   654,   343,   561,   689,   385,   562,
-   366,   758,   382,   775,   777,   779,   592,   346,   348,   556,
-   349,   350,    19,   369,   447,   876,   589,   878,    19,  1010,
-   468,   371,   762,   591,   352,   352,   352,   352,  1031,   766,
-   960,   519,   977,   237,   928,   930,  1014,   596,  1079,   295,
-   885,   387,   237,   237,   237,   700,    19,   323,   323,   768,
-   512,  1017,   513,   697,   697,   838,   869,   687,  1045,   613,
-   745,   427,   854,   940,   388,   450,   466,   781,   473,   413,
-  1057,   906,    19,   976,   391,   393,   903,   237,   237,   743,
-   396,   237,   363,   399,  1027,   937,   317,   402,   405,   684,
-   769,   991,   908,   866,   295,   295,   874,   456,   462,   792,
-   793,   836,   408,   877,   295,   894,   891,   899,  1025,   700,
-   595,   nil,   nil,   605,   nil,   444,   445,   457,   896,   nil,
-   450,   nil,   nil,   nil,   469,   470,   nil,   nil,   nil,   896,
-   nil,   nil,   nil,   nil,   518,   518,   827,   nil,    19,   nil,
-   390,   546,   nil,   237,   237,   237,   237,    19,   570,   542,
-   131,   694,   709,   332,   539,   317,   432,   432,   524,   nil,
-   317,   844,   nil,   712,   nil,   529,   nil,   nil,   nil,  1037,
-   332,   549,   nil,   712,   428,   439,   nil,   nil,   439,   nil,
-   528,   535,   nil,   965,   439,   707,   nil,   558,   563,   781,
-   781,   746,   nil,   716,   578,   297,   571,   572,   870,   543,
-   131,  1046,   712,   332,   297,   332,   nil,   nil,   944,   nil,
-   nil,   896,   nil,   527,   947,   981,   982,   296,   286,  1076,
-   314,   951,   290,   nil,   nil,   314,   296,   nil,   nil,   956,
-   957,    19,   237,   437,   237,   237,   437,   237,   511,   nil,
-   nil,   nil,   437,   237,   237,   943,   352,   514,   890,   531,
-   nil,  1011,   nil,   nil,   537,   916,    19,   881,   882,   144,
-   nil,   560,   564,   573,   nil,   468,   nil,   447,   660,   613,
-   665,   879,   880,   803,   840,   nil,   nil,   653,   nil,   nil,
-   605,   605,   704,   559,   456,   462,   nil,   295,   nil,   147,
-   518,   518,   237,   237,   671,   967,   969,   700,   971,   973,
-   nil,   974,   237,  1008,   817,   nil,   697,   781,   781,   923,
-   822,   466,   670,   450,   nil,   nil,   nil,  1058,   676,   nil,
-   nil,    19,   685,   440,   nil,    19,   nil,   952,   nil,   323,
-    19,   813,   815,   440,   440,   718,   nil,   818,   820,   440,
-   440,   546,   935,   671,   nil,   672,   323,  1070,   nil,   546,
-   295,   677,   nil,   nil,   nil,   843,    19,   nil,   nil,   nil,
-   nil,   688,   457,   nil,   nil,   237,    19,    19,   nil,   nil,
-   332,   875,   nil,   nil,   855,   nil,   450,   466,   332,   586,
-   712,   586,   nil,   nil,   950,   953,   nil,   466,   nil,   295,
-   840,   nil,   nil,   nil,   672,   751,   962,   nil,  1077,  1078,
-   nil,   nil,   nil,   nil,   nil,   nil,   735,   nil,   nil,   737,
-   nil,   nil,   739,   nil,   nil,   450,   466,   nil,   nil,  1053,
-  1054,  1055,  1056,   nil,   nil,   895,   760,   897,   457,   696,
-   nil,   nil,   nil,   nil,   nil,   nil,   613,   613,   457,   nil,
-   nil,   nil,   nil,   nil,   720,   635,   613,   637,   613,   898,
-   641,   900,   nil,   641,   nil,   997,   814,   816,  1024,   nil,
-  1004,   923,   819,   821,   923,   nil,   923,   457,   nil,   nil,
-   nil,   295,   nil,   917,   nil,   440,   nil,   nil,   nil,   nil,
-   761,  1086,   927,   835,   nil,   237,   767,   nil,   nil,   nil,
-     6,   144,   nil,   nil,   nil,   nil,   nil,   450,   466,   nil,
-   nil,   nil,   nil,   931,   925,   665,     9,   799,   nil,   800,
-   nil,   546,   nil,  1047,   nil,   nil,   808,   834,   nil,  1048,
-  1049,   147,   845,  1085,   nil,   829,   nil,   nil,   nil,   nil,
-   665,   nil,   nil,   nil,   518,   nil,   nil,   923,    19,   923,
-   332,   923,   883,   923,   nil,   nil,   323,   nil,   237,   457,
-   671,   332,   932,   nil,   323,   nil,   nil,   nil,   nil,   852,
-   nil,   856,   nil,   237,   nil,   923,   nil,   665,   nil,   295,
-   nil,   nil,   nil,   862,   nil,   862,    19,   nil,   812,    19,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,   nil,   nil,
-   888,   871,   466,   nil,   nil,   450,   nil,   nil,   918,   237,
-   nil,   672,   nil,   144,   677,   237,   nil,   nil,   nil,   nil,
-   439,   814,   816,   821,   819,   nil,   nil,  1018,   nil,   nil,
-   439,   439,   nil,   nil,   665,   nil,   439,   439,   nil,   nil,
-   nil,   nil,   nil,   913,  1028,   nil,   nil,  1029,   613,  1019,
-   857,  1020,   nil,  1021,   nil,   457,   nil,   nil,   nil,   nil,
-   518,   nil,   888,  1071,   945,   931,   nil,   432,   931,  1030,
-   nil,  1032,    19,   nil,   712,   nil,   nil,   nil,   437,   237,
-   954,   nil,    19,   nil,   nil,   nil,   829,   nil,   437,   437,
-   nil,    29,   nil,   nil,   437,   437,   nil,    29,   nil,   nil,
-   nil,   939,   942,   nil,   795,   nil,   665,   795,   nil,   nil,
-   nil,   932,    29,   946,   932,   nil,   nil,   932,   918,   932,
-  1081,    29,    29,    29,   nil,    29,   323,   nil,   430,   443,
-   955,   nil,   nil,   nil,   959,  1080,   961,   323,   nil,   nil,
-   nil,   931,  1082,   nil,  1083,   nil,  1084,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,
-    29,   888,   352,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1092,    19,   439,   984,   984,   984,   332,   237,   352,   nil,
-   nil,   nil,    19,    19,   471,   332,   nil,   995,   996,   nil,
-   932,   nil,   932,   nil,   932,   nil,   932,   nil,   nil,   nil,
-  1007,   nil,   nil,   nil,   nil,   521,  1009,   523,   nil,   nil,
-   525,   526,   nil,    19,   nil,   nil,   nil,    29,   932,   nil,
-   nil,   nil,    29,    29,    29,    29,    29,   nil,   nil,   nil,
-   437,   nil,   nil,   nil,   nil,   nil,   332,   nil,   nil,   nil,
-   nil,  1040,   515,   nil,   852,  1050,   nil,  1038,   nil,   nil,
-   nil,   nil,   nil,    19,  1043,   862,   565,   nil,   nil,   nil,
-   nil,   295,   nil,   nil,   892,   nil,   532,   892,   nil,   nil,
-   nil,    19,   nil,   nil,   nil,   984,   984,   984,   984,   nil,
-   984,   237,   466,    19,   985,   987,   989,   450,   466,   nil,
-   nil,   862,   nil,   nil,   nil,   nil,    19,   237,   557,   nil,
-   nil,   nil,   665,   nil,   nil,   nil,    19,    19,   nil,   nil,
-    29,    29,    29,    29,    29,    29,    29,   nil,   nil,   nil,
-   nil,    29,    29,    29,   nil,   924,   nil,   nil,   nil,   984,
-   984,   984,   984,   nil,   nil,    29,   nil,   656,   nil,   457,
-   984,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   993,   nil,   nil,   nil,   nil,    19,    19,   nil,
-   nil,  1000,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    19,    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,  1060,  1062,  1064,  1066,
-   nil,  1067,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,
-   nil,   nil,  1034,   nil,   nil,   nil,   nil,    19,   nil,   nil,
-   678,   nil,   nil,   698,    19,   nil,   565,   nil,   701,   nil,
-    19,    19,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
-  1088,  1089,  1090,  1091,    29,    29,    29,   nil,   nil,   nil,
-   nil,  1093,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,
-   691,   nil,   nil,   nil,   695,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   892,    32,   nil,   924,   nil,   nil,
-   924,   705,   924,   nil,   nil,   nil,   nil,   708,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-    32,    32,   nil,    32,   nil,   nil,   726,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   788,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   924,   nil,   924,   nil,   924,   nil,   924,
-   nil,   nil,   nil,   801,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   698,   565,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   924,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-    32,    32,    32,    32,    32,   841,   nil,   nil,   842,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   853,
-   nil,   nil,   nil,   nil,   698,   nil,   nil,   565,   nil,   nil,
-   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   867,   nil,   nil,   nil,    29,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   846,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,    29,   nil,   902,   nil,    32,    32,
-    32,    32,    32,    32,    32,   nil,   nil,   nil,   nil,    32,
-    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,   915,   nil,
-   nil,   nil,   nil,    32,   nil,   nil,   nil,   884,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   907,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,   nil,    29,    29,    32,
-    32,    29,   nil,   nil,   nil,   nil,   nil,    29,    29,    32,
-   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   948,   nil,   nil,   nil,    32,   nil,
-   nil,   nil,    32,   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,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    32,    32,    32,   565,   nil,   nil,   nil,   nil,
-   nil,   958,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,
-    29,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,    29,    29,   975,   nil,  1005,   nil,   nil,   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,   nil,   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,  1044,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   244,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,    29,   294,   294,   294,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   341,   342,   nil,   344,   nil,    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,
-    32,   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,   nil,    32,   nil,   nil,    29,
-   nil,   nil,   nil,    16,    32,   nil,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,    29,
-    29,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   367,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,    29,    32,
-   nil,   nil,   nil,   nil,   nil,    32,    32,   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,   294,   442,    16,
-   nil,   448,   294,   nil,   nil,   nil,   nil,   448,    16,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,    18,   nil,
-   244,   nil,   nil,   480,   481,   482,   483,   484,   485,   486,
-   487,   488,   489,   490,   491,   492,   493,   494,   495,   496,
-   497,   498,   499,   500,   501,   nil,    18,   nil,    32,   502,
-   nil,   nil,   nil,   nil,    32,   nil,   nil,   294,   294,    32,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,
-   nil,   nil,    18,   nil,   294,   nil,   294,   nil,   nil,   294,
-   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,    16,   nil,   435,   nil,   nil,   435,   nil,   nil,
-   nil,   nil,   nil,   435,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   551,   nil,
-   552,   nil,   nil,   nil,   294,   294,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,    32,    32,   nil,    16,   nil,   nil,   nil,
-   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,
-   nil,    18,   nil,    18,    32,    32,    18,   nil,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   294,   nil,   448,   448,   448,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   nil,    32,   294,   nil,   294,   nil,   nil,
-   nil,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,   448,   719,   nil,    18,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   294,   nil,   nil,   nil,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   325,   325,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   365,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   294,   448,   294,   nil,   nil,    16,   809,   nil,
-    16,   294,   294,   448,   448,   nil,   nil,   nil,   nil,   448,
-   448,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   nil,   nil,   294,   nil,   nil,   294,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   294,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   294,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   435,
-   nil,   nil,   294,    16,   nil,   nil,   nil,   nil,    18,   435,
-   435,   nil,   nil,   nil,   nil,   435,   435,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   438,   nil,   nil,   438,   nil,   nil,
-   nil,   nil,   nil,   438,   nil,   nil,    18,   294,   nil,    18,
-   nil,   nil,   nil,   nil,   nil,   448,   nil,    20,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   448,   448,
-   448,   448,   nil,   921,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    16,    16,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,   nil,    20,    41,   nil,   nil,
-   325,    20,    18,    41,    16,   nil,   nil,   nil,    18,   nil,
-   nil,   nil,    18,   nil,   nil,   nil,   nil,   325,    18,    18,
-   nil,   435,   nil,   nil,    18,    18,   nil,    20,   nil,   nil,
-   nil,    41,   321,   321,   294,   448,   nil,    20,    20,   nil,
-   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
-   587,   nil,   587,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,    16,   nil,   294,   nil,   nil,   361,   nil,   nil,
-   383,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,
-   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   294,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,    16,    16,
-   nil,   nil,  1003,   nil,   294,   nil,   nil,   nil,   nil,   nil,
-    18,    16,   nil,   nil,   nil,   nil,   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,   nil,
-   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,    16,    20,
-   nil,   nil,   nil,    18,   nil,    16,    41,   325,   nil,   nil,
-   nil,    16,    16,   nil,   nil,   325,    18,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,    20,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,   321,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   321,   nil,    20,   nil,   nil,   nil,   nil,   nil,   438,
-   nil,    41,   nil,    20,   nil,   nil,   nil,    18,   nil,   438,
-   438,    41,    41,   nil,    18,   438,   438,   nil,   nil,   nil,
-    18,    18,   nil,   nil,   383,   nil,   383,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,    42,   325,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   325,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   322,   322,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
-   362,   nil,   nil,   384,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   912,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   438,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    20,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   321,    20,   nil,   nil,   nil,   nil,   nil,   nil,   321,
-   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-   nil,    41,   nil,   nil,    41,   nil,   nil,    20,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   587,   nil,   nil,   nil,   nil,    20,    20,
-   nil,   nil,  1002,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   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,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   587,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,    42,
-   nil,    20,    20,    42,   nil,   nil,   nil,   322,    42,   nil,
-   nil,   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   321,   nil,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,   384,   nil,   384,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    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,   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,   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,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   322,   nil,   nil,   nil,   nil,   383,   nil,   nil,
-   nil,   nil,    41,    41,   nil,   nil,   998,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    41,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   383,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,    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,   nil,   nil,   nil,
-   nil,    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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   384,   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   999,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   384,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,    42,    42 ]
-
-racc_goto_check = [
-     6,    36,    63,    40,    46,    46,    46,   118,    71,    71,
-    38,    70,    50,    50,   171,    12,     9,     2,    38,   102,
-    24,    24,     9,    15,    24,   113,    22,    22,   106,   106,
-    40,    78,    78,    29,    29,    87,    14,     8,    73,    73,
-   170,    70,   121,    42,    42,    51,    51,    51,    25,    33,
-    10,    25,   153,   153,    17,    33,    36,    25,   220,   146,
-    64,    37,    50,   204,    88,   100,    78,    88,   147,    76,
-     5,   107,    71,   118,   172,    52,     9,   215,    85,    85,
-   210,   100,   100,    53,   100,    68,    24,    24,    24,    24,
-   162,   109,   158,     6,   160,     6,     6,     6,     6,     6,
-     6,    59,    71,     6,    84,    84,    84,    83,    83,     7,
-   164,   188,    83,   148,   145,   216,     1,   192,    31,    31,
-   192,   188,    31,   165,     3,    11,    82,    82,    82,    69,
-    60,    69,    13,    16,    18,    27,     5,    20,    21,    23,
-    26,    30,     9,    32,    43,    65,    45,    58,    58,    58,
-    49,     9,   162,    55,    74,    79,    81,    86,    98,   101,
-   115,   117,   122,   207,   207,   207,   123,   124,   125,   126,
-   127,   128,    35,   129,    75,   130,   131,   132,    35,   133,
-    75,   134,   135,   136,    31,    31,    31,    31,   216,   137,
-   138,    87,   149,    35,   150,   156,   163,   166,   164,    46,
-   167,   168,    35,    35,    35,   220,    35,    35,    35,   169,
-   174,   165,   175,    88,    88,   177,   178,   180,   181,   209,
-   182,    14,   183,   184,   187,     6,    71,   146,    38,     7,
-   148,   146,    35,   145,   189,   190,   147,    35,    35,   113,
-   191,    35,    35,   194,   158,   160,    14,   195,   196,    36,
-   170,   162,   197,   100,    46,    46,    68,    50,    50,   198,
-   199,    53,   202,   203,    46,   208,   212,   215,   213,   220,
-   219,   nil,   nil,   204,   nil,    31,    31,    85,   210,   nil,
-     6,   nil,   nil,   nil,    31,    31,   nil,   nil,   nil,   210,
-   nil,   nil,   nil,   nil,     6,     6,    37,   nil,    35,   nil,
-     6,    63,   nil,    35,    35,    35,    35,    35,    24,    40,
-   118,   172,    36,    78,    38,    14,    82,    82,   188,   nil,
-    14,    37,   nil,    50,   nil,     9,   nil,   nil,   nil,    17,
-    78,    38,   nil,    50,    27,    27,   nil,   nil,    27,   nil,
-     8,    64,   nil,   153,    27,    65,   nil,     6,     6,   146,
-   146,    36,   nil,    65,    38,    84,    14,    14,    37,    76,
-   118,   109,    50,    78,    84,    78,   nil,   nil,   100,   nil,
-   nil,   210,   nil,     5,   100,   153,   153,    82,    85,   107,
-    59,   100,    85,   nil,   nil,    59,    82,   nil,   nil,   100,
-   100,    35,    35,    35,    35,    35,    35,    35,    58,   nil,
-   nil,   nil,    35,    35,    35,    83,    31,    58,   152,    60,
-   nil,   121,   nil,   nil,    60,    37,    35,   170,   170,    71,
-   nil,    84,    84,     5,   nil,    75,   nil,    75,    38,   209,
-    40,    12,    12,    36,    87,   nil,   nil,    22,   nil,   nil,
-   204,   204,    10,    82,    50,    50,   nil,    46,   nil,    73,
-     6,     6,    35,    35,     6,   207,   207,   220,   207,   207,
-   nil,   207,    35,   100,    52,   nil,    88,   146,   146,   152,
-    52,    71,    51,     6,   nil,   nil,   nil,   153,    51,   nil,
-   nil,    35,    40,    25,   nil,    35,   nil,    37,   nil,    35,
-    35,    33,    33,    25,    25,    75,   nil,    33,    33,    25,
-    25,    63,    12,     6,   nil,    85,    35,    15,   nil,    63,
-    46,    85,   nil,   nil,   nil,    65,    35,   nil,   nil,   nil,
-   nil,    51,    85,   nil,   nil,    35,    35,    35,   nil,   nil,
-    78,    36,   nil,   nil,    29,   nil,     6,    71,    78,    35,
-    50,    35,   nil,   nil,   106,    12,   nil,    71,   nil,    46,
-    87,   nil,   nil,   nil,    85,    42,    12,   nil,   100,   100,
-   nil,   nil,   nil,   nil,   nil,   nil,    14,   nil,   nil,    14,
-   nil,   nil,   118,   nil,   nil,     6,    71,   nil,   nil,   207,
-   207,   207,   207,   nil,   nil,   159,     6,   159,    85,    84,
-   nil,   nil,   nil,   nil,   nil,   nil,   209,   209,    85,   nil,
-   nil,   nil,   nil,   nil,    31,   193,   209,   193,   209,   157,
-   193,   157,   nil,   193,   nil,   106,    75,    75,   152,   nil,
-   106,   152,    75,    75,   152,   nil,   152,    85,   nil,   nil,
-   nil,    46,   nil,    33,   nil,    25,   nil,   nil,   nil,   nil,
-    31,   207,   159,   102,   nil,    35,    31,   nil,   nil,   nil,
-     6,    71,   nil,   nil,   nil,   nil,   nil,     6,    71,   nil,
-   nil,   nil,   nil,   209,   157,    40,     9,     2,   nil,    22,
-   nil,    63,   nil,   113,   nil,   nil,     9,   171,   nil,    12,
-    12,    73,    63,    37,   nil,     6,   nil,   nil,   nil,   nil,
-    40,   nil,   nil,   nil,     6,   nil,   nil,   152,    35,   152,
-    78,   152,    70,   152,   nil,   nil,    35,   nil,    35,    85,
-     6,    78,   211,   nil,    35,   nil,   nil,   nil,   nil,     6,
-   nil,     6,   nil,    35,   nil,   152,   nil,    40,   nil,    46,
-   nil,   nil,   nil,     6,   nil,     6,    35,   nil,    84,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,
-    40,    14,    71,   nil,   nil,     6,   nil,   nil,    75,    35,
-   nil,    85,   nil,    71,    85,    35,   nil,   nil,   nil,   nil,
-    27,    75,    75,    75,    75,   nil,   nil,   159,   nil,   nil,
-    27,    27,   nil,   nil,    40,   nil,    27,    27,   nil,   nil,
-   nil,   nil,   nil,    14,   159,   nil,   nil,   159,   209,   157,
-    84,   157,   nil,   157,   nil,    85,   nil,   nil,   nil,   nil,
-     6,   nil,    40,    36,    24,   209,   nil,    82,   209,   157,
-   nil,   157,    35,   nil,    50,   nil,   nil,   nil,    35,    35,
-    24,   nil,    35,   nil,   nil,   nil,     6,   nil,    35,    35,
-   nil,    54,   nil,   nil,    35,    35,   nil,    54,   nil,   nil,
-   nil,    14,     6,   nil,   193,   nil,    40,   193,   nil,   nil,
-   nil,   211,    54,    14,   211,   nil,   nil,   211,    75,   211,
-   159,    54,    54,    54,   nil,    54,    35,   nil,    80,    80,
-   118,   nil,   nil,   nil,   118,   157,    14,    35,   nil,   nil,
-   nil,   209,   157,   nil,   157,   nil,   157,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,
-    54,    40,    31,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   157,    35,    27,     6,     6,     6,    78,    35,    31,   nil,
-   nil,   nil,    35,    35,    61,    78,   nil,    14,    14,   nil,
-   211,   nil,   211,   nil,   211,   nil,   211,   nil,   nil,   nil,
-    14,   nil,   nil,   nil,   nil,    80,   118,    80,   nil,   nil,
-    80,    80,   nil,    35,   nil,   nil,   nil,    54,   211,   nil,
-   nil,   nil,    54,    54,    54,    54,    54,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,
-   nil,    38,    61,   nil,     6,    40,   nil,    14,   nil,   nil,
-   nil,   nil,   nil,    35,    14,     6,    80,   nil,   nil,   nil,
-   nil,    46,   nil,   nil,   154,   nil,    61,   154,   nil,   nil,
-   nil,    35,   nil,   nil,   nil,     6,     6,     6,     6,   nil,
-     6,    35,    71,    35,   155,   155,   155,     6,    71,   nil,
-   nil,     6,   nil,   nil,   nil,   nil,    35,    35,    61,   nil,
-   nil,   nil,    40,   nil,   nil,   nil,    35,    35,   nil,   nil,
-    54,    54,    54,    54,    54,    54,    54,   nil,   nil,   nil,
-   nil,    54,    54,    54,   nil,   154,   nil,   nil,   nil,     6,
-     6,     6,     6,   nil,   nil,    54,   nil,    80,   nil,    85,
-     6,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,    35,   nil,
-   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   155,   155,   155,   155,
-   nil,   155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,   nil,   nil,
-    61,   nil,   nil,    80,    35,   nil,    80,   nil,    80,   nil,
-    35,    35,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
-   155,   155,   155,   155,    54,    54,    54,   nil,   nil,   nil,
-   nil,   155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-    61,   nil,   nil,   nil,    61,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   154,    57,   nil,   154,   nil,   nil,
-   154,    61,   154,   nil,   nil,   nil,   nil,    61,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
-    57,    57,   nil,    57,   nil,   nil,    61,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   154,   nil,   154,   nil,   154,   nil,   154,
-   nil,   nil,   nil,    80,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    80,    80,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   154,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-    57,    57,    57,    57,    57,    80,   nil,   nil,    80,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,    80,
-   nil,   nil,   nil,   nil,    80,   nil,   nil,    80,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    80,   nil,   nil,   nil,    54,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-    61,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,    80,   nil,    57,    57,
-    57,    57,    57,    57,    57,   nil,   nil,   nil,   nil,    57,
-    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,    61,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,   nil,   nil,
-   nil,    54,   nil,   nil,   nil,   nil,   nil,    54,    54,    57,
-    57,    54,   nil,   nil,   nil,   nil,   nil,    54,    54,    57,
-   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,    57,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    57,    57,    57,    80,   nil,   nil,   nil,   nil,
-   nil,    61,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,
-    54,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,    54,    54,    61,   nil,    80,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,    54,    41,    41,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,    41,   nil,    41,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,
-   nil,   nil,   nil,    57,   nil,   nil,    57,   nil,   nil,    54,
-   nil,   nil,   nil,    28,    57,   nil,   nil,   nil,   nil,    28,
-   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,    54,
-    54,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,    57,
-   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,    54,    57,
-   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,   nil,
-   nil,    57,    57,   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,    41,    28,
-   nil,    41,    41,   nil,   nil,   nil,   nil,    41,    28,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-    41,   nil,   nil,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,   nil,    34,   nil,    57,    41,
-   nil,   nil,   nil,   nil,    57,   nil,   nil,    41,    41,    57,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,    34,   nil,    41,   nil,    41,   nil,   nil,    41,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    57,   nil,    28,   nil,    28,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,    28,   nil,   nil,   nil,    57,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    41,   nil,
-    41,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,    57,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
-    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    28,    57,    57,   nil,    28,   nil,   nil,   nil,
-   nil,    28,   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,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
-   nil,    34,   nil,    34,    57,    57,    34,   nil,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,    57,   nil,   nil,
-    41,   nil,    41,    41,    41,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,    57,    41,   nil,    41,   nil,   nil,
-   nil,    57,   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,    41,    41,   nil,    34,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,    41,   nil,   nil,   nil,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,    39,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    28,
-   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,    41,    41,    41,   nil,   nil,    28,    41,   nil,
-    28,    41,    41,    41,    41,   nil,   nil,   nil,   nil,    41,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,   nil,   nil,    41,   nil,   nil,    41,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,    28,
-   nil,   nil,    41,    28,   nil,   nil,   nil,   nil,    34,    28,
-    28,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,    39,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,    34,    41,   nil,    34,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,
-    41,    41,   nil,    41,   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,    28,    28,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,    39,    66,   nil,   nil,
-    39,    39,    34,    66,    28,   nil,   nil,   nil,    34,   nil,
-   nil,   nil,    34,   nil,   nil,   nil,   nil,    39,    34,    34,
-   nil,    28,   nil,   nil,    34,    34,   nil,    39,   nil,   nil,
-   nil,    66,    66,    66,    41,    41,   nil,    39,    39,   nil,
-   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-    39,   nil,    39,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    28,   nil,    41,   nil,   nil,    66,   nil,   nil,
-    66,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
-   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    28,    28,
-   nil,   nil,    28,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-    34,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,    28,    39,
-   nil,   nil,   nil,    34,   nil,    28,    66,    39,   nil,   nil,
-   nil,    28,    28,   nil,   nil,    39,    34,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    39,   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,    34,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,    66,   nil,    39,   nil,   nil,   nil,    34,   nil,    39,
-    39,    66,    66,   nil,    34,    39,    39,   nil,   nil,   nil,
-    34,    34,   nil,   nil,    66,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,    67,    39,   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,    67,    67,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   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,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,    39,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-   nil,    66,   nil,   nil,    66,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,    39,
-   nil,   nil,    39,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   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,    39,   nil,   nil,   nil,    67,
-   nil,    39,    39,    67,   nil,   nil,   nil,    67,    67,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,    67,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    66,    66,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    66,   nil,    67,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,    67,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
-   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,    67,    67 ]
-
-racc_goto_pointer = [
-   nil,   116,    15,   124,   nil,    65,    -2,   101,    32,    14,
-   -88,   115,  -331,  -289,     0,  -531,  -588,  -667,  -713,   nil,
-  -391,  -175,    15,   127,   -47,  -175,    68,   112,  1791,  -189,
-   -81,    51,     4,  -177,  1930,   170,  -226,  -388,    -9,  2261,
-   -19,  1695,   -26,  -426,   nil,  -592,   -28,   nil,   nil,   123,
-  -216,    16,  -206,  -429,   839,  -355,   nil,  1217,   115,    65,
-    94,   700,   nil,   -35,    22,  -191,  2575,  2958,  -499,  -240,
-   -64,    -3,   nil,    27,  -272,   -52,    25,   nil,    -6,   108,
-   656,  -193,    94,  -452,    72,    49,  -348,  -262,  -453,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    83,   nil,
-  -490,  -191,   -46,   nil,   nil,   nil,  -325,  -664,   nil,  -646,
-   nil,   nil,   nil,  -334,   nil,    88,   nil,  -427,     2,   nil,
-   nil,  -549,    87,  -216,   106,   106,  -178,   107,   107,   100,
-  -583,  -194,  -584,  -776,   107,  -408,  -198,  -403,  -693,   nil,
-   nil,   nil,   nil,   nil,   nil,  -790,  -555,  -546,  -792,  -712,
-  -637,   nil,  -362,  -547,   244,   109,  -636,  -167,  -739,  -189,
-  -593,   nil,  -679,  -767,  -853,  -840,  -190,  -568,   112,  -387,
-  -347,   -11,  -202,   nil,   -77,   -76,   nil,  -478,  -529,   nil,
-  -287,  -789,  -356,  -501,  -631,   nil,   nil,   132,    16,   137,
-   137,   141,  -279,   214,   143,   146,   146,  -540,  -373,  -373,
-   nil,   nil,   157,  -496,  -324,   nil,   nil,  -439,  -509,  -168,
-  -694,  -119,  -504,  -712,   nil,  -699,  -871,   nil,   nil,  -116,
-  -462 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   309,     7,   360,   312,
-   nil,   nil,   nil,   nil,   554,   nil,   nil,   nil,   nil,   308,
-   310,   nil,   nil,   nil,   nil,    14,    15,    21,   242,   nil,
-   nil,    17,   nil,   436,   243,   340,   nil,   nil,   756,   241,
-   472,    24,   nil,   nil,   355,   nil,    25,    26,    27,   nil,
-   715,   nil,   nil,   nil,   329,   nil,    28,   326,   451,    35,
-   nil,   nil,    37,    40,    39,   nil,   238,   239,   585,   nil,
-   146,   459,   145,    91,   nil,   441,   107,    47,    50,   274,
-   300,   nil,   452,   nil,   453,   464,   673,   516,   298,   283,
-    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
-   nil,   nil,   284,    65,    66,    67,   nil,   nil,    68,   860,
-    69,    70,    71,   nil,    72,   nil,    73,   nil,   567,    74,
-    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   288,
-   276,   723,   851,   576,   861,   783,   612,   nil,   784,   785,
-  1026,   922,   600,   nil,   601,   nil,   nil,   602,   nil,   604,
-   nil,   830,   nil,   nil,   nil,   610,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   463,   nil,   nil,   693,   nil,   nil,   504,
-   nil,   nil,   nil,   nil,   nil,    90,    92,    94,   nil,   nil,
-   nil,   nil,   nil,   630,   nil,   nil,   nil,   nil,   nil,   nil,
-   103,   104,   nil,   nil,   893,   765,   599,   nil,   603,   901,
-   615,   617,   618,   933,   621,   622,   934,   625,   628,   nil,
-   303 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 150, :_reduce_1,
-  2, 148, :_reduce_2,
-  2, 149, :_reduce_3,
-  1, 151, :_reduce_none,
-  1, 151, :_reduce_none,
-  3, 151, :_reduce_6,
-  2, 151, :_reduce_none,
-  1, 154, :_reduce_none,
-  0, 158, :_reduce_9,
-  3, 154, :_reduce_10,
-  0, 160, :_reduce_11,
-  4, 157, :_reduce_12,
-  0, 165, :_reduce_13,
-  6, 159, :_reduce_14,
-  3, 159, :_reduce_15,
-  2, 161, :_reduce_16,
-  1, 166, :_reduce_none,
-  1, 166, :_reduce_none,
-  3, 166, :_reduce_19,
-  2, 166, :_reduce_20,
-  1, 167, :_reduce_none,
-  0, 168, :_reduce_22,
-  3, 167, :_reduce_23,
-  0, 179, :_reduce_24,
-  4, 156, :_reduce_25,
-  3, 156, :_reduce_26,
-  3, 156, :_reduce_27,
-  3, 156, :_reduce_28,
-  2, 156, :_reduce_29,
-  3, 156, :_reduce_30,
-  3, 156, :_reduce_31,
-  3, 156, :_reduce_32,
-  3, 156, :_reduce_33,
-  3, 156, :_reduce_34,
-  4, 156, :_reduce_35,
-  1, 156, :_reduce_none,
-  3, 156, :_reduce_37,
-  3, 156, :_reduce_38,
-  3, 156, :_reduce_39,
-  1, 156, :_reduce_none,
-  3, 172, :_reduce_41,
-  3, 172, :_reduce_42,
-  6, 172, :_reduce_43,
-  5, 172, :_reduce_44,
-  5, 172, :_reduce_45,
-  5, 172, :_reduce_46,
-  5, 172, :_reduce_47,
-  3, 172, :_reduce_48,
-  1, 180, :_reduce_49,
-  3, 180, :_reduce_50,
-  1, 180, :_reduce_none,
-  1, 178, :_reduce_none,
-  3, 178, :_reduce_53,
-  3, 178, :_reduce_54,
-  3, 178, :_reduce_55,
-  2, 178, :_reduce_56,
-  1, 178, :_reduce_none,
-  1, 171, :_reduce_58,
-  0, 191, :_reduce_59,
-  0, 192, :_reduce_60,
-  4, 189, :_reduce_61,
-  1, 174, :_reduce_none,
-  1, 174, :_reduce_none,
-  1, 194, :_reduce_none,
-  4, 194, :_reduce_65,
-  0, 202, :_reduce_66,
-  4, 199, :_reduce_67,
-  1, 201, :_reduce_68,
-  2, 193, :_reduce_69,
-  3, 193, :_reduce_70,
-  4, 193, :_reduce_71,
-  5, 193, :_reduce_72,
-  4, 193, :_reduce_73,
-  5, 193, :_reduce_74,
-  2, 193, :_reduce_75,
-  2, 193, :_reduce_76,
-  2, 193, :_reduce_77,
-  2, 193, :_reduce_78,
-  2, 193, :_reduce_79,
-  1, 173, :_reduce_none,
-  3, 173, :_reduce_81,
-  1, 207, :_reduce_none,
-  3, 207, :_reduce_83,
-  1, 206, :_reduce_84,
-  2, 206, :_reduce_85,
-  3, 206, :_reduce_86,
-  5, 206, :_reduce_87,
-  2, 206, :_reduce_88,
-  4, 206, :_reduce_89,
-  2, 206, :_reduce_90,
-  4, 206, :_reduce_91,
-  1, 206, :_reduce_92,
-  3, 206, :_reduce_93,
-  1, 210, :_reduce_none,
-  3, 210, :_reduce_95,
-  2, 209, :_reduce_96,
-  3, 209, :_reduce_97,
-  1, 212, :_reduce_98,
-  3, 212, :_reduce_99,
-  1, 211, :_reduce_100,
-  1, 211, :_reduce_101,
-  4, 211, :_reduce_102,
-  3, 211, :_reduce_103,
-  3, 211, :_reduce_104,
-  3, 211, :_reduce_105,
-  3, 211, :_reduce_106,
-  2, 211, :_reduce_107,
-  1, 211, :_reduce_108,
-  1, 175, :_reduce_109,
-  1, 175, :_reduce_110,
-  4, 175, :_reduce_111,
-  3, 175, :_reduce_112,
-  3, 175, :_reduce_113,
-  3, 175, :_reduce_114,
-  3, 175, :_reduce_115,
-  2, 175, :_reduce_116,
-  1, 175, :_reduce_117,
-  1, 215, :_reduce_118,
-  1, 215, :_reduce_none,
-  2, 216, :_reduce_120,
-  1, 216, :_reduce_121,
-  3, 216, :_reduce_122,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_none,
-  1, 217, :_reduce_126,
-  1, 217, :_reduce_none,
-  1, 169, :_reduce_128,
-  1, 169, :_reduce_none,
-  1, 170, :_reduce_130,
-  0, 221, :_reduce_131,
-  4, 170, :_reduce_132,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 218, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  3, 188, :_reduce_204,
-  3, 188, :_reduce_205,
-  6, 188, :_reduce_206,
-  5, 188, :_reduce_207,
-  5, 188, :_reduce_208,
-  5, 188, :_reduce_209,
-  5, 188, :_reduce_210,
-  4, 188, :_reduce_211,
-  3, 188, :_reduce_212,
-  3, 188, :_reduce_213,
-  3, 188, :_reduce_214,
-  2, 188, :_reduce_215,
-  2, 188, :_reduce_216,
-  3, 188, :_reduce_217,
-  3, 188, :_reduce_218,
-  3, 188, :_reduce_219,
-  3, 188, :_reduce_220,
-  3, 188, :_reduce_221,
-  3, 188, :_reduce_222,
-  4, 188, :_reduce_223,
-  2, 188, :_reduce_224,
-  2, 188, :_reduce_225,
-  3, 188, :_reduce_226,
-  3, 188, :_reduce_227,
-  3, 188, :_reduce_228,
-  3, 188, :_reduce_229,
-  1, 188, :_reduce_none,
-  3, 188, :_reduce_231,
-  3, 188, :_reduce_232,
-  3, 188, :_reduce_233,
-  3, 188, :_reduce_234,
-  3, 188, :_reduce_235,
-  2, 188, :_reduce_236,
-  2, 188, :_reduce_237,
-  3, 188, :_reduce_238,
-  3, 188, :_reduce_239,
-  3, 188, :_reduce_240,
-  3, 188, :_reduce_241,
-  3, 188, :_reduce_242,
-  6, 188, :_reduce_243,
-  1, 188, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  1, 226, :_reduce_none,
-  3, 224, :_reduce_249,
-  3, 224, :_reduce_250,
-  1, 227, :_reduce_251,
-  1, 228, :_reduce_none,
-  2, 228, :_reduce_253,
-  4, 228, :_reduce_254,
-  2, 228, :_reduce_255,
-  1, 222, :_reduce_none,
-  3, 222, :_reduce_257,
-  3, 232, :_reduce_258,
-  1, 233, :_reduce_none,
-  1, 233, :_reduce_none,
-  1, 183, :_reduce_none,
-  1, 183, :_reduce_none,
-  2, 183, :_reduce_263,
-  4, 183, :_reduce_264,
-  2, 183, :_reduce_265,
-  1, 205, :_reduce_266,
-  2, 205, :_reduce_267,
-  2, 205, :_reduce_268,
-  4, 205, :_reduce_269,
-  1, 205, :_reduce_270,
-  0, 236, :_reduce_271,
-  2, 198, :_reduce_272,
-  2, 235, :_reduce_273,
-  2, 234, :_reduce_274,
-  1, 234, :_reduce_none,
-  1, 229, :_reduce_276,
-  2, 229, :_reduce_277,
-  3, 229, :_reduce_278,
-  4, 229, :_reduce_279,
-  1, 177, :_reduce_280,
-  1, 177, :_reduce_281,
-  3, 176, :_reduce_282,
-  4, 176, :_reduce_283,
-  2, 176, :_reduce_284,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_295,
-  0, 271, :_reduce_296,
-  4, 225, :_reduce_297,
-  0, 272, :_reduce_298,
-  3, 225, :_reduce_299,
-  0, 273, :_reduce_300,
-  4, 225, :_reduce_301,
-  3, 225, :_reduce_302,
-  3, 225, :_reduce_303,
-  2, 225, :_reduce_304,
-  0, 274, :_reduce_305,
-  4, 225, :_reduce_306,
-  0, 275, :_reduce_307,
-  4, 225, :_reduce_308,
-  1, 225, :_reduce_309,
-  4, 225, :_reduce_310,
-  3, 225, :_reduce_311,
-  1, 225, :_reduce_312,
-  5, 225, :_reduce_313,
-  4, 225, :_reduce_314,
-  3, 225, :_reduce_315,
-  2, 225, :_reduce_316,
-  1, 225, :_reduce_none,
-  2, 225, :_reduce_318,
-  1, 225, :_reduce_319,
-  6, 225, :_reduce_320,
-  6, 225, :_reduce_321,
-  4, 225, :_reduce_322,
-  4, 225, :_reduce_323,
-  5, 225, :_reduce_324,
-  4, 225, :_reduce_325,
-  6, 225, :_reduce_326,
-  0, 276, :_reduce_327,
-  0, 277, :_reduce_328,
-  7, 225, :_reduce_329,
-  0, 278, :_reduce_330,
-  0, 279, :_reduce_331,
-  0, 280, :_reduce_332,
-  9, 225, :_reduce_333,
-  0, 281, :_reduce_334,
-  0, 282, :_reduce_335,
-  6, 225, :_reduce_336,
-  0, 283, :_reduce_337,
-  6, 225, :_reduce_338,
-  0, 284, :_reduce_339,
-  0, 285, :_reduce_340,
-  9, 225, :_reduce_341,
-  1, 225, :_reduce_342,
-  1, 225, :_reduce_343,
-  1, 225, :_reduce_344,
-  1, 225, :_reduce_345,
-  1, 182, :_reduce_346,
-  1, 246, :_reduce_none,
-  1, 252, :_reduce_none,
-  1, 255, :_reduce_none,
-  1, 257, :_reduce_none,
-  1, 258, :_reduce_none,
-  1, 259, :_reduce_none,
-  1, 261, :_reduce_none,
-  1, 263, :_reduce_354,
-  1, 266, :_reduce_355,
-  1, 267, :_reduce_356,
-  1, 286, :_reduce_none,
-  1, 287, :_reduce_none,
-  1, 288, :_reduce_none,
-  1, 289, :_reduce_none,
-  1, 290, :_reduce_none,
-  1, 163, :_reduce_none,
-  1, 291, :_reduce_none,
-  1, 247, :_reduce_none,
-  1, 204, :_reduce_none,
-  1, 253, :_reduce_none,
-  1, 253, :_reduce_none,
-  2, 253, :_reduce_none,
-  1, 190, :_reduce_none,
-  1, 190, :_reduce_none,
-  1, 254, :_reduce_none,
-  5, 254, :_reduce_372,
-  1, 256, :_reduce_none,
-  2, 256, :_reduce_374,
-  1, 262, :_reduce_none,
-  1, 262, :_reduce_376,
-  1, 292, :_reduce_none,
-  3, 292, :_reduce_378,
-  1, 295, :_reduce_379,
-  3, 295, :_reduce_380,
-  1, 294, :_reduce_381,
-  3, 294, :_reduce_382,
-  5, 294, :_reduce_383,
-  1, 294, :_reduce_384,
-  3, 294, :_reduce_385,
-  2, 296, :_reduce_386,
-  1, 296, :_reduce_387,
-  4, 297, :_reduce_388,
-  2, 297, :_reduce_389,
-  2, 297, :_reduce_390,
-  1, 297, :_reduce_391,
-  2, 302, :_reduce_392,
-  1, 302, :_reduce_none,
-  6, 303, :_reduce_394,
-  8, 303, :_reduce_395,
-  4, 303, :_reduce_396,
-  6, 303, :_reduce_397,
-  4, 303, :_reduce_398,
-  2, 303, :_reduce_399,
-  6, 303, :_reduce_400,
-  2, 303, :_reduce_401,
-  4, 303, :_reduce_402,
-  6, 303, :_reduce_403,
-  2, 303, :_reduce_404,
-  4, 303, :_reduce_405,
-  2, 303, :_reduce_406,
-  4, 303, :_reduce_407,
-  1, 303, :_reduce_408,
-  1, 307, :_reduce_409,
-  1, 307, :_reduce_410,
-  3, 308, :_reduce_411,
-  1, 308, :_reduce_412,
-  4, 308, :_reduce_413,
-  1, 309, :_reduce_none,
-  4, 309, :_reduce_415,
-  1, 310, :_reduce_416,
-  3, 310, :_reduce_417,
-  1, 311, :_reduce_418,
-  1, 311, :_reduce_none,
-  0, 315, :_reduce_420,
-  0, 316, :_reduce_421,
-  5, 251, :_reduce_422,
-  4, 313, :_reduce_423,
-  1, 313, :_reduce_424,
-  3, 314, :_reduce_425,
-  3, 314, :_reduce_426,
-  3, 318, :_reduce_427,
-  2, 195, :_reduce_428,
-  4, 195, :_reduce_429,
-  5, 195, :_reduce_430,
-  5, 195, :_reduce_431,
-  2, 250, :_reduce_432,
-  4, 250, :_reduce_433,
-  4, 250, :_reduce_434,
-  3, 250, :_reduce_435,
-  3, 250, :_reduce_436,
-  3, 250, :_reduce_437,
-  2, 250, :_reduce_438,
-  1, 250, :_reduce_439,
-  4, 250, :_reduce_440,
-  0, 321, :_reduce_441,
-  4, 249, :_reduce_442,
-  0, 322, :_reduce_443,
-  4, 249, :_reduce_444,
-  0, 323, :_reduce_445,
-  0, 324, :_reduce_446,
-  4, 200, :_reduce_447,
-  0, 326, :_reduce_448,
-  0, 327, :_reduce_449,
-  4, 319, :_reduce_450,
-  1, 325, :_reduce_451,
-  2, 325, :_reduce_452,
-  3, 325, :_reduce_453,
-  4, 325, :_reduce_454,
-  0, 329, :_reduce_455,
-  6, 260, :_reduce_456,
-  1, 328, :_reduce_none,
-  1, 328, :_reduce_none,
-  6, 162, :_reduce_459,
-  0, 162, :_reduce_460,
-  1, 330, :_reduce_461,
-  1, 330, :_reduce_none,
-  1, 330, :_reduce_none,
-  2, 331, :_reduce_464,
-  1, 331, :_reduce_none,
-  2, 164, :_reduce_466,
-  1, 164, :_reduce_none,
-  1, 237, :_reduce_468,
-  1, 237, :_reduce_none,
-  1, 238, :_reduce_470,
-  1, 333, :_reduce_471,
-  1, 333, :_reduce_none,
-  2, 333, :_reduce_473,
-  3, 334, :_reduce_474,
-  1, 334, :_reduce_475,
-  3, 239, :_reduce_476,
-  3, 240, :_reduce_477,
-  3, 241, :_reduce_478,
-  3, 241, :_reduce_479,
-  1, 338, :_reduce_480,
-  3, 338, :_reduce_481,
-  1, 339, :_reduce_none,
-  2, 339, :_reduce_483,
-  3, 243, :_reduce_484,
-  3, 243, :_reduce_485,
-  1, 341, :_reduce_486,
-  3, 341, :_reduce_487,
-  3, 242, :_reduce_488,
-  3, 242, :_reduce_489,
-  3, 244, :_reduce_490,
-  3, 244, :_reduce_491,
-  1, 342, :_reduce_492,
-  3, 342, :_reduce_493,
-  1, 343, :_reduce_494,
-  3, 343, :_reduce_495,
-  1, 335, :_reduce_496,
-  2, 335, :_reduce_497,
-  1, 336, :_reduce_498,
-  2, 336, :_reduce_499,
-  1, 337, :_reduce_500,
-  2, 337, :_reduce_501,
-  1, 340, :_reduce_502,
-  0, 345, :_reduce_503,
-  3, 340, :_reduce_504,
-  0, 346, :_reduce_505,
-  4, 340, :_reduce_506,
-  1, 344, :_reduce_507,
-  1, 344, :_reduce_508,
-  1, 344, :_reduce_509,
-  1, 344, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  2, 347, :_reduce_513,
-  1, 347, :_reduce_514,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  3, 348, :_reduce_519,
-  1, 332, :_reduce_none,
-  2, 332, :_reduce_521,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 223, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 213, :_reduce_none,
-  1, 214, :_reduce_531,
-  1, 214, :_reduce_532,
-  1, 214, :_reduce_533,
-  1, 214, :_reduce_534,
-  1, 214, :_reduce_535,
-  1, 214, :_reduce_536,
-  1, 214, :_reduce_537,
-  1, 245, :_reduce_538,
-  1, 245, :_reduce_539,
-  1, 181, :_reduce_540,
-  1, 181, :_reduce_541,
-  1, 186, :_reduce_542,
-  1, 186, :_reduce_543,
-  0, 350, :_reduce_544,
-  4, 264, :_reduce_545,
-  1, 264, :_reduce_546,
-  3, 268, :_reduce_547,
-  0, 352, :_reduce_548,
-  3, 268, :_reduce_549,
-  4, 351, :_reduce_550,
-  2, 351, :_reduce_551,
-  2, 351, :_reduce_552,
-  1, 351, :_reduce_none,
-  2, 354, :_reduce_554,
-  0, 354, :_reduce_555,
-  6, 317, :_reduce_556,
-  8, 317, :_reduce_557,
-  4, 317, :_reduce_558,
-  6, 317, :_reduce_559,
-  4, 317, :_reduce_560,
-  6, 317, :_reduce_561,
-  2, 317, :_reduce_562,
-  4, 317, :_reduce_563,
-  6, 317, :_reduce_564,
-  2, 317, :_reduce_565,
-  4, 317, :_reduce_566,
-  2, 317, :_reduce_567,
-  4, 317, :_reduce_568,
-  1, 317, :_reduce_569,
-  0, 317, :_reduce_570,
-  1, 312, :_reduce_571,
-  1, 312, :_reduce_572,
-  1, 312, :_reduce_573,
-  1, 312, :_reduce_574,
-  1, 293, :_reduce_none,
-  1, 293, :_reduce_576,
-  1, 356, :_reduce_none,
-  1, 357, :_reduce_none,
-  3, 357, :_reduce_579,
-  1, 304, :_reduce_580,
-  3, 304, :_reduce_581,
-  1, 358, :_reduce_none,
-  2, 359, :_reduce_583,
-  1, 359, :_reduce_584,
-  2, 360, :_reduce_585,
-  1, 360, :_reduce_586,
-  1, 298, :_reduce_none,
-  3, 298, :_reduce_588,
-  1, 353, :_reduce_none,
-  3, 353, :_reduce_590,
-  1, 361, :_reduce_none,
-  1, 361, :_reduce_none,
-  2, 299, :_reduce_593,
-  1, 299, :_reduce_594,
-  3, 362, :_reduce_595,
-  3, 363, :_reduce_596,
-  1, 305, :_reduce_597,
-  3, 305, :_reduce_598,
-  1, 355, :_reduce_599,
-  3, 355, :_reduce_600,
-  1, 364, :_reduce_none,
-  1, 364, :_reduce_none,
-  2, 306, :_reduce_603,
-  1, 306, :_reduce_604,
-  1, 365, :_reduce_none,
-  1, 365, :_reduce_none,
-  2, 301, :_reduce_607,
-  2, 300, :_reduce_608,
-  0, 300, :_reduce_609,
-  1, 269, :_reduce_none,
-  0, 366, :_reduce_611,
-  4, 269, :_reduce_612,
-  1, 248, :_reduce_613,
-  2, 248, :_reduce_none,
-  1, 231, :_reduce_none,
-  3, 231, :_reduce_616,
-  3, 367, :_reduce_617,
-  2, 367, :_reduce_618,
-  4, 367, :_reduce_619,
-  2, 367, :_reduce_620,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 320, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 196, :_reduce_none,
-  1, 196, :_reduce_none,
-  0, 152, :_reduce_none,
-  1, 152, :_reduce_none,
-  0, 187, :_reduce_none,
-  1, 187, :_reduce_none,
-  2, 208, :_reduce_none,
-  2, 184, :_reduce_none,
-  0, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 265, :_reduce_646,
-  1, 265, :_reduce_none,
-  1, 155, :_reduce_none,
-  2, 155, :_reduce_649,
-  0, 153, :_reduce_650 ]
-
-racc_reduce_n = 651
-
-racc_shift_n = 1094
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLABEL_END => 141,
-  :tLONELY => 142,
-  :tBDOT2 => 143,
-  :tBDOT3 => 144,
-  :tLOWEST => 145,
-  :tEQL => 146 }
-
-racc_nt_base = 147
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLABEL_END",
-  "tLONELY",
-  "tBDOT2",
-  "tBDOT3",
-  "tLOWEST",
-  "tEQL",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "backref",
-  "opt_nl",
-  "arg",
-  "expr_value_do",
-  "do",
-  "@7",
-  "@8",
-  "command",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@9",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "fname",
-  "op",
-  "reswords",
-  "symbol",
-  "@10",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@11",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "k_def",
-  "f_arglist",
-  "singleton",
-  "dot_or_colon",
-  "@12",
-  "@13",
-  "@14",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "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",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "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",
-  "@36",
-  "@37",
-  "ssym",
-  "dsym",
-  "sym",
-  "@38",
-  "args_tail",
-  "@39",
-  "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",
-  "@40",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      yyerror "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 12
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 40 omitted
-
-def _reduce_41(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_42(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-def _reduce_50(val, _values, result)
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-
-    result
-end
-
-# reduce 51 omitted
-
-# reduce 52 omitted
-
-def _reduce_53(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_54(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_56(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-# reduce 57 omitted
-
-def _reduce_58(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_61(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 62 omitted
-
-# reduce 63 omitted
-
-# reduce 64 omitted
-
-def _reduce_65(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_66(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_67(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_75(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_76(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_77(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_78(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_79(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 80 omitted
-
-def _reduce_81(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 82 omitted
-
-def _reduce_83(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_93(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 94 omitted
-
-def _reduce_95(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_96(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_107(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_108(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_118(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 119 omitted
-
-def _reduce_120(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_122(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 123 omitted
-
-# reduce 124 omitted
-
-# reduce 125 omitted
-
-def _reduce_126(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 127 omitted
-
-def _reduce_128(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 129 omitted
-
-def _reduce_130(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_132(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-# reduce 203 omitted
-
-def _reduce_204(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_205(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_206(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_207(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_208(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_209(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_210(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_211(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_212(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_213(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_214(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_215(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_216(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_217(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_227(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_228(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_229(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 230 omitted
-
-def _reduce_231(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_241(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_242(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_243(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-# reduce 244 omitted
-
-# reduce 245 omitted
-
-# reduce 246 omitted
-
-# reduce 247 omitted
-
-# reduce 248 omitted
-
-def _reduce_249(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_250(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_251(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 252 omitted
-
-def _reduce_253(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_254(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_255(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 256 omitted
-
-def _reduce_257(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_258(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-# reduce 259 omitted
-
-# reduce 260 omitted
-
-# reduce 261 omitted
-
-# reduce 262 omitted
-
-def _reduce_263(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_264(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_265(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_266(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_267(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_268(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_271(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_272(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_273(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_274(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 275 omitted
-
-def _reduce_276(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_280(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_281(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_282(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_283(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_284(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 285 omitted
-
-# reduce 286 omitted
-
-# reduce 287 omitted
-
-# reduce 288 omitted
-
-# reduce 289 omitted
-
-# reduce 290 omitted
-
-# reduce 291 omitted
-
-# reduce 292 omitted
-
-# reduce 293 omitted
-
-# reduce 294 omitted
-
-def _reduce_295(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_297(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_298(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_302(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_303(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_305(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_307(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_308(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_309(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_310(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_311(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_312(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_313(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_314(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_315(val, _values, result)
-                      debug 20
-
-    result
-end
-
-def _reduce_316(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 317 omitted
-
-def _reduce_318(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_327(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_339(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_340(val, _values, result)
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_344(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_345(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_346(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 347 omitted
-
-# reduce 348 omitted
-
-# reduce 349 omitted
-
-# reduce 350 omitted
-
-# reduce 351 omitted
-
-# reduce 352 omitted
-
-# reduce 353 omitted
-
-def _reduce_354(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_355(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_356(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 357 omitted
-
-# reduce 358 omitted
-
-# reduce 359 omitted
-
-# reduce 360 omitted
-
-# reduce 361 omitted
-
-# reduce 362 omitted
-
-# reduce 363 omitted
-
-# reduce 364 omitted
-
-# reduce 365 omitted
-
-# reduce 366 omitted
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-# reduce 369 omitted
-
-# reduce 370 omitted
-
-# reduce 371 omitted
-
-def _reduce_372(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 373 omitted
-
-def _reduce_374(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 375 omitted
-
-def _reduce_376(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 377 omitted
-
-def _reduce_378(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_379(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_380(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_381(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_382(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_383(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_384(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_385(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_386(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_387(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-def _reduce_388(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_389(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_390(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_391(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_392(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 393 omitted
-
-def _reduce_394(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_395(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_396(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_397(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_398(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      result = args(val) << nil
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_403(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_406(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_407(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_408(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_409(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_410(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_411(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_412(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_413(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 414 omitted
-
-def _reduce_415(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_416(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_417(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_418(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 419 omitted
-
-def _reduce_420(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_433(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_438(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_439(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_442(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_443(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_444(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_445(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_446(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_447(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_448(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_449(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_454(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_455(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_456(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 457 omitted
-
-# reduce 458 omitted
-
-def _reduce_459(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_460(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_461(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 462 omitted
-
-# reduce 463 omitted
-
-def _reduce_464(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 465 omitted
-
-def _reduce_466(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 467 omitted
-
-def _reduce_468(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 469 omitted
-
-def _reduce_470(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_471(val, _values, result)
-                      debug 37
-
-    result
-end
-
-# reduce 472 omitted
-
-def _reduce_473(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_476(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_477(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_479(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_480(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_481(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 482 omitted
-
-def _reduce_483(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_485(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_486(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_487(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_488(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_489(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_491(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_492(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_495(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_497(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_498(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_499(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_500(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_501(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_502(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_503(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_504(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_505(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_506(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_507(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_508(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_509(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 510 omitted
-
-# reduce 511 omitted
-
-# reduce 512 omitted
-
-def _reduce_513(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_514(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 515 omitted
-
-# reduce 516 omitted
-
-# reduce 517 omitted
-
-# reduce 518 omitted
-
-def _reduce_519(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-
-    result
-end
-
-# reduce 520 omitted
-
-def _reduce_521(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 522 omitted
-
-# reduce 523 omitted
-
-# reduce 524 omitted
-
-# reduce 525 omitted
-
-# reduce 526 omitted
-
-# reduce 527 omitted
-
-# reduce 528 omitted
-
-# reduce 529 omitted
-
-# reduce 530 omitted
-
-def _reduce_531(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_532(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_533(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_534(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_535(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_536(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_537(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_538(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 40
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_544(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_545(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_546(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_547(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_548(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_550(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_551(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_552(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 553 omitted
-
-def _reduce_554(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_555(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_556(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_560(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_561(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_562(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_563(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_565(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_566(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_567(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_568(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_569(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_570(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_572(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_573(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_574(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 575 omitted
-
-def _reduce_576(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 577 omitted
-
-# reduce 578 omitted
-
-def _reduce_579(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_580(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_581(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 582 omitted
-
-def _reduce_583(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_584(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_585(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_586(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 587 omitted
-
-def _reduce_588(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 589 omitted
-
-def _reduce_590(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 591 omitted
-
-# reduce 592 omitted
-
-def _reduce_593(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_595(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-
-    result
-end
-
-def _reduce_596(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-
-    result
-end
-
-def _reduce_597(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_598(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_599(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_600(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 601 omitted
-
-# reduce 602 omitted
-
-def _reduce_603(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_604(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 605 omitted
-
-# reduce 606 omitted
-
-def _reduce_607(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_608(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_609(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 610 omitted
-
-def _reduce_611(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_612(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_613(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 614 omitted
-
-# reduce 615 omitted
-
-def _reduce_616(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_617(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_618(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_619(val, _values, result)
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-
-    result
-end
-
-def _reduce_620(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 621 omitted
-
-# reduce 622 omitted
-
-# reduce 623 omitted
-
-# reduce 624 omitted
-
-# reduce 625 omitted
-
-# reduce 626 omitted
-
-# reduce 627 omitted
-
-# reduce 628 omitted
-
-# reduce 629 omitted
-
-# reduce 630 omitted
-
-# reduce 631 omitted
-
-# reduce 632 omitted
-
-# reduce 633 omitted
-
-# reduce 634 omitted
-
-# reduce 635 omitted
-
-# reduce 636 omitted
-
-# reduce 637 omitted
-
-# reduce 638 omitted
-
-# reduce 639 omitted
-
-# reduce 640 omitted
-
-# reduce 641 omitted
-
-# reduce 642 omitted
-
-# reduce 643 omitted
-
-# reduce 644 omitted
-
-# reduce 645 omitted
-
-def _reduce_646(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 647 omitted
-
-# reduce 648 omitted
-
-def _reduce_649(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_650(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby26Parser
diff -pruN 3.20.0-2/lib/ruby26_parser.y 3.21.1-1/lib/ruby26_parser.y
--- 3.20.0-2/lib/ruby26_parser.y	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby26_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,2736 +0,0 @@
-# -*- racc -*-
-
-class Ruby26Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-       tLONELY
-       tBDOT2 tBDOT3
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      yyerror "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 12
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_call kRESCUE_MOD stmt
-                    {
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg                                   =tLBRACE_ARG
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT2
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-                    }
-                | arg tDOT3
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-                    }
-
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 20
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def fname
-                    {
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-                    }
-                    f_arglist bodystmt k_end
-                    {
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fname
-                    {
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                    }
-                    f_arglist bodystmt k_end
-                    {
-
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA
-                    {
-                      result = args(val) << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    bodystmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 37
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 40
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-       f_arglist: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn tEQL arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                    }
-
-     f_block_opt: f_arg_asgn tEQL primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-                | tLONELY # TODO: rename tANDDOT?
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-        rbracket: opt_nl tRBRACK
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby27_parser.rb 3.21.1-1/lib/ruby27_parser.rb
--- 3.20.0-2/lib/ruby27_parser.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby27_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,12996 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby27Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -626,   657,   660,   288,   577,  -112,   288,  -626,  -626,  -626,
-   226,   227,  -626,  -626,  -626,  -106,  -626,  -113,  1095,  -108,
-   577,   577,   226,   227,  -626,   874,  -626,  -626,  -626,   226,
-   227,   795,     3,   833,  1100,   796,  -626,  -626,   232,  -626,
-  -626,  -626,  -626,  -626,   -98,   283,  -744,   577,  -120,  -107,
-  -119,   834,  1099,  -115,  -117,   577,   795,   874,   128,   237,
-   892,   -84,   959,  -105,   656,   659,  -519,  -626,  -626,  -626,
-  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -626,   577,  -106,  -626,  -626,  -626,  -108,  -626,  -626,   781,
-   290,  -626,  -114,   290,  -626,  -626,  1096,  -626,  1135,  -626,
-   237,  -626,   233,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
-  -103,  -626,   237,  -626,  1010,  -729,  -107,  -106,   132,   237,
-  -106,  -108,  -104,   131,  -108,   629,  -626,  -626,  -626,  -626,
-  -105,  -626,  -112,  -626,   132,   132,  -629,  -106,  -626,   131,
-   131,  -108,  -626,  -629,  -629,  -629,  -626,  -113,  -629,  -629,
-  -629,  -107,  -629,  -111,  -107,  -110,  -120,  -119,  -106,  -108,
-  -629,   132,  -629,  -629,  -629,  -105,   131,   958,  -105,   132,
-  -115,  -107,  -629,  -629,   131,  -629,  -629,  -629,  -629,  -629,
-  -117,  -116,  1157,  -114,   223,  -105,  -116,  -118,   898,   132,
-   288,  -640,   630,    97,   131,   132,   236,  -105,  1056,  -641,
-   131,    98,   898,  -629,  -629,  -629,  -629,  -629,  -629,  -629,
-  -629,  -629,  -629,  -629,  -629,  -629,  -629,   224,   288,  -629,
-  -629,  -629,   897,  -629,  -629,   110,   111,  -629,   110,   111,
-  -629,  -629,   237,  -629,   482,  -629,   897,  -629,   225,  -629,
-  -629,  -629,  -629,  -629,  -629,  -629,  -112,  -629,  -118,  -629,
-  -112,  -112,  -729,  -730,   228,   285,   641,  1010,  -113,  -729,
-  1158,  -113,  -629,  -629,  -629,  -629,  -113,  -629,   629,  -629,
-  -120,  -119,  -310,   278,  -629,  -120,  -119,   290,  -629,  -310,
-  -310,  -310,  -629,   285,  -115,  -310,  -310,   626,  -310,  -115,
-  -744,  -107,  -109,  -120,  -117,  -116,  -310,  -114,   629,  -117,
-  -116,   234,  -114,   112,   113,   290,   112,   113,  -310,  -310,
-   556,  -310,  -310,  -310,  -310,  -310,   340,   643,   642,   639,
-   232,   237,  -626,   869,   930,   641,  -730,   231,   132,  -626,
-   870,   637,   636,   131,   786,   630,   229,   743,   679,  -310,
-  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
-  -310,  -310,  -310,   680,   234,  -310,  -310,  -310,   641,   685,
-  -120,   626,  -118,  -310,   993,   630,  -310,  -118,   641,  -119,
-   795,  -310,   629,  -310,   892,  -310,  -310,  -310,  -310,  -310,
-  -310,  -310,  -115,  -310,   233,  -310,   643,   642,   621,  -117,
-   618,   617,   616,   626,   619,   839,  -111,  -115,  -310,  -310,
-   856,  -109,   880,  -310,   629,   637,   636,   876,  -733,  -744,
-  -310,   877,  -117,  -120,  -310,  -733,  -733,  -733,  -118,   643,
-   642,  -733,  -733,  -114,  -733,   341,   624,   606,   841,   643,
-   642,   639,  -733,  -733,  -629,   634,   633,   637,   636,   630,
-   237,  -629,   641,   237,  -733,  -733,  -354,  -733,  -733,  -733,
-  -733,  -733,   584,  -354,   232,   930,   375,   584,  -638,  -114,
-   786,   479,  -354,   641,  -640,  -638,   646,   428,   226,   227,
-   480,   630,   430,   429,  -638,  -733,  -733,  -733,  -733,  -733,
-  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   400,
-  -636,  -733,  -733,  -733,  -635,   686,  -641,  -636,   403,  -733,
-   641,  -635,  -733,   643,   642,   644,  -103,  -733,   406,  -733,
-  -354,  -733,  -733,  -733,  -733,  -733,  -733,  -733,   233,  -733,
-  -733,  -733,  -638,  -112,   643,   642,   621,   409,   618,   617,
-   616,   626,   619,  -639,  -733,  -733,   556,  -107,  -104,  -733,
-  -639,   641,   629,   132,  -733,   641,  -733,   426,   131,  -639,
-  -733,  -733,  -733,  -733,  -116,  -113,  -733,  -733,  -733,  -637,
-  -733,   643,   642,   649,   624,   431,  -637,   481,  -733,  -733,
-  -733,  -733,  -733,   634,   633,   637,   636,   483,  -110,   484,
-  -733,  -733,   232,  -733,  -733,  -733,  -733,  -733,   132,   549,
-   275,   276,  -634,   131,  -301,  -119,   236,  -639,   547,  -634,
-   679,  -301,   643,   642,   654,   514,   643,   642,   661,   630,
-  -301,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
-  -733,  -733,  -733,  -733,  -733,   274,   273,  -733,  -733,  -733,
-  -631,   871,  -733,  -632,   526,  -733,   529,  -631,  -733,  -733,
-  -632,  -733,  -106,  -733,   531,  -733,   233,  -733,  -733,  -733,
-  -733,  -733,  -733,  -733,  -633,  -733,  -733,  -733,  -301,  -115,
-   770,  -633,   621,   769,   618,   617,   616,   626,   619,   232,
-  -733,  -733,  -733,  -733,   602,  -733,   558,  -733,   629,   -83,
-  -310,   603,  -733,   237,   680,   480,  -733,  -310,  -310,  -310,
-  -116,   916,  -310,  -310,  -310,   542,  -310,   917,   232,   770,
-   624,   543,   772,   550,  -310,   588,  -310,  -310,  -310,   634,
-   633,   637,   636,   295,   586,   237,  -310,  -310,   232,  -310,
-  -310,  -310,  -310,  -310,   132,   672,  -108,   132,  -311,   131,
-   232,   856,   131,   233,   670,  -311,   621,   798,   618,   617,
-   616,   285,   619,  -117,  -311,   630,   800,  -310,  -310,  -310,
-  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
-  -310,   132,   233,  -310,  -310,  -310,   131,   872,  -310,   770,
-   553,  -310,   772,  -105,  -310,  -310,   559,  -310,   258,  -310,
-   237,  -310,   233,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
-  -114,  -310,  -311,  -310,   233,   584,   621,   419,   618,   617,
-   616,   626,   619,  -310,   589,   258,  -310,  -310,  -310,  -310,
-  -310,  -310,   629,  -310,   770,  -730,  -310,   772,  -310,  -310,
-   226,   227,  -310,  -310,  -310,  -310,  -118,   590,   874,  -310,
-  -310,  1105,  -310,   237,   624,   648,  1197,   255,   887,   888,
-  -310,   257,   256,   634,   633,   637,   636,  -311,   926,   930,
-   226,   227,  -310,  -310,  -311,  -310,  -310,  -310,  -310,  -310,
-   637,   636,  -310,  -311,   232,   652,   232,  -310,   655,  -310,
-   658,  1176,   258,  1182,  -730,  1133,  1134,   665,  -310,   630,
-   800,   666,  1180,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
-  -310,  -310,  -310,  -310,  -310,  -310,  -310,   926,   930,  -310,
-  -310,  -310,  -283,   685,   255,   668,   669,  -310,   257,   256,
-  -310,  -311,   673,   237,   677,  -310,   678,  -310,   285,  -310,
-  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,   233,  -310,
-   233,   690,   258,   258,   621,   258,   618,   617,   616,   626,
-   619,   232,  -310,  -310,   258,  -310,   725,  -310,  1176,   237,
-   629,   731,  -733,   237,  -310,   237,   426,   800,  -310,  -733,
-  -733,  -733,  -118,   237,   -98,  -733,  -733,  1148,  -733,   618,
-   617,   616,   624,   619,   747,   258,  -733,  -733,   237,   562,
-  -726,   634,   633,   637,   636,   758,   763,   766,  -733,  -733,
-   237,  -733,  -733,  -733,  -733,  -733,   773,   774,   531,   777,
-   621,   766,   618,   617,   616,   233,   619,   255,   766,   766,
-   802,   257,   256,   253,   254,   807,   813,   630,   816,  -733,
-  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,  -733,
-  -733,  -733,  -733,  -626,   258,  -733,  -733,  -733,   826,   686,
-  -626,   816,   818,  -733,   820,  -726,  -733,   830,   822,  -626,
-   824,  -733,   835,  -733,   836,  -733,  -733,  -733,  -733,  -733,
-  -733,  -733,   842,  -733,  -733,  -733,   255,  -726,   843,  -284,
-   257,   256,   253,   254,   857,   514,   514,   237,  -733,  -733,
-   874,  -733,   875,  -733,   891,   621,   894,   618,   617,   616,
-  -733,   619,   278,   904,  -733,   906,   529,  -626,  -116,     8,
-    87,    88,    89,    12,    80,   531,   758,   237,    81,    82,
-   285,   285,  -727,    85,  -733,    83,    84,    86,    33,    34,
-    78,    79,   758,   826,   258,   930,   766,    90,    31,    30,
-   120,   119,   121,   122,   766,   621,    22,   618,   617,   616,
-   237,   619,    11,    51,    10,    13,   124,   123,   125,   114,
-    62,   116,   115,   117,   237,   118,   126,   127,   977,   110,
-   111,   978,    47,    48,    46,  -629,   237,  -733,   987,  -285,
-   237,   992,  -629,   826,  -733,   720,   996,  -727,  1017,  -729,
-  1037,  -629,   830,  -733,    43,   237,   758,    36,   258,  -283,
-    64,    65,  1043,   766,    66,   766,    38,   766,   237,  -727,
-    50,  -733,   766,   766,   268,   269,   982,   983,    23,   237,
-   984,   126,   127,   107,    97,    99,   100,   101,   103,  1066,
-   255,   237,    98,   108,   257,   256,   253,   254,  1072,  -629,
-    91,  -733,   237,    95,   102,   104,   816,   112,   113,   834,
-  1075,    44,    45,   314,    87,    88,    89,    12,    80,  1077,
-  1079,  1081,    81,    82,  1081,   237,  1088,    85,  -286,    83,
-    84,    86,    33,    34,    78,    79,   250,  1089,  1090,  1094,
-  1097,    90,    31,    30,   120,   119,   121,   122,   237,  1148,
-    22,   618,   617,   616,   237,   619,    11,    51,   316,    13,
-   124,   123,   125,   114,    62,   116,   115,   117,   237,   118,
-   126,   127,   237,   110,   111,  1106,    47,    48,    46,   258,
-   262,   263,   264,   265,   275,   276,   270,   271,   266,   267,
-   816,   251,   252,   816,  1110,   268,   269,  1113,    43,  1115,
-  1117,   318,   237,  1119,    64,    65,   766,   807,    66,  1144,
-    38,   255,  1145,   261,    50,   257,   256,   253,   254,   274,
-   273,   259,    23,   260,  1154,  1155,   874,   107,    97,    99,
-   100,   101,   103,  1156,  1159,   874,    98,   108,  1174,   272,
-  1177,   916,  1183,   237,    91,  1198,  1081,    95,   102,   104,
-  1081,   112,   113,  1081,  1204,    44,    45,   314,    87,    88,
-    89,    12,    80,  1207,   816,  1209,    81,    82,  1211,  1213,
-  1215,    85,  1215,    83,    84,    86,    33,    34,    78,    79,
-   135,   136,   137,   138,   139,    90,    31,    30,   120,   119,
-   121,   122,   763,   766,    22,   766,  1155,  1207,  1207,   674,
-    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
-   115,   117,  -730,   118,   126,   127,  -729,   110,   111,   237,
-    47,    48,    46,   258,   262,   263,   264,   265,   275,   276,
-   270,   271,   266,   267,  1081,   251,   252,  1207,  1243,   268,
-   269,  1215,    43,  1215,  1215,    36,  1215,   nil,    64,    65,
-   nil,   nil,    66,   nil,    38,   255,   nil,   261,    50,   257,
-   256,   253,   254,   274,   273,   259,    23,   260,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   272,   nil,  -256,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   135,   136,   137,   138,   139,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   674,    11,    51,   316,    13,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   258,   262,   263,
-   264,   265,   275,   276,   270,   271,   266,   267,   nil,   251,
-   252,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
-   nil,   261,    50,   257,   256,   253,   254,   274,   273,   259,
-    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   272,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   135,   136,
-   137,   138,   139,    90,    31,    30,   120,   119,   121,   122,
-   nil,   nil,    22,   135,   136,   137,   138,   139,    11,    51,
-   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   258,   262,   263,   264,   265,   275,   276,   270,   271,
-   266,   267,   nil,   251,   252,   nil,   nil,   268,   269,   nil,
-    43,   nil,   nil,   318,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,    38,   255,   nil,   261,    50,   257,   256,   253,
-   254,   274,   273,   259,    23,   260,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   272,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
-    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
-   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   258,   262,   263,   264,   265,
-   275,   276,   270,   271,   266,   267,   nil,   251,   252,   nil,
-   nil,   268,   269,   nil,    43,   nil,   nil,   318,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
-    50,   257,   256,   253,   254,   274,   273,   259,    23,   260,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   237,   272,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,   314,    87,    88,    89,    12,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   316,    13,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   258,
-   262,   263,   264,   265,   275,   276,   270,   271,   266,   267,
-   nil,   251,   252,   nil,   nil,   268,   269,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-    38,   255,   nil,   261,    50,   257,   256,   253,   254,   274,
-   273,   259,    23,   260,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   272,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,   314,    87,    88,
-    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   258,   262,   263,   264,   265,   275,   276,
-   270,   271,   266,   267,   nil,   251,   252,   nil,   nil,   268,
-   269,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,    38,   255,   nil,   261,    50,   257,
-   256,   253,   254,   274,   273,   259,    23,   260,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   272,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   258,   262,   263,
-   264,   265,   275,   276,   270,   271,   266,   267,   nil,   251,
-   252,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
-   nil,   261,    50,   257,   256,   253,   254,   274,   273,   259,
-    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   272,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
-   nil,   621,    22,   618,   617,   616,   nil,   619,    11,    51,
-   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   621,   nil,   618,   617,   616,   nil,   619,   621,   826,
-   618,   617,   616,   nil,   619,   nil,   nil,   nil,   830,   nil,
-    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,    38,   nil,   nil,   nil,    50,   nil,   nil,   826,
-   nil,   nil,   nil,   nil,    23,   nil,   826,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
-    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
-   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   258,   262,   263,   264,   265,
-   275,   276,   270,   271,   266,   267,   nil,  -757,  -757,   nil,
-   nil,   268,   269,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
-    50,   257,   256,   253,   254,   274,   273,   259,    23,   260,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,     8,    87,    88,    89,    12,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    51,    10,    13,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   258,
-   262,   263,   264,   265,   275,   276,   270,   271,   266,   267,
-   nil,  -757,  -757,   nil,   nil,   268,   269,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-    38,   255,   nil,   261,    50,   257,   256,   253,   254,   274,
-   273,   259,    23,   260,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,   314,    87,    88,
-    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   258,   262,   263,   264,   265,   275,   276,
-   270,   271,   266,   267,   nil,  -757,  -757,   nil,   nil,   268,
-   269,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,    38,   255,   nil,   261,    50,   257,
-   256,   253,   254,   274,   273,   259,    23,   260,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   258,   262,   263,
-   264,   265,   275,   276,   270,   271,   266,   267,   nil,  -757,
-  -757,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
-   nil,   261,    50,   257,   256,   253,   254,   274,   273,   259,
-    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,
-   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   258,  -757,  -757,  -757,  -757,   275,   276,   nil,   nil,
-  -757,  -757,   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,
-    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,    38,   255,   nil,   261,    50,   257,   256,   253,
-   254,   274,   273,   259,    23,   260,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
-    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
-   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   258,  -757,  -757,  -757,  -757,
-   275,   276,   nil,   nil,  -757,  -757,   nil,   nil,   nil,   nil,
-   nil,   268,   269,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
-    50,   257,   256,   253,   254,   274,   273,   259,    23,   260,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,   314,    87,    88,    89,    12,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   316,    13,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   258,
-  -757,  -757,  -757,  -757,   275,   276,   nil,   nil,  -757,  -757,
-   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-    38,   255,   nil,   261,    50,   257,   256,   253,   254,   274,
-   273,   259,    23,   260,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,   314,    87,    88,
-    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   258,  -757,  -757,  -757,  -757,   275,   276,
-   nil,   nil,  -757,  -757,   nil,   nil,   nil,   nil,   nil,   268,
-   269,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,    38,   255,   nil,   261,    50,   257,
-   256,   253,   254,   274,   273,   259,    23,   260,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   258,  -757,  -757,
-  -757,  -757,   275,   276,   nil,   nil,  -757,  -757,   nil,   nil,
-   nil,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
-   nil,   261,    50,   257,   256,   253,   254,   274,   273,   259,
-    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,
-   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   258,  -757,  -757,  -757,  -757,   275,   276,   nil,   nil,
-  -757,  -757,   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,
-    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,    38,   255,   nil,   261,    50,   257,   256,   253,
-   254,   274,   273,   259,    23,   260,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
-    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
-   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   258,   262,   263,   264,   265,
-   275,   276,   nil,   nil,   266,   267,   nil,   nil,   nil,   nil,
-   nil,   268,   269,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
-    50,   257,   256,   253,   254,   274,   273,   259,    23,   260,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,   314,    87,    88,    89,    12,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   316,    13,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   258,
-   262,   263,   264,   265,   275,   276,   270,   nil,   266,   267,
-   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-    38,   255,   nil,   261,    50,   257,   256,   253,   254,   274,
-   273,   259,    23,   260,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,   314,    87,    88,
-    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   258,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   268,
-   269,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,    38,   255,   nil,   261,    50,   257,
-   256,   253,   254,   nil,   nil,   259,    23,   260,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   258,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
-   nil,   261,    50,   257,   256,   253,   254,   nil,   nil,   259,
-    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,
-   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,
-    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,    38,   255,   nil,   261,    50,   257,   256,   253,
-   254,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
-    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
-   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   258,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   268,   269,   nil,    43,   nil,   nil,    36,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
-    50,   257,   256,   253,   254,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,   314,    87,    88,    89,    12,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   316,    13,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-    38,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,   314,    87,    88,
-    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,    38,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,
-   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,    38,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,
-   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    51,    10,    13,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,    38,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,  -448,   112,
-   113,   nil,   nil,    44,    45,  -448,  -448,  -448,   nil,   nil,
-  -448,  -448,  -448,   621,  -448,   618,   617,   616,   626,   619,
-   nil,   nil,  -448,  -448,  -448,  -448,   nil,   nil,   nil,   629,
-   nil,   nil,   nil,   nil,  -448,  -448,   nil,  -448,  -448,  -448,
-  -448,  -448,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   624,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   637,   636,   nil,  -448,  -448,  -448,  -448,  -448,
-  -448,  -448,  -448,  -448,  -448,  -448,  -448,  -448,  -448,   nil,
-   nil,  -448,  -448,  -448,   nil,   nil,  -448,   nil,   285,  -448,
-   nil,   nil,  -448,  -448,   nil,  -448,   630,  -448,   nil,  -448,
-   nil,  -448,  -448,  -448,  -448,  -448,  -448,  -448,   nil,  -448,
-  -448,  -448,   621,   nil,   618,   617,   616,   626,   619,   nil,
-   nil,   nil,   nil,   nil,  -448,  -448,   nil,  -448,   629,  -448,
-  -319,   nil,   nil,   nil,   nil,   nil,  -448,  -319,  -319,  -319,
-  -448,   nil,  -319,  -319,  -319,   nil,  -319,   nil,   nil,   nil,
-   624,   nil,   nil,   nil,  -319,   nil,  -319,  -319,   nil,   634,
-   633,   637,   636,   nil,   nil,   nil,  -319,  -319,   nil,  -319,
-  -319,  -319,  -319,  -319,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   630,   nil,  -319,  -319,  -319,
-  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,
-  -319,   nil,   nil,  -319,  -319,  -319,   nil,   nil,  -319,   nil,
-   295,  -319,   nil,   nil,  -319,  -319,   nil,  -319,   nil,  -319,
-   nil,  -319,   nil,  -319,  -319,  -319,  -319,  -319,  -319,  -319,
-   nil,  -319,   nil,  -319,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  -319,  -319,   nil,  -319,
-   nil,  -319,    87,    88,    89,   nil,    80,   nil,  -319,   nil,
-    81,    82,  -319,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   307,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   304,   nil,
-   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   307,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   304,   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   307,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   304,   nil,   302,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   107,   305,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   308,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
-   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
-   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,  -302,
-   112,   113,   nil,   nil,    44,    45,  -302,  -302,  -302,   nil,
-   nil,  -302,  -302,  -302,   621,  -302,   618,   617,   616,   626,
-   619,   nil,   nil,  -302,   nil,  -302,  -302,  -302,   nil,   nil,
-   629,   120,   119,   121,   122,  -302,  -302,   nil,  -302,  -302,
-  -302,  -302,  -302,   nil,   nil,   nil,   nil,   124,   123,   125,
-   nil,   nil,   624,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   110,   111,   nil,   637,   636,   337,  -302,  -302,  -302,  -302,
-  -302,  -302,  -302,  -302,  -302,  -302,  -302,  -302,  -302,  -302,
-   nil,   nil,  -302,  -302,  -302,   nil,   nil,  -302,   nil,   nil,
-  -302,   nil,   nil,  -302,  -302,   nil,  -302,   630,  -302,   nil,
-  -302,   nil,  -302,  -302,  -302,  -302,  -302,  -302,  -302,   nil,
-  -302,   nil,  -302,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,  -302,  -302,  -302,  -302,   nil,
-  -302,    91,  -302,   nil,    95,   102,   104,  -302,   112,   113,
-  -756,  -302,    87,    88,    89,    12,    80,  -756,  -756,  -756,
-    81,    82,  -756,  -756,  -756,    85,  -756,    83,    84,    86,
-    33,    34,    78,    79,  -756,  -756,  -756,  -756,   nil,    90,
-    31,    30,   120,   119,   121,   122,  -756,  -756,    22,  -756,
-  -756,  -756,  -756,  -756,    11,    51,   nil,    13,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,  -756,  -756,  -756,
-  -756,  -756,  -756,  -756,  -756,  -756,  -756,  -756,  -756,  -756,
-  -756,   nil,   nil,  -756,  -756,  -756,    43,   nil,  -756,    36,
-   285,  -756,    64,    65,  -756,  -756,    66,  -756,    38,  -756,
-   nil,  -756,    50,  -756,  -756,  -756,  -756,  -756,  -756,  -756,
-    23,  -756,  -756,  -756,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,  -756,  -756,   nil,  -756,
-   nil,  -756,    91,   nil,   nil,    95,   102,   104,  -756,   112,
-   113,   nil,  -756,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
-    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
-    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   132,   nil,   nil,   nil,   nil,
-   131,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,    12,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    51,    10,    13,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-    38,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   419,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
-   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
-   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,    31,    30,   120,   119,   121,   122,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,
-   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    51,   nil,    13,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,    38,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   436,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   436,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
-    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
-    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   307,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   304,   nil,   302,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   107,   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,    31,    30,   120,   119,   121,   122,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   237,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
-   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
-   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
-   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
-   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
-    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
-    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   307,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   304,   nil,   302,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,   516,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   307,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   304,   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   307,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   304,   nil,   302,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   107,   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   237,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,    12,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    51,   nil,    13,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   562,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
-   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
-   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   307,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   304,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   307,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
-   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,  -734,   112,   113,   nil,
-   nil,    44,    45,  -734,  -734,  -734,   nil,   nil,  -734,  -734,
-  -734,   621,  -734,   618,   617,   616,   626,   619,   nil,   nil,
-  -734,  -734,  -734,  -734,  -734,   nil,   nil,   629,   nil,   nil,
-   nil,   nil,  -734,  -734,   nil,  -734,  -734,  -734,  -734,  -734,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   624,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   634,   633,
-   637,   636,   nil,  -734,  -734,  -734,  -734,  -734,  -734,  -734,
-  -734,  -734,  -734,  -734,  -734,  -734,  -734,   nil,   nil,  -734,
-  -734,  -734,   nil,   nil,  -734,   nil,   nil,  -734,   nil,   nil,
-  -734,  -734,   nil,  -734,   630,  -734,   nil,  -734,   nil,  -734,
-  -734,  -734,  -734,  -734,  -734,  -734,   nil,  -734,  -734,  -734,
-   621,   nil,   618,   617,   616,   626,   619,   nil,   nil,   nil,
-   nil,   nil,  -734,  -734,  -734,  -734,   629,  -734,  -735,  -734,
-   nil,   nil,   nil,   nil,  -734,  -735,  -735,  -735,  -734,   nil,
-  -735,  -735,  -735,   nil,  -735,   nil,   nil,   nil,   624,   nil,
-   nil,   nil,  -735,  -735,  -735,  -735,  -735,   nil,   nil,   637,
-   636,   nil,   nil,   nil,  -735,  -735,   nil,  -735,  -735,  -735,
-  -735,  -735,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   630,   nil,  -735,  -735,  -735,  -735,  -735,
-  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,   nil,
-   nil,  -735,  -735,  -735,   nil,   nil,  -735,   nil,   nil,  -735,
-   nil,   nil,  -735,  -735,   nil,  -735,   nil,  -735,   nil,  -735,
-   nil,  -735,  -735,  -735,  -735,  -735,  -735,  -735,   nil,  -735,
-  -735,  -735,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -735,  -735,  -735,  -735,   nil,  -735,
-   nil,  -735,   nil,    87,    88,    89,  -735,    80,   nil,   nil,
-  -735,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,    31,    30,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   307,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   304,
-   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,  -756,   112,
-   113,   nil,   nil,    44,    45,  -756,  -756,  -756,   nil,   nil,
-  -756,  -756,  -756,   nil,  -756,   120,   119,   121,   122,   nil,
-   nil,   nil,  -756,  -756,  -756,   nil,   nil,   nil,   nil,   nil,
-   nil,   124,   123,   125,  -756,  -756,   nil,  -756,  -756,  -756,
-  -756,  -756,   nil,   nil,   110,   111,   nil,   nil,   nil,   337,
-   nil,   nil,   nil,   nil,   nil,   621,   nil,   618,   617,   616,
-   626,   619,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   629,   nil,   nil,   nil,   nil,  -756,   nil,   nil,   nil,
-   nil,   nil,   nil,  -756,   nil,   nil,   nil,   nil,   285,  -756,
-   nil,   nil,   nil,   624,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   637,   636,   nil,    98,   108,   nil,
-  -756,  -756,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,  -756,   nil,    87,    88,    89,  -756,
-    80,   nil,   nil,   nil,    81,    82,  -756,   nil,   630,    85,
-  -756,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   307,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   740,   nil,   302,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   107,   305,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   308,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   307,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,    38,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   419,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
-    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
-    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   307,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   304,   nil,   302,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
-   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,    31,    30,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   307,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   304,
-   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,
-   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,    12,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   nil,
-    13,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,    38,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   848,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
-    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
-    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   307,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   304,   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
-   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
-    51,   nil,    13,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,    38,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   307,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   740,
-   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   307,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   302,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
-   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
-   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
-   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   307,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   740,   nil,   302,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,   516,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   436,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   307,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   740,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   307,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
-   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   937,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-    31,    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   307,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   304,   nil,
-   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
-    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
-    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,
-   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
-    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
-   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   307,   118,   126,   127,   nil,   110,   111,   nil,
-    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   302,   nil,    50,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
-   nil,   107,   305,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   308,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
-    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
-   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
-   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
-   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
-    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
-   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-  1137,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
-   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
-    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
-   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
-    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
-   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
-   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   307,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   304,   nil,   302,   nil,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
-   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,   331,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   621,
-   nil,   618,   617,   616,   626,   619,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   327,   nil,   629,   323,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   322,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   624,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   637,   636,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   630,    83,    84,    86,   333,   334,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,   331,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   621,   nil,
-   618,   617,   616,   626,   619,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   327,   nil,   629,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   624,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   637,   636,   nil,
-    98,   108,   nil,   nil,   nil,   339,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   630,    83,    84,    86,   333,   334,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-   331,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,   nil,
-   nil,   337,   nil,   nil,   nil,   nil,   nil,   621,   nil,   618,
-   617,   616,   626,   619,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   369,   nil,   629,    36,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   624,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   637,   636,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   630,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,   331,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,   nil,   nil,
-   337,   nil,   nil,   nil,   nil,   nil,   621,   nil,   618,   617,
-   616,   626,   619,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   327,   nil,   629,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   624,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   637,   636,   nil,    98,   108,
-   nil,   nil,   nil,   545,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,    87,    88,    89,   nil,    80,
-   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   630,
-    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
-   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,
-   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
-   118,   126,   127,   nil,   110,   111,   nil,   nil,   nil,   337,
-   nil,   nil,   nil,   nil,   nil,   621,   nil,   618,   617,   616,
-   626,   619,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   327,
-   nil,   629,   323,   nil,   nil,    64,    65,   nil,   nil,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   624,   nil,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   637,   636,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,    87,    88,    89,   nil,    80,   nil,
-   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   630,    83,
-    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
-   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,
-   124,   123,   125,   591,    62,   116,   115,   592,   nil,   118,
-   126,   127,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,
-   nil,   nil,   nil,   nil,   621,   nil,   618,   617,   616,   626,
-   619,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   593,   nil,
-   629,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   624,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   637,   636,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,    87,    88,    89,   nil,    80,   nil,   nil,
-   nil,    81,    82,   nil,   nil,   nil,    85,   630,    83,    84,
-    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
-    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,   124,
-   123,   125,   591,    62,   116,   115,   592,   nil,   118,   126,
-   127,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   593,   nil,   nil,
-   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
-    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
-   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
-   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,   124,   123,
-   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
-   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,   323,
-   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
-    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
-   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
-   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,   331,   nil,   nil,   124,   123,   125,
-   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
-   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,   323,   nil,
-   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
-   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
-    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
-   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   nil,   nil,   331,   nil,   nil,   124,   123,   125,   114,
-    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
-   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   327,   nil,   nil,   323,   nil,   nil,
-    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,    87,
-    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
-   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
-    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
-   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   nil,   nil,   331,   nil,   nil,   124,   123,   125,   114,    62,
-   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
-   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   327,   nil,   nil,   323,   nil,   nil,    64,
-    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,    87,    88,
-    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
-   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
-   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
-   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   nil,   331,   nil,   nil,   124,   123,   125,   114,    62,   116,
-   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
-   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1121,   nil,   nil,   248,   nil,   nil,    64,    65,
-   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   nil,    95,   102,   104,   nil,   112,   113,    87,    88,    89,
-   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
-    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
-   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
-   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-   331,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
-   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,   nil,
-   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1128,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
-   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,    87,    88,    89,   nil,
-    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
-   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
-   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,   331,
-   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
-   nil,   118,   126,   127,   nil,   110,   111,   nil,   nil,   nil,
-   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1121,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   190,   201,   191,   214,   187,
-   207,   197,   196,   217,   218,   212,   195,   194,   189,   215,
-   219,   220,   199,   188,   202,   206,   208,   200,   193,   nil,
-   nil,   nil,   209,   216,   211,   210,   203,   213,   198,   186,
-   205,   204,   nil,   nil,   nil,   nil,   nil,   185,   192,   183,
-   184,   180,   181,   182,   143,   145,   142,   nil,   144,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   nil,
-   171,   153,   154,   155,   162,   159,   161,   nil,   nil,   156,
-   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   168,   167,   nil,   152,   174,   170,   169,   165,   166,
-   160,   158,   150,   173,   151,   nil,   nil,   179,   107,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   172,   190,   201,
-   191,   214,   187,   207,   197,   196,   217,   218,   212,   195,
-   194,   189,   215,   219,   220,   199,   188,   202,   206,   208,
-   200,   193,   nil,   nil,   nil,   209,   216,   211,   210,   203,
-   213,   198,   186,   205,   204,   nil,   nil,   nil,   nil,   nil,
-   185,   192,   183,   184,   180,   181,   182,   143,   145,   nil,
-   nil,   144,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   175,   176,   nil,   171,   153,   154,   155,   162,   159,   161,
-   nil,   nil,   156,   157,   nil,   nil,   nil,   177,   178,   163,
-   164,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,
-   169,   165,   166,   160,   158,   150,   173,   151,   nil,   nil,
-   179,   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   108,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   172,   190,   201,   191,   214,   187,   207,   197,   196,   217,
-   218,   212,   195,   194,   189,   215,   219,   220,   199,   188,
-   202,   206,   208,   200,   193,   nil,   nil,   nil,   209,   216,
-   211,   384,   383,   385,   382,   186,   205,   204,   nil,   nil,
-   nil,   nil,   nil,   185,   192,   183,   184,   379,   380,   381,
-   377,   145,   116,   115,   378,   nil,   118,   nil,   nil,   nil,
-   nil,   nil,   nil,   175,   176,   nil,   171,   153,   154,   155,
-   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,
-   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   391,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,
-   152,   174,   170,   169,   165,   166,   160,   158,   150,   173,
-   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   172,   190,   201,   191,   214,   187,   207,
-   197,   196,   217,   218,   212,   195,   194,   189,   215,   219,
-   220,   199,   188,   202,   206,   208,   200,   193,   nil,   nil,
-   nil,   209,   216,   211,   210,   203,   213,   198,   186,   205,
-   204,   nil,   nil,   nil,   nil,   nil,   185,   192,   183,   184,
-   180,   181,   182,   143,   145,   416,   415,   144,   nil,   417,
-   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   nil,   171,
-   153,   154,   155,   162,   159,   161,   nil,   nil,   156,   157,
-   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   168,   167,   nil,   152,   174,   170,   169,   165,   166,   160,
-   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   172,   190,   201,   191,
-   214,   187,   207,   197,   196,   217,   218,   212,   195,   194,
-   189,   215,   219,   220,   199,   188,   202,   206,   208,   200,
-   193,   nil,   nil,   nil,   209,   216,   211,   210,   203,   213,
-   198,   186,   205,   204,   nil,   nil,   nil,   nil,   nil,   185,
-   192,   183,   184,   180,   181,   182,   143,   145,   nil,   nil,
-   144,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,
-   176,   nil,   171,   153,   154,   155,   162,   159,   161,   nil,
-   nil,   156,   157,   nil,   nil,   nil,   177,   178,   163,   164,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,
-   165,   166,   160,   158,   150,   173,   151,   nil,   nil,   179,
-   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   172,
-   190,   201,   191,   214,   187,   207,   197,   196,   217,   218,
-   212,   195,   194,   189,   215,   219,   220,   199,   188,   202,
-   206,   208,   200,   193,   nil,   nil,   nil,   209,   216,   211,
-   210,   203,   213,   198,   186,   205,   204,   nil,   nil,   nil,
-   nil,   nil,   185,   192,   183,   184,   180,   181,   182,   143,
-   145,   nil,   nil,   144,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   175,   176,   nil,   171,   153,   154,   155,   162,
-   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,   177,
-   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,   152,
-   174,   170,   169,   165,   166,   160,   158,   150,   173,   151,
-   nil,   nil,   179,   107,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   172,   190,   201,   191,   214,   187,   207,   197,
-   196,   217,   218,   212,   195,   194,   189,   215,   219,   220,
-   199,   188,   202,   206,   208,   200,   193,   nil,   nil,   nil,
-   209,   216,   211,   210,   203,   213,   198,   186,   205,   204,
-   nil,   nil,   nil,   nil,   nil,   185,   192,   183,   184,   180,
-   181,   182,   143,   145,   nil,   nil,   144,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   175,   176,   nil,   171,   153,
-   154,   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,
-   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,
-   167,   nil,   152,   174,   170,   169,   165,   166,   160,   158,
-   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,
-   120,   119,   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   172,   124,   123,   125,   720,
-   nil,   nil,   nil,   723,   nil,   nil,   nil,   nil,   nil,   110,
-   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   722,   nil,   nil,   704,   nil,   nil,
-   nil,   702,   nil,   nil,   703,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   721,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,   708,   709,   120,   119,   121,   122,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,
-   123,   125,   720,   nil,   nil,   nil,   723,   nil,   nil,   nil,
-   nil,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   722,   nil,   nil,
-   704,   nil,   nil,   nil,   702,   nil,   nil,   703,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   721,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,   708,   709,   120,   119,   121,   122,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   124,   123,   125,   720,   nil,   nil,   nil,   723,
-  1010,   nil,   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,
-   337,   629,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   722,   nil,   nil,   704,   nil,   nil,   nil,   702,   nil,   nil,
-   703,   nil,  1004,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   630,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,   708,   709,   120,
-   119,   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   124,   123,   125,   720,   nil,
-   nil,   nil,   723,  1010,   nil,   nil,   nil,   nil,   110,   111,
-   nil,   nil,   nil,   337,   629,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   722,   nil,   nil,   704,   nil,   nil,   nil,
-   702,   nil,   nil,   703,   nil,  1004,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   630,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-   708,   709,   120,   119,   121,   122,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,   123,
-   125,   720,   nil,   nil,   nil,   723,   nil,   nil,   nil,   nil,
-   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   722,   nil,   nil,   704,
-   nil,   nil,   nil,   702,   nil,   nil,   703,   nil,  1004,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   721,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,   708,   709,   120,   119,   121,   122,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   124,   123,   125,   720,   nil,   nil,   nil,   723,   nil,
-   nil,   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,   337,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   722,
-   nil,   nil,   704,   nil,   nil,   nil,   702,   nil,   nil,   703,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   721,   nil,   nil,   nil,   107,    97,
-    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
-   104,   nil,   112,   113,   nil,   nil,   708,   709,   120,   119,
-   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   124,   123,   125,   720,   nil,   nil,
-   nil,   723,  1010,   nil,   nil,   nil,   nil,   110,   111,   nil,
-   nil,   nil,   337,   629,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   722,   nil,   nil,   704,   nil,   nil,   nil,   702,
-   nil,   nil,   703,   nil,  1004,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   630,    95,   102,   104,   nil,   112,   113,   nil,   nil,   708,
-   709,   120,   119,   121,   122,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,   123,   125,
-   720,   nil,   nil,   nil,   723,   nil,   nil,   nil,   nil,   nil,
-   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   722,   nil,   nil,   704,   nil,
-   nil,   nil,   702,   nil,   nil,   703,   nil,  1093,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   721,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
-   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
-   nil,   nil,   708,   709,   120,   119,   121,   122,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   124,   123,   125,   720,   nil,   nil,   nil,   723,   nil,   nil,
-   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   722,   nil,
-   nil,   704,   nil,   nil,   nil,   702,   nil,   nil,   703,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   721,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   nil,   708,   709,   120,   119,   121,
-   122,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   124,   123,   125,   720,   nil,   nil,   nil,
-   723,   nil,   nil,   nil,   nil,   nil,   110,   111,   nil,   nil,
-   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   722,   nil,   nil,   704,   nil,   nil,   nil,   702,   nil,
-   nil,   703,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,   nil,
-   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-    95,   102,   104,   nil,   112,   113,   nil,   nil,   708,   709,
-   120,   119,   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   124,   123,   125,   720,
-   nil,   nil,   nil,   723,   nil,   nil,   nil,   nil,   nil,   110,
-   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   722,   nil,   nil,   704,   nil,   nil,
-   nil,   702,   nil,   nil,   703,   nil,  1004,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   721,
-   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
-   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
-   nil,   708,   709,   120,   119,   121,   122,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,
-   123,   125,   720,   nil,   nil,   nil,   723,   nil,   nil,   nil,
-   nil,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   722,   nil,   nil,
-   704,   nil,   nil,   nil,   702,   nil,   nil,   703,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   721,   nil,   nil,   nil,   107,    97,    99,   100,
-   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
-   112,   113,   nil,   nil,   708,   709,   120,   119,   121,   122,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   124,   123,   125,   720,   nil,   nil,   nil,   723,
-   nil,   nil,   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,
-   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   722,   nil,   nil,   704,   nil,   nil,   nil,   702,   nil,   nil,
-   703,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,   nil,   107,
-    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
-   102,   104,   nil,   112,   113,   nil,   nil,   708,   709,   120,
-   119,   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   124,   123,   125,   720,   nil,
-   nil,   nil,   723,   nil,   nil,   nil,   nil,   nil,   110,   111,
-   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   722,   nil,   nil,   704,   nil,   nil,   nil,
-   702,   nil,   nil,   703,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,
-   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
-   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
-   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
-   708,   709,   120,   119,   121,   122,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,   123,
-   125,   720,   nil,   nil,   nil,   723,   nil,   nil,   nil,   nil,
-   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   120,   119,   121,   122,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   722,   nil,   nil,   704,
-   124,   123,   125,   702,   nil,   nil,   703,   nil,   nil,   nil,
-   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,
-   nil,   721,   nil,   nil,   nil,   107,    97,    99,   100,   101,
-   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
-   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
-   113,   nil,   nil,   708,   709,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   107,    97,    99,
-   100,   101,   103,   nil,   nil,   nil,    98,   108,   120,   119,
-   121,   122,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
-   nil,   112,   113,   nil,   124,   123,   125,   621,   nil,   618,
-   617,   616,   626,   619,   nil,   nil,   nil,   110,   111,   nil,
-   nil,   nil,   337,   629,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   624,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   634,   633,   637,   636,   nil,   nil,
-   nil,   621,   nil,   618,   617,   616,   626,   619,   nil,   nil,
-   nil,   107,    97,    99,   100,   101,   103,   629,   nil,   nil,
-    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-   630,    95,   102,   104,   nil,   112,   113,   nil,   nil,   624,
-   953,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   634,   633,
-   637,   636,   nil,   nil,   nil,   nil,   459,   463,   nil,   nil,
-   460,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,
-   176,   nil,   171,   153,   154,   155,   162,   159,   161,   nil,
-   nil,   156,   157,   nil,   630,   nil,   177,   178,   163,   164,
-   nil,   nil,   nil,   nil,   953,   285,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,
-   165,   166,   160,   158,   150,   173,   151,   nil,   nil,   179,
-   nil,   nil,   nil,   nil,   466,   470,   nil,   nil,   465,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   172,
-   171,   153,   154,   155,   162,   159,   161,   nil,   nil,   156,
-   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,
-   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   168,   167,   nil,   152,   174,   170,   169,   165,   166,
-   160,   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,
-   nil,   nil,   512,   463,   nil,   nil,   513,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   175,   176,   172,   171,   153,
-   154,   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,
-   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,
-   167,   nil,   152,   174,   170,   169,   165,   166,   160,   158,
-   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,
-   691,   463,   nil,   nil,   692,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   175,   176,   172,   171,   153,   154,   155,
-   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,
-   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   285,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,
-   152,   174,   170,   169,   165,   166,   160,   158,   150,   173,
-   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,   693,   470,
-   nil,   nil,   694,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   175,   176,   172,   171,   153,   154,   155,   162,   159,
-   161,   nil,   nil,   156,   157,   nil,   nil,   nil,   177,   178,
-   163,   164,   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,   152,   174,
-   170,   169,   165,   166,   160,   158,   150,   173,   151,   nil,
-   nil,   179,   nil,   nil,   nil,   nil,   751,   463,   nil,   nil,
-   752,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,
-   176,   172,   171,   153,   154,   155,   162,   159,   161,   nil,
-   nil,   156,   157,   nil,   nil,   nil,   177,   178,   163,   164,
-   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,
-   165,   166,   160,   158,   150,   173,   151,   nil,   nil,   179,
-   nil,   nil,   nil,   nil,   754,   470,   nil,   nil,   755,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   172,
-   171,   153,   154,   155,   162,   159,   161,   nil,   nil,   156,
-   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,
-   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   168,   167,   nil,   152,   174,   170,   169,   165,   166,
-   160,   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,
-   nil,   nil,   691,   463,   nil,   nil,   692,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   175,   176,   172,   171,   153,
-   154,   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,
-   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,
-   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,
-   167,   nil,   152,   174,   170,   169,   165,   166,   160,   158,
-   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,
-   693,   470,   nil,   nil,   694,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   175,   176,   172,   171,   153,   154,   155,
-   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,
-   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   285,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,
-   152,   174,   170,   169,   165,   166,   160,   158,   150,   173,
-   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,   790,   463,
-   nil,   nil,   791,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   175,   176,   172,   171,   153,   154,   155,   162,   159,
-   161,   nil,   nil,   156,   157,   nil,   nil,   nil,   177,   178,
-   163,   164,   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,   152,   174,
-   170,   169,   165,   166,   160,   158,   150,   173,   151,   nil,
-   nil,   179,   nil,   nil,   nil,   nil,   792,   470,   nil,   nil,
-   793,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,
-   176,   172,   171,   153,   154,   155,   162,   159,   161,   nil,
-   nil,   156,   157,   nil,   nil,   nil,   177,   178,   163,   164,
-   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,
-   165,   166,   160,   158,   150,   173,   151,   nil,   nil,   179,
-   nil,   nil,   nil,   nil,   850,   463,   nil,   nil,   851,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   172,
-   171,   153,   154,   155,   162,   159,   161,   nil,   nil,   156,
-   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,
-   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   168,   167,   nil,   152,   174,   170,   169,   165,   166,
-   160,   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,
-   nil,   nil,   853,   470,   nil,   nil,   852,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   175,   176,   172,   171,   153,
-   154,   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,
-   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,
-   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,
-   167,   nil,   152,   174,   170,   169,   165,   166,   160,   158,
-   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,
-   941,   470,   nil,   nil,   942,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   175,   176,   172,   171,   153,   154,   155,
-   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,
-   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   285,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,
-   152,   174,   170,   169,   165,   166,   160,   158,   150,   173,
-   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,   512,   463,
-   nil,   nil,   513,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   175,   176,   172,   171,   153,   154,   155,   162,   159,
-   161,   nil,   nil,   156,   157,   nil,   nil,   nil,   177,   178,
-   163,   164,   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,   152,   174,
-   170,   169,   165,   166,   160,   158,   150,   173,   151,   nil,
-   621,   179,   618,   617,   616,   626,   619,   621,   nil,   618,
-   617,   616,   626,   619,   nil,   nil,   629,   nil,   nil,   nil,
-   nil,   172,   nil,   629,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   624,   nil,
-   nil,   nil,   nil,   nil,   nil,   624,   nil,   634,   633,   637,
-   636,   nil,   nil,   nil,   634,   633,   637,   636,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1219,   470,   nil,   nil,  1218,
-   nil,   nil,   nil,   630,   nil,   nil,   nil,   nil,   175,   176,
-   630,   171,   153,   154,   155,   162,   159,   161,   nil,   nil,
-   156,   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,
-   nil,   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,   165,
-   166,   160,   158,   150,   173,   151,   nil,   nil,   179,   nil,
-   nil,   nil,   nil,  1222,   463,   nil,   nil,  1223,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   172,   171,
-   153,   154,   155,   162,   159,   161,   nil,   nil,   156,   157,
-   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,
-   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   168,   167,   nil,   152,   174,   170,   169,   165,   166,   160,
-   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,
-   nil,  1224,   470,   nil,   nil,  1225,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   175,   176,   172,   171,   153,   154,
-   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,
-   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,
-   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,
-   nil,   152,   174,   170,   169,   165,   166,   160,   158,   150,
-   173,   151,   nil,   621,   179,   618,   617,   616,   626,   619,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   629,
-   nil,   nil,   nil,   nil,   172,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   624,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   634,   633,   637,   636,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   630 ]
-
-racc_action_check = [
-   114,   407,   410,    67,   358,   366,   728,   114,   114,   114,
-   475,   475,   114,   114,   114,   751,   114,   367,  1004,   752,
-   359,  1042,   761,   761,   114,   998,   114,   114,   114,   810,
-   810,   593,     1,   631,  1011,   593,   114,   114,    27,   114,
-   114,   114,   114,   114,   746,    27,   703,  1047,   370,   754,
-   589,   631,  1011,   790,   791,  1050,   722,  1052,     3,   703,
-   722,   746,   811,   911,   407,   410,   998,   114,   114,   114,
-   114,   114,   114,   114,   114,   114,   114,   114,   114,   114,
-   114,   938,   751,   114,   114,   114,   752,   114,   114,   579,
-    67,   114,   939,   728,   114,   114,  1004,   114,  1052,   114,
-   475,   114,    27,   114,   114,   114,   114,   114,   114,   114,
-   366,   114,   761,   114,   883,   754,   754,   751,   358,   810,
-   751,   752,   367,   358,   752,   883,   114,   114,   114,   114,
-   911,   114,  1125,   114,   359,  1042,   117,   751,   114,   359,
-  1042,   752,   114,   117,   117,   117,   114,  1126,   117,   117,
-   117,   754,   117,   370,   754,   589,  1129,  1183,   790,   791,
-   117,  1047,   117,   117,   117,   911,  1047,   811,   911,  1050,
-  1222,   754,   117,   117,  1050,   117,   117,   117,   117,   117,
-  1223,  1224,  1093,  1238,    13,   911,   792,   793,   726,   579,
-    29,   240,   883,    94,   579,   938,    22,   939,   938,   241,
-   938,    94,   905,   117,   117,   117,   117,   117,   117,   117,
-   117,   117,   117,   117,   117,   117,   117,    15,   332,   117,
-   117,   117,   726,   117,   117,    46,    46,   117,   337,   337,
-   117,   117,    22,   117,   243,   117,   905,   117,    16,   117,
-   117,   117,   117,   117,   117,   117,  1125,   117,  1225,   117,
-   240,  1125,   792,   793,    18,    29,   533,  1097,   241,  1224,
-  1093,  1126,   117,   117,   117,   117,  1126,   117,  1097,   117,
-  1129,  1183,   465,    25,   117,  1129,  1183,    29,   117,   465,
-   465,   465,   117,   332,  1222,   465,   465,   813,   465,  1222,
-   702,   792,   793,   243,  1223,  1224,   465,  1238,   813,  1223,
-  1224,   443,  1238,    46,    46,   332,   337,   337,   465,   465,
-   481,   465,   465,   465,   465,   465,    40,   533,   533,   533,
-    19,   702,   377,   691,  1227,   650,  1225,    19,     5,   377,
-   692,   813,   813,     5,  1227,  1097,    19,   533,   850,   465,
-   465,   465,   465,   465,   465,   465,   465,   465,   465,   465,
-   465,   465,   465,   851,    20,   465,   465,   465,   653,   465,
-   443,  1106,  1225,   465,   873,   813,   465,  1225,   394,   481,
-   880,   465,  1106,   465,   880,   465,   465,   465,   465,   465,
-   465,   465,   691,   465,    19,   465,   650,   650,   392,   692,
-   392,   392,   392,   392,   392,   650,    20,   850,   465,   465,
-   989,   465,   701,   465,   392,  1106,  1106,   701,   466,   877,
-   465,   701,   851,    20,   465,   466,   466,   466,   465,   653,
-   653,   466,   466,   873,   466,    43,   392,   392,   653,   394,
-   394,   394,   466,   466,   378,   392,   392,   392,   392,  1106,
-   877,   378,   396,    51,   466,   466,    52,   466,   466,   466,
-   466,   466,   582,    52,   239,  1138,    75,  1138,   324,   989,
-   582,   239,    52,   398,    41,   324,   398,   142,    17,    17,
-   239,   392,   142,   142,   324,   466,   466,   466,   466,   466,
-   466,   466,   466,   466,   466,   466,   466,   466,   466,   101,
-   379,   466,   466,   466,   380,   466,    42,   379,   102,   466,
-   401,   380,   466,   396,   396,   396,    41,   466,   103,   466,
-    52,   466,   466,   466,   466,   466,   466,   466,   239,   466,
-   466,   466,   324,    41,   398,   398,   606,   104,   606,   606,
-   606,   606,   606,   325,   466,   466,   341,   466,    42,   466,
-   325,   404,   606,   311,   693,   412,   466,   140,   311,   325,
-   466,   693,   693,   693,   466,    42,   693,   693,   693,   381,
-   693,   401,   401,   401,   606,   221,   381,   242,   693,   693,
-   693,   693,   693,   606,   606,   606,   606,   244,   341,   245,
-   693,   693,   326,   693,   693,   693,   693,   693,   363,   326,
-    49,    49,   382,   363,   328,   341,   249,   325,   326,   382,
-   459,   328,   404,   404,   404,   284,   412,   412,   412,   606,
-   328,   693,   693,   693,   693,   693,   693,   693,   693,   693,
-   693,   693,   693,   693,   693,    49,    49,   693,   693,   693,
-   383,   693,   693,   384,   299,   693,   300,   383,   693,   693,
-   384,   693,   459,   693,   303,   693,   326,   693,   693,   693,
-   693,   693,   693,   693,   385,   693,   693,   693,   328,   459,
-   568,   385,   808,   568,   808,   808,   808,   808,   808,   342,
-   693,   693,   693,   693,   387,   693,   342,   693,   808,   317,
-   694,   387,   693,   319,   460,   342,   693,   694,   694,   694,
-   693,   762,   694,   694,   694,   320,   694,   762,   368,   569,
-   808,   321,   569,   327,   694,   368,   694,   694,   694,   808,
-   808,   808,   808,   330,   368,   331,   694,   694,   442,   694,
-   694,   694,   694,   694,   947,   442,   460,   954,   550,   947,
-   595,   675,   954,   342,   442,   550,   830,   595,   830,   830,
-   830,   336,   830,   460,   550,   808,   595,   694,   694,   694,
-   694,   694,   694,   694,   694,   694,   694,   694,   694,   694,
-   694,  1061,   368,   694,   694,   694,  1061,   694,   694,   573,
-   338,   694,   573,   675,   694,   694,   345,   694,   347,   694,
-   353,   694,   442,   694,   694,   694,   694,   694,   694,   694,
-   675,   694,   550,   694,   595,   364,   818,   365,   818,   818,
-   818,   818,   818,   755,   369,   488,   694,   694,   694,   694,
-   755,   694,   818,   694,   924,   755,   852,   924,   694,   755,
-   357,   357,   694,   852,   852,   852,   694,   371,  1018,   852,
-   852,  1018,   852,  1146,   818,   400,  1146,   488,   705,   705,
-   852,   488,   488,   818,   818,   818,   818,   796,   776,   776,
-   804,   804,   852,   852,   796,   852,   852,   852,   852,   852,
-   816,   816,   942,   796,  1120,   403,  1127,   755,   406,   942,
-   409,  1120,   489,  1127,   942,  1051,  1051,   432,   942,   818,
-  1120,   434,  1127,   852,   852,   852,   852,   852,   852,   852,
-   852,   852,   852,   852,   852,   852,   852,  1184,  1184,   852,
-   852,   852,   435,   852,   489,   437,   440,   852,   489,   489,
-   852,   796,   444,   454,   457,   852,   458,   852,   467,   852,
-   852,   852,   852,   852,   852,   852,   942,   852,  1120,   852,
-  1127,   477,   490,   491,   820,   492,   820,   820,   820,   820,
-   820,  1175,   852,   852,   493,   852,   509,   852,  1175,   517,
-   820,   518,   853,   519,   852,   523,   539,  1175,   852,   853,
-   853,   853,   852,   540,   541,   853,   853,  1072,   853,  1072,
-  1072,  1072,   820,  1072,   544,   503,   853,   853,   546,   551,
-   591,   820,   820,   820,   820,   554,   563,   564,   853,   853,
-   565,   853,   853,   853,   853,   853,   570,   571,   574,   576,
-   624,   580,   624,   624,   624,  1175,   624,   503,   581,   583,
-   597,   503,   503,   503,   503,   600,   608,   820,   609,   853,
-   853,   853,   853,   853,   853,   853,   853,   853,   853,   853,
-   853,   853,   853,   591,   504,   853,   853,   853,   624,   853,
-   591,   610,   612,   853,   613,   591,   853,   624,   614,   591,
-   623,   853,   635,   853,   638,   853,   853,   853,   853,   853,
-   853,   853,   657,   853,   853,   853,   504,   591,   660,   667,
-   504,   504,   504,   504,   676,   681,   687,   695,   853,   853,
-   696,   853,   698,   853,   721,   978,   724,   978,   978,   978,
-   853,   978,   727,   733,   853,   735,   737,   591,   853,     2,
-     2,     2,     2,     2,     2,   739,   748,   750,     2,     2,
-   753,   756,   592,     2,   941,     2,     2,     2,     2,     2,
-     2,     2,   757,   978,   760,   778,   784,     2,     2,     2,
-     2,     2,     2,     2,   785,   826,     2,   826,   826,   826,
-   789,   826,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,   812,     2,     2,     2,   828,     2,
-     2,   829,     2,     2,     2,   592,   831,   941,   844,   847,
-   849,   858,   592,   826,   941,   874,   876,   592,   885,   941,
-   902,   592,   826,   941,     2,   903,   910,     2,   496,   920,
-     2,     2,   921,   925,     2,   931,     2,   940,   944,   592,
-     2,   941,   948,   949,   496,   496,   837,   837,     2,   950,
-   837,   837,   837,     2,     2,     2,     2,     2,     2,   951,
-   496,   952,     2,     2,   496,   496,   496,   496,   960,   592,
-     2,   941,   961,     2,     2,     2,   962,     2,     2,   964,
-   967,     2,     2,    36,    36,    36,    36,    36,    36,   968,
-   970,   971,    36,    36,   973,   976,   986,    36,   988,    36,
-    36,    36,    36,    36,    36,    36,    24,   999,  1000,  1003,
-  1005,    36,    36,    36,    36,    36,    36,    36,  1012,  1197,
-    36,  1197,  1197,  1197,  1013,  1197,    36,    36,    36,    36,
-    36,    36,    36,    36,    36,    36,    36,    36,  1015,    36,
-    36,    36,  1016,    36,    36,  1022,    36,    36,    36,    24,
-    24,    24,    24,    24,    24,    24,    24,    24,    24,    24,
-  1023,    24,    24,  1024,  1026,    24,    24,  1027,    36,  1028,
-  1030,    36,  1031,  1032,    36,    36,  1060,  1069,    36,  1070,
-    36,    24,  1071,    24,    36,    24,    24,    24,    24,    24,
-    24,    24,    36,    24,  1086,  1087,  1091,    36,    36,    36,
-    36,    36,    36,  1092,  1095,  1098,    36,    36,  1118,    24,
-  1121,  1123,  1128,  1142,    36,  1150,  1151,    36,    36,    36,
-  1152,    36,    36,  1153,  1157,    36,    36,   223,   223,   223,
-   223,   223,   223,  1160,  1165,  1168,   223,   223,  1169,  1170,
-  1171,   223,  1173,   223,   223,   223,   223,   223,   223,   223,
-     9,     9,     9,     9,     9,   223,   223,   223,   223,   223,
-   223,   223,  1179,  1193,   223,  1195,  1203,  1205,  1206,   447,
-   223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
-   223,   223,  1218,   223,   223,   223,  1219,   223,   223,  1221,
-   223,   223,   223,   447,   447,   447,   447,   447,   447,   447,
-   447,   447,   447,   447,  1231,   447,   447,  1232,  1234,   447,
-   447,  1235,   223,  1236,  1237,   223,  1248,   nil,   223,   223,
-   nil,   nil,   223,   nil,   223,   447,   nil,   447,   223,   447,
-   447,   447,   447,   447,   447,   447,   223,   447,   nil,   nil,
-   nil,   223,   223,   223,   223,   223,   223,   nil,   nil,   nil,
-   223,   223,   nil,   447,   nil,   447,   nil,   nil,   223,   nil,
-   nil,   223,   223,   223,   nil,   223,   223,   nil,   nil,   223,
-   223,   248,   248,   248,   248,   248,   248,   nil,   nil,   nil,
-   248,   248,   nil,   nil,   nil,   248,   nil,   248,   248,   248,
-   248,   248,   248,   248,   315,   315,   315,   315,   315,   248,
-   248,   248,   248,   248,   248,   248,   nil,   nil,   248,   nil,
-   nil,   nil,   nil,   453,   248,   248,   248,   248,   248,   248,
-   248,   248,   248,   248,   248,   248,   nil,   248,   248,   248,
-   nil,   248,   248,   nil,   248,   248,   248,   453,   453,   453,
-   453,   453,   453,   453,   453,   453,   453,   453,   nil,   453,
-   453,   nil,   nil,   453,   453,   nil,   248,   nil,   nil,   248,
-   nil,   nil,   248,   248,   nil,   nil,   248,   nil,   248,   453,
-   nil,   453,   248,   453,   453,   453,   453,   453,   453,   453,
-   248,   453,   nil,   nil,   nil,   248,   248,   248,   248,   248,
-   248,   nil,   nil,   nil,   248,   248,   nil,   453,   nil,   nil,
-   nil,   nil,   248,   nil,   nil,   248,   248,   248,   nil,   248,
-   248,   nil,   nil,   248,   248,   318,   318,   318,   318,   318,
-   318,   nil,   nil,   nil,   318,   318,   nil,   nil,   nil,   318,
-   nil,   318,   318,   318,   318,   318,   318,   318,   352,   352,
-   352,   352,   352,   318,   318,   318,   318,   318,   318,   318,
-   nil,   nil,   318,   538,   538,   538,   538,   538,   318,   318,
-   318,   318,   318,   318,   318,   318,   318,   318,   318,   318,
-   nil,   318,   318,   318,   nil,   318,   318,   nil,   318,   318,
-   318,   297,   297,   297,   297,   297,   297,   297,   297,   297,
-   297,   297,   nil,   297,   297,   nil,   nil,   297,   297,   nil,
-   318,   nil,   nil,   318,   nil,   nil,   318,   318,   nil,   nil,
-   318,   nil,   318,   297,   nil,   297,   318,   297,   297,   297,
-   297,   297,   297,   297,   318,   297,   nil,   nil,   nil,   318,
-   318,   318,   318,   318,   318,   nil,   nil,   nil,   318,   318,
-   nil,   297,   nil,   nil,   nil,   nil,   318,   nil,   nil,   318,
-   318,   318,   nil,   318,   318,   nil,   nil,   318,   318,   323,
-   323,   323,   323,   323,   323,   nil,   nil,   nil,   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,   323,   323,   323,   323,   323,   323,   323,   323,
-   323,   323,   323,   323,   nil,   323,   323,   323,   nil,   323,
-   323,   nil,   323,   323,   323,   507,   507,   507,   507,   507,
-   507,   507,   507,   507,   507,   507,   nil,   507,   507,   nil,
-   nil,   507,   507,   nil,   323,   nil,   nil,   323,   nil,   nil,
-   323,   323,   nil,   nil,   323,   nil,   323,   507,   nil,   507,
-   323,   507,   507,   507,   507,   507,   507,   507,   323,   507,
-   nil,   nil,   nil,   323,   323,   323,   323,   323,   323,   nil,
-   nil,   nil,   323,   323,   507,   507,   nil,   nil,   nil,   nil,
-   323,   nil,   nil,   323,   323,   323,   nil,   323,   323,   nil,
-   nil,   323,   323,   351,   351,   351,   351,   351,   351,   nil,
-   nil,   nil,   351,   351,   nil,   nil,   nil,   351,   nil,   351,
-   351,   351,   351,   351,   351,   351,   nil,   nil,   nil,   nil,
-   nil,   351,   351,   351,   351,   351,   351,   351,   nil,   nil,
-   351,   nil,   nil,   nil,   nil,   nil,   351,   351,   351,   351,
-   351,   351,   351,   351,   351,   351,   351,   351,   nil,   351,
-   351,   351,   nil,   351,   351,   nil,   351,   351,   351,   561,
-   561,   561,   561,   561,   561,   561,   561,   561,   561,   561,
-   nil,   561,   561,   nil,   nil,   561,   561,   nil,   351,   nil,
-   nil,   351,   nil,   nil,   351,   351,   nil,   nil,   351,   nil,
-   351,   561,   nil,   561,   351,   561,   561,   561,   561,   561,
-   561,   561,   351,   561,   nil,   nil,   nil,   351,   351,   351,
-   351,   351,   351,   nil,   nil,   nil,   351,   351,   nil,   561,
-   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,   351,   351,
-   nil,   351,   351,   nil,   nil,   351,   351,   361,   361,   361,
-   361,   361,   361,   nil,   nil,   nil,   361,   361,   nil,   nil,
-   nil,   361,   nil,   361,   361,   361,   361,   361,   361,   361,
-   nil,   nil,   nil,   nil,   nil,   361,   361,   361,   361,   361,
-   361,   361,   nil,   nil,   361,   nil,   nil,   nil,   nil,   nil,
-   361,   361,   361,   361,   361,   361,   361,   361,   361,   361,
-   361,   361,   nil,   361,   361,   361,   nil,   361,   361,   nil,
-   361,   361,   361,   855,   855,   855,   855,   855,   855,   855,
-   855,   855,   855,   855,   nil,   855,   855,   nil,   nil,   855,
-   855,   nil,   361,   nil,   nil,   361,   nil,   nil,   361,   361,
-   nil,   nil,   361,   nil,   361,   855,   nil,   855,   361,   855,
-   855,   855,   855,   855,   855,   855,   361,   855,   nil,   nil,
-   nil,   361,   361,   361,   361,   361,   361,   nil,   nil,   nil,
-   361,   361,   nil,   855,   nil,   nil,   nil,   nil,   361,   nil,
-   nil,   361,   361,   361,   nil,   361,   361,   nil,   nil,   361,
-   361,   362,   362,   362,   362,   362,   362,   nil,   nil,   nil,
-   362,   362,   nil,   nil,   nil,   362,   nil,   362,   362,   362,
-   362,   362,   362,   362,   nil,   nil,   nil,   nil,   nil,   362,
-   362,   362,   362,   362,   362,   362,   nil,   nil,   362,   nil,
-   nil,   nil,   nil,   nil,   362,   362,   362,   362,   362,   362,
-   362,   362,   362,   362,   362,   362,   nil,   362,   362,   362,
-   nil,   362,   362,   nil,   362,   362,   362,  1021,  1021,  1021,
-  1021,  1021,  1021,  1021,  1021,  1021,  1021,  1021,   nil,  1021,
-  1021,   nil,   nil,  1021,  1021,   nil,   362,   nil,   nil,   362,
-   nil,   nil,   362,   362,   nil,   nil,   362,   nil,   362,  1021,
-   nil,  1021,   362,  1021,  1021,  1021,  1021,  1021,  1021,  1021,
-   362,  1021,   nil,   nil,   nil,   362,   362,   362,   362,   362,
-   362,   nil,   nil,   nil,   362,   362,   nil,  1021,   nil,   nil,
-   nil,   nil,   362,   nil,   nil,   362,   362,   362,   nil,   362,
-   362,   nil,   nil,   362,   362,   575,   575,   575,   575,   575,
-   575,   nil,   nil,   nil,   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,   977,   575,   977,   977,   977,   nil,   977,   575,   575,
-   575,   575,   575,   575,   575,   575,   575,   575,   575,   575,
-   nil,   575,   575,   575,   nil,   575,   575,   nil,   575,   575,
-   575,  1154,   nil,  1154,  1154,  1154,   nil,  1154,  1155,   977,
-  1155,  1155,  1155,   nil,  1155,   nil,   nil,   nil,   977,   nil,
-   575,   nil,   nil,   575,   nil,   nil,   575,   575,   nil,   nil,
-   575,   nil,   575,   nil,   nil,   nil,   575,   nil,   nil,  1154,
-   nil,   nil,   nil,   nil,   575,   nil,  1155,   nil,   nil,   575,
-   575,   575,   575,   575,   575,   nil,   nil,   nil,   575,   575,
-   nil,   nil,   nil,   nil,   nil,   nil,   575,   nil,   nil,   575,
-   575,   575,   nil,   575,   575,   nil,   nil,   575,   575,   578,
-   578,   578,   578,   578,   578,   nil,   nil,   nil,   578,   578,
-   nil,   nil,   nil,   578,   nil,   578,   578,   578,   578,   578,
-   578,   578,   nil,   nil,   nil,   nil,   nil,   578,   578,   578,
-   578,   578,   578,   578,   nil,   nil,   578,   nil,   nil,   nil,
-   nil,   nil,   578,   578,   578,   578,   578,   578,   578,   578,
-   578,   578,   578,   578,   nil,   578,   578,   578,   nil,   578,
-   578,   nil,   578,   578,   578,   343,   343,   343,   343,   343,
-   343,   343,   343,   343,   343,   343,   nil,   343,   343,   nil,
-   nil,   343,   343,   nil,   578,   nil,   nil,   578,   nil,   nil,
-   578,   578,   nil,   nil,   578,   nil,   578,   343,   nil,   343,
-   578,   343,   343,   343,   343,   343,   343,   343,   578,   343,
-   nil,   nil,   nil,   578,   578,   578,   578,   578,   578,   nil,
-   nil,   nil,   578,   578,   nil,   nil,   nil,   nil,   nil,   nil,
-   578,   nil,   nil,   578,   578,   578,   nil,   578,   578,   nil,
-   nil,   578,   578,   662,   662,   662,   662,   662,   662,   nil,
-   nil,   nil,   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,   662,   662,   662,   662,
-   662,   662,   662,   662,   662,   662,   662,   662,   nil,   662,
-   662,   662,   nil,   662,   662,   nil,   662,   662,   662,   344,
-   344,   344,   344,   344,   344,   344,   344,   344,   344,   344,
-   nil,   344,   344,   nil,   nil,   344,   344,   nil,   662,   nil,
-   nil,   662,   nil,   nil,   662,   662,   nil,   nil,   662,   nil,
-   662,   344,   nil,   344,   662,   344,   344,   344,   344,   344,
-   344,   344,   662,   344,   nil,   nil,   nil,   662,   662,   662,
-   662,   662,   662,   nil,   nil,   nil,   662,   662,   nil,   nil,
-   nil,   nil,   nil,   nil,   662,   nil,   nil,   662,   662,   662,
-   nil,   662,   662,   nil,   nil,   662,   662,   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,   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,   nil,   794,   794,   794,   nil,   794,   794,   nil,
-   794,   794,   794,   486,   486,   486,   486,   486,   486,   486,
-   486,   486,   486,   486,   nil,   486,   486,   nil,   nil,   486,
-   486,   nil,   794,   nil,   nil,   794,   nil,   nil,   794,   794,
-   nil,   nil,   794,   nil,   794,   486,   nil,   486,   794,   486,
-   486,   486,   486,   486,   486,   486,   794,   486,   nil,   nil,
-   nil,   794,   794,   794,   794,   794,   794,   nil,   nil,   nil,
-   794,   794,   nil,   nil,   nil,   nil,   nil,   nil,   794,   nil,
-   nil,   794,   794,   794,   nil,   794,   794,   nil,   nil,   794,
-   794,   805,   805,   805,   805,   805,   805,   nil,   nil,   nil,
-   805,   805,   nil,   nil,   nil,   805,   nil,   805,   805,   805,
-   805,   805,   805,   805,   nil,   nil,   nil,   nil,   nil,   805,
-   805,   805,   805,   805,   805,   805,   nil,   nil,   805,   nil,
-   nil,   nil,   nil,   nil,   805,   805,   805,   805,   805,   805,
-   805,   805,   805,   805,   805,   805,   nil,   805,   805,   805,
-   nil,   805,   805,   nil,   805,   805,   805,   487,   487,   487,
-   487,   487,   487,   487,   487,   487,   487,   487,   nil,   487,
-   487,   nil,   nil,   487,   487,   nil,   805,   nil,   nil,   805,
-   nil,   nil,   805,   805,   nil,   nil,   805,   nil,   805,   487,
-   nil,   487,   805,   487,   487,   487,   487,   487,   487,   487,
-   805,   487,   nil,   nil,   nil,   805,   805,   805,   805,   805,
-   805,   nil,   nil,   nil,   805,   805,   nil,   nil,   nil,   nil,
-   nil,   nil,   805,   nil,   nil,   805,   805,   805,   nil,   805,
-   805,   nil,   nil,   805,   805,   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,   nil,   806,   nil,   nil,   nil,   nil,   nil,   806,   806,
-   806,   806,   806,   806,   806,   806,   806,   806,   806,   806,
-   nil,   806,   806,   806,   nil,   806,   806,   nil,   806,   806,
-   806,   497,   497,   497,   497,   497,   497,   497,   nil,   nil,
-   497,   497,   nil,   nil,   nil,   nil,   nil,   497,   497,   nil,
-   806,   nil,   nil,   806,   nil,   nil,   806,   806,   nil,   nil,
-   806,   nil,   806,   497,   nil,   497,   806,   497,   497,   497,
-   497,   497,   497,   497,   806,   497,   nil,   nil,   nil,   806,
-   806,   806,   806,   806,   806,   nil,   nil,   nil,   806,   806,
-   nil,   nil,   nil,   nil,   nil,   nil,   806,   nil,   nil,   806,
-   806,   806,   nil,   806,   806,   nil,   nil,   806,   806,   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,   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,   nil,   838,   838,   838,   nil,   838,
-   838,   nil,   838,   838,   838,   498,   498,   498,   498,   498,
-   498,   498,   nil,   nil,   498,   498,   nil,   nil,   nil,   nil,
-   nil,   498,   498,   nil,   838,   nil,   nil,   838,   nil,   nil,
-   838,   838,   nil,   nil,   838,   nil,   838,   498,   nil,   498,
-   838,   498,   498,   498,   498,   498,   498,   498,   838,   498,
-   nil,   nil,   nil,   838,   838,   838,   838,   838,   838,   nil,
-   nil,   nil,   838,   838,   nil,   nil,   nil,   nil,   nil,   nil,
-   838,   nil,   nil,   838,   838,   838,   nil,   838,   838,   nil,
-   nil,   838,   838,   899,   899,   899,   899,   899,   899,   nil,
-   nil,   nil,   899,   899,   nil,   nil,   nil,   899,   nil,   899,
-   899,   899,   899,   899,   899,   899,   nil,   nil,   nil,   nil,
-   nil,   899,   899,   899,   899,   899,   899,   899,   nil,   nil,
-   899,   nil,   nil,   nil,   nil,   nil,   899,   899,   899,   899,
-   899,   899,   899,   899,   899,   899,   899,   899,   nil,   899,
-   899,   899,   nil,   899,   899,   nil,   899,   899,   899,   499,
-   499,   499,   499,   499,   499,   499,   nil,   nil,   499,   499,
-   nil,   nil,   nil,   nil,   nil,   499,   499,   nil,   899,   nil,
-   nil,   899,   nil,   nil,   899,   899,   nil,   nil,   899,   nil,
-   899,   499,   nil,   499,   899,   499,   499,   499,   499,   499,
-   499,   499,   899,   499,   nil,   nil,   nil,   899,   899,   899,
-   899,   899,   899,   nil,   nil,   nil,   899,   899,   nil,   nil,
-   nil,   nil,   nil,   nil,   899,   nil,   nil,   899,   899,   899,
-   nil,   899,   899,   nil,   nil,   899,   899,   918,   918,   918,
-   918,   918,   918,   nil,   nil,   nil,   918,   918,   nil,   nil,
-   nil,   918,   nil,   918,   918,   918,   918,   918,   918,   918,
-   nil,   nil,   nil,   nil,   nil,   918,   918,   918,   918,   918,
-   918,   918,   nil,   nil,   918,   nil,   nil,   nil,   nil,   nil,
-   918,   918,   918,   918,   918,   918,   918,   918,   918,   918,
-   918,   918,   nil,   918,   918,   918,   nil,   918,   918,   nil,
-   918,   918,   918,   500,   500,   500,   500,   500,   500,   500,
-   nil,   nil,   500,   500,   nil,   nil,   nil,   nil,   nil,   500,
-   500,   nil,   918,   nil,   nil,   918,   nil,   nil,   918,   918,
-   nil,   nil,   918,   nil,   918,   500,   nil,   500,   918,   500,
-   500,   500,   500,   500,   500,   500,   918,   500,   nil,   nil,
-   nil,   918,   918,   918,   918,   918,   918,   nil,   nil,   nil,
-   918,   918,   nil,   nil,   nil,   nil,   nil,   nil,   918,   nil,
-   nil,   918,   918,   918,   nil,   918,   918,   nil,   nil,   918,
-   918,   930,   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,   930,   930,   930,   930,
-   930,   930,   930,   930,   930,   930,   nil,   930,   930,   930,
-   nil,   930,   930,   nil,   930,   930,   930,   501,   501,   501,
-   501,   501,   501,   501,   nil,   nil,   501,   501,   nil,   nil,
-   nil,   nil,   nil,   501,   501,   nil,   930,   nil,   nil,   930,
-   nil,   nil,   930,   930,   nil,   nil,   930,   nil,   930,   501,
-   nil,   501,   930,   501,   501,   501,   501,   501,   501,   501,
-   930,   501,   nil,   nil,   nil,   930,   930,   930,   930,   930,
-   930,   nil,   nil,   nil,   930,   930,   nil,   nil,   nil,   nil,
-   nil,   nil,   930,   nil,   nil,   930,   930,   930,   nil,   930,
-   930,   nil,   nil,   930,   930,   945,   945,   945,   945,   945,
-   945,   nil,   nil,   nil,   945,   945,   nil,   nil,   nil,   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,   945,   945,
-   945,   945,   945,   945,   945,   945,   945,   945,   945,   945,
-   nil,   945,   945,   945,   nil,   945,   945,   nil,   945,   945,
-   945,   502,   502,   502,   502,   502,   502,   502,   nil,   nil,
-   502,   502,   nil,   nil,   nil,   nil,   nil,   502,   502,   nil,
-   945,   nil,   nil,   945,   nil,   nil,   945,   945,   nil,   nil,
-   945,   nil,   945,   502,   nil,   502,   945,   502,   502,   502,
-   502,   502,   502,   502,   945,   502,   nil,   nil,   nil,   945,
-   945,   945,   945,   945,   945,   nil,   nil,   nil,   945,   945,
-   nil,   nil,   nil,   nil,   nil,   nil,   945,   nil,   nil,   945,
-   945,   945,   nil,   945,   945,   nil,   nil,   945,   945,   958,
-   958,   958,   958,   958,   958,   nil,   nil,   nil,   958,   958,
-   nil,   nil,   nil,   958,   nil,   958,   958,   958,   958,   958,
-   958,   958,   nil,   nil,   nil,   nil,   nil,   958,   958,   958,
-   958,   958,   958,   958,   nil,   nil,   958,   nil,   nil,   nil,
-   nil,   nil,   958,   958,   958,   958,   958,   958,   958,   958,
-   958,   958,   958,   958,   nil,   958,   958,   958,   nil,   958,
-   958,   nil,   958,   958,   958,   505,   505,   505,   505,   505,
-   505,   505,   nil,   nil,   505,   505,   nil,   nil,   nil,   nil,
-   nil,   505,   505,   nil,   958,   nil,   nil,   958,   nil,   nil,
-   958,   958,   nil,   nil,   958,   nil,   958,   505,   nil,   505,
-   958,   505,   505,   505,   505,   505,   505,   505,   958,   505,
-   nil,   nil,   nil,   958,   958,   958,   958,   958,   958,   nil,
-   nil,   nil,   958,   958,   nil,   nil,   nil,   nil,   nil,   nil,
-   958,   nil,   nil,   958,   958,   958,   nil,   958,   958,   nil,
-   nil,   958,   958,   959,   959,   959,   959,   959,   959,   nil,
-   nil,   nil,   959,   959,   nil,   nil,   nil,   959,   nil,   959,
-   959,   959,   959,   959,   959,   959,   nil,   nil,   nil,   nil,
-   nil,   959,   959,   959,   959,   959,   959,   959,   nil,   nil,
-   959,   nil,   nil,   nil,   nil,   nil,   959,   959,   959,   959,
-   959,   959,   959,   959,   959,   959,   959,   959,   nil,   959,
-   959,   959,   nil,   959,   959,   nil,   959,   959,   959,   506,
-   506,   506,   506,   506,   506,   506,   506,   nil,   506,   506,
-   nil,   nil,   nil,   nil,   nil,   506,   506,   nil,   959,   nil,
-   nil,   959,   nil,   nil,   959,   959,   nil,   nil,   959,   nil,
-   959,   506,   nil,   506,   959,   506,   506,   506,   506,   506,
-   506,   506,   959,   506,   nil,   nil,   nil,   959,   959,   959,
-   959,   959,   959,   nil,   nil,   nil,   959,   959,   nil,   nil,
-   nil,   nil,   nil,   nil,   959,   nil,   nil,   959,   959,   959,
-   nil,   959,   959,   nil,   nil,   959,   959,  1039,  1039,  1039,
-  1039,  1039,  1039,   nil,   nil,   nil,  1039,  1039,   nil,   nil,
-   nil,  1039,   nil,  1039,  1039,  1039,  1039,  1039,  1039,  1039,
-   nil,   nil,   nil,   nil,   nil,  1039,  1039,  1039,  1039,  1039,
-  1039,  1039,   nil,   nil,  1039,   nil,   nil,   nil,   nil,   nil,
-  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,
-  1039,  1039,   nil,  1039,  1039,  1039,   nil,  1039,  1039,   nil,
-  1039,  1039,  1039,   508,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   508,
-   508,   nil,  1039,   nil,   nil,  1039,   nil,   nil,  1039,  1039,
-   nil,   nil,  1039,   nil,  1039,   508,   nil,   508,  1039,   508,
-   508,   508,   508,   nil,   nil,   508,  1039,   508,   nil,   nil,
-   nil,  1039,  1039,  1039,  1039,  1039,  1039,   nil,   nil,   nil,
-  1039,  1039,   nil,   nil,   nil,   nil,   nil,   nil,  1039,   nil,
-   nil,  1039,  1039,  1039,   nil,  1039,  1039,   nil,   nil,  1039,
-  1039,  1040,  1040,  1040,  1040,  1040,  1040,   nil,   nil,   nil,
-  1040,  1040,   nil,   nil,   nil,  1040,   nil,  1040,  1040,  1040,
-  1040,  1040,  1040,  1040,   nil,   nil,   nil,   nil,   nil,  1040,
-  1040,  1040,  1040,  1040,  1040,  1040,   nil,   nil,  1040,   nil,
-   nil,   nil,   nil,   nil,  1040,  1040,  1040,  1040,  1040,  1040,
-  1040,  1040,  1040,  1040,  1040,  1040,   nil,  1040,  1040,  1040,
-   nil,  1040,  1040,   nil,  1040,  1040,  1040,   560,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   560,   560,   nil,  1040,   nil,   nil,  1040,
-   nil,   nil,  1040,  1040,   nil,   nil,  1040,   nil,  1040,   560,
-   nil,   560,  1040,   560,   560,   560,   560,   nil,   nil,   560,
-  1040,   560,   nil,   nil,   nil,  1040,  1040,  1040,  1040,  1040,
-  1040,   nil,   nil,   nil,  1040,  1040,   nil,   nil,   nil,   nil,
-   nil,   nil,  1040,   nil,   nil,  1040,  1040,  1040,   nil,  1040,
-  1040,   nil,   nil,  1040,  1040,  1057,  1057,  1057,  1057,  1057,
-  1057,   nil,   nil,   nil,  1057,  1057,   nil,   nil,   nil,  1057,
-   nil,  1057,  1057,  1057,  1057,  1057,  1057,  1057,   nil,   nil,
-   nil,   nil,   nil,  1057,  1057,  1057,  1057,  1057,  1057,  1057,
-   nil,   nil,  1057,   nil,   nil,   nil,   nil,   nil,  1057,  1057,
-  1057,  1057,  1057,  1057,  1057,  1057,  1057,  1057,  1057,  1057,
-   nil,  1057,  1057,  1057,   nil,  1057,  1057,   nil,  1057,  1057,
-  1057,   494,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   494,   494,   nil,
-  1057,   nil,   nil,  1057,   nil,   nil,  1057,  1057,   nil,   nil,
-  1057,   nil,  1057,   494,   nil,   494,  1057,   494,   494,   494,
-   494,   nil,   nil,   nil,  1057,   nil,   nil,   nil,   nil,  1057,
-  1057,  1057,  1057,  1057,  1057,   nil,   nil,   nil,  1057,  1057,
-   nil,   nil,   nil,   nil,   nil,   nil,  1057,   nil,   nil,  1057,
-  1057,  1057,   nil,  1057,  1057,   nil,   nil,  1057,  1057,  1124,
-  1124,  1124,  1124,  1124,  1124,   nil,   nil,   nil,  1124,  1124,
-   nil,   nil,   nil,  1124,   nil,  1124,  1124,  1124,  1124,  1124,
-  1124,  1124,   nil,   nil,   nil,   nil,   nil,  1124,  1124,  1124,
-  1124,  1124,  1124,  1124,   nil,   nil,  1124,   nil,   nil,   nil,
-   nil,   nil,  1124,  1124,  1124,  1124,  1124,  1124,  1124,  1124,
-  1124,  1124,  1124,  1124,   nil,  1124,  1124,  1124,   nil,  1124,
-  1124,   nil,  1124,  1124,  1124,   495,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   495,   495,   nil,  1124,   nil,   nil,  1124,   nil,   nil,
-  1124,  1124,   nil,   nil,  1124,   nil,  1124,   495,   nil,   495,
-  1124,   495,   495,   495,   495,   nil,   nil,   nil,  1124,   nil,
-   nil,   nil,   nil,  1124,  1124,  1124,  1124,  1124,  1124,   nil,
-   nil,   nil,  1124,  1124,   nil,   nil,   nil,   nil,   nil,   nil,
-  1124,   nil,   nil,  1124,  1124,  1124,   nil,  1124,  1124,   nil,
-   nil,  1124,  1124,  1131,  1131,  1131,  1131,  1131,  1131,   nil,
-   nil,   nil,  1131,  1131,   nil,   nil,   nil,  1131,   nil,  1131,
-  1131,  1131,  1131,  1131,  1131,  1131,   nil,   nil,   nil,   nil,
-   nil,  1131,  1131,  1131,  1131,  1131,  1131,  1131,   nil,   nil,
-  1131,   nil,   nil,   nil,   nil,   nil,  1131,  1131,  1131,  1131,
-  1131,  1131,  1131,  1131,  1131,  1131,  1131,  1131,   nil,  1131,
-  1131,  1131,   nil,  1131,  1131,   nil,  1131,  1131,  1131,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1131,   nil,
-   nil,  1131,   nil,   nil,  1131,  1131,   nil,   nil,  1131,   nil,
-  1131,   nil,   nil,   nil,  1131,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1131,   nil,   nil,   nil,   nil,  1131,  1131,  1131,
-  1131,  1131,  1131,   nil,   nil,   nil,  1131,  1131,   nil,   nil,
-   nil,   nil,   nil,   nil,  1131,   nil,   nil,  1131,  1131,  1131,
-   nil,  1131,  1131,   nil,   nil,  1131,  1131,  1141,  1141,  1141,
-  1141,  1141,  1141,   nil,   nil,   nil,  1141,  1141,   nil,   nil,
-   nil,  1141,   nil,  1141,  1141,  1141,  1141,  1141,  1141,  1141,
-   nil,   nil,   nil,   nil,   nil,  1141,  1141,  1141,  1141,  1141,
-  1141,  1141,   nil,   nil,  1141,   nil,   nil,   nil,   nil,   nil,
-  1141,  1141,  1141,  1141,  1141,  1141,  1141,  1141,  1141,  1141,
-  1141,  1141,   nil,  1141,  1141,  1141,   nil,  1141,  1141,   nil,
-  1141,  1141,  1141,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1141,   nil,   nil,  1141,   nil,   nil,  1141,  1141,
-   nil,   nil,  1141,   nil,  1141,   nil,   nil,   nil,  1141,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1141,   nil,   nil,   nil,
-   nil,  1141,  1141,  1141,  1141,  1141,  1141,   nil,   nil,   nil,
-  1141,  1141,   nil,   nil,   nil,   nil,   nil,   nil,  1141,   nil,
-   nil,  1141,  1141,  1141,   nil,  1141,  1141,   nil,   nil,  1141,
-  1141,  1143,  1143,  1143,  1143,  1143,  1143,   nil,   nil,   nil,
-  1143,  1143,   nil,   nil,   nil,  1143,   nil,  1143,  1143,  1143,
-  1143,  1143,  1143,  1143,   nil,   nil,   nil,   nil,   nil,  1143,
-  1143,  1143,  1143,  1143,  1143,  1143,   nil,   nil,  1143,   nil,
-   nil,   nil,   nil,   nil,  1143,  1143,  1143,  1143,  1143,  1143,
-  1143,  1143,  1143,  1143,  1143,  1143,   nil,  1143,  1143,  1143,
-   nil,  1143,  1143,   nil,  1143,  1143,  1143,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1143,   nil,   nil,  1143,
-   nil,   nil,  1143,  1143,   nil,   nil,  1143,   nil,  1143,   nil,
-   nil,   nil,  1143,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1143,   nil,   nil,   nil,   nil,  1143,  1143,  1143,  1143,  1143,
-  1143,   nil,   nil,   nil,  1143,  1143,   nil,   nil,   nil,   nil,
-   nil,   nil,  1143,   nil,   nil,  1143,  1143,  1143,   nil,  1143,
-  1143,   nil,   nil,  1143,  1143,  1185,  1185,  1185,  1185,  1185,
-  1185,   nil,   nil,   nil,  1185,  1185,   nil,   nil,   nil,  1185,
-   nil,  1185,  1185,  1185,  1185,  1185,  1185,  1185,   nil,   nil,
-   nil,   nil,   nil,  1185,  1185,  1185,  1185,  1185,  1185,  1185,
-   nil,   nil,  1185,   nil,   nil,   nil,   nil,   nil,  1185,  1185,
-  1185,  1185,  1185,  1185,  1185,  1185,  1185,  1185,  1185,  1185,
-   nil,  1185,  1185,  1185,   nil,  1185,  1185,   nil,  1185,  1185,
-  1185,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1185,   nil,   nil,  1185,   nil,   nil,  1185,  1185,   nil,   nil,
-  1185,   nil,  1185,   nil,   nil,   nil,  1185,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1185,   nil,   nil,   nil,   nil,  1185,
-  1185,  1185,  1185,  1185,  1185,   nil,   nil,   nil,  1185,  1185,
-   nil,   nil,   nil,   nil,   nil,   nil,  1185,   nil,   nil,  1185,
-  1185,  1185,   nil,  1185,  1185,   nil,   nil,  1185,  1185,     8,
-     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
-   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
-     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
-     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
-   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
-     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
-   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
-     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
-   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
-   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
-   nil,   nil,     8,     8,     8,   nil,     8,     8,   nil,   nil,
-     8,     8,    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,   nil,    23,
-    23,    23,    23,    23,    23,    23,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,    23,    23,
-    23,    23,    23,    23,    23,    23,   nil,    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,   nil,   nil,
-   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,    23,    23,    23,    30,    23,
-    23,   nil,   nil,    23,    23,    30,    30,    30,   nil,   nil,
-    30,    30,    30,   822,    30,   822,   822,   822,   822,   822,
-   nil,   nil,    30,    30,    30,    30,   nil,   nil,   nil,   822,
-   nil,   nil,   nil,   nil,    30,    30,   nil,    30,    30,    30,
-    30,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   822,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   822,   822,   nil,    30,    30,    30,    30,    30,
-    30,    30,    30,    30,    30,    30,    30,    30,    30,   nil,
-   nil,    30,    30,    30,   nil,   nil,    30,   nil,    30,    30,
-   nil,   nil,    30,    30,   nil,    30,   822,    30,   nil,    30,
-   nil,    30,    30,    30,    30,    30,    30,    30,   nil,    30,
-    30,    30,   897,   nil,   897,   897,   897,   897,   897,   nil,
-   nil,   nil,   nil,   nil,    30,    30,   nil,    30,   897,    30,
-    31,   nil,   nil,   nil,   nil,   nil,    30,    31,    31,    31,
-    30,   nil,    31,    31,    31,   nil,    31,   nil,   nil,   nil,
-   897,   nil,   nil,   nil,    31,   nil,    31,    31,   nil,   897,
-   897,   897,   897,   nil,   nil,   nil,    31,    31,   nil,    31,
-    31,    31,    31,    31,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   897,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   897,   nil,    31,    31,    31,
-    31,    31,    31,    31,    31,    31,    31,    31,    31,    31,
-    31,   nil,   nil,    31,    31,    31,   nil,   nil,    31,   nil,
-    31,    31,   nil,   nil,    31,    31,   nil,    31,   nil,    31,
-   nil,    31,   nil,    31,    31,    31,    31,    31,    31,    31,
-   nil,    31,   nil,    31,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    31,    31,   nil,    31,
-   nil,    31,    32,    32,    32,   nil,    32,   nil,    31,   nil,
-    32,    32,    31,   nil,   nil,    32,   nil,    32,    32,    32,
-    32,    32,    32,    32,   nil,   nil,   nil,   nil,   nil,    32,
-    32,    32,    32,    32,    32,    32,   nil,   nil,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,    32,    32,
-    32,    32,    32,    32,    32,    32,    32,    32,    32,    32,
-   nil,    32,    32,   nil,    32,    32,    32,   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,    32,    32,   nil,   nil,    32,   nil,    32,   nil,
-    32,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
-    32,   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,    32,   nil,    32,    32,    32,    32,   nil,    32,
-    32,   nil,   nil,    32,    32,    33,    33,    33,   nil,    33,
-   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,   nil,
-    33,    33,    33,    33,    33,    33,    33,   nil,   nil,   nil,
-   nil,   nil,    33,    33,    33,    33,    33,    33,    33,   nil,
-   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,
-   nil,    33,    33,    33,    33,    33,    33,    33,    33,    33,
-    33,    33,    33,   nil,    33,    33,   nil,    33,    33,    33,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,
-   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,    33,
-   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,    33,
-    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,   nil,
-   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,    33,
-    33,   nil,    33,    33,   nil,   nil,    33,    33,    34,    34,
-    34,   nil,    34,   nil,   nil,   nil,    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,    34,    34,    34,    34,   nil,    34,    34,   nil,
-    34,    34,    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,    34,   nil,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
-   nil,    34,    34,    34,    34,    34,    34,   nil,   nil,   nil,
-    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
-    34,    34,    34,    34,   nil,    34,    34,   nil,   nil,    34,
-    34,    44,    44,    44,   nil,    44,   nil,   nil,   nil,    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,    44,
-   nil,   nil,   nil,   nil,    44,    44,    44,    44,    44,    44,
-   nil,   nil,   nil,    44,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,    44,   nil,   nil,    44,    44,    44,   nil,    44,    44,
-   nil,   nil,    44,    44,    45,    45,    45,   nil,    45,   nil,
-   nil,   nil,    45,    45,   nil,   nil,   nil,    45,   nil,    45,
-    45,    45,    45,    45,    45,    45,   nil,   nil,   nil,   nil,
-   nil,    45,    45,    45,    45,    45,    45,    45,   nil,   nil,
-    45,   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,
-    45,    45,    45,    45,    45,    45,    45,    45,   nil,    45,
-    45,    45,   nil,    45,    45,   nil,    45,    45,    45,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,
-   nil,    45,   nil,   nil,    45,    45,   nil,   nil,    45,   nil,
-   nil,   nil,   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    45,   nil,   nil,   nil,   nil,    45,    45,    45,
-    45,    45,    45,   nil,   nil,   nil,    45,    45,   nil,   nil,
-   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,    45,
-   nil,    45,    45,   nil,   nil,    45,    45,    47,    47,    47,
-   nil,    47,   nil,   nil,   nil,    47,    47,   nil,   nil,   nil,
-    47,   nil,    47,    47,    47,    47,    47,    47,    47,   nil,
-   nil,   nil,   nil,   nil,    47,    47,    47,    47,    47,    47,
-    47,   nil,   nil,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-    47,   nil,   nil,    47,    47,    47,    47,    47,    47,    47,
-    47,   nil,    47,    47,    47,   nil,    47,    47,   nil,    47,
-    47,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    47,   nil,   nil,    47,   nil,   nil,    47,    47,   nil,
-   nil,    47,   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,   nil,   nil,
-    47,    47,    47,    47,    47,    47,   nil,   nil,   nil,    47,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,
-    47,    47,    47,   nil,    47,    47,   nil,   nil,    47,    47,
-    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,    48,
-   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,    48,
-    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,    48,
-    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,   nil,
-   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,    48,
-    48,    48,    48,    48,   nil,    48,    48,    48,   nil,    48,
-    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,
-    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,   nil,
-   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,    48,    48,    48,   nil,    48,    48,   nil,
-   nil,    48,    48,    50,    50,    50,   nil,    50,   nil,   nil,
-   nil,    50,    50,   nil,   nil,   nil,    50,   nil,    50,    50,
-    50,    50,    50,    50,    50,   nil,   nil,   nil,   nil,   nil,
-    50,    50,    50,    50,    50,    50,    50,   nil,   nil,    50,
-   nil,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,    50,
-    50,    50,    50,    50,    50,    50,    50,   nil,    50,    50,
-    50,   nil,    50,    50,   nil,    50,    50,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-    50,   nil,   nil,    50,    50,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,    50,    50,    50,    50,
-    50,    50,   nil,   nil,   nil,    50,    50,   nil,   nil,   nil,
-   nil,   nil,   nil,    50,   nil,   nil,    50,    50,    50,    62,
-    50,    50,   nil,   nil,    50,    50,    62,    62,    62,   nil,
-   nil,    62,    62,    62,  1077,    62,  1077,  1077,  1077,  1077,
-  1077,   nil,   nil,    62,   nil,    62,    62,    62,   nil,   nil,
-  1077,   708,   708,   708,   708,    62,    62,   nil,    62,    62,
-    62,    62,    62,   nil,   nil,   nil,   nil,   708,   708,   708,
-   nil,   nil,  1077,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   708,   708,   nil,  1077,  1077,   708,    62,    62,    62,    62,
-    62,    62,    62,    62,    62,    62,    62,    62,    62,    62,
-   nil,   nil,    62,    62,    62,   nil,   nil,    62,   nil,   nil,
-    62,   nil,   nil,    62,    62,   nil,    62,  1077,    62,   nil,
-    62,   nil,    62,    62,    62,    62,    62,    62,    62,   nil,
-    62,   nil,    62,   nil,   708,   708,   708,   708,   708,   708,
-   nil,   nil,   nil,   708,   708,    62,    62,    62,    62,   nil,
-    62,   708,    62,   nil,   708,   708,   708,    62,   708,   708,
-   461,    62,    64,    64,    64,    64,    64,   461,   461,   461,
-    64,    64,   461,   461,   461,    64,   461,    64,    64,    64,
-    64,    64,    64,    64,   461,   461,   461,   461,   nil,    64,
-    64,    64,    64,    64,    64,    64,   461,   461,    64,   461,
-   461,   461,   461,   461,    64,    64,   nil,    64,    64,    64,
-    64,    64,    64,    64,    64,    64,   nil,    64,    64,    64,
-   nil,    64,    64,   nil,    64,    64,    64,   461,   461,   461,
-   461,   461,   461,   461,   461,   461,   461,   461,   461,   461,
-   461,   nil,   nil,   461,   461,   461,    64,   nil,   461,    64,
-   461,   461,    64,    64,   461,   461,    64,   461,    64,   461,
-   nil,   461,    64,   461,   461,   461,   461,   461,   461,   461,
-    64,   461,   461,   461,   nil,    64,    64,    64,    64,    64,
-    64,   nil,   nil,   nil,    64,    64,   461,   461,   nil,   461,
-   nil,   461,    64,   nil,   nil,    64,    64,    64,   461,    64,
-    64,   nil,   461,    64,    64,    69,    69,    69,   nil,    69,
-   nil,   nil,   nil,    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,    69,    69,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    69,
-   nil,   nil,    69,   nil,   nil,    69,    69,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    69,   nil,   nil,   nil,   nil,    69,    69,
-    69,    69,    69,    69,   nil,   nil,   nil,    69,    69,   nil,
-   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,    69,    69,
-    69,   nil,    69,    69,   nil,   nil,    69,    69,    70,    70,
-    70,   nil,    70,   nil,   nil,   nil,    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,
-    70,    70,    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,   nil,   nil,   nil,   nil,    70,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    70,   nil,   nil,   nil,
-   nil,    70,    70,    70,    70,    70,    70,   nil,   nil,   nil,
-    70,    70,   nil,   nil,   nil,   nil,   nil,   nil,    70,   nil,
-   nil,    70,    70,    70,   nil,    70,    70,   nil,   nil,    70,
-    70,    73,    73,    73,   nil,    73,   nil,   nil,   nil,    73,
-    73,   nil,   nil,   nil,    73,   nil,    73,    73,    73,    73,
-    73,    73,    73,   nil,   nil,   nil,   nil,   nil,    73,    73,
-    73,    73,    73,    73,    73,   nil,   nil,    73,   nil,   nil,
-   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
-    73,    73,    73,    73,    73,   nil,    73,    73,    73,   nil,
-    73,    73,   nil,    73,    73,    73,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
-   nil,    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,
-   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    73,
-   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,    73,
-   nil,   nil,   nil,    73,    73,    73,   nil,   nil,   nil,   nil,
-    73,    73,   nil,   nil,    73,    73,    73,   nil,    73,    73,
-   nil,   nil,    73,    73,   130,   130,   130,   130,   130,   nil,
-   nil,   nil,   130,   130,   nil,   nil,   nil,   130,   nil,   130,
-   130,   130,   130,   130,   130,   130,   nil,   nil,   nil,   nil,
-   nil,   130,   130,   130,   130,   130,   130,   130,   nil,   nil,
-   130,   nil,   nil,   nil,   nil,   nil,   130,   130,   130,   130,
-   130,   130,   130,   130,   130,   130,   130,   130,   nil,   130,
-   130,   130,   nil,   130,   130,   nil,   130,   130,   130,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   130,   nil,
-   nil,   130,   nil,   nil,   130,   130,   nil,   nil,   130,   nil,
-   130,   nil,   nil,   nil,   130,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   130,   nil,   nil,   nil,   nil,   130,   130,   130,
-   130,   130,   130,   nil,   nil,   nil,   130,   130,   nil,   nil,
-   nil,   nil,   nil,   130,   130,   nil,   nil,   130,   130,   130,
-   nil,   130,   130,   nil,   nil,   130,   130,   135,   135,   135,
-   nil,   135,   nil,   nil,   nil,   135,   135,   nil,   nil,   nil,
-   135,   nil,   135,   135,   135,   135,   135,   135,   135,   nil,
-   nil,   nil,   nil,   nil,   135,   135,   135,   135,   135,   135,
-   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,   nil,   nil,
-   135,   nil,   nil,   135,   135,   135,   135,   135,   135,   135,
-   135,   nil,   135,   135,   135,   nil,   135,   135,   nil,   135,
-   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   135,   nil,   nil,   135,   nil,   nil,   135,   135,   nil,
-   nil,   135,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   nil,   nil,
-   135,   135,   135,   135,   135,   135,   nil,   nil,   nil,   135,
-   135,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
-   135,   135,   135,   nil,   135,   135,   nil,   nil,   135,   135,
-   136,   136,   136,   nil,   136,   nil,   nil,   nil,   136,   136,
-   nil,   nil,   nil,   136,   nil,   136,   136,   136,   136,   136,
-   136,   136,   nil,   nil,   nil,   nil,   nil,   136,   136,   136,
-   136,   136,   136,   136,   nil,   nil,   136,   nil,   nil,   nil,
-   nil,   nil,   nil,   136,   nil,   nil,   136,   136,   136,   136,
-   136,   136,   136,   136,   nil,   136,   136,   136,   nil,   136,
-   136,   nil,   136,   136,   136,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,
-   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
-   nil,   nil,   nil,   136,   136,   136,   136,   136,   136,   nil,
-   nil,   nil,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,
-   136,   nil,   nil,   136,   136,   136,   nil,   136,   136,   nil,
-   nil,   136,   136,   137,   137,   137,   nil,   137,   nil,   nil,
-   nil,   137,   137,   nil,   nil,   nil,   137,   nil,   137,   137,
-   137,   137,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,
-   137,   137,   137,   137,   137,   137,   137,   nil,   nil,   137,
-   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   137,
-   137,   137,   137,   137,   137,   137,   137,   nil,   137,   137,
-   137,   nil,   137,   137,   nil,   137,   137,   137,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   137,   nil,   nil,   137,   137,   nil,   nil,   137,   nil,   nil,
-   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   137,   nil,   nil,   nil,   nil,   137,   137,   137,   137,
-   137,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
-   nil,   nil,   nil,   137,   nil,   nil,   137,   137,   137,   nil,
-   137,   137,   nil,   nil,   137,   137,   138,   138,   138,   nil,
-   138,   nil,   nil,   nil,   138,   138,   nil,   nil,   nil,   138,
-   nil,   138,   138,   138,   138,   138,   138,   138,   nil,   nil,
-   nil,   nil,   nil,   138,   138,   138,   138,   138,   138,   138,
-   nil,   nil,   138,   nil,   nil,   nil,   nil,   nil,   nil,   138,
-   nil,   nil,   138,   138,   138,   138,   138,   138,   138,   138,
-   nil,   138,   138,   138,   nil,   138,   138,   nil,   138,   138,
-   138,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   138,   nil,   nil,   138,   nil,   nil,   138,   138,   nil,   nil,
-   138,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   138,   nil,   nil,   nil,   nil,   138,
-   138,   138,   138,   138,   138,   nil,   nil,   nil,   138,   138,
-   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,   138,
-   138,   138,   nil,   138,   138,   nil,   nil,   138,   138,   139,
-   139,   139,   139,   139,   nil,   nil,   nil,   139,   139,   nil,
-   nil,   nil,   139,   nil,   139,   139,   139,   139,   139,   139,
-   139,   nil,   nil,   nil,   nil,   nil,   139,   139,   139,   139,
-   139,   139,   139,   nil,   nil,   139,   nil,   nil,   nil,   nil,
-   nil,   139,   139,   nil,   139,   139,   139,   139,   139,   139,
-   139,   139,   139,   nil,   139,   139,   139,   nil,   139,   139,
-   nil,   139,   139,   139,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   139,   nil,   nil,   139,   nil,   nil,   139,
-   139,   nil,   nil,   139,   nil,   139,   nil,   nil,   nil,   139,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,
-   nil,   nil,   139,   139,   139,   139,   139,   139,   nil,   nil,
-   nil,   139,   139,   nil,   nil,   nil,   nil,   nil,   nil,   139,
-   nil,   nil,   139,   139,   139,   nil,   139,   139,   nil,   nil,
-   139,   139,   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,   nil,   224,
-   224,   224,   224,   224,   224,   224,   nil,   nil,   224,   nil,
-   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,   224,
-   224,   224,   224,   224,   224,   224,   nil,   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,   224,   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,   nil,
-   nil,   nil,   224,   nil,   nil,   224,   224,   224,   nil,   224,
-   224,   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,   nil,   225,   225,   225,   225,   225,   225,   225,   nil,
-   nil,   225,   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,
-   nil,   225,   225,   225,   225,   225,   225,   225,   225,   nil,
-   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,   225,   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,   nil,   nil,   nil,   225,   nil,   nil,   225,   225,
-   225,   nil,   225,   225,   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,   nil,   226,   226,   226,   226,   226,
-   226,   226,   nil,   nil,   226,   nil,   nil,   nil,   nil,   nil,
-   nil,   226,   nil,   nil,   226,   226,   226,   226,   226,   226,
-   226,   226,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,
-   nil,   226,   226,   226,   nil,   226,   226,   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,   nil,   227,   227,
-   227,   227,   227,   227,   227,   nil,   nil,   227,   nil,   nil,
-   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,   227,   227,
-   227,   227,   227,   227,   227,   nil,   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   227,   nil,   nil,   227,   227,   227,   nil,   227,   227,
-   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,
-   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,   228,   nil,   nil,   nil,   nil,   228,   228,   228,
-   228,   228,   228,   nil,   nil,   nil,   228,   228,   nil,   nil,
-   nil,   nil,   nil,   nil,   228,   nil,   nil,   228,   228,   228,
-   nil,   228,   228,   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,   nil,   229,   229,   229,   229,   229,   229,
-   229,   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,
-   229,   nil,   nil,   229,   229,   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,   229,   nil,   229,   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,   nil,   nil,   nil,   229,   nil,   229,
-   229,   229,   229,   nil,   229,   229,   nil,   nil,   229,   229,
-   234,   234,   234,   nil,   234,   nil,   nil,   nil,   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,   234,   nil,
-   nil,   nil,   nil,   234,   234,   234,   234,   234,   234,   nil,
-   nil,   nil,   234,   234,   nil,   nil,   nil,   nil,   nil,   nil,
-   234,   nil,   nil,   234,   234,   234,   nil,   234,   234,   nil,
-   nil,   234,   234,   235,   235,   235,   nil,   235,   nil,   nil,
-   nil,   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,   235,   nil,   nil,   nil,   nil,   235,   235,   235,   235,
-   235,   235,   nil,   nil,   nil,   235,   235,   nil,   nil,   nil,
-   nil,   nil,   nil,   235,   nil,   nil,   235,   235,   235,   nil,
-   235,   235,   nil,   nil,   235,   235,   236,   236,   236,   nil,
-   236,   nil,   nil,   nil,   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,   236,   nil,   nil,   nil,   nil,   236,
-   236,   236,   236,   236,   236,   nil,   nil,   nil,   236,   236,
-   236,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   236,
-   236,   236,   nil,   236,   236,   nil,   nil,   236,   236,   247,
-   247,   247,   nil,   247,   nil,   nil,   nil,   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,   247,   nil,   nil,
-   nil,   nil,   247,   247,   247,   247,   247,   247,   nil,   nil,
-   nil,   247,   247,   nil,   nil,   nil,   nil,   nil,   nil,   247,
-   nil,   nil,   247,   247,   247,   nil,   247,   247,   nil,   nil,
-   247,   247,   251,   251,   251,   nil,   251,   nil,   nil,   nil,
-   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,
-   251,   nil,   nil,   nil,   nil,   251,   251,   251,   251,   251,
-   251,   nil,   nil,   nil,   251,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,   251,   nil,   nil,   251,   251,   251,   nil,   251,
-   251,   nil,   nil,   251,   251,   252,   252,   252,   nil,   252,
-   nil,   nil,   nil,   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,   252,   nil,   nil,   nil,   nil,   252,   252,
-   252,   252,   252,   252,   nil,   nil,   nil,   252,   252,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   252,   252,
-   252,   nil,   252,   252,   nil,   nil,   252,   252,   253,   253,
-   253,   nil,   253,   nil,   nil,   nil,   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,   253,   nil,   nil,   nil,
-   nil,   253,   253,   253,   253,   253,   253,   nil,   nil,   nil,
-   253,   253,   nil,   nil,   nil,   nil,   nil,   nil,   253,   nil,
-   nil,   253,   253,   253,   nil,   253,   253,   nil,   nil,   253,
-   253,   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,   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,   254,
-   nil,   nil,   nil,   nil,   254,   254,   254,   254,   254,   254,
-   nil,   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,   nil,
-   nil,   254,   nil,   nil,   254,   254,   254,   nil,   254,   254,
-   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,
-   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,   255,   nil,   nil,   nil,   nil,   255,   255,   255,
-   255,   255,   255,   nil,   nil,   nil,   255,   255,   nil,   nil,
-   nil,   nil,   nil,   nil,   255,   nil,   nil,   255,   255,   255,
-   nil,   255,   255,   nil,   nil,   255,   255,   256,   256,   256,
-   nil,   256,   nil,   nil,   nil,   256,   256,   nil,   nil,   nil,
-   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,   256,   256,   256,   256,   256,
-   256,   nil,   256,   256,   256,   nil,   256,   256,   nil,   256,
-   256,   256,   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,   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,   nil,   nil,   nil,   256,   nil,   nil,
-   256,   256,   256,   nil,   256,   256,   nil,   nil,   256,   256,
-   257,   257,   257,   nil,   257,   nil,   nil,   nil,   257,   257,
-   nil,   nil,   nil,   257,   nil,   257,   257,   257,   257,   257,
-   257,   257,   nil,   nil,   nil,   nil,   nil,   257,   257,   257,
-   257,   257,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   257,   257,   257,   257,
-   257,   257,   257,   257,   nil,   257,   257,   257,   nil,   257,
-   257,   nil,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,   nil,
-   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   257,   257,   257,   257,   257,   257,   nil,
-   nil,   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   257,   257,   257,   nil,   257,   257,   nil,
-   nil,   257,   257,   258,   258,   258,   nil,   258,   nil,   nil,
-   nil,   258,   258,   nil,   nil,   nil,   258,   nil,   258,   258,
-   258,   258,   258,   258,   258,   nil,   nil,   nil,   nil,   nil,
-   258,   258,   258,   258,   258,   258,   258,   nil,   nil,   258,
-   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,
-   258,   258,   258,   258,   258,   258,   258,   nil,   258,   258,
-   258,   nil,   258,   258,   nil,   258,   258,   258,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,
-   258,   nil,   nil,   258,   258,   nil,   nil,   258,   nil,   nil,
-   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   258,   nil,   nil,   nil,   nil,   258,   258,   258,   258,
-   258,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,   nil,
-   nil,   nil,   nil,   258,   nil,   nil,   258,   258,   258,   nil,
-   258,   258,   nil,   nil,   258,   258,   259,   259,   259,   nil,
-   259,   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,   259,
-   nil,   259,   259,   259,   259,   259,   259,   259,   nil,   nil,
-   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,   259,
-   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,
-   nil,   nil,   259,   259,   259,   259,   259,   259,   259,   259,
-   nil,   259,   259,   259,   nil,   259,   259,   nil,   259,   259,
-   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   259,   nil,   nil,   259,   nil,   nil,   259,   259,   nil,   nil,
-   259,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,   259,
-   259,   259,   259,   259,   259,   nil,   nil,   nil,   259,   259,
-   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,
-   259,   259,   nil,   259,   259,   nil,   nil,   259,   259,   260,
-   260,   260,   nil,   260,   nil,   nil,   nil,   260,   260,   nil,
-   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,   260,
-   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,   260,
-   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,   nil,
-   nil,   nil,   260,   nil,   nil,   260,   260,   260,   260,   260,
-   260,   260,   260,   nil,   260,   260,   260,   nil,   260,   260,
-   nil,   260,   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   260,   nil,   nil,   260,   nil,   nil,   260,
-   260,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   260,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,
-   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,   nil,
-   nil,   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,
-   nil,   nil,   260,   260,   260,   nil,   260,   260,   nil,   nil,
-   260,   260,   261,   261,   261,   nil,   261,   nil,   nil,   nil,
-   261,   261,   nil,   nil,   nil,   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,
-   261,   261,   261,   261,   261,   261,   nil,   261,   261,   261,
-   nil,   261,   261,   nil,   261,   261,   261,   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,   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,   nil,
-   nil,   nil,   261,   nil,   nil,   261,   261,   261,   nil,   261,
-   261,   nil,   nil,   261,   261,   262,   262,   262,   nil,   262,
-   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   262,   nil,
-   262,   262,   262,   262,   262,   262,   262,   nil,   nil,   nil,
-   nil,   nil,   262,   262,   262,   262,   262,   262,   262,   nil,
-   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,
-   nil,   262,   262,   262,   262,   262,   262,   262,   262,   nil,
-   262,   262,   262,   nil,   262,   262,   nil,   262,   262,   262,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,
-   nil,   nil,   262,   nil,   nil,   262,   262,   nil,   nil,   262,
-   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,   262,
-   262,   262,   262,   262,   nil,   nil,   nil,   262,   262,   nil,
-   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,
-   262,   nil,   262,   262,   nil,   nil,   262,   262,   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,   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,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   263,   nil,
-   nil,   263,   263,   263,   nil,   263,   263,   nil,   nil,   263,
-   263,   264,   264,   264,   nil,   264,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,
-   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   264,
-   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,   264,
-   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,   nil,
-   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,   264,
-   nil,   nil,   264,   264,   265,   265,   265,   nil,   265,   nil,
-   nil,   nil,   265,   265,   nil,   nil,   nil,   265,   nil,   265,
-   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,   nil,
-   nil,   265,   265,   265,   265,   265,   265,   265,   nil,   nil,
-   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,
-   265,   265,   265,   265,   265,   265,   265,   265,   nil,   265,
-   265,   265,   nil,   265,   265,   nil,   265,   265,   265,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
-   nil,   265,   nil,   nil,   265,   265,   nil,   nil,   265,   nil,
-   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   265,   nil,   nil,   nil,   nil,   265,   265,   265,
-   265,   265,   265,   nil,   nil,   nil,   265,   265,   nil,   nil,
-   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,
-   nil,   265,   265,   nil,   nil,   265,   265,   266,   266,   266,
-   nil,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,   nil,
-   266,   nil,   266,   266,   266,   266,   266,   266,   266,   nil,
-   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,
-   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   nil,
-   266,   nil,   nil,   266,   266,   266,   266,   266,   266,   266,
-   266,   nil,   266,   266,   266,   nil,   266,   266,   nil,   266,
-   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   266,   nil,   nil,   266,   nil,   nil,   266,   266,   nil,
-   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,   nil,
-   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,   266,
-   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,
-   266,   266,   266,   nil,   266,   266,   nil,   nil,   266,   266,
-   267,   267,   267,   nil,   267,   nil,   nil,   nil,   267,   267,
-   nil,   nil,   nil,   267,   nil,   267,   267,   267,   267,   267,
-   267,   267,   nil,   nil,   nil,   nil,   nil,   267,   267,   267,
-   267,   267,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,
-   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,   267,
-   267,   267,   267,   267,   nil,   267,   267,   267,   nil,   267,
-   267,   nil,   267,   267,   267,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,   nil,
-   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,
-   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,
-   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,   nil,
-   nil,   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,
-   267,   nil,   nil,   267,   267,   267,   nil,   267,   267,   nil,
-   nil,   267,   267,   268,   268,   268,   nil,   268,   nil,   nil,
-   nil,   268,   268,   nil,   nil,   nil,   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,   268,   268,   268,   268,   268,   268,   nil,   268,   268,
-   268,   nil,   268,   268,   nil,   268,   268,   268,   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,   268,   nil,   nil,   268,   nil,   nil,
-   nil,   nil,   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,
-   nil,   nil,   nil,   268,   nil,   nil,   268,   268,   268,   nil,
-   268,   268,   nil,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,   269,
-   nil,   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,   269,
-   nil,   nil,   269,   269,   269,   269,   269,   269,   269,   269,
-   nil,   269,   269,   269,   nil,   269,   269,   nil,   269,   269,
-   269,   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,   269,   nil,   nil,
-   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,   269,
-   269,   269,   nil,   269,   269,   nil,   nil,   269,   269,   270,
-   270,   270,   nil,   270,   nil,   nil,   nil,   270,   270,   nil,
-   nil,   nil,   270,   nil,   270,   270,   270,   270,   270,   270,
-   270,   nil,   nil,   nil,   nil,   nil,   270,   270,   270,   270,
-   270,   270,   270,   nil,   nil,   270,   nil,   nil,   nil,   nil,
-   nil,   nil,   270,   nil,   nil,   270,   270,   270,   270,   270,
-   270,   270,   270,   nil,   270,   270,   270,   nil,   270,   270,
-   nil,   270,   270,   270,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   270,   nil,   nil,   270,   nil,   nil,   270,
-   270,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,   270,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,
-   nil,   nil,   270,   270,   270,   270,   270,   270,   nil,   nil,
-   nil,   270,   270,   nil,   nil,   nil,   nil,   nil,   nil,   270,
-   nil,   nil,   270,   270,   270,   nil,   270,   270,   nil,   nil,
-   270,   270,   271,   271,   271,   nil,   271,   nil,   nil,   nil,
-   271,   271,   nil,   nil,   nil,   271,   nil,   271,   271,   271,
-   271,   271,   271,   271,   nil,   nil,   nil,   nil,   nil,   271,
-   271,   271,   271,   271,   271,   271,   nil,   nil,   271,   nil,
-   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,   271,
-   271,   271,   271,   271,   271,   271,   nil,   271,   271,   271,
-   nil,   271,   271,   nil,   271,   271,   271,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,
-   nil,   nil,   271,   271,   nil,   nil,   271,   nil,   nil,   nil,
-   nil,   nil,   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   271,   nil,   nil,   nil,   nil,   271,   271,   271,   271,   271,
-   271,   nil,   nil,   nil,   271,   271,   nil,   nil,   nil,   nil,
-   nil,   nil,   271,   nil,   nil,   271,   271,   271,   nil,   271,
-   271,   nil,   nil,   271,   271,   272,   272,   272,   nil,   272,
-   nil,   nil,   nil,   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,   nil,
-   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,   nil,   nil,   nil,   nil,   272,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   272,   nil,   nil,   nil,   nil,   272,   272,
-   272,   272,   272,   272,   nil,   nil,   nil,   272,   272,   nil,
-   nil,   nil,   nil,   nil,   nil,   272,   nil,   nil,   272,   272,
-   272,   nil,   272,   272,   nil,   nil,   272,   272,   277,   277,
-   277,   nil,   277,   nil,   nil,   nil,   277,   277,   nil,   nil,
-   nil,   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,   277,   277,   277,   277,
-   277,   277,   nil,   277,   277,   277,   nil,   277,   277,   nil,
-   277,   277,   277,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   277,   nil,   nil,   277,   nil,   nil,   277,   277,
-   nil,   nil,   277,   nil,   nil,   nil,   nil,   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,   277,   277,   nil,   277,   277,   nil,   nil,   277,
-   277,   285,   285,   285,   nil,   285,   nil,   nil,   nil,   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,   285,   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,   285,   nil,   285,
-   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   285,
-   nil,   nil,   nil,   nil,   285,   285,   285,   285,   285,   285,
-   nil,   nil,   nil,   285,   285,   nil,   nil,   nil,   nil,   nil,
-   nil,   285,   nil,   285,   285,   285,   285,   nil,   285,   285,
-   nil,   nil,   285,   285,   286,   286,   286,   nil,   286,   nil,
-   nil,   nil,   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,   nil,   286,   nil,   nil,
-   286,   286,   286,   286,   286,   286,   286,   286,   286,   286,
-   286,   286,   nil,   286,   286,   nil,   286,   286,   286,   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,   286,   nil,   nil,   286,   nil,
-   286,   nil,   286,   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,   nil,   nil,   nil,   286,   nil,   286,   286,   286,   286,
-   nil,   286,   286,   nil,   nil,   286,   286,   295,   295,   295,
-   nil,   295,   nil,   nil,   nil,   295,   295,   nil,   nil,   nil,
-   295,   nil,   295,   295,   295,   295,   295,   295,   295,   nil,
-   nil,   nil,   nil,   nil,   295,   295,   295,   295,   295,   295,
-   295,   nil,   nil,   295,   nil,   nil,   nil,   nil,   nil,   nil,
-   295,   nil,   nil,   295,   295,   295,   295,   295,   295,   295,
-   295,   295,   295,   295,   295,   nil,   295,   295,   nil,   295,
-   295,   295,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   295,   nil,   nil,   295,   nil,   nil,   295,   295,   nil,
-   nil,   295,   nil,   295,   nil,   295,   nil,   295,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   295,   nil,   nil,   nil,   nil,
-   295,   295,   295,   295,   295,   295,   nil,   nil,   nil,   295,
-   295,   295,   nil,   nil,   nil,   nil,   nil,   295,   nil,   295,
-   295,   295,   295,   nil,   295,   295,   nil,   nil,   295,   295,
-   302,   302,   302,   nil,   302,   nil,   nil,   nil,   302,   302,
-   nil,   nil,   nil,   302,   nil,   302,   302,   302,   302,   302,
-   302,   302,   nil,   nil,   nil,   nil,   nil,   302,   302,   302,
-   302,   302,   302,   302,   nil,   nil,   302,   nil,   nil,   nil,
-   nil,   nil,   nil,   302,   nil,   nil,   302,   302,   302,   302,
-   302,   302,   302,   302,   nil,   302,   302,   302,   nil,   302,
-   302,   nil,   302,   302,   302,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   302,   nil,   nil,   302,   nil,   nil,
-   302,   302,   nil,   nil,   302,   nil,   nil,   nil,   nil,   nil,
-   302,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   302,   nil,
-   nil,   nil,   nil,   302,   302,   302,   302,   302,   302,   nil,
-   nil,   nil,   302,   302,   nil,   nil,   nil,   nil,   nil,   nil,
-   302,   nil,   nil,   302,   302,   302,   nil,   302,   302,   nil,
-   nil,   302,   302,   304,   304,   304,   nil,   304,   nil,   nil,
-   nil,   304,   304,   nil,   nil,   nil,   304,   nil,   304,   304,
-   304,   304,   304,   304,   304,   nil,   nil,   nil,   nil,   nil,
-   304,   304,   304,   304,   304,   304,   304,   nil,   nil,   304,
-   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,
-   304,   304,   304,   304,   304,   304,   304,   nil,   304,   304,
-   304,   nil,   304,   304,   nil,   304,   304,   304,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,
-   304,   nil,   nil,   304,   304,   nil,   nil,   304,   nil,   nil,
-   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   304,   nil,   nil,   nil,   nil,   304,   304,   304,   304,
-   304,   304,   nil,   nil,   nil,   304,   304,   nil,   nil,   nil,
-   nil,   nil,   nil,   304,   nil,   nil,   304,   304,   304,   nil,
-   304,   304,   nil,   nil,   304,   304,   307,   307,   307,   nil,
-   307,   nil,   nil,   nil,   307,   307,   nil,   nil,   nil,   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,   307,   307,   307,   307,   307,   307,
-   nil,   307,   307,   307,   nil,   307,   307,   nil,   307,   307,
-   307,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   307,   nil,   nil,   307,   nil,   nil,   307,   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,
-   307,   307,   nil,   307,   307,   nil,   nil,   307,   307,   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,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   308,
-   nil,   nil,   308,   308,   308,   nil,   308,   308,   nil,   nil,
-   308,   308,   314,   314,   314,   314,   314,   nil,   nil,   nil,
-   314,   314,   nil,   nil,   nil,   314,   nil,   314,   314,   314,
-   314,   314,   314,   314,   nil,   nil,   nil,   nil,   nil,   314,
-   314,   314,   314,   314,   314,   314,   nil,   nil,   314,   nil,
-   nil,   nil,   nil,   nil,   314,   314,   nil,   314,   314,   314,
-   314,   314,   314,   314,   314,   314,   nil,   314,   314,   314,
-   nil,   314,   314,   nil,   314,   314,   314,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,
-   nil,   nil,   314,   314,   nil,   nil,   314,   nil,   314,   nil,
-   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   314,   nil,   nil,   nil,   nil,   314,   314,   314,   314,   314,
-   314,   nil,   nil,   nil,   314,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   314,   nil,   nil,   314,   314,   314,   nil,   314,
-   314,   nil,   nil,   314,   314,   348,   348,   348,   nil,   348,
-   nil,   nil,   nil,   348,   348,   nil,   nil,   nil,   348,   nil,
-   348,   348,   348,   348,   348,   348,   348,   nil,   nil,   nil,
-   nil,   nil,   348,   348,   348,   348,   348,   348,   348,   nil,
-   nil,   348,   nil,   nil,   nil,   nil,   nil,   nil,   348,   nil,
-   nil,   348,   348,   348,   348,   348,   348,   348,   348,   nil,
-   348,   348,   348,   nil,   348,   348,   nil,   348,   348,   348,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   348,
-   nil,   nil,   348,   nil,   nil,   348,   348,   nil,   nil,   348,
-   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   348,   nil,   nil,   nil,   nil,   348,   348,
-   348,   348,   348,   348,   nil,   nil,   nil,   348,   348,   nil,
-   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,   348,   348,
-   348,   nil,   348,   348,   nil,   nil,   348,   348,   350,   350,
-   350,   nil,   350,   nil,   nil,   nil,   350,   350,   nil,   nil,
-   nil,   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,   350,   350,   350,   350,
-   350,   350,   nil,   350,   350,   350,   nil,   350,   350,   nil,
-   350,   350,   350,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   350,   nil,   nil,   350,   350,   nil,   350,   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,   nil,   nil,   nil,   350,   nil,
-   nil,   350,   350,   350,   nil,   350,   350,   nil,   nil,   350,
-   350,   354,   354,   354,   nil,   354,   nil,   nil,   nil,   354,
-   354,   nil,   nil,   nil,   354,   nil,   354,   354,   354,   354,
-   354,   354,   354,   nil,   nil,   nil,   nil,   nil,   354,   354,
-   354,   354,   354,   354,   354,   nil,   nil,   354,   nil,   nil,
-   nil,   nil,   nil,   nil,   354,   nil,   nil,   354,   354,   354,
-   354,   354,   354,   354,   354,   354,   354,   354,   354,   nil,
-   354,   354,   nil,   354,   354,   354,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   354,   nil,   nil,   354,   nil,
-   nil,   354,   354,   nil,   nil,   354,   nil,   354,   nil,   nil,
-   nil,   354,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   354,
-   nil,   nil,   nil,   nil,   354,   354,   354,   354,   354,   354,
-   nil,   nil,   nil,   354,   354,   nil,   nil,   nil,   nil,   nil,
-   nil,   354,   nil,   354,   354,   354,   354,   nil,   354,   354,
-   nil,   nil,   354,   354,   355,   355,   355,   nil,   355,   nil,
-   nil,   nil,   355,   355,   nil,   nil,   nil,   355,   nil,   355,
-   355,   355,   355,   355,   355,   355,   nil,   nil,   nil,   nil,
-   nil,   355,   355,   355,   355,   355,   355,   355,   nil,   nil,
-   355,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,
-   355,   355,   355,   355,   355,   355,   355,   355,   355,   355,
-   355,   355,   nil,   355,   355,   nil,   355,   355,   355,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,
-   nil,   355,   nil,   nil,   355,   355,   nil,   nil,   355,   nil,
-   nil,   nil,   nil,   nil,   355,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   355,   nil,   nil,   nil,   nil,   355,   355,   355,
-   355,   355,   355,   nil,   nil,   nil,   355,   355,   nil,   nil,
-   nil,   nil,   nil,   nil,   355,   nil,   355,   355,   355,   355,
-   nil,   355,   355,   nil,   nil,   355,   355,   360,   360,   360,
-   nil,   360,   nil,   nil,   nil,   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,   360,   nil,   nil,   nil,   nil,
-   360,   360,   360,   360,   360,   360,   nil,   nil,   nil,   360,
-   360,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
-   360,   360,   360,   nil,   360,   360,   nil,   nil,   360,   360,
-   436,   436,   436,   nil,   436,   nil,   nil,   nil,   436,   436,
-   nil,   nil,   nil,   436,   nil,   436,   436,   436,   436,   436,
-   436,   436,   nil,   nil,   nil,   nil,   nil,   436,   436,   436,
-   436,   436,   436,   436,   nil,   nil,   436,   nil,   nil,   nil,
-   nil,   nil,   nil,   436,   nil,   nil,   436,   436,   436,   436,
-   436,   436,   436,   436,   nil,   436,   436,   436,   nil,   436,
-   436,   nil,   436,   436,   436,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   436,   nil,   nil,   436,   nil,   nil,
-   436,   436,   nil,   nil,   436,   nil,   nil,   nil,   nil,   nil,
-   436,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   436,   nil,
-   nil,   nil,   nil,   436,   436,   436,   436,   436,   436,   nil,
-   nil,   nil,   436,   436,   nil,   nil,   nil,   nil,   nil,   nil,
-   436,   nil,   nil,   436,   436,   436,   470,   436,   436,   nil,
-   nil,   436,   436,   470,   470,   470,   nil,   nil,   470,   470,
-   470,  1075,   470,  1075,  1075,  1075,  1075,  1075,   nil,   nil,
-   470,   470,   470,   470,   470,   nil,   nil,  1075,   nil,   nil,
-   nil,   nil,   470,   470,   nil,   470,   470,   470,   470,   470,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1075,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1075,  1075,
-  1075,  1075,   nil,   470,   470,   470,   470,   470,   470,   470,
-   470,   470,   470,   470,   470,   470,   470,   nil,   nil,   470,
-   470,   470,   nil,   nil,   470,   nil,   nil,   470,   nil,   nil,
-   470,   470,   nil,   470,  1075,   470,   nil,   470,   nil,   470,
-   470,   470,   470,   470,   470,   470,   nil,   470,   470,   470,
-  1079,   nil,  1079,  1079,  1079,  1079,  1079,   nil,   nil,   nil,
-   nil,   nil,   470,   470,   470,   470,  1079,   470,   471,   470,
-   nil,   nil,   nil,   nil,   470,   471,   471,   471,   470,   nil,
-   471,   471,   471,   nil,   471,   nil,   nil,   nil,  1079,   nil,
-   nil,   nil,   471,   471,   471,   471,   471,   nil,   nil,  1079,
-  1079,   nil,   nil,   nil,   471,   471,   nil,   471,   471,   471,
-   471,   471,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1079,   nil,   471,   471,   471,   471,   471,
-   471,   471,   471,   471,   471,   471,   471,   471,   471,   nil,
-   nil,   471,   471,   471,   nil,   nil,   471,   nil,   nil,   471,
-   nil,   nil,   471,   471,   nil,   471,   nil,   471,   nil,   471,
-   nil,   471,   471,   471,   471,   471,   471,   471,   nil,   471,
-   471,   471,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   471,   471,   471,   471,   nil,   471,
-   nil,   471,   nil,   480,   480,   480,   471,   480,   nil,   nil,
-   471,   480,   480,   nil,   nil,   nil,   480,   nil,   480,   480,
-   480,   480,   480,   480,   480,   nil,   nil,   nil,   nil,   nil,
-   480,   480,   480,   480,   480,   480,   480,   nil,   nil,   480,
-   nil,   nil,   nil,   nil,   nil,   nil,   480,   nil,   nil,   480,
-   480,   480,   480,   480,   480,   480,   480,   480,   480,   480,
-   480,   nil,   480,   480,   nil,   480,   480,   480,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   480,   nil,   nil,
-   480,   nil,   nil,   480,   480,   nil,   nil,   480,   nil,   480,
-   nil,   480,   nil,   480,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   480,   nil,   nil,   nil,   nil,   480,   480,   480,   480,
-   480,   480,   nil,   nil,   nil,   480,   480,   nil,   nil,   nil,
-   nil,   nil,   nil,   480,   nil,   480,   480,   480,   480,   nil,
-   480,   480,   nil,   nil,   480,   480,   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,   nil,   482,   482,   482,   482,   482,   482,   482,
-   nil,   nil,   482,   nil,   nil,   nil,   nil,   nil,   nil,   482,
-   nil,   nil,   482,   482,   482,   482,   482,   482,   482,   482,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   482,   nil,   nil,   482,
-   482,   482,   nil,   482,   482,   nil,   nil,   482,   482,   483,
-   483,   483,   nil,   483,   nil,   nil,   nil,   483,   483,   nil,
-   nil,   nil,   483,   nil,   483,   483,   483,   483,   483,   483,
-   483,   nil,   nil,   nil,   nil,   nil,   483,   483,   483,   483,
-   483,   483,   483,   nil,   nil,   483,   nil,   nil,   nil,   nil,
-   nil,   nil,   483,   nil,   nil,   483,   483,   483,   483,   483,
-   483,   483,   483,   nil,   483,   483,   483,   nil,   483,   483,
-   nil,   483,   483,   483,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   483,   nil,   nil,   483,   nil,   nil,   483,
-   483,   nil,   nil,   483,   nil,   nil,   nil,   nil,   nil,   483,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,
-   nil,   nil,   483,   483,   483,   483,   483,   483,   nil,   nil,
-   nil,   483,   483,   nil,   nil,   nil,   nil,   nil,   nil,   483,
-   nil,   nil,   483,   483,   483,   nil,   483,   483,   nil,   nil,
-   483,   483,   484,   484,   484,   nil,   484,   nil,   nil,   nil,
-   484,   484,   nil,   nil,   nil,   484,   nil,   484,   484,   484,
-   484,   484,   484,   484,   nil,   nil,   nil,   nil,   nil,   484,
-   484,   484,   484,   484,   484,   484,   nil,   nil,   484,   nil,
-   nil,   nil,   nil,   nil,   nil,   484,   nil,   nil,   484,   484,
-   484,   484,   484,   484,   484,   484,   nil,   484,   484,   484,
-   nil,   484,   484,   nil,   484,   484,   484,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,   nil,   484,
-   nil,   nil,   484,   484,   nil,   nil,   484,   nil,   nil,   nil,
-   nil,   nil,   484,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   484,   nil,   nil,   nil,   nil,   484,   484,   484,   484,   484,
-   484,   nil,   nil,   nil,   484,   484,   nil,   nil,   nil,   nil,
-   nil,   nil,   484,   nil,   nil,   484,   484,   484,   511,   484,
-   484,   nil,   nil,   484,   484,   511,   511,   511,   nil,   nil,
-   511,   511,   511,   nil,   511,   709,   709,   709,   709,   nil,
-   nil,   nil,   511,   511,   511,   nil,   nil,   nil,   nil,   nil,
-   nil,   709,   709,   709,   511,   511,   nil,   511,   511,   511,
-   511,   511,   nil,   nil,   709,   709,   nil,   nil,   nil,   709,
-   nil,   nil,   nil,   nil,   nil,  1081,   nil,  1081,  1081,  1081,
-  1081,  1081,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1081,   nil,   nil,   nil,   nil,   511,   nil,   nil,   nil,
-   nil,   nil,   nil,   511,   nil,   nil,   nil,   nil,   511,   511,
-   nil,   nil,   nil,  1081,   nil,   nil,   nil,   nil,   709,   709,
-   709,   709,   709,   709,  1081,  1081,   nil,   709,   709,   nil,
-   511,   511,   nil,   nil,   nil,   709,   nil,   nil,   709,   709,
-   709,   nil,   709,   709,   511,   nil,   516,   516,   516,   511,
-   516,   nil,   nil,   nil,   516,   516,   511,   nil,  1081,   516,
-   511,   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,   516,   nil,   nil,   nil,   nil,   516,
-   516,   516,   516,   516,   516,   nil,   nil,   nil,   516,   516,
-   nil,   nil,   nil,   nil,   nil,   nil,   516,   nil,   nil,   516,
-   516,   516,   nil,   516,   516,   nil,   nil,   516,   516,   526,
-   526,   526,   nil,   526,   nil,   nil,   nil,   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,   526,   nil,   526,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   526,   nil,   nil,
-   nil,   nil,   526,   526,   526,   526,   526,   526,   nil,   nil,
-   nil,   526,   526,   nil,   nil,   nil,   nil,   nil,   nil,   526,
-   nil,   526,   526,   526,   526,   nil,   526,   526,   nil,   nil,
-   526,   526,   529,   529,   529,   nil,   529,   nil,   nil,   nil,
-   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,
-   529,   nil,   529,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   529,   nil,   nil,   nil,   nil,   529,   529,   529,   529,   529,
-   529,   nil,   nil,   nil,   529,   529,   nil,   nil,   nil,   nil,
-   nil,   nil,   529,   nil,   529,   529,   529,   529,   nil,   529,
-   529,   nil,   nil,   529,   529,   531,   531,   531,   nil,   531,
-   nil,   nil,   nil,   531,   531,   nil,   nil,   nil,   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,   531,   531,   531,   531,   531,   531,   nil,
-   531,   531,   531,   nil,   531,   531,   nil,   531,   531,   531,
-   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,   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,   nil,   nil,   nil,   531,   nil,   nil,   531,   531,
-   531,   nil,   531,   531,   nil,   nil,   531,   531,   537,   537,
-   537,   537,   537,   nil,   nil,   nil,   537,   537,   nil,   nil,
-   nil,   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,
-   537,   537,   537,   537,   537,   537,   537,   537,   537,   537,
-   537,   537,   nil,   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,   537,   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,   nil,   nil,   537,   537,   nil,
-   nil,   537,   537,   537,   nil,   537,   537,   nil,   nil,   537,
-   537,   547,   547,   547,   nil,   547,   nil,   nil,   nil,   547,
-   547,   nil,   nil,   nil,   547,   nil,   547,   547,   547,   547,
-   547,   547,   547,   nil,   nil,   nil,   nil,   nil,   547,   547,
-   547,   547,   547,   547,   547,   nil,   nil,   547,   nil,   nil,
-   nil,   nil,   nil,   nil,   547,   nil,   nil,   547,   547,   547,
-   547,   547,   547,   547,   547,   547,   547,   547,   547,   nil,
-   547,   547,   nil,   547,   547,   547,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   547,   nil,   nil,   547,   nil,
-   nil,   547,   547,   nil,   nil,   547,   nil,   547,   nil,   547,
-   nil,   547,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   547,
-   nil,   nil,   nil,   nil,   547,   547,   547,   547,   547,   547,
-   nil,   nil,   nil,   547,   547,   nil,   nil,   nil,   nil,   nil,
-   nil,   547,   nil,   547,   547,   547,   547,   nil,   547,   547,
-   nil,   nil,   547,   547,   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,
-   nil,   556,   556,   556,   556,   556,   556,   556,   nil,   nil,
-   556,   nil,   nil,   nil,   nil,   nil,   nil,   556,   nil,   nil,
-   556,   556,   556,   556,   556,   556,   556,   556,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   556,   nil,   nil,   556,   556,   556,
-   nil,   556,   556,   nil,   nil,   556,   556,   559,   559,   559,
-   nil,   559,   nil,   nil,   nil,   559,   559,   nil,   nil,   nil,
-   559,   nil,   559,   559,   559,   559,   559,   559,   559,   nil,
-   nil,   nil,   nil,   nil,   559,   559,   559,   559,   559,   559,
-   559,   nil,   nil,   559,   nil,   nil,   nil,   nil,   nil,   nil,
-   559,   nil,   nil,   559,   559,   559,   559,   559,   559,   559,
-   559,   nil,   559,   559,   559,   nil,   559,   559,   nil,   559,
-   559,   559,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   559,   nil,   nil,   559,   nil,   nil,   559,   559,   nil,
-   nil,   559,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,   nil,   nil,
-   559,   559,   559,   559,   559,   559,   nil,   nil,   nil,   559,
-   559,   nil,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,
-   559,   559,   559,   nil,   559,   559,   nil,   nil,   559,   559,
-   562,   562,   562,   nil,   562,   nil,   nil,   nil,   562,   562,
-   nil,   nil,   nil,   562,   nil,   562,   562,   562,   562,   562,
-   562,   562,   nil,   nil,   nil,   nil,   nil,   562,   562,   562,
-   562,   562,   562,   562,   nil,   nil,   562,   nil,   nil,   nil,
-   nil,   nil,   nil,   562,   nil,   nil,   562,   562,   562,   562,
-   562,   562,   562,   562,   nil,   562,   562,   562,   nil,   562,
-   562,   nil,   562,   562,   562,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   562,   nil,   nil,   562,   nil,   nil,
-   562,   562,   nil,   nil,   562,   nil,   nil,   nil,   nil,   nil,
-   562,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   562,   nil,
-   nil,   nil,   nil,   562,   562,   562,   562,   562,   562,   nil,
-   nil,   nil,   562,   562,   nil,   nil,   nil,   nil,   nil,   nil,
-   562,   nil,   nil,   562,   562,   562,   nil,   562,   562,   nil,
-   nil,   562,   562,   586,   586,   586,   nil,   586,   nil,   nil,
-   nil,   586,   586,   nil,   nil,   nil,   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,   586,   586,   586,   586,   586,   586,   586,   586,   586,
-   586,   nil,   586,   586,   nil,   586,   586,   586,   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,   586,   nil,   nil,   586,   nil,   586,
-   nil,   586,   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,
-   nil,   nil,   nil,   586,   nil,   586,   586,   586,   586,   nil,
-   586,   586,   nil,   nil,   586,   586,   598,   598,   598,   nil,
-   598,   nil,   nil,   nil,   598,   598,   nil,   nil,   nil,   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,   598,   598,   598,   598,   598,   598,
-   nil,   598,   598,   598,   nil,   598,   598,   nil,   598,   598,
-   598,   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,   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,   nil,   nil,   nil,   598,   nil,   nil,   598,
-   598,   598,   nil,   598,   598,   nil,   nil,   598,   598,   604,
-   604,   604,   nil,   604,   nil,   nil,   nil,   604,   604,   nil,
-   nil,   nil,   604,   nil,   604,   604,   604,   604,   604,   604,
-   604,   nil,   nil,   nil,   nil,   nil,   604,   604,   604,   604,
-   604,   604,   604,   nil,   nil,   604,   nil,   nil,   nil,   nil,
-   nil,   nil,   604,   nil,   nil,   604,   604,   604,   604,   604,
-   604,   604,   604,   nil,   604,   604,   604,   nil,   604,   604,
-   nil,   604,   604,   604,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   604,   nil,   nil,   604,   nil,   nil,   604,
-   604,   nil,   nil,   604,   nil,   nil,   nil,   nil,   nil,   604,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   604,   nil,   nil,
-   nil,   nil,   604,   604,   604,   604,   604,   604,   nil,   nil,
-   nil,   604,   604,   nil,   nil,   nil,   nil,   nil,   nil,   604,
-   nil,   nil,   604,   604,   604,   nil,   604,   604,   nil,   nil,
-   604,   604,   627,   627,   627,   nil,   627,   nil,   nil,   nil,
-   627,   627,   nil,   nil,   nil,   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,
-   627,   627,   627,   627,   627,   627,   nil,   627,   627,   627,
-   nil,   627,   627,   nil,   627,   627,   627,   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,   627,   nil,   nil,   627,   nil,   nil,   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,   nil,
-   nil,   nil,   627,   nil,   nil,   627,   627,   627,   nil,   627,
-   627,   nil,   nil,   627,   627,   666,   666,   666,   666,   666,
-   nil,   nil,   nil,   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,   666,   666,   nil,
-   666,   666,   666,   666,   666,   666,   666,   666,   666,   nil,
-   666,   666,   666,   nil,   666,   666,   nil,   666,   666,   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,   666,   nil,   nil,   nil,   666,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   666,   nil,   nil,   nil,   nil,   666,   666,
-   666,   666,   666,   666,   nil,   nil,   nil,   666,   666,   nil,
-   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,   666,   666,
-   666,   nil,   666,   666,   nil,   nil,   666,   666,   668,   668,
-   668,   nil,   668,   nil,   nil,   nil,   668,   668,   nil,   nil,
-   nil,   668,   nil,   668,   668,   668,   668,   668,   668,   668,
-   nil,   nil,   nil,   nil,   nil,   668,   668,   668,   668,   668,
-   668,   668,   nil,   nil,   668,   nil,   nil,   nil,   nil,   nil,
-   nil,   668,   nil,   nil,   668,   668,   668,   668,   668,   668,
-   668,   668,   nil,   668,   668,   668,   nil,   668,   668,   nil,
-   668,   668,   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   668,   nil,   nil,   668,   nil,   nil,   668,   668,
-   nil,   nil,   668,   nil,   668,   nil,   nil,   nil,   668,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   nil,
-   nil,   668,   668,   668,   668,   668,   668,   nil,   nil,   nil,
-   668,   668,   nil,   nil,   nil,   nil,   nil,   nil,   668,   nil,
-   nil,   668,   668,   668,   nil,   668,   668,   nil,   nil,   668,
-   668,   669,   669,   669,   nil,   669,   nil,   nil,   nil,   669,
-   669,   nil,   nil,   nil,   669,   nil,   669,   669,   669,   669,
-   669,   669,   669,   nil,   nil,   nil,   nil,   nil,   669,   669,
-   669,   669,   669,   669,   669,   nil,   nil,   669,   nil,   nil,
-   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,   669,   669,
-   669,   669,   669,   669,   669,   nil,   669,   669,   669,   nil,
-   669,   669,   nil,   669,   669,   669,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,   nil,
-   nil,   669,   669,   nil,   nil,   669,   nil,   nil,   nil,   nil,
-   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   669,
-   nil,   nil,   nil,   nil,   669,   669,   669,   669,   669,   669,
-   nil,   nil,   nil,   669,   669,   nil,   nil,   nil,   nil,   nil,
-   nil,   669,   nil,   nil,   669,   669,   669,   nil,   669,   669,
-   nil,   nil,   669,   669,   670,   670,   670,   nil,   670,   nil,
-   nil,   nil,   670,   670,   nil,   nil,   nil,   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,   670,   670,   670,   670,   670,   670,   670,   670,
-   670,   670,   nil,   670,   670,   nil,   670,   670,   670,   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,   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,   nil,   nil,   nil,   670,   nil,   670,   670,   670,   670,
-   nil,   670,   670,   nil,   nil,   670,   670,   673,   673,   673,
-   673,   673,   nil,   nil,   nil,   673,   673,   nil,   nil,   nil,
-   673,   nil,   673,   673,   673,   673,   673,   673,   673,   nil,
-   nil,   nil,   nil,   nil,   673,   673,   673,   673,   673,   673,
-   673,   nil,   nil,   673,   nil,   nil,   nil,   nil,   nil,   673,
-   673,   nil,   673,   673,   673,   673,   673,   673,   673,   673,
-   673,   nil,   673,   673,   673,   nil,   673,   673,   nil,   673,
-   673,   673,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   673,   nil,   nil,   673,   nil,   nil,   673,   673,   nil,
-   nil,   673,   nil,   673,   nil,   nil,   nil,   673,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   673,   nil,   nil,   nil,   nil,
-   673,   673,   673,   673,   673,   673,   nil,   nil,   nil,   673,
-   673,   nil,   nil,   nil,   nil,   nil,   nil,   673,   nil,   nil,
-   673,   673,   673,   nil,   673,   673,   nil,   nil,   673,   673,
-   674,   674,   674,   nil,   674,   nil,   nil,   nil,   674,   674,
-   nil,   nil,   nil,   674,   nil,   674,   674,   674,   674,   674,
-   674,   674,   nil,   nil,   nil,   nil,   nil,   674,   674,   674,
-   674,   674,   674,   674,   nil,   nil,   674,   nil,   nil,   nil,
-   nil,   nil,   nil,   674,   nil,   nil,   674,   674,   674,   674,
-   674,   674,   674,   674,   nil,   674,   674,   674,   nil,   674,
-   674,   nil,   674,   674,   674,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,   nil,   nil,
-   674,   674,   nil,   nil,   674,   nil,   nil,   nil,   nil,   nil,
-   674,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,
-   nil,   nil,   nil,   674,   674,   674,   674,   674,   674,   nil,
-   nil,   nil,   674,   674,   nil,   nil,   nil,   nil,   nil,   nil,
-   674,   nil,   nil,   674,   674,   674,   nil,   674,   674,   nil,
-   nil,   674,   674,   677,   677,   677,   nil,   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,   nil,   677,   nil,   nil,   677,
-   677,   677,   677,   677,   677,   677,   677,   677,   677,   677,
-   677,   nil,   677,   677,   nil,   677,   677,   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,   677,
-   nil,   677,   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,   677,   677,   677,   677,   nil,
-   677,   677,   nil,   nil,   677,   677,   678,   678,   678,   nil,
-   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,   nil,   678,
-   nil,   nil,   678,   678,   678,   678,   678,   678,   678,   678,
-   678,   678,   678,   678,   nil,   678,   678,   nil,   678,   678,
-   678,   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,   678,   nil,   nil,
-   678,   nil,   nil,   nil,   678,   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,   nil,   nil,   nil,   678,   nil,   678,   678,
-   678,   678,   nil,   678,   678,   nil,   nil,   678,   678,   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,   nil,   679,   679,   679,   679,
-   679,   679,   679,   nil,   nil,   679,   nil,   nil,   nil,   nil,
-   nil,   nil,   679,   nil,   nil,   679,   679,   679,   679,   679,
-   679,   679,   679,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   679,
-   nil,   nil,   679,   679,   679,   nil,   679,   679,   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,   nil,   680,
-   680,   680,   680,   680,   680,   680,   nil,   nil,   680,   nil,
-   nil,   nil,   nil,   nil,   nil,   680,   nil,   nil,   680,   680,
-   680,   680,   680,   680,   680,   680,   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   680,   nil,   nil,   680,   680,   680,   nil,   680,
-   680,   nil,   nil,   680,   680,   685,   685,   685,   nil,   685,
-   nil,   nil,   nil,   685,   685,   nil,   nil,   nil,   685,   nil,
-   685,   685,   685,   685,   685,   685,   685,   nil,   nil,   nil,
-   nil,   nil,   685,   685,   685,   685,   685,   685,   685,   nil,
-   nil,   685,   nil,   nil,   nil,   nil,   nil,   nil,   685,   nil,
-   nil,   685,   685,   685,   685,   685,   685,   685,   685,   nil,
-   685,   685,   685,   nil,   685,   685,   nil,   685,   685,   685,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   685,
-   nil,   nil,   685,   nil,   nil,   685,   685,   nil,   nil,   685,
-   nil,   nil,   nil,   nil,   nil,   685,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   685,   nil,   nil,   nil,   nil,   685,   685,
-   685,   685,   685,   685,   nil,   nil,   nil,   685,   685,   nil,
-   nil,   nil,   nil,   nil,   nil,   685,   nil,   nil,   685,   685,
-   685,   nil,   685,   685,   nil,   nil,   685,   685,   686,   686,
-   686,   nil,   686,   nil,   nil,   nil,   686,   686,   nil,   nil,
-   nil,   686,   nil,   686,   686,   686,   686,   686,   686,   686,
-   nil,   nil,   nil,   nil,   nil,   686,   686,   686,   686,   686,
-   686,   686,   nil,   nil,   686,   nil,   nil,   nil,   nil,   nil,
-   nil,   686,   nil,   nil,   686,   686,   686,   686,   686,   686,
-   686,   686,   nil,   686,   686,   686,   nil,   686,   686,   nil,
-   686,   686,   686,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   686,   nil,   nil,   686,   nil,   nil,   686,   686,
-   nil,   nil,   686,   nil,   nil,   nil,   nil,   nil,   686,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   686,   nil,   nil,   nil,
-   nil,   686,   686,   686,   686,   686,   686,   nil,   nil,   nil,
-   686,   686,   nil,   nil,   nil,   nil,   nil,   nil,   686,   nil,
-   nil,   686,   686,   686,   nil,   686,   686,   nil,   nil,   686,
-   686,   731,   731,   731,   nil,   731,   nil,   nil,   nil,   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,   731,   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,   731,   nil,   731,
-   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,   nil,   nil,
-   nil,   731,   nil,   731,   731,   731,   731,   nil,   731,   731,
-   nil,   nil,   731,   731,   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,
-   nil,   740,   740,   740,   740,   740,   740,   740,   nil,   nil,
-   740,   nil,   nil,   nil,   nil,   nil,   nil,   740,   nil,   nil,
-   740,   740,   740,   740,   740,   740,   740,   740,   nil,   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,
-   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   740,   nil,   nil,   740,   740,   740,
-   nil,   740,   740,   nil,   nil,   740,   740,   743,   743,   743,
-   nil,   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,   nil,
-   743,   nil,   nil,   743,   743,   743,   743,   743,   743,   743,
-   743,   nil,   743,   743,   743,   nil,   743,   743,   nil,   743,
-   743,   743,   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,   743,   nil,
-   nil,   743,   nil,   nil,   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,   743,   743,   nil,   743,   743,   nil,   nil,   743,   743,
-   764,   764,   764,   nil,   764,   nil,   nil,   nil,   764,   764,
-   nil,   nil,   nil,   764,   nil,   764,   764,   764,   764,   764,
-   764,   764,   nil,   nil,   nil,   nil,   nil,   764,   764,   764,
-   764,   764,   764,   764,   nil,   nil,   764,   nil,   nil,   nil,
-   nil,   nil,   nil,   764,   nil,   nil,   764,   764,   764,   764,
-   764,   764,   764,   764,   nil,   764,   764,   764,   nil,   764,
-   764,   nil,   764,   764,   764,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   764,   nil,   nil,   764,   nil,   nil,
-   764,   764,   nil,   nil,   764,   nil,   764,   nil,   nil,   nil,
-   764,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   764,   nil,
-   nil,   nil,   nil,   764,   764,   764,   764,   764,   764,   nil,
-   nil,   nil,   764,   764,   nil,   nil,   nil,   nil,   nil,   nil,
-   764,   nil,   nil,   764,   764,   764,   nil,   764,   764,   nil,
-   nil,   764,   764,   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,   nil,
-   769,   769,   769,   769,   769,   769,   769,   nil,   nil,   769,
-   nil,   nil,   nil,   nil,   nil,   nil,   769,   nil,   nil,   769,
-   769,   769,   769,   769,   769,   769,   769,   769,   769,   769,
-   769,   nil,   769,   769,   nil,   769,   769,   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,   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,
-   nil,   nil,   nil,   769,   nil,   769,   769,   769,   769,   nil,
-   769,   769,   nil,   nil,   769,   769,   772,   772,   772,   nil,
-   772,   nil,   nil,   nil,   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,
-   772,   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,   772,   nil,   nil,   nil,   nil,   772,
-   772,   772,   772,   772,   772,   nil,   nil,   nil,   772,   772,
-   nil,   nil,   nil,   nil,   nil,   nil,   772,   nil,   772,   772,
-   772,   772,   nil,   772,   772,   nil,   nil,   772,   772,   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,   nil,   788,   788,   788,   788,
-   788,   788,   788,   nil,   nil,   788,   nil,   nil,   nil,   nil,
-   nil,   nil,   788,   nil,   nil,   788,   788,   788,   788,   788,
-   788,   788,   788,   nil,   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,   788,   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,   nil,   nil,   nil,   788,
-   nil,   nil,   788,   788,   788,   nil,   788,   788,   nil,   nil,
-   788,   788,   800,   800,   800,   nil,   800,   nil,   nil,   nil,
-   800,   800,   nil,   nil,   nil,   800,   nil,   800,   800,   800,
-   800,   800,   800,   800,   nil,   nil,   nil,   nil,   nil,   800,
-   800,   800,   800,   800,   800,   800,   nil,   nil,   800,   nil,
-   nil,   nil,   nil,   nil,   nil,   800,   nil,   nil,   800,   800,
-   800,   800,   800,   800,   800,   800,   800,   800,   800,   800,
-   nil,   800,   800,   nil,   800,   800,   800,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   800,   nil,   nil,   800,
-   nil,   nil,   800,   800,   nil,   nil,   800,   nil,   800,   nil,
-   800,   nil,   800,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   800,   nil,   nil,   nil,   nil,   800,   800,   800,   800,   800,
-   800,   nil,   nil,   nil,   800,   800,   nil,   nil,   nil,   nil,
-   nil,   nil,   800,   nil,   800,   800,   800,   800,   nil,   800,
-   800,   nil,   nil,   800,   800,   824,   824,   824,   nil,   824,
-   nil,   nil,   nil,   824,   824,   nil,   nil,   nil,   824,   nil,
-   824,   824,   824,   824,   824,   824,   824,   nil,   nil,   nil,
-   nil,   nil,   824,   824,   824,   824,   824,   824,   824,   nil,
-   nil,   824,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,
-   nil,   824,   824,   824,   824,   824,   824,   824,   824,   nil,
-   824,   824,   824,   nil,   824,   824,   nil,   824,   824,   824,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   824,
-   nil,   nil,   824,   nil,   nil,   824,   824,   nil,   nil,   824,
-   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   824,   nil,   nil,   nil,   nil,   824,   824,
-   824,   824,   824,   824,   nil,   nil,   nil,   824,   824,   nil,
-   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,   824,   824,
-   824,   nil,   824,   824,   nil,   nil,   824,   824,   848,   848,
-   848,   nil,   848,   nil,   nil,   nil,   848,   848,   nil,   nil,
-   nil,   848,   nil,   848,   848,   848,   848,   848,   848,   848,
-   nil,   nil,   nil,   nil,   nil,   848,   848,   848,   848,   848,
-   848,   848,   nil,   nil,   848,   nil,   nil,   nil,   nil,   nil,
-   nil,   848,   nil,   nil,   848,   848,   848,   848,   848,   848,
-   848,   848,   nil,   848,   848,   848,   nil,   848,   848,   nil,
-   848,   848,   848,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   848,   nil,   nil,   848,   nil,   nil,   848,   848,
-   nil,   nil,   848,   nil,   nil,   nil,   nil,   nil,   848,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   848,   nil,   nil,   nil,
-   nil,   848,   848,   848,   848,   848,   848,   nil,   nil,   nil,
-   848,   848,   nil,   nil,   nil,   nil,   nil,   nil,   848,   nil,
-   nil,   848,   848,   848,   nil,   848,   848,   nil,   nil,   848,
-   848,   856,   856,   856,   nil,   856,   nil,   nil,   nil,   856,
-   856,   nil,   nil,   nil,   856,   nil,   856,   856,   856,   856,
-   856,   856,   856,   nil,   nil,   nil,   nil,   nil,   856,   856,
-   856,   856,   856,   856,   856,   nil,   nil,   856,   nil,   nil,
-   nil,   nil,   nil,   nil,   856,   nil,   nil,   856,   856,   856,
-   856,   856,   856,   856,   856,   nil,   856,   856,   856,   nil,
-   856,   856,   nil,   856,   856,   856,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   856,   nil,   nil,   856,   nil,
-   nil,   856,   856,   nil,   nil,   856,   nil,   nil,   nil,   nil,
-   nil,   856,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   856,
-   nil,   nil,   nil,   nil,   856,   856,   856,   856,   856,   856,
-   nil,   nil,   nil,   856,   856,   nil,   nil,   nil,   nil,   nil,
-   nil,   856,   nil,   nil,   856,   856,   856,   nil,   856,   856,
-   nil,   nil,   856,   856,   869,   869,   869,   nil,   869,   nil,
-   nil,   nil,   869,   869,   nil,   nil,   nil,   869,   nil,   869,
-   869,   869,   869,   869,   869,   869,   nil,   nil,   nil,   nil,
-   nil,   869,   869,   869,   869,   869,   869,   869,   nil,   nil,
-   869,   nil,   nil,   nil,   nil,   nil,   nil,   869,   nil,   nil,
-   869,   869,   869,   869,   869,   869,   869,   869,   nil,   869,
-   869,   869,   nil,   869,   869,   nil,   869,   869,   869,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   869,   nil,
-   nil,   869,   nil,   nil,   869,   869,   nil,   nil,   869,   nil,
-   nil,   nil,   nil,   nil,   869,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   869,   nil,   nil,   nil,   nil,   869,   869,   869,
-   869,   869,   869,   nil,   nil,   nil,   869,   869,   nil,   nil,
-   nil,   nil,   nil,   nil,   869,   nil,   nil,   869,   869,   869,
-   nil,   869,   869,   nil,   nil,   869,   869,   870,   870,   870,
-   nil,   870,   nil,   nil,   nil,   870,   870,   nil,   nil,   nil,
-   870,   nil,   870,   870,   870,   870,   870,   870,   870,   nil,
-   nil,   nil,   nil,   nil,   870,   870,   870,   870,   870,   870,
-   870,   nil,   nil,   870,   nil,   nil,   nil,   nil,   nil,   nil,
-   870,   nil,   nil,   870,   870,   870,   870,   870,   870,   870,
-   870,   nil,   870,   870,   870,   nil,   870,   870,   nil,   870,
-   870,   870,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   870,   nil,   nil,   870,   nil,   nil,   870,   870,   nil,
-   nil,   870,   nil,   nil,   nil,   nil,   nil,   870,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   870,   nil,   nil,   nil,   nil,
-   870,   870,   870,   870,   870,   870,   nil,   nil,   nil,   870,
-   870,   nil,   nil,   nil,   nil,   nil,   nil,   870,   nil,   nil,
-   870,   870,   870,   nil,   870,   870,   nil,   nil,   870,   870,
-   871,   871,   871,   nil,   871,   nil,   nil,   nil,   871,   871,
-   nil,   nil,   nil,   871,   nil,   871,   871,   871,   871,   871,
-   871,   871,   nil,   nil,   nil,   nil,   nil,   871,   871,   871,
-   871,   871,   871,   871,   nil,   nil,   871,   nil,   nil,   nil,
-   nil,   nil,   nil,   871,   nil,   nil,   871,   871,   871,   871,
-   871,   871,   871,   871,   nil,   871,   871,   871,   nil,   871,
-   871,   nil,   871,   871,   871,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   871,   nil,   nil,   871,   nil,   nil,
-   871,   871,   nil,   nil,   871,   nil,   nil,   nil,   nil,   nil,
-   871,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   871,   nil,
-   nil,   nil,   nil,   871,   871,   871,   871,   871,   871,   nil,
-   nil,   nil,   871,   871,   nil,   nil,   nil,   nil,   nil,   nil,
-   871,   nil,   nil,   871,   871,   871,   nil,   871,   871,   nil,
-   nil,   871,   871,   872,   872,   872,   nil,   872,   nil,   nil,
-   nil,   872,   872,   nil,   nil,   nil,   872,   nil,   872,   872,
-   872,   872,   872,   872,   872,   nil,   nil,   nil,   nil,   nil,
-   872,   872,   872,   872,   872,   872,   872,   nil,   nil,   872,
-   nil,   nil,   nil,   nil,   nil,   nil,   872,   nil,   nil,   872,
-   872,   872,   872,   872,   872,   872,   872,   nil,   872,   872,
-   872,   nil,   872,   872,   nil,   872,   872,   872,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   872,   nil,   nil,
-   872,   nil,   nil,   872,   872,   nil,   nil,   872,   nil,   nil,
-   nil,   nil,   nil,   872,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   872,   nil,   nil,   nil,   nil,   872,   872,   872,   872,
-   872,   872,   nil,   nil,   nil,   872,   872,   nil,   nil,   nil,
-   nil,   nil,   nil,   872,   nil,   nil,   872,   872,   872,   nil,
-   872,   872,   nil,   nil,   872,   872,   894,   894,   894,   nil,
-   894,   nil,   nil,   nil,   894,   894,   nil,   nil,   nil,   894,
-   nil,   894,   894,   894,   894,   894,   894,   894,   nil,   nil,
-   nil,   nil,   nil,   894,   894,   894,   894,   894,   894,   894,
-   nil,   nil,   894,   nil,   nil,   nil,   nil,   nil,   nil,   894,
-   nil,   nil,   894,   894,   894,   894,   894,   894,   894,   894,
-   nil,   894,   894,   894,   nil,   894,   894,   nil,   894,   894,
-   894,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   894,   nil,   nil,   894,   nil,   nil,   894,   894,   nil,   nil,
-   894,   nil,   nil,   nil,   nil,   nil,   894,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   894,   nil,   nil,   nil,   nil,   894,
-   894,   894,   894,   894,   894,   nil,   nil,   nil,   894,   894,
-   nil,   nil,   nil,   nil,   nil,   nil,   894,   nil,   nil,   894,
-   894,   894,   nil,   894,   894,   nil,   nil,   894,   894,   928,
-   928,   928,   nil,   928,   nil,   nil,   nil,   928,   928,   nil,
-   nil,   nil,   928,   nil,   928,   928,   928,   928,   928,   928,
-   928,   nil,   nil,   nil,   nil,   nil,   928,   928,   928,   928,
-   928,   928,   928,   nil,   nil,   928,   nil,   nil,   nil,   nil,
-   nil,   nil,   928,   nil,   nil,   928,   928,   928,   928,   928,
-   928,   928,   928,   nil,   928,   928,   928,   nil,   928,   928,
-   nil,   928,   928,   928,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   928,   nil,   nil,   928,   nil,   nil,   928,
-   928,   nil,   nil,   928,   nil,   nil,   nil,   nil,   nil,   928,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   928,   nil,   nil,
-   nil,   nil,   928,   928,   928,   928,   928,   928,   nil,   nil,
-   nil,   928,   928,   nil,   nil,   nil,   nil,   nil,   nil,   928,
-   nil,   nil,   928,   928,   928,   nil,   928,   928,   nil,   nil,
-   928,   928,   937,   937,   937,   nil,   937,   nil,   nil,   nil,
-   937,   937,   nil,   nil,   nil,   937,   nil,   937,   937,   937,
-   937,   937,   937,   937,   nil,   nil,   nil,   nil,   nil,   937,
-   937,   937,   937,   937,   937,   937,   nil,   nil,   937,   nil,
-   nil,   nil,   nil,   nil,   nil,   937,   nil,   nil,   937,   937,
-   937,   937,   937,   937,   937,   937,   nil,   937,   937,   937,
-   nil,   937,   937,   nil,   937,   937,   937,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   937,   nil,   nil,   937,
-   nil,   nil,   937,   937,   nil,   nil,   937,   nil,   nil,   nil,
-   nil,   nil,   937,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   937,   nil,   nil,   nil,   nil,   937,   937,   937,   937,   937,
-   937,   nil,   nil,   nil,   937,   937,   nil,   nil,   nil,   nil,
-   nil,   nil,   937,   nil,   nil,   937,   937,   937,   nil,   937,
-   937,   nil,   nil,   937,   937,   946,   946,   946,   nil,   946,
-   nil,   nil,   nil,   946,   946,   nil,   nil,   nil,   946,   nil,
-   946,   946,   946,   946,   946,   946,   946,   nil,   nil,   nil,
-   nil,   nil,   946,   946,   946,   946,   946,   946,   946,   nil,
-   nil,   946,   nil,   nil,   nil,   nil,   nil,   nil,   946,   nil,
-   nil,   946,   946,   946,   946,   946,   946,   946,   946,   nil,
-   946,   946,   946,   nil,   946,   946,   nil,   946,   946,   946,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   946,
-   nil,   nil,   946,   nil,   nil,   946,   946,   nil,   nil,   946,
-   nil,   nil,   nil,   nil,   nil,   946,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   946,   nil,   nil,   nil,   nil,   946,   946,
-   946,   946,   946,   946,   nil,   nil,   nil,   946,   946,   nil,
-   nil,   nil,   nil,   nil,   nil,   946,   nil,   nil,   946,   946,
-   946,   nil,   946,   946,   nil,   nil,   946,   946,   992,   992,
-   992,   nil,   992,   nil,   nil,   nil,   992,   992,   nil,   nil,
-   nil,   992,   nil,   992,   992,   992,   992,   992,   992,   992,
-   nil,   nil,   nil,   nil,   nil,   992,   992,   992,   992,   992,
-   992,   992,   nil,   nil,   992,   nil,   nil,   nil,   nil,   nil,
-   nil,   992,   nil,   nil,   992,   992,   992,   992,   992,   992,
-   992,   992,   992,   992,   992,   992,   nil,   992,   992,   nil,
-   992,   992,   992,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   992,   nil,   nil,   992,   nil,   nil,   992,   992,
-   nil,   nil,   992,   nil,   nil,   nil,   992,   nil,   992,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,   nil,
-   nil,   992,   992,   992,   992,   992,   992,   nil,   nil,   nil,
-   992,   992,   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,
-   992,   992,   992,   992,   nil,   992,   992,   nil,   nil,   992,
-   992,   993,   993,   993,   nil,   993,   nil,   nil,   nil,   993,
-   993,   nil,   nil,   nil,   993,   nil,   993,   993,   993,   993,
-   993,   993,   993,   nil,   nil,   nil,   nil,   nil,   993,   993,
-   993,   993,   993,   993,   993,   nil,   nil,   993,   nil,   nil,
-   nil,   nil,   nil,   nil,   993,   nil,   nil,   993,   993,   993,
-   993,   993,   993,   993,   993,   nil,   993,   993,   993,   nil,
-   993,   993,   nil,   993,   993,   993,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   993,   nil,   nil,   993,   nil,
-   nil,   993,   993,   nil,   nil,   993,   nil,   nil,   nil,   nil,
-   nil,   993,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   993,
-   nil,   nil,   nil,   nil,   993,   993,   993,   993,   993,   993,
-   nil,   nil,   nil,   993,   993,   nil,   nil,   nil,   nil,   nil,
-   nil,   993,   nil,   nil,   993,   993,   993,   nil,   993,   993,
-   nil,   nil,   993,   993,  1056,  1056,  1056,   nil,  1056,   nil,
-   nil,   nil,  1056,  1056,   nil,   nil,   nil,  1056,   nil,  1056,
-  1056,  1056,  1056,  1056,  1056,  1056,   nil,   nil,   nil,   nil,
-   nil,  1056,  1056,  1056,  1056,  1056,  1056,  1056,   nil,   nil,
-  1056,   nil,   nil,   nil,   nil,   nil,   nil,  1056,   nil,   nil,
-  1056,  1056,  1056,  1056,  1056,  1056,  1056,  1056,   nil,  1056,
-  1056,  1056,   nil,  1056,  1056,   nil,  1056,  1056,  1056,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1056,   nil,
-   nil,  1056,   nil,   nil,  1056,  1056,   nil,   nil,  1056,   nil,
-  1056,   nil,   nil,   nil,  1056,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1056,   nil,   nil,   nil,   nil,  1056,  1056,  1056,
-  1056,  1056,  1056,   nil,   nil,   nil,  1056,  1056,   nil,   nil,
-   nil,   nil,   nil,   nil,  1056,   nil,   nil,  1056,  1056,  1056,
-   nil,  1056,  1056,   nil,   nil,  1056,  1056,  1133,  1133,  1133,
-   nil,  1133,   nil,   nil,   nil,  1133,  1133,   nil,   nil,   nil,
-  1133,   nil,  1133,  1133,  1133,  1133,  1133,  1133,  1133,   nil,
-   nil,   nil,   nil,   nil,  1133,  1133,  1133,  1133,  1133,  1133,
-  1133,   nil,   nil,  1133,   nil,   nil,   nil,   nil,   nil,   nil,
-  1133,   nil,   nil,  1133,  1133,  1133,  1133,  1133,  1133,  1133,
-  1133,   nil,  1133,  1133,  1133,   nil,  1133,  1133,   nil,  1133,
-  1133,  1133,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1133,   nil,   nil,  1133,   nil,   nil,  1133,  1133,   nil,
-   nil,  1133,   nil,   nil,   nil,   nil,   nil,  1133,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1133,   nil,   nil,   nil,   nil,
-  1133,  1133,  1133,  1133,  1133,  1133,   nil,   nil,   nil,  1133,
-  1133,   nil,   nil,   nil,   nil,   nil,   nil,  1133,   nil,   nil,
-  1133,  1133,  1133,   nil,  1133,  1133,   nil,   nil,  1133,  1133,
-  1134,  1134,  1134,   nil,  1134,   nil,   nil,   nil,  1134,  1134,
-   nil,   nil,   nil,  1134,   nil,  1134,  1134,  1134,  1134,  1134,
-  1134,  1134,   nil,   nil,   nil,   nil,   nil,  1134,  1134,  1134,
-  1134,  1134,  1134,  1134,   nil,   nil,  1134,   nil,   nil,   nil,
-   nil,   nil,   nil,  1134,   nil,   nil,  1134,  1134,  1134,  1134,
-  1134,  1134,  1134,  1134,   nil,  1134,  1134,  1134,   nil,  1134,
-  1134,   nil,  1134,  1134,  1134,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1134,   nil,   nil,  1134,   nil,   nil,
-  1134,  1134,   nil,   nil,  1134,   nil,   nil,   nil,   nil,   nil,
-  1134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1134,   nil,
-   nil,   nil,   nil,  1134,  1134,  1134,  1134,  1134,  1134,   nil,
-   nil,   nil,  1134,  1134,   nil,   nil,   nil,   nil,   nil,   nil,
-  1134,   nil,   nil,  1134,  1134,  1134,   nil,  1134,  1134,   nil,
-   nil,  1134,  1134,  1137,  1137,  1137,   nil,  1137,   nil,   nil,
-   nil,  1137,  1137,   nil,   nil,   nil,  1137,   nil,  1137,  1137,
-  1137,  1137,  1137,  1137,  1137,   nil,   nil,   nil,   nil,   nil,
-  1137,  1137,  1137,  1137,  1137,  1137,  1137,   nil,   nil,  1137,
-   nil,   nil,   nil,   nil,   nil,   nil,  1137,   nil,   nil,  1137,
-  1137,  1137,  1137,  1137,  1137,  1137,  1137,   nil,  1137,  1137,
-  1137,   nil,  1137,  1137,   nil,  1137,  1137,  1137,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1137,   nil,   nil,
-  1137,   nil,   nil,  1137,  1137,   nil,   nil,  1137,   nil,   nil,
-   nil,   nil,   nil,  1137,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1137,   nil,   nil,   nil,   nil,  1137,  1137,  1137,  1137,
-  1137,  1137,   nil,   nil,   nil,  1137,  1137,   nil,   nil,   nil,
-   nil,   nil,   nil,  1137,   nil,   nil,  1137,  1137,  1137,   nil,
-  1137,  1137,   nil,   nil,  1137,  1137,  1180,  1180,  1180,   nil,
-  1180,   nil,   nil,   nil,  1180,  1180,   nil,   nil,   nil,  1180,
-   nil,  1180,  1180,  1180,  1180,  1180,  1180,  1180,   nil,   nil,
-   nil,   nil,   nil,  1180,  1180,  1180,  1180,  1180,  1180,  1180,
-   nil,   nil,  1180,   nil,   nil,   nil,   nil,   nil,   nil,  1180,
-   nil,   nil,  1180,  1180,  1180,  1180,  1180,  1180,  1180,  1180,
-  1180,  1180,  1180,  1180,   nil,  1180,  1180,   nil,  1180,  1180,
-  1180,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1180,   nil,   nil,  1180,   nil,   nil,  1180,  1180,   nil,   nil,
-  1180,   nil,  1180,   nil,  1180,   nil,  1180,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1180,   nil,   nil,   nil,   nil,  1180,
-  1180,  1180,  1180,  1180,  1180,   nil,   nil,   nil,  1180,  1180,
-   nil,   nil,   nil,   nil,   nil,   nil,  1180,   nil,  1180,  1180,
-  1180,  1180,   nil,  1180,  1180,   nil,   nil,  1180,  1180,    37,
-    37,    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,
-   nil,   nil,    37,   nil,    37,    37,    37,    37,    37,    37,
-    37,   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,
-    37,    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,
-   nil,   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,
-    37,    37,    37,   nil,    37,    37,    37,   nil,    37,    37,
-   nil,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,  1115,
-   nil,  1115,  1115,  1115,  1115,  1115,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    37,   nil,  1115,    37,   nil,   nil,    37,
-    37,   nil,   nil,    37,   nil,    37,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1115,   nil,   nil,
-   nil,   nil,    37,    37,    37,    37,    37,    37,  1115,  1115,
-   nil,    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,
-   nil,   nil,    37,    37,    37,   nil,    37,    37,    38,    38,
-    38,   nil,    38,   nil,   nil,   nil,    38,    38,   nil,   nil,
-   nil,    38,  1115,    38,    38,    38,    38,    38,    38,    38,
-   nil,   nil,   nil,   nil,   nil,    38,    38,    38,    38,    38,
-    38,    38,   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,
-   nil,    38,   nil,   nil,    38,    38,    38,    38,    38,    38,
-    38,    38,   nil,    38,    38,    38,   nil,    38,    38,   nil,
-   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,  1198,   nil,
-  1198,  1198,  1198,  1198,  1198,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    38,   nil,  1198,    38,   nil,   nil,    38,    38,
-   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1198,   nil,   nil,   nil,
-   nil,    38,    38,    38,    38,    38,    38,  1198,  1198,   nil,
-    38,    38,   nil,   nil,   nil,    38,   nil,   nil,    38,   nil,
-   nil,    38,    38,    38,   nil,    38,    38,    74,    74,    74,
-   nil,    74,   nil,   nil,   nil,    74,    74,   nil,   nil,   nil,
-    74,  1198,    74,    74,    74,    74,    74,    74,    74,   nil,
-   nil,   nil,   nil,   nil,    74,    74,    74,    74,    74,    74,
-    74,   nil,   nil,    74,   nil,   nil,   nil,   nil,   nil,   nil,
-    74,   nil,   nil,    74,    74,    74,    74,    74,    74,    74,
-    74,   nil,    74,    74,    74,   nil,    74,    74,   nil,   nil,
-   nil,    74,   nil,   nil,   nil,   nil,   nil,  1211,   nil,  1211,
-  1211,  1211,  1211,  1211,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    74,   nil,  1211,    74,   nil,   nil,    74,    74,   nil,
-   nil,    74,   nil,    74,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1211,   nil,   nil,   nil,   nil,
-    74,    74,    74,    74,    74,    74,  1211,  1211,   nil,    74,
-    74,   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,   nil,
-    74,    74,    74,   nil,    74,    74,   322,   322,   322,   nil,
-   322,   nil,   nil,   nil,   322,   322,   nil,   nil,   nil,   322,
-  1211,   322,   322,   322,   322,   322,   322,   322,   nil,   nil,
-   nil,   nil,   nil,   322,   322,   322,   322,   322,   322,   322,
-   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,   nil,   322,
-   nil,   nil,   322,   322,   322,   322,   322,   322,   322,   322,
-   nil,   322,   322,   322,   nil,   322,   322,   nil,   nil,   nil,
-   322,   nil,   nil,   nil,   nil,   nil,  1213,   nil,  1213,  1213,
-  1213,  1213,  1213,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   322,   nil,  1213,   322,   nil,   nil,   322,   322,   nil,   nil,
-   322,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1213,   nil,   nil,   nil,   nil,   322,
-   322,   322,   322,   322,   322,  1213,  1213,   nil,   322,   322,
-   nil,   nil,   nil,   322,   nil,   nil,   322,   nil,   nil,   322,
-   322,   322,   nil,   322,   322,   339,   339,   339,   nil,   339,
-   nil,   nil,   nil,   339,   339,   nil,   nil,   nil,   339,  1213,
-   339,   339,   339,   339,   339,   339,   339,   nil,   nil,   nil,
-   nil,   nil,   339,   339,   339,   339,   339,   339,   339,   nil,
-   nil,   339,   nil,   nil,   nil,   nil,   nil,   nil,   339,   nil,
-   nil,   339,   339,   339,   339,   339,   339,   339,   339,   nil,
-   339,   339,   339,   nil,   339,   339,   nil,   nil,   nil,   339,
-   nil,   nil,   nil,   nil,   nil,  1215,   nil,  1215,  1215,  1215,
-  1215,  1215,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   339,
-   nil,  1215,   339,   nil,   nil,   339,   339,   nil,   nil,   339,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1215,   nil,   nil,   nil,   nil,   339,   339,
-   339,   339,   339,   339,  1215,  1215,   nil,   339,   339,   nil,
-   nil,   nil,   nil,   nil,   nil,   339,   nil,   nil,   339,   339,
-   339,   nil,   339,   339,   374,   374,   374,   nil,   374,   nil,
-   nil,   nil,   374,   374,   nil,   nil,   nil,   374,  1215,   374,
-   374,   374,   374,   374,   374,   374,   nil,   nil,   nil,   nil,
-   nil,   374,   374,   374,   374,   374,   374,   374,   nil,   nil,
-   374,   nil,   nil,   nil,   nil,   nil,   nil,   374,   nil,   nil,
-   374,   374,   374,   374,   374,   374,   374,   374,   nil,   374,
-   374,   374,   nil,   374,   374,   nil,   nil,   nil,   374,   nil,
-   nil,   nil,   nil,   nil,  1243,   nil,  1243,  1243,  1243,  1243,
-  1243,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   374,   nil,
-  1243,   374,   nil,   nil,   374,   374,   nil,   nil,   374,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1243,   nil,   nil,   nil,   nil,   374,   374,   374,
-   374,   374,   374,  1243,  1243,   nil,   374,   374,   nil,   nil,
-   nil,   nil,   nil,   nil,   374,   nil,   nil,   374,   374,   374,
-   nil,   374,   374,   376,   376,   376,   nil,   376,   nil,   nil,
-   nil,   376,   376,   nil,   nil,   nil,   376,  1243,   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,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   376,   376,   376,   376,
-   376,   376,   nil,   nil,   nil,   376,   376,   nil,   nil,   nil,
-   nil,   nil,   nil,   376,   nil,   nil,   376,   376,   376,   nil,
-   376,   376,   545,   545,   545,   nil,   545,   nil,   nil,   nil,
-   545,   545,   nil,   nil,   nil,   545,   nil,   545,   545,   545,
-   545,   545,   545,   545,   nil,   nil,   nil,   nil,   nil,   545,
-   545,   545,   545,   545,   545,   545,   nil,   nil,   545,   nil,
-   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   545,   545,
-   545,   545,   545,   545,   545,   545,   nil,   545,   545,   545,
-   nil,   545,   545,   nil,   nil,   nil,   545,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   545,
-   nil,   nil,   545,   545,   nil,   nil,   545,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   545,   545,   545,   545,   545,
-   545,   nil,   nil,   nil,   545,   545,   nil,   nil,   nil,   nil,
-   nil,   nil,   545,   nil,   nil,   545,   545,   545,   nil,   545,
-   545,   553,   553,   553,   nil,   553,   nil,   nil,   nil,   553,
-   553,   nil,   nil,   nil,   553,   nil,   553,   553,   553,   553,
-   553,   553,   553,   nil,   nil,   nil,   nil,   nil,   553,   553,
-   553,   553,   553,   553,   553,   nil,   nil,   553,   nil,   nil,
-   nil,   nil,   nil,   nil,   553,   nil,   nil,   553,   553,   553,
-   553,   553,   553,   553,   553,   nil,   553,   553,   553,   nil,
-   553,   553,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   553,   nil,
-   nil,   553,   553,   nil,   nil,   553,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   553,   553,   553,   553,   553,   553,
-   nil,   nil,   nil,   553,   553,   nil,   nil,   nil,   nil,   nil,
-   nil,   553,   nil,   nil,   553,   553,   553,   nil,   553,   553,
-   747,   747,   747,   nil,   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,   nil,   747,   nil,   nil,   747,   747,   747,   747,
-   747,   747,   747,   747,   nil,   747,   747,   747,   nil,   747,
-   747,   nil,   nil,   nil,   747,   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,   747,   nil,   nil,   747,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   747,   747,   nil,   747,   747,   758,
-   758,   758,   nil,   758,   nil,   nil,   nil,   758,   758,   nil,
-   nil,   nil,   758,   nil,   758,   758,   758,   758,   758,   758,
-   758,   nil,   nil,   nil,   nil,   nil,   758,   758,   758,   758,
-   758,   758,   758,   nil,   nil,   758,   nil,   nil,   nil,   nil,
-   nil,   nil,   758,   nil,   nil,   758,   758,   758,   758,   758,
-   758,   758,   758,   nil,   758,   758,   758,   nil,   758,   758,
-   nil,   nil,   nil,   758,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   758,   nil,   nil,   758,   nil,   nil,   758,
-   758,   nil,   nil,   758,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   758,   758,   758,   758,   758,   758,   nil,   nil,
-   nil,   758,   758,   nil,   nil,   nil,   nil,   nil,   nil,   758,
-   nil,   nil,   758,   758,   758,   nil,   758,   758,  1033,  1033,
-  1033,   nil,  1033,   nil,   nil,   nil,  1033,  1033,   nil,   nil,
-   nil,  1033,   nil,  1033,  1033,  1033,  1033,  1033,  1033,  1033,
-   nil,   nil,   nil,   nil,   nil,  1033,  1033,  1033,  1033,  1033,
-  1033,  1033,   nil,   nil,  1033,   nil,   nil,   nil,   nil,   nil,
-   nil,  1033,   nil,   nil,  1033,  1033,  1033,  1033,  1033,  1033,
-  1033,  1033,   nil,  1033,  1033,  1033,   nil,  1033,  1033,   nil,
-   nil,   nil,  1033,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1033,   nil,   nil,  1033,   nil,   nil,  1033,  1033,
-   nil,   nil,  1033,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1033,  1033,  1033,  1033,  1033,  1033,   nil,   nil,   nil,
-  1033,  1033,   nil,   nil,   nil,   nil,   nil,   nil,  1033,   nil,
-   nil,  1033,  1033,  1033,   nil,  1033,  1033,  1043,  1043,  1043,
-   nil,  1043,   nil,   nil,   nil,  1043,  1043,   nil,   nil,   nil,
-  1043,   nil,  1043,  1043,  1043,  1043,  1043,  1043,  1043,   nil,
-   nil,   nil,   nil,   nil,  1043,  1043,  1043,  1043,  1043,  1043,
-  1043,   nil,   nil,  1043,   nil,   nil,   nil,   nil,   nil,   nil,
-  1043,   nil,   nil,  1043,  1043,  1043,  1043,  1043,  1043,  1043,
-  1043,   nil,  1043,  1043,  1043,   nil,  1043,  1043,   nil,   nil,
-   nil,  1043,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1043,   nil,   nil,  1043,   nil,   nil,  1043,  1043,   nil,
-   nil,  1043,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1043,  1043,  1043,  1043,  1043,  1043,   nil,   nil,   nil,  1043,
-  1043,   nil,   nil,   nil,   nil,   nil,   nil,  1043,   nil,   nil,
-  1043,  1043,  1043,   nil,  1043,  1043,  1119,  1119,  1119,   nil,
-  1119,   nil,   nil,   nil,  1119,  1119,   nil,   nil,   nil,  1119,
-   nil,  1119,  1119,  1119,  1119,  1119,  1119,  1119,   nil,   nil,
-   nil,   nil,   nil,  1119,  1119,  1119,  1119,  1119,  1119,  1119,
-   nil,   nil,  1119,   nil,   nil,   nil,   nil,   nil,   nil,  1119,
-   nil,   nil,  1119,  1119,  1119,  1119,  1119,  1119,  1119,  1119,
-   nil,  1119,  1119,  1119,   nil,  1119,  1119,   nil,   nil,   nil,
-  1119,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1119,   nil,   nil,  1119,   nil,   nil,  1119,  1119,   nil,   nil,
-  1119,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1119,
-  1119,  1119,  1119,  1119,  1119,   nil,   nil,   nil,  1119,  1119,
-   nil,   nil,   nil,   nil,   nil,   nil,  1119,   nil,   nil,  1119,
-  1119,  1119,   nil,  1119,  1119,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
-   nil,   nil,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,   nil,   nil,   nil,   nil,   nil,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,   nil,    11,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,
-    11,    11,    11,    11,    11,    11,    11,   nil,   nil,    11,
-    11,   nil,   nil,   nil,    11,    11,    11,    11,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    11,    11,   nil,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,   nil,   nil,   nil,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,   nil,   nil,   nil,   nil,   nil,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
-   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    12,    12,   nil,    12,    12,    12,    12,    12,    12,    12,
-   nil,   nil,    12,    12,   nil,   nil,   nil,    12,    12,    12,
-    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,   nil,   nil,
-    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    12,    77,    77,    77,    77,    77,    77,    77,    77,    77,
-    77,    77,    77,    77,    77,    77,    77,    77,    77,    77,
-    77,    77,    77,    77,    77,   nil,   nil,   nil,    77,    77,
-    77,    77,    77,    77,    77,    77,    77,    77,   nil,   nil,
-   nil,   nil,   nil,    77,    77,    77,    77,    77,    77,    77,
-    77,    77,    77,    77,    77,   nil,    77,   nil,   nil,   nil,
-   nil,   nil,   nil,    77,    77,   nil,    77,    77,    77,    77,
-    77,    77,    77,   nil,   nil,    77,    77,   nil,   nil,   nil,
-    77,    77,    77,    77,   nil,   nil,   nil,   nil,   nil,    77,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,    77,   nil,
-    77,    77,    77,    77,    77,    77,    77,    77,    77,    77,
-    77,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    77,   107,   107,   107,   107,   107,   107,
-   107,   107,   107,   107,   107,   107,   107,   107,   107,   107,
-   107,   107,   107,   107,   107,   107,   107,   107,   nil,   nil,
-   nil,   107,   107,   107,   107,   107,   107,   107,   107,   107,
-   107,   nil,   nil,   nil,   nil,   nil,   107,   107,   107,   107,
-   107,   107,   107,   107,   107,   107,   107,   107,   nil,   107,
-   nil,   nil,   nil,   nil,   nil,   nil,   107,   107,   nil,   107,
-   107,   107,   107,   107,   107,   107,   nil,   nil,   107,   107,
-   nil,   nil,   nil,   107,   107,   107,   107,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   107,   107,   nil,   107,   107,   107,   107,   107,   107,   107,
-   107,   107,   107,   107,   nil,   nil,   107,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   107,   427,   427,   427,
-   427,   427,   427,   427,   427,   427,   427,   427,   427,   427,
-   427,   427,   427,   427,   427,   427,   427,   427,   427,   427,
-   427,   nil,   nil,   nil,   427,   427,   427,   427,   427,   427,
-   427,   427,   427,   427,   nil,   nil,   nil,   nil,   nil,   427,
-   427,   427,   427,   427,   427,   427,   427,   427,   nil,   nil,
-   427,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   427,
-   427,   nil,   427,   427,   427,   427,   427,   427,   427,   nil,
-   nil,   427,   427,   nil,   nil,   nil,   427,   427,   427,   427,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   427,   427,   nil,   427,   427,   427,   427,
-   427,   427,   427,   427,   427,   427,   427,   nil,   nil,   427,
-   427,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   427,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   427,
-   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,   nil,   664,   664,   664,
-   664,   664,   664,   664,   664,   664,   664,   nil,   nil,   nil,
-   nil,   nil,   664,   664,   664,   664,   664,   664,   664,   664,
-   664,   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   664,   664,   nil,   664,   664,   664,   664,   664,
-   664,   664,   nil,   nil,   664,   664,   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,   664,   664,
-   nil,   nil,   664,   664,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   664,   809,   809,   809,   809,   809,   809,   809,
-   809,   809,   809,   809,   809,   809,   809,   809,   809,   809,
-   809,   809,   809,   809,   809,   809,   809,   nil,   nil,   nil,
-   809,   809,   809,   809,   809,   809,   809,   809,   809,   809,
-   nil,   nil,   nil,   nil,   nil,   809,   809,   809,   809,   809,
-   809,   809,   809,   809,   nil,   nil,   809,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   809,   809,   nil,   809,   809,
-   809,   809,   809,   809,   809,   nil,   nil,   809,   809,   nil,
-   nil,   nil,   809,   809,   809,   809,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   809,
-   809,   nil,   809,   809,   809,   809,   809,   809,   809,   809,
-   809,   809,   809,   nil,   nil,   809,   nil,   nil,   nil,   nil,
-   485,   485,   485,   485,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   809,   485,   485,   485,   485,
-   nil,   nil,   nil,   485,   nil,   nil,   nil,   nil,   nil,   485,
-   485,   nil,   nil,   nil,   485,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   485,   nil,   nil,   485,   nil,   nil,
-   nil,   485,   nil,   nil,   485,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   485,
-   nil,   nil,   nil,   485,   485,   485,   485,   485,   485,   nil,
-   nil,   nil,   485,   485,   nil,   nil,   nil,   nil,   nil,   nil,
-   485,   nil,   nil,   485,   485,   485,   nil,   485,   485,   nil,
-   nil,   485,   485,   875,   875,   875,   875,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   875,
-   875,   875,   875,   nil,   nil,   nil,   875,   nil,   nil,   nil,
-   nil,   nil,   875,   875,   nil,   nil,   nil,   875,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   875,   nil,   nil,
-   875,   nil,   nil,   nil,   875,   nil,   nil,   875,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   875,   nil,   nil,   nil,   875,   875,   875,   875,
-   875,   875,   nil,   nil,   nil,   875,   875,   nil,   nil,   nil,
-   nil,   nil,   nil,   875,   nil,   nil,   875,   875,   875,   nil,
-   875,   875,   nil,   nil,   875,   875,   878,   878,   878,   878,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   878,   878,   878,   878,   nil,   nil,   nil,   878,
-   878,   nil,   nil,   nil,   nil,   878,   878,   nil,   nil,   nil,
-   878,   878,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   878,   nil,   nil,   878,   nil,   nil,   nil,   878,   nil,   nil,
-   878,   nil,   878,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   878,   nil,   nil,   nil,   878,
-   878,   878,   878,   878,   878,   nil,   nil,   nil,   878,   878,
-   nil,   nil,   nil,   nil,   nil,   nil,   878,   nil,   878,   878,
-   878,   878,   nil,   878,   878,   nil,   nil,   878,   878,   879,
-   879,   879,   879,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   879,   879,   879,   879,   nil,
-   nil,   nil,   879,   879,   nil,   nil,   nil,   nil,   879,   879,
-   nil,   nil,   nil,   879,   879,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   879,   nil,   nil,   879,   nil,   nil,   nil,
-   879,   nil,   nil,   879,   nil,   879,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   879,   nil,
-   nil,   nil,   879,   879,   879,   879,   879,   879,   nil,   nil,
-   nil,   879,   879,   nil,   nil,   nil,   nil,   nil,   nil,   879,
-   nil,   879,   879,   879,   879,   nil,   879,   879,   nil,   nil,
-   879,   879,   881,   881,   881,   881,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   881,   881,
-   881,   881,   nil,   nil,   nil,   881,   nil,   nil,   nil,   nil,
-   nil,   881,   881,   nil,   nil,   nil,   881,   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,   nil,   881,   nil,   nil,   881,   nil,   881,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   881,   nil,   nil,   nil,   881,   881,   881,   881,   881,
-   881,   nil,   nil,   nil,   881,   881,   nil,   nil,   nil,   nil,
-   nil,   nil,   881,   nil,   nil,   881,   881,   881,   nil,   881,
-   881,   nil,   nil,   881,   881,   886,   886,   886,   886,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   886,   886,   886,   886,   nil,   nil,   nil,   886,   nil,
-   nil,   nil,   nil,   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,   nil,   886,   nil,   nil,   886,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   886,   nil,   nil,   nil,   886,   886,
-   886,   886,   886,   886,   nil,   nil,   nil,   886,   886,   nil,
-   nil,   nil,   nil,   nil,   nil,   886,   nil,   nil,   886,   886,
-   886,   nil,   886,   886,   nil,   nil,   886,   886,   935,   935,
-   935,   935,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   935,   935,   935,   935,   nil,   nil,
-   nil,   935,   935,   nil,   nil,   nil,   nil,   935,   935,   nil,
-   nil,   nil,   935,   935,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   935,   nil,   nil,   935,   nil,   nil,   nil,   935,
-   nil,   nil,   935,   nil,   935,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   935,   nil,   nil,
-   nil,   935,   935,   935,   935,   935,   935,   nil,   nil,   nil,
-   935,   935,   nil,   nil,   nil,   nil,   nil,   nil,   935,   nil,
-   935,   935,   935,   935,   nil,   935,   935,   nil,   nil,   935,
-   935,  1001,  1001,  1001,  1001,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1001,  1001,  1001,
-  1001,   nil,   nil,   nil,  1001,   nil,   nil,   nil,   nil,   nil,
-  1001,  1001,   nil,   nil,   nil,  1001,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1001,   nil,   nil,  1001,   nil,
-   nil,   nil,  1001,   nil,   nil,  1001,   nil,  1001,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1001,   nil,   nil,   nil,  1001,  1001,  1001,  1001,  1001,  1001,
-   nil,   nil,   nil,  1001,  1001,   nil,   nil,   nil,   nil,   nil,
-   nil,  1001,   nil,   nil,  1001,  1001,  1001,   nil,  1001,  1001,
-   nil,   nil,  1001,  1001,  1009,  1009,  1009,  1009,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1009,  1009,  1009,  1009,   nil,   nil,   nil,  1009,   nil,   nil,
-   nil,   nil,   nil,  1009,  1009,   nil,   nil,   nil,  1009,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1009,   nil,
-   nil,  1009,   nil,   nil,   nil,  1009,   nil,   nil,  1009,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1009,   nil,   nil,   nil,  1009,  1009,  1009,
-  1009,  1009,  1009,   nil,   nil,   nil,  1009,  1009,   nil,   nil,
-   nil,   nil,   nil,   nil,  1009,   nil,   nil,  1009,  1009,  1009,
-   nil,  1009,  1009,   nil,   nil,  1009,  1009,  1096,  1096,  1096,
-  1096,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1096,  1096,  1096,  1096,   nil,   nil,   nil,
-  1096,   nil,   nil,   nil,   nil,   nil,  1096,  1096,   nil,   nil,
-   nil,  1096,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1096,   nil,   nil,  1096,   nil,   nil,   nil,  1096,   nil,
-   nil,  1096,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1096,   nil,   nil,   nil,
-  1096,  1096,  1096,  1096,  1096,  1096,   nil,   nil,   nil,  1096,
-  1096,   nil,   nil,   nil,   nil,   nil,   nil,  1096,   nil,   nil,
-  1096,  1096,  1096,   nil,  1096,  1096,   nil,   nil,  1096,  1096,
-  1135,  1135,  1135,  1135,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1135,  1135,  1135,  1135,
-   nil,   nil,   nil,  1135,   nil,   nil,   nil,   nil,   nil,  1135,
-  1135,   nil,   nil,   nil,  1135,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1135,   nil,   nil,  1135,   nil,   nil,
-   nil,  1135,   nil,   nil,  1135,   nil,  1135,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1135,
-   nil,   nil,   nil,  1135,  1135,  1135,  1135,  1135,  1135,   nil,
-   nil,   nil,  1135,  1135,   nil,   nil,   nil,   nil,   nil,   nil,
-  1135,   nil,   nil,  1135,  1135,  1135,   nil,  1135,  1135,   nil,
-   nil,  1135,  1135,  1158,  1158,  1158,  1158,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1158,
-  1158,  1158,  1158,   nil,   nil,   nil,  1158,   nil,   nil,   nil,
-   nil,   nil,  1158,  1158,   nil,   nil,   nil,  1158,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1158,   nil,   nil,
-  1158,   nil,   nil,   nil,  1158,   nil,   nil,  1158,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1158,   nil,   nil,   nil,  1158,  1158,  1158,  1158,
-  1158,  1158,   nil,   nil,   nil,  1158,  1158,   nil,   nil,   nil,
-   nil,   nil,   nil,  1158,   nil,   nil,  1158,  1158,  1158,   nil,
-  1158,  1158,   nil,   nil,  1158,  1158,  1159,  1159,  1159,  1159,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1159,  1159,  1159,  1159,   nil,   nil,   nil,  1159,
-   nil,   nil,   nil,   nil,   nil,  1159,  1159,   nil,   nil,   nil,
-  1159,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1159,   nil,   nil,  1159,   nil,   nil,   nil,  1159,   nil,   nil,
-  1159,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1159,   nil,   nil,   nil,  1159,
-  1159,  1159,  1159,  1159,  1159,   nil,   nil,   nil,  1159,  1159,
-   nil,   nil,   nil,   nil,   nil,   nil,  1159,   nil,   nil,  1159,
-  1159,  1159,   nil,  1159,  1159,   nil,   nil,  1159,  1159,  1204,
-  1204,  1204,  1204,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1204,  1204,  1204,  1204,   nil,
-   nil,   nil,  1204,   nil,   nil,   nil,   nil,   nil,  1204,  1204,
-   nil,   nil,   nil,  1204,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1204,   nil,   nil,  1204,   nil,   nil,   nil,
-  1204,   nil,   nil,  1204,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1204,   nil,
-   nil,   nil,  1204,  1204,  1204,  1204,  1204,  1204,   nil,   nil,
-   nil,  1204,  1204,   nil,   nil,   nil,   nil,   nil,   nil,  1204,
-   nil,   nil,  1204,  1204,  1204,   nil,  1204,  1204,   nil,   nil,
-  1204,  1204,  1207,  1207,  1207,  1207,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1207,  1207,
-  1207,  1207,   nil,   nil,   nil,  1207,   nil,   nil,   nil,   nil,
-   nil,  1207,  1207,   nil,   nil,   nil,  1207,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   887,   887,   887,   887,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1207,   nil,   nil,  1207,
-   887,   887,   887,  1207,   nil,   nil,  1207,   nil,   nil,   nil,
-   nil,   nil,   nil,   887,   887,   nil,   nil,   nil,   887,   nil,
-   nil,  1207,   nil,   nil,   nil,  1207,  1207,  1207,  1207,  1207,
-  1207,   nil,   nil,   nil,  1207,  1207,   nil,   nil,   nil,   nil,
-   nil,   nil,  1207,   nil,   nil,  1207,  1207,  1207,   nil,  1207,
-  1207,   nil,   nil,  1207,  1207,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   887,   887,   887,
-   887,   887,   887,   nil,   nil,   nil,   887,   887,   888,   888,
-   888,   888,   nil,   nil,   887,   nil,   nil,   887,   887,   887,
-   nil,   887,   887,   nil,   888,   888,   888,   807,   nil,   807,
-   807,   807,   807,   807,   nil,   nil,   nil,   888,   888,   nil,
-   nil,   nil,   888,   807,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   807,   807,   807,   807,   nil,   nil,
-   nil,  1066,   nil,  1066,  1066,  1066,  1066,  1066,   nil,   nil,
-   nil,   888,   888,   888,   888,   888,   888,  1066,   nil,   nil,
-   888,   888,   nil,   nil,   nil,   nil,   nil,   nil,   888,   nil,
-   807,   888,   888,   888,   nil,   888,   888,   nil,   nil,  1066,
-   807,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1066,  1066,
-  1066,  1066,   nil,   nil,   nil,   nil,   230,   230,   nil,   nil,
-   230,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   230,
-   230,   nil,   230,   230,   230,   230,   230,   230,   230,   nil,
-   nil,   230,   230,   nil,  1066,   nil,   230,   230,   230,   230,
-   nil,   nil,   nil,   nil,  1066,   230,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   230,   230,   nil,   230,   230,   230,   230,
-   230,   230,   230,   230,   230,   230,   230,   nil,   nil,   230,
-   nil,   nil,   nil,   nil,   231,   231,   nil,   nil,   231,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   231,   231,   230,
-   231,   231,   231,   231,   231,   231,   231,   nil,   nil,   231,
-   231,   nil,   nil,   nil,   231,   231,   231,   231,   nil,   nil,
-   nil,   nil,   nil,   231,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   231,   231,   nil,   231,   231,   231,   231,   231,   231,
-   231,   231,   231,   231,   231,   nil,   nil,   231,   nil,   nil,
-   nil,   nil,   281,   281,   nil,   nil,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   281,   281,   231,   281,   281,
-   281,   281,   281,   281,   281,   nil,   nil,   281,   281,   nil,
-   nil,   nil,   281,   281,   281,   281,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   281,
-   281,   nil,   281,   281,   281,   281,   281,   281,   281,   281,
-   281,   281,   281,   nil,   nil,   281,   nil,   nil,   nil,   nil,
-   478,   478,   nil,   nil,   478,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   478,   478,   281,   478,   478,   478,   478,
-   478,   478,   478,   nil,   nil,   478,   478,   nil,   nil,   nil,
-   478,   478,   478,   478,   nil,   nil,   nil,   nil,   nil,   478,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   478,   478,   nil,
-   478,   478,   478,   478,   478,   478,   478,   478,   478,   478,
-   478,   nil,   nil,   478,   nil,   nil,   nil,   nil,   479,   479,
-   nil,   nil,   479,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   479,   479,   478,   479,   479,   479,   479,   479,   479,
-   479,   nil,   nil,   479,   479,   nil,   nil,   nil,   479,   479,
-   479,   479,   nil,   nil,   nil,   nil,   nil,   479,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   479,   479,   nil,   479,   479,
-   479,   479,   479,   479,   479,   479,   479,   479,   479,   nil,
-   nil,   479,   nil,   nil,   nil,   nil,   548,   548,   nil,   nil,
-   548,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   548,
-   548,   479,   548,   548,   548,   548,   548,   548,   548,   nil,
-   nil,   548,   548,   nil,   nil,   nil,   548,   548,   548,   548,
-   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   548,   548,   nil,   548,   548,   548,   548,
-   548,   548,   548,   548,   548,   548,   548,   nil,   nil,   548,
-   nil,   nil,   nil,   nil,   549,   549,   nil,   nil,   549,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   549,   549,   548,
-   549,   549,   549,   549,   549,   549,   549,   nil,   nil,   549,
-   549,   nil,   nil,   nil,   549,   549,   549,   549,   nil,   nil,
-   nil,   nil,   nil,   549,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   549,   549,   nil,   549,   549,   549,   549,   549,   549,
-   549,   549,   549,   549,   549,   nil,   nil,   549,   nil,   nil,
-   nil,   nil,   557,   557,   nil,   nil,   557,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   557,   557,   549,   557,   557,
-   557,   557,   557,   557,   557,   nil,   nil,   557,   557,   nil,
-   nil,   nil,   557,   557,   557,   557,   nil,   nil,   nil,   nil,
-   nil,   557,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   557,
-   557,   nil,   557,   557,   557,   557,   557,   557,   557,   557,
-   557,   557,   557,   nil,   nil,   557,   nil,   nil,   nil,   nil,
-   558,   558,   nil,   nil,   558,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   558,   558,   557,   558,   558,   558,   558,
-   558,   558,   558,   nil,   nil,   558,   558,   nil,   nil,   nil,
-   558,   558,   558,   558,   nil,   nil,   nil,   nil,   nil,   558,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   558,   558,   nil,
-   558,   558,   558,   558,   558,   558,   558,   558,   558,   558,
-   558,   nil,   nil,   558,   nil,   nil,   nil,   nil,   587,   587,
-   nil,   nil,   587,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   587,   587,   558,   587,   587,   587,   587,   587,   587,
-   587,   nil,   nil,   587,   587,   nil,   nil,   nil,   587,   587,
-   587,   587,   nil,   nil,   nil,   nil,   nil,   587,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   587,   587,   nil,   587,   587,
-   587,   587,   587,   587,   587,   587,   587,   587,   587,   nil,
-   nil,   587,   nil,   nil,   nil,   nil,   588,   588,   nil,   nil,
-   588,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   588,
-   588,   587,   588,   588,   588,   588,   588,   588,   588,   nil,
-   nil,   588,   588,   nil,   nil,   nil,   588,   588,   588,   588,
-   nil,   nil,   nil,   nil,   nil,   588,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   588,   588,   nil,   588,   588,   588,   588,
-   588,   588,   588,   588,   588,   588,   588,   nil,   nil,   588,
-   nil,   nil,   nil,   nil,   671,   671,   nil,   nil,   671,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   671,   671,   588,
-   671,   671,   671,   671,   671,   671,   671,   nil,   nil,   671,
-   671,   nil,   nil,   nil,   671,   671,   671,   671,   nil,   nil,
-   nil,   nil,   nil,   671,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   671,   671,   nil,   671,   671,   671,   671,   671,   671,
-   671,   671,   671,   671,   671,   nil,   nil,   671,   nil,   nil,
-   nil,   nil,   672,   672,   nil,   nil,   672,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   672,   672,   671,   672,   672,
-   672,   672,   672,   672,   672,   nil,   nil,   672,   672,   nil,
-   nil,   nil,   672,   672,   672,   672,   nil,   nil,   nil,   nil,
-   nil,   672,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   672,
-   672,   nil,   672,   672,   672,   672,   672,   672,   672,   672,
-   672,   672,   672,   nil,   nil,   672,   nil,   nil,   nil,   nil,
-   798,   798,   nil,   nil,   798,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   798,   798,   672,   798,   798,   798,   798,
-   798,   798,   798,   nil,   nil,   798,   798,   nil,   nil,   nil,
-   798,   798,   798,   798,   nil,   nil,   nil,   nil,   nil,   798,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   798,   798,   nil,
-   798,   798,   798,   798,   798,   798,   798,   798,   798,   798,
-   798,   nil,   nil,   798,   nil,   nil,   nil,   nil,   799,   799,
-   nil,   nil,   799,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   799,   799,   798,   799,   799,   799,   799,   799,   799,
-   799,   nil,   nil,   799,   799,   nil,   nil,   nil,   799,   799,
-   799,   799,   nil,   nil,   nil,   nil,   nil,   799,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   799,   799,   nil,   799,   799,
-   799,   799,   799,   799,   799,   799,   799,   799,   799,   nil,
-  1110,   799,  1110,  1110,  1110,  1110,  1110,  1113,   nil,  1113,
-  1113,  1113,  1113,  1113,   nil,   nil,  1110,   nil,   nil,   nil,
-   nil,   799,   nil,  1113,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1110,   nil,
-   nil,   nil,   nil,   nil,   nil,  1113,   nil,  1110,  1110,  1110,
-  1110,   nil,   nil,   nil,  1113,  1113,  1113,  1113,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1176,  1176,   nil,   nil,  1176,
-   nil,   nil,   nil,  1110,   nil,   nil,   nil,   nil,  1176,  1176,
-  1113,  1176,  1176,  1176,  1176,  1176,  1176,  1176,   nil,   nil,
-  1176,  1176,   nil,   nil,   nil,  1176,  1176,  1176,  1176,   nil,
-   nil,   nil,   nil,   nil,  1176,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1176,  1176,   nil,  1176,  1176,  1176,  1176,  1176,
-  1176,  1176,  1176,  1176,  1176,  1176,   nil,   nil,  1176,   nil,
-   nil,   nil,   nil,  1181,  1181,   nil,   nil,  1181,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1181,  1181,  1176,  1181,
-  1181,  1181,  1181,  1181,  1181,  1181,   nil,   nil,  1181,  1181,
-   nil,   nil,   nil,  1181,  1181,  1181,  1181,   nil,   nil,   nil,
-   nil,   nil,  1181,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1181,  1181,   nil,  1181,  1181,  1181,  1181,  1181,  1181,  1181,
-  1181,  1181,  1181,  1181,   nil,   nil,  1181,   nil,   nil,   nil,
-   nil,  1182,  1182,   nil,   nil,  1182,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1182,  1182,  1181,  1182,  1182,  1182,
-  1182,  1182,  1182,  1182,   nil,   nil,  1182,  1182,   nil,   nil,
-   nil,  1182,  1182,  1182,  1182,   nil,   nil,   nil,   nil,   nil,
-  1182,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1182,  1182,
-   nil,  1182,  1182,  1182,  1182,  1182,  1182,  1182,  1182,  1182,
-  1182,  1182,   nil,  1209,  1182,  1209,  1209,  1209,  1209,  1209,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1209,
-   nil,   nil,   nil,   nil,  1182,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1209,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1209,  1209,  1209,  1209,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1209 ]
-
-racc_action_pointer = [
-   nil,    32,  1098,    58,   nil,   202,   nil,   nil,  5417,  1371,
-   nil, 25583, 25716,    72,   nil,    71,    92,   432,   167,   242,
-   267,   nil,   106,  5560,  1242,   246,   nil,   -40,   nil,   165,
-  5698,  5830,  5960,  6103,  6246,   nil,  1242, 23637, 23776,   nil,
-   187,   377,   409,   370,  6389,  6532,   164,  6675,  6818,   518,
-  6961,   317,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  7099,   nil,  7240,   nil,   nil,   -22,   nil,  7383,
-  7526,   nil,   nil,  7669, 23915,   373,   nil, 25849,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,
-   nil,   359,   368,   378,   397,   nil,   nil, 25982,   nil,   nil,
-   nil,   nil,   nil,   nil,     0,   nil,   nil,   136,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  7812,   nil,   nil,   nil,   nil,  7955,  8098,  8241,  8384,  8527,
-   435,   nil,   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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   436,   nil,  1386,  8670,  8813,  8956,  9099,  9242,  9385,
- 28295, 28363,   nil,   nil,  9528,  9671,  9814,   nil,   nil,   376,
-   104,   112,   512,   147,   431,   492,   nil,  9957,  1530,   506,
-   nil, 10100, 10243, 10386, 10529, 10672, 10815, 10958, 11101, 11244,
- 11387, 11530, 11673, 11816, 11959, 12102, 12245, 12388, 12531, 12674,
- 12817, 12960, 13103,   nil,   nil,   nil,   nil, 13246,   nil,   nil,
-   nil, 28431,   nil,   nil,   508, 13389, 13532,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil, 13675,   nil,  1674,   nil,   505,
-   507,   nil, 13818,   556, 13961,   nil,   nil, 14104, 14247,   nil,
-   nil,   417,   nil,   nil, 14390,  1515,   nil,   533,  1674,   557,
-   604,   572, 24054,  1818,   380,   455,   504,   648,   516,   nil,
-   623,   589,   193,   nil,   nil,   nil,   651,   167,   641, 24193,
-   nil,   449,   591,  2538,  2682,   709,   nil,   711, 14533,   nil,
- 14676,  1962,  1659,   654, 14819, 14962,   nil,   784,    -8,     8,
- 15105,  2106,  2250,   462,   779,   666,   -19,    -7,   620,   749,
-    24,   803,   nil,   nil, 24332,   nil, 24471,   244,   356,   412,
-   416,   481,   514,   552,   555,   576,   nil,   596,   nil,   nil,
-   nil,   nil,   337,   nil,   308,   nil,   382,   nil,   403,   nil,
-   712,   440,   nil,   742,   481,   nil,   745,   -59,   nil,   747,
-   -58,   nil,   485,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil, 26115,   nil,   nil,
-   nil,   nil,   764,   nil,   838,   773, 15248,   776,   nil,   nil,
-   760,   nil,   640,   214,   869,   nil,   nil,  1386,   nil,   nil,
-   nil,   nil,   nil,  1530,   787,   nil,   nil,   785,   787,   513,
-   597,  7240,   nil,   nil,   nil,   272,   408,   828,   nil,   nil,
- 15386, 15518,   nil,   nil,   nil,   -26,   nil,   840, 28499, 28567,
- 15651,   223, 15794, 15937, 16080, 26468,  2826,  2970,   738,   805,
-   865,   866,   868,   877,  4554,  4698,  1121,  3114,  3258,  3402,
-  3546,  3690,  3834,   908,   967,  3978,  4122,  1818,  4266,   937,
-   nil, 16218,   nil,   nil,   nil,   nil, 16344,   823,   822,   827,
-   nil,   nil,   nil,   829,   nil,   nil, 16487,   nil,   nil, 16630,
-   nil, 16773,   nil,   196,   nil,   nil,   nil, 16916,  1674,   844,
-   837,   835,   nil,   nil,   845, 24610,   852, 17059, 28635, 28703,
-   650,   889,   nil, 24749,   856,   nil, 17202, 28771, 28839, 17345,
-  4410,  1962, 17488,   979,   978,   864,   nil,   nil,   534,   573,
-   901,   884,   nil,   643,   910,  2394,   987,   nil,  2538,    63,
-   992,   999,   436,  1000,   nil,   nil, 17631, 28907, 28975,    26,
-   nil,   955,  1087,   -20,   nil,   652,   nil,   903, 17774,   nil,
-   925,   nil,   nil,   nil, 17917,   nil,   475,   nil,   887,   889,
-   912,   nil,   913,   915,   919,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   904,   949,   nil,   nil, 18060,   nil,   nil,
-   nil,     0,   nil,   nil,   nil,  1001,   nil,   nil,  1003,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   265,   nil,   nil,   298,   nil,   nil,   nil,   932,   nil,   nil,
-   938,   nil,  2682,   nil, 26248,   nil, 18203,   940, 18346, 18489,
- 18632, 29043, 29111, 18775, 18918,   644,   979, 19061, 19204, 19347,
- 19490,   978,   nil,   nil,   nil, 19633, 19776,   979,   nil,   nil,
-   nil,   236,   243,   544,   680,   951,   992,   nil,   973,   nil,
-   nil,   317,   195,   -67,   nil,   759,   nil,   nil,  7099, 16203,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1033,     5,   nil,   958,   nil,   113,  1065,   -19,   nil,
-   nil, 19919,   nil,   980,   nil,  1086,   nil,   967,   nil,  1017,
- 20062,   nil,   nil, 20205,   nil,   nil,   -85, 24888,   977,   nil,
-   981,    -9,    -5,  1020,    25,   725,  1021,   993, 25027,   nil,
-  1057,   -14,   683,   nil, 20348,   nil,   nil,   nil,   nil, 20491,
-   nil,   nil, 20634,   nil,   nil,   nil,   835,   nil,  1111,   nil,
-   nil,   nil,   nil,   nil,  1117,  1125,   nil,   nil, 20777,  1014,
-    29,    30,   162,   163,  2826,   nil,   769,   nil, 29179, 29247,
- 20920,   nil,   nil,   nil,   814,  2970,  3114, 28186,   611, 26381,
-    -7,    34,  1028,   231,   nil,   nil,   760,   nil,   745,   nil,
-   883,   nil,  5662,   nil, 21063,   nil,  1084,   nil,  1029,  1032,
-   685,  1040,   nil,   nil,   nil,   nil,   nil,  1153,  3258,   nil,
-   nil,   nil,   nil,   nil,  1055,   nil,   nil,  1040, 21206,  1044,
-   251,   266,   816,   952,   nil,  2106, 21349,   nil,  1042,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 21492,
- 21635, 21778, 21921,   277,  1124, 26581,  1085,   314, 26694, 26807,
-   319, 26920,   nil,    58,   nil,  1065, 27033, 28092, 28186,   nil,
-   nil,   nil,   nil,   nil, 22064,   nil,   nil,  5761,   nil,  3402,
-   nil,   nil,  1067,  1059,   nil,   127,   nil,   nil,   nil,   nil,
-  1057,    39,   nil,   nil,   nil,   nil,   nil,   nil,  3546,   nil,
-  1060,  1104,   nil,   nil,   688,  1184,   nil,   nil, 22207,   nil,
-  3690,  1186,   nil,   nil,   nil, 27146,   nil, 22350,    69,    68,
-  1188,  1089,   784,   nil,  1072,  3834, 22493,   598,  1193,  1194,
-  1083,  1090,  1095,   nil,   601,   nil,   nil,   nil,  3978,  4122,
-  1097,  1106,  1107,   nil,  1188,   nil,   nil,  1111,  1120,   nil,
-  1121,  1122,   nil,  1125,   nil,   nil,  1129,  2380,  1034,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1118,   nil,  1129,   313,
-   nil,   nil, 22636, 22779,   nil,   nil,   nil,   nil,   -63,  1176,
-  1177, 27259,   nil,  1140,   -33,  1141,   nil,   nil,   nil, 27372,
-   nil,     1,  1152,  1158,   nil,  1172,  1176,   nil,   740,   nil,
-   nil,  2250,  1176,  1191,  1194,   nil,  1195,  1198,  1200,   nil,
-  1221,  1206,  1187, 25166,   nil,   nil,   nil,   nil,   nil,  4266,
-  4410,   nil,     9, 25305,   nil,   nil,   nil,    35,   nil,   nil,
-    43,   836,   -31,   nil,   nil,   nil, 22922,  4554,   nil,   nil,
-  1327,   635,   nil,   nil,   nil,   nil, 28240,   nil,   nil,  1247,
-  1226,  1333,   916,   nil,   nil, 15350,   nil,  7063,   nil, 15449,
-   nil, 16224,   nil,   nil,   nil,   nil,  1225,  1226,   nil,   nil,
-   nil,  1268,  1234,   131,   nil,  1235, 27485,   201,  1277,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,   nil,
- 29309,   nil,   nil, 29316,   nil, 23658,   nil,   nil,  1259, 25444,
-   786,  1315,   nil,  1363,  4698,   120,   135,   788,  1317,   144,
-   nil,  4842,   nil, 23065, 23208, 27598,   nil, 23351,   441,   nil,
-   nil,  4986,  1247,  5130,   nil,   nil,   707,   nil,   nil,   nil,
-  1246,  1247,  1251,  1254,  2410,  2417,   nil,  1255, 27711, 27824,
-  1264,   nil,   nil,   nil,   nil,  1265,   nil,   nil,  1266,  1269,
-  1270,  1271,   nil,  1273,   nil,   863, 29384,   nil,   nil,  1415,
- 23494, 29452, 29520,   145,   884,  5274,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1414,   nil,  1416,   nil,  1228, 23797,   nil,
-   nil,   nil,   nil,  1297, 27937,  1298,  1299, 28050,   nil, 29582,
-   nil, 23936,   nil, 24075,   nil, 24214,   nil,   nil,  1352,  1356,
-   nil,  1323,   158,   168,   169,   236,   nil,   310,   nil,   nil,
-   nil,  1335,  1338,   nil,  1339,  1342,  1344,  1345,   171,   nil,
-   nil,   nil,   nil, 24353,   nil,   nil,   nil,   nil,  1347,   nil ]
-
-racc_action_default = [
-    -1,  -757,  -756,  -757,    -2,  -742,    -4,    -5,  -757,    -8,
-    -9,  -757,  -757,  -757,   -36,  -757,  -757,   -41,  -757,  -757,
-  -301,   -53,  -744,  -757,   -60,   -65,   -66,   -67,   -71,  -278,
-  -278,  -278,  -316,  -350,  -351,   -83,  -756,   -87,   -95,   -97,
-  -757,  -638,  -639,  -757,  -757,  -757,  -757,  -757,  -757,  -235,
-  -757,  -744,  -249,  -292,  -293,  -294,  -295,  -296,  -297,  -298,
-  -299,  -300,  -728,  -303,  -305,  -312,  -314,  -324,  -326,  -757,
-  -757,   -62,   -62,  -742,  -757,  -335,  -342,  -757,  -352,  -353,
-  -355,  -356,  -357,  -358,  -359,  -360,  -361,  -362,  -363,  -364,
-  -373,  -429,  -568,  -569,  -570,  -571,  -572,  -756,  -575,  -756,
-  -756,  -756,  -756,  -756,  -756,  -611,  -612,  -756,  -614,  -620,
-  -622,  -623,  -624,  -625,  -726,  -627,  -628,  -727,  -630,  -631,
-  -632,  -633,  -634,  -635,  -636,  -637,  -642,  -643,  1250,    -3,
-  -743,  -752,  -753,  -754,    -7,  -757,  -757,  -757,  -757,  -757,
-  -757,   -24,  -757,  -126,  -127,  -128,  -129,  -130,  -131,  -132,
-  -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,  -194,  -195,
-  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,  -204,  -205,
-  -206,   -29,  -133,  -756,  -757,  -757,  -757,  -757,  -757,  -756,
-  -757,  -757,  -738,  -739,  -757,  -757,  -744,  -745,   -57,  -757,
-  -638,  -639,  -757,  -301,  -757,  -757,  -241,  -757,  -756,  -757,
-   -58,  -218,  -219,  -757,  -757,  -757,  -757,  -757,  -757,  -757,
-  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,
-  -757,  -757,  -757,  -250,  -251,  -252,  -253,  -757,  -366,  -457,
-  -437,  -757,  -740,  -741,   -72,  -756,  -757,  -323,  -365,  -441,
-  -450,  -452,   -78,  -447,   -79,  -744,   -80,  -256,  -273,  -756,
-  -756,  -277,  -757,  -283,  -757,  -756,  -720,  -757,  -757,   -81,
-   -82,  -742,   -17,   -18,  -757,   -21,   -22,   -85,  -756,  -744,
-  -757,   -88,   -91,  -756,  -103,  -104,  -757,  -757,  -111,  -316,
-  -319,  -744,  -757,  -350,  -351,  -354,  -448,  -757,   -93,  -757,
-   -99,  -311,  -757,  -220,  -221,  -621,  -229,  -230,  -757,  -242,
-  -757,  -756,  -307,  -744,  -756,  -756,  -325,   -61,  -757,  -757,
-  -757,  -756,  -756,  -742,  -757,  -743,  -638,  -639,  -757,  -757,
-  -301,  -757,  -383,  -384,  -757,  -338,  -757,  -126,  -127,  -166,
-  -167,  -168,  -184,  -189,  -196,  -199,  -345,  -757,  -638,  -639,
-  -715,  -716,  -673,  -573,  -757,  -596,  -757,  -598,  -757,  -600,
-  -757,  -757,  -580,  -757,  -757,  -586,  -757,  -757,  -592,  -757,
-  -757,  -594,  -757,  -613,  -615,  -616,  -617,  -618,    -6,  -755,
-   -30,   -31,   -32,   -33,   -34,   -10,   -11,  -757,   -26,   -27,
-   -28,  -134,  -757,   -37,   -40,  -288,  -757,  -757,  -287,   -38,
-  -757,   -42,  -757,  -301,   -50,   -52,  -207,  -261,  -283,   -54,
-   -55,   -43,  -208,  -261,  -744,  -268,  -269,  -756,  -756,  -729,
-  -730,  -278,  -445,  -731,  -732,  -730,  -729,  -278,  -444,  -446,
-  -731,  -732,   -49,  -215,   -56,  -744,  -322,  -757,  -757,  -757,
-  -756,  -311,  -757,  -757,  -757,  -757,  -216,  -217,  -222,  -223,
-  -224,  -225,  -226,  -227,  -231,  -232,  -233,  -234,  -236,  -237,
-  -238,  -239,  -240,  -243,  -244,  -245,  -246,  -744,  -254,  -757,
-  -458,  -278,  -729,  -730,   -69,   -73,  -674,  -744,  -756,  -744,
-  -279,  -454,  -457,  -744,  -318,  -274,  -757,  -282,  -275,  -757,
-  -280,  -757,  -284,  -757,  -723,  -725,   -16,  -743,   -20,  -757,
-  -744,   -84,  -309,  -100,   -89,  -757,  -744,  -756,  -757,  -757,
-  -110,  -757,  -621,  -757,   -96,  -101,  -757,  -757,  -757,  -757,
-  -255,  -247,  -757,  -560,  -757,  -744,  -306,  -257,  -749,  -749,
-  -757,  -757,  -718,  -749,  -757,  -756,  -374,  -375,  -756,  -757,
-  -757,  -757,  -757,  -757,  -369,  -464,  -756,  -757,  -757,  -311,
-   -62,  -121,  -122,  -757,  -124,  -757,  -301,  -756,  -757,  -343,
-  -650,  -347,  -736,  -737,  -757,  -430,  -673,  -433,  -714,  -714,
-  -714,  -656,  -658,  -658,  -658,  -672,  -675,  -676,  -677,  -678,
-  -679,  -680,  -681,  -682,  -757,  -684,  -686,  -688,  -693,  -695,
-  -696,  -699,  -704,  -706,  -707,  -709,  -710,  -711,  -757,  -574,
-  -597,  -602,  -603,  -605,  -576,  -599,  -577,  -601,  -578,  -579,
-  -757,  -582,  -584,  -757,  -585,  -588,  -589,  -757,  -590,  -591,
-  -757,  -619,  -756,   -25,  -757,   -35,  -757,  -291,  -757,  -757,
-  -756,  -757,  -757,  -757,  -757,  -449,  -757,  -270,  -272,  -757,
-  -757,   -74,  -266,  -267,  -442,  -757,  -757,   -76,  -443,  -321,
-  -746,  -729,  -730,  -729,  -730,  -744,   -59,  -481,  -483,  -485,
-  -488,  -541,  -495,  -498,  -501,  -534,  -539,  -540,  -757,  -757,
-  -544,  -545,  -546,  -547,  -548,  -549,  -550,  -551,  -552,  -553,
-  -554,  -757,  -757,  -558,  -757,  -436,  -756,   -68,  -438,  -454,
-  -263,  -270,  -265,  -757,  -455,  -757,  -317,  -756,  -281,  -285,
-  -757,  -721,  -722,  -757,   -19,   -23,   -86,  -757,   -92,   -98,
-  -744,  -729,  -730,  -756,  -733,  -109,  -757,   -94,  -757,  -214,
-  -228,  -744,  -756,  -367,  -756,  -304,  -372,  -308,  -258,  -751,
-  -750,  -260,  -751,  -313,  -315,  -719,  -756,  -376,  -756,   -63,
-  -377,  -378,  -329,  -330,  -757,  -757,  -468,  -332,  -757,  -744,
-  -729,  -730,  -733,  -310,  -756,  -121,  -122,  -123,  -757,  -757,
-  -756,  -336,  -644,  -646,  -339,  -756,  -756,  -673,  -673,  -757,
-  -744,  -757,  -744,  -757,  -653,  -654,  -757,  -655,  -757,  -665,
-  -757,  -668,  -757,  -670,  -757,  -385,  -757,  -387,  -389,  -392,
-  -395,  -744,  -687,  -697,  -698,  -708,  -712,  -757,  -756,  -581,
-  -583,  -587,  -593,  -595,  -757,  -135,   -39,  -289,  -757,  -744,
-  -729,  -730,  -730,  -729,   -51,  -262,  -757,  -747,  -756,   -45,
-  -210,   -46,  -211,   -75,   -47,  -213,   -48,  -212,   -77,  -757,
-  -757,  -757,  -757,  -449,  -757,  -757,  -486,  -487,  -757,  -757,
-  -757,  -757,  -497,  -757,  -500,  -757,  -757,  -537,  -538,  -542,
-  -543,  -555,  -122,  -556,  -757,  -418,  -419,  -744,  -421,  -756,
-  -440,  -439,  -757,  -744,  -451,  -756,  -453,  -276,  -286,  -724,
-   -90,  -449,  -102,  -320,   -13,   -15,  -368,  -370,  -756,  -567,
-  -561,  -756,  -562,  -563,  -749,  -757,  -371,  -379,  -757,  -381,
-  -756,  -757,   -64,  -331,  -333,  -757,  -460,  -757,  -757,  -449,
-  -757,  -121,  -122,  -125,  -744,  -756,  -757,  -757,  -757,  -757,
-  -744,  -658,  -744,  -674,  -757,  -348,  -717,  -431,  -756,  -756,
-  -423,  -744,  -714,  -694,  -699,  -713,  -657,  -658,  -658,  -685,
-  -658,  -658,  -705,  -658,  -682,  -700,  -744,  -757,  -757,  -394,
-  -683,  -604,  -607,  -608,  -609,  -610,  -757,   -12,  -290,  -449,
-   -44,  -209,  -271,  -757,  -482,  -484,  -491,  -494,  -503,  -757,
-  -757,  -504,  -510,  -757,  -515,  -521,  -523,  -525,  -526,  -529,
-  -530,  -532,  -744,  -744,  -557,  -744,  -744,  -748,  -757,  -535,
-  -536,  -248,  -714,  -714,  -714,  -400,  -756,  -756,  -756,  -417,
-  -757,  -744,  -682,  -690,  -691,  -702,  -459,   -70,  -264,  -756,
-  -756,  -566,  -757,  -757,  -565,  -259,  -327,  -757,  -382,  -328,
-  -757,  -473,  -476,  -479,  -480,  -461,  -757,  -756,  -334,  -449,
-  -757,  -757,  -340,  -344,  -346,  -647,  -757,  -649,  -651,  -650,
-  -757,  -757,  -757,  -432,  -652,  -757,  -661,  -757,  -663,  -757,
-  -666,  -757,  -669,  -671,  -386,  -388,  -390,  -393,  -606,  -489,
-  -490,  -519,  -505,  -508,  -511,  -513,  -757,  -522,  -528,  -531,
-  -533,  -492,  -493,  -496,  -499,  -502,  -757,  -397,  -398,  -399,
-  -408,  -402,  -410,  -757,  -413,  -757,  -415,  -420,  -757,  -757,
-  -689,  -757,  -456,  -756,  -756,  -638,  -639,  -757,  -757,  -301,
-  -564,  -756,  -469,  -757,  -757,  -477,  -462,  -757,  -756,  -337,
-  -645,  -756,  -744,  -756,  -434,  -435,  -744,  -425,  -427,  -428,
-  -658,  -658,  -658,  -658,  -757,  -757,  -512,  -506,  -757,  -757,
-  -516,  -517,  -520,  -524,  -527,  -714,  -692,  -401,  -756,  -756,
-  -756,  -756,  -703,  -756,  -422,  -701,  -757,  -311,   -14,  -560,
-  -756,  -757,  -757,  -311,  -756,  -756,  -474,  -475,  -478,  -463,
-  -465,  -466,  -467,  -757,  -648,  -757,  -424,  -757,  -757,  -659,
-  -662,  -664,  -667,  -391,  -757,  -509,  -514,  -757,  -396,  -757,
-  -405,  -757,  -407,  -757,  -411,  -757,  -414,  -416,  -310,  -733,
-  -559,  -744,  -729,  -730,  -733,  -310,  -380,  -756,  -341,  -349,
-  -426,  -658,  -507,  -518,  -756,  -756,  -756,  -756,  -449,  -470,
-  -471,  -472,  -660,  -757,  -403,  -406,  -409,  -412,  -756,  -404 ]
-
-racc_goto_table = [
-     6,    42,   454,   298,   298,   298,   583,    42,   519,   386,
-   356,   280,   289,   293,   785,   762,   230,     4,   806,   564,
-   235,   146,   146,   931,   282,   141,   222,   925,   133,   238,
-   149,   149,   623,   321,   451,    42,   325,   325,   915,   414,
-   472,   358,   359,   528,   741,   363,   438,   439,   129,   350,
-   361,   362,   345,   575,   578,   768,   771,   884,   517,     9,
-   775,   461,   467,    42,   338,     9,   825,   607,   130,   797,
-   696,   554,   972,   367,  1085,   317,   389,   738,   515,  1027,
-   738,   615,   320,   299,   299,   299,   961,   146,   509,   831,
-  1147,   335,   335,   967,   964,   395,   133,   397,   399,   402,
-   405,   408,   411,   969,   733,   395,  1172,   420,   421,   422,
-   423,   425,   511,  1087,   899,   319,   364,   146,  1149,     1,
-   968,   352,   970,   999,  1012,   394,  1015,   445,   335,    42,
-   445,   650,   134,     2,   653,   412,   445,   140,    42,   814,
-   815,   817,   597,  1160,   599,   662,   300,   300,   300,   914,
-   296,   309,   310,   675,  1040,   744,   539,  1000,  1013,  1011,
-  1011,   221,  1016,   373,  1011,   889,   890,   434,   284,   292,
-   294,  1030,   645,   427,   647,   485,   779,   651,   932,   281,
-   651,   729,   664,   348,   570,   728,   390,     9,   571,   371,
-   801,   387,   601,   741,   351,   353,   424,   565,   893,  1028,
-   298,   528,  1172,   354,   355,  1205,  1206,   374,   945,   598,
-   947,  1141,   376,   462,  1054,  1230,  1011,   805,   600,   809,
-  1069,  1086,    42,  1029,   784,  1031,  1146,   455,   738,   738,
-   433,   444,   605,   957,   444,   392,   478,   811,   521,   522,
-   444,   471,   905,  1149,    16,   938,   623,    42,   726,  1190,
-    16,  1232,  1085,   695,   418,   788,   298,   298,  1050,  1239,
-   935,  1185,  1051,  1053,   994,   995,   298,   878,   825,   432,
-   879,   881,   979,   883,   943,   437,   437,   748,    16,   886,
-  1162,   812,   738,   455,  1163,   757,  1164,   741,   921,  1203,
-  1042,   976,  1168,  1039,   320,   615,    18,   527,   527,   393,
-   396,   398,    18,   395,   401,  1118,    16,   404,   407,   461,
-   467,   410,   902,    42,   981,   289,   372,    42,   837,   293,
-   750,   325,    42,   548,   838,   413,   946,   972,   963,   551,
-    18,   735,   579,   533,   133,   555,   518,   299,   325,   557,
-  1166,   967,   604,   552,  1019,  1020,   299,   nil,   544,   nil,
-    42,   969,   567,   572,   536,   nil,  1014,   317,    18,   789,
-    42,    42,   317,   nil,   320,   587,   969,   nil,   968,   320,
-  1104,   538,    16,   389,   537,   389,   335,  1150,  1011,   753,
-  1188,    16,   nil,  1191,   nil,   nil,   133,   964,   753,   nil,
-   nil,   nil,   nil,   335,   873,   969,   nil,   540,   nil,  1178,
-   300,   882,   546,   nil,   520,   568,   582,   580,   581,   300,
-   nil,  1045,  1169,   523,   nil,  1170,   nil,   nil,   753,   825,
-   825,   nil,   nil,   nil,    18,   nil,   840,   nil,   335,   840,
-   335,   nil,   nil,    18,   nil,  1226,   nil,   146,   nil,   671,
-   nil,   663,   nil,   849,   683,   nil,   149,   623,   623,   911,
-   688,   298,   676,   nil,   903,   527,   527,   nil,   623,   682,
-   623,   462,   nil,   998,   998,    16,   998,   440,   569,   573,
-   440,  1018,  1240,   948,   949,   863,   440,   nil,   455,   910,
-   907,   868,   950,   954,   718,   859,   861,  1143,   939,   471,
-    16,   864,   866,  1074,   683,   nil,   615,   615,   nil,   nil,
-   969,   nil,   461,   467,   nil,   724,   nil,   741,   nil,   682,
-   745,  1234,   nil,   nil,   nil,   nil,   527,    18,   298,    18,
-  1052,   nil,    18,   357,   357,   nil,   nil,   357,    18,   nil,
-   952,   462,   nil,   nil,   821,   823,    42,  1032,   nil,   962,
-   462,   555,    18,   738,   325,   455,   nil,   nil,   989,   555,
-   nil,   nil,   325,  1107,  1108,  1109,    16,   298,   nil,   471,
-    16,   nil,   nil,   nil,   nil,    16,   nil,  1036,   471,   794,
-   462,   445,   nil,   944,    42,  1092,   997,    42,   nil,   nil,
-   nil,   445,   445,   nil,   455,   nil,   922,   445,   445,   357,
-   357,   357,   357,    16,  1098,   803,   825,   825,   471,   335,
-   681,   907,   780,    16,    16,   nil,   687,   335,    18,   nil,
-   nil,   nil,    18,  1060,   nil,   nil,   nil,    18,   nil,   nil,
-   nil,   776,   nil,  1023,   778,   nil,   nil,  1071,   nil,   nil,
-   753,  1220,   nil,  1057,   nil,   nil,   nil,   nil,   nil,   nil,
-   737,   298,   nil,  1059,   nil,    18,   nil,   nil,   nil,   nil,
-   727,   nil,   nil,   nil,   462,    18,    18,   nil,   nil,  1241,
-     6,    42,   990,   nil,   nil,    42,   nil,   nil,   455,   nil,
-  1161,   901,    42,   nil,   146,   444,   nil,   844,   845,   nil,
-   449,   450,   471,   149,   nil,   444,   444,   nil,   nil,   474,
-   475,   444,   444,   676,   nil,   nil,  1208,   nil,   nil,   nil,
-   676,   885,   nil,   nil,   nil,   nil,   623,   718,   718,   nil,
-   nil,  1101,  1102,   900,  1103,   623,   nil,   nil,   nil,     9,
-   998,   nil,   nil,   846,   895,   nil,   nil,   nil,   nil,   nil,
-   854,   nil,  1161,  1161,   nil,   527,   683,  1124,   nil,   688,
-   nil,   955,  1131,   555,   nil,  1132,   325,   nil,   676,   nil,
-  1032,   682,   nil,  1032,   912,   nil,   nil,   325,   445,   nil,
-   919,   nil,   923,   nil,   452,  1024,   nil,   nil,   nil,   nil,
-   473,   298,   nil,   nil,   929,   nil,   929,   nil,  1161,    16,
-  1192,  1233,   462,   nil,   nil,   nil,   nil,   676,   nil,  1142,
-   nil,   858,   nil,    42,   nil,   nil,   nil,   nil,   455,   nil,
-   nil,   335,   nil,   nil,    42,    42,   nil,   nil,   471,  1193,
-   960,  1195,   335,   nil,   357,   437,   nil,    16,   nil,   146,
-    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,  1165,   nil,   nil,   nil,  1023,    42,   nil,  1023,
-   940,  1023,   nil,   nil,   nil,   858,   nil,   676,   nil,  1032,
-   nil,   nil,   nil,   nil,   nil,   nil,   527,   nil,   nil,   nil,
-   nil,   nil,   444,   nil,   nil,   nil,   nil,   nil,   nil,    18,
-   nil,   nil,    18,   nil,   718,   676,   nil,   718,   718,   nil,
-   718,   nil,   nil,   924,   986,   718,   718,   718,  1076,  1078,
-   nil,  1080,  1082,   nil,  1083,   960,   nil,   nil,    42,   nil,
-  1047,   nil,   nil,   895,    16,   nil,   nil,   nil,    16,   nil,
-   nil,   440,   nil,   nil,   nil,    16,   nil,    42,  1061,  1044,
-  1238,   440,   440,   nil,   nil,   nil,   nil,   440,   440,    42,
-   nil,   nil,   nil,   nil,   718,  1023,   nil,  1023,   nil,  1023,
-   nil,  1023,   676,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1221,   nil,   nil,    18,    42,    42,   nil,
-    18,   nil,   nil,    18,  1041,   nil,   nil,    18,   nil,  1023,
-  1062,   nil,  1033,    18,    18,   nil,  1048,  1068,  1024,    18,
-    18,  1024,   nil,  1024,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   718,   nil,   nil,   nil,  1070,   nil,   nil,   nil,   718,   nil,
-   676,   676,   753,   676,   885,   nil,   761,   nil,   473,   nil,
-   452,   nil,   nil,   nil,  1111,  1111,  1111,   nil,   nil,   960,
-   nil,   nil,   389,   nil,   nil,   nil,    16,   nil,    42,    42,
-   nil,   nil,  1126,   nil,   nil,   nil,   nil,    16,    16,   951,
-   nil,   nil,   804,   nil,   nil,   nil,    42,   nil,   810,   nil,
-   nil,   nil,   971,   nil,   973,   nil,   nil,   nil,   nil,   nil,
-   nil,  1199,  1200,  1201,  1202,   nil,   nil,  1024,   nil,  1024,
-    16,  1024,   nil,  1024,  1140,  1122,  1123,   335,    18,   nil,
-   nil,   nil,   759,   nil,   nil,   718,   nil,   335,   440,    18,
-    18,   nil,   nil,  1138,   710,  1186,  1187,   nil,   nil,   nil,
-   nil,  1024,   nil,   nil,   nil,   nil,   nil,   nil,   389,   nil,
-   nil,   919,   nil,    42,  1181,   nil,   nil,   435,   448,   nil,
-    42,   nil,    18,   nil,   718,   nil,   929,   nil,   nil,  1026,
-    42,    16,    42,   nil,  1196,   965,   nil,   nil,   965,   nil,
-    18,   298,  1242,   nil,   nil,   nil,   nil,   718,   718,   nil,
-    16,   nil,   nil,   nil,   462,   nil,  1111,  1111,  1111,  1111,
-  1179,  1111,    16,   335,   nil,   nil,   nil,  1184,   455,   nil,
-   nil,  1033,   929,   nil,    42,  1033,   471,    16,  1033,   nil,
-  1033,   nil,   471,    18,   nil,   nil,   nil,   nil,   nil,   nil,
-    16,    16,   nil,   718,   nil,   530,   718,   532,   nil,   nil,
-   534,   535,    18,   nil,   nil,   860,   862,   nil,   nil,   676,
-   nil,   865,   867,   nil,    18,   929,   nil,   nil,   nil,  1025,
-   nil,  1227,  1111,  1111,  1111,  1111,   nil,   nil,   nil,    18,
-   nil,    19,   nil,   nil,   nil,   nil,  1111,    19,   nil,   nil,
-   nil,   nil,    18,    18,   nil,   nil,   nil,   nil,   574,   nil,
-   nil,   nil,   239,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   239,   239,   nil,    19,   326,   326,   nil,   nil,
-   nil,    16,    16,   nil,  1033,  1130,  1033,   nil,  1033,   nil,
-  1033,   711,   nil,   nil,   nil,   nil,    20,   nil,   nil,    16,
-   nil,   nil,    20,    19,   nil,   nil,   nil,   nil,   239,   239,
-   nil,   nil,   239,   368,   nil,   nil,   nil,  1151,  1033,  1152,
-   nil,  1153,   nil,   nil,   nil,   nil,   nil,   710,   710,   nil,
-    20,   328,   328,    18,    18,   nil,   nil,   nil,   nil,   667,
-   476,   nil,   nil,   nil,   712,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,   nil,   nil,   nil,  1171,   nil,  1173,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   370,    19,
-   nil,   nil,   nil,    16,   239,   239,   239,   239,    19,   nil,
-   nil,   nil,   357,    16,   nil,    16,   nil,   nil,   nil,   nil,
-   nil,   nil,   991,   nil,   nil,   nil,   nil,   nil,   765,   524,
-   357,   nil,   nil,   nil,   nil,   860,   862,   867,   865,   nil,
-   nil,   nil,   nil,   nil,   782,   783,   nil,   787,    18,   nil,
-   nil,   nil,   nil,   541,    20,    18,   nil,    16,   nil,   739,
-   nil,   nil,   574,    20,   742,    18,   nil,    18,   965,   nil,
-  1231,   nil,  1025,   nil,   nil,  1025,   nil,  1025,   nil,   nil,
-   nil,  1235,   nil,  1236,   nil,  1237,   nil,   566,   nil,   nil,
-   nil,   nil,    19,   239,   442,   239,   239,   442,   239,   nil,
-   nil,   nil,   nil,   442,   239,   239,   nil,   nil,   nil,    18,
-   nil,   nil,   nil,   nil,   nil,  1248,   nil,    19,   nil,   nil,
-   nil,   nil,   nil,   nil,   710,   nil,   nil,   710,   710,   nil,
-   710,   nil,   nil,   nil,   nil,   710,   710,   710,   nil,   nil,
-   nil,   nil,   nil,   nil,   711,   711,   nil,    20,   nil,   443,
-   nil,   nil,   443,   nil,   239,   239,   nil,   nil,   443,   991,
-   832,   nil,   nil,   nil,   239,   nil,   nil,   713,   nil,   nil,
-   nil,  1025,    20,  1025,   nil,  1025,   nil,  1025,   nil,   nil,
-   nil,   nil,   nil,    19,   710,   nil,   nil,    19,  1112,  1114,
-  1116,   326,    19,   nil,   nil,   nil,   nil,   712,   712,   nil,
-   nil,   847,   nil,   nil,   nil,  1025,   nil,   nil,   326,   689,
-   739,   574,   nil,   nil,   nil,   nil,   nil,   357,   357,   nil,
-    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
-    19,    19,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,    20,   595,   nil,   595,   328,    20,   933,   934,
-   710,   730,   nil,   732,   nil,   nil,   nil,   736,   710,   nil,
-   nil,   nil,   nil,   328,   739,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   908,   746,    20,   909,   nil,   nil,   nil,
-   749,   nil,   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   920,   596,   767,
-   596,   nil,   739,   nil,   nil,   574,   nil,   nil,   nil,   nil,
-   714,   711,   nil,   nil,   711,   711,   nil,   711,   nil,   nil,
-   nil,   936,   711,   711,   711,   nil,   nil,   nil,   nil,   nil,
-  1210,  1212,  1214,  1216,   nil,  1217,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   710,   nil,   nil,   nil,   239,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   975,   nil,   nil,
-   nil,   nil,   nil,   nil,   712,   nil,   nil,   712,   712,   nil,
-   712,   711,   nil,   nil,   nil,   712,   712,   712,   nil,   nil,
-   nil,   988,   nil,   nil,   710,   nil,   nil,   nil,   nil,  1046,
-   713,   713,   nil,   nil,   nil,  1049,  1244,  1245,  1246,  1247,
-   nil,   nil,   nil,   nil,  1058,   nil,    19,   710,   710,   nil,
-  1249,   nil,  1063,  1064,   326,   nil,   239,   nil,   nil,   nil,
-   nil,   nil,   326,   nil,   712,   nil,   nil,   nil,   nil,   nil,
-   nil,   239,   nil,   nil,   nil,   nil,   nil,   711,   nil,   nil,
-   nil,   nil,   nil,   nil,    19,   711,   nil,    19,   nil,   nil,
-   nil,   nil,   nil,   710,   nil,   239,   710,   nil,   nil,   nil,
-   nil,    20,   nil,   nil,   nil,   nil,   nil,   239,   nil,   328,
-  1055,   nil,   nil,   239,   nil,   nil,   nil,   328,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   712,   nil,   nil,   nil,   nil,   913,   nil,   nil,   712,    20,
-   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1139,   574,   nil,   nil,   nil,   nil,
-   nil,    19,   711,   714,   714,    19,   nil,   nil,   442,   239,
-   nil,   nil,    19,   nil,   956,   nil,   nil,   nil,   442,   442,
-   nil,   nil,   nil,   nil,   442,   442,   nil,   713,   nil,   nil,
-   713,   713,   nil,   713,   nil,   980,   nil,   nil,   713,   713,
-   713,   711,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   712,    20,   nil,   nil,  1136,
-    20,   nil,   nil,   443,   711,   711,   nil,    20,   nil,   nil,
-   nil,   nil,   nil,   443,   443,   nil,   nil,   nil,   nil,   443,
-   443,   nil,   nil,   nil,   nil,   nil,   326,   713,   nil,   nil,
-   nil,   nil,   nil,   nil,   712,   nil,   nil,   326,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1038,   nil,   nil,
-   711,   nil,   nil,   711,   nil,   nil,   nil,   712,   712,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1228,   nil,  1229,
-   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,   nil,   239,
-  1189,   328,   nil,   nil,    19,    19,   nil,   nil,   nil,   nil,
-   nil,   nil,   328,   713,  1065,   nil,  1067,   715,   nil,   nil,
-   nil,   713,   nil,   712,   nil,  1073,   712,   nil,   nil,   nil,
-   714,   nil,   nil,   714,   714,   nil,   714,    19,   nil,   nil,
-  1084,   714,   714,   714,   nil,    29,   nil,   nil,    20,   nil,
-   nil,    29,   nil,   nil,   nil,   442,   nil,   716,   nil,    20,
-    20,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,    29,    29,   nil,    29,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   714,   985,    20,   nil,   nil,   nil,   nil,   nil,    19,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   713,   nil,
-   443,   nil,    29,    29,   nil,   nil,    29,    19,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,    19,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    19,   239,   nil,   713,   nil,   nil,
-   nil,   nil,   nil,    20,   nil,   nil,   714,    19,    19,   nil,
-   nil,   nil,   nil,   nil,   714,   nil,   nil,   nil,   nil,   nil,
-   713,   713,    20,    29,   nil,   nil,   nil,   nil,    29,    29,
-    29,    29,    29,   nil,    20,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,  1194,   nil,   nil,   nil,
-   nil,   nil,    20,    20,   nil,   nil,   713,   nil,   nil,   713,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1120,   nil,   nil,   nil,   nil,   nil,    19,    19,
-   715,   715,  1127,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   714,   nil,   nil,    32,   nil,    19,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,    29,    29,    29,    29,
-    29,    29,    29,   nil,   nil,    32,   nil,    29,    29,    29,
-   716,   716,   nil,   nil,    32,    32,    32,   596,    32,   nil,
-   714,    29,   nil,    20,    20,   nil,   nil,  1129,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   nil,   714,   714,   nil,    32,   nil,  1175,   nil,
-   nil,    32,    32,    19,   nil,    32,   nil,   nil,    29,    29,
-    19,   nil,   239,   239,   nil,   nil,   nil,   nil,    29,   nil,
-    19,   nil,    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   717,   nil,    29,   nil,   714,
-   nil,    29,   714,   nil,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,   nil,   596,   nil,   nil,   nil,   nil,    20,   239,
-   nil,   nil,    32,   nil,    19,    20,   nil,    32,    32,    32,
-    32,    32,   nil,   nil,    29,    20,   nil,    20,   nil,   nil,
-   nil,   nil,   nil,    29,    29,    29,   nil,   715,   nil,   nil,
-   715,   715,   nil,   715,   nil,   nil,   nil,   nil,   715,   715,
-   715,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   719,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,    20,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,   nil,
-   716,   716,   nil,   716,   nil,   nil,   nil,   nil,   716,   716,
-   716,   nil,   nil,   nil,   nil,   nil,   nil,   715,    41,   324,
-   324,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
-    32,    32,   nil,   nil,   nil,   nil,    32,    32,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   366,   716,   nil,   388,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   715,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   715,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-    32,    41,   nil,   716,   nil,    32,   nil,   nil,   717,   717,
-    29,   716,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,    29,   nil,   nil,   nil,   nil,
-   nil,   nil,    32,    32,    32,   nil,   nil,   nil,    29,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   715,    29,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-   nil,   nil,   nil,   719,   719,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   715,   716,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   715,   715,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    29,   nil,   716,   nil,    29,
-   nil,   nil,    29,    29,   nil,   nil,    29,   nil,   nil,   nil,
-   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,    29,    29,
-   716,   716,    32,   nil,   nil,   nil,   715,   nil,   nil,   715,
-   nil,   nil,   nil,   nil,   nil,   717,    41,   nil,   717,   717,
-    41,   717,   nil,   nil,   324,    41,   717,   717,   717,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   nil,   nil,   nil,   716,   nil,   nil,   716,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,    32,
-   nil,   nil,   nil,   nil,   nil,   717,   388,   nil,   388,   nil,
-   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
-   719,   nil,   nil,   719,   719,   nil,   719,    32,   nil,   nil,
-    32,   719,   719,   719,   nil,   nil,   nil,    29,    32,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,    29,
-    32,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   717,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   717,
-   719,    29,   nil,   nil,   nil,   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,   nil,    32,   nil,   nil,   nil,    32,   nil,
-   nil,    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,
-   nil,    32,    32,   nil,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,    29,   nil,   nil,   nil,   719,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   719,   nil,   nil,   nil,   nil,   nil,
-   nil,    29,   nil,   nil,   nil,   nil,   717,   nil,   nil,    41,
-   nil,    29,   nil,    29,   nil,   nil,   nil,   324,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   324,   nil,   nil,    29,    29,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    29,    29,   nil,   nil,   717,   nil,    41,   nil,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   717,   717,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   719,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   717,   nil,   nil,   717,   nil,   nil,
-   719,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,    41,   nil,   nil,   nil,    41,   nil,
-    29,   nil,   nil,   719,   719,    41,   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,   719,
-   nil,    32,   719,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
-    32,   nil,   nil,   nil,    29,   nil,    29,    29,   nil,   324,
-    32,   nil,    32,   nil,    29,   nil,    29,   nil,   nil,   nil,
-   324,   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    29,   nil,   nil,    41,   nil,    29,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   297,   297,   297,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   343,   344,   nil,   346,   347,   nil,   349,
-   nil,    32,    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,    41,   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,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,    41,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,    32,    32,   nil,   nil,   nil,
-    41,    41,   nil,    32,   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,    32,   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,   297,   447,   388,   nil,   453,   297,   nil,
-   nil,    41,    41,   453,   nil,  1125,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   246,   nil,   nil,    41,
-   486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
-   496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
-   506,   507,   nil,   nil,   nil,   nil,   508,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   297,   297,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,   nil,   nil,
-   nil,   297,   nil,   297,   nil,   nil,   297,   297,   nil,   nil,
-   nil,   388,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   560,   nil,   561,
-   nil,   nil,   nil,   297,   297,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,
-   nil,   453,   453,   453,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   344,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   297,   nil,
-   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   453,   nil,   nil,   760,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,   453,   297,
-   nil,   nil,   nil,   855,   nil,   nil,   297,   297,   453,   453,
-   nil,   nil,   nil,   nil,   453,   453,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,
-   nil,   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   297,   nil,   nil,   nil,   nil,   297,   nil,
-   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   453,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   453,   453,
-   453,   453,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1021,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   297,   453,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297 ]
-
-racc_goto_check = [
-     6,    69,    36,    48,    48,    48,   116,    69,    88,    72,
-   105,   176,    87,    87,   117,    15,    38,     2,   125,    12,
-    40,    73,    73,   112,    38,    22,    22,   110,   122,    27,
-    75,    75,   245,    65,    33,    69,    69,    69,    17,    72,
-    33,    24,    24,    90,   255,    24,    29,    29,     5,    40,
-    44,    44,    78,   109,   109,    85,    85,   204,    36,     9,
-    85,    52,    52,    69,    66,     9,   150,   175,     8,    70,
-    42,    67,   250,    69,   149,    61,    69,    91,    54,   163,
-    91,   240,    14,    84,    84,    84,   167,    73,   177,   151,
-   169,    80,    80,   244,   216,     6,   122,     6,     6,     6,
-     6,     6,     6,   246,    55,     6,   251,    24,    24,    24,
-    24,    10,    52,   152,   165,    62,     5,    73,   170,     1,
-   164,     9,   164,   193,   193,   224,   193,    25,    80,    69,
-    25,   228,     7,     3,   228,   224,    25,    11,    69,   157,
-   157,   157,    71,   210,    71,    13,    86,    86,    86,    16,
-    60,    60,    60,    37,    18,    20,    21,   195,   195,   216,
-   216,    23,   195,    26,   216,   217,   217,    30,    53,    53,
-    53,   167,   229,    32,   229,    43,    45,   229,    47,    51,
-   229,    57,    76,    81,    83,    89,   101,     9,   104,   119,
-   121,   126,   127,   255,   128,   129,     9,   130,    70,   164,
-    48,    90,   251,   131,   132,   210,   210,   133,   134,   135,
-   136,   137,   138,    87,   195,   169,   216,   139,   140,   141,
-   142,   153,    69,   154,   116,   161,   168,     6,    91,    91,
-    27,    27,   171,   172,    27,   173,    38,   174,   179,   180,
-    27,    73,   182,   170,    28,   183,   245,    69,   185,   186,
-    28,   210,   149,    36,     7,   187,    48,    48,   188,   189,
-   190,   191,   192,   194,   197,   199,    48,   200,   150,    14,
-   201,   205,   150,   206,    70,    84,    84,    67,    28,   207,
-   212,   175,    91,     6,   213,    67,   214,   255,   219,   152,
-   220,   151,   163,   165,    14,   240,    34,     6,     6,   223,
-   225,   226,    34,     6,   227,   167,    28,   230,   231,    52,
-    52,   232,    55,    69,   233,    87,    28,    69,   234,    87,
-    36,    69,    69,    38,   235,   238,   239,   250,   248,    40,
-    34,   177,    24,   224,   122,    65,    84,    84,    69,    38,
-   249,   244,   254,    78,   217,   217,    84,   nil,    66,   nil,
-    69,   246,     6,     6,     5,   nil,    70,    61,    34,    36,
-    69,    69,    61,   nil,    14,    38,   246,   nil,   164,    14,
-   204,     9,    28,    69,     8,    69,    80,   164,   216,    52,
-   193,    28,   nil,   112,   nil,   nil,   122,   216,    52,   nil,
-   nil,   nil,   nil,    80,    37,   246,   nil,    62,   nil,    17,
-    86,    37,    62,   nil,    60,    84,     5,    14,    14,    86,
-   nil,    85,   164,    60,   nil,   164,   nil,   nil,    52,   150,
-   150,   nil,   nil,   nil,    34,   nil,   229,   nil,    80,   229,
-    80,   nil,   nil,    34,   nil,   110,   nil,    73,   nil,    38,
-   nil,    22,   nil,    36,    87,   nil,    75,   245,   245,    37,
-    87,    48,    40,   nil,    88,     6,     6,   nil,   245,     6,
-   245,    87,   nil,    42,    42,    28,    42,    28,    86,    86,
-    28,    42,   112,    12,    12,    54,    28,   nil,     6,    67,
-    90,    54,   175,   175,    69,    33,    33,   125,    37,    73,
-    28,    33,    33,   157,    87,   nil,   240,   240,   nil,   nil,
-   246,   nil,    52,    52,   nil,    40,   nil,   255,   nil,     6,
-    10,   164,   nil,   nil,   nil,   nil,     6,    34,    48,    34,
-    42,   nil,    34,    31,    31,   nil,   nil,    31,    34,   nil,
-    88,    87,   nil,   nil,   243,   243,    69,   245,   nil,   156,
-    87,    65,    34,    91,    69,     6,   nil,   nil,    37,    65,
-   nil,   nil,    69,   157,   157,   157,    28,    48,   nil,    73,
-    28,   nil,   nil,   nil,   nil,    28,   nil,    12,    73,    44,
-    87,    25,   nil,    36,    69,   209,    37,    69,   nil,   nil,
-   nil,    25,    25,   nil,     6,   nil,    29,    25,    25,    31,
-    31,    31,    31,    28,    42,     6,   150,   150,    73,    80,
-    53,    90,   122,    28,    28,   nil,    53,    80,    34,   nil,
-   nil,   nil,    34,    12,   nil,   nil,   nil,    34,   nil,   nil,
-   nil,    14,   nil,   156,    14,   nil,   nil,    12,   nil,   nil,
-    52,    15,   nil,   109,   nil,   nil,   nil,   nil,   nil,   nil,
-    86,    48,   nil,    37,   nil,    34,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,    87,    34,    34,   nil,   nil,   117,
-     6,    69,    33,   nil,   nil,    69,   nil,   nil,     6,   nil,
-   209,   105,    69,   nil,    73,    27,   nil,     2,    22,   nil,
-    31,    31,    73,    75,   nil,    27,    27,   nil,   nil,    31,
-    31,    27,    27,    40,   nil,   nil,   157,   nil,   nil,   nil,
-    40,    40,   nil,   nil,   nil,   nil,   245,    69,    69,   nil,
-   nil,    37,    37,   176,    37,   245,   nil,   nil,   nil,     9,
-    42,   nil,   nil,     9,     6,   nil,   nil,   nil,   nil,   nil,
-     9,   nil,   209,   209,   nil,     6,    87,   109,   nil,    87,
-   nil,    72,   109,    65,   nil,   109,    69,   nil,    40,   nil,
-   245,     6,   nil,   245,    65,   nil,   nil,    69,    25,   nil,
-     6,   nil,     6,   nil,    77,   158,   nil,   nil,   nil,   nil,
-    77,    48,   nil,   nil,     6,   nil,     6,   nil,   209,    28,
-   116,   209,    87,   nil,   nil,   nil,   nil,    40,   nil,    88,
-   nil,    86,   nil,    69,   nil,   nil,   nil,   nil,     6,   nil,
-   nil,    80,   nil,   nil,    69,    69,   nil,   nil,    73,    12,
-    40,    12,    80,   nil,    31,    84,   nil,    28,   nil,    73,
-    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,   156,   nil,   nil,   nil,   156,    69,   nil,   156,
-    14,   156,   nil,   nil,   nil,    86,   nil,    40,   nil,   245,
-   nil,   nil,   nil,   nil,   nil,   nil,     6,   nil,   nil,   nil,
-   nil,   nil,    27,   nil,   nil,   nil,   nil,   nil,   nil,    34,
-   nil,   nil,    34,   nil,    69,    40,   nil,    69,    69,   nil,
-    69,   nil,   nil,    86,    14,    69,    69,    69,   243,   243,
-   nil,   243,   243,   nil,   243,    40,   nil,   nil,    69,   nil,
-    24,   nil,   nil,     6,    28,   nil,   nil,   nil,    28,   nil,
-   nil,    28,   nil,   nil,   nil,    28,   nil,    69,    24,     6,
-    37,    28,    28,   nil,   nil,   nil,   nil,    28,    28,    69,
-   nil,   nil,   nil,   nil,    69,   156,   nil,   156,   nil,   156,
-   nil,   156,    40,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    36,   nil,   nil,    34,    69,    69,   nil,
-    34,   nil,   nil,    34,    14,   nil,   nil,    34,   nil,   156,
-   122,   nil,   247,    34,    34,   nil,    14,   122,   158,    34,
-    34,   158,   nil,   158,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    69,   nil,   nil,   nil,    14,   nil,   nil,   nil,    69,   nil,
-    40,    40,    52,    40,    40,   nil,    31,   nil,    77,   nil,
-    77,   nil,   nil,   nil,     6,     6,     6,   nil,   nil,    40,
-   nil,   nil,    69,   nil,   nil,   nil,    28,   nil,    69,    69,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,    28,    28,   162,
-   nil,   nil,    31,   nil,   nil,   nil,    69,   nil,    31,   nil,
-   nil,   nil,   162,   nil,   162,   nil,   nil,   nil,   nil,   nil,
-   nil,   243,   243,   243,   243,   nil,   nil,   158,   nil,   158,
-    28,   158,   nil,   158,   122,    14,    14,    80,    34,   nil,
-   nil,   nil,    77,   nil,   nil,    69,   nil,    80,    28,    34,
-    34,   nil,   nil,    14,    93,    24,    24,   nil,   nil,   nil,
-   nil,   158,   nil,   nil,   nil,   nil,   nil,   nil,    69,   nil,
-   nil,     6,   nil,    69,    38,   nil,   nil,    82,    82,   nil,
-    69,   nil,    34,   nil,    69,   nil,     6,   nil,   nil,   162,
-    69,    28,    69,   nil,    40,   159,   nil,   nil,   159,   nil,
-    34,    48,   243,   nil,   nil,   nil,   nil,    69,    69,   nil,
-    28,   nil,   nil,   nil,    87,   nil,     6,     6,     6,     6,
-    14,     6,    28,    80,   nil,   nil,   nil,    14,     6,   nil,
-   nil,   247,     6,   nil,    69,   247,    73,    28,   247,   nil,
-   247,   nil,    73,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-    28,    28,   nil,    69,   nil,    82,    69,    82,   nil,   nil,
-    82,    82,    34,   nil,   nil,    77,    77,   nil,   nil,    40,
-   nil,    77,    77,   nil,    34,     6,   nil,   nil,   nil,   159,
-   nil,    14,     6,     6,     6,     6,   nil,   nil,   nil,    34,
-   nil,    35,   nil,   nil,   nil,   nil,     6,    35,   nil,   nil,
-   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,    82,   nil,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    35,    35,    35,   nil,    35,    35,    35,   nil,   nil,
-   nil,    28,    28,   nil,   247,    28,   247,   nil,   247,   nil,
-   247,    94,   nil,   nil,   nil,   nil,    39,   nil,   nil,    28,
-   nil,   nil,    39,    35,   nil,   nil,   nil,   nil,    35,    35,
-   nil,   nil,    35,    35,   nil,   nil,   nil,   162,   247,   162,
-   nil,   162,   nil,   nil,   nil,   nil,   nil,    93,    93,   nil,
-    39,    39,    39,    34,    34,   nil,   nil,   nil,   nil,    82,
-    63,   nil,   nil,   nil,    95,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,   nil,   nil,   nil,   162,   nil,   162,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,    39,    35,
-   nil,   nil,   nil,    28,    35,    35,    35,    35,    35,   nil,
-   nil,   nil,    31,    28,   nil,    28,   nil,   nil,   nil,   nil,
-   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   103,    63,
-    31,   nil,   nil,   nil,   nil,    77,    77,    77,    77,   nil,
-   nil,   nil,   nil,   nil,   103,   103,   nil,   103,    34,   nil,
-   nil,   nil,   nil,    63,    39,    34,   nil,    28,   nil,    82,
-   nil,   nil,    82,    39,    82,    34,   nil,    34,   159,   nil,
-   162,   nil,   159,   nil,   nil,   159,   nil,   159,   nil,   nil,
-   nil,   162,   nil,   162,   nil,   162,   nil,    63,   nil,   nil,
-   nil,   nil,    35,    35,    35,    35,    35,    35,    35,   nil,
-   nil,   nil,   nil,    35,    35,    35,   nil,   nil,   nil,    34,
-   nil,   nil,   nil,   nil,   nil,   162,   nil,    35,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    93,    93,   nil,
-    93,   nil,   nil,   nil,   nil,    93,    93,    93,   nil,   nil,
-   nil,   nil,   nil,   nil,    94,    94,   nil,    39,   nil,    39,
-   nil,   nil,    39,   nil,    35,    35,   nil,   nil,    39,    77,
-    82,   nil,   nil,   nil,    35,   nil,   nil,    96,   nil,   nil,
-   nil,   159,    39,   159,   nil,   159,   nil,   159,   nil,   nil,
-   nil,   nil,   nil,    35,    93,   nil,   nil,    35,   160,   160,
-   160,    35,    35,   nil,   nil,   nil,   nil,    95,    95,   nil,
-   nil,    82,   nil,   nil,   nil,   159,   nil,   nil,    35,    63,
-    82,    82,   nil,   nil,   nil,   nil,   nil,    31,    31,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-    35,    35,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,    39,    35,   nil,    35,    39,    39,   103,   103,
-    93,    63,   nil,    63,   nil,   nil,   nil,    63,    93,   nil,
-   nil,   nil,   nil,    39,    82,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    82,    63,    39,    82,   nil,   nil,   nil,
-    63,   nil,   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    82,    39,    63,
-    39,   nil,    82,   nil,   nil,    82,   nil,   nil,   nil,   nil,
-    97,    94,   nil,   nil,    94,    94,   nil,    94,   nil,   nil,
-   nil,    82,    94,    94,    94,   nil,   nil,   nil,   nil,   nil,
-   160,   160,   160,   160,   nil,   160,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,   nil,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    82,   nil,   nil,
-   nil,   nil,   nil,   nil,    95,   nil,   nil,    95,    95,   nil,
-    95,    94,   nil,   nil,   nil,    95,    95,    95,   nil,   nil,
-   nil,    82,   nil,   nil,    93,   nil,   nil,   nil,   nil,   103,
-    96,    96,   nil,   nil,   nil,   103,   160,   160,   160,   160,
-   nil,   nil,   nil,   nil,   103,   nil,    35,    93,    93,   nil,
-   160,   nil,   103,   103,    35,   nil,    35,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,    95,   nil,   nil,   nil,   nil,   nil,
-   nil,    35,   nil,   nil,   nil,   nil,   nil,    94,   nil,   nil,
-   nil,   nil,   nil,   nil,    35,    94,   nil,    35,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,    35,    93,   nil,   nil,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,   nil,    35,   nil,    39,
-    82,   nil,   nil,    35,   nil,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    95,   nil,   nil,   nil,   nil,    63,   nil,   nil,    95,    39,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   103,    82,   nil,   nil,   nil,   nil,
-   nil,    35,    94,    97,    97,    35,   nil,   nil,    35,    35,
-   nil,   nil,    35,   nil,    63,   nil,   nil,   nil,    35,    35,
-   nil,   nil,   nil,   nil,    35,    35,   nil,    96,   nil,   nil,
-    96,    96,   nil,    96,   nil,    63,   nil,   nil,    96,    96,
-    96,    94,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    95,    39,   nil,   nil,    82,
-    39,   nil,   nil,    39,    94,    94,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,    39,
-    39,   nil,   nil,   nil,   nil,   nil,    35,    96,   nil,   nil,
-   nil,   nil,   nil,   nil,    95,   nil,   nil,    35,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    63,   nil,   nil,
-    94,   nil,   nil,    94,   nil,   nil,   nil,    95,    95,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   103,   nil,   103,
-   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,    35,
-    82,    39,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,    96,    63,   nil,    63,    98,   nil,   nil,
-   nil,    96,   nil,    95,   nil,    63,    95,   nil,   nil,   nil,
-    97,   nil,   nil,    97,    97,   nil,    97,    35,   nil,   nil,
-    63,    97,    97,    97,   nil,    56,   nil,   nil,    39,   nil,
-   nil,    56,   nil,   nil,   nil,    35,   nil,    99,   nil,    39,
-    39,   nil,   nil,   nil,   nil,   nil,    56,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    56,    56,    56,   nil,    56,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    97,    39,    39,   nil,   nil,   nil,   nil,   nil,    35,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    56,    96,   nil,
-    39,   nil,    56,    56,   nil,   nil,    56,    35,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    35,    35,   nil,    96,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,    97,    35,    35,   nil,
-   nil,   nil,   nil,   nil,    97,   nil,   nil,   nil,   nil,   nil,
-    96,    96,    39,    56,   nil,   nil,   nil,   nil,    56,    56,
-    56,    56,    56,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,    63,   nil,   nil,   nil,
-   nil,   nil,    39,    39,   nil,   nil,    96,   nil,   nil,    96,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,    35,    35,
-    98,    98,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    97,   nil,   nil,    59,   nil,    35,   nil,   nil,   nil,
-    59,   nil,   nil,   nil,   nil,   nil,    56,    56,    56,    56,
-    56,    56,    56,   nil,   nil,    59,   nil,    56,    56,    56,
-    99,    99,   nil,   nil,    59,    59,    59,    39,    59,   nil,
-    97,    56,   nil,    39,    39,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,   nil,    97,    97,   nil,    59,   nil,    35,   nil,
-   nil,    59,    59,    35,   nil,    59,   nil,   nil,    56,    56,
-    35,   nil,    35,    35,   nil,   nil,   nil,   nil,    56,   nil,
-    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   100,   nil,    56,   nil,    97,
-   nil,    56,    97,   nil,   nil,   nil,    56,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,    35,
-   nil,   nil,    59,   nil,    35,    39,   nil,    59,    59,    59,
-    59,    59,   nil,   nil,    56,    39,   nil,    39,   nil,   nil,
-   nil,   nil,   nil,    56,    56,    56,   nil,    98,   nil,   nil,
-    98,    98,   nil,    98,   nil,   nil,   nil,   nil,    98,    98,
-    98,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   107,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,    39,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,    99,   nil,   nil,
-    99,    99,   nil,    99,   nil,   nil,   nil,   nil,    99,    99,
-    99,   nil,   nil,   nil,   nil,   nil,   nil,    98,    68,    68,
-    68,   nil,   nil,   nil,   nil,    59,    59,    59,    59,    59,
-    59,    59,   nil,   nil,   nil,   nil,    59,    59,    59,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,
-    59,   nil,   nil,   nil,   nil,   nil,    68,    99,   nil,    68,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    56,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    98,   nil,   nil,   nil,    59,    59,   nil,
-   nil,    98,   nil,   nil,   nil,   nil,   nil,    59,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    68,   nil,   nil,   nil,    59,   nil,   nil,   nil,
-    59,    68,   nil,    99,   nil,    59,   nil,   nil,   100,   100,
-    56,    99,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    56,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    59,   nil,    56,   nil,   nil,   nil,   nil,
-   nil,   nil,    59,    59,    59,   nil,   nil,   nil,    56,   nil,
-   nil,    56,   nil,   nil,   nil,   nil,   nil,   nil,    98,    56,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    56,   nil,   nil,   nil,   nil,   nil,    56,   nil,   nil,
-   nil,   nil,   nil,   107,   107,    68,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    98,    99,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    98,    98,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    56,   nil,    99,   nil,    56,
-   nil,   nil,    56,    56,   nil,   nil,    56,   nil,   nil,   nil,
-   nil,   nil,    56,    56,   nil,   nil,   nil,   nil,    56,    56,
-    99,    99,    59,   nil,   nil,   nil,    98,   nil,   nil,    98,
-   nil,   nil,   nil,   nil,   nil,   100,    68,   nil,   100,   100,
-    68,   100,   nil,   nil,    68,    68,   100,   100,   100,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    68,   nil,   nil,   nil,   nil,    99,   nil,   nil,    99,
-   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,    59,
-   nil,   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,    59,
-   nil,   nil,   nil,   nil,   nil,   100,    68,   nil,    68,   nil,
-   nil,   nil,   nil,   nil,    59,   nil,   nil,   nil,   nil,   nil,
-   107,   nil,   nil,   107,   107,   nil,   107,    59,   nil,   nil,
-    59,   107,   107,   107,   nil,   nil,   nil,    56,    59,   nil,
-   nil,   nil,   nil,    56,   nil,   nil,   nil,   nil,    56,    56,
-    59,   nil,   nil,   nil,   nil,   nil,    59,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   100,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   100,
-   107,    56,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    56,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    59,   nil,   nil,   nil,    59,   nil,
-   nil,    59,    59,   nil,   nil,    59,   nil,   nil,   nil,   nil,
-   nil,    59,    59,   nil,   nil,   nil,   nil,    59,    59,   nil,
-   nil,   nil,    56,   nil,   nil,   nil,   107,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,
-   nil,    56,   nil,   nil,   nil,   nil,   100,   nil,   nil,    68,
-   nil,    56,   nil,    56,   nil,   nil,   nil,    68,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,    56,    56,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    56,    56,   nil,   nil,   100,   nil,    68,   nil,   nil,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   100,   100,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   107,   nil,   nil,   nil,   nil,    59,   nil,   nil,   nil,
-   nil,   nil,    59,   nil,   nil,   nil,   nil,    59,    59,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   100,   nil,   nil,   100,   nil,   nil,
-   107,   nil,    56,    56,   nil,   nil,   nil,   nil,   nil,   nil,
-    59,   nil,   nil,   nil,    68,   nil,   nil,   nil,    68,   nil,
-    56,   nil,   nil,   107,   107,    68,   nil,   nil,    59,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   107,
-   nil,    59,   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    56,   nil,   nil,
-    59,   nil,   nil,   nil,    56,   nil,    56,    56,   nil,    68,
-    59,   nil,    59,   nil,    56,   nil,    56,   nil,   nil,   nil,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,    59,    59,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    59,    59,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    56,   nil,   nil,    68,   nil,    56,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,    68,   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,
-    68,    41,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,    41,   nil,    41,    41,   nil,    41,
-   nil,    59,    59,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    59,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    59,    68,   nil,   nil,
-   nil,   nil,   nil,    59,   nil,    59,    59,   nil,   nil,   nil,
-    68,    68,   nil,    59,   nil,    59,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    59,   nil,   nil,   nil,   nil,    59,   nil,   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,    41,    68,   nil,    41,    41,   nil,
-   nil,    68,    68,    41,   nil,    68,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,    68,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
-    41,    41,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,    41,   nil,   nil,    41,    41,   nil,   nil,
-   nil,    68,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,
-   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    68,   nil,    68,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,
-   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   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,    41,    41,    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,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   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,   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,
-   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,   nil,   nil,   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,    41,    41,
-   nil,   nil,   nil,    41,   nil,   nil,    41,    41,    41,    41,
-   nil,   nil,   nil,   nil,    41,    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,
-   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,    41,
-   nil,   nil,    41,   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,    41,   nil,
-   nil,    41,   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,    41,
-   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,
-    41,    41,   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,   nil,   nil,
-   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,    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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   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,   nil,   nil,   nil,   nil,   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 ]
-
-racc_goto_pointer = [
-   nil,   119,    15,   133,   nil,    43,    -2,   124,    63,    57,
-   -29,   127,  -332,  -281,    46,  -548,  -613,  -724,  -760,   nil,
-  -382,  -160,    14,   149,   -28,   -98,    89,     6,   242,  -178,
-   -57,   454,    32,  -194,   294,  1239,  -227,  -301,    -3,  1294,
-    -2,  3279,  -415,   -75,   -21,  -403,   nil,  -601,   -29,   nil,
-   nil,   152,  -169,   139,  -206,  -417,  2083,  -333,   nil,  2292,
-   118,    39,    79,  1104,   nil,    -4,    26,  -268,  2472,    -1,
-  -524,  -232,   -68,    10,   nil,    19,  -249,   536,     6,   nil,
-    54,   134,   903,  -170,    51,  -513,   114,   -17,  -277,  -326,
-  -257,  -449,   nil,   619,   806,   859,  1052,  1195,  1572,  1612,
-  1910,   109,   nil,   834,  -167,   -57,   nil,  1985,   nil,  -305,
-  -749,   nil,  -755,   nil,   nil,   nil,  -358,  -568,   nil,   115,
-   nil,  -407,    23,   nil,   nil,  -582,   114,  -195,   131,   131,
-  -155,   138,   138,   132,  -593,  -166,  -594,  -851,   136,  -382,
-  -168,  -382,  -735,   nil,   nil,   nil,   nil,   nil,   nil,  -903,
-  -558,  -535,  -865,  -756,  -674,   nil,  -274,  -469,  -132,   332,
-   532,  -672,   242,  -818,  -698,  -612,   nil,  -726,  -846,  -982,
-  -954,  -160,  -578,   144,  -368,  -325,   -14,  -191,   nil,   -52,
-   -52,   nil,  -492,  -543,   nil,  -262,  -889,  -330,  -677,  -968,
-  -526,  -871,  -673,  -755,  -672,  -721,   nil,  -610,   nil,  -610,
-  -434,  -431,   nil,   nil,  -646,  -431,  -430,  -425,   nil,  -426,
-  -953,   nil,  -817,  -813,  -811,   nil,  -719,  -543,   nil,  -476,
-  -631,   nil,   nil,   205,    28,   201,   201,   203,  -270,  -224,
-   205,   205,   207,  -523,  -324,  -319,   nil,   nil,   218,  -476,
-  -311,   nil,   nil,   -79,  -725,  -360,  -715,    75,  -485,  -766,
-  -748, -1007,   nil,   nil,   -49,  -485 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   312,     7,   365,   315,
-   nil,   nil,   nil,   nil,   563,   nil,   nil,   nil,   nil,   311,
-   313,   nil,   nil,   nil,   nil,    14,    15,    21,   244,   nil,
-   nil,    17,   nil,   441,   245,   342,   nil,   nil,   799,   243,
-   477,    24,  1091,   nil,   nil,   nil,   360,   nil,    25,    26,
-    27,   nil,   756,   nil,   nil,   nil,   332,   nil,    28,   329,
-   456,    35,   nil,   nil,    37,    40,    39,   nil,   240,   241,
-   594,   nil,   148,   464,   147,    93,   nil,   446,   109,    49,
-    52,   277,   303,   nil,   457,   nil,   458,   469,   nil,   684,
-   525,   301,   286,    53,    54,    55,    56,    57,    58,    59,
-    60,    61,    63,   nil,   nil,   287,    67,    68,    69,   nil,
-   nil,    70,   927,    71,    72,    73,   nil,   nil,    74,   nil,
-    75,   nil,   576,    76,    77,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   291,   279,   764,   918,   585,   928,   827,
-   622,   nil,   828,   829,  1167,  1022,   609,   nil,   610,   611,
-   nil,   nil,   612,   nil,   614,   nil,   896,   nil,   nil,   nil,
-   620,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   468,   nil,
-   nil,   734,   nil,   nil,   510,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1002,   nil,   697,   706,   698,   699,
-   nil,   nil,   700,   701,   nil,   nil,   nil,   nil,  1001,  1003,
-   nil,  1005,  1006,  1007,  1008,  1009,   631,   705,   707,   nil,
-   nil,    92,    94,    96,   nil,   nil,   nil,   nil,   nil,   640,
-   nil,   nil,   nil,   nil,   nil,   nil,   105,   106,   nil,   nil,
-   966,   808,   608,   819,   613,   974,   625,   627,   628,  1034,
-   632,  1035,   635,   638,   nil,   306 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 150, :_reduce_1,
-  2, 148, :_reduce_2,
-  2, 149, :_reduce_3,
-  1, 151, :_reduce_none,
-  1, 151, :_reduce_none,
-  3, 151, :_reduce_6,
-  2, 151, :_reduce_none,
-  1, 154, :_reduce_none,
-  0, 158, :_reduce_9,
-  3, 154, :_reduce_10,
-  0, 160, :_reduce_11,
-  4, 157, :_reduce_12,
-  0, 165, :_reduce_13,
-  6, 159, :_reduce_14,
-  3, 159, :_reduce_15,
-  2, 161, :_reduce_16,
-  1, 166, :_reduce_none,
-  1, 166, :_reduce_none,
-  3, 166, :_reduce_19,
-  2, 166, :_reduce_20,
-  1, 167, :_reduce_none,
-  0, 168, :_reduce_22,
-  3, 167, :_reduce_23,
-  0, 179, :_reduce_24,
-  4, 156, :_reduce_25,
-  3, 156, :_reduce_26,
-  3, 156, :_reduce_27,
-  3, 156, :_reduce_28,
-  2, 156, :_reduce_29,
-  3, 156, :_reduce_30,
-  3, 156, :_reduce_31,
-  3, 156, :_reduce_32,
-  3, 156, :_reduce_33,
-  3, 156, :_reduce_34,
-  4, 156, :_reduce_35,
-  1, 156, :_reduce_none,
-  3, 156, :_reduce_37,
-  3, 156, :_reduce_38,
-  5, 156, :_reduce_39,
-  3, 156, :_reduce_40,
-  1, 156, :_reduce_none,
-  3, 172, :_reduce_42,
-  3, 172, :_reduce_43,
-  6, 172, :_reduce_44,
-  5, 172, :_reduce_45,
-  5, 172, :_reduce_46,
-  5, 172, :_reduce_47,
-  5, 172, :_reduce_48,
-  3, 172, :_reduce_49,
-  1, 180, :_reduce_50,
-  3, 180, :_reduce_51,
-  1, 180, :_reduce_none,
-  1, 178, :_reduce_none,
-  3, 178, :_reduce_54,
-  3, 178, :_reduce_55,
-  3, 178, :_reduce_56,
-  2, 178, :_reduce_57,
-  0, 190, :_reduce_58,
-  4, 178, :_reduce_59,
-  1, 178, :_reduce_none,
-  1, 171, :_reduce_61,
-  0, 193, :_reduce_62,
-  0, 194, :_reduce_63,
-  4, 191, :_reduce_64,
-  1, 174, :_reduce_none,
-  1, 174, :_reduce_none,
-  1, 196, :_reduce_none,
-  4, 196, :_reduce_68,
-  0, 204, :_reduce_69,
-  4, 201, :_reduce_70,
-  1, 203, :_reduce_71,
-  2, 195, :_reduce_72,
-  3, 195, :_reduce_73,
-  4, 195, :_reduce_74,
-  5, 195, :_reduce_75,
-  4, 195, :_reduce_76,
-  5, 195, :_reduce_77,
-  2, 195, :_reduce_78,
-  2, 195, :_reduce_79,
-  2, 195, :_reduce_80,
-  2, 195, :_reduce_81,
-  2, 195, :_reduce_82,
-  1, 173, :_reduce_none,
-  3, 173, :_reduce_84,
-  1, 209, :_reduce_none,
-  3, 209, :_reduce_86,
-  1, 208, :_reduce_87,
-  2, 208, :_reduce_88,
-  3, 208, :_reduce_89,
-  5, 208, :_reduce_90,
-  2, 208, :_reduce_91,
-  4, 208, :_reduce_92,
-  2, 208, :_reduce_93,
-  4, 208, :_reduce_94,
-  1, 208, :_reduce_95,
-  3, 208, :_reduce_96,
-  1, 212, :_reduce_none,
-  3, 212, :_reduce_98,
-  2, 211, :_reduce_99,
-  3, 211, :_reduce_100,
-  1, 214, :_reduce_101,
-  3, 214, :_reduce_102,
-  1, 213, :_reduce_103,
-  1, 213, :_reduce_104,
-  4, 213, :_reduce_105,
-  3, 213, :_reduce_106,
-  3, 213, :_reduce_107,
-  3, 213, :_reduce_108,
-  3, 213, :_reduce_109,
-  2, 213, :_reduce_110,
-  1, 213, :_reduce_111,
-  1, 175, :_reduce_112,
-  1, 175, :_reduce_113,
-  4, 175, :_reduce_114,
-  3, 175, :_reduce_115,
-  3, 175, :_reduce_116,
-  3, 175, :_reduce_117,
-  3, 175, :_reduce_118,
-  2, 175, :_reduce_119,
-  1, 175, :_reduce_120,
-  1, 217, :_reduce_121,
-  1, 217, :_reduce_none,
-  2, 218, :_reduce_123,
-  1, 218, :_reduce_124,
-  3, 218, :_reduce_125,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_none,
-  1, 219, :_reduce_129,
-  1, 219, :_reduce_none,
-  1, 169, :_reduce_131,
-  1, 169, :_reduce_none,
-  1, 170, :_reduce_133,
-  0, 223, :_reduce_134,
-  4, 170, :_reduce_135,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 220, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  1, 221, :_reduce_none,
-  3, 188, :_reduce_207,
-  3, 188, :_reduce_208,
-  6, 188, :_reduce_209,
-  5, 188, :_reduce_210,
-  5, 188, :_reduce_211,
-  5, 188, :_reduce_212,
-  5, 188, :_reduce_213,
-  4, 188, :_reduce_214,
-  3, 188, :_reduce_215,
-  3, 188, :_reduce_216,
-  3, 188, :_reduce_217,
-  2, 188, :_reduce_218,
-  2, 188, :_reduce_219,
-  2, 188, :_reduce_220,
-  2, 188, :_reduce_221,
-  3, 188, :_reduce_222,
-  3, 188, :_reduce_223,
-  3, 188, :_reduce_224,
-  3, 188, :_reduce_225,
-  3, 188, :_reduce_226,
-  3, 188, :_reduce_227,
-  4, 188, :_reduce_228,
-  2, 188, :_reduce_229,
-  2, 188, :_reduce_230,
-  3, 188, :_reduce_231,
-  3, 188, :_reduce_232,
-  3, 188, :_reduce_233,
-  3, 188, :_reduce_234,
-  1, 188, :_reduce_none,
-  3, 188, :_reduce_236,
-  3, 188, :_reduce_237,
-  3, 188, :_reduce_238,
-  3, 188, :_reduce_239,
-  3, 188, :_reduce_240,
-  2, 188, :_reduce_241,
-  2, 188, :_reduce_242,
-  3, 188, :_reduce_243,
-  3, 188, :_reduce_244,
-  3, 188, :_reduce_245,
-  3, 188, :_reduce_246,
-  3, 188, :_reduce_247,
-  6, 188, :_reduce_248,
-  1, 188, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  3, 226, :_reduce_254,
-  3, 226, :_reduce_255,
-  1, 229, :_reduce_256,
-  1, 230, :_reduce_none,
-  2, 230, :_reduce_258,
-  4, 230, :_reduce_259,
-  2, 230, :_reduce_260,
-  1, 224, :_reduce_none,
-  3, 224, :_reduce_262,
-  3, 234, :_reduce_263,
-  5, 234, :_reduce_264,
-  3, 234, :_reduce_265,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 183, :_reduce_none,
-  1, 183, :_reduce_none,
-  2, 183, :_reduce_270,
-  4, 183, :_reduce_271,
-  2, 183, :_reduce_272,
-  1, 207, :_reduce_273,
-  2, 207, :_reduce_274,
-  2, 207, :_reduce_275,
-  4, 207, :_reduce_276,
-  1, 207, :_reduce_277,
-  0, 239, :_reduce_278,
-  2, 200, :_reduce_279,
-  2, 238, :_reduce_280,
-  2, 237, :_reduce_281,
-  1, 237, :_reduce_none,
-  1, 231, :_reduce_283,
-  2, 231, :_reduce_284,
-  3, 231, :_reduce_285,
-  4, 231, :_reduce_286,
-  1, 177, :_reduce_287,
-  1, 177, :_reduce_288,
-  3, 176, :_reduce_289,
-  4, 176, :_reduce_290,
-  2, 176, :_reduce_291,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_none,
-  1, 227, :_reduce_302,
-  0, 275, :_reduce_303,
-  4, 227, :_reduce_304,
-  0, 276, :_reduce_305,
-  3, 227, :_reduce_306,
-  0, 277, :_reduce_307,
-  4, 227, :_reduce_308,
-  3, 227, :_reduce_309,
-  3, 227, :_reduce_310,
-  2, 227, :_reduce_311,
-  0, 278, :_reduce_312,
-  4, 227, :_reduce_313,
-  0, 279, :_reduce_314,
-  4, 227, :_reduce_315,
-  1, 227, :_reduce_316,
-  4, 227, :_reduce_317,
-  3, 227, :_reduce_318,
-  1, 227, :_reduce_319,
-  5, 227, :_reduce_320,
-  4, 227, :_reduce_321,
-  3, 227, :_reduce_322,
-  2, 227, :_reduce_323,
-  1, 227, :_reduce_none,
-  2, 227, :_reduce_325,
-  1, 227, :_reduce_326,
-  6, 227, :_reduce_327,
-  6, 227, :_reduce_328,
-  4, 227, :_reduce_329,
-  4, 227, :_reduce_330,
-  5, 227, :_reduce_331,
-  4, 227, :_reduce_332,
-  5, 227, :_reduce_333,
-  6, 227, :_reduce_334,
-  0, 280, :_reduce_335,
-  0, 281, :_reduce_336,
-  7, 227, :_reduce_337,
-  0, 282, :_reduce_338,
-  0, 283, :_reduce_339,
-  0, 284, :_reduce_340,
-  9, 227, :_reduce_341,
-  0, 285, :_reduce_342,
-  0, 286, :_reduce_343,
-  6, 227, :_reduce_344,
-  0, 287, :_reduce_345,
-  6, 227, :_reduce_346,
-  0, 288, :_reduce_347,
-  0, 289, :_reduce_348,
-  9, 227, :_reduce_349,
-  1, 227, :_reduce_350,
-  1, 227, :_reduce_351,
-  1, 227, :_reduce_352,
-  1, 227, :_reduce_353,
-  1, 182, :_reduce_354,
-  1, 249, :_reduce_none,
-  1, 255, :_reduce_none,
-  1, 258, :_reduce_none,
-  1, 260, :_reduce_none,
-  1, 261, :_reduce_none,
-  1, 262, :_reduce_none,
-  1, 265, :_reduce_none,
-  1, 267, :_reduce_362,
-  1, 270, :_reduce_363,
-  1, 271, :_reduce_364,
-  1, 290, :_reduce_none,
-  1, 291, :_reduce_none,
-  1, 292, :_reduce_none,
-  1, 293, :_reduce_none,
-  1, 294, :_reduce_none,
-  1, 163, :_reduce_none,
-  1, 295, :_reduce_none,
-  1, 250, :_reduce_none,
-  1, 206, :_reduce_none,
-  1, 256, :_reduce_none,
-  1, 256, :_reduce_none,
-  2, 256, :_reduce_none,
-  1, 192, :_reduce_none,
-  1, 192, :_reduce_none,
-  1, 257, :_reduce_none,
-  5, 257, :_reduce_380,
-  1, 259, :_reduce_none,
-  2, 259, :_reduce_382,
-  1, 266, :_reduce_none,
-  1, 266, :_reduce_384,
-  1, 296, :_reduce_none,
-  3, 296, :_reduce_386,
-  1, 299, :_reduce_387,
-  3, 299, :_reduce_388,
-  1, 298, :_reduce_389,
-  3, 298, :_reduce_390,
-  5, 298, :_reduce_391,
-  1, 298, :_reduce_392,
-  3, 298, :_reduce_393,
-  2, 300, :_reduce_394,
-  1, 300, :_reduce_395,
-  4, 301, :_reduce_396,
-  2, 301, :_reduce_397,
-  2, 301, :_reduce_398,
-  2, 301, :_reduce_399,
-  1, 301, :_reduce_400,
-  2, 307, :_reduce_401,
-  1, 307, :_reduce_none,
-  6, 308, :_reduce_403,
-  8, 308, :_reduce_404,
-  4, 308, :_reduce_405,
-  6, 308, :_reduce_406,
-  4, 308, :_reduce_407,
-  2, 308, :_reduce_408,
-  6, 308, :_reduce_409,
-  2, 308, :_reduce_410,
-  4, 308, :_reduce_411,
-  6, 308, :_reduce_412,
-  2, 308, :_reduce_413,
-  4, 308, :_reduce_414,
-  2, 308, :_reduce_415,
-  4, 308, :_reduce_416,
-  1, 308, :_reduce_417,
-  1, 312, :_reduce_418,
-  1, 312, :_reduce_419,
-  3, 313, :_reduce_420,
-  1, 313, :_reduce_421,
-  4, 313, :_reduce_422,
-  1, 314, :_reduce_none,
-  4, 314, :_reduce_424,
-  1, 315, :_reduce_425,
-  3, 315, :_reduce_426,
-  1, 316, :_reduce_427,
-  1, 316, :_reduce_none,
-  0, 320, :_reduce_429,
-  0, 321, :_reduce_430,
-  5, 254, :_reduce_431,
-  4, 318, :_reduce_432,
-  1, 318, :_reduce_433,
-  3, 319, :_reduce_434,
-  3, 319, :_reduce_435,
-  3, 323, :_reduce_436,
-  2, 197, :_reduce_437,
-  4, 197, :_reduce_438,
-  5, 197, :_reduce_439,
-  5, 197, :_reduce_440,
-  2, 253, :_reduce_441,
-  4, 253, :_reduce_442,
-  4, 253, :_reduce_443,
-  3, 253, :_reduce_444,
-  3, 253, :_reduce_445,
-  3, 253, :_reduce_446,
-  2, 253, :_reduce_447,
-  1, 253, :_reduce_448,
-  4, 253, :_reduce_449,
-  0, 326, :_reduce_450,
-  4, 252, :_reduce_451,
-  0, 327, :_reduce_452,
-  4, 252, :_reduce_453,
-  0, 328, :_reduce_454,
-  0, 329, :_reduce_455,
-  4, 202, :_reduce_456,
-  0, 331, :_reduce_457,
-  0, 332, :_reduce_458,
-  4, 324, :_reduce_459,
-  1, 330, :_reduce_460,
-  2, 330, :_reduce_461,
-  3, 330, :_reduce_462,
-  4, 330, :_reduce_463,
-  0, 334, :_reduce_464,
-  6, 263, :_reduce_465,
-  1, 333, :_reduce_none,
-  1, 333, :_reduce_none,
-  0, 337, :_reduce_468,
-  0, 338, :_reduce_469,
-  7, 264, :_reduce_470,
-  1, 336, :_reduce_none,
-  1, 336, :_reduce_none,
-  1, 335, :_reduce_none,
-  3, 335, :_reduce_474,
-  3, 335, :_reduce_475,
-  1, 339, :_reduce_none,
-  2, 339, :_reduce_477,
-  3, 339, :_reduce_478,
-  1, 339, :_reduce_479,
-  1, 339, :_reduce_480,
-  1, 189, :_reduce_none,
-  3, 343, :_reduce_482,
-  1, 343, :_reduce_none,
-  3, 345, :_reduce_484,
-  1, 345, :_reduce_none,
-  1, 347, :_reduce_486,
-  1, 348, :_reduce_487,
-  1, 346, :_reduce_none,
-  4, 346, :_reduce_489,
-  4, 346, :_reduce_490,
-  3, 346, :_reduce_491,
-  4, 346, :_reduce_492,
-  4, 346, :_reduce_493,
-  3, 346, :_reduce_494,
-  0, 352, :_reduce_495,
-  4, 346, :_reduce_496,
-  2, 346, :_reduce_497,
-  0, 353, :_reduce_498,
-  4, 346, :_reduce_499,
-  2, 346, :_reduce_500,
-  0, 354, :_reduce_501,
-  4, 346, :_reduce_502,
-  1, 340, :_reduce_503,
-  1, 340, :_reduce_504,
-  2, 340, :_reduce_505,
-  3, 340, :_reduce_506,
-  5, 340, :_reduce_507,
-  2, 340, :_reduce_508,
-  4, 340, :_reduce_509,
-  1, 340, :_reduce_none,
-  2, 355, :_reduce_511,
-  3, 355, :_reduce_512,
-  2, 341, :_reduce_513,
-  4, 341, :_reduce_514,
-  1, 341, :_reduce_515,
-  3, 341, :_reduce_516,
-  1, 357, :_reduce_none,
-  3, 357, :_reduce_518,
-  1, 356, :_reduce_519,
-  3, 342, :_reduce_520,
-  1, 342, :_reduce_521,
-  2, 342, :_reduce_522,
-  1, 342, :_reduce_523,
-  3, 342, :_reduce_524,
-  1, 342, :_reduce_525,
-  1, 358, :_reduce_none,
-  3, 358, :_reduce_527,
-  2, 361, :_reduce_528,
-  1, 361, :_reduce_529,
-  1, 362, :_reduce_530,
-  2, 359, :_reduce_531,
-  1, 359, :_reduce_532,
-  2, 360, :_reduce_533,
-  1, 349, :_reduce_none,
-  3, 349, :_reduce_535,
-  3, 349, :_reduce_536,
-  2, 349, :_reduce_537,
-  2, 349, :_reduce_538,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  1, 349, :_reduce_none,
-  2, 349, :_reduce_542,
-  2, 349, :_reduce_543,
-  1, 364, :_reduce_none,
-  1, 364, :_reduce_none,
-  1, 364, :_reduce_none,
-  1, 364, :_reduce_none,
-  1, 364, :_reduce_548,
-  1, 364, :_reduce_549,
-  1, 364, :_reduce_550,
-  1, 364, :_reduce_551,
-  1, 364, :_reduce_552,
-  1, 364, :_reduce_none,
-  1, 344, :_reduce_554,
-  2, 365, :_reduce_555,
-  2, 350, :_reduce_556,
-  3, 350, :_reduce_557,
-  1, 350, :_reduce_558,
-  6, 162, :_reduce_559,
-  0, 162, :_reduce_560,
-  1, 366, :_reduce_561,
-  1, 366, :_reduce_none,
-  1, 366, :_reduce_none,
-  2, 367, :_reduce_564,
-  1, 367, :_reduce_none,
-  2, 164, :_reduce_566,
-  1, 164, :_reduce_none,
-  1, 240, :_reduce_568,
-  1, 240, :_reduce_none,
-  1, 241, :_reduce_570,
-  1, 369, :_reduce_571,
-  1, 369, :_reduce_none,
-  2, 369, :_reduce_573,
-  3, 370, :_reduce_574,
-  1, 370, :_reduce_575,
-  3, 242, :_reduce_576,
-  3, 243, :_reduce_577,
-  3, 244, :_reduce_578,
-  3, 244, :_reduce_579,
-  1, 374, :_reduce_580,
-  3, 374, :_reduce_581,
-  1, 375, :_reduce_none,
-  2, 375, :_reduce_583,
-  3, 246, :_reduce_584,
-  3, 246, :_reduce_585,
-  1, 377, :_reduce_586,
-  3, 377, :_reduce_587,
-  3, 245, :_reduce_588,
-  3, 245, :_reduce_589,
-  3, 247, :_reduce_590,
-  3, 247, :_reduce_591,
-  1, 378, :_reduce_592,
-  3, 378, :_reduce_593,
-  1, 379, :_reduce_594,
-  3, 379, :_reduce_595,
-  1, 371, :_reduce_596,
-  2, 371, :_reduce_597,
-  1, 372, :_reduce_598,
-  2, 372, :_reduce_599,
-  1, 373, :_reduce_600,
-  2, 373, :_reduce_601,
-  1, 376, :_reduce_602,
-  0, 381, :_reduce_603,
-  3, 376, :_reduce_604,
-  0, 382, :_reduce_605,
-  4, 376, :_reduce_606,
-  1, 380, :_reduce_607,
-  1, 380, :_reduce_608,
-  1, 380, :_reduce_609,
-  1, 380, :_reduce_none,
-  1, 222, :_reduce_none,
-  1, 222, :_reduce_none,
-  2, 383, :_reduce_613,
-  1, 383, :_reduce_614,
-  1, 385, :_reduce_none,
-  1, 385, :_reduce_none,
-  1, 385, :_reduce_none,
-  1, 385, :_reduce_none,
-  3, 384, :_reduce_619,
-  1, 368, :_reduce_none,
-  2, 368, :_reduce_621,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 216, :_reduce_631,
-  1, 216, :_reduce_632,
-  1, 216, :_reduce_633,
-  1, 216, :_reduce_634,
-  1, 216, :_reduce_635,
-  1, 216, :_reduce_636,
-  1, 216, :_reduce_637,
-  1, 248, :_reduce_638,
-  1, 248, :_reduce_639,
-  1, 181, :_reduce_640,
-  1, 181, :_reduce_641,
-  1, 186, :_reduce_642,
-  1, 186, :_reduce_643,
-  0, 386, :_reduce_644,
-  4, 268, :_reduce_645,
-  1, 268, :_reduce_646,
-  3, 272, :_reduce_647,
-  5, 272, :_reduce_648,
-  3, 272, :_reduce_649,
-  0, 388, :_reduce_650,
-  3, 272, :_reduce_651,
-  4, 387, :_reduce_652,
-  2, 387, :_reduce_653,
-  2, 387, :_reduce_654,
-  2, 387, :_reduce_655,
-  1, 387, :_reduce_none,
-  2, 390, :_reduce_657,
-  0, 390, :_reduce_658,
-  6, 322, :_reduce_659,
-  8, 322, :_reduce_660,
-  4, 322, :_reduce_661,
-  6, 322, :_reduce_662,
-  4, 322, :_reduce_663,
-  6, 322, :_reduce_664,
-  2, 322, :_reduce_665,
-  4, 322, :_reduce_666,
-  6, 322, :_reduce_667,
-  2, 322, :_reduce_668,
-  4, 322, :_reduce_669,
-  2, 322, :_reduce_670,
-  4, 322, :_reduce_671,
-  1, 322, :_reduce_672,
-  0, 322, :_reduce_673,
-  1, 235, :_reduce_674,
-  1, 317, :_reduce_675,
-  1, 317, :_reduce_676,
-  1, 317, :_reduce_677,
-  1, 317, :_reduce_678,
-  1, 297, :_reduce_none,
-  1, 297, :_reduce_680,
-  1, 392, :_reduce_none,
-  1, 393, :_reduce_none,
-  3, 393, :_reduce_683,
-  1, 309, :_reduce_684,
-  3, 309, :_reduce_685,
-  1, 394, :_reduce_none,
-  2, 395, :_reduce_687,
-  1, 395, :_reduce_688,
-  2, 396, :_reduce_689,
-  1, 396, :_reduce_690,
-  1, 302, :_reduce_none,
-  3, 302, :_reduce_692,
-  1, 389, :_reduce_none,
-  3, 389, :_reduce_694,
-  1, 363, :_reduce_none,
-  1, 363, :_reduce_none,
-  2, 305, :_reduce_697,
-  2, 303, :_reduce_698,
-  1, 303, :_reduce_699,
-  3, 397, :_reduce_700,
-  3, 398, :_reduce_701,
-  1, 310, :_reduce_702,
-  3, 310, :_reduce_703,
-  1, 391, :_reduce_704,
-  3, 391, :_reduce_705,
-  1, 399, :_reduce_none,
-  1, 399, :_reduce_none,
-  2, 311, :_reduce_708,
-  1, 311, :_reduce_709,
-  1, 400, :_reduce_none,
-  1, 400, :_reduce_none,
-  2, 306, :_reduce_712,
-  2, 304, :_reduce_713,
-  0, 304, :_reduce_714,
-  1, 273, :_reduce_none,
-  0, 401, :_reduce_716,
-  4, 273, :_reduce_717,
-  1, 251, :_reduce_718,
-  2, 251, :_reduce_none,
-  1, 233, :_reduce_none,
-  3, 233, :_reduce_721,
-  3, 402, :_reduce_722,
-  2, 402, :_reduce_723,
-  4, 402, :_reduce_724,
-  2, 402, :_reduce_725,
-  1, 205, :_reduce_none,
-  1, 205, :_reduce_none,
-  1, 205, :_reduce_none,
-  1, 199, :_reduce_none,
-  1, 199, :_reduce_none,
-  1, 199, :_reduce_none,
-  1, 199, :_reduce_none,
-  1, 325, :_reduce_none,
-  1, 325, :_reduce_none,
-  1, 325, :_reduce_none,
-  1, 274, :_reduce_none,
-  1, 274, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 198, :_reduce_none,
-  1, 198, :_reduce_none,
-  0, 152, :_reduce_none,
-  1, 152, :_reduce_none,
-  0, 187, :_reduce_none,
-  1, 187, :_reduce_none,
-  2, 210, :_reduce_none,
-  2, 184, :_reduce_none,
-  2, 351, :_reduce_none,
-  0, 232, :_reduce_none,
-  1, 232, :_reduce_none,
-  1, 232, :_reduce_none,
-  1, 269, :_reduce_752,
-  1, 269, :_reduce_none,
-  1, 155, :_reduce_none,
-  2, 155, :_reduce_755,
-  0, 153, :_reduce_756 ]
-
-racc_reduce_n = 757
-
-racc_shift_n = 1250
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLABEL_END => 141,
-  :tLONELY => 142,
-  :tBDOT2 => 143,
-  :tBDOT3 => 144,
-  :tLOWEST => 145,
-  :tEQL => 146 }
-
-racc_nt_base = 147
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLABEL_END",
-  "tLONELY",
-  "tBDOT2",
-  "tBDOT3",
-  "tLOWEST",
-  "tEQL",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "backref",
-  "opt_nl",
-  "arg",
-  "p_expr",
-  "@7",
-  "expr_value_do",
-  "do",
-  "@8",
-  "@9",
-  "command",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@10",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "fname",
-  "op",
-  "reswords",
-  "symbol",
-  "@11",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "args_forward",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@12",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "p_case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "k_def",
-  "f_arglist",
-  "singleton",
-  "dot_or_colon",
-  "@13",
-  "@14",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "@27",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "block_args_tail",
-  "f_block_kwarg",
-  "f_kwrest",
-  "opt_f_block_arg",
-  "f_no_kwarg",
-  "f_block_arg",
-  "opt_block_args_tail",
-  "block_param",
-  "f_arg",
-  "f_block_optarg",
-  "f_rest_arg",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@28",
-  "@29",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@30",
-  "@31",
-  "@32",
-  "@33",
-  "case_args",
-  "@34",
-  "@35",
-  "cases",
-  "@36",
-  "p_top_expr",
-  "p_cases",
-  "@37",
-  "@38",
-  "p_top_expr_body",
-  "p_args",
-  "p_args_tail",
-  "p_kwargs",
-  "p_as",
-  "p_variable",
-  "p_alt",
-  "p_expr_basic",
-  "p_lparen",
-  "p_lbracket",
-  "p_value",
-  "p_const",
-  "rbrace",
-  "@39",
-  "@40",
-  "@41",
-  "p_args_head",
-  "p_arg",
-  "p_args_post",
-  "p_kwarg",
-  "p_kwrest",
-  "p_kwnorest",
-  "p_kw",
-  "p_kw_label",
-  "kwrest_mark",
-  "p_primitive",
-  "p_var_ref",
-  "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",
-  "@42",
-  "@43",
-  "ssym",
-  "dsym",
-  "sym",
-  "@44",
-  "args_tail",
-  "@45",
-  "f_kwarg",
-  "opt_args_tail",
-  "f_optarg",
-  "f_arg_asgn",
-  "f_arg_item",
-  "f_label",
-  "f_kw",
-  "f_block_kw",
-  "f_opt",
-  "f_block_opt",
-  "restarg_mark",
-  "blkarg_mark",
-  "@46",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      yyerror "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 12
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-
-    result
-end
-
-def _reduce_40(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 41 omitted
-
-def _reduce_42(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_50(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-def _reduce_51(val, _values, result)
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-
-    result
-end
-
-# reduce 52 omitted
-
-# reduce 53 omitted
-
-def _reduce_54(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_56(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_57(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-def _reduce_58(val, _values, result)
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-
-    result
-end
-
-# reduce 60 omitted
-
-def _reduce_61(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_62(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_63(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_64(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 65 omitted
-
-# reduce 66 omitted
-
-# reduce 67 omitted
-
-def _reduce_68(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_75(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_76(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_77(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_78(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_79(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_80(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_81(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_82(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 83 omitted
-
-def _reduce_84(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 85 omitted
-
-def _reduce_86(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_93(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_94(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_95(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_96(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 97 omitted
-
-def _reduce_98(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_107(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_108(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_118(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_119(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_120(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 122 omitted
-
-def _reduce_123(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_124(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_125(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 126 omitted
-
-# reduce 127 omitted
-
-# reduce 128 omitted
-
-def _reduce_129(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 130 omitted
-
-def _reduce_131(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 132 omitted
-
-def _reduce_133(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_134(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_135(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-# reduce 203 omitted
-
-# reduce 204 omitted
-
-# reduce 205 omitted
-
-# reduce 206 omitted
-
-def _reduce_207(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_208(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_209(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_210(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_211(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_212(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_213(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_214(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_215(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_216(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_217(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_227(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_228(val, _values, result)
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_229(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_230(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 235 omitted
-
-def _reduce_236(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_241(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_242(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_243(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_244(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_245(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_246(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_247(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_248(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-# reduce 249 omitted
-
-# reduce 250 omitted
-
-# reduce 251 omitted
-
-# reduce 252 omitted
-
-# reduce 253 omitted
-
-def _reduce_254(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_255(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_256(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 257 omitted
-
-def _reduce_258(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_259(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_260(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 261 omitted
-
-def _reduce_262(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_263(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-def _reduce_264(val, _values, result)
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-
-    result
-end
-
-def _reduce_265(val, _values, result)
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-
-    result
-end
-
-# reduce 266 omitted
-
-# reduce 267 omitted
-
-# reduce 268 omitted
-
-# reduce 269 omitted
-
-def _reduce_270(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_271(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_272(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_273(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_274(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_275(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_276(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_280(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_281(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 282 omitted
-
-def _reduce_283(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_284(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_285(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_286(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_287(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_288(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_289(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_290(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_291(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 292 omitted
-
-# reduce 293 omitted
-
-# reduce 294 omitted
-
-# reduce 295 omitted
-
-# reduce 296 omitted
-
-# reduce 297 omitted
-
-# reduce 298 omitted
-
-# reduce 299 omitted
-
-# reduce 300 omitted
-
-# reduce 301 omitted
-
-def _reduce_302(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_303(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_305(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_307(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_308(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_309(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_310(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_311(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_312(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_313(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_314(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_315(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_316(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_317(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      debug 20
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 324 omitted
-
-def _reduce_325(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_327(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_339(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_340(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_344(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_345(val, _values, result)
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-    result
-end
-
-def _reduce_346(val, _values, result)
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_347(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_348(val, _values, result)
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-
-    result
-end
-
-def _reduce_349(val, _values, result)
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_350(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_351(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_352(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_354(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 355 omitted
-
-# reduce 356 omitted
-
-# reduce 357 omitted
-
-# reduce 358 omitted
-
-# reduce 359 omitted
-
-# reduce 360 omitted
-
-# reduce 361 omitted
-
-def _reduce_362(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_363(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_364(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 365 omitted
-
-# reduce 366 omitted
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-# reduce 369 omitted
-
-# reduce 370 omitted
-
-# reduce 371 omitted
-
-# reduce 372 omitted
-
-# reduce 373 omitted
-
-# reduce 374 omitted
-
-# reduce 375 omitted
-
-# reduce 376 omitted
-
-# reduce 377 omitted
-
-# reduce 378 omitted
-
-# reduce 379 omitted
-
-def _reduce_380(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 381 omitted
-
-def _reduce_382(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 383 omitted
-
-def _reduce_384(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 385 omitted
-
-def _reduce_386(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_387(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_388(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_389(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_390(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_391(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_392(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_393(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_394(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_395(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-def _reduce_396(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_397(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_398(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 402 omitted
-
-def _reduce_403(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_406(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_407(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_408(val, _values, result)
-                      result = args(val) << nil
-
-    result
-end
-
-def _reduce_409(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_410(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_411(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_412(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_413(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_416(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_417(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_418(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 423 omitted
-
-def _reduce_424(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 428 omitted
-
-def _reduce_429(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_433(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_438(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_439(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_442(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_443(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_444(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_445(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_446(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_447(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_454(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_455(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_456(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_457(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_458(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_459(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_460(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_461(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_462(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_463(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_464(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_465(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 466 omitted
-
-# reduce 467 omitted
-
-def _reduce_468(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-
-    result
-end
-
-def _reduce_469(val, _values, result)
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-
-    result
-end
-
-def _reduce_470(val, _values, result)
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-
-    result
-end
-
-# reduce 471 omitted
-
-# reduce 472 omitted
-
-# reduce 473 omitted
-
-def _reduce_474(val, _values, result)
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-
-    result
-end
-
-# reduce 476 omitted
-
-def _reduce_477(val, _values, result)
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-
-    result
-end
-
-def _reduce_479(val, _values, result)
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-
-    result
-end
-
-def _reduce_480(val, _values, result)
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-
-    result
-end
-
-# reduce 481 omitted
-
-def _reduce_482(val, _values, result)
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-
-    result
-end
-
-# reduce 483 omitted
-
-def _reduce_484(val, _values, result)
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-
-    result
-end
-
-# reduce 485 omitted
-
-def _reduce_486(val, _values, result)
- push_pktbl
-    result
-end
-
-def _reduce_487(val, _values, result)
- push_pktbl
-    result
-end
-
-# reduce 488 omitted
-
-def _reduce_489(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-
-    result
-end
-
-def _reduce_491(val, _values, result)
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-
-    result
-end
-
-def _reduce_492(val, _values, result)
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-
-    result
-end
-
-def _reduce_495(val, _values, result)
- push_pktbl
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      _, _, pat, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern nil, nil, pat, pat.line
-
-    result
-end
-
-def _reduce_497(val, _values, result)
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-
-    result
-end
-
-def _reduce_498(val, _values, result)
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-
-    result
-end
-
-def _reduce_499(val, _values, result)
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-
-    result
-end
-
-def _reduce_500(val, _values, result)
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-
-    result
-end
-
-def _reduce_501(val, _values, result)
- push_pktbl
-    result
-end
-
-def _reduce_502(val, _values, result)
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-
-    result
-end
-
-def _reduce_503(val, _values, result)
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-
-    result
-end
-
-def _reduce_504(val, _values, result)
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-
-    result
-end
-
-def _reduce_505(val, _values, result)
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-
-    result
-end
-
-def _reduce_506(val, _values, result)
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-
-    result
-end
-
-def _reduce_507(val, _values, result)
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-
-    result
-end
-
-def _reduce_508(val, _values, result)
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-
-    result
-end
-
-def _reduce_509(val, _values, result)
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-
-    result
-end
-
-# reduce 510 omitted
-
-def _reduce_511(val, _values, result)
-                      arg, _ = val
-                      result = arg
-
-    result
-end
-
-def _reduce_512(val, _values, result)
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-
-    result
-end
-
-def _reduce_513(val, _values, result)
-                      _, (id, line) = val
-
-                      result = new_array_pattern_tail nil, true, id.to_sym, nil
-                      result.line line
-
-    result
-end
-
-def _reduce_514(val, _values, result)
-                      _, (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id.to_sym, rhs
-                      result.line line
-
-    result
-end
-
-def _reduce_515(val, _values, result)
-                      (_, line), = val
-
-                      result = new_array_pattern_tail nil, true, nil, nil
-                      result.line line
-
-    result
-end
-
-def _reduce_516(val, _values, result)
-                      (_, line), _, args = val
-
-                      result = new_array_pattern_tail nil, true, nil, args
-                      result.line line
-
-    result
-end
-
-# reduce 517 omitted
-
-def _reduce_518(val, _values, result)
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-
-    result
-end
-
-def _reduce_519(val, _values, result)
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-
-    result
-end
-
-def _reduce_520(val, _values, result)
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-
-    result
-end
-
-def _reduce_521(val, _values, result)
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-
-    result
-end
-
-def _reduce_522(val, _values, result)
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-
-    result
-end
-
-def _reduce_523(val, _values, result)
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-
-    result
-end
-
-def _reduce_524(val, _values, result)
-                      kwarg, _, norest = val
-
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, norest, kwarg.line
-
-    result
-end
-
-def _reduce_525(val, _values, result)
-                      norest, = val
-
-                      result = new_hash_pattern_tail nil, norest, norest.line
-
-    result
-end
-
-# reduce 526 omitted
-
-def _reduce_527(val, _values, result)
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-
-    result
-end
-
-def _reduce_528(val, _values, result)
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_529(val, _values, result)
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 666
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-
-    result
-end
-
-def _reduce_530(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-def _reduce_531(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-
-    result
-end
-
-def _reduce_532(val, _values, result)
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-
-    result
-end
-
-def _reduce_533(val, _values, result)
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-
-    result
-end
-
-# reduce 534 omitted
-
-def _reduce_535(val, _values, result)
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_537(val, _values, result)
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-
-    result
-end
-
-def _reduce_538(val, _values, result)
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-
-    result
-end
-
-# reduce 539 omitted
-
-# reduce 540 omitted
-
-# reduce 541 omitted
-
-def _reduce_542(val, _values, result)
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-
-    result
-end
-
-# reduce 544 omitted
-
-# reduce 545 omitted
-
-# reduce 546 omitted
-
-# reduce 547 omitted
-
-def _reduce_548(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_550(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_551(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_552(val, _values, result)
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-
-    result
-end
-
-# reduce 553 omitted
-
-def _reduce_554(val, _values, result)
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-
-    result
-end
-
-def _reduce_555(val, _values, result)
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-
-    result
-end
-
-def _reduce_556(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_560(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_561(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 562 omitted
-
-# reduce 563 omitted
-
-def _reduce_564(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 565 omitted
-
-def _reduce_566(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 567 omitted
-
-def _reduce_568(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 569 omitted
-
-def _reduce_570(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      debug 37
-
-    result
-end
-
-# reduce 572 omitted
-
-def _reduce_573(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_574(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_575(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_576(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_577(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_578(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_579(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_580(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_581(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 582 omitted
-
-def _reduce_583(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_584(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_585(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_586(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_587(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_588(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_589(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_590(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_591(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_592(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_593(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_595(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_596(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_597(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_598(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_599(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_600(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_601(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_602(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_603(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_604(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_605(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_606(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_607(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_608(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_609(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 610 omitted
-
-# reduce 611 omitted
-
-# reduce 612 omitted
-
-def _reduce_613(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_614(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 615 omitted
-
-# reduce 616 omitted
-
-# reduce 617 omitted
-
-# reduce 618 omitted
-
-def _reduce_619(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-
-    result
-end
-
-# reduce 620 omitted
-
-def _reduce_621(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 622 omitted
-
-# reduce 623 omitted
-
-# reduce 624 omitted
-
-# reduce 625 omitted
-
-# reduce 626 omitted
-
-# reduce 627 omitted
-
-# reduce 628 omitted
-
-# reduce 629 omitted
-
-# reduce 630 omitted
-
-def _reduce_631(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_632(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_633(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_634(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_635(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_636(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_637(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_638(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-
-    result
-end
-
-def _reduce_639(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_640(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_641(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 40
-
-    result
-end
-
-def _reduce_642(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_643(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_644(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_645(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_646(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_647(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_648(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_649(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_650(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_651(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_652(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_653(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_654(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_655(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 656 omitted
-
-def _reduce_657(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_658(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_659(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_660(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_661(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_662(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_663(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_664(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_665(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_666(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_667(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_668(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_669(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_670(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_671(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_672(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_673(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_674(val, _values, result)
-                      result = s(:forward_args).line lexer.lineno
-
-    result
-end
-
-def _reduce_675(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_676(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_677(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_678(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 679 omitted
-
-def _reduce_680(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 681 omitted
-
-# reduce 682 omitted
-
-def _reduce_683(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_684(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_685(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 686 omitted
-
-def _reduce_687(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_688(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_689(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_690(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 691 omitted
-
-def _reduce_692(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 693 omitted
-
-def _reduce_694(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 695 omitted
-
-# reduce 696 omitted
-
-def _reduce_697(val, _values, result)
-                      result = :"**nil"
-
-    result
-end
-
-def _reduce_698(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_699(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_700(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-
-    result
-end
-
-def _reduce_701(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-
-    result
-end
-
-def _reduce_702(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_703(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_704(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_705(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 706 omitted
-
-# reduce 707 omitted
-
-def _reduce_708(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_709(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 710 omitted
-
-# reduce 711 omitted
-
-def _reduce_712(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_713(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_714(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 715 omitted
-
-def _reduce_716(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_717(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_718(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 719 omitted
-
-# reduce 720 omitted
-
-def _reduce_721(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_722(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_723(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_724(val, _values, result)
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-
-    result
-end
-
-def _reduce_725(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 726 omitted
-
-# reduce 727 omitted
-
-# reduce 728 omitted
-
-# reduce 729 omitted
-
-# reduce 730 omitted
-
-# reduce 731 omitted
-
-# reduce 732 omitted
-
-# reduce 733 omitted
-
-# reduce 734 omitted
-
-# reduce 735 omitted
-
-# reduce 736 omitted
-
-# reduce 737 omitted
-
-# reduce 738 omitted
-
-# reduce 739 omitted
-
-# reduce 740 omitted
-
-# reduce 741 omitted
-
-# reduce 742 omitted
-
-# reduce 743 omitted
-
-# reduce 744 omitted
-
-# reduce 745 omitted
-
-# reduce 746 omitted
-
-# reduce 747 omitted
-
-# reduce 748 omitted
-
-# reduce 749 omitted
-
-# reduce 750 omitted
-
-# reduce 751 omitted
-
-def _reduce_752(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 753 omitted
-
-# reduce 754 omitted
-
-def _reduce_755(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_756(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby27Parser
diff -pruN 3.20.0-2/lib/ruby27_parser.y 3.21.1-1/lib/ruby27_parser.y
--- 3.20.0-2/lib/ruby27_parser.y	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby27_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,3336 +0,0 @@
-# -*- racc -*-
-
-class Ruby27Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-       tLONELY
-       tBDOT2 tBDOT3
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-                      yyerror "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 12
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg kRESCUE_MOD stmt
-                    {
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_call kRESCUE_MOD stmt
-                    {
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg
-                    kIN
-                    {
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-                    p_expr
-                    {
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-                    }
-                | arg                                   =tLBRACE_ARG
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT2
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-                    }
-                | arg tDOT3
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-                    }
-
-                | tBDOT2 arg
-                    {
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-                    }
-                | tBDOT3 arg
-                    {
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-                    }
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-                | tLPAREN2 args tCOMMA args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 20
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_case expr_value opt_terms p_case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def fname
-                    {
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-                    }
-                    f_arglist bodystmt k_end
-                    {
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fname
-                    {
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                    }
-                    f_arglist bodystmt k_end
-                    {
-
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_no_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA
-                    {
-                      result = args(val) << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    bodystmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-######################################################################
-
-     p_case_body: kIN
-                    {
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-                    }
-                    p_top_expr then
-                    {
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-                    }
-                    compstmt
-                    p_cases
-                    {
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-                    }
-
-         p_cases: opt_else
-                | p_case_body
-
-      p_top_expr: p_top_expr_body
-                | p_top_expr_body kIF_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-                    }
-                | p_top_expr_body kUNLESS_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-                    }
-
- p_top_expr_body: p_expr
-                | p_expr tCOMMA
-                    {
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-                    }
-                | p_expr tCOMMA p_args
-                    {
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-                    }
-                | p_args_tail
-                    {
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-                    }
-                | p_kwargs
-                    {
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-                    }
-
-          p_expr: p_as
-
-            p_as: p_expr tASSOC p_variable
-                    {
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-                    }
-                | p_alt
-
-           p_alt: p_alt tPIPE p_expr_basic
-                    {
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-                    }
-                | p_expr_basic
-
-        p_lparen: tLPAREN2 { push_pktbl }
-      p_lbracket: tLBRACK2 { push_pktbl }
-
-    p_expr_basic: p_value
-                | p_const p_lparen p_args tRPAREN
-                    {
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-                    }
-                | p_const p_lparen p_kwargs tRPAREN
-                    {
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-                    }
-                | p_const tLPAREN2 tRPAREN
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | p_const p_lbracket p_args rbracket
-                    {
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-                    }
-                | p_const p_lbracket p_kwargs rbracket
-                    {
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-                    }
-                | p_const tLBRACK2 rbracket
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | tLBRACK { push_pktbl } p_args rbracket
-                    {
-                      _, _, pat, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern nil, nil, pat, pat.line
-                    }
-                | tLBRACK rbracket
-                    {
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-                    }
-                | tLBRACE
-                    {
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-                    }
-                    p_kwargs rbrace
-                    {
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-                    }
-                | tLBRACE rbrace
-                    {
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-                    }
-                | tLPAREN { push_pktbl } p_expr tRPAREN
-                    {
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-                    }
-
-          p_args: p_expr
-                    {
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-                    }
-                | p_args_head
-                    {
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-                    }
-                | p_args_head p_arg
-                    {
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER
-                    {
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER tCOMMA p_args_post
-                    {
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-                    }
-                | p_args_head tSTAR
-                    {
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-                    }
-                | p_args_head tSTAR tCOMMA p_args_post
-                    {
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-                    }
-                | p_args_tail
-
-     p_args_head: p_arg tCOMMA
-                    {
-                      arg, _ = val
-                      result = arg
-                    }
-                | p_args_head p_arg tCOMMA
-                    {
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-                    }
-
-     p_args_tail: tSTAR tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      result = new_array_pattern_tail nil, true, id.to_sym, nil
-                      result.line line
-                    }
-                | tSTAR tIDENTIFIER tCOMMA p_args_post
-                    {
-                      _, (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id.to_sym, rhs
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      (_, line), = val
-
-                      result = new_array_pattern_tail nil, true, nil, nil
-                      result.line line
-                    }
-                | tSTAR tCOMMA p_args_post
-                    {
-                      (_, line), _, args = val
-
-                      result = new_array_pattern_tail nil, true, nil, args
-                      result.line line
-                    }
-
-     p_args_post: p_arg
-                | p_args_post tCOMMA p_arg
-                    {
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-                    }
-
-           p_arg: p_expr
-                    {
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-                    }
-
-        p_kwargs: p_kwarg tCOMMA p_kwrest
-                    {
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-                    }
-                | p_kwarg
-                    {
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_kwarg tCOMMA
-                    {
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_kwrest
-                    {
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-                    }
-                | p_kwarg tCOMMA p_kwnorest
-                    {
-                      kwarg, _, norest = val
-
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, norest, kwarg.line
-                    }
-                | p_kwnorest
-                    {
-                      norest, = val
-
-                      result = new_hash_pattern_tail nil, norest, norest.line
-                    }
-
-         p_kwarg: p_kw # TODO? rb_ary_new_from_args(1, $1)
-                | p_kwarg tCOMMA p_kw
-                    {
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-                    }
-
-            p_kw: p_kw_label p_expr
-                    {
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-                    }
-                | p_kw_label
-                    {
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 666
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-                    }
-
-      p_kw_label: tLABEL
-                    {
-                      result = wrap :lit, val[0]
-                    }
-
-        p_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-                    }
-                | kwrest_mark
-                    {
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-                    }
-
-      p_kwnorest: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-                    }
-
-         p_value: p_primitive
-                | p_primitive tDOT2 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT3 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT2
-                    {
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-                    }
-                | p_primitive tDOT3
-                    {
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-                    }
-                | p_variable
-                | p_var_ref
-                | p_const
-                | tBDOT2 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-                    }
-                | tBDOT3 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-                    }
-
-     p_primitive: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qwords
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | symbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qsymbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | keyword_variable
-                    {
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-                    }
-                | lambda
-
-      p_variable: tIDENTIFIER
-                    {
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-                    }
-
-       p_var_ref: tCARET tIDENTIFIER
-                    {
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-                    }
-
-         p_const: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | p_const tCOLON2 cname
-                    {
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-                    }
-                | tCONSTANT
-                    {
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-                    }
-######################################################################
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 37
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 40
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-       f_arglist: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-                | tLPAREN2 f_arg tCOMMA args_forward rparen
-                    {
-                      result = end_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      result = end_args val
-                    }
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_no_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-    args_forward: tBDOT3
-                    {
-                      result = s(:forward_args).line lexer.lineno
-                    }
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-      f_no_kwarg: kwrest_mark kNIL
-                    {
-                      result = :"**nil"
-                    }
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn tEQL arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                    }
-
-     f_block_opt: f_arg_asgn tEQL primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-                | tLONELY # TODO: rename tANDDOT?
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-        rbracket: opt_nl tRBRACK
-          rbrace: opt_nl tRCURLY
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby30_parser.rb 3.21.1-1/lib/ruby30_parser.rb
--- 3.20.0-2/lib/ruby30_parser.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby30_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,13258 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby30Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -639,   682,   685,   307,   638,  -118,   307,  -639,  -639,  -639,
-   228,   229,  -639,  -639,  -639,  -112,  -639,  -119,  1136,  -114,
-   638,   638,   228,   229,  -639,   904,  -639,  -639,  -639,   228,
-   229,   854,     3,   817,  1131,   855,  -639,  -639,   234,  -639,
-  -639,  -639,  -639,  -639,  -104,   302,  -761,   638,  -126,  -113,
-  -125,   818,  1130,  -121,  -123,   638,   854,   904,   130,   239,
-   929,   -90,  1012,  -111,   681,   684,  -532,  -639,  -639,  -639,
-  -639,  -639,  -639,  -639,  -639,  -639,  -639,  -639,  -639,  -639,
-  -639,   638,  -112,  -639,  -639,  -639,  -114,  -639,  -639,   840,
-   309,  -639,  -120,   309,  -639,  -639,  1137,  -639,  1177,  -639,
-   239,  -639,   235,  -639,  -639,  -639,  -639,  -639,  -639,  -639,
-  -109,  -639,   239,  -639,  1039,  -746,  -113,  -112,   134,   239,
-  -112,  -114,  -110,   133,  -114,   611,  -639,  -639,  -639,  -639,
-  -111,  -639,  -118,  -639,   134,   134,  -642,  -112,  -639,   133,
-   133,  -114,  -639,  -642,  -642,  -642,  -639,  -119,  -642,  -642,
-  -642,  -113,  -642,  -117,  -113,  -116,  -126,  -125,  -112,  -114,
-  -642,   134,  -642,  -642,  -642,  -111,   133,  1011,  -111,   134,
-  -121,  -113,  -642,  -642,   133,  -642,  -642,  -642,  -642,  -642,
-  -123,  -122,  1039,  -120,   225,  -111,  -122,  -124,   937,   134,
-   307,  -653,   612,   611,   133,   134,   666,  -111,  1112,   671,
-   133,  -761,   238,  -642,  -642,  -642,  -642,  -642,  -642,  -642,
-  -642,  -642,  -642,  -642,  -642,  -642,  -642,   376,   307,  -642,
-  -642,  -642,   936,  -642,  -642,   112,   113,  -642,   112,   113,
-  -642,  -642,   239,  -642,  -654,  -642,   226,  -642,   239,  -642,
-  -642,  -642,  -642,  -642,  -642,  -642,  -118,  -642,  -124,  -642,
-  -118,  -118,  -746,  -747,   376,   304,   666,   668,   667,  -746,
-   612,  -119,  -642,  -642,  -642,  -642,  -119,  -642,   666,  -642,
-  -126,  -125,  -320,  -773,  -642,  -126,  -125,   309,  -642,  -320,
-  -320,  -320,  -642,   304,  -121,  -320,  -320,   608,  -320,  -121,
-   608,  -113,  -115,  -119,  -123,  -122,  -320,  -120,   611,  -123,
-  -122,   611,  -120,   114,   115,   309,   114,   115,  -320,  -320,
-  -773,  -320,  -320,  -320,  -320,  -320,   956,   668,   667,   664,
-   234,   525,   957,   496,   937,   666,  -747,   233,   526,   668,
-   667,   619,   618,   227,   619,   618,   231,   771,   869,  -320,
-  -320,  -320,  -320,  -320,  -320,  -320,  -320,  -320,  -320,  -320,
-  -320,  -320,  -320,   230,   236,  -320,  -320,  -320,   936,   710,
-  -320,   576,  -124,  -320,   899,   612,  -320,  -124,   612,   236,
-  -653,  -320,   991,  -320,   645,  -320,  -320,  -320,  -320,  -320,
-  -320,  -320,  -126,  -320,   235,  -320,   668,   667,   603,  -361,
-   600,   599,   598,   608,   601,   871,  -361,   900,  -320,  -320,
-  -654,  -115,   297,  -320,   611,  -361,   666,   704,  -750,   991,
-  -320,  -117,  -109,  -126,  -320,  -750,  -750,  -750,  -124,   845,
-  -125,  -750,  -750,  -121,  -750,   361,   606,  -639,  -126,  -118,
-   576,   704,  -750,  -750,  -639,   616,   615,   619,   618,   234,
-   228,   229,  -110,   666,  -750,  -750,   493,  -750,  -750,  -750,
-  -750,  -750,    99,  -361,  -651,   494,  -123,  -642,  -652,  -119,
-   100,  -651,   666,   362,  -642,  -652,  -121,   668,   667,   664,
-  -651,   612,  -116,  -112,  -652,  -750,  -750,  -750,  -750,  -750,
-  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -125,
-  -121,  -750,  -750,  -750,  -649,   711,  -750,   228,   229,  -750,
-   666,  -649,  -750,   235,   668,   667,   669,  -750,   705,  -750,
-   239,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -651,  -750,
-  -750,  -750,  -652,   668,   667,   674,   603,   404,   600,   599,
-   598,   608,   601,   234,  -750,  -750,   705,  -113,  -648,  -750,
-   568,   666,   611,   414,  -750,  -648,  -750,  1027,   886,   566,
-  -750,  -750,  -750,  -750,  -122,   854,  -750,  -750,  -750,   929,
-  -750,   668,   667,   679,   606,   662,   886,  -123,  -750,  -750,
-  -750,  -750,  -750,   616,   615,   619,   618,   417,  -114,   420,
-  -750,  -750,  -311,  -750,  -750,  -750,  -750,  -750,   134,  -311,
-  -111,   910,  -650,   133,   234,  -123,   906,   235,  -311,  -650,
-   907,   578,   668,   667,   686,   829,  -120,  -120,   828,   612,
-   494,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,
-  -750,  -750,  -750,  -750,  -750,  -120,   645,  -750,  -750,  -750,
-  -647,   901,  -750,  -644,   845,  -750,   423,  -647,  -750,  -750,
-  -644,  -750,   440,  -750,   445,  -750,  -311,  -750,  -750,  -750,
-  -750,  -750,  -750,  -750,  -645,  -750,  -750,  -750,   235,   495,
-   829,  -645,   603,   831,   600,   599,   598,   608,   601,   234,
-  -750,  -750,  -750,  -750,  -646,  -750,   649,  -750,   611,   134,
-  -320,  -646,  -750,   497,   133,   647,  -750,  -320,  -320,  -320,
-  -122,   498,  -320,  -320,  -320,   261,  -320,   442,   234,   238,
-   606,   533,   444,   443,  -320,   697,  -320,  -320,  -320,   616,
-   615,   619,   618,   545,   695,   548,  -320,  -320,  -321,  -320,
-  -320,  -320,  -320,  -320,   134,  -321,   550,   258,   234,   133,
-  -320,   260,   259,   235,  -321,   857,   134,  -320,   134,   924,
-   925,   133,  -747,   133,   859,   612,  -320,  -320,  -320,  -320,
-  -320,  -320,  -320,  -320,  -320,  -320,  -320,  -320,  -320,  -320,
-  -320,   134,   235,  -320,  -320,  -320,   133,   902,  -320,   278,
-   279,  -320,   -89,   829,  -320,  -320,   831,  -320,   239,  -320,
-   561,  -320,  -321,  -320,  -320,  -320,  -320,  -320,  -320,  -320,
-   562,  -320,   235,  -320,  -320,   569,   603,   314,   600,   599,
-   598,   608,   601,  -321,   277,   276,  -320,  -320,  -320,  -320,
-  -321,  -320,   611,  -320,   829,   239,  -320,   831,  -320,  -321,
-   619,   618,  -320,  -320,  -320,  -320,  -124,   376,   904,  -320,
-  -320,  1141,  -320,   239,   606,   603,  1232,   600,   599,   598,
-  -320,   601,   376,   616,   615,   619,   618,   137,   138,   139,
-   140,   141,  -320,  -320,  -320,  -320,  -320,  -320,  -320,  -320,
-   304,  -320,   234,   573,   234,   579,  -747,  -321,   261,  1206,
-  -320,  1212,   583,   810,   987,   991,   261,  -660,   859,   612,
-  1210,   623,   814,  -320,  -320,  -320,  -320,  -320,  -320,  -320,
-  -320,  -320,  -320,  -320,  -320,  -320,  -320,   228,   229,  -320,
-  -320,  -320,   239,   710,  -320,  1175,  1176,  -320,   258,   645,
-  -320,   433,   260,   259,   650,  -320,   651,  -320,  -320,  -320,
-  -320,  -320,  -320,  -320,  -320,  -320,   235,  -320,   235,  -320,
-   987,   991,   603,   234,   600,   599,   598,   608,   601,   673,
-  1206,   677,  -320,  -320,   680,  -320,   683,  -320,   611,   859,
-   690,   691,  -750,  -293,  -320,   693,   694,   698,  -320,  -750,
-  -750,  -750,  -124,   239,   702,  -750,  -750,   261,  -750,   603,
-   606,   600,   599,   598,   703,   601,  -750,  -750,   304,   715,
-   261,   619,   618,   261,   122,   121,   123,   124,  -750,  -750,
-   261,  -750,  -750,  -750,  -750,  -750,   261,   235,   753,   258,
-   126,   125,   127,   260,   259,   256,   257,   810,   137,   138,
-   139,   140,   141,   112,   113,   612,   814,   239,   358,  -750,
-  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,
-  -750,  -750,  -750,   759,   239,  -750,  -750,  -750,   239,   711,
-  -750,   440,   239,  -750,  1016,  1017,  -750,  -104,  1018,   128,
-   129,  -750,   775,  -750,   239,  -750,  -750,  -750,  -750,  -750,
-  -750,  -750,   582,  -750,  -750,  -750,   786,   109,    99,   101,
-   102,   103,   105,   792,   795,   239,   100,   110,  -750,  -750,
-   797,  -750,   239,  -750,    93,   800,   803,    97,   104,   106,
-  -750,   114,   115,   804,  -750,   806,   808,   819,  -122,     8,
-    89,    90,    91,    12,    82,   820,   822,   795,    83,    84,
-   795,   239,  -743,    87,  -744,    85,    86,    88,    34,    35,
-    80,    81,   137,   138,   139,   140,   141,    92,    32,    31,
-   122,   121,   123,   124,   832,   603,    22,   600,   599,   598,
-   833,   601,    11,    52,    10,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   550,   120,   128,   129,   836,   112,
-   113,   795,    48,    49,    47,  -639,   795,  -642,   795,   861,
-   872,   873,  -639,   810,  -642,  -294,   887,  -743,   533,  -744,
-   533,  -639,   814,  -642,    44,   239,   904,    37,   261,   905,
-    67,    68,   928,   904,    69,   931,    39,   297,   943,  -743,
-    51,  -744,   945,   548,   271,   272,   550,   786,    23,   239,
-   304,   304,   786,   109,    99,   101,   102,   103,   105,   261,
-   258,   980,   100,   110,   260,   259,   256,   257,   981,  -639,
-    93,  -642,   239,    97,   104,   106,   991,   114,   115,   795,
-   795,    45,    46,   333,    89,    90,    91,    12,    82,   239,
-   239,  1021,    83,    84,  -295,   239,  -750,    87,  1026,    85,
-    86,    88,    34,    35,    80,    81,   137,   138,   139,   140,
-   141,    92,    32,    31,   122,   121,   123,   124,   745,  1030,
-    22,   261,   239,   239,  1052,  1053,    11,    52,   335,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,  1054,   120,
-   128,   129,  1056,   112,   113,  1075,    48,    49,    47,  -750,
-   239,   786,  -293,   258,  1082,   239,  -750,   260,   259,   256,
-   257,  -746,  1085,  1087,   803,  -750,   818,  1090,    44,  1092,
-  1092,   337,   239,   795,    67,    68,   795,   795,    69,   239,
-    39,   795,  1122,  -750,    51,   603,   239,   600,   599,   598,
-  1124,   601,    23,  -296,  1125,  1126,  1127,   109,    99,   101,
-   102,   103,   105,  1128,   239,   239,   100,   110,   239,   904,
-  1135,   239,  1142,  -750,    93,   803,  1145,    97,   104,   106,
-  1149,   114,   115,   810,  1151,    45,    46,   333,    89,    90,
-    91,    12,    82,  1153,   239,  1155,    83,    84,  1171,  1172,
-   795,    87,  1184,    85,    86,    88,    34,    35,    80,    81,
-   253,  1185,   904,  1192,  1194,    92,    32,    31,   122,   121,
-   123,   124,  1204,   603,    22,   600,   599,   598,  1207,   601,
-    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   956,   120,   128,   129,  1213,   112,   113,  1214,
-    48,    49,    47,   261,   265,   266,   267,   268,   278,   279,
-   273,   274,   269,   270,  1092,   254,   255,  1092,  1092,   271,
-   272,  1234,    44,   803,   252,    37,  1238,  1240,    67,    68,
-  1242,  1244,    69,  1244,    39,   258,   792,   264,    51,   260,
-   259,   256,   257,   277,   276,   262,    23,   263,  1172,  1258,
-   795,   109,    99,   101,   102,   103,   105,  1234,  -747,  -746,
-   100,   110,   239,   275,  1092,  1271,  1244,  1244,    93,  1244,
-  1234,    97,   104,   106,  1244,   114,   115,   nil,   nil,    45,
-    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   699,    11,    52,   335,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   261,   265,   266,
-   267,   268,   278,   279,   273,   274,   269,   270,   nil,   254,
-   255,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
-   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
-    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   275,   nil,  -266,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   699,    11,    52,
-   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   261,   265,   266,   267,   268,   278,   279,   273,   274,
-   269,   270,   nil,   254,   255,   nil,   nil,   271,   272,   nil,
-    44,   nil,   nil,   337,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
-   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   275,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
-   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   953,    11,    52,   335,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   261,   265,   266,   267,   268,
-   278,   279,   273,   274,   269,   270,   nil,   254,   255,   nil,
-   nil,   271,   272,   nil,    44,   nil,   nil,   337,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
-    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   275,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,   333,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   984,    11,    52,   335,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
-   265,   266,   267,   268,   278,   279,   273,   274,   269,   270,
-   nil,   254,   255,   nil,   nil,   271,   272,   nil,    44,   nil,
-   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    39,   258,   nil,   264,    51,   260,   259,   256,   257,   277,
-   276,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   275,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,  1188,    22,   600,   599,   598,   nil,   601,
-    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   261,   265,   266,   267,   268,   278,   279,
-   273,   274,   269,   270,   nil,   254,   255,   nil,   nil,   271,
-   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
-   259,   256,   257,   277,   276,   262,    23,   263,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   275,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,  1188,    22,   600,
-   599,   598,   nil,   601,    11,    52,   335,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   261,   265,   266,
-   267,   268,   278,   279,   273,   274,   269,   270,   nil,   254,
-   255,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
-   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
-    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   239,   275,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,
-   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   261,   265,   266,   267,   268,   278,   279,   273,   274,
-   269,   270,   nil,   254,   255,   nil,   nil,   271,   272,   nil,
-    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
-   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   275,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
-   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    52,   335,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   261,   265,   266,   267,   268,
-   278,   279,   273,   274,   269,   270,   nil,   254,   255,   nil,
-   nil,   271,   272,   nil,    44,   nil,   nil,    37,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
-    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   275,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,   333,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   335,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
-   265,   266,   267,   268,   278,   279,   273,   274,   269,   270,
-   nil,   254,   255,   nil,   nil,   271,   272,   nil,    44,   nil,
-   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    39,   258,   nil,   264,    51,   260,   259,   256,   257,   277,
-   276,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   275,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   261,   265,   266,   267,   268,   278,   279,
-   273,   274,   269,   270,   nil,   254,   255,   nil,   nil,   271,
-   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
-   259,   256,   257,   277,   276,   262,    23,   263,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   275,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,     8,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    52,    10,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   261,   265,   266,
-   267,   268,   278,   279,   273,   274,   269,   270,   nil,   254,
-   255,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
-   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
-    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   275,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,
-   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   261,   265,   266,   267,   268,   278,   279,   273,   274,
-   269,   270,   nil,  -774,  -774,   nil,   nil,   271,   272,   nil,
-    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
-   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
-   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    52,   335,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   261,   265,   266,   267,   268,
-   278,   279,   273,   274,   269,   270,   nil,  -774,  -774,   nil,
-   nil,   271,   272,   nil,    44,   nil,   nil,    37,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
-    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,   333,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   335,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
-   265,   266,   267,   268,   278,   279,   273,   274,   269,   270,
-   nil,  -774,  -774,   nil,   nil,   271,   272,   nil,    44,   nil,
-   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    39,   258,   nil,   264,    51,   260,   259,   256,   257,   277,
-   276,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   261,   265,   266,   267,   268,   278,   279,
-   273,   274,   269,   270,   nil,  -774,  -774,   nil,   nil,   271,
-   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
-   259,   256,   257,   277,   276,   262,    23,   263,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   603,    22,   600,
-   599,   598,   nil,   601,    11,    52,   335,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   261,  -774,  -774,
-  -774,  -774,   278,   279,   nil,   810,  -774,  -774,   nil,   nil,
-   nil,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
-   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
-    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
-   nil,   603,    22,   600,   599,   598,   nil,   601,    11,    52,
-   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   261,  -774,  -774,  -774,  -774,   278,   279,   nil,   810,
-  -774,  -774,   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,
-    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
-   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
-   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    52,   335,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   261,  -774,  -774,  -774,  -774,
-   278,   279,   nil,   nil,  -774,  -774,   nil,   nil,   nil,   nil,
-   nil,   271,   272,   nil,    44,   nil,   nil,    37,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
-    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,   333,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   335,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
-  -774,  -774,  -774,  -774,   278,   279,   nil,   nil,  -774,  -774,
-   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,    44,   nil,
-   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    39,   258,   nil,   264,    51,   260,   259,   256,   257,   277,
-   276,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   261,  -774,  -774,  -774,  -774,   278,   279,
-   nil,   nil,  -774,  -774,   nil,   nil,   nil,   nil,   nil,   271,
-   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
-   259,   256,   257,   277,   276,   262,    23,   263,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    52,   335,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   261,  -774,  -774,
-  -774,  -774,   278,   279,   nil,   nil,  -774,  -774,   nil,   nil,
-   nil,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
-   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
-    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,
-   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   261,   265,   266,   267,   268,   278,   279,   nil,   nil,
-   269,   270,   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,
-    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
-   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
-   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,    11,    52,   335,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   261,   265,   266,   267,   268,
-   278,   279,   273,   nil,   269,   270,   nil,   nil,   nil,   nil,
-   nil,   271,   272,   nil,    44,   nil,   nil,    37,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
-    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,   333,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   335,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,    44,   nil,
-   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    39,   258,   nil,   264,    51,   260,   259,   256,   257,   nil,
-   nil,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   271,
-   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
-   259,   256,   257,   nil,   nil,   262,    23,   263,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    52,   335,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
-   nil,   264,    51,   260,   259,   256,   257,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,
-   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   261,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,
-    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
-   257,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,
-   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    52,    10,    13,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,    39,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -457,   114,
-   115,   nil,   nil,    45,    46,  -457,  -457,  -457,   nil,   nil,
-  -457,  -457,  -457,   603,  -457,   600,   599,   598,   608,   601,
-   nil,   nil,  -457,  -457,  -457,  -457,   nil,   nil,   nil,   611,
-   nil,   nil,   nil,   nil,  -457,  -457,   nil,  -457,  -457,  -457,
-  -457,  -457,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   606,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   616,   615,   619,   618,   nil,  -457,  -457,  -457,  -457,  -457,
-  -457,  -457,  -457,  -457,  -457,  -457,  -457,  -457,  -457,   nil,
-   nil,  -457,  -457,  -457,   nil,   nil,  -457,   nil,   304,  -457,
-   nil,   nil,  -457,  -457,   nil,  -457,   612,  -457,   nil,  -457,
-   nil,  -457,  -457,  -457,  -457,  -457,  -457,  -457,   nil,  -457,
-  -457,  -457,   603,   nil,   600,   599,   598,   608,   601,   nil,
-   nil,   nil,   nil,   nil,  -457,  -457,   nil,  -457,   611,  -457,
-  -329,   nil,   nil,   nil,   nil,   nil,  -457,  -329,  -329,  -329,
-  -457,   nil,  -329,  -329,  -329,   nil,  -329,   nil,   nil,   nil,
-   606,   nil,   nil,   nil,  -329,   nil,  -329,  -329,   nil,   616,
-   615,   619,   618,   nil,   nil,   nil,  -329,  -329,   nil,  -329,
-  -329,  -329,  -329,  -329,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   612,   nil,  -329,  -329,  -329,
-  -329,  -329,  -329,  -329,  -329,  -329,  -329,  -329,  -329,  -329,
-  -329,   nil,   nil,  -329,  -329,  -329,   nil,   nil,  -329,   nil,
-   314,  -329,   nil,   nil,  -329,  -329,   nil,  -329,   nil,  -329,
-   nil,  -329,   nil,  -329,  -329,  -329,  -329,  -329,  -329,  -329,
-   nil,  -329,   nil,  -329,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  -329,  -329,   nil,  -329,
-   nil,  -329,    89,    90,    91,   nil,    82,   nil,  -329,   nil,
-    83,    84,  -329,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   326,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   323,   nil,
-   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   326,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   323,   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   326,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   323,   nil,   321,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   327,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
-   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
-   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   354,   355,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -312,
-   114,   115,   nil,   nil,    45,    46,  -312,  -312,  -312,   nil,
-   nil,  -312,  -312,  -312,   603,  -312,   600,   599,   598,   608,
-   601,   nil,   nil,  -312,   nil,  -312,  -312,  -312,   nil,   nil,
-   611,   122,   121,   123,   124,  -312,  -312,   nil,  -312,  -312,
-  -312,  -312,  -312,   nil,   nil,   nil,   nil,   126,   125,   127,
-   nil,   nil,   606,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   112,   113,   nil,   619,   618,   358,  -312,  -312,  -312,  -312,
-  -312,  -312,  -312,  -312,  -312,  -312,  -312,  -312,  -312,  -312,
-   nil,   nil,  -312,  -312,  -312,   nil,   nil,  -312,   nil,   nil,
-  -312,   nil,   nil,  -312,  -312,   nil,  -312,   612,  -312,   nil,
-  -312,   nil,  -312,  -312,  -312,  -312,  -312,  -312,  -312,   nil,
-  -312,   nil,  -312,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,  -312,  -312,  -312,  -312,   nil,
-  -312,    93,  -312,   nil,    97,   104,   106,  -312,   114,   115,
-  -773,  -312,    89,    90,    91,    12,    82,  -773,  -773,  -773,
-    83,    84,  -773,  -773,  -773,    87,  -773,    85,    86,    88,
-    34,    35,    80,    81,  -773,  -773,  -773,  -773,   nil,    92,
-    32,    31,   122,   121,   123,   124,  -773,  -773,    22,  -773,
-  -773,  -773,  -773,  -773,    11,    52,   nil,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,  -773,  -773,  -773,
-  -773,  -773,  -773,  -773,  -773,  -773,  -773,  -773,  -773,  -773,
-  -773,   nil,   nil,  -773,  -773,  -773,    44,   nil,  -773,    37,
-   304,  -773,    67,    68,  -773,  -773,    69,  -773,    39,  -773,
-   nil,  -773,    51,  -773,  -773,  -773,  -773,  -773,  -773,  -773,
-    23,  -773,  -773,  -773,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,  -773,  -773,   nil,  -773,
-   nil,  -773,    93,   nil,   nil,    97,   104,   106,  -773,   114,
-   115,   nil,  -773,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
-    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
-    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   134,   nil,   nil,   nil,   nil,
-   133,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-    22,   nil,   nil,   nil,   nil,   nil,    11,    52,    10,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
-   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    39,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   433,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
-   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
-   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    32,    31,   122,   121,   123,   124,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,
-   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,    11,    52,   nil,    13,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,    39,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   450,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   450,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
-    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
-    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   326,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   323,   nil,   321,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    32,    31,   122,   121,   123,   124,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   239,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
-   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
-   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   354,   355,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
-   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
-   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   354,   355,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
-    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
-    31,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   326,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   323,   nil,   321,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,   535,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   326,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   323,   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   326,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   323,   nil,   321,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   239,   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,    11,    52,   nil,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,    37,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   582,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
-   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
-   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   326,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   323,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   326,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
-   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,  -751,   114,   115,   nil,
-   nil,    45,    46,  -751,  -751,  -751,   nil,   nil,  -751,  -751,
-  -751,   603,  -751,   600,   599,   598,   608,   601,   nil,   nil,
-  -751,  -751,  -751,  -751,  -751,   nil,   nil,   611,   nil,   nil,
-   nil,   nil,  -751,  -751,   nil,  -751,  -751,  -751,  -751,  -751,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   606,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   616,   615,
-   619,   618,   nil,  -751,  -751,  -751,  -751,  -751,  -751,  -751,
-  -751,  -751,  -751,  -751,  -751,  -751,  -751,   nil,   nil,  -751,
-  -751,  -751,   nil,   nil,  -751,   nil,   nil,  -751,   nil,   nil,
-  -751,  -751,   nil,  -751,   612,  -751,   nil,  -751,   nil,  -751,
-  -751,  -751,  -751,  -751,  -751,  -751,   nil,  -751,  -751,  -751,
-   603,   nil,   600,   599,   598,   608,   601,   nil,   nil,   nil,
-   nil,   nil,  -751,  -751,  -751,  -751,   611,  -751,  -752,  -751,
-   nil,   nil,   nil,   nil,  -751,  -752,  -752,  -752,  -751,   nil,
-  -752,  -752,  -752,   nil,  -752,   nil,   nil,   nil,   606,   nil,
-   nil,   nil,  -752,  -752,  -752,  -752,  -752,   nil,   nil,   619,
-   618,   nil,   nil,   nil,  -752,  -752,   nil,  -752,  -752,  -752,
-  -752,  -752,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   612,   nil,  -752,  -752,  -752,  -752,  -752,
-  -752,  -752,  -752,  -752,  -752,  -752,  -752,  -752,  -752,   nil,
-   nil,  -752,  -752,  -752,   nil,   nil,  -752,   nil,   nil,  -752,
-   nil,   nil,  -752,  -752,   nil,  -752,   nil,  -752,   nil,  -752,
-   nil,  -752,  -752,  -752,  -752,  -752,  -752,  -752,   nil,  -752,
-  -752,  -752,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -752,  -752,  -752,  -752,   nil,  -752,
-   nil,  -752,   nil,    89,    90,    91,  -752,    82,   nil,   nil,
-  -752,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    32,    31,   122,   121,   123,   124,   nil,   nil,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   326,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   323,
-   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   109,   324,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   327,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
-   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,  -773,   114,   115,   nil,   nil,    45,    46,  -773,  -773,
-  -773,   nil,   nil,  -773,  -773,  -773,   nil,  -773,   122,   121,
-   123,   124,   nil,   nil,   nil,  -773,  -773,  -773,   nil,   nil,
-   nil,   nil,   nil,   nil,   126,   125,   127,  -773,  -773,   nil,
-  -773,  -773,  -773,  -773,  -773,   nil,   nil,   112,   113,   nil,
-   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   603,   nil,
-   600,   599,   598,   608,   601,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   611,   nil,   nil,   nil,   nil,  -773,
-   nil,   nil,   nil,   nil,   nil,   nil,  -773,   nil,   nil,   nil,
-   nil,   304,  -773,   nil,   nil,   nil,   606,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   619,   618,   nil,
-   100,   110,   nil,  -773,  -773,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,  -773,   nil,    89,
-    90,    91,  -773,    82,   nil,   nil,   nil,    83,    84,  -773,
-   nil,   612,    87,  -773,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   326,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   768,   nil,
-   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   326,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
-    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
-    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,    11,    52,   335,    13,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,    37,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,    39,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   433,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   326,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   323,   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   354,   355,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    32,    31,   122,   121,   123,   124,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   326,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   323,   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
-    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
-    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,    11,    52,   nil,    13,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,    37,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,    39,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   878,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   326,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   323,   nil,   321,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   327,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,    12,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    32,    31,   122,   121,   123,   124,   nil,   nil,    22,
-   nil,   nil,   nil,   nil,   nil,    11,    52,   nil,    13,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,
-    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   326,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   768,   nil,   321,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,   324,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   327,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   326,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
-    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
-    31,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   354,   355,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   326,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   768,   nil,   321,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,   535,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   450,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   326,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   768,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   326,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   998,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
-    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
-    31,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   326,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   323,   nil,   321,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
-   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
-    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
-    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
-   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
-   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
-    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
-    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   326,   120,   128,   129,   nil,   112,
-   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   321,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
-   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   327,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
-   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
-    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,  1179,   nil,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,
-   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,
-   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
-   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   326,   120,   128,   129,   nil,   112,   113,   nil,
-    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   323,   nil,   321,   nil,    51,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
-   nil,   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   327,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
-    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
-   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
-   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,   350,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,
-   nil,   603,   nil,   600,   599,   598,   608,   601,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   346,   nil,   611,   342,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   341,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   606,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   619,   618,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   612,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,   350,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,
-   603,   nil,   600,   599,   598,   608,   601,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   346,   nil,   611,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   606,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   619,
-   618,   nil,   100,   110,   nil,   nil,   nil,   360,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   612,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,   350,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   603,
-   nil,   600,   599,   598,   608,   601,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   398,   nil,   611,    37,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,    39,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   606,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   619,   618,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   612,    85,    86,    88,   354,   355,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,   350,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   603,   nil,
-   600,   599,   598,   608,   601,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   346,   nil,   611,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   606,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   619,   618,   nil,
-   100,   110,   nil,   nil,   nil,   564,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   612,    85,    86,    88,   354,   355,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
-   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
-   350,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,
-   nil,   358,   nil,   nil,   nil,   nil,   nil,   603,   nil,   600,
-   599,   598,   608,   601,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   346,   nil,   611,   342,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   606,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   619,   618,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   612,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
-   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,   350,
-   nil,   nil,   126,   125,   127,   652,    65,   118,   117,   653,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
-   358,   nil,   nil,   nil,   nil,   nil,   603,   nil,   600,   599,
-   598,   608,   601,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   654,   nil,   611,   250,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   606,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   619,   618,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   612,
-    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
-   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,   350,   nil,
-   nil,   126,   125,   127,   652,    65,   118,   117,   653,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   358,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   654,
-   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
-   251,   nil,   nil,   nil,   nil,   nil,   nil,   350,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,   nil,   nil,   358,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   346,   nil,
-   nil,   342,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
-   nil,   nil,   nil,   nil,   nil,   nil,   350,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   346,   nil,   nil,
-   342,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
-   nil,   nil,   nil,   nil,   nil,   350,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   346,   nil,   nil,   342,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
-   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
-   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
-   nil,   nil,   nil,   nil,   350,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   346,   nil,   nil,   342,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
-   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
-   nil,   nil,   nil,   350,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1157,   nil,   nil,   250,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
-   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
-   nil,   nil,   350,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1164,   nil,   nil,   250,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
-   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
-   nil,   350,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1157,   nil,   nil,   250,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   192,   203,   193,
-   216,   189,   209,   199,   198,   219,   220,   214,   197,   196,
-   191,   217,   221,   222,   201,   190,   204,   208,   210,   202,
-   195,   nil,   nil,   nil,   211,   218,   213,   212,   205,   215,
-   200,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,   187,
-   194,   185,   186,   182,   183,   184,   145,   147,   144,   nil,
-   146,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   nil,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   109,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,
-   192,   203,   193,   216,   189,   209,   199,   198,   219,   220,
-   214,   197,   196,   191,   217,   221,   222,   201,   190,   204,
-   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,   213,
-   212,   205,   215,   200,   188,   207,   206,   nil,   nil,   nil,
-   nil,   nil,   187,   194,   185,   186,   182,   183,   184,   145,
-   147,   nil,   nil,   146,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,   164,
-   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
-   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
-   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
-   nil,   nil,   181,   109,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   174,   192,   203,   193,   216,   189,   209,   199,
-   198,   219,   220,   214,   197,   196,   191,   217,   221,   222,
-   201,   190,   204,   208,   210,   202,   195,   nil,   nil,   nil,
-   211,   218,   213,   291,   290,   292,   289,   188,   207,   206,
-   nil,   nil,   nil,   nil,   nil,   187,   194,   185,   186,   286,
-   287,   288,   284,   147,   118,   117,   285,   nil,   120,   nil,
-   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,
-   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
-   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
-   nil,   296,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
-   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   174,   192,   203,   193,   216,
-   189,   209,   199,   198,   219,   220,   214,   197,   196,   191,
-   217,   221,   222,   201,   190,   204,   208,   210,   202,   195,
-   nil,   nil,   nil,   211,   218,   213,   212,   205,   215,   200,
-   188,   207,   206,   nil,   nil,   nil,   nil,   nil,   187,   194,
-   185,   186,   182,   183,   184,   145,   147,   430,   429,   146,
-   nil,   431,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
-   nil,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
-   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
-   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,
-   203,   193,   216,   189,   209,   199,   198,   219,   220,   214,
-   197,   196,   191,   217,   221,   222,   201,   190,   204,   208,
-   210,   202,   195,   nil,   nil,   nil,   211,   218,   213,   212,
-   205,   215,   200,   188,   207,   206,   nil,   nil,   nil,   nil,
-   nil,   187,   194,   185,   186,   182,   183,   184,   145,   147,
-   nil,   nil,   146,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   177,   178,   nil,   173,   155,   156,   157,   164,   161,
-   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
-   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
-   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
-   nil,   181,   109,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   110,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   174,   192,   203,   193,   216,   189,   209,   199,   198,
-   219,   220,   214,   197,   196,   191,   217,   221,   222,   201,
-   190,   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,
-   218,   213,   212,   205,   215,   200,   188,   207,   206,   nil,
-   nil,   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,
-   184,   145,   147,   nil,   nil,   146,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,
-   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
-   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
-   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
-   175,   153,   nil,   nil,   181,   109,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,
-   209,   199,   198,   219,   220,   214,   197,   196,   191,   217,
-   221,   222,   201,   190,   204,   208,   210,   202,   195,   nil,
-   nil,   nil,   211,   218,   213,   212,   205,   215,   200,   188,
-   207,   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,
-   186,   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,   126,   125,
-   127,   745,   nil,   nil,   nil,   748,   nil,   nil,   nil,   nil,
-   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   747,   nil,   nil,   729,
-   nil,   nil,   nil,   727,   nil,   nil,   728,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   746,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,   733,   734,   122,   121,   123,   124,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   126,   125,   127,   745,   nil,   nil,   nil,   748,   nil,
-   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   358,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   747,
-   nil,   nil,   729,   nil,   nil,   nil,   727,   nil,   nil,   728,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   746,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,   733,   734,   122,   121,
-   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   126,   125,   127,   745,   nil,   nil,
-   nil,   748,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,
-   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   747,   nil,   nil,   729,   nil,   nil,   nil,   727,
-   nil,   nil,   728,   nil,   919,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   746,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   239,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,   733,
-   734,   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
-   745,   nil,   nil,   nil,   748,   nil,   nil,   nil,   nil,   nil,
-   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   747,   nil,   nil,   729,   nil,
-   nil,   nil,   727,   nil,   nil,   728,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   746,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,   733,   734,   122,   121,   123,   124,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   126,   125,   127,   745,   nil,   nil,   nil,   748,  1039,   nil,
-   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   358,   611,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   747,   nil,
-   nil,   729,   nil,   nil,   nil,   727,   nil,   nil,   728,   nil,
-   919,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   746,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   612,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,   733,   734,   122,   121,   123,
-   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   126,   125,   127,   745,   nil,   nil,   nil,
-   748,  1039,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   358,   611,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   747,   nil,   nil,   729,   nil,   nil,   nil,   727,   nil,
-   nil,   728,   nil,   919,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   746,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   612,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,   733,   734,
-   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   745,
-   nil,   nil,   nil,   748,   nil,   nil,   nil,   nil,   nil,   112,
-   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   747,   nil,   nil,   729,   nil,   nil,
-   nil,   727,   nil,   nil,   728,   nil,  1051,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   746,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,   733,   734,   122,   121,   123,   124,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
-   125,   127,   745,   nil,   nil,   nil,   748,   nil,   nil,   nil,
-   nil,   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   747,   nil,   nil,
-   729,   nil,   nil,   nil,   727,   nil,   nil,   728,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   746,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,   733,   734,   122,   121,   123,   124,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   126,   125,   127,   745,   nil,   nil,   nil,   748,
-  1039,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
-   358,   611,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   747,   nil,   nil,   729,   nil,   nil,   nil,   727,   nil,   nil,
-   728,   nil,   919,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   746,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   612,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,   733,   734,   122,
-   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   745,   nil,
-   nil,   nil,   748,   nil,   nil,   nil,   nil,   nil,   112,   113,
-   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   747,   nil,   nil,   729,   nil,   nil,   nil,
-   727,   nil,   nil,   728,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   746,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-   733,   734,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
-   127,   745,   nil,   nil,   nil,   748,   nil,   nil,   nil,   nil,
-   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   747,   nil,   nil,   729,
-   nil,   nil,   nil,   727,   nil,   nil,   728,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   746,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,   733,   734,   122,   121,   123,   124,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   126,   125,   127,   745,   nil,   nil,   nil,   748,   nil,
-   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   358,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   747,
-   nil,   nil,   729,   nil,   nil,   nil,   727,   nil,   nil,   728,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   746,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,   733,   734,   122,   121,
-   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   126,   125,   127,   745,   nil,   nil,
-   nil,   748,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,
-   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   747,   nil,   nil,   729,   nil,   nil,   nil,   727,
-   nil,   nil,   728,   nil,   919,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   746,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,   733,
-   734,   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
-   745,   nil,   nil,   nil,   748,   nil,   nil,   nil,   nil,   nil,
-   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   747,   nil,   nil,   729,   nil,
-   nil,   nil,   727,   nil,   nil,   728,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   746,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,   733,   734,   122,   121,   123,   124,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   126,   125,   127,   745,   nil,   nil,   nil,   748,   nil,   nil,
-   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   358,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   747,   nil,
-   nil,   729,   nil,   nil,   nil,   727,   nil,   nil,   728,   nil,
-   919,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   746,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,   733,   734,   122,   121,   123,
-   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   126,   125,   127,   745,   nil,   nil,   nil,
-   748,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   747,   nil,   nil,   729,   nil,   nil,   nil,   727,   nil,
-   nil,   728,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   746,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,   733,   734,
-   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   745,
-   nil,   nil,   nil,   748,   nil,   nil,   nil,   nil,   nil,   112,
-   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   747,   nil,   nil,   729,   126,   125,
-   127,   727,   nil,   nil,   728,   nil,   nil,   nil,   nil,   nil,
-   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   746,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,   733,   734,   nil,   nil,   603,   nil,   600,   599,   598,
-   608,   601,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   611,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   603,   606,   600,   599,   598,   608,   601,   nil,
-   nil,   nil,   616,   615,   619,   618,   nil,   nil,   611,   603,
-   nil,   600,   599,   598,   608,   601,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   611,   nil,   nil,   nil,   nil,
-   606,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   612,   616,
-   615,   619,   618,   nil,   nil,   nil,   nil,   606,   597,   nil,
-   nil,   473,   477,   nil,   nil,   474,   616,   615,   619,   618,
-   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,
-   157,   164,   161,   163,   nil,   612,   158,   159,   nil,   nil,
-   nil,   179,   180,   165,   166,   597,   nil,   nil,   nil,   nil,
-   304,   nil,   612,   nil,   nil,   nil,   nil,   nil,   170,   169,
-   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
-   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   480,
-   484,   nil,   nil,   479,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
-   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
-   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
-   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
-   nil,   nil,   181,   nil,   nil,   nil,   nil,   531,   477,   nil,
-   nil,   532,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
-   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
-   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
-   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
-   181,   nil,   nil,   nil,   nil,   716,   477,   nil,   nil,   717,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
-   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
-   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
-   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
-   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
-   nil,   nil,   nil,   718,   484,   nil,   nil,   719,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
-   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
-   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
-   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
-   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
-   nil,   779,   477,   nil,   nil,   780,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
-   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
-   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
-   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
-   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
-   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   782,
-   484,   nil,   nil,   783,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
-   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
-   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
-   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
-   nil,   nil,   181,   nil,   nil,   nil,   nil,   716,   477,   nil,
-   nil,   717,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
-   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
-   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
-   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
-   181,   nil,   nil,   nil,   nil,   718,   484,   nil,   nil,   719,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
-   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
-   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
-   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
-   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
-   nil,   nil,   nil,   849,   477,   nil,   nil,   850,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
-   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
-   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
-   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
-   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
-   nil,   851,   484,   nil,   nil,   852,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
-   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
-   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
-   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
-   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
-   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   880,
-   477,   nil,   nil,   881,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
-   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
-   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
-   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
-   nil,   nil,   181,   nil,   nil,   nil,   nil,   883,   484,   nil,
-   nil,   882,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
-   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
-   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
-   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
-   181,   nil,   nil,   nil,   nil,  1002,   484,   nil,   nil,  1003,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
-   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
-   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
-   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
-   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
-   nil,   nil,   nil,   531,   477,   nil,   nil,   532,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
-   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
-   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
-   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
-   160,   152,   175,   153,   nil,   603,   181,   600,   599,   598,
-   608,   601,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   611,   nil,   nil,   nil,   nil,   174,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   606,  1248,   484,   nil,   nil,  1247,   nil,
-   nil,   nil,   616,   615,   619,   618,   nil,   177,   178,   nil,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   612,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,  1251,   477,   nil,   nil,  1252,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
-   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
-   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
-   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
-   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
-  1253,   484,   nil,   nil,  1254,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
-   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
-   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   304,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
-   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
-   153,   nil,   603,   181,   600,   599,   598,   608,   601,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   611,   nil,
-   nil,   nil,   nil,   174,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   606,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   616,
-   615,   619,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   612 ]
-
-racc_action_check = [
-   116,   421,   424,    70,   387,   395,   756,   116,   116,   116,
-   489,   489,   116,   116,   116,   779,   116,   396,  1051,   780,
-   388,  1081,   752,   752,   116,   911,   116,   116,   116,   789,
-   789,   654,     1,   613,  1040,   654,   116,   116,    28,   116,
-   116,   116,   116,   116,   774,    28,   728,  1102,   399,   782,
-   650,   613,  1040,   849,   850,  1105,   747,  1107,     3,   728,
-   747,   774,   865,   950,   421,   424,   911,   116,   116,   116,
-   116,   116,   116,   116,   116,   116,   116,   116,   116,   116,
-   116,   999,   779,   116,   116,   116,   780,   116,   116,   640,
-    70,   116,  1000,   756,   116,   116,  1051,   116,  1107,   116,
-   489,   116,    28,   116,   116,   116,   116,   116,   116,   116,
-   395,   116,   752,   116,   920,   782,   782,   779,   387,   789,
-   779,   780,   396,   387,   780,   920,   116,   116,   116,   116,
-   950,   116,  1161,   116,   388,  1081,   119,   779,   116,   388,
-  1081,   780,   116,   119,   119,   119,   116,  1162,   119,   119,
-   119,   782,   119,   399,   782,   650,  1165,  1213,   849,   850,
-   119,  1102,   119,   119,   119,   950,  1102,   865,   950,  1105,
-  1251,   782,   119,   119,  1105,   119,   119,   119,   119,   119,
-  1252,  1253,  1128,  1265,    13,   950,   851,   852,   754,   640,
-    30,   242,   920,  1128,   640,   999,   412,  1000,   999,   412,
-   999,   907,    22,   119,   119,   119,   119,   119,   119,   119,
-   119,   119,   119,   119,   119,   119,   119,    53,   351,   119,
-   119,   119,   754,   119,   119,    47,    47,   119,   358,   358,
-   119,   119,   907,   119,   243,   119,    15,   119,    22,   119,
-   119,   119,   119,   119,   119,   119,  1161,   119,  1254,   119,
-   242,  1161,   851,   852,    54,    30,   552,   412,   412,  1253,
-  1128,  1162,   119,   119,   119,   119,  1162,   119,   675,   119,
-  1165,  1213,   479,    53,   119,  1165,  1213,    30,   119,   479,
-   479,   479,   119,   351,  1251,   479,   479,   800,   479,  1251,
-  1142,   851,   852,   243,  1252,  1253,   479,  1265,   800,  1252,
-  1253,  1142,  1265,    47,    47,   351,   358,   358,   479,   479,
-    54,   479,   479,   479,   479,   479,   791,   552,   552,   552,
-    19,   283,   791,   245,   944,   678,  1254,    19,   283,   675,
-   675,   800,   800,    16,  1142,  1142,    19,   552,   675,   479,
-   479,   479,   479,   479,   479,   479,   479,   479,   479,   479,
-   479,   479,   479,    18,   457,   479,   479,   479,   944,   479,
-   479,   495,  1254,   479,   716,   800,   479,  1254,  1142,    20,
-    42,   479,  1180,   479,  1180,   479,   479,   479,   479,   479,
-   479,   479,   245,   479,    19,   479,   678,   678,   377,    55,
-   377,   377,   377,   377,   377,   678,    55,   717,   479,   479,
-    43,   479,    26,   479,   377,    55,   408,   880,   480,  1257,
-   479,    20,    42,   457,   479,   480,   480,   480,   479,  1257,
-   495,   480,   480,   716,   480,    41,   377,   284,    20,    42,
-   362,   473,   480,   480,   284,   377,   377,   377,   377,   241,
-    17,    17,    43,   410,   480,   480,   241,   480,   480,   480,
-   480,   480,    96,    55,   343,   241,   717,   285,   344,    43,
-    96,   343,   415,    44,   285,   344,   880,   408,   408,   408,
-   343,   377,   362,   473,   344,   480,   480,   480,   480,   480,
-   480,   480,   480,   480,   480,   480,   480,   480,   480,   362,
-   473,   480,   480,   480,   286,   480,   480,   386,   386,   480,
-   418,   286,   480,   241,   410,   410,   410,   480,   881,   480,
-    52,   480,   480,   480,   480,   480,   480,   480,   343,   480,
-   480,   480,   344,   415,   415,   415,   406,    78,   406,   406,
-   406,   406,   406,   345,   480,   480,   474,   480,   287,   480,
-   345,   426,   406,   103,   718,   287,   480,   903,   700,   345,
-   480,   718,   718,   718,   480,   910,   718,   718,   718,   910,
-   718,   418,   418,   418,   406,   406,  1023,   881,   718,   718,
-   718,   718,   718,   406,   406,   406,   406,   104,   474,   105,
-   718,   718,   347,   718,   718,   718,   718,   718,     5,   347,
-   700,   726,   288,     5,   363,   474,   726,   345,   347,   288,
-   726,   363,   426,   426,   426,   629,   903,   700,   629,   406,
-   363,   718,   718,   718,   718,   718,   718,   718,   718,   718,
-   718,   718,   718,   718,   718,  1023,   643,   718,   718,   718,
-   289,   718,   718,   290,   643,   718,   106,   289,   718,   718,
-   290,   718,   142,   718,   223,   718,   347,   718,   718,   718,
-   718,   718,   718,   718,   291,   718,   718,   718,   363,   244,
-   630,   291,   662,   630,   662,   662,   662,   662,   662,   397,
-   718,   718,   718,   718,   292,   718,   397,   718,   662,   330,
-   719,   292,   718,   246,   330,   397,   718,   719,   719,   719,
-   718,   247,   719,   719,   719,   503,   719,   144,   456,   251,
-   662,   303,   144,   144,   719,   456,   719,   719,   719,   662,
-   662,   662,   662,   318,   456,   319,   719,   719,   569,   719,
-   719,   719,   719,   719,   392,   569,   322,   503,   656,   392,
-   783,   503,   503,   397,   569,   656,   621,   783,  1008,   730,
-   730,   621,   783,  1008,   656,   662,   783,   719,   719,   719,
-   719,   719,   719,   719,   719,   719,   719,   719,   719,   719,
-   719,  1117,   456,   719,   719,   719,  1117,   719,   719,    50,
-    50,   719,   336,   634,   719,   719,   634,   719,   338,   719,
-   339,   719,   569,   719,   719,   719,   719,   719,   719,   719,
-   340,   719,   656,   719,   783,   346,   804,   349,   804,   804,
-   804,   804,   804,   855,    50,    50,   719,   719,   719,   719,
-   855,   719,   804,   719,   985,   350,   882,   985,   719,   855,
-   803,   803,   719,   882,   882,   882,   719,   352,  1057,   882,
-   882,  1057,   882,  1186,   804,   606,  1186,   606,   606,   606,
-   882,   606,   353,   804,   804,   804,   804,     9,     9,     9,
-     9,     9,   882,   882,  1003,   882,   882,   882,   882,   882,
-   357,  1003,  1156,   359,  1163,   366,  1003,   855,   368,  1156,
-  1003,  1163,   372,   606,   835,   835,   504,   374,  1156,   804,
-  1163,   378,   606,   882,   882,   882,   882,   882,   882,   882,
-   882,   882,   882,   882,   882,   882,   882,   863,   863,   882,
-   882,   882,   382,   882,   882,  1106,  1106,   882,   504,   393,
-   882,   394,   504,   504,   398,   882,   400,   882,  1003,   882,
-   882,   882,   882,   882,   882,   882,  1156,   882,  1163,   882,
-  1220,  1220,   806,  1205,   806,   806,   806,   806,   806,   414,
-  1205,   417,   882,   882,   420,   882,   423,   882,   806,  1205,
-   446,   448,   883,   449,   882,   451,   454,   458,   882,   883,
-   883,   883,   882,   468,   471,   883,   883,   518,   883,   810,
-   806,   810,   810,   810,   472,   810,   883,   883,   481,   491,
-   505,   806,   806,   506,   733,   733,   733,   733,   883,   883,
-   507,   883,   883,   883,   883,   883,   508,  1205,   528,   518,
-   733,   733,   733,   518,   518,   518,   518,   810,   334,   334,
-   334,   334,   334,   733,   733,   806,   810,   536,   733,   883,
-   883,   883,   883,   883,   883,   883,   883,   883,   883,   883,
-   883,   883,   883,   537,   538,   883,   883,   883,   542,   883,
-   883,   558,   559,   883,   867,   867,   883,   560,   867,   867,
-   867,   883,   563,   883,   565,   883,   883,   883,   883,   883,
-   883,   883,   570,   883,   883,   883,   574,   733,   733,   733,
-   733,   733,   733,   584,   585,   588,   733,   733,   883,   883,
-   589,   883,   590,   883,   733,   591,   592,   733,   733,   733,
-   883,   733,   733,   594,   883,   595,   605,   617,   883,     2,
-     2,     2,     2,     2,     2,   620,   622,   624,     2,     2,
-   625,   626,   652,     2,   653,     2,     2,     2,     2,     2,
-     2,     2,   381,   381,   381,   381,   381,     2,     2,     2,
-     2,     2,     2,     2,   631,   980,     2,   980,   980,   980,
-   632,   980,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,   635,     2,     2,     2,   637,     2,
-     2,   641,     2,     2,     2,   652,   642,   653,   644,   658,
-   682,   685,   652,   980,   653,   692,   701,   652,   706,   653,
-   712,   652,   980,   653,     2,   720,   721,     2,   511,   723,
-     2,     2,   746,   749,     2,   750,     2,   755,   761,   652,
-     2,   653,   763,   765,   511,   511,   767,   776,     2,   778,
-   781,   784,   785,     2,     2,     2,     2,     2,     2,   788,
-   511,   812,     2,     2,   511,   511,   511,   511,   813,   652,
-     2,   653,   815,     2,     2,     2,   837,     2,     2,   843,
-   844,     2,     2,    37,    37,    37,    37,    37,    37,   848,
-   866,   874,    37,    37,   877,   879,  1002,    37,   888,    37,
-    37,    37,    37,    37,    37,    37,   557,   557,   557,   557,
-   557,    37,    37,    37,    37,    37,    37,    37,   904,   906,
-    37,   519,   912,   913,   917,   918,    37,    37,    37,    37,
-    37,    37,    37,    37,    37,    37,    37,    37,   919,    37,
-    37,    37,   922,    37,    37,   941,    37,    37,    37,  1002,
-   942,   949,   960,   519,   961,   964,  1002,   519,   519,   519,
-   519,  1002,   966,   967,   969,  1002,   971,   973,    37,   974,
-   976,    37,   979,   986,    37,    37,   992,  1001,    37,  1005,
-    37,  1009,  1013,  1002,    37,   981,  1014,   981,   981,   981,
-  1020,   981,    37,  1022,  1032,  1033,  1034,    37,    37,    37,
-    37,    37,    37,  1035,  1043,  1044,    37,    37,  1045,  1049,
-  1050,  1055,  1061,  1002,    37,  1062,  1064,    37,    37,    37,
-  1065,    37,    37,   981,  1066,    37,    37,   225,   225,   225,
-   225,   225,   225,  1068,  1069,  1070,   225,   225,  1097,  1098,
-  1116,   225,  1120,   225,   225,   225,   225,   225,   225,   225,
-    24,  1121,  1129,  1136,  1138,   225,   225,   225,   225,   225,
-   225,   225,  1154,   814,   225,   814,   814,   814,  1157,   814,
-   225,   225,   225,   225,   225,   225,   225,   225,   225,   225,
-   225,   225,  1159,   225,   225,   225,  1164,   225,   225,  1167,
-   225,   225,   225,    24,    24,    24,    24,    24,    24,    24,
-    24,    24,    24,    24,  1168,    24,    24,  1169,  1170,    24,
-    24,  1193,   225,  1195,    24,   225,  1198,  1199,   225,   225,
-  1200,  1201,   225,  1203,   225,    24,  1209,    24,   225,    24,
-    24,    24,    24,    24,    24,    24,   225,    24,  1219,  1225,
-  1230,   225,   225,   225,   225,   225,   225,  1233,  1247,  1248,
-   225,   225,  1250,    24,  1255,  1261,  1262,  1263,   225,  1264,
-  1270,   225,   225,   225,  1276,   225,   225,   nil,   nil,   225,
-   225,   250,   250,   250,   250,   250,   250,   nil,   nil,   nil,
-   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,   461,   250,   250,   250,   250,   250,   250,
-   250,   250,   250,   250,   250,   250,   nil,   250,   250,   250,
-   nil,   250,   250,   nil,   250,   250,   250,   461,   461,   461,
-   461,   461,   461,   461,   461,   461,   461,   461,   nil,   461,
-   461,   nil,   nil,   461,   461,   nil,   250,   nil,   nil,   250,
-   nil,   nil,   250,   250,   nil,   nil,   250,   nil,   250,   461,
-   nil,   461,   250,   461,   461,   461,   461,   461,   461,   461,
-   250,   461,   nil,   nil,   nil,   250,   250,   250,   250,   250,
-   250,   nil,   nil,   nil,   250,   250,   nil,   461,   nil,   461,
-   nil,   nil,   250,   nil,   nil,   250,   250,   250,   nil,   250,
-   250,   nil,   nil,   250,   250,   337,   337,   337,   337,   337,
-   337,   nil,   nil,   nil,   337,   337,   nil,   nil,   nil,   337,
-   nil,   337,   337,   337,   337,   337,   337,   337,   nil,   nil,
-   nil,   nil,   nil,   337,   337,   337,   337,   337,   337,   337,
-   nil,   nil,   337,   nil,   nil,   nil,   nil,   467,   337,   337,
-   337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
-   nil,   337,   337,   337,   nil,   337,   337,   nil,   337,   337,
-   337,   467,   467,   467,   467,   467,   467,   467,   467,   467,
-   467,   467,   nil,   467,   467,   nil,   nil,   467,   467,   nil,
-   337,   nil,   nil,   337,   nil,   nil,   337,   337,   nil,   nil,
-   337,   nil,   337,   467,   nil,   467,   337,   467,   467,   467,
-   467,   467,   467,   467,   337,   467,   nil,   nil,   nil,   337,
-   337,   337,   337,   337,   337,   nil,   nil,   nil,   337,   337,
-   nil,   467,   nil,   nil,   nil,   nil,   337,   nil,   nil,   337,
-   337,   337,   nil,   337,   337,   nil,   nil,   337,   337,   342,
-   342,   342,   342,   342,   342,   nil,   nil,   nil,   342,   342,
-   nil,   nil,   nil,   342,   nil,   342,   342,   342,   342,   342,
-   342,   342,   nil,   nil,   nil,   nil,   nil,   342,   342,   342,
-   342,   342,   342,   342,   nil,   nil,   342,   nil,   nil,   nil,
-   nil,   790,   342,   342,   342,   342,   342,   342,   342,   342,
-   342,   342,   342,   342,   nil,   342,   342,   342,   nil,   342,
-   342,   nil,   342,   342,   342,   790,   790,   790,   790,   790,
-   790,   790,   790,   790,   790,   790,   nil,   790,   790,   nil,
-   nil,   790,   790,   nil,   342,   nil,   nil,   342,   nil,   nil,
-   342,   342,   nil,   nil,   342,   nil,   342,   790,   nil,   790,
-   342,   790,   790,   790,   790,   790,   790,   790,   342,   790,
-   nil,   nil,   nil,   342,   342,   342,   342,   342,   342,   nil,
-   nil,   nil,   342,   342,   nil,   790,   nil,   nil,   nil,   nil,
-   342,   nil,   nil,   342,   342,   342,   nil,   342,   342,   nil,
-   nil,   342,   342,   373,   373,   373,   373,   373,   373,   nil,
-   nil,   nil,   373,   373,   nil,   nil,   nil,   373,   nil,   373,
-   373,   373,   373,   373,   373,   373,   nil,   nil,   nil,   nil,
-   nil,   373,   373,   373,   373,   373,   373,   373,   nil,   nil,
-   373,   nil,   nil,   nil,   nil,   823,   373,   373,   373,   373,
-   373,   373,   373,   373,   373,   373,   373,   373,   nil,   373,
-   373,   373,   nil,   373,   373,   nil,   373,   373,   373,   823,
-   823,   823,   823,   823,   823,   823,   823,   823,   823,   823,
-   nil,   823,   823,   nil,   nil,   823,   823,   nil,   373,   nil,
-   nil,   373,   nil,   nil,   373,   373,   nil,   nil,   373,   nil,
-   373,   823,   nil,   823,   373,   823,   823,   823,   823,   823,
-   823,   823,   373,   823,   nil,   nil,   nil,   373,   373,   373,
-   373,   373,   373,   nil,   nil,   nil,   373,   373,   nil,   823,
-   nil,   nil,   nil,   nil,   373,   nil,   nil,   373,   373,   373,
-   nil,   373,   373,   nil,   nil,   373,   373,   379,   379,   379,
-   379,   379,   379,   nil,   nil,   nil,   379,   379,   nil,   nil,
-   nil,   379,   nil,   379,   379,   379,   379,   379,   379,   379,
-   nil,   nil,   nil,   nil,   nil,   379,   379,   379,   379,   379,
-   379,   379,   nil,  1122,   379,  1122,  1122,  1122,   nil,  1122,
-   379,   379,   379,   379,   379,   379,   379,   379,   379,   379,
-   379,   379,   nil,   379,   379,   379,   nil,   379,   379,   nil,
-   379,   379,   379,   316,   316,   316,   316,   316,   316,   316,
-   316,   316,   316,   316,   nil,   316,   316,   nil,   nil,   316,
-   316,   nil,   379,   nil,   nil,   379,   nil,   nil,   379,   379,
-   nil,   nil,   379,   nil,   379,   316,   nil,   316,   379,   316,
-   316,   316,   316,   316,   316,   316,   379,   316,   nil,   nil,
-   nil,   379,   379,   379,   379,   379,   379,   nil,   nil,   nil,
-   379,   379,   nil,   316,   nil,   nil,   nil,   nil,   379,   nil,
-   nil,   379,   379,   379,   nil,   379,   379,   nil,   nil,   379,
-   379,   380,   380,   380,   380,   380,   380,   nil,   nil,   nil,
-   380,   380,   nil,   nil,   nil,   380,   nil,   380,   380,   380,
-   380,   380,   380,   380,   nil,   nil,   nil,   nil,   nil,   380,
-   380,   380,   380,   380,   380,   380,   nil,  1232,   380,  1232,
-  1232,  1232,   nil,  1232,   380,   380,   380,   380,   380,   380,
-   380,   380,   380,   380,   380,   380,   nil,   380,   380,   380,
-   nil,   380,   380,   nil,   380,   380,   380,   522,   522,   522,
-   522,   522,   522,   522,   522,   522,   522,   522,   nil,   522,
-   522,   nil,   nil,   522,   522,   nil,   380,   nil,   nil,   380,
-   nil,   nil,   380,   380,   nil,   nil,   380,   nil,   380,   522,
-   nil,   522,   380,   522,   522,   522,   522,   522,   522,   522,
-   380,   522,   nil,   nil,   nil,   380,   380,   380,   380,   380,
-   380,   nil,   nil,   nil,   380,   380,   522,   522,   nil,   nil,
-   nil,   nil,   380,   nil,   nil,   380,   380,   380,   nil,   380,
-   380,   nil,   nil,   380,   380,   390,   390,   390,   390,   390,
-   390,   nil,   nil,   nil,   390,   390,   nil,   nil,   nil,   390,
-   nil,   390,   390,   390,   390,   390,   390,   390,   nil,   nil,
-   nil,   nil,   nil,   390,   390,   390,   390,   390,   390,   390,
-   nil,   nil,   390,   nil,   nil,   nil,   nil,   nil,   390,   390,
-   390,   390,   390,   390,   390,   390,   390,   390,   390,   390,
-   nil,   390,   390,   390,   nil,   390,   390,   nil,   390,   390,
-   390,   581,   581,   581,   581,   581,   581,   581,   581,   581,
-   581,   581,   nil,   581,   581,   nil,   nil,   581,   581,   nil,
-   390,   nil,   nil,   390,   nil,   nil,   390,   390,   nil,   nil,
-   390,   nil,   390,   581,   nil,   581,   390,   581,   581,   581,
-   581,   581,   581,   581,   390,   581,   nil,   nil,   nil,   390,
-   390,   390,   390,   390,   390,   nil,   nil,   nil,   390,   390,
-   nil,   581,   nil,   nil,   nil,   nil,   390,   nil,   nil,   390,
-   390,   390,   nil,   390,   390,   nil,   nil,   390,   390,   391,
-   391,   391,   391,   391,   391,   nil,   nil,   nil,   391,   391,
-   nil,   nil,   nil,   391,   nil,   391,   391,   391,   391,   391,
-   391,   391,   nil,   nil,   nil,   nil,   nil,   391,   391,   391,
-   391,   391,   391,   391,   nil,   nil,   391,   nil,   nil,   nil,
-   nil,   nil,   391,   391,   391,   391,   391,   391,   391,   391,
-   391,   391,   391,   391,   nil,   391,   391,   391,   nil,   391,
-   391,   nil,   391,   391,   391,   885,   885,   885,   885,   885,
-   885,   885,   885,   885,   885,   885,   nil,   885,   885,   nil,
-   nil,   885,   885,   nil,   391,   nil,   nil,   391,   nil,   nil,
-   391,   391,   nil,   nil,   391,   nil,   391,   885,   nil,   885,
-   391,   885,   885,   885,   885,   885,   885,   885,   391,   885,
-   nil,   nil,   nil,   391,   391,   391,   391,   391,   391,   nil,
-   nil,   nil,   391,   391,   nil,   885,   nil,   nil,   nil,   nil,
-   391,   nil,   nil,   391,   391,   391,   nil,   391,   391,   nil,
-   nil,   391,   391,   636,   636,   636,   636,   636,   636,   nil,
-   nil,   nil,   636,   636,   nil,   nil,   nil,   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,   636,   636,   636,   636,
-   636,   636,   636,   636,   636,   636,   636,   636,   nil,   636,
-   636,   636,   nil,   636,   636,   nil,   636,   636,   636,  1060,
-  1060,  1060,  1060,  1060,  1060,  1060,  1060,  1060,  1060,  1060,
-   nil,  1060,  1060,   nil,   nil,  1060,  1060,   nil,   636,   nil,
-   nil,   636,   nil,   nil,   636,   636,   nil,   nil,   636,   nil,
-   636,  1060,   nil,  1060,   636,  1060,  1060,  1060,  1060,  1060,
-  1060,  1060,   636,  1060,   nil,   nil,   nil,   636,   636,   636,
-   636,   636,   636,   nil,   nil,   nil,   636,   636,   nil,  1060,
-   nil,   nil,   nil,   nil,   636,   nil,   nil,   636,   636,   636,
-   nil,   636,   636,   nil,   nil,   636,   636,   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,   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,   nil,   639,   639,   639,   nil,   639,   639,   nil,
-   639,   639,   639,  1078,  1078,  1078,  1078,  1078,  1078,  1078,
-  1078,  1078,  1078,  1078,   nil,  1078,  1078,   nil,   nil,  1078,
-  1078,   nil,   639,   nil,   nil,   639,   nil,   nil,   639,   639,
-   nil,   nil,   639,   nil,   639,  1078,   nil,  1078,   639,  1078,
-  1078,  1078,  1078,  1078,  1078,  1078,   639,  1078,   nil,   nil,
-   nil,   639,   639,   639,   639,   639,   639,   nil,   nil,   nil,
-   639,   639,   nil,  1078,   nil,   nil,   nil,   nil,   639,   nil,
-   nil,   639,   639,   639,   nil,   639,   639,   nil,   nil,   639,
-   639,   687,   687,   687,   687,   687,   687,   nil,   nil,   nil,
-   687,   687,   nil,   nil,   nil,   687,   nil,   687,   687,   687,
-   687,   687,   687,   687,   nil,   nil,   nil,   nil,   nil,   687,
-   687,   687,   687,   687,   687,   687,   nil,   nil,   687,   nil,
-   nil,   nil,   nil,   nil,   687,   687,   687,   687,   687,   687,
-   687,   687,   687,   687,   687,   687,   nil,   687,   687,   687,
-   nil,   687,   687,   nil,   687,   687,   687,  1099,  1099,  1099,
-  1099,  1099,  1099,  1099,  1099,  1099,  1099,  1099,   nil,  1099,
-  1099,   nil,   nil,  1099,  1099,   nil,   687,   nil,   nil,   687,
-   nil,   nil,   687,   687,   nil,   nil,   687,   nil,   687,  1099,
-   nil,  1099,   687,  1099,  1099,  1099,  1099,  1099,  1099,  1099,
-   687,  1099,   nil,   nil,   nil,   687,   687,   687,   687,   687,
-   687,   nil,   nil,   nil,   687,   687,   nil,  1099,   nil,   nil,
-   nil,   nil,   687,   nil,   nil,   687,   687,   687,   nil,   687,
-   687,   nil,   nil,   687,   687,   853,   853,   853,   853,   853,
-   853,   nil,   nil,   nil,   853,   853,   nil,   nil,   nil,   853,
-   nil,   853,   853,   853,   853,   853,   853,   853,   nil,   nil,
-   nil,   nil,   nil,   853,   853,   853,   853,   853,   853,   853,
-   nil,   nil,   853,   nil,   nil,   nil,   nil,   nil,   853,   853,
-   853,   853,   853,   853,   853,   853,   853,   853,   853,   853,
-   nil,   853,   853,   853,   nil,   853,   853,   nil,   853,   853,
-   853,   364,   364,   364,   364,   364,   364,   364,   364,   364,
-   364,   364,   nil,   364,   364,   nil,   nil,   364,   364,   nil,
-   853,   nil,   nil,   853,   nil,   nil,   853,   853,   nil,   nil,
-   853,   nil,   853,   364,   nil,   364,   853,   364,   364,   364,
-   364,   364,   364,   364,   853,   364,   nil,   nil,   nil,   853,
-   853,   853,   853,   853,   853,   nil,   nil,   nil,   853,   853,
-   nil,   nil,   nil,   nil,   nil,   nil,   853,   nil,   nil,   853,
-   853,   853,   nil,   853,   853,   nil,   nil,   853,   853,   864,
-   864,   864,   864,   864,   864,   nil,   nil,   nil,   864,   864,
-   nil,   nil,   nil,   864,   nil,   864,   864,   864,   864,   864,
-   864,   864,   nil,   nil,   nil,   nil,   nil,   864,   864,   864,
-   864,   864,   864,   864,   nil,   nil,   864,   nil,   nil,   nil,
-   nil,   nil,   864,   864,   864,   864,   864,   864,   864,   864,
-   864,   864,   864,   864,   nil,   864,   864,   864,   nil,   864,
-   864,   nil,   864,   864,   864,   365,   365,   365,   365,   365,
-   365,   365,   365,   365,   365,   365,   nil,   365,   365,   nil,
-   nil,   365,   365,   nil,   864,   nil,   nil,   864,   nil,   nil,
-   864,   864,   nil,   nil,   864,   nil,   864,   365,   nil,   365,
-   864,   365,   365,   365,   365,   365,   365,   365,   864,   365,
-   nil,   nil,   nil,   864,   864,   864,   864,   864,   864,   nil,
-   nil,   nil,   864,   864,   nil,   nil,   nil,   nil,   nil,   nil,
-   864,   nil,   nil,   864,   864,   864,   nil,   864,   864,   nil,
-   nil,   864,   864,   868,   868,   868,   868,   868,   868,   nil,
-   nil,   nil,   868,   868,   nil,   nil,   nil,   868,   nil,   868,
-   868,   868,   868,   868,   868,   868,   nil,   nil,   nil,   nil,
-   nil,   868,   868,   868,   868,   868,   868,   868,   nil,   nil,
-   868,   nil,   nil,   nil,   nil,   nil,   868,   868,   868,   868,
-   868,   868,   868,   868,   868,   868,   868,   868,   nil,   868,
-   868,   868,   nil,   868,   868,   nil,   868,   868,   868,   501,
-   501,   501,   501,   501,   501,   501,   501,   501,   501,   501,
-   nil,   501,   501,   nil,   nil,   501,   501,   nil,   868,   nil,
-   nil,   868,   nil,   nil,   868,   868,   nil,   nil,   868,   nil,
-   868,   501,   nil,   501,   868,   501,   501,   501,   501,   501,
-   501,   501,   868,   501,   nil,   nil,   nil,   868,   868,   868,
-   868,   868,   868,   nil,   nil,   nil,   868,   868,   nil,   nil,
-   nil,   nil,   nil,   nil,   868,   nil,   nil,   868,   868,   868,
-   nil,   868,   868,   nil,   nil,   868,   868,   938,   938,   938,
-   938,   938,   938,   nil,   nil,   nil,   938,   938,   nil,   nil,
-   nil,   938,   nil,   938,   938,   938,   938,   938,   938,   938,
-   nil,   nil,   nil,   nil,   nil,   938,   938,   938,   938,   938,
-   938,   938,   nil,   nil,   938,   nil,   nil,   nil,   nil,   nil,
-   938,   938,   938,   938,   938,   938,   938,   938,   938,   938,
-   938,   938,   nil,   938,   938,   938,   nil,   938,   938,   nil,
-   938,   938,   938,   502,   502,   502,   502,   502,   502,   502,
-   502,   502,   502,   502,   nil,   502,   502,   nil,   nil,   502,
-   502,   nil,   938,   nil,   nil,   938,   nil,   nil,   938,   938,
-   nil,   nil,   938,   nil,   938,   502,   nil,   502,   938,   502,
-   502,   502,   502,   502,   502,   502,   938,   502,   nil,   nil,
-   nil,   938,   938,   938,   938,   938,   938,   nil,   nil,   nil,
-   938,   938,   nil,   nil,   nil,   nil,   nil,   nil,   938,   nil,
-   nil,   938,   938,   938,   nil,   938,   938,   nil,   nil,   938,
-   938,   958,   958,   958,   958,   958,   958,   nil,   nil,   nil,
-   958,   958,   nil,   nil,   nil,   958,   nil,   958,   958,   958,
-   958,   958,   958,   958,   nil,   nil,   nil,   nil,   nil,   958,
-   958,   958,   958,   958,   958,   958,   nil,  1171,   958,  1171,
-  1171,  1171,   nil,  1171,   958,   958,   958,   958,   958,   958,
-   958,   958,   958,   958,   958,   958,   nil,   958,   958,   958,
-   nil,   958,   958,   nil,   958,   958,   958,   512,   512,   512,
-   512,   512,   512,   512,   nil,  1171,   512,   512,   nil,   nil,
-   nil,   nil,   nil,   512,   512,   nil,   958,   nil,   nil,   958,
-   nil,   nil,   958,   958,   nil,   nil,   958,   nil,   958,   512,
-   nil,   512,   958,   512,   512,   512,   512,   512,   512,   512,
-   958,   512,   nil,   nil,   nil,   958,   958,   958,   958,   958,
-   958,   nil,   nil,   nil,   958,   958,   nil,   nil,   nil,   nil,
-   nil,   nil,   958,   nil,   nil,   958,   958,   958,   nil,   958,
-   958,   nil,   nil,   958,   958,   991,   991,   991,   991,   991,
-   991,   nil,   nil,   nil,   991,   991,   nil,   nil,   nil,   991,
-   nil,   991,   991,   991,   991,   991,   991,   991,   nil,   nil,
-   nil,   nil,   nil,   991,   991,   991,   991,   991,   991,   991,
-   nil,  1172,   991,  1172,  1172,  1172,   nil,  1172,   991,   991,
-   991,   991,   991,   991,   991,   991,   991,   991,   991,   991,
-   nil,   991,   991,   991,   nil,   991,   991,   nil,   991,   991,
-   991,   513,   513,   513,   513,   513,   513,   513,   nil,  1172,
-   513,   513,   nil,   nil,   nil,   nil,   nil,   513,   513,   nil,
-   991,   nil,   nil,   991,   nil,   nil,   991,   991,   nil,   nil,
-   991,   nil,   991,   513,   nil,   513,   991,   513,   513,   513,
-   513,   513,   513,   513,   991,   513,   nil,   nil,   nil,   991,
-   991,   991,   991,   991,   991,   nil,   nil,   nil,   991,   991,
-   nil,   nil,   nil,   nil,   nil,   nil,   991,   nil,   nil,   991,
-   991,   991,   nil,   991,   991,   nil,   nil,   991,   991,  1006,
-  1006,  1006,  1006,  1006,  1006,   nil,   nil,   nil,  1006,  1006,
-   nil,   nil,   nil,  1006,   nil,  1006,  1006,  1006,  1006,  1006,
-  1006,  1006,   nil,   nil,   nil,   nil,   nil,  1006,  1006,  1006,
-  1006,  1006,  1006,  1006,   nil,   nil,  1006,   nil,   nil,   nil,
-   nil,   nil,  1006,  1006,  1006,  1006,  1006,  1006,  1006,  1006,
-  1006,  1006,  1006,  1006,   nil,  1006,  1006,  1006,   nil,  1006,
-  1006,   nil,  1006,  1006,  1006,   514,   514,   514,   514,   514,
-   514,   514,   nil,   nil,   514,   514,   nil,   nil,   nil,   nil,
-   nil,   514,   514,   nil,  1006,   nil,   nil,  1006,   nil,   nil,
-  1006,  1006,   nil,   nil,  1006,   nil,  1006,   514,   nil,   514,
-  1006,   514,   514,   514,   514,   514,   514,   514,  1006,   514,
-   nil,   nil,   nil,  1006,  1006,  1006,  1006,  1006,  1006,   nil,
-   nil,   nil,  1006,  1006,   nil,   nil,   nil,   nil,   nil,   nil,
-  1006,   nil,   nil,  1006,  1006,  1006,   nil,  1006,  1006,   nil,
-   nil,  1006,  1006,  1011,  1011,  1011,  1011,  1011,  1011,   nil,
-   nil,   nil,  1011,  1011,   nil,   nil,   nil,  1011,   nil,  1011,
-  1011,  1011,  1011,  1011,  1011,  1011,   nil,   nil,   nil,   nil,
-   nil,  1011,  1011,  1011,  1011,  1011,  1011,  1011,   nil,   nil,
-  1011,   nil,   nil,   nil,   nil,   nil,  1011,  1011,  1011,  1011,
-  1011,  1011,  1011,  1011,  1011,  1011,  1011,  1011,   nil,  1011,
-  1011,  1011,   nil,  1011,  1011,   nil,  1011,  1011,  1011,   515,
-   515,   515,   515,   515,   515,   515,   nil,   nil,   515,   515,
-   nil,   nil,   nil,   nil,   nil,   515,   515,   nil,  1011,   nil,
-   nil,  1011,   nil,   nil,  1011,  1011,   nil,   nil,  1011,   nil,
-  1011,   515,   nil,   515,  1011,   515,   515,   515,   515,   515,
-   515,   515,  1011,   515,   nil,   nil,   nil,  1011,  1011,  1011,
-  1011,  1011,  1011,   nil,   nil,   nil,  1011,  1011,   nil,   nil,
-   nil,   nil,   nil,   nil,  1011,   nil,   nil,  1011,  1011,  1011,
-   nil,  1011,  1011,   nil,   nil,  1011,  1011,  1012,  1012,  1012,
-  1012,  1012,  1012,   nil,   nil,   nil,  1012,  1012,   nil,   nil,
-   nil,  1012,   nil,  1012,  1012,  1012,  1012,  1012,  1012,  1012,
-   nil,   nil,   nil,   nil,   nil,  1012,  1012,  1012,  1012,  1012,
-  1012,  1012,   nil,   nil,  1012,   nil,   nil,   nil,   nil,   nil,
-  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,
-  1012,  1012,   nil,  1012,  1012,  1012,   nil,  1012,  1012,   nil,
-  1012,  1012,  1012,   516,   516,   516,   516,   516,   516,   516,
-   nil,   nil,   516,   516,   nil,   nil,   nil,   nil,   nil,   516,
-   516,   nil,  1012,   nil,   nil,  1012,   nil,   nil,  1012,  1012,
-   nil,   nil,  1012,   nil,  1012,   516,   nil,   516,  1012,   516,
-   516,   516,   516,   516,   516,   516,  1012,   516,   nil,   nil,
-   nil,  1012,  1012,  1012,  1012,  1012,  1012,   nil,   nil,   nil,
-  1012,  1012,   nil,   nil,   nil,   nil,   nil,   nil,  1012,   nil,
-   nil,  1012,  1012,  1012,   nil,  1012,  1012,   nil,   nil,  1012,
-  1012,  1077,  1077,  1077,  1077,  1077,  1077,   nil,   nil,   nil,
-  1077,  1077,   nil,   nil,   nil,  1077,   nil,  1077,  1077,  1077,
-  1077,  1077,  1077,  1077,   nil,   nil,   nil,   nil,   nil,  1077,
-  1077,  1077,  1077,  1077,  1077,  1077,   nil,   nil,  1077,   nil,
-   nil,   nil,   nil,   nil,  1077,  1077,  1077,  1077,  1077,  1077,
-  1077,  1077,  1077,  1077,  1077,  1077,   nil,  1077,  1077,  1077,
-   nil,  1077,  1077,   nil,  1077,  1077,  1077,   517,   517,   517,
-   517,   517,   517,   517,   nil,   nil,   517,   517,   nil,   nil,
-   nil,   nil,   nil,   517,   517,   nil,  1077,   nil,   nil,  1077,
-   nil,   nil,  1077,  1077,   nil,   nil,  1077,   nil,  1077,   517,
-   nil,   517,  1077,   517,   517,   517,   517,   517,   517,   517,
-  1077,   517,   nil,   nil,   nil,  1077,  1077,  1077,  1077,  1077,
-  1077,   nil,   nil,   nil,  1077,  1077,   nil,   nil,   nil,   nil,
-   nil,   nil,  1077,   nil,   nil,  1077,  1077,  1077,   nil,  1077,
-  1077,   nil,   nil,  1077,  1077,  1079,  1079,  1079,  1079,  1079,
-  1079,   nil,   nil,   nil,  1079,  1079,   nil,   nil,   nil,  1079,
-   nil,  1079,  1079,  1079,  1079,  1079,  1079,  1079,   nil,   nil,
-   nil,   nil,   nil,  1079,  1079,  1079,  1079,  1079,  1079,  1079,
-   nil,   nil,  1079,   nil,   nil,   nil,   nil,   nil,  1079,  1079,
-  1079,  1079,  1079,  1079,  1079,  1079,  1079,  1079,  1079,  1079,
-   nil,  1079,  1079,  1079,   nil,  1079,  1079,   nil,  1079,  1079,
-  1079,   520,   520,   520,   520,   520,   520,   520,   nil,   nil,
-   520,   520,   nil,   nil,   nil,   nil,   nil,   520,   520,   nil,
-  1079,   nil,   nil,  1079,   nil,   nil,  1079,  1079,   nil,   nil,
-  1079,   nil,  1079,   520,   nil,   520,  1079,   520,   520,   520,
-   520,   520,   520,   520,  1079,   520,   nil,   nil,   nil,  1079,
-  1079,  1079,  1079,  1079,  1079,   nil,   nil,   nil,  1079,  1079,
-   nil,   nil,   nil,   nil,   nil,   nil,  1079,   nil,   nil,  1079,
-  1079,  1079,   nil,  1079,  1079,   nil,   nil,  1079,  1079,  1113,
-  1113,  1113,  1113,  1113,  1113,   nil,   nil,   nil,  1113,  1113,
-   nil,   nil,   nil,  1113,   nil,  1113,  1113,  1113,  1113,  1113,
-  1113,  1113,   nil,   nil,   nil,   nil,   nil,  1113,  1113,  1113,
-  1113,  1113,  1113,  1113,   nil,   nil,  1113,   nil,   nil,   nil,
-   nil,   nil,  1113,  1113,  1113,  1113,  1113,  1113,  1113,  1113,
-  1113,  1113,  1113,  1113,   nil,  1113,  1113,  1113,   nil,  1113,
-  1113,   nil,  1113,  1113,  1113,   521,   521,   521,   521,   521,
-   521,   521,   521,   nil,   521,   521,   nil,   nil,   nil,   nil,
-   nil,   521,   521,   nil,  1113,   nil,   nil,  1113,   nil,   nil,
-  1113,  1113,   nil,   nil,  1113,   nil,  1113,   521,   nil,   521,
-  1113,   521,   521,   521,   521,   521,   521,   521,  1113,   521,
-   nil,   nil,   nil,  1113,  1113,  1113,  1113,  1113,  1113,   nil,
-   nil,   nil,  1113,  1113,   nil,   nil,   nil,   nil,   nil,   nil,
-  1113,   nil,   nil,  1113,  1113,  1113,   nil,  1113,  1113,   nil,
-   nil,  1113,  1113,  1160,  1160,  1160,  1160,  1160,  1160,   nil,
-   nil,   nil,  1160,  1160,   nil,   nil,   nil,  1160,   nil,  1160,
-  1160,  1160,  1160,  1160,  1160,  1160,   nil,   nil,   nil,   nil,
-   nil,  1160,  1160,  1160,  1160,  1160,  1160,  1160,   nil,   nil,
-  1160,   nil,   nil,   nil,   nil,   nil,  1160,  1160,  1160,  1160,
-  1160,  1160,  1160,  1160,  1160,  1160,  1160,  1160,   nil,  1160,
-  1160,  1160,   nil,  1160,  1160,   nil,  1160,  1160,  1160,   523,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   523,   523,   nil,  1160,   nil,
-   nil,  1160,   nil,   nil,  1160,  1160,   nil,   nil,  1160,   nil,
-  1160,   523,   nil,   523,  1160,   523,   523,   523,   523,   nil,
-   nil,   523,  1160,   523,   nil,   nil,   nil,  1160,  1160,  1160,
-  1160,  1160,  1160,   nil,   nil,   nil,  1160,  1160,   nil,   nil,
-   nil,   nil,   nil,   nil,  1160,   nil,   nil,  1160,  1160,  1160,
-   nil,  1160,  1160,   nil,   nil,  1160,  1160,  1173,  1173,  1173,
-  1173,  1173,  1173,   nil,   nil,   nil,  1173,  1173,   nil,   nil,
-   nil,  1173,   nil,  1173,  1173,  1173,  1173,  1173,  1173,  1173,
-   nil,   nil,   nil,   nil,   nil,  1173,  1173,  1173,  1173,  1173,
-  1173,  1173,   nil,   nil,  1173,   nil,   nil,   nil,   nil,   nil,
-  1173,  1173,  1173,  1173,  1173,  1173,  1173,  1173,  1173,  1173,
-  1173,  1173,   nil,  1173,  1173,  1173,   nil,  1173,  1173,   nil,
-  1173,  1173,  1173,   580,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   580,
-   580,   nil,  1173,   nil,   nil,  1173,   nil,   nil,  1173,  1173,
-   nil,   nil,  1173,   nil,  1173,   580,   nil,   580,  1173,   580,
-   580,   580,   580,   nil,   nil,   580,  1173,   580,   nil,   nil,
-   nil,  1173,  1173,  1173,  1173,  1173,  1173,   nil,   nil,   nil,
-  1173,  1173,   nil,   nil,   nil,   nil,   nil,   nil,  1173,   nil,
-   nil,  1173,  1173,  1173,   nil,  1173,  1173,   nil,   nil,  1173,
-  1173,  1183,  1183,  1183,  1183,  1183,  1183,   nil,   nil,   nil,
-  1183,  1183,   nil,   nil,   nil,  1183,   nil,  1183,  1183,  1183,
-  1183,  1183,  1183,  1183,   nil,   nil,   nil,   nil,   nil,  1183,
-  1183,  1183,  1183,  1183,  1183,  1183,   nil,   nil,  1183,   nil,
-   nil,   nil,   nil,   nil,  1183,  1183,  1183,  1183,  1183,  1183,
-  1183,  1183,  1183,  1183,  1183,  1183,   nil,  1183,  1183,  1183,
-   nil,  1183,  1183,   nil,  1183,  1183,  1183,   509,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   509,   509,   nil,  1183,   nil,   nil,  1183,
-   nil,   nil,  1183,  1183,   nil,   nil,  1183,   nil,  1183,   509,
-   nil,   509,  1183,   509,   509,   509,   509,   nil,   nil,   nil,
-  1183,   nil,   nil,   nil,   nil,  1183,  1183,  1183,  1183,  1183,
-  1183,   nil,   nil,   nil,  1183,  1183,   nil,   nil,   nil,   nil,
-   nil,   nil,  1183,   nil,   nil,  1183,  1183,  1183,   nil,  1183,
-  1183,   nil,   nil,  1183,  1183,  1221,  1221,  1221,  1221,  1221,
-  1221,   nil,   nil,   nil,  1221,  1221,   nil,   nil,   nil,  1221,
-   nil,  1221,  1221,  1221,  1221,  1221,  1221,  1221,   nil,   nil,
-   nil,   nil,   nil,  1221,  1221,  1221,  1221,  1221,  1221,  1221,
-   nil,   nil,  1221,   nil,   nil,   nil,   nil,   nil,  1221,  1221,
-  1221,  1221,  1221,  1221,  1221,  1221,  1221,  1221,  1221,  1221,
-   nil,  1221,  1221,  1221,   nil,  1221,  1221,   nil,  1221,  1221,
-  1221,   510,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   510,   510,   nil,
-  1221,   nil,   nil,  1221,   nil,   nil,  1221,  1221,   nil,   nil,
-  1221,   nil,  1221,   510,   nil,   510,  1221,   510,   510,   510,
-   510,   nil,   nil,   nil,  1221,   nil,   nil,   nil,   nil,  1221,
-  1221,  1221,  1221,  1221,  1221,   nil,   nil,   nil,  1221,  1221,
-   nil,   nil,   nil,   nil,   nil,   nil,  1221,   nil,   nil,  1221,
-  1221,  1221,   nil,  1221,  1221,   nil,   nil,  1221,  1221,     8,
-     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
-   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
-     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
-     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
-   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
-     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
-   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
-     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
-   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
-   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
-   nil,   nil,     8,     8,     8,   nil,     8,     8,   nil,   nil,
-     8,     8,    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,   nil,    23,
-    23,    23,    23,    23,    23,    23,   nil,   nil,    23,   nil,
-   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,    23,    23,
-    23,    23,    23,    23,    23,    23,   nil,    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,   nil,   nil,
-   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,    23,   nil,   nil,    23,    23,    23,    31,    23,
-    23,   nil,   nil,    23,    23,    31,    31,    31,   nil,   nil,
-    31,    31,    31,   822,    31,   822,   822,   822,   822,   822,
-   nil,   nil,    31,    31,    31,    31,   nil,   nil,   nil,   822,
-   nil,   nil,   nil,   nil,    31,    31,   nil,    31,    31,    31,
-    31,    31,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   822,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   822,   822,   822,   822,   nil,    31,    31,    31,    31,    31,
-    31,    31,    31,    31,    31,    31,    31,    31,    31,   nil,
-   nil,    31,    31,    31,   nil,   nil,    31,   nil,    31,    31,
-   nil,   nil,    31,    31,   nil,    31,   822,    31,   nil,    31,
-   nil,    31,    31,    31,    31,    31,    31,    31,   nil,    31,
-    31,    31,   936,   nil,   936,   936,   936,   936,   936,   nil,
-   nil,   nil,   nil,   nil,    31,    31,   nil,    31,   936,    31,
-    32,   nil,   nil,   nil,   nil,   nil,    31,    32,    32,    32,
-    31,   nil,    32,    32,    32,   nil,    32,   nil,   nil,   nil,
-   936,   nil,   nil,   nil,    32,   nil,    32,    32,   nil,   936,
-   936,   936,   936,   nil,   nil,   nil,    32,    32,   nil,    32,
-    32,    32,    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   936,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   936,   nil,    32,    32,    32,
-    32,    32,    32,    32,    32,    32,    32,    32,    32,    32,
-    32,   nil,   nil,    32,    32,    32,   nil,   nil,    32,   nil,
-    32,    32,   nil,   nil,    32,    32,   nil,    32,   nil,    32,
-   nil,    32,   nil,    32,    32,    32,    32,    32,    32,    32,
-   nil,    32,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,    32,
-   nil,    32,    33,    33,    33,   nil,    33,   nil,    32,   nil,
-    33,    33,    32,   nil,   nil,    33,   nil,    33,    33,    33,
-    33,    33,    33,    33,   nil,   nil,   nil,   nil,   nil,    33,
-    33,    33,    33,    33,    33,    33,   nil,   nil,    33,   nil,
-   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,    33,    33,
-    33,    33,    33,    33,    33,    33,    33,    33,    33,    33,
-   nil,    33,    33,   nil,    33,    33,    33,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,    33,
-   nil,   nil,    33,    33,   nil,   nil,    33,   nil,    33,   nil,
-    33,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    33,   nil,   nil,   nil,   nil,    33,    33,    33,    33,    33,
-    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,   nil,
-   nil,   nil,    33,   nil,    33,    33,    33,    33,   nil,    33,
-    33,   nil,   nil,    33,    33,    34,    34,    34,   nil,    34,
-   nil,   nil,   nil,    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,    34,
-    34,    34,    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,    34,
-    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,   nil,
-   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,    34,
-    34,   nil,    34,    34,   nil,   nil,    34,    34,    35,    35,
-    35,   nil,    35,   nil,   nil,   nil,    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,    35,    35,    35,    35,   nil,    35,    35,   nil,
-    35,    35,    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,    35,   nil,    35,   nil,    35,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,
-   nil,    35,    35,    35,    35,    35,    35,   nil,   nil,   nil,
-    35,    35,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,
-    35,    35,    35,    35,   nil,    35,    35,   nil,   nil,    35,
-    35,    45,    45,    45,   nil,    45,   nil,   nil,   nil,    45,
-    45,   nil,   nil,   nil,    45,   nil,    45,    45,    45,    45,
-    45,    45,    45,   nil,   nil,   nil,   nil,   nil,    45,    45,
-    45,    45,    45,    45,    45,   nil,   nil,    45,   nil,   nil,
-   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,    45,
-    45,    45,    45,    45,    45,   nil,    45,    45,    45,   nil,
-    45,    45,   nil,    45,    45,    45,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,   nil,
-   nil,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,   nil,
-   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,
-   nil,   nil,   nil,   nil,    45,    45,    45,    45,    45,    45,
-   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,   nil,
-   nil,    45,   nil,   nil,    45,    45,    45,   nil,    45,    45,
-   nil,   nil,    45,    45,    46,    46,    46,   nil,    46,   nil,
-   nil,   nil,    46,    46,   nil,   nil,   nil,    46,   nil,    46,
-    46,    46,    46,    46,    46,    46,   nil,   nil,   nil,   nil,
-   nil,    46,    46,    46,    46,    46,    46,    46,   nil,   nil,
-    46,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
-    46,    46,    46,    46,    46,    46,    46,    46,   nil,    46,
-    46,    46,   nil,    46,    46,   nil,    46,    46,    46,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,
-   nil,    46,   nil,   nil,    46,    46,   nil,   nil,    46,   nil,
-   nil,   nil,   nil,   nil,    46,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    46,   nil,   nil,   nil,   nil,    46,    46,    46,
-    46,    46,    46,   nil,   nil,   nil,    46,    46,   nil,   nil,
-   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,    46,
-   nil,    46,    46,   nil,   nil,    46,    46,    48,    48,    48,
-   nil,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,   nil,
-    48,   nil,    48,    48,    48,    48,    48,    48,    48,   nil,
-   nil,   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,
-    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
-    48,   nil,   nil,    48,    48,    48,    48,    48,    48,    48,
-    48,   nil,    48,    48,    48,   nil,    48,    48,   nil,    48,
-    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    48,   nil,   nil,    48,   nil,   nil,    48,    48,   nil,
-   nil,    48,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
-    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,    48,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-    48,    48,    48,   nil,    48,    48,   nil,   nil,    48,    48,
-    49,    49,    49,   nil,    49,   nil,   nil,   nil,    49,    49,
-   nil,   nil,   nil,    49,   nil,    49,    49,    49,    49,    49,
-    49,    49,   nil,   nil,   nil,   nil,   nil,    49,    49,    49,
-    49,    49,    49,    49,   nil,   nil,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,    49,   nil,   nil,    49,    49,    49,    49,
-    49,    49,    49,    49,   nil,    49,    49,    49,   nil,    49,
-    49,   nil,    49,    49,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,   nil,    49,   nil,   nil,
-    49,    49,   nil,   nil,    49,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
-   nil,   nil,   nil,    49,    49,    49,    49,    49,    49,   nil,
-   nil,   nil,    49,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-    49,   nil,   nil,    49,    49,    49,   nil,    49,    49,   nil,
-   nil,    49,    49,    51,    51,    51,   nil,    51,   nil,   nil,
-   nil,    51,    51,   nil,   nil,   nil,    51,   nil,    51,    51,
-    51,    51,    51,    51,    51,   nil,   nil,   nil,   nil,   nil,
-    51,    51,    51,    51,    51,    51,    51,   nil,   nil,    51,
-   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,    51,
-    51,    51,    51,    51,    51,    51,    51,   nil,    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,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    51,   nil,   nil,   nil,   nil,    51,    51,    51,    51,
-    51,    51,   nil,   nil,   nil,    51,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,    51,    51,    51,    65,
-    51,    51,   nil,   nil,    51,    51,    65,    65,    65,   nil,
-   nil,    65,    65,    65,  1087,    65,  1087,  1087,  1087,  1087,
-  1087,   nil,   nil,    65,   nil,    65,    65,    65,   nil,   nil,
-  1087,   734,   734,   734,   734,    65,    65,   nil,    65,    65,
-    65,    65,    65,   nil,   nil,   nil,   nil,   734,   734,   734,
-   nil,   nil,  1087,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   734,   734,   nil,  1087,  1087,   734,    65,    65,    65,    65,
-    65,    65,    65,    65,    65,    65,    65,    65,    65,    65,
-   nil,   nil,    65,    65,    65,   nil,   nil,    65,   nil,   nil,
-    65,   nil,   nil,    65,    65,   nil,    65,  1087,    65,   nil,
-    65,   nil,    65,    65,    65,    65,    65,    65,    65,   nil,
-    65,   nil,    65,   nil,   734,   734,   734,   734,   734,   734,
-   nil,   nil,   nil,   734,   734,    65,    65,    65,    65,   nil,
-    65,   734,    65,   nil,   734,   734,   734,    65,   734,   734,
-   475,    65,    67,    67,    67,    67,    67,   475,   475,   475,
-    67,    67,   475,   475,   475,    67,   475,    67,    67,    67,
-    67,    67,    67,    67,   475,   475,   475,   475,   nil,    67,
-    67,    67,    67,    67,    67,    67,   475,   475,    67,   475,
-   475,   475,   475,   475,    67,    67,   nil,    67,    67,    67,
-    67,    67,    67,    67,    67,    67,   nil,    67,    67,    67,
-   nil,    67,    67,   nil,    67,    67,    67,   475,   475,   475,
-   475,   475,   475,   475,   475,   475,   475,   475,   475,   475,
-   475,   nil,   nil,   475,   475,   475,    67,   nil,   475,    67,
-   475,   475,    67,    67,   475,   475,    67,   475,    67,   475,
-   nil,   475,    67,   475,   475,   475,   475,   475,   475,   475,
-    67,   475,   475,   475,   nil,    67,    67,    67,    67,    67,
-    67,   nil,   nil,   nil,    67,    67,   475,   475,   nil,   475,
-   nil,   475,    67,   nil,   nil,    67,    67,    67,   475,    67,
-    67,   nil,   475,    67,    67,    72,    72,    72,   nil,    72,
-   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
-    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
-   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
-   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
-    72,    72,    72,   nil,    72,    72,   nil,    72,    72,    72,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
-   nil,   nil,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,    72,    72,
-    72,    72,    72,    72,   nil,   nil,   nil,    72,    72,   nil,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
-    72,   nil,    72,    72,   nil,   nil,    72,    72,    73,    73,
-    73,   nil,    73,   nil,   nil,   nil,    73,    73,   nil,   nil,
-   nil,    73,   nil,    73,    73,    73,    73,    73,    73,    73,
-   nil,   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,
-    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,
-   nil,    73,   nil,   nil,    73,    73,    73,    73,    73,    73,
-    73,    73,   nil,    73,    73,    73,   nil,    73,    73,   nil,
-    73,    73,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    73,   nil,   nil,    73,   nil,   nil,    73,    73,
-   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,    73,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,   nil,
-   nil,    73,    73,    73,    73,    73,    73,   nil,   nil,   nil,
-    73,    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,
-   nil,    73,    73,    73,   nil,    73,    73,   nil,   nil,    73,
-    73,    76,    76,    76,   nil,    76,   nil,   nil,   nil,    76,
-    76,   nil,   nil,   nil,    76,   nil,    76,    76,    76,    76,
-    76,    76,    76,   nil,   nil,   nil,   nil,   nil,    76,    76,
-    76,    76,    76,    76,    76,   nil,   nil,    76,   nil,   nil,
-   nil,   nil,   nil,   nil,    76,   nil,   nil,    76,    76,    76,
-    76,    76,    76,    76,    76,   nil,    76,    76,    76,   nil,
-    76,    76,   nil,    76,    76,    76,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,    76,   nil,
-   nil,    76,    76,   nil,   nil,    76,   nil,   nil,   nil,   nil,
-   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,
-   nil,   nil,   nil,   nil,    76,    76,    76,    76,    76,    76,
-   nil,   nil,   nil,    76,    76,    76,   nil,   nil,   nil,   nil,
-    76,    76,   nil,   nil,    76,    76,    76,   nil,    76,    76,
-   nil,   nil,    76,    76,   132,   132,   132,   132,   132,   nil,
-   nil,   nil,   132,   132,   nil,   nil,   nil,   132,   nil,   132,
-   132,   132,   132,   132,   132,   132,   nil,   nil,   nil,   nil,
-   nil,   132,   132,   132,   132,   132,   132,   132,   nil,   nil,
-   132,   nil,   nil,   nil,   nil,   nil,   132,   132,   132,   132,
-   132,   132,   132,   132,   132,   132,   132,   132,   nil,   132,
-   132,   132,   nil,   132,   132,   nil,   132,   132,   132,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   132,   nil,
-   nil,   132,   nil,   nil,   132,   132,   nil,   nil,   132,   nil,
-   132,   nil,   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   132,   nil,   nil,   nil,   nil,   132,   132,   132,
-   132,   132,   132,   nil,   nil,   nil,   132,   132,   nil,   nil,
-   nil,   nil,   nil,   132,   132,   nil,   nil,   132,   132,   132,
-   nil,   132,   132,   nil,   nil,   132,   132,   137,   137,   137,
-   nil,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
-   137,   nil,   137,   137,   137,   137,   137,   137,   137,   nil,
-   nil,   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,
-   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   nil,
-   137,   nil,   nil,   137,   137,   137,   137,   137,   137,   137,
-   137,   nil,   137,   137,   137,   nil,   137,   137,   nil,   137,
-   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   137,   nil,   nil,   137,   nil,   nil,   137,   137,   nil,
-   nil,   137,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,
-   137,   137,   137,   137,   137,   137,   nil,   nil,   nil,   137,
-   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   137,   137,   137,   nil,   137,   137,   nil,   nil,   137,   137,
-   138,   138,   138,   nil,   138,   nil,   nil,   nil,   138,   138,
-   nil,   nil,   nil,   138,   nil,   138,   138,   138,   138,   138,
-   138,   138,   nil,   nil,   nil,   nil,   nil,   138,   138,   138,
-   138,   138,   138,   138,   nil,   nil,   138,   nil,   nil,   nil,
-   nil,   nil,   nil,   138,   nil,   nil,   138,   138,   138,   138,
-   138,   138,   138,   138,   nil,   138,   138,   138,   nil,   138,
-   138,   nil,   138,   138,   138,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   138,   nil,   nil,   138,   nil,   nil,
-   138,   138,   nil,   nil,   138,   nil,   nil,   nil,   nil,   nil,
-   138,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,
-   nil,   nil,   nil,   138,   138,   138,   138,   138,   138,   nil,
-   nil,   nil,   138,   138,   nil,   nil,   nil,   nil,   nil,   nil,
-   138,   nil,   nil,   138,   138,   138,   nil,   138,   138,   nil,
-   nil,   138,   138,   139,   139,   139,   nil,   139,   nil,   nil,
-   nil,   139,   139,   nil,   nil,   nil,   139,   nil,   139,   139,
-   139,   139,   139,   139,   139,   nil,   nil,   nil,   nil,   nil,
-   139,   139,   139,   139,   139,   139,   139,   nil,   nil,   139,
-   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   139,
-   139,   139,   139,   139,   139,   139,   139,   nil,   139,   139,
-   139,   nil,   139,   139,   nil,   139,   139,   139,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,
-   139,   nil,   nil,   139,   139,   nil,   nil,   139,   nil,   nil,
-   nil,   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   139,   nil,   nil,   nil,   nil,   139,   139,   139,   139,
-   139,   139,   nil,   nil,   nil,   139,   139,   nil,   nil,   nil,
-   nil,   nil,   nil,   139,   nil,   nil,   139,   139,   139,   nil,
-   139,   139,   nil,   nil,   139,   139,   140,   140,   140,   nil,
-   140,   nil,   nil,   nil,   140,   140,   nil,   nil,   nil,   140,
-   nil,   140,   140,   140,   140,   140,   140,   140,   nil,   nil,
-   nil,   nil,   nil,   140,   140,   140,   140,   140,   140,   140,
-   nil,   nil,   140,   nil,   nil,   nil,   nil,   nil,   nil,   140,
-   nil,   nil,   140,   140,   140,   140,   140,   140,   140,   140,
-   nil,   140,   140,   140,   nil,   140,   140,   nil,   140,   140,
-   140,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   140,   nil,   nil,   140,   nil,   nil,   140,   140,   nil,   nil,
-   140,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   140,   nil,   nil,   nil,   nil,   140,
-   140,   140,   140,   140,   140,   nil,   nil,   nil,   140,   140,
-   nil,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,   140,
-   140,   140,   nil,   140,   140,   nil,   nil,   140,   140,   141,
-   141,   141,   141,   141,   nil,   nil,   nil,   141,   141,   nil,
-   nil,   nil,   141,   nil,   141,   141,   141,   141,   141,   141,
-   141,   nil,   nil,   nil,   nil,   nil,   141,   141,   141,   141,
-   141,   141,   141,   nil,   nil,   141,   nil,   nil,   nil,   nil,
-   nil,   141,   141,   nil,   141,   141,   141,   141,   141,   141,
-   141,   141,   141,   nil,   141,   141,   141,   nil,   141,   141,
-   nil,   141,   141,   141,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   141,   nil,   nil,   141,   nil,   nil,   141,
-   141,   nil,   nil,   141,   nil,   141,   nil,   nil,   nil,   141,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   141,   nil,   nil,
-   nil,   nil,   141,   141,   141,   141,   141,   141,   nil,   nil,
-   nil,   141,   141,   nil,   nil,   nil,   nil,   nil,   nil,   141,
-   nil,   nil,   141,   141,   141,   nil,   141,   141,   nil,   nil,
-   141,   141,   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,   nil,   226,
-   226,   226,   226,   226,   226,   226,   nil,   nil,   226,   nil,
-   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
-   226,   226,   226,   226,   226,   226,   nil,   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,   226,   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,   nil,
-   nil,   nil,   226,   nil,   nil,   226,   226,   226,   nil,   226,
-   226,   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,   nil,   227,   227,   227,   227,   227,   227,   227,   nil,
-   nil,   227,   nil,   nil,   nil,   nil,   nil,   nil,   227,   nil,
-   nil,   227,   227,   227,   227,   227,   227,   227,   227,   nil,
-   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,   227,   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,   nil,   nil,   nil,   227,   nil,   nil,   227,   227,
-   227,   nil,   227,   227,   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,   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,   228,   nil,   nil,   nil,
-   nil,   228,   228,   228,   228,   228,   228,   nil,   nil,   nil,
-   228,   228,   nil,   nil,   nil,   nil,   nil,   nil,   228,   nil,
-   nil,   228,   228,   228,   nil,   228,   228,   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,   nil,   229,   229,
-   229,   229,   229,   229,   229,   nil,   nil,   229,   nil,   nil,
-   nil,   nil,   nil,   nil,   229,   nil,   nil,   229,   229,   229,
-   229,   229,   229,   229,   229,   nil,   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   229,   nil,   nil,   229,   229,   229,   nil,   229,   229,
-   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,
-   nil,   230,   230,   230,   230,   230,   230,   230,   nil,   nil,
-   230,   nil,   nil,   nil,   nil,   nil,   nil,   230,   nil,   nil,
-   230,   230,   230,   230,   230,   230,   230,   230,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   230,   nil,   nil,   230,   230,   230,
-   nil,   230,   230,   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,   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,   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,   231,   nil,   231,   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,   nil,   nil,   nil,   231,   nil,   231,
-   231,   231,   231,   nil,   231,   231,   nil,   nil,   231,   231,
-   236,   236,   236,   nil,   236,   nil,   nil,   nil,   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,   236,   nil,
-   nil,   nil,   nil,   236,   236,   236,   236,   236,   236,   nil,
-   nil,   nil,   236,   236,   nil,   nil,   nil,   nil,   nil,   nil,
-   236,   nil,   nil,   236,   236,   236,   nil,   236,   236,   nil,
-   nil,   236,   236,   237,   237,   237,   nil,   237,   nil,   nil,
-   nil,   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,   237,   nil,   nil,   nil,   nil,   237,   237,   237,   237,
-   237,   237,   nil,   nil,   nil,   237,   237,   nil,   nil,   nil,
-   nil,   nil,   nil,   237,   nil,   nil,   237,   237,   237,   nil,
-   237,   237,   nil,   nil,   237,   237,   238,   238,   238,   nil,
-   238,   nil,   nil,   nil,   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,   238,   nil,   nil,   nil,   nil,   238,
-   238,   238,   238,   238,   238,   nil,   nil,   nil,   238,   238,
-   238,   nil,   nil,   nil,   nil,   nil,   238,   nil,   nil,   238,
-   238,   238,   nil,   238,   238,   nil,   nil,   238,   238,   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,   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,   249,   nil,   nil,
-   nil,   nil,   249,   249,   249,   249,   249,   249,   nil,   nil,
-   nil,   249,   249,   nil,   nil,   nil,   nil,   nil,   nil,   249,
-   nil,   nil,   249,   249,   249,   nil,   249,   249,   nil,   nil,
-   249,   249,   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,   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,
-   254,   nil,   nil,   nil,   nil,   254,   254,   254,   254,   254,
-   254,   nil,   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,
-   nil,   nil,   254,   nil,   nil,   254,   254,   254,   nil,   254,
-   254,   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,   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,   255,   nil,   nil,   nil,   nil,   255,   255,
-   255,   255,   255,   255,   nil,   nil,   nil,   255,   255,   nil,
-   nil,   nil,   nil,   nil,   nil,   255,   nil,   nil,   255,   255,
-   255,   nil,   255,   255,   nil,   nil,   255,   255,   256,   256,
-   256,   nil,   256,   nil,   nil,   nil,   256,   256,   nil,   nil,
-   nil,   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,   256,   256,   256,   256,
-   256,   256,   nil,   256,   256,   256,   nil,   256,   256,   nil,
-   256,   256,   256,   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,   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,   nil,   nil,   nil,   256,   nil,
-   nil,   256,   256,   256,   nil,   256,   256,   nil,   nil,   256,
-   256,   257,   257,   257,   nil,   257,   nil,   nil,   nil,   257,
-   257,   nil,   nil,   nil,   257,   nil,   257,   257,   257,   257,
-   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   257,   257,
-   257,   257,   257,   257,   257,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   257,   257,
-   257,   257,   257,   257,   257,   nil,   257,   257,   257,   nil,
-   257,   257,   nil,   257,   257,   257,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,
-   nil,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,   257,
-   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   257,   257,   257,   nil,   257,   257,
-   nil,   nil,   257,   257,   258,   258,   258,   nil,   258,   nil,
-   nil,   nil,   258,   258,   nil,   nil,   nil,   258,   nil,   258,
-   258,   258,   258,   258,   258,   258,   nil,   nil,   nil,   nil,
-   nil,   258,   258,   258,   258,   258,   258,   258,   nil,   nil,
-   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,
-   258,   258,   258,   258,   258,   258,   258,   258,   nil,   258,
-   258,   258,   nil,   258,   258,   nil,   258,   258,   258,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
-   nil,   258,   nil,   nil,   258,   258,   nil,   nil,   258,   nil,
-   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   258,   nil,   nil,   nil,   nil,   258,   258,   258,
-   258,   258,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,
-   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,   258,   258,
-   nil,   258,   258,   nil,   nil,   258,   258,   259,   259,   259,
-   nil,   259,   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,
-   259,   nil,   259,   259,   259,   259,   259,   259,   259,   nil,
-   nil,   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,
-   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,
-   259,   nil,   nil,   259,   259,   259,   259,   259,   259,   259,
-   259,   nil,   259,   259,   259,   nil,   259,   259,   nil,   259,
-   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   259,   nil,   nil,   259,   nil,   nil,   259,   259,   nil,
-   nil,   259,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,
-   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,   259,
-   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
-   259,   259,   259,   nil,   259,   259,   nil,   nil,   259,   259,
-   260,   260,   260,   nil,   260,   nil,   nil,   nil,   260,   260,
-   nil,   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,
-   260,   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,
-   260,   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,
-   nil,   nil,   nil,   260,   nil,   nil,   260,   260,   260,   260,
-   260,   260,   260,   260,   nil,   260,   260,   260,   nil,   260,
-   260,   nil,   260,   260,   260,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,   nil,   nil,
-   260,   260,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,
-   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,
-   nil,   nil,   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   260,   260,   260,   nil,   260,   260,   nil,
-   nil,   260,   260,   261,   261,   261,   nil,   261,   nil,   nil,
-   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,   nil,   261,   261,
-   261,   nil,   261,   261,   nil,   261,   261,   261,   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,   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,
-   nil,   nil,   nil,   261,   nil,   nil,   261,   261,   261,   nil,
-   261,   261,   nil,   nil,   261,   261,   262,   262,   262,   nil,
-   262,   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   262,
-   nil,   262,   262,   262,   262,   262,   262,   262,   nil,   nil,
-   nil,   nil,   nil,   262,   262,   262,   262,   262,   262,   262,
-   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,
-   nil,   nil,   262,   262,   262,   262,   262,   262,   262,   262,
-   nil,   262,   262,   262,   nil,   262,   262,   nil,   262,   262,
-   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   262,   nil,   nil,   262,   nil,   nil,   262,   262,   nil,   nil,
-   262,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,
-   262,   262,   262,   262,   262,   nil,   nil,   nil,   262,   262,
-   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,
-   262,   262,   nil,   262,   262,   nil,   nil,   262,   262,   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,   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,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   263,
-   nil,   nil,   263,   263,   263,   nil,   263,   263,   nil,   nil,
-   263,   263,   264,   264,   264,   nil,   264,   nil,   nil,   nil,
-   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,   nil,   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,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   264,   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,
-   264,   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,
-   264,   nil,   nil,   264,   264,   265,   265,   265,   nil,   265,
-   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,   265,   nil,
-   265,   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,
-   nil,   nil,   265,   265,   265,   265,   265,   265,   265,   nil,
-   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
-   nil,   265,   265,   265,   265,   265,   265,   265,   265,   nil,
-   265,   265,   265,   nil,   265,   265,   nil,   265,   265,   265,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,
-   nil,   nil,   265,   nil,   nil,   265,   265,   nil,   nil,   265,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,   265,   265,
-   265,   265,   265,   265,   nil,   nil,   nil,   265,   265,   nil,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,
-   265,   nil,   265,   265,   nil,   nil,   265,   265,   266,   266,
-   266,   nil,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,
-   nil,   266,   nil,   266,   266,   266,   266,   266,   266,   266,
-   nil,   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,
-   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
-   nil,   266,   nil,   nil,   266,   266,   266,   266,   266,   266,
-   266,   266,   nil,   266,   266,   266,   nil,   266,   266,   nil,
-   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,   266,   266,
-   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,
-   nil,   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,
-   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   266,   266,   266,   nil,   266,   266,   nil,   nil,   266,
-   266,   267,   267,   267,   nil,   267,   nil,   nil,   nil,   267,
-   267,   nil,   nil,   nil,   267,   nil,   267,   267,   267,   267,
-   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   267,   267,
-   267,   267,   267,   267,   267,   nil,   nil,   267,   nil,   nil,
-   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,
-   267,   267,   267,   267,   267,   nil,   267,   267,   267,   nil,
-   267,   267,   nil,   267,   267,   267,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,
-   nil,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,
-   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   267,   267,   267,   nil,   267,   267,
-   nil,   nil,   267,   267,   268,   268,   268,   nil,   268,   nil,
-   nil,   nil,   268,   268,   nil,   nil,   nil,   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,   268,   268,   268,   268,   268,   268,   nil,   268,
-   268,   268,   nil,   268,   268,   nil,   268,   268,   268,   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,   268,   nil,   nil,   268,   nil,
-   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,   268,   268,   268,
-   nil,   268,   268,   nil,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,
-   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,
-   269,   nil,   nil,   269,   269,   269,   269,   269,   269,   269,
-   269,   nil,   269,   269,   269,   nil,   269,   269,   nil,   269,
-   269,   269,   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,   269,   nil,
-   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,
-   269,   269,   269,   nil,   269,   269,   nil,   nil,   269,   269,
-   270,   270,   270,   nil,   270,   nil,   nil,   nil,   270,   270,
-   nil,   nil,   nil,   270,   nil,   270,   270,   270,   270,   270,
-   270,   270,   nil,   nil,   nil,   nil,   nil,   270,   270,   270,
-   270,   270,   270,   270,   nil,   nil,   270,   nil,   nil,   nil,
-   nil,   nil,   nil,   270,   nil,   nil,   270,   270,   270,   270,
-   270,   270,   270,   270,   nil,   270,   270,   270,   nil,   270,
-   270,   nil,   270,   270,   270,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   270,   nil,   nil,   270,   nil,   nil,
-   270,   270,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,
-   270,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,
-   nil,   nil,   nil,   270,   270,   270,   270,   270,   270,   nil,
-   nil,   nil,   270,   270,   nil,   nil,   nil,   nil,   nil,   nil,
-   270,   nil,   nil,   270,   270,   270,   nil,   270,   270,   nil,
-   nil,   270,   270,   271,   271,   271,   nil,   271,   nil,   nil,
-   nil,   271,   271,   nil,   nil,   nil,   271,   nil,   271,   271,
-   271,   271,   271,   271,   271,   nil,   nil,   nil,   nil,   nil,
-   271,   271,   271,   271,   271,   271,   271,   nil,   nil,   271,
-   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,
-   271,   271,   271,   271,   271,   271,   271,   nil,   271,   271,
-   271,   nil,   271,   271,   nil,   271,   271,   271,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,
-   271,   nil,   nil,   271,   271,   nil,   nil,   271,   nil,   nil,
-   nil,   nil,   nil,   271,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   271,   nil,   nil,   nil,   nil,   271,   271,   271,   271,
-   271,   271,   nil,   nil,   nil,   271,   271,   nil,   nil,   nil,
-   nil,   nil,   nil,   271,   nil,   nil,   271,   271,   271,   nil,
-   271,   271,   nil,   nil,   271,   271,   272,   272,   272,   nil,
-   272,   nil,   nil,   nil,   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,
-   nil,   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,   nil,   nil,   nil,   nil,   272,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   272,   nil,   nil,   nil,   nil,   272,
-   272,   272,   272,   272,   272,   nil,   nil,   nil,   272,   272,
-   nil,   nil,   nil,   nil,   nil,   nil,   272,   nil,   nil,   272,
-   272,   272,   nil,   272,   272,   nil,   nil,   272,   272,   273,
-   273,   273,   nil,   273,   nil,   nil,   nil,   273,   273,   nil,
-   nil,   nil,   273,   nil,   273,   273,   273,   273,   273,   273,
-   273,   nil,   nil,   nil,   nil,   nil,   273,   273,   273,   273,
-   273,   273,   273,   nil,   nil,   273,   nil,   nil,   nil,   nil,
-   nil,   nil,   273,   nil,   nil,   273,   273,   273,   273,   273,
-   273,   273,   273,   nil,   273,   273,   273,   nil,   273,   273,
-   nil,   273,   273,   273,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   273,   nil,   nil,   273,   nil,   nil,   273,
-   273,   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   273,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,
-   nil,   nil,   273,   273,   273,   273,   273,   273,   nil,   nil,
-   nil,   273,   273,   nil,   nil,   nil,   nil,   nil,   nil,   273,
-   nil,   nil,   273,   273,   273,   nil,   273,   273,   nil,   nil,
-   273,   273,   274,   274,   274,   nil,   274,   nil,   nil,   nil,
-   274,   274,   nil,   nil,   nil,   274,   nil,   274,   274,   274,
-   274,   274,   274,   274,   nil,   nil,   nil,   nil,   nil,   274,
-   274,   274,   274,   274,   274,   274,   nil,   nil,   274,   nil,
-   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,
-   274,   274,   274,   274,   274,   274,   nil,   274,   274,   274,
-   nil,   274,   274,   nil,   274,   274,   274,   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,   274,   274,   nil,   nil,   274,   nil,   nil,   nil,
-   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   274,   nil,   nil,   nil,   nil,   274,   274,   274,   274,   274,
-   274,   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   nil,
-   nil,   nil,   274,   nil,   nil,   274,   274,   274,   nil,   274,
-   274,   nil,   nil,   274,   274,   275,   275,   275,   nil,   275,
-   nil,   nil,   nil,   275,   275,   nil,   nil,   nil,   275,   nil,
-   275,   275,   275,   275,   275,   275,   275,   nil,   nil,   nil,
-   nil,   nil,   275,   275,   275,   275,   275,   275,   275,   nil,
-   nil,   275,   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,
-   nil,   275,   275,   275,   275,   275,   275,   275,   275,   nil,
-   275,   275,   275,   nil,   275,   275,   nil,   275,   275,   275,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   275,
-   nil,   nil,   275,   nil,   nil,   275,   275,   nil,   nil,   275,
-   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   275,   nil,   nil,   nil,   nil,   275,   275,
-   275,   275,   275,   275,   nil,   nil,   nil,   275,   275,   nil,
-   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   275,   275,
-   275,   nil,   275,   275,   nil,   nil,   275,   275,   280,   280,
-   280,   nil,   280,   nil,   nil,   nil,   280,   280,   nil,   nil,
-   nil,   280,   nil,   280,   280,   280,   280,   280,   280,   280,
-   nil,   nil,   nil,   nil,   nil,   280,   280,   280,   280,   280,
-   280,   280,   nil,   nil,   280,   nil,   nil,   nil,   nil,   nil,
-   nil,   280,   nil,   nil,   280,   280,   280,   280,   280,   280,
-   280,   280,   nil,   280,   280,   280,   nil,   280,   280,   nil,
-   280,   280,   280,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   280,   nil,   nil,   280,   nil,   nil,   280,   280,
-   nil,   nil,   280,   nil,   nil,   nil,   nil,   nil,   280,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,   nil,   nil,
-   nil,   280,   280,   280,   280,   280,   280,   nil,   nil,   nil,
-   280,   280,   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,
-   nil,   280,   280,   280,   nil,   280,   280,   nil,   nil,   280,
-   280,   304,   304,   304,   nil,   304,   nil,   nil,   nil,   304,
-   304,   nil,   nil,   nil,   304,   nil,   304,   304,   304,   304,
-   304,   304,   304,   nil,   nil,   nil,   nil,   nil,   304,   304,
-   304,   304,   304,   304,   304,   nil,   nil,   304,   nil,   nil,
-   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,   304,   304,
-   304,   304,   304,   304,   304,   304,   304,   304,   304,   nil,
-   304,   304,   nil,   304,   304,   304,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,   nil,
-   nil,   304,   304,   nil,   nil,   304,   nil,   304,   nil,   304,
-   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   304,
-   nil,   nil,   nil,   nil,   304,   304,   304,   304,   304,   304,
-   nil,   nil,   nil,   304,   304,   nil,   nil,   nil,   nil,   nil,
-   nil,   304,   nil,   304,   304,   304,   304,   nil,   304,   304,
-   nil,   nil,   304,   304,   305,   305,   305,   nil,   305,   nil,
-   nil,   nil,   305,   305,   nil,   nil,   nil,   305,   nil,   305,
-   305,   305,   305,   305,   305,   305,   nil,   nil,   nil,   nil,
-   nil,   305,   305,   305,   305,   305,   305,   305,   nil,   nil,
-   305,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
-   305,   305,   305,   305,   305,   305,   305,   305,   305,   305,
-   305,   305,   nil,   305,   305,   nil,   305,   305,   305,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,
-   nil,   305,   nil,   nil,   305,   305,   nil,   nil,   305,   nil,
-   305,   nil,   305,   nil,   305,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   305,   nil,   nil,   nil,   nil,   305,   305,   305,
-   305,   305,   305,   nil,   nil,   nil,   305,   305,   nil,   nil,
-   nil,   nil,   nil,   nil,   305,   nil,   305,   305,   305,   305,
-   nil,   305,   305,   nil,   nil,   305,   305,   314,   314,   314,
-   nil,   314,   nil,   nil,   nil,   314,   314,   nil,   nil,   nil,
-   314,   nil,   314,   314,   314,   314,   314,   314,   314,   nil,
-   nil,   nil,   nil,   nil,   314,   314,   314,   314,   314,   314,
-   314,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
-   314,   nil,   nil,   314,   314,   314,   314,   314,   314,   314,
-   314,   314,   314,   314,   314,   nil,   314,   314,   nil,   314,
-   314,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   314,   nil,   nil,   314,   nil,   nil,   314,   314,   nil,
-   nil,   314,   nil,   314,   nil,   314,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
-   314,   314,   314,   314,   314,   314,   nil,   nil,   nil,   314,
-   314,   314,   nil,   nil,   nil,   nil,   nil,   314,   nil,   314,
-   314,   314,   314,   nil,   314,   314,   nil,   nil,   314,   314,
-   321,   321,   321,   nil,   321,   nil,   nil,   nil,   321,   321,
-   nil,   nil,   nil,   321,   nil,   321,   321,   321,   321,   321,
-   321,   321,   nil,   nil,   nil,   nil,   nil,   321,   321,   321,
-   321,   321,   321,   321,   nil,   nil,   321,   nil,   nil,   nil,
-   nil,   nil,   nil,   321,   nil,   nil,   321,   321,   321,   321,
-   321,   321,   321,   321,   nil,   321,   321,   321,   nil,   321,
-   321,   nil,   321,   321,   321,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   321,   nil,   nil,   321,   nil,   nil,
-   321,   321,   nil,   nil,   321,   nil,   nil,   nil,   nil,   nil,
-   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,
-   nil,   nil,   nil,   321,   321,   321,   321,   321,   321,   nil,
-   nil,   nil,   321,   321,   nil,   nil,   nil,   nil,   nil,   nil,
-   321,   nil,   nil,   321,   321,   321,   nil,   321,   321,   nil,
-   nil,   321,   321,   323,   323,   323,   nil,   323,   nil,   nil,
-   nil,   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,   nil,   nil,   323,   323,   nil,   nil,   323,   nil,   nil,
-   nil,   nil,   nil,   323,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   323,   nil,   nil,   nil,   nil,   323,   323,   323,   323,
-   323,   323,   nil,   nil,   nil,   323,   323,   nil,   nil,   nil,
-   nil,   nil,   nil,   323,   nil,   nil,   323,   323,   323,   nil,
-   323,   323,   nil,   nil,   323,   323,   326,   326,   326,   nil,
-   326,   nil,   nil,   nil,   326,   326,   nil,   nil,   nil,   326,
-   nil,   326,   326,   326,   326,   326,   326,   326,   nil,   nil,
-   nil,   nil,   nil,   326,   326,   326,   326,   326,   326,   326,
-   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   326,
-   nil,   nil,   326,   326,   326,   326,   326,   326,   326,   326,
-   nil,   326,   326,   326,   nil,   326,   326,   nil,   326,   326,
-   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   326,   nil,   nil,   326,   326,   nil,   nil,
-   326,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   326,
-   326,   326,   326,   326,   326,   nil,   nil,   nil,   326,   326,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   326,
-   326,   326,   nil,   326,   326,   nil,   nil,   326,   326,   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,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   327,
-   nil,   nil,   327,   327,   327,   nil,   327,   327,   nil,   nil,
-   327,   327,   333,   333,   333,   333,   333,   nil,   nil,   nil,
-   333,   333,   nil,   nil,   nil,   333,   nil,   333,   333,   333,
-   333,   333,   333,   333,   nil,   nil,   nil,   nil,   nil,   333,
-   333,   333,   333,   333,   333,   333,   nil,   nil,   333,   nil,
-   nil,   nil,   nil,   nil,   333,   333,   nil,   333,   333,   333,
-   333,   333,   333,   333,   333,   333,   nil,   333,   333,   333,
-   nil,   333,   333,   nil,   333,   333,   333,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   333,
-   nil,   nil,   333,   333,   nil,   nil,   333,   nil,   333,   nil,
-   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   333,   nil,   nil,   nil,   nil,   333,   333,   333,   333,   333,
-   333,   nil,   nil,   nil,   333,   333,   nil,   nil,   nil,   nil,
-   nil,   nil,   333,   nil,   nil,   333,   333,   333,   nil,   333,
-   333,   nil,   nil,   333,   333,   369,   369,   369,   nil,   369,
-   nil,   nil,   nil,   369,   369,   nil,   nil,   nil,   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,   369,   369,   369,   369,   369,   369,   nil,
-   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   369,   nil,   nil,   369,   369,
-   369,   nil,   369,   369,   nil,   nil,   369,   369,   371,   371,
-   371,   nil,   371,   nil,   nil,   nil,   371,   371,   nil,   nil,
-   nil,   371,   nil,   371,   371,   371,   371,   371,   371,   371,
-   nil,   nil,   nil,   nil,   nil,   371,   371,   371,   371,   371,
-   371,   371,   nil,   nil,   371,   nil,   nil,   nil,   nil,   nil,
-   nil,   371,   nil,   nil,   371,   371,   371,   371,   371,   371,
-   371,   371,   nil,   371,   371,   371,   nil,   371,   371,   nil,
-   371,   371,   371,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   371,   nil,   nil,   371,   371,   nil,   371,   371,
-   nil,   nil,   371,   nil,   nil,   nil,   nil,   nil,   371,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   371,   nil,   nil,   nil,
-   nil,   371,   371,   371,   371,   371,   371,   nil,   nil,   nil,
-   371,   371,   nil,   nil,   nil,   nil,   nil,   nil,   371,   nil,
-   nil,   371,   371,   371,   nil,   371,   371,   nil,   nil,   371,
-   371,   383,   383,   383,   nil,   383,   nil,   nil,   nil,   383,
-   383,   nil,   nil,   nil,   383,   nil,   383,   383,   383,   383,
-   383,   383,   383,   nil,   nil,   nil,   nil,   nil,   383,   383,
-   383,   383,   383,   383,   383,   nil,   nil,   383,   nil,   nil,
-   nil,   nil,   nil,   nil,   383,   nil,   nil,   383,   383,   383,
-   383,   383,   383,   383,   383,   383,   383,   383,   383,   nil,
-   383,   383,   nil,   383,   383,   383,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   383,   nil,   nil,   383,   nil,
-   nil,   383,   383,   nil,   nil,   383,   nil,   383,   nil,   nil,
-   nil,   383,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   383,
-   nil,   nil,   nil,   nil,   383,   383,   383,   383,   383,   383,
-   nil,   nil,   nil,   383,   383,   nil,   nil,   nil,   nil,   nil,
-   nil,   383,   nil,   383,   383,   383,   383,   nil,   383,   383,
-   nil,   nil,   383,   383,   384,   384,   384,   nil,   384,   nil,
-   nil,   nil,   384,   384,   nil,   nil,   nil,   384,   nil,   384,
-   384,   384,   384,   384,   384,   384,   nil,   nil,   nil,   nil,
-   nil,   384,   384,   384,   384,   384,   384,   384,   nil,   nil,
-   384,   nil,   nil,   nil,   nil,   nil,   nil,   384,   nil,   nil,
-   384,   384,   384,   384,   384,   384,   384,   384,   384,   384,
-   384,   384,   nil,   384,   384,   nil,   384,   384,   384,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   384,   nil,
-   nil,   384,   nil,   nil,   384,   384,   nil,   nil,   384,   nil,
-   nil,   nil,   nil,   nil,   384,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   384,   nil,   nil,   nil,   nil,   384,   384,   384,
-   384,   384,   384,   nil,   nil,   nil,   384,   384,   nil,   nil,
-   nil,   nil,   nil,   nil,   384,   nil,   384,   384,   384,   384,
-   nil,   384,   384,   nil,   nil,   384,   384,   389,   389,   389,
-   nil,   389,   nil,   nil,   nil,   389,   389,   nil,   nil,   nil,
-   389,   nil,   389,   389,   389,   389,   389,   389,   389,   nil,
-   nil,   nil,   nil,   nil,   389,   389,   389,   389,   389,   389,
-   389,   nil,   nil,   389,   nil,   nil,   nil,   nil,   nil,   nil,
-   389,   nil,   nil,   389,   389,   389,   389,   389,   389,   389,
-   389,   nil,   389,   389,   389,   nil,   389,   389,   nil,   389,
-   389,   389,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   389,   nil,   nil,   389,   nil,   nil,   389,   389,   nil,
-   nil,   389,   nil,   nil,   nil,   nil,   nil,   389,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   389,   nil,   nil,   nil,   nil,
-   389,   389,   389,   389,   389,   389,   nil,   nil,   nil,   389,
-   389,   nil,   nil,   nil,   nil,   nil,   nil,   389,   nil,   nil,
-   389,   389,   389,   nil,   389,   389,   nil,   nil,   389,   389,
-   450,   450,   450,   nil,   450,   nil,   nil,   nil,   450,   450,
-   nil,   nil,   nil,   450,   nil,   450,   450,   450,   450,   450,
-   450,   450,   nil,   nil,   nil,   nil,   nil,   450,   450,   450,
-   450,   450,   450,   450,   nil,   nil,   450,   nil,   nil,   nil,
-   nil,   nil,   nil,   450,   nil,   nil,   450,   450,   450,   450,
-   450,   450,   450,   450,   nil,   450,   450,   450,   nil,   450,
-   450,   nil,   450,   450,   450,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   450,   nil,   nil,   450,   nil,   nil,
-   450,   450,   nil,   nil,   450,   nil,   nil,   nil,   nil,   nil,
-   450,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   450,   nil,
-   nil,   nil,   nil,   450,   450,   450,   450,   450,   450,   nil,
-   nil,   nil,   450,   450,   nil,   nil,   nil,   nil,   nil,   nil,
-   450,   nil,   nil,   450,   450,   450,   484,   450,   450,   nil,
-   nil,   450,   450,   484,   484,   484,   nil,   nil,   484,   484,
-   484,  1085,   484,  1085,  1085,  1085,  1085,  1085,   nil,   nil,
-   484,   484,   484,   484,   484,   nil,   nil,  1085,   nil,   nil,
-   nil,   nil,   484,   484,   nil,   484,   484,   484,   484,   484,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1085,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1085,  1085,
-  1085,  1085,   nil,   484,   484,   484,   484,   484,   484,   484,
-   484,   484,   484,   484,   484,   484,   484,   nil,   nil,   484,
-   484,   484,   nil,   nil,   484,   nil,   nil,   484,   nil,   nil,
-   484,   484,   nil,   484,  1085,   484,   nil,   484,   nil,   484,
-   484,   484,   484,   484,   484,   484,   nil,   484,   484,   484,
-  1090,   nil,  1090,  1090,  1090,  1090,  1090,   nil,   nil,   nil,
-   nil,   nil,   484,   484,   484,   484,  1090,   484,   485,   484,
-   nil,   nil,   nil,   nil,   484,   485,   485,   485,   484,   nil,
-   485,   485,   485,   nil,   485,   nil,   nil,   nil,  1090,   nil,
-   nil,   nil,   485,   485,   485,   485,   485,   nil,   nil,  1090,
-  1090,   nil,   nil,   nil,   485,   485,   nil,   485,   485,   485,
-   485,   485,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1090,   nil,   485,   485,   485,   485,   485,
-   485,   485,   485,   485,   485,   485,   485,   485,   485,   nil,
-   nil,   485,   485,   485,   nil,   nil,   485,   nil,   nil,   485,
-   nil,   nil,   485,   485,   nil,   485,   nil,   485,   nil,   485,
-   nil,   485,   485,   485,   485,   485,   485,   485,   nil,   485,
-   485,   485,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   485,   485,   485,   485,   nil,   485,
-   nil,   485,   nil,   494,   494,   494,   485,   494,   nil,   nil,
-   485,   494,   494,   nil,   nil,   nil,   494,   nil,   494,   494,
-   494,   494,   494,   494,   494,   nil,   nil,   nil,   nil,   nil,
-   494,   494,   494,   494,   494,   494,   494,   nil,   nil,   494,
-   nil,   nil,   nil,   nil,   nil,   nil,   494,   nil,   nil,   494,
-   494,   494,   494,   494,   494,   494,   494,   494,   494,   494,
-   494,   nil,   494,   494,   nil,   494,   494,   494,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   494,   nil,   nil,
-   494,   nil,   nil,   494,   494,   nil,   nil,   494,   nil,   494,
-   nil,   494,   nil,   494,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   494,   nil,   nil,   nil,   nil,   494,   494,   494,   494,
-   494,   494,   nil,   nil,   nil,   494,   494,   nil,   nil,   nil,
-   nil,   nil,   nil,   494,   nil,   494,   494,   494,   494,   nil,
-   494,   494,   nil,   nil,   494,   494,   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,   nil,   496,   496,   496,   496,   496,   496,   496,
-   nil,   nil,   496,   nil,   nil,   nil,   nil,   nil,   nil,   496,
-   nil,   nil,   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,   nil,   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,
-   nil,   nil,   nil,   nil,   nil,   nil,   496,   nil,   nil,   496,
-   496,   496,   nil,   496,   496,   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,   nil,   497,   497,   497,   497,
-   497,   497,   497,   nil,   nil,   497,   nil,   nil,   nil,   nil,
-   nil,   nil,   497,   nil,   nil,   497,   497,   497,   497,   497,
-   497,   497,   497,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   497,
-   nil,   nil,   497,   497,   497,   nil,   497,   497,   nil,   nil,
-   497,   497,   498,   498,   498,   nil,   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,   nil,   498,   nil,   nil,   498,   498,
-   498,   498,   498,   498,   498,   498,   nil,   498,   498,   498,
-   nil,   498,   498,   nil,   498,   498,   498,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   498,   nil,   nil,   498,
-   nil,   nil,   498,   498,   nil,   nil,   498,   nil,   nil,   nil,
-   nil,   nil,   498,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   498,   nil,   nil,   nil,   nil,   498,   498,   498,   498,   498,
-   498,   nil,   nil,   nil,   498,   498,   nil,   nil,   nil,   nil,
-   nil,   nil,   498,   nil,   nil,   498,   498,   498,   nil,   498,
-   498,   nil,   nil,   498,   498,   527,   527,   527,   nil,   527,
-   nil,   nil,   nil,   527,   527,   nil,   nil,   nil,   527,   nil,
-   527,   527,   527,   527,   527,   527,   527,   nil,   nil,   nil,
-   nil,   nil,   527,   527,   527,   527,   527,   527,   527,   nil,
-   nil,   527,   nil,   nil,   nil,   nil,   nil,   nil,   527,   nil,
-   nil,   527,   527,   527,   527,   527,   527,   527,   527,   nil,
-   527,   527,   527,   nil,   527,   527,   nil,   527,   527,   527,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   527,
-   nil,   nil,   527,   nil,   nil,   527,   527,   nil,   nil,   527,
-   nil,   nil,   nil,   nil,   nil,   527,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   527,   nil,   nil,   nil,   nil,   527,   527,
-   527,   527,   527,   527,   nil,   nil,   nil,   527,   527,   nil,
-   nil,   nil,   nil,   nil,   nil,   527,   nil,   nil,   527,   527,
-   527,   530,   527,   527,   nil,   nil,   527,   527,   530,   530,
-   530,   nil,   nil,   530,   530,   530,   nil,   530,   924,   924,
-   924,   924,   nil,   nil,   nil,   530,   530,   530,   nil,   nil,
-   nil,   nil,   nil,   nil,   924,   924,   924,   530,   530,   nil,
-   530,   530,   530,   530,   530,   nil,   nil,   924,   924,   nil,
-   nil,   nil,   924,   nil,   nil,   nil,   nil,   nil,  1092,   nil,
-  1092,  1092,  1092,  1092,  1092,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1092,   nil,   nil,   nil,   nil,   530,
-   nil,   nil,   nil,   nil,   nil,   nil,   530,   nil,   nil,   nil,
-   nil,   530,   530,   nil,   nil,   nil,  1092,   nil,   nil,   nil,
-   nil,   924,   924,   924,   924,   924,   924,  1092,  1092,   nil,
-   924,   924,   nil,   530,   530,   nil,   nil,   nil,   924,   nil,
-   nil,   924,   924,   924,   nil,   924,   924,   530,   nil,   535,
-   535,   535,   530,   535,   nil,   nil,   nil,   535,   535,   530,
-   nil,  1092,   535,   530,   535,   535,   535,   535,   535,   535,
-   535,   nil,   nil,   nil,   nil,   nil,   535,   535,   535,   535,
-   535,   535,   535,   nil,   nil,   535,   nil,   nil,   nil,   nil,
-   nil,   nil,   535,   nil,   nil,   535,   535,   535,   535,   535,
-   535,   535,   535,   nil,   535,   535,   535,   nil,   535,   535,
-   nil,   535,   535,   535,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   535,   nil,   nil,   535,   nil,   nil,   535,
-   535,   nil,   nil,   535,   nil,   nil,   nil,   nil,   nil,   535,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   535,   nil,   nil,
-   nil,   nil,   535,   535,   535,   535,   535,   535,   nil,   nil,
-   nil,   535,   535,   nil,   nil,   nil,   nil,   nil,   nil,   535,
-   nil,   nil,   535,   535,   535,   nil,   535,   535,   nil,   nil,
-   535,   535,   545,   545,   545,   nil,   545,   nil,   nil,   nil,
-   545,   545,   nil,   nil,   nil,   545,   nil,   545,   545,   545,
-   545,   545,   545,   545,   nil,   nil,   nil,   nil,   nil,   545,
-   545,   545,   545,   545,   545,   545,   nil,   nil,   545,   nil,
-   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   545,   545,
-   545,   545,   545,   545,   545,   545,   545,   545,   545,   545,
-   nil,   545,   545,   nil,   545,   545,   545,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   545,
-   nil,   nil,   545,   545,   nil,   nil,   545,   nil,   545,   nil,
-   545,   nil,   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   545,   nil,   nil,   nil,   nil,   545,   545,   545,   545,   545,
-   545,   nil,   nil,   nil,   545,   545,   nil,   nil,   nil,   nil,
-   nil,   nil,   545,   nil,   545,   545,   545,   545,   nil,   545,
-   545,   nil,   nil,   545,   545,   548,   548,   548,   nil,   548,
-   nil,   nil,   nil,   548,   548,   nil,   nil,   nil,   548,   nil,
-   548,   548,   548,   548,   548,   548,   548,   nil,   nil,   nil,
-   nil,   nil,   548,   548,   548,   548,   548,   548,   548,   nil,
-   nil,   548,   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,
-   nil,   548,   548,   548,   548,   548,   548,   548,   548,   548,
-   548,   548,   548,   nil,   548,   548,   nil,   548,   548,   548,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   548,
-   nil,   nil,   548,   nil,   nil,   548,   548,   nil,   nil,   548,
-   nil,   nil,   nil,   548,   nil,   548,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   548,   nil,   nil,   nil,   nil,   548,   548,
-   548,   548,   548,   548,   nil,   nil,   nil,   548,   548,   nil,
-   nil,   nil,   nil,   nil,   nil,   548,   nil,   548,   548,   548,
-   548,   nil,   548,   548,   nil,   nil,   548,   548,   550,   550,
-   550,   nil,   550,   nil,   nil,   nil,   550,   550,   nil,   nil,
-   nil,   550,   nil,   550,   550,   550,   550,   550,   550,   550,
-   nil,   nil,   nil,   nil,   nil,   550,   550,   550,   550,   550,
-   550,   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,
-   nil,   550,   nil,   nil,   550,   550,   550,   550,   550,   550,
-   550,   550,   nil,   550,   550,   550,   nil,   550,   550,   nil,
-   550,   550,   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   550,   nil,   nil,   550,   nil,   nil,   550,   550,
-   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,   550,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,   nil,
-   nil,   550,   550,   550,   550,   550,   550,   nil,   nil,   nil,
-   550,   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,
-   nil,   550,   550,   550,   nil,   550,   550,   nil,   nil,   550,
-   550,   556,   556,   556,   556,   556,   nil,   nil,   nil,   556,
-   556,   nil,   nil,   nil,   556,   nil,   556,   556,   556,   556,
-   556,   556,   556,   nil,   nil,   nil,   nil,   nil,   556,   556,
-   556,   556,   556,   556,   556,   nil,   nil,   556,   nil,   nil,
-   nil,   nil,   nil,   556,   556,   556,   556,   556,   556,   556,
-   556,   556,   556,   556,   556,   nil,   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,   556,   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,   nil,   nil,   nil,   nil,   nil,
-   556,   556,   nil,   nil,   556,   556,   556,   nil,   556,   556,
-   nil,   nil,   556,   556,   566,   566,   566,   nil,   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,   nil,   566,   nil,   nil,
-   566,   566,   566,   566,   566,   566,   566,   566,   566,   566,
-   566,   566,   nil,   566,   566,   nil,   566,   566,   566,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   566,   nil,
-   nil,   566,   nil,   nil,   566,   566,   nil,   nil,   566,   nil,
-   566,   nil,   566,   nil,   566,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   566,   nil,   nil,   nil,   nil,   566,   566,   566,
-   566,   566,   566,   nil,   nil,   nil,   566,   566,   nil,   nil,
-   nil,   nil,   nil,   nil,   566,   nil,   566,   566,   566,   566,
-   nil,   566,   566,   nil,   nil,   566,   566,   576,   576,   576,
-   nil,   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,   nil,
-   576,   nil,   nil,   576,   576,   576,   576,   576,   576,   576,
-   576,   nil,   576,   576,   576,   nil,   576,   576,   nil,   576,
-   576,   576,   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,   576,   nil,
-   nil,   576,   nil,   nil,   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,   576,   576,   nil,   576,   576,   nil,   nil,   576,   576,
-   579,   579,   579,   nil,   579,   nil,   nil,   nil,   579,   579,
-   nil,   nil,   nil,   579,   nil,   579,   579,   579,   579,   579,
-   579,   579,   nil,   nil,   nil,   nil,   nil,   579,   579,   579,
-   579,   579,   579,   579,   nil,   nil,   579,   nil,   nil,   nil,
-   nil,   nil,   nil,   579,   nil,   nil,   579,   579,   579,   579,
-   579,   579,   579,   579,   nil,   579,   579,   579,   nil,   579,
-   579,   nil,   579,   579,   579,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   579,   nil,   nil,   579,   nil,   nil,
-   579,   579,   nil,   nil,   579,   nil,   nil,   nil,   nil,   nil,
-   579,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   579,   nil,
-   nil,   nil,   nil,   579,   579,   579,   579,   579,   579,   nil,
-   nil,   nil,   579,   579,   nil,   nil,   nil,   nil,   nil,   nil,
-   579,   nil,   nil,   579,   579,   579,   nil,   579,   579,   nil,
-   nil,   579,   579,   582,   582,   582,   nil,   582,   nil,   nil,
-   nil,   582,   582,   nil,   nil,   nil,   582,   nil,   582,   582,
-   582,   582,   582,   582,   582,   nil,   nil,   nil,   nil,   nil,
-   582,   582,   582,   582,   582,   582,   582,   nil,   nil,   582,
-   nil,   nil,   nil,   nil,   nil,   nil,   582,   nil,   nil,   582,
-   582,   582,   582,   582,   582,   582,   582,   nil,   582,   582,
-   582,   nil,   582,   582,   nil,   582,   582,   582,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   582,   nil,   nil,
-   582,   nil,   nil,   582,   582,   nil,   nil,   582,   nil,   nil,
-   nil,   nil,   nil,   582,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   582,   nil,   nil,   nil,   nil,   582,   582,   582,   582,
-   582,   582,   nil,   nil,   nil,   582,   582,   nil,   nil,   nil,
-   nil,   nil,   nil,   582,   nil,   nil,   582,   582,   582,   nil,
-   582,   582,   nil,   nil,   582,   582,   583,   583,   583,   nil,
-   583,   nil,   nil,   nil,   583,   583,   nil,   nil,   nil,   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,   583,   583,   583,   583,   583,   583,
-   nil,   583,   583,   583,   nil,   583,   583,   nil,   583,   583,
-   583,   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,   583,   nil,   nil,
-   583,   nil,   nil,   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,   nil,   nil,   nil,   583,   nil,   nil,   583,
-   583,   583,   nil,   583,   583,   nil,   nil,   583,   583,   609,
-   609,   609,   nil,   609,   nil,   nil,   nil,   609,   609,   nil,
-   nil,   nil,   609,   nil,   609,   609,   609,   609,   609,   609,
-   609,   nil,   nil,   nil,   nil,   nil,   609,   609,   609,   609,
-   609,   609,   609,   nil,   nil,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   609,   nil,   nil,   609,   609,   609,   609,   609,
-   609,   609,   609,   nil,   609,   609,   609,   nil,   609,   609,
-   nil,   609,   609,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   609,   nil,   nil,   609,   nil,   nil,   609,
-   609,   nil,   nil,   609,   nil,   nil,   nil,   nil,   nil,   609,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   609,   nil,   nil,
-   nil,   nil,   609,   609,   609,   609,   609,   609,   nil,   nil,
-   nil,   609,   609,   nil,   nil,   nil,   nil,   nil,   nil,   609,
-   nil,   nil,   609,   609,   609,   nil,   609,   609,   nil,   nil,
-   609,   609,   623,   623,   623,   nil,   623,   nil,   nil,   nil,
-   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,   nil,   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,   nil,   nil,
-   nil,   nil,   623,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   623,   nil,   nil,   nil,   nil,   623,   623,   623,   623,   623,
-   623,   nil,   nil,   nil,   623,   623,   nil,   nil,   nil,   nil,
-   nil,   nil,   623,   nil,   nil,   623,   623,   623,   nil,   623,
-   623,   nil,   nil,   623,   623,   647,   647,   647,   nil,   647,
-   nil,   nil,   nil,   647,   647,   nil,   nil,   nil,   647,   nil,
-   647,   647,   647,   647,   647,   647,   647,   nil,   nil,   nil,
-   nil,   nil,   647,   647,   647,   647,   647,   647,   647,   nil,
-   nil,   647,   nil,   nil,   nil,   nil,   nil,   nil,   647,   nil,
-   nil,   647,   647,   647,   647,   647,   647,   647,   647,   647,
-   647,   647,   647,   nil,   647,   647,   nil,   647,   647,   647,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   647,
-   nil,   nil,   647,   nil,   nil,   647,   647,   nil,   nil,   647,
-   nil,   647,   nil,   647,   nil,   647,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   647,   nil,   nil,   nil,   nil,   647,   647,
-   647,   647,   647,   647,   nil,   nil,   nil,   647,   647,   nil,
-   nil,   nil,   nil,   nil,   nil,   647,   nil,   647,   647,   647,
-   647,   nil,   647,   647,   nil,   nil,   647,   647,   659,   659,
-   659,   nil,   659,   nil,   nil,   nil,   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,   659,   nil,   nil,   nil,
-   nil,   659,   659,   659,   659,   659,   659,   nil,   nil,   nil,
-   659,   659,   nil,   nil,   nil,   nil,   nil,   nil,   659,   nil,
-   nil,   659,   659,   659,   nil,   659,   659,   nil,   nil,   659,
-   659,   691,   691,   691,   691,   691,   nil,   nil,   nil,   691,
-   691,   nil,   nil,   nil,   691,   nil,   691,   691,   691,   691,
-   691,   691,   691,   nil,   nil,   nil,   nil,   nil,   691,   691,
-   691,   691,   691,   691,   691,   nil,   nil,   691,   nil,   nil,
-   nil,   nil,   nil,   691,   691,   nil,   691,   691,   691,   691,
-   691,   691,   691,   691,   691,   nil,   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,   691,   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   691,   nil,   nil,   691,   691,   691,   nil,   691,   691,
-   nil,   nil,   691,   691,   693,   693,   693,   nil,   693,   nil,
-   nil,   nil,   693,   693,   nil,   nil,   nil,   693,   nil,   693,
-   693,   693,   693,   693,   693,   693,   nil,   nil,   nil,   nil,
-   nil,   693,   693,   693,   693,   693,   693,   693,   nil,   nil,
-   693,   nil,   nil,   nil,   nil,   nil,   nil,   693,   nil,   nil,
-   693,   693,   693,   693,   693,   693,   693,   693,   nil,   693,
-   693,   693,   nil,   693,   693,   nil,   693,   693,   693,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   693,   nil,
-   nil,   693,   nil,   nil,   693,   693,   nil,   nil,   693,   nil,
-   693,   nil,   nil,   nil,   693,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   693,   nil,   nil,   nil,   nil,   693,   693,   693,
-   693,   693,   693,   nil,   nil,   nil,   693,   693,   nil,   nil,
-   nil,   nil,   nil,   nil,   693,   nil,   nil,   693,   693,   693,
-   nil,   693,   693,   nil,   nil,   693,   693,   694,   694,   694,
-   nil,   694,   nil,   nil,   nil,   694,   694,   nil,   nil,   nil,
-   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,   694,   694,   694,   694,   694,
-   694,   nil,   694,   694,   694,   nil,   694,   694,   nil,   694,
-   694,   694,   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,   694,   nil,
-   nil,   694,   nil,   nil,   nil,   nil,   nil,   694,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   694,   nil,   nil,   nil,   nil,
-   694,   694,   694,   694,   694,   694,   nil,   nil,   nil,   694,
-   694,   nil,   nil,   nil,   nil,   nil,   nil,   694,   nil,   nil,
-   694,   694,   694,   nil,   694,   694,   nil,   nil,   694,   694,
-   695,   695,   695,   nil,   695,   nil,   nil,   nil,   695,   695,
-   nil,   nil,   nil,   695,   nil,   695,   695,   695,   695,   695,
-   695,   695,   nil,   nil,   nil,   nil,   nil,   695,   695,   695,
-   695,   695,   695,   695,   nil,   nil,   695,   nil,   nil,   nil,
-   nil,   nil,   nil,   695,   nil,   nil,   695,   695,   695,   695,
-   695,   695,   695,   695,   695,   695,   695,   695,   nil,   695,
-   695,   nil,   695,   695,   695,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   695,   nil,   nil,   695,   nil,   nil,
-   695,   695,   nil,   nil,   695,   nil,   695,   nil,   695,   nil,
-   695,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   695,   nil,
-   nil,   nil,   nil,   695,   695,   695,   695,   695,   695,   nil,
-   nil,   nil,   695,   695,   nil,   nil,   nil,   nil,   nil,   nil,
-   695,   nil,   695,   695,   695,   695,   nil,   695,   695,   nil,
-   nil,   695,   695,   698,   698,   698,   698,   698,   nil,   nil,
-   nil,   698,   698,   nil,   nil,   nil,   698,   nil,   698,   698,
-   698,   698,   698,   698,   698,   nil,   nil,   nil,   nil,   nil,
-   698,   698,   698,   698,   698,   698,   698,   nil,   nil,   698,
-   nil,   nil,   nil,   nil,   nil,   698,   698,   nil,   698,   698,
-   698,   698,   698,   698,   698,   698,   698,   nil,   698,   698,
-   698,   nil,   698,   698,   nil,   698,   698,   698,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   698,   nil,   nil,
-   698,   nil,   nil,   698,   698,   nil,   nil,   698,   nil,   698,
-   nil,   nil,   nil,   698,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   698,   nil,   nil,   nil,   nil,   698,   698,   698,   698,
-   698,   698,   nil,   nil,   nil,   698,   698,   nil,   nil,   nil,
-   nil,   nil,   nil,   698,   nil,   nil,   698,   698,   698,   nil,
-   698,   698,   nil,   nil,   698,   698,   699,   699,   699,   nil,
-   699,   nil,   nil,   nil,   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,   699,   nil,   nil,   nil,   nil,   699,
-   699,   699,   699,   699,   699,   nil,   nil,   nil,   699,   699,
-   nil,   nil,   nil,   nil,   nil,   nil,   699,   nil,   nil,   699,
-   699,   699,   nil,   699,   699,   nil,   nil,   699,   699,   702,
-   702,   702,   nil,   702,   nil,   nil,   nil,   702,   702,   nil,
-   nil,   nil,   702,   nil,   702,   702,   702,   702,   702,   702,
-   702,   nil,   nil,   nil,   nil,   nil,   702,   702,   702,   702,
-   702,   702,   702,   nil,   nil,   702,   nil,   nil,   nil,   nil,
-   nil,   nil,   702,   nil,   nil,   702,   702,   702,   702,   702,
-   702,   702,   702,   702,   702,   702,   702,   nil,   702,   702,
-   nil,   702,   702,   702,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   702,   nil,   nil,   702,   nil,   nil,   702,
-   702,   nil,   nil,   702,   nil,   702,   nil,   702,   nil,   702,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,
-   nil,   nil,   702,   702,   702,   702,   702,   702,   nil,   nil,
-   nil,   702,   702,   nil,   nil,   nil,   nil,   nil,   nil,   702,
-   nil,   702,   702,   702,   702,   nil,   702,   702,   nil,   nil,
-   702,   702,   703,   703,   703,   nil,   703,   nil,   nil,   nil,
-   703,   703,   nil,   nil,   nil,   703,   nil,   703,   703,   703,
-   703,   703,   703,   703,   nil,   nil,   nil,   nil,   nil,   703,
-   703,   703,   703,   703,   703,   703,   nil,   nil,   703,   nil,
-   nil,   nil,   nil,   nil,   nil,   703,   nil,   nil,   703,   703,
-   703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
-   nil,   703,   703,   nil,   703,   703,   703,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   703,   nil,   nil,   703,
-   nil,   nil,   703,   703,   nil,   nil,   703,   nil,   nil,   nil,
-   703,   nil,   703,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   703,   nil,   nil,   nil,   nil,   703,   703,   703,   703,   703,
-   703,   nil,   nil,   nil,   703,   703,   nil,   nil,   nil,   nil,
-   nil,   nil,   703,   nil,   703,   703,   703,   703,   nil,   703,
-   703,   nil,   nil,   703,   703,   704,   704,   704,   nil,   704,
-   nil,   nil,   nil,   704,   704,   nil,   nil,   nil,   704,   nil,
-   704,   704,   704,   704,   704,   704,   704,   nil,   nil,   nil,
-   nil,   nil,   704,   704,   704,   704,   704,   704,   704,   nil,
-   nil,   704,   nil,   nil,   nil,   nil,   nil,   nil,   704,   nil,
-   nil,   704,   704,   704,   704,   704,   704,   704,   704,   nil,
-   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,   nil,   nil,   nil,   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,   nil,
-   nil,   nil,   nil,   nil,   nil,   704,   nil,   nil,   704,   704,
-   704,   nil,   704,   704,   nil,   nil,   704,   704,   705,   705,
-   705,   nil,   705,   nil,   nil,   nil,   705,   705,   nil,   nil,
-   nil,   705,   nil,   705,   705,   705,   705,   705,   705,   705,
-   nil,   nil,   nil,   nil,   nil,   705,   705,   705,   705,   705,
-   705,   705,   nil,   nil,   705,   nil,   nil,   nil,   nil,   nil,
-   nil,   705,   nil,   nil,   705,   705,   705,   705,   705,   705,
-   705,   705,   nil,   705,   705,   705,   nil,   705,   705,   nil,
-   705,   705,   705,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   705,   nil,   nil,   705,   nil,   nil,   705,   705,
-   nil,   nil,   705,   nil,   nil,   nil,   nil,   nil,   705,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   705,   nil,   nil,   nil,
-   nil,   705,   705,   705,   705,   705,   705,   nil,   nil,   nil,
-   705,   705,   nil,   nil,   nil,   nil,   nil,   nil,   705,   nil,
-   nil,   705,   705,   705,   nil,   705,   705,   nil,   nil,   705,
-   705,   710,   710,   710,   nil,   710,   nil,   nil,   nil,   710,
-   710,   nil,   nil,   nil,   710,   nil,   710,   710,   710,   710,
-   710,   710,   710,   nil,   nil,   nil,   nil,   nil,   710,   710,
-   710,   710,   710,   710,   710,   nil,   nil,   710,   nil,   nil,
-   nil,   nil,   nil,   nil,   710,   nil,   nil,   710,   710,   710,
-   710,   710,   710,   710,   710,   nil,   710,   710,   710,   nil,
-   710,   710,   nil,   710,   710,   710,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   710,   nil,   nil,   710,   nil,
-   nil,   710,   710,   nil,   nil,   710,   nil,   nil,   nil,   nil,
-   nil,   710,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   710,
-   nil,   nil,   nil,   nil,   710,   710,   710,   710,   710,   710,
-   nil,   nil,   nil,   710,   710,   nil,   nil,   nil,   nil,   nil,
-   nil,   710,   nil,   nil,   710,   710,   710,   nil,   710,   710,
-   nil,   nil,   710,   710,   711,   711,   711,   nil,   711,   nil,
-   nil,   nil,   711,   711,   nil,   nil,   nil,   711,   nil,   711,
-   711,   711,   711,   711,   711,   711,   nil,   nil,   nil,   nil,
-   nil,   711,   711,   711,   711,   711,   711,   711,   nil,   nil,
-   711,   nil,   nil,   nil,   nil,   nil,   nil,   711,   nil,   nil,
-   711,   711,   711,   711,   711,   711,   711,   711,   nil,   711,
-   711,   711,   nil,   711,   711,   nil,   711,   711,   711,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   711,   nil,
-   nil,   711,   nil,   nil,   711,   711,   nil,   nil,   711,   nil,
-   nil,   nil,   nil,   nil,   711,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   711,   nil,   nil,   nil,   nil,   711,   711,   711,
-   711,   711,   711,   nil,   nil,   nil,   711,   711,   nil,   nil,
-   nil,   nil,   nil,   nil,   711,   nil,   nil,   711,   711,   711,
-   nil,   711,   711,   nil,   nil,   711,   711,   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,   nil,   759,   759,   759,   759,   759,   759,
-   759,   nil,   nil,   759,   nil,   nil,   nil,   nil,   nil,   nil,
-   759,   nil,   nil,   759,   759,   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,   759,   nil,   759,   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,   nil,   nil,   nil,   nil,   nil,   nil,   759,   nil,   759,
-   759,   759,   759,   nil,   759,   759,   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,   nil,   768,   768,   768,
-   768,   768,   768,   768,   nil,   nil,   768,   nil,   nil,   nil,
-   nil,   nil,   nil,   768,   nil,   nil,   768,   768,   768,   768,
-   768,   768,   768,   768,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
-   768,   nil,   nil,   768,   768,   768,   nil,   768,   768,   nil,
-   nil,   768,   768,   771,   771,   771,   nil,   771,   nil,   nil,
-   nil,   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,   771,   nil,   nil,   nil,   nil,   771,   771,   771,   771,
-   771,   771,   nil,   nil,   nil,   771,   771,   nil,   nil,   nil,
-   nil,   nil,   nil,   771,   nil,   nil,   771,   771,   771,   nil,
-   771,   771,   nil,   nil,   771,   771,   793,   793,   793,   nil,
-   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,   nil,   793,
-   nil,   nil,   793,   793,   793,   793,   793,   793,   793,   793,
-   nil,   793,   793,   793,   nil,   793,   793,   nil,   793,   793,
-   793,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   793,   nil,   nil,   793,   nil,   nil,   793,   793,   nil,   nil,
-   793,   nil,   793,   nil,   nil,   nil,   793,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   793,   nil,   nil,   nil,   nil,   793,
-   793,   793,   793,   793,   793,   nil,   nil,   nil,   793,   793,
-   nil,   nil,   nil,   nil,   nil,   nil,   793,   nil,   nil,   793,
-   793,   793,   nil,   793,   793,   nil,   nil,   793,   793,   808,
-   808,   808,   nil,   808,   nil,   nil,   nil,   808,   808,   nil,
-   nil,   nil,   808,   nil,   808,   808,   808,   808,   808,   808,
-   808,   nil,   nil,   nil,   nil,   nil,   808,   808,   808,   808,
-   808,   808,   808,   nil,   nil,   808,   nil,   nil,   nil,   nil,
-   nil,   nil,   808,   nil,   nil,   808,   808,   808,   808,   808,
-   808,   808,   808,   nil,   808,   808,   808,   nil,   808,   808,
-   nil,   808,   808,   808,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   808,   nil,   nil,   808,   nil,   nil,   808,
-   808,   nil,   nil,   808,   nil,   nil,   nil,   nil,   nil,   808,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   808,   nil,   nil,
-   nil,   nil,   808,   808,   808,   808,   808,   808,   nil,   nil,
-   nil,   808,   808,   nil,   nil,   nil,   nil,   nil,   nil,   808,
-   nil,   nil,   808,   808,   808,   nil,   808,   808,   nil,   nil,
-   808,   808,   828,   828,   828,   nil,   828,   nil,   nil,   nil,
-   828,   828,   nil,   nil,   nil,   828,   nil,   828,   828,   828,
-   828,   828,   828,   828,   nil,   nil,   nil,   nil,   nil,   828,
-   828,   828,   828,   828,   828,   828,   nil,   nil,   828,   nil,
-   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,   828,
-   828,   828,   828,   828,   828,   828,   828,   828,   828,   828,
-   nil,   828,   828,   nil,   828,   828,   828,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,
-   nil,   nil,   828,   828,   nil,   nil,   828,   nil,   828,   nil,
-   nil,   nil,   828,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   828,   nil,   nil,   nil,   nil,   828,   828,   828,   828,   828,
-   828,   nil,   nil,   nil,   828,   828,   nil,   nil,   nil,   nil,
-   nil,   nil,   828,   nil,   828,   828,   828,   828,   nil,   828,
-   828,   nil,   nil,   828,   828,   831,   831,   831,   nil,   831,
-   nil,   nil,   nil,   831,   831,   nil,   nil,   nil,   831,   nil,
-   831,   831,   831,   831,   831,   831,   831,   nil,   nil,   nil,
-   nil,   nil,   831,   831,   831,   831,   831,   831,   831,   nil,
-   nil,   831,   nil,   nil,   nil,   nil,   nil,   nil,   831,   nil,
-   nil,   831,   831,   831,   831,   831,   831,   831,   831,   831,
-   831,   831,   831,   nil,   831,   831,   nil,   831,   831,   831,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   831,
-   nil,   nil,   831,   nil,   nil,   831,   831,   nil,   nil,   831,
-   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   831,   nil,   nil,   nil,   nil,   831,   831,
-   831,   831,   831,   831,   nil,   nil,   nil,   831,   831,   nil,
-   nil,   nil,   nil,   nil,   nil,   831,   nil,   831,   831,   831,
-   831,   nil,   831,   831,   nil,   nil,   831,   831,   847,   847,
-   847,   nil,   847,   nil,   nil,   nil,   847,   847,   nil,   nil,
-   nil,   847,   nil,   847,   847,   847,   847,   847,   847,   847,
-   nil,   nil,   nil,   nil,   nil,   847,   847,   847,   847,   847,
-   847,   847,   nil,   nil,   847,   nil,   nil,   nil,   nil,   nil,
-   nil,   847,   nil,   nil,   847,   847,   847,   847,   847,   847,
-   847,   847,   nil,   847,   847,   847,   nil,   847,   847,   nil,
-   847,   847,   847,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   847,   nil,   nil,   847,   nil,   nil,   847,   847,
-   nil,   nil,   847,   nil,   847,   nil,   nil,   nil,   847,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   847,   nil,   nil,   nil,
-   nil,   847,   847,   847,   847,   847,   847,   nil,   nil,   nil,
-   847,   847,   nil,   nil,   nil,   nil,   nil,   nil,   847,   nil,
-   nil,   847,   847,   847,   nil,   847,   847,   nil,   nil,   847,
-   847,   859,   859,   859,   nil,   859,   nil,   nil,   nil,   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,   859,   nil,   859,
-   nil,   859,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   859,
-   nil,   nil,   nil,   nil,   859,   859,   859,   859,   859,   859,
-   nil,   nil,   nil,   859,   859,   nil,   nil,   nil,   nil,   nil,
-   nil,   859,   nil,   859,   859,   859,   859,   nil,   859,   859,
-   nil,   nil,   859,   859,   878,   878,   878,   nil,   878,   nil,
-   nil,   nil,   878,   878,   nil,   nil,   nil,   878,   nil,   878,
-   878,   878,   878,   878,   878,   878,   nil,   nil,   nil,   nil,
-   nil,   878,   878,   878,   878,   878,   878,   878,   nil,   nil,
-   878,   nil,   nil,   nil,   nil,   nil,   nil,   878,   nil,   nil,
-   878,   878,   878,   878,   878,   878,   878,   878,   nil,   878,
-   878,   878,   nil,   878,   878,   nil,   878,   878,   878,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   878,   nil,
-   nil,   878,   nil,   nil,   878,   878,   nil,   nil,   878,   nil,
-   nil,   nil,   nil,   nil,   878,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   878,   nil,   nil,   nil,   nil,   878,   878,   878,
-   878,   878,   878,   nil,   nil,   nil,   878,   878,   nil,   nil,
-   nil,   nil,   nil,   nil,   878,   nil,   nil,   878,   878,   878,
-   nil,   878,   878,   nil,   nil,   878,   878,   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,   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,   886,
-   886,   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,   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,   nil,   nil,   nil,   886,   nil,   nil,
-   886,   886,   886,   nil,   886,   886,   nil,   nil,   886,   886,
-   899,   899,   899,   nil,   899,   nil,   nil,   nil,   899,   899,
-   nil,   nil,   nil,   899,   nil,   899,   899,   899,   899,   899,
-   899,   899,   nil,   nil,   nil,   nil,   nil,   899,   899,   899,
-   899,   899,   899,   899,   nil,   nil,   899,   nil,   nil,   nil,
-   nil,   nil,   nil,   899,   nil,   nil,   899,   899,   899,   899,
-   899,   899,   899,   899,   nil,   899,   899,   899,   nil,   899,
-   899,   nil,   899,   899,   899,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   899,   nil,   nil,   899,   nil,   nil,
-   899,   899,   nil,   nil,   899,   nil,   nil,   nil,   nil,   nil,
-   899,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   899,   nil,
-   nil,   nil,   nil,   899,   899,   899,   899,   899,   899,   nil,
-   nil,   nil,   899,   899,   nil,   nil,   nil,   nil,   nil,   nil,
-   899,   nil,   nil,   899,   899,   899,   nil,   899,   899,   nil,
-   nil,   899,   899,   900,   900,   900,   nil,   900,   nil,   nil,
-   nil,   900,   900,   nil,   nil,   nil,   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,   900,   900,   900,   900,   900,   900,   nil,   900,   900,
-   900,   nil,   900,   900,   nil,   900,   900,   900,   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,   900,   nil,   nil,   900,   nil,   nil,
-   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,   900,   900,   nil,
-   900,   900,   nil,   nil,   900,   900,   901,   901,   901,   nil,
-   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,   nil,   901,
-   nil,   nil,   901,   901,   901,   901,   901,   901,   901,   901,
-   nil,   901,   901,   901,   nil,   901,   901,   nil,   901,   901,
-   901,   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,   901,   nil,   nil,
-   901,   nil,   nil,   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,
-   901,   901,   nil,   901,   901,   nil,   nil,   901,   901,   902,
-   902,   902,   nil,   902,   nil,   nil,   nil,   902,   902,   nil,
-   nil,   nil,   902,   nil,   902,   902,   902,   902,   902,   902,
-   902,   nil,   nil,   nil,   nil,   nil,   902,   902,   902,   902,
-   902,   902,   902,   nil,   nil,   902,   nil,   nil,   nil,   nil,
-   nil,   nil,   902,   nil,   nil,   902,   902,   902,   902,   902,
-   902,   902,   902,   nil,   902,   902,   902,   nil,   902,   902,
-   nil,   902,   902,   902,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   902,   nil,   nil,   902,   nil,   nil,   902,
-   902,   nil,   nil,   902,   nil,   nil,   nil,   nil,   nil,   902,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   902,   nil,   nil,
-   nil,   nil,   902,   902,   902,   902,   902,   902,   nil,   nil,
-   nil,   902,   902,   nil,   nil,   nil,   nil,   nil,   nil,   902,
-   nil,   nil,   902,   902,   902,   nil,   902,   902,   nil,   nil,
-   902,   902,   931,   931,   931,   nil,   931,   nil,   nil,   nil,
-   931,   931,   nil,   nil,   nil,   931,   nil,   931,   931,   931,
-   931,   931,   931,   931,   nil,   nil,   nil,   nil,   nil,   931,
-   931,   931,   931,   931,   931,   931,   nil,   nil,   931,   nil,
-   nil,   nil,   nil,   nil,   nil,   931,   nil,   nil,   931,   931,
-   931,   931,   931,   931,   931,   931,   nil,   931,   931,   931,
-   nil,   931,   931,   nil,   931,   931,   931,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   931,   nil,   nil,   931,
-   nil,   nil,   931,   931,   nil,   nil,   931,   nil,   nil,   nil,
-   nil,   nil,   931,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   931,   nil,   nil,   nil,   nil,   931,   931,   931,   931,   931,
-   931,   nil,   nil,   nil,   931,   931,   nil,   nil,   nil,   nil,
-   nil,   nil,   931,   nil,   nil,   931,   931,   931,   nil,   931,
-   931,   nil,   nil,   931,   931,   953,   953,   953,   nil,   953,
-   nil,   nil,   nil,   953,   953,   nil,   nil,   nil,   953,   nil,
-   953,   953,   953,   953,   953,   953,   953,   nil,   nil,   nil,
-   nil,   nil,   953,   953,   953,   953,   953,   953,   953,   nil,
-   nil,   953,   nil,   nil,   nil,   nil,   nil,   nil,   953,   nil,
-   nil,   953,   953,   953,   953,   953,   953,   953,   953,   nil,
-   953,   953,   953,   nil,   953,   953,   nil,   953,   953,   953,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   953,
-   nil,   nil,   953,   nil,   nil,   953,   953,   nil,   nil,   953,
-   nil,   nil,   nil,   nil,   nil,   953,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   953,   nil,   nil,   nil,   nil,   953,   953,
-   953,   953,   953,   953,   nil,   nil,   nil,   953,   953,   nil,
-   nil,   nil,   nil,   nil,   nil,   953,   nil,   nil,   953,   953,
-   953,   nil,   953,   953,   nil,   nil,   953,   953,   984,   984,
-   984,   nil,   984,   nil,   nil,   nil,   984,   984,   nil,   nil,
-   nil,   984,   nil,   984,   984,   984,   984,   984,   984,   984,
-   nil,   nil,   nil,   nil,   nil,   984,   984,   984,   984,   984,
-   984,   984,   nil,   nil,   984,   nil,   nil,   nil,   nil,   nil,
-   nil,   984,   nil,   nil,   984,   984,   984,   984,   984,   984,
-   984,   984,   nil,   984,   984,   984,   nil,   984,   984,   nil,
-   984,   984,   984,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   984,   nil,   nil,   984,   nil,   nil,   984,   984,
-   nil,   nil,   984,   nil,   nil,   nil,   nil,   nil,   984,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   984,   nil,   nil,   nil,
-   nil,   984,   984,   984,   984,   984,   984,   nil,   nil,   nil,
-   984,   984,   nil,   nil,   nil,   nil,   nil,   nil,   984,   nil,
-   nil,   984,   984,   984,   nil,   984,   984,   nil,   nil,   984,
-   984,   989,   989,   989,   nil,   989,   nil,   nil,   nil,   989,
-   989,   nil,   nil,   nil,   989,   nil,   989,   989,   989,   989,
-   989,   989,   989,   nil,   nil,   nil,   nil,   nil,   989,   989,
-   989,   989,   989,   989,   989,   nil,   nil,   989,   nil,   nil,
-   nil,   nil,   nil,   nil,   989,   nil,   nil,   989,   989,   989,
-   989,   989,   989,   989,   989,   nil,   989,   989,   989,   nil,
-   989,   989,   nil,   989,   989,   989,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   989,   nil,   nil,   989,   nil,
-   nil,   989,   989,   nil,   nil,   989,   nil,   nil,   nil,   nil,
-   nil,   989,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   989,
-   nil,   nil,   nil,   nil,   989,   989,   989,   989,   989,   989,
-   nil,   nil,   nil,   989,   989,   nil,   nil,   nil,   nil,   nil,
-   nil,   989,   nil,   nil,   989,   989,   989,   nil,   989,   989,
-   nil,   nil,   989,   989,   998,   998,   998,   nil,   998,   nil,
-   nil,   nil,   998,   998,   nil,   nil,   nil,   998,   nil,   998,
-   998,   998,   998,   998,   998,   998,   nil,   nil,   nil,   nil,
-   nil,   998,   998,   998,   998,   998,   998,   998,   nil,   nil,
-   998,   nil,   nil,   nil,   nil,   nil,   nil,   998,   nil,   nil,
-   998,   998,   998,   998,   998,   998,   998,   998,   nil,   998,
-   998,   998,   nil,   998,   998,   nil,   998,   998,   998,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   998,   nil,
-   nil,   998,   nil,   nil,   998,   998,   nil,   nil,   998,   nil,
-   nil,   nil,   nil,   nil,   998,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   998,   nil,   nil,   nil,   nil,   998,   998,   998,
-   998,   998,   998,   nil,   nil,   nil,   998,   998,   nil,   nil,
-   nil,   nil,   nil,   nil,   998,   nil,   nil,   998,   998,   998,
-   nil,   998,   998,   nil,   nil,   998,   998,  1007,  1007,  1007,
-   nil,  1007,   nil,   nil,   nil,  1007,  1007,   nil,   nil,   nil,
-  1007,   nil,  1007,  1007,  1007,  1007,  1007,  1007,  1007,   nil,
-   nil,   nil,   nil,   nil,  1007,  1007,  1007,  1007,  1007,  1007,
-  1007,   nil,   nil,  1007,   nil,   nil,   nil,   nil,   nil,   nil,
-  1007,   nil,   nil,  1007,  1007,  1007,  1007,  1007,  1007,  1007,
-  1007,   nil,  1007,  1007,  1007,   nil,  1007,  1007,   nil,  1007,
-  1007,  1007,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1007,   nil,   nil,  1007,   nil,   nil,  1007,  1007,   nil,
-   nil,  1007,   nil,   nil,   nil,   nil,   nil,  1007,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1007,   nil,   nil,   nil,   nil,
-  1007,  1007,  1007,  1007,  1007,  1007,   nil,   nil,   nil,  1007,
-  1007,   nil,   nil,   nil,   nil,   nil,   nil,  1007,   nil,   nil,
-  1007,  1007,  1007,   nil,  1007,  1007,   nil,   nil,  1007,  1007,
-  1026,  1026,  1026,   nil,  1026,   nil,   nil,   nil,  1026,  1026,
-   nil,   nil,   nil,  1026,   nil,  1026,  1026,  1026,  1026,  1026,
-  1026,  1026,   nil,   nil,   nil,   nil,   nil,  1026,  1026,  1026,
-  1026,  1026,  1026,  1026,   nil,   nil,  1026,   nil,   nil,   nil,
-   nil,   nil,   nil,  1026,   nil,   nil,  1026,  1026,  1026,  1026,
-  1026,  1026,  1026,  1026,  1026,  1026,  1026,  1026,   nil,  1026,
-  1026,   nil,  1026,  1026,  1026,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1026,   nil,   nil,  1026,   nil,   nil,
-  1026,  1026,   nil,   nil,  1026,   nil,   nil,   nil,  1026,   nil,
-  1026,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1026,   nil,
-   nil,   nil,   nil,  1026,  1026,  1026,  1026,  1026,  1026,   nil,
-   nil,   nil,  1026,  1026,   nil,   nil,   nil,   nil,   nil,   nil,
-  1026,   nil,  1026,  1026,  1026,  1026,   nil,  1026,  1026,   nil,
-   nil,  1026,  1026,  1027,  1027,  1027,   nil,  1027,   nil,   nil,
-   nil,  1027,  1027,   nil,   nil,   nil,  1027,   nil,  1027,  1027,
-  1027,  1027,  1027,  1027,  1027,   nil,   nil,   nil,   nil,   nil,
-  1027,  1027,  1027,  1027,  1027,  1027,  1027,   nil,   nil,  1027,
-   nil,   nil,   nil,   nil,   nil,   nil,  1027,   nil,   nil,  1027,
-  1027,  1027,  1027,  1027,  1027,  1027,  1027,   nil,  1027,  1027,
-  1027,   nil,  1027,  1027,   nil,  1027,  1027,  1027,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1027,   nil,   nil,
-  1027,   nil,   nil,  1027,  1027,   nil,   nil,  1027,   nil,   nil,
-   nil,   nil,   nil,  1027,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1027,   nil,   nil,   nil,   nil,  1027,  1027,  1027,  1027,
-  1027,  1027,   nil,   nil,   nil,  1027,  1027,   nil,   nil,   nil,
-   nil,   nil,   nil,  1027,   nil,   nil,  1027,  1027,  1027,   nil,
-  1027,  1027,   nil,   nil,  1027,  1027,  1112,  1112,  1112,   nil,
-  1112,   nil,   nil,   nil,  1112,  1112,   nil,   nil,   nil,  1112,
-   nil,  1112,  1112,  1112,  1112,  1112,  1112,  1112,   nil,   nil,
-   nil,   nil,   nil,  1112,  1112,  1112,  1112,  1112,  1112,  1112,
-   nil,   nil,  1112,   nil,   nil,   nil,   nil,   nil,   nil,  1112,
-   nil,   nil,  1112,  1112,  1112,  1112,  1112,  1112,  1112,  1112,
-   nil,  1112,  1112,  1112,   nil,  1112,  1112,   nil,  1112,  1112,
-  1112,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1112,   nil,   nil,  1112,   nil,   nil,  1112,  1112,   nil,   nil,
-  1112,   nil,  1112,   nil,   nil,   nil,  1112,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1112,   nil,   nil,   nil,   nil,  1112,
-  1112,  1112,  1112,  1112,  1112,   nil,   nil,   nil,  1112,  1112,
-   nil,   nil,   nil,   nil,   nil,   nil,  1112,   nil,   nil,  1112,
-  1112,  1112,   nil,  1112,  1112,   nil,   nil,  1112,  1112,  1175,
-  1175,  1175,   nil,  1175,   nil,   nil,   nil,  1175,  1175,   nil,
-   nil,   nil,  1175,   nil,  1175,  1175,  1175,  1175,  1175,  1175,
-  1175,   nil,   nil,   nil,   nil,   nil,  1175,  1175,  1175,  1175,
-  1175,  1175,  1175,   nil,   nil,  1175,   nil,   nil,   nil,   nil,
-   nil,   nil,  1175,   nil,   nil,  1175,  1175,  1175,  1175,  1175,
-  1175,  1175,  1175,   nil,  1175,  1175,  1175,   nil,  1175,  1175,
-   nil,  1175,  1175,  1175,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1175,   nil,   nil,  1175,   nil,   nil,  1175,
-  1175,   nil,   nil,  1175,   nil,   nil,   nil,   nil,   nil,  1175,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1175,   nil,   nil,
-   nil,   nil,  1175,  1175,  1175,  1175,  1175,  1175,   nil,   nil,
-   nil,  1175,  1175,   nil,   nil,   nil,   nil,   nil,   nil,  1175,
-   nil,   nil,  1175,  1175,  1175,   nil,  1175,  1175,   nil,   nil,
-  1175,  1175,  1176,  1176,  1176,   nil,  1176,   nil,   nil,   nil,
-  1176,  1176,   nil,   nil,   nil,  1176,   nil,  1176,  1176,  1176,
-  1176,  1176,  1176,  1176,   nil,   nil,   nil,   nil,   nil,  1176,
-  1176,  1176,  1176,  1176,  1176,  1176,   nil,   nil,  1176,   nil,
-   nil,   nil,   nil,   nil,   nil,  1176,   nil,   nil,  1176,  1176,
-  1176,  1176,  1176,  1176,  1176,  1176,   nil,  1176,  1176,  1176,
-   nil,  1176,  1176,   nil,  1176,  1176,  1176,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1176,   nil,   nil,  1176,
-   nil,   nil,  1176,  1176,   nil,   nil,  1176,   nil,   nil,   nil,
-   nil,   nil,  1176,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1176,   nil,   nil,   nil,   nil,  1176,  1176,  1176,  1176,  1176,
-  1176,   nil,   nil,   nil,  1176,  1176,   nil,   nil,   nil,   nil,
-   nil,   nil,  1176,   nil,   nil,  1176,  1176,  1176,   nil,  1176,
-  1176,   nil,   nil,  1176,  1176,  1179,  1179,  1179,   nil,  1179,
-   nil,   nil,   nil,  1179,  1179,   nil,   nil,   nil,  1179,   nil,
-  1179,  1179,  1179,  1179,  1179,  1179,  1179,   nil,   nil,   nil,
-   nil,   nil,  1179,  1179,  1179,  1179,  1179,  1179,  1179,   nil,
-   nil,  1179,   nil,   nil,   nil,   nil,   nil,   nil,  1179,   nil,
-   nil,  1179,  1179,  1179,  1179,  1179,  1179,  1179,  1179,   nil,
-  1179,  1179,  1179,   nil,  1179,  1179,   nil,  1179,  1179,  1179,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1179,
-   nil,   nil,  1179,   nil,   nil,  1179,  1179,   nil,   nil,  1179,
-   nil,   nil,   nil,   nil,   nil,  1179,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1179,   nil,   nil,   nil,   nil,  1179,  1179,
-  1179,  1179,  1179,  1179,   nil,   nil,   nil,  1179,  1179,   nil,
-   nil,   nil,   nil,   nil,   nil,  1179,   nil,   nil,  1179,  1179,
-  1179,   nil,  1179,  1179,   nil,   nil,  1179,  1179,  1210,  1210,
-  1210,   nil,  1210,   nil,   nil,   nil,  1210,  1210,   nil,   nil,
-   nil,  1210,   nil,  1210,  1210,  1210,  1210,  1210,  1210,  1210,
-   nil,   nil,   nil,   nil,   nil,  1210,  1210,  1210,  1210,  1210,
-  1210,  1210,   nil,   nil,  1210,   nil,   nil,   nil,   nil,   nil,
-   nil,  1210,   nil,   nil,  1210,  1210,  1210,  1210,  1210,  1210,
-  1210,  1210,  1210,  1210,  1210,  1210,   nil,  1210,  1210,   nil,
-  1210,  1210,  1210,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1210,   nil,   nil,  1210,   nil,   nil,  1210,  1210,
-   nil,   nil,  1210,   nil,  1210,   nil,  1210,   nil,  1210,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1210,   nil,   nil,   nil,
-   nil,  1210,  1210,  1210,  1210,  1210,  1210,   nil,   nil,   nil,
-  1210,  1210,   nil,   nil,   nil,   nil,   nil,   nil,  1210,   nil,
-  1210,  1210,  1210,  1210,   nil,  1210,  1210,   nil,   nil,  1210,
-  1210,    38,    38,    38,   nil,    38,   nil,   nil,   nil,    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,   nil,    38,   nil,   nil,
-   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,    38,    38,
-    38,    38,    38,    38,    38,   nil,    38,    38,    38,   nil,
-    38,    38,   nil,   nil,   nil,    38,   nil,   nil,   nil,   nil,
-   nil,  1151,   nil,  1151,  1151,  1151,  1151,  1151,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    38,   nil,  1151,    38,   nil,
-   nil,    38,    38,   nil,   nil,    38,   nil,    38,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1151,
-   nil,   nil,   nil,   nil,    38,    38,    38,    38,    38,    38,
-  1151,  1151,   nil,    38,    38,   nil,   nil,   nil,   nil,   nil,
-   nil,    38,   nil,   nil,    38,    38,    38,   nil,    38,    38,
-    39,    39,    39,   nil,    39,   nil,   nil,   nil,    39,    39,
-   nil,   nil,   nil,    39,  1151,    39,    39,    39,    39,    39,
-    39,    39,   nil,   nil,   nil,   nil,   nil,    39,    39,    39,
-    39,    39,    39,    39,   nil,   nil,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,    39,    39,    39,    39,
-    39,    39,    39,    39,   nil,    39,    39,    39,   nil,    39,
-    39,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-  1214,   nil,  1214,  1214,  1214,  1214,  1214,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,  1214,    39,   nil,   nil,
-    39,    39,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1214,   nil,
-   nil,   nil,   nil,    39,    39,    39,    39,    39,    39,  1214,
-  1214,   nil,    39,    39,   nil,   nil,   nil,    39,   nil,   nil,
-    39,   nil,   nil,    39,    39,    39,   nil,    39,    39,    77,
-    77,    77,   nil,    77,   nil,   nil,   nil,    77,    77,   nil,
-   nil,   nil,    77,  1214,    77,    77,    77,    77,    77,    77,
-    77,   nil,   nil,   nil,   nil,   nil,    77,    77,    77,    77,
-    77,    77,    77,   nil,   nil,    77,   nil,   nil,   nil,   nil,
-   nil,   nil,    77,   nil,   nil,    77,    77,    77,    77,    77,
-    77,    77,    77,   nil,    77,    77,    77,   nil,    77,    77,
-   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,  1240,
-   nil,  1240,  1240,  1240,  1240,  1240,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    77,   nil,  1240,    77,   nil,   nil,    77,
-    77,   nil,   nil,    77,   nil,    77,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1240,   nil,   nil,
-   nil,   nil,    77,    77,    77,    77,    77,    77,  1240,  1240,
-   nil,    77,    77,   nil,   nil,   nil,   nil,   nil,   nil,    77,
-   nil,   nil,    77,    77,    77,   nil,    77,    77,   341,   341,
-   341,   nil,   341,   nil,   nil,   nil,   341,   341,   nil,   nil,
-   nil,   341,  1240,   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,
-   nil,   nil,   341,   nil,   nil,   nil,   nil,   nil,  1242,   nil,
-  1242,  1242,  1242,  1242,  1242,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   341,   nil,  1242,   341,   nil,   nil,   341,   341,
-   nil,   nil,   341,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1242,   nil,   nil,   nil,
-   nil,   341,   341,   341,   341,   341,   341,  1242,  1242,   nil,
-   341,   341,   nil,   nil,   nil,   341,   nil,   nil,   341,   nil,
-   nil,   341,   341,   341,   nil,   341,   341,   360,   360,   360,
-   nil,   360,   nil,   nil,   nil,   360,   360,   nil,   nil,   nil,
-   360,  1242,   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,   nil,
-   nil,   360,   nil,   nil,   nil,   nil,   nil,  1244,   nil,  1244,
-  1244,  1244,  1244,  1244,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   360,   nil,  1244,   360,   nil,   nil,   360,   360,   nil,
-   nil,   360,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1244,   nil,   nil,   nil,   nil,
-   360,   360,   360,   360,   360,   360,  1244,  1244,   nil,   360,
-   360,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
-   360,   360,   360,   nil,   360,   360,   403,   403,   403,   nil,
-   403,   nil,   nil,   nil,   403,   403,   nil,   nil,   nil,   403,
-  1244,   403,   403,   403,   403,   403,   403,   403,   nil,   nil,
-   nil,   nil,   nil,   403,   403,   403,   403,   403,   403,   403,
-   nil,   nil,   403,   nil,   nil,   nil,   nil,   nil,   nil,   403,
-   nil,   nil,   403,   403,   403,   403,   403,   403,   403,   403,
-   nil,   403,   403,   403,   nil,   403,   403,   nil,   nil,   nil,
-   403,   nil,   nil,   nil,   nil,   nil,  1271,   nil,  1271,  1271,
-  1271,  1271,  1271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   403,   nil,  1271,   403,   nil,   nil,   403,   403,   nil,   nil,
-   403,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1271,   nil,   nil,   nil,   nil,   403,
-   403,   403,   403,   403,   403,  1271,  1271,   nil,   403,   403,
-   nil,   nil,   nil,   nil,   nil,   nil,   403,   nil,   nil,   403,
-   403,   403,   nil,   403,   403,   405,   405,   405,   nil,   405,
-   nil,   nil,   nil,   405,   405,   nil,   nil,   nil,   405,  1271,
-   405,   405,   405,   405,   405,   405,   405,   nil,   nil,   nil,
-   nil,   nil,   405,   405,   405,   405,   405,   405,   405,   nil,
-   nil,   405,   nil,   nil,   nil,   nil,   nil,   nil,   405,   nil,
-   nil,   405,   405,   405,   405,   405,   405,   405,   405,   nil,
-   405,   405,   405,   nil,   405,   405,   nil,   nil,   nil,   405,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   405,
-   nil,   nil,   405,   nil,   nil,   405,   405,   nil,   nil,   405,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   405,   405,
-   405,   405,   405,   405,   nil,   nil,   nil,   405,   405,   nil,
-   nil,   nil,   nil,   nil,   nil,   405,   nil,   nil,   405,   405,
-   405,   nil,   405,   405,   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,
-   nil,   564,   564,   564,   564,   564,   564,   564,   nil,   nil,
-   564,   nil,   nil,   nil,   nil,   nil,   nil,   564,   nil,   nil,
-   564,   564,   564,   564,   564,   564,   564,   564,   nil,   564,
-   564,   564,   nil,   564,   564,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   564,   564,   564,
-   564,   564,   564,   nil,   nil,   nil,   564,   564,   nil,   nil,
-   nil,   nil,   nil,   nil,   564,   nil,   nil,   564,   564,   564,
-   nil,   564,   564,   573,   573,   573,   nil,   573,   nil,   nil,
-   nil,   573,   573,   nil,   nil,   nil,   573,   nil,   573,   573,
-   573,   573,   573,   573,   573,   nil,   nil,   nil,   nil,   nil,
-   573,   573,   573,   573,   573,   573,   573,   nil,   nil,   573,
-   nil,   nil,   nil,   nil,   nil,   nil,   573,   nil,   nil,   573,
-   573,   573,   573,   573,   573,   573,   573,   nil,   573,   573,
-   573,   nil,   573,   573,   nil,   nil,   nil,   573,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   573,   nil,   nil,
-   573,   nil,   nil,   573,   573,   nil,   nil,   573,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   573,   573,   573,   573,
-   573,   573,   nil,   nil,   nil,   573,   573,   nil,   nil,   nil,
-   nil,   nil,   nil,   573,   nil,   nil,   573,   573,   573,   nil,
-   573,   573,   775,   775,   775,   nil,   775,   nil,   nil,   nil,
-   775,   775,   nil,   nil,   nil,   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,
-   775,   775,   775,   775,   775,   775,   nil,   775,   775,   775,
-   nil,   775,   775,   nil,   nil,   nil,   775,   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,   775,   nil,   nil,   775,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   775,   775,   775,   775,   775,
-   775,   nil,   nil,   nil,   775,   775,   nil,   nil,   nil,   nil,
-   nil,   nil,   775,   nil,   nil,   775,   775,   775,   nil,   775,
-   775,   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,   nil,   786,   786,
-   786,   786,   786,   786,   786,   nil,   nil,   786,   nil,   nil,
-   nil,   nil,   nil,   nil,   786,   nil,   nil,   786,   786,   786,
-   786,   786,   786,   786,   786,   nil,   786,   786,   786,   nil,
-   786,   786,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   786,   786,   786,   786,   786,   786,
-   nil,   nil,   nil,   786,   786,   nil,   nil,   nil,   nil,   nil,
-   nil,   786,   nil,   nil,   786,   786,   786,   nil,   786,   786,
-  1071,  1071,  1071,   nil,  1071,   nil,   nil,   nil,  1071,  1071,
-   nil,   nil,   nil,  1071,   nil,  1071,  1071,  1071,  1071,  1071,
-  1071,  1071,   nil,   nil,   nil,   nil,   nil,  1071,  1071,  1071,
-  1071,  1071,  1071,  1071,   nil,   nil,  1071,   nil,   nil,   nil,
-   nil,   nil,   nil,  1071,   nil,   nil,  1071,  1071,  1071,  1071,
-  1071,  1071,  1071,  1071,   nil,  1071,  1071,  1071,   nil,  1071,
-  1071,   nil,   nil,   nil,  1071,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1071,   nil,   nil,  1071,   nil,   nil,
-  1071,  1071,   nil,   nil,  1071,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1071,  1071,  1071,  1071,  1071,  1071,   nil,
-   nil,   nil,  1071,  1071,   nil,   nil,   nil,   nil,   nil,   nil,
-  1071,   nil,   nil,  1071,  1071,  1071,   nil,  1071,  1071,  1082,
-  1082,  1082,   nil,  1082,   nil,   nil,   nil,  1082,  1082,   nil,
-   nil,   nil,  1082,   nil,  1082,  1082,  1082,  1082,  1082,  1082,
-  1082,   nil,   nil,   nil,   nil,   nil,  1082,  1082,  1082,  1082,
-  1082,  1082,  1082,   nil,   nil,  1082,   nil,   nil,   nil,   nil,
-   nil,   nil,  1082,   nil,   nil,  1082,  1082,  1082,  1082,  1082,
-  1082,  1082,  1082,   nil,  1082,  1082,  1082,   nil,  1082,  1082,
-   nil,   nil,   nil,  1082,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1082,   nil,   nil,  1082,   nil,   nil,  1082,
-  1082,   nil,   nil,  1082,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1082,  1082,  1082,  1082,  1082,  1082,   nil,   nil,
-   nil,  1082,  1082,   nil,   nil,   nil,   nil,   nil,   nil,  1082,
-   nil,   nil,  1082,  1082,  1082,   nil,  1082,  1082,  1155,  1155,
-  1155,   nil,  1155,   nil,   nil,   nil,  1155,  1155,   nil,   nil,
-   nil,  1155,   nil,  1155,  1155,  1155,  1155,  1155,  1155,  1155,
-   nil,   nil,   nil,   nil,   nil,  1155,  1155,  1155,  1155,  1155,
-  1155,  1155,   nil,   nil,  1155,   nil,   nil,   nil,   nil,   nil,
-   nil,  1155,   nil,   nil,  1155,  1155,  1155,  1155,  1155,  1155,
-  1155,  1155,   nil,  1155,  1155,  1155,   nil,  1155,  1155,   nil,
-   nil,   nil,  1155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1155,   nil,   nil,  1155,   nil,   nil,  1155,  1155,
-   nil,   nil,  1155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1155,  1155,  1155,  1155,  1155,  1155,   nil,   nil,   nil,
-  1155,  1155,   nil,   nil,   nil,   nil,   nil,   nil,  1155,   nil,
-   nil,  1155,  1155,  1155,   nil,  1155,  1155,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
-    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,
-    11,   nil,    11,    11,    11,    11,    11,    11,    11,   nil,
-   nil,    11,    11,   nil,   nil,   nil,    11,    11,    11,    11,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,   nil,   nil,    11,
-    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,   nil,   nil,   nil,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,
-   nil,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    12,    12,   nil,    12,    12,    12,    12,    12,
-    12,    12,   nil,   nil,    12,    12,   nil,   nil,   nil,    12,
-    12,    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-   nil,   nil,    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    12,    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,
-    25,    25,    25,    25,    25,    25,    25,    25,    25,    25,
-   nil,   nil,   nil,   nil,   nil,    25,    25,    25,    25,    25,
-    25,    25,    25,    25,    25,    25,    25,   nil,    25,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,    25,   nil,    25,    25,
-    25,    25,    25,    25,    25,   nil,   nil,    25,    25,   nil,
-   nil,   nil,    25,    25,    25,    25,   nil,   nil,   nil,   nil,
-   nil,    25,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
-    25,   nil,    25,    25,    25,    25,    25,    25,    25,    25,
-    25,    25,    25,   nil,   nil,    25,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,   109,   109,   109,   109,
-   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   nil,   nil,   nil,   109,   109,   109,   109,   109,   109,   109,
-   109,   109,   109,   nil,   nil,   nil,   nil,   nil,   109,   109,
-   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   nil,   109,   nil,   nil,   nil,   nil,   nil,   nil,   109,   109,
-   nil,   109,   109,   109,   109,   109,   109,   109,   nil,   nil,
-   109,   109,   nil,   nil,   nil,   109,   109,   109,   109,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   109,   109,   nil,   109,   109,   109,   109,   109,
-   109,   109,   109,   109,   109,   109,   nil,   nil,   109,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,   441,
-   441,   441,   441,   441,   441,   441,   441,   441,   441,   441,
-   441,   441,   441,   441,   441,   441,   441,   441,   441,   441,
-   441,   441,   441,   nil,   nil,   nil,   441,   441,   441,   441,
-   441,   441,   441,   441,   441,   441,   nil,   nil,   nil,   nil,
-   nil,   441,   441,   441,   441,   441,   441,   441,   441,   441,
-   nil,   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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   441,   441,   nil,   441,   441,
-   441,   441,   441,   441,   441,   441,   441,   441,   441,   nil,
-   nil,   441,   441,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   441,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   441,   689,   689,   689,   689,   689,   689,   689,   689,
-   689,   689,   689,   689,   689,   689,   689,   689,   689,   689,
-   689,   689,   689,   689,   689,   689,   nil,   nil,   nil,   689,
-   689,   689,   689,   689,   689,   689,   689,   689,   689,   nil,
-   nil,   nil,   nil,   nil,   689,   689,   689,   689,   689,   689,
-   689,   689,   689,   nil,   nil,   689,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   689,   689,   nil,   689,   689,   689,
-   689,   689,   689,   689,   nil,   nil,   689,   689,   nil,   nil,
-   nil,   689,   689,   689,   689,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   689,   689,
-   nil,   689,   689,   689,   689,   689,   689,   689,   689,   689,
-   689,   689,   nil,   nil,   689,   689,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   689,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   689,   751,   751,   751,   751,   751,
-   751,   751,   751,   751,   751,   751,   751,   751,   751,   751,
-   751,   751,   751,   751,   751,   751,   751,   751,   751,   nil,
-   nil,   nil,   751,   751,   751,   751,   751,   751,   751,   751,
-   751,   751,   nil,   nil,   nil,   nil,   nil,   751,   751,   751,
-   751,   751,   751,   751,   751,   751,   nil,   nil,   751,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   751,   751,   nil,
-   751,   751,   751,   751,   751,   751,   751,   nil,   nil,   751,
-   751,   nil,   nil,   nil,   751,   751,   751,   751,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   751,   751,   nil,   751,   751,   751,   751,   751,   751,
-   751,   751,   751,   751,   751,   nil,   nil,   751,   nil,   nil,
-   nil,   nil,   499,   499,   499,   499,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   751,   499,   499,
-   499,   499,   nil,   nil,   nil,   499,   nil,   nil,   nil,   nil,
-   nil,   499,   499,   nil,   nil,   nil,   499,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   499,   nil,   nil,   499,
-   nil,   nil,   nil,   499,   nil,   nil,   499,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   499,   nil,   nil,   nil,   499,   499,   499,   499,   499,
-   499,   nil,   nil,   nil,   499,   499,   nil,   nil,   nil,   nil,
-   nil,   nil,   499,   nil,   nil,   499,   499,   499,   nil,   499,
-   499,   nil,   nil,   499,   499,   500,   500,   500,   500,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   500,   500,   500,   500,   nil,   nil,   nil,   500,   nil,
-   nil,   nil,   nil,   nil,   500,   500,   nil,   nil,   nil,   500,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   500,
-   nil,   nil,   500,   nil,   nil,   nil,   500,   nil,   nil,   500,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   500,   nil,   nil,   nil,   500,   500,
-   500,   500,   500,   500,   nil,   nil,   nil,   500,   500,   nil,
-   nil,   nil,   nil,   nil,   nil,   500,   nil,   nil,   500,   500,
-   500,   nil,   500,   500,   nil,   nil,   500,   500,   727,   727,
-   727,   727,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   727,   727,   727,   727,   nil,   nil,
-   nil,   727,   nil,   nil,   nil,   nil,   nil,   727,   727,   nil,
-   nil,   nil,   727,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   727,   nil,   nil,   727,   nil,   nil,   nil,   727,
-   nil,   nil,   727,   nil,   727,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   727,   nil,   nil,
-   nil,   727,   727,   727,   727,   727,   727,   nil,   nil,   nil,
-   727,   727,   727,   nil,   nil,   nil,   nil,   nil,   727,   nil,
-   nil,   727,   727,   727,   nil,   727,   727,   nil,   nil,   727,
-   727,   905,   905,   905,   905,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   905,   905,   905,
-   905,   nil,   nil,   nil,   905,   nil,   nil,   nil,   nil,   nil,
-   905,   905,   nil,   nil,   nil,   905,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   905,   nil,   nil,   905,   nil,
-   nil,   nil,   905,   nil,   nil,   905,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   905,   nil,   nil,   nil,   905,   905,   905,   905,   905,   905,
-   nil,   nil,   nil,   905,   905,   nil,   nil,   nil,   nil,   nil,
-   nil,   905,   nil,   nil,   905,   905,   905,   nil,   905,   905,
-   nil,   nil,   905,   905,   908,   908,   908,   908,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   908,   908,   908,   908,   nil,   nil,   nil,   908,   908,   nil,
-   nil,   nil,   nil,   908,   908,   nil,   nil,   nil,   908,   908,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   908,   nil,
-   nil,   908,   nil,   nil,   nil,   908,   nil,   nil,   908,   nil,
-   908,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   908,   nil,   nil,   nil,   908,   908,   908,
-   908,   908,   908,   nil,   nil,   nil,   908,   908,   nil,   nil,
-   nil,   nil,   nil,   nil,   908,   nil,   908,   908,   908,   908,
-   nil,   908,   908,   nil,   nil,   908,   908,   909,   909,   909,
-   909,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   909,   909,   909,   909,   nil,   nil,   nil,
-   909,   909,   nil,   nil,   nil,   nil,   909,   909,   nil,   nil,
-   nil,   909,   909,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   909,   nil,   nil,   909,   nil,   nil,   nil,   909,   nil,
-   nil,   909,   nil,   909,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   909,   nil,   nil,   nil,
-   909,   909,   909,   909,   909,   909,   nil,   nil,   nil,   909,
-   909,   nil,   nil,   nil,   nil,   nil,   nil,   909,   nil,   909,
-   909,   909,   909,   nil,   909,   909,   nil,   nil,   909,   909,
-   915,   915,   915,   915,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   915,   915,   915,   915,
-   nil,   nil,   nil,   915,   nil,   nil,   nil,   nil,   nil,   915,
-   915,   nil,   nil,   nil,   915,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   915,   nil,   nil,   915,   nil,   nil,
-   nil,   915,   nil,   nil,   915,   nil,   915,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   915,
-   nil,   nil,   nil,   915,   915,   915,   915,   915,   915,   nil,
-   nil,   nil,   915,   915,   nil,   nil,   nil,   nil,   nil,   nil,
-   915,   nil,   nil,   915,   915,   915,   nil,   915,   915,   nil,
-   nil,   915,   915,   923,   923,   923,   923,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   923,
-   923,   923,   923,   nil,   nil,   nil,   923,   nil,   nil,   nil,
-   nil,   nil,   923,   923,   nil,   nil,   nil,   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,   nil,   923,   nil,   nil,   923,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   923,   nil,   nil,   nil,   923,   923,   923,   923,
-   923,   923,   nil,   nil,   nil,   923,   923,   nil,   nil,   nil,
-   nil,   nil,   nil,   923,   nil,   nil,   923,   923,   923,   nil,
-   923,   923,   nil,   nil,   923,   923,   996,   996,   996,   996,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   996,   996,   996,   996,   nil,   nil,   nil,   996,
-   996,   nil,   nil,   nil,   nil,   996,   996,   nil,   nil,   nil,
-   996,   996,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   996,   nil,   nil,   996,   nil,   nil,   nil,   996,   nil,   nil,
-   996,   nil,   996,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   996,   nil,   nil,   nil,   996,
-   996,   996,   996,   996,   996,   nil,   nil,   nil,   996,   996,
-   nil,   nil,   nil,   nil,   nil,   nil,   996,   nil,   996,   996,
-   996,   996,   nil,   996,   996,   nil,   nil,   996,   996,  1038,
-  1038,  1038,  1038,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1038,  1038,  1038,  1038,   nil,
-   nil,   nil,  1038,   nil,   nil,   nil,   nil,   nil,  1038,  1038,
-   nil,   nil,   nil,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1038,   nil,   nil,  1038,   nil,   nil,   nil,
-  1038,   nil,   nil,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1038,   nil,
-   nil,   nil,  1038,  1038,  1038,  1038,  1038,  1038,   nil,   nil,
-   nil,  1038,  1038,   nil,   nil,   nil,   nil,   nil,   nil,  1038,
-   nil,   nil,  1038,  1038,  1038,   nil,  1038,  1038,   nil,   nil,
-  1038,  1038,  1053,  1053,  1053,  1053,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1053,  1053,
-  1053,  1053,   nil,   nil,   nil,  1053,   nil,   nil,   nil,   nil,
-   nil,  1053,  1053,   nil,   nil,   nil,  1053,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1053,   nil,   nil,  1053,
-   nil,   nil,   nil,  1053,   nil,   nil,  1053,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1053,   nil,   nil,   nil,  1053,  1053,  1053,  1053,  1053,
-  1053,   nil,   nil,   nil,  1053,  1053,   nil,   nil,   nil,   nil,
-   nil,   nil,  1053,   nil,   nil,  1053,  1053,  1053,   nil,  1053,
-  1053,   nil,   nil,  1053,  1053,  1137,  1137,  1137,  1137,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1137,  1137,  1137,  1137,   nil,   nil,   nil,  1137,   nil,
-   nil,   nil,   nil,   nil,  1137,  1137,   nil,   nil,   nil,  1137,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1137,
-   nil,   nil,  1137,   nil,   nil,   nil,  1137,   nil,   nil,  1137,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1137,   nil,   nil,   nil,  1137,  1137,
-  1137,  1137,  1137,  1137,   nil,   nil,   nil,  1137,  1137,   nil,
-   nil,   nil,   nil,   nil,   nil,  1137,   nil,   nil,  1137,  1137,
-  1137,   nil,  1137,  1137,   nil,   nil,  1137,  1137,  1177,  1177,
-  1177,  1177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1177,  1177,  1177,  1177,   nil,   nil,
-   nil,  1177,   nil,   nil,   nil,   nil,   nil,  1177,  1177,   nil,
-   nil,   nil,  1177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1177,   nil,   nil,  1177,   nil,   nil,   nil,  1177,
-   nil,   nil,  1177,   nil,  1177,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1177,   nil,   nil,
-   nil,  1177,  1177,  1177,  1177,  1177,  1177,   nil,   nil,   nil,
-  1177,  1177,   nil,   nil,   nil,   nil,   nil,   nil,  1177,   nil,
-   nil,  1177,  1177,  1177,   nil,  1177,  1177,   nil,   nil,  1177,
-  1177,  1192,  1192,  1192,  1192,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1192,  1192,  1192,
-  1192,   nil,   nil,   nil,  1192,   nil,   nil,   nil,   nil,   nil,
-  1192,  1192,   nil,   nil,   nil,  1192,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1192,   nil,   nil,  1192,   nil,
-   nil,   nil,  1192,   nil,   nil,  1192,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1192,   nil,   nil,   nil,  1192,  1192,  1192,  1192,  1192,  1192,
-   nil,   nil,   nil,  1192,  1192,   nil,   nil,   nil,   nil,   nil,
-   nil,  1192,   nil,   nil,  1192,  1192,  1192,   nil,  1192,  1192,
-   nil,   nil,  1192,  1192,  1194,  1194,  1194,  1194,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1194,  1194,  1194,  1194,   nil,   nil,   nil,  1194,   nil,   nil,
-   nil,   nil,   nil,  1194,  1194,   nil,   nil,   nil,  1194,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1194,   nil,
-   nil,  1194,   nil,   nil,   nil,  1194,   nil,   nil,  1194,   nil,
-  1194,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1194,   nil,   nil,   nil,  1194,  1194,  1194,
-  1194,  1194,  1194,   nil,   nil,   nil,  1194,  1194,   nil,   nil,
-   nil,   nil,   nil,   nil,  1194,   nil,   nil,  1194,  1194,  1194,
-   nil,  1194,  1194,   nil,   nil,  1194,  1194,  1234,  1234,  1234,
-  1234,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1234,  1234,  1234,  1234,   nil,   nil,   nil,
-  1234,   nil,   nil,   nil,   nil,   nil,  1234,  1234,   nil,   nil,
-   nil,  1234,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1234,   nil,   nil,  1234,   nil,   nil,   nil,  1234,   nil,
-   nil,  1234,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1234,   nil,   nil,   nil,
-  1234,  1234,  1234,  1234,  1234,  1234,   nil,   nil,   nil,  1234,
-  1234,   nil,   nil,   nil,   nil,   nil,   nil,  1234,   nil,   nil,
-  1234,  1234,  1234,   nil,  1234,  1234,   nil,   nil,  1234,  1234,
-  1258,  1258,  1258,  1258,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1258,  1258,  1258,  1258,
-   nil,   nil,   nil,  1258,   nil,   nil,   nil,   nil,   nil,  1258,
-  1258,   nil,   nil,   nil,  1258,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   925,   925,   925,   925,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1258,   nil,   nil,  1258,   925,   925,
-   925,  1258,   nil,   nil,  1258,   nil,   nil,   nil,   nil,   nil,
-   nil,   925,   925,   nil,   nil,   nil,   925,   nil,   nil,  1258,
-   nil,   nil,   nil,  1258,  1258,  1258,  1258,  1258,  1258,   nil,
-   nil,   nil,  1258,  1258,   nil,   nil,   nil,   nil,   nil,   nil,
-  1258,   nil,   nil,  1258,  1258,  1258,   nil,  1258,  1258,   nil,
-   nil,  1258,  1258,   nil,   nil,   376,   nil,   376,   376,   376,
-   376,   376,   nil,   nil,   nil,   925,   925,   925,   925,   925,
-   925,   376,   nil,   nil,   925,   925,   nil,   nil,   nil,   nil,
-   nil,   nil,   925,   nil,   nil,   925,   925,   925,   nil,   925,
-   925,   nil,   797,   376,   797,   797,   797,   797,   797,   nil,
-   nil,   nil,   376,   376,   376,   376,   nil,   nil,   797,  1145,
-   nil,  1145,  1145,  1145,  1145,  1145,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1145,   nil,   nil,   nil,   nil,
-   797,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   376,   797,
-   797,   797,   797,   nil,   nil,   nil,   nil,  1145,   376,   nil,
-   nil,   232,   232,   nil,   nil,   232,  1145,  1145,  1145,  1145,
-   nil,   nil,   nil,   nil,   232,   232,   nil,   232,   232,   232,
-   232,   232,   232,   232,   nil,   797,   232,   232,   nil,   nil,
-   nil,   232,   232,   232,   232,   797,   nil,   nil,   nil,   nil,
-   232,   nil,  1145,   nil,   nil,   nil,   nil,   nil,   232,   232,
-   nil,   232,   232,   232,   232,   232,   232,   232,   232,   232,
-   232,   232,   nil,   nil,   232,   nil,   nil,   nil,   nil,   233,
-   233,   nil,   nil,   233,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   233,   233,   232,   233,   233,   233,   233,   233,
-   233,   233,   nil,   nil,   233,   233,   nil,   nil,   nil,   233,
-   233,   233,   233,   nil,   nil,   nil,   nil,   nil,   233,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   233,   233,   nil,   233,
-   233,   233,   233,   233,   233,   233,   233,   233,   233,   233,
-   nil,   nil,   233,   nil,   nil,   nil,   nil,   300,   300,   nil,
-   nil,   300,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   300,   300,   233,   300,   300,   300,   300,   300,   300,   300,
-   nil,   nil,   300,   300,   nil,   nil,   nil,   300,   300,   300,
-   300,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   300,   300,   nil,   300,   300,   300,
-   300,   300,   300,   300,   300,   300,   300,   300,   nil,   nil,
-   300,   nil,   nil,   nil,   nil,   492,   492,   nil,   nil,   492,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   492,   492,
-   300,   492,   492,   492,   492,   492,   492,   492,   nil,   nil,
-   492,   492,   nil,   nil,   nil,   492,   492,   492,   492,   nil,
-   nil,   nil,   nil,   nil,   492,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   492,   492,   nil,   492,   492,   492,   492,   492,
-   492,   492,   492,   492,   492,   492,   nil,   nil,   492,   nil,
-   nil,   nil,   nil,   493,   493,   nil,   nil,   493,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   493,   493,   492,   493,
-   493,   493,   493,   493,   493,   493,   nil,   nil,   493,   493,
-   nil,   nil,   nil,   493,   493,   493,   493,   nil,   nil,   nil,
-   nil,   nil,   493,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   493,   493,   nil,   493,   493,   493,   493,   493,   493,   493,
-   493,   493,   493,   493,   nil,   nil,   493,   nil,   nil,   nil,
-   nil,   567,   567,   nil,   nil,   567,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   567,   567,   493,   567,   567,   567,
-   567,   567,   567,   567,   nil,   nil,   567,   567,   nil,   nil,
-   nil,   567,   567,   567,   567,   nil,   nil,   nil,   nil,   nil,
-   567,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   567,   567,
-   nil,   567,   567,   567,   567,   567,   567,   567,   567,   567,
-   567,   567,   nil,   nil,   567,   nil,   nil,   nil,   nil,   568,
-   568,   nil,   nil,   568,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   568,   568,   567,   568,   568,   568,   568,   568,
-   568,   568,   nil,   nil,   568,   568,   nil,   nil,   nil,   568,
-   568,   568,   568,   nil,   nil,   nil,   nil,   nil,   568,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   568,   568,   nil,   568,
-   568,   568,   568,   568,   568,   568,   568,   568,   568,   568,
-   nil,   nil,   568,   nil,   nil,   nil,   nil,   577,   577,   nil,
-   nil,   577,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   577,   577,   568,   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,   nil,   nil,
-   577,   nil,   nil,   nil,   nil,   578,   578,   nil,   nil,   578,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   578,   578,
-   577,   578,   578,   578,   578,   578,   578,   578,   nil,   nil,
-   578,   578,   nil,   nil,   nil,   578,   578,   578,   578,   nil,
-   nil,   nil,   nil,   nil,   578,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   578,   578,   nil,   578,   578,   578,   578,   578,
-   578,   578,   578,   578,   578,   578,   nil,   nil,   578,   nil,
-   nil,   nil,   nil,   648,   648,   nil,   nil,   648,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   648,   648,   578,   648,
-   648,   648,   648,   648,   648,   648,   nil,   nil,   648,   648,
-   nil,   nil,   nil,   648,   648,   648,   648,   nil,   nil,   nil,
-   nil,   nil,   648,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   648,   648,   nil,   648,   648,   648,   648,   648,   648,   648,
-   648,   648,   648,   648,   nil,   nil,   648,   nil,   nil,   nil,
-   nil,   649,   649,   nil,   nil,   649,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   649,   649,   648,   649,   649,   649,
-   649,   649,   649,   649,   nil,   nil,   649,   649,   nil,   nil,
-   nil,   649,   649,   649,   649,   nil,   nil,   nil,   nil,   nil,
-   649,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   649,   649,
-   nil,   649,   649,   649,   649,   649,   649,   649,   649,   649,
-   649,   649,   nil,   nil,   649,   nil,   nil,   nil,   nil,   696,
-   696,   nil,   nil,   696,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   696,   696,   649,   696,   696,   696,   696,   696,
-   696,   696,   nil,   nil,   696,   696,   nil,   nil,   nil,   696,
-   696,   696,   696,   nil,   nil,   nil,   nil,   nil,   696,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   696,   696,   nil,   696,
-   696,   696,   696,   696,   696,   696,   696,   696,   696,   696,
-   nil,   nil,   696,   nil,   nil,   nil,   nil,   697,   697,   nil,
-   nil,   697,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   697,   697,   696,   697,   697,   697,   697,   697,   697,   697,
-   nil,   nil,   697,   697,   nil,   nil,   nil,   697,   697,   697,
-   697,   nil,   nil,   nil,   nil,   nil,   697,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   697,   697,   nil,   697,   697,   697,
-   697,   697,   697,   697,   697,   697,   697,   697,   nil,   nil,
-   697,   nil,   nil,   nil,   nil,   857,   857,   nil,   nil,   857,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   857,   857,
-   697,   857,   857,   857,   857,   857,   857,   857,   nil,   nil,
-   857,   857,   nil,   nil,   nil,   857,   857,   857,   857,   nil,
-   nil,   nil,   nil,   nil,   857,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   857,   857,   nil,   857,   857,   857,   857,   857,
-   857,   857,   857,   857,   857,   857,   nil,   nil,   857,   nil,
-   nil,   nil,   nil,   858,   858,   nil,   nil,   858,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   858,   858,   857,   858,
-   858,   858,   858,   858,   858,   858,   nil,   nil,   858,   858,
-   nil,   nil,   nil,   858,   858,   858,   858,   nil,   nil,   nil,
-   nil,   nil,   858,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   858,   858,   nil,   858,   858,   858,   858,   858,   858,   858,
-   858,   858,   858,   858,   nil,  1149,   858,  1149,  1149,  1149,
-  1149,  1149,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1149,   nil,   nil,   nil,   nil,   858,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1149,  1206,  1206,   nil,   nil,  1206,   nil,
-   nil,   nil,  1149,  1149,  1149,  1149,   nil,  1206,  1206,   nil,
-  1206,  1206,  1206,  1206,  1206,  1206,  1206,   nil,   nil,  1206,
-  1206,   nil,   nil,   nil,  1206,  1206,  1206,  1206,   nil,   nil,
-   nil,   nil,   nil,  1206,   nil,   nil,   nil,   nil,  1149,   nil,
-   nil,  1206,  1206,   nil,  1206,  1206,  1206,  1206,  1206,  1206,
-  1206,  1206,  1206,  1206,  1206,   nil,   nil,  1206,   nil,   nil,
-   nil,   nil,  1211,  1211,   nil,   nil,  1211,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1211,  1211,  1206,  1211,  1211,
-  1211,  1211,  1211,  1211,  1211,   nil,   nil,  1211,  1211,   nil,
-   nil,   nil,  1211,  1211,  1211,  1211,   nil,   nil,   nil,   nil,
-   nil,  1211,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1211,
-  1211,   nil,  1211,  1211,  1211,  1211,  1211,  1211,  1211,  1211,
-  1211,  1211,  1211,   nil,   nil,  1211,   nil,   nil,   nil,   nil,
-  1212,  1212,   nil,   nil,  1212,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1212,  1212,  1211,  1212,  1212,  1212,  1212,
-  1212,  1212,  1212,   nil,   nil,  1212,  1212,   nil,   nil,   nil,
-  1212,  1212,  1212,  1212,   nil,   nil,   nil,   nil,   nil,  1212,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1212,  1212,   nil,
-  1212,  1212,  1212,  1212,  1212,  1212,  1212,  1212,  1212,  1212,
-  1212,   nil,  1238,  1212,  1238,  1238,  1238,  1238,  1238,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1238,   nil,
-   nil,   nil,   nil,  1212,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1238,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1238,
-  1238,  1238,  1238,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1238 ]
-
-racc_action_pointer = [
-   nil,    32,  1098,    58,   nil,   462,   nil,   nil,  5417,   808,
-   nil, 26155, 26288,    72,   nil,    90,   187,   404,   266,   242,
-   282,   nil,   112,  5560,  1386, 26421,   375,   nil,   -40,   nil,
-   165,  5698,  5830,  5960,  6103,  6246,   nil,  1242, 24209, 24348,
-   nil,   296,   283,   313,   408,  6389,  6532,   164,  6675,  6818,
-   697,  6961,   384,   127,   164,   311,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  7099,   nil,  7240,   nil,   nil,
-   -22,   nil,  7383,  7526,   nil,   nil,  7669, 24487,   444,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,   nil,
-   nil,   nil,   nil,   413,   447,   449,   506,   nil,   nil, 26554,
-   nil,   nil,   nil,   nil,   nil,   nil,     0,   nil,   nil,   136,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  7812,   nil,   nil,   nil,   nil,  7955,  8098,  8241,
-  8384,  8527,   530,   nil,   644,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   515,   nil,  1386,  8670,  8813,  8956,  9099,
-  9242,  9385, 29040, 29108,   nil,   nil,  9528,  9671,  9814,   nil,
-   nil,   361,   104,   147,   604,   236,   537,   604,   nil,  9957,
-  1530,   609,   nil,   nil, 10100, 10243, 10386, 10529, 10672, 10815,
- 10958, 11101, 11244, 11387, 11530, 11673, 11816, 11959, 12102, 12245,
- 12388, 12531, 12674, 12817, 12960, 13103,   nil,   nil,   nil,   nil,
- 13246,   nil,   nil,   243,   349,   379,   416,   460,   514,   552,
-   555,   576,   596,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
- 29176,   nil,   nil,   604, 13389, 13532,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil, 13675,   nil,  2106,   nil,   584,   586,
-   nil, 13818,   638, 13961,   nil,   nil, 14104, 14247,   nil,   nil,
-   553,   nil,   nil, 14390,   969,   nil,   626,  1674,   652,   689,
-   661, 24626,  1818,   376,   380,   455,   740,   504,   nil,   707,
-   689,   193,   737,   752,   nil,   nil,   nil,   770,   167,   734,
- 24765,   nil,   343,   516,  3114,  3258,   798,   nil,   801, 14533,
-   nil, 14676,   726,  1962,   731,   nil, 28944,   337,   735,  2106,
-  2250,  1083,   776, 14819, 14962,   nil,   461,    -8,     8, 15105,
-  2394,  2538,   598,   893,   780,   -19,    -7,   591,   859,    24,
-   892,   nil,   nil, 24904,   nil, 25043,   475,   nil,   346,   nil,
-   383,   nil,   136,   nil,   816,   402,   nil,   818,   440,   nil,
-   821,   -59,   nil,   823,   -58,   nil,   481,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil, 26687,   nil,   nil,   nil,   nil,   837,   nil,   908,   824,
- 15248,   826,   nil,   nil,   810,   nil,   620,   267,   914,   nil,
-   nil,  1530,   nil,   nil,   nil,   nil,   nil,  1674,   837,   nil,
-   nil,   835,   845,   344,   449,  7240,   nil,   nil,   nil,   272,
-   408,   888,   nil,   nil, 15386, 15518,   nil,   nil,   nil,   -26,
-   nil,   888, 29244, 29312, 15651,   274, 15794, 15937, 16080, 27040,
- 27153,  3402,  3546,   628,   809,   913,   916,   923,   929,  5130,
-  5274,  1121,  3690,  3834,  3978,  4122,  4266,  4410,   900,  1214,
-  4554,  4698,  2250,  4842,   nil,   nil,   nil, 16223,   989,   nil,
- 16361,   nil,   nil,   nil,   nil, 16487,   891,   904,   908,   nil,
-   nil,   nil,   912,   nil,   nil, 16630,   nil,   nil, 16773,   nil,
- 16916,   nil,   196,   nil,   nil,   nil, 17059,  1227,   929,   916,
-   918,   nil,   nil,   923, 25182,   928, 17202, 29380, 29448,   640,
-   972,   nil,   nil, 25321,   937,   nil, 17345, 29516, 29584, 17488,
-  4986,  2394, 17631, 17774,  1066,  1065,   nil,   nil,   949,   951,
-   956,   956,   957,   nil,   964,   966,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   950,   784,   nil,   nil, 17917,
-   nil,   nil,   nil,     0,   nil,   nil,   nil,  1046,   nil,   nil,
-  1054,   610,   977, 18060,  1098,  1101,   985,   nil,   nil,   479,
-   534,  1039,  1027,   nil,   647,  1066,  2682,  1146,   nil,  2826,
-    63,  1152,  1157,   610,  1159,   nil,   nil, 18203, 29652, 29720,
-    26,   nil,  1087,  1089,   -20,   nil,   650,   nil,  1062, 18346,
-   nil,   nil,   611,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   208,   nil,   nil,   265,   nil,
-   nil,   nil,  1040,   nil,   nil,  1041,   nil,  2970,   nil, 26820,
-   nil, 18489,  1046, 18632, 18775, 18918, 29788, 29856, 19061, 19204,
-   461,  1081, 19347, 19490, 19633, 19776,  1081,   nil,   nil,   nil,
- 19919, 20062,  1083,   nil,   nil,   nil,   277,   310,   544,   680,
-  1059,  1098,   nil,  1080,   nil,   nil,   506, 27266,   -67,   nil,
-   660,   nil,   nil,   952,  7099,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1141,     5,   nil,  1105,
-  1067, 26953,   -14,   nil,   113,  1170,   -19,   nil,   nil, 20205,
-   nil,  1085,   nil,  1193,   nil,  1074,   nil,  1118, 20348,   nil,
-   nil, 20491,   nil,   nil,   -85, 25460,  1078,   nil,  1083,    -9,
-    -5,  1120,    25,   652,  1121,  1083, 25599,   nil,  1152,    -7,
-  1818,   308,   nil, 20634,   nil,   nil,   nil, 28981,   nil,   nil,
-   231,   nil,   nil,   720,   745,   nil,   881,   nil, 20777,   nil,
-   918,   nil,  1092,  1099,  1372,  1106,   nil,   nil,   nil,   nil,
-   nil,   nil,  5662,  1962,   nil,   nil,   nil,   nil, 20920,   nil,
-   nil, 21063,   nil,   nil,   nil,   861,   nil,  1222,   nil,   nil,
-   nil,   nil,   nil,  1230,  1231,   nil,   nil, 21206,  1123,    29,
-    30,   162,   163,  3114,   nil,   725,   nil, 29924, 29992, 21349,
-   nil,   nil,   nil,   861,  3258,    34,  1124,   991,  3402,   nil,
-   nil,   nil,   nil,   nil,  1138,   nil,   nil,  1125, 21492,  1129,
-   320,   421,   816,   952,   nil,  2538, 21635,   nil,  1129,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 21778,
- 21921, 22064, 22207,   460,  1227, 27379,  1188,   106, 27492, 27605,
-   504,   -63,  1156,  1157,   nil, 27718,   nil,  1155,  1156,  1247,
-    58,   nil,  1189, 27831, 16346, 28890,   nil,   nil,   nil,   nil,
-   nil, 22350,   nil,   nil,   nil,   nil,  5761,   nil,  3546,   nil,
-   nil,  1192,  1184,   nil,   249,   nil,   nil,   nil,   nil,  1182,
-    39,   nil,   nil, 22493,   nil,   nil,   nil,   nil,  3690,   nil,
-  1183,  1226,   nil,   nil,  1189,   nil,  1193,  1194,   nil,  1195,
-   nil,  1275,   nil,  1198,  1200,   nil,  1201,   nil,   nil,  1206,
-  1084,  1294,   nil,   nil, 22636,   688,  1324,   nil,   nil, 22779,
-   nil,  3834,  1327,   nil,   nil,   nil, 27944,   nil, 22922,    69,
-    68,  1328,  1231,   776,   nil,  1213,  3978, 23065,   612,  1332,
-   nil,  4122,  4266,  1211,  1220,   nil,   nil,   nil,   nil,   nil,
-  1212,   nil,  1224,   479,   nil,   nil, 23208, 23351,   nil,   nil,
-   nil,   nil,  1263,  1264,  1265,  1234,   nil,   nil, 28057,   nil,
-     1,   nil,   nil,  1238,  1239,  1242,   nil,   nil,   nil,  1281,
-  1241,   -33,   nil, 28170,   nil,  1245,   nil,   740,   nil,   nil,
-  2682,  1243,  1246,   nil,  1247,  1251,  1255,   nil,  1284,  1268,
-  1249, 25738,   nil,   nil,   nil,   nil,   nil,  4410,  2826,  4554,
-   nil,     9, 25877,   nil,   nil, 15350,   nil,  7063,   nil,   nil,
- 15449,   nil, 16367,   nil,   nil,   nil,   nil,  1269,  1270,  2970,
-   nil,   nil,    35,   nil,   nil,    43,   866,   -31,   nil,   nil,
-   nil,   nil, 23494,  4698,   nil,   nil,  1391,   635,   nil,   nil,
-  1289,  1402,  2092,   nil,   nil,   nil,   nil,   nil,   126,  1324,
-   nil,   nil,   nil,   nil,   nil,   nil,  1284, 28283,  1285,   nil,
-   nil,   nil,   234,   nil,   nil, 28998,   nil,   nil,   nil, 30054,
-   nil, 24230,   nil,   nil,  1313, 26016,   784,  1373,   nil,  1434,
-  4842,   120,   135,   786,  1391,   144,   nil,  1320,  1335,  1338,
-  1339,  3676,  3820,  4986,   nil, 23637, 23780, 28396,   nil, 23923,
-   358,   nil,   nil,  5130,   nil,   nil,   707,   nil,   nil,   nil,
-   nil,   nil, 28509,  1342, 28622,  1344,   nil,   nil,  1347,  1348,
-  1351,  1352,   nil,  1354,   nil,   855, 30093,   nil,   nil,  1479,
- 24066, 30161, 30229,   145, 24369,   nil,   nil,   nil,   nil,  1369,
-   917,  5274,   nil,   nil,   nil,  1370,   nil,   nil,   nil,   nil,
-  1491,   nil,  2236,  1378, 28735,   nil,   nil,   nil, 30291,   nil,
- 24508,   nil, 24647,   nil, 24786,   nil,   nil,  1418,  1419,   nil,
-  1386,   158,   168,   169,   236,  1385,   nil,   395, 28848,   nil,
-   nil,  1386,  1387,  1388,  1390,   171,   nil,   nil,   nil,   nil,
-  1391, 24925,   nil,   nil,   nil,   nil,  1395,   nil ]
-
-racc_action_default = [
-    -1,  -774,  -773,  -774,    -2,  -759,    -4,    -5,  -774,    -8,
-    -9,  -774,  -774,  -774,   -36,  -774,  -774,   -41,  -774,  -774,
-  -311,   -53,  -761,  -774,   -62,  -774,   -71,   -72,   -73,   -77,
-  -288,  -288,  -288,  -326,  -357,  -358,   -89,  -773,   -93,  -101,
-  -103,  -774,  -651,  -652,  -774,  -774,  -774,  -774,  -774,  -774,
-  -241,  -774,  -761,  -666,  -666,  -259,  -302,  -303,  -304,  -305,
-  -306,  -307,  -308,  -309,  -310,  -745,  -313,  -315,  -322,  -324,
-  -334,  -336,  -774,  -774,   -68,   -68,  -759,  -774,  -345,  -352,
-  -359,  -360,  -362,  -363,  -364,  -365,  -366,  -367,  -368,  -369,
-  -370,  -371,  -380,  -438,  -581,  -582,  -583,  -584,  -585,  -773,
-  -588,  -773,  -773,  -773,  -773,  -773,  -773,  -624,  -625,  -773,
-  -627,  -633,  -635,  -636,  -637,  -638,  -743,  -640,  -641,  -744,
-  -643,  -644,  -645,  -646,  -647,  -648,  -649,  -650,  -655,  -656,
-  1278,    -3,  -760,  -769,  -770,  -771,    -7,  -774,  -774,  -774,
-  -774,  -774,  -774,   -24,  -774,  -132,  -133,  -134,  -135,  -136,
-  -137,  -138,  -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,  -194,  -195,  -196,  -197,  -198,  -199,
-  -200,  -201,  -202,  -203,  -204,  -205,  -206,  -207,  -208,  -209,
-  -210,  -211,  -212,   -29,  -139,  -773,  -774,  -774,  -774,  -774,
-  -774,  -773,  -774,  -774,  -755,  -756,  -774,  -774,  -761,  -762,
-   -57,  -774,  -651,  -652,  -774,  -311,  -774,  -774,  -247,  -774,
-  -773,  -774,   -58,   -60,  -224,  -225,  -774,  -774,  -774,  -774,
-  -774,  -774,  -774,  -774,  -774,  -774,  -774,  -774,  -774,  -774,
-  -774,  -774,  -774,  -774,  -774,  -774,  -260,  -261,  -262,  -263,
-  -774,   -63,   -64,  -774,  -132,  -133,  -172,  -173,  -174,  -190,
-  -195,  -202,  -205,  -651,  -652,  -731,  -732,  -373,  -466,  -446,
-  -774,  -757,  -758,   -78,  -773,  -774,  -333,  -372,  -450,  -459,
-  -461,   -84,  -456,   -85,  -761,   -86,  -266,  -283,  -773,  -773,
-  -287,  -774,  -293,  -774,  -773,  -736,  -740,  -774,   -87,   -88,
-  -759,   -17,   -18,  -774,   -21,   -22,   -91,  -773,  -761,  -774,
-   -94,   -97,  -773,  -109,  -110,  -774,  -774,  -117,  -326,  -329,
-  -761,  -774,  -666,  -666,  -357,  -358,  -361,  -457,  -774,   -99,
-  -774,  -105,  -321,  -774,  -226,  -227,  -634,  -235,  -236,  -774,
-  -248,  -774,  -774,  -773,  -665,  -661,  -688,  -688,  -774,  -773,
-  -773,  -317,  -761,  -773,  -773,  -335,   -67,  -774,  -774,  -774,
-  -773,  -773,  -759,  -774,  -760,  -651,  -652,  -774,  -774,  -311,
-  -774,  -390,  -391,  -774,  -348,  -774,  -688,  -586,  -774,  -609,
-  -774,  -611,  -774,  -613,  -774,  -774,  -593,  -774,  -774,  -599,
-  -774,  -774,  -605,  -774,  -774,  -607,  -774,  -626,  -628,  -629,
-  -630,  -631,    -6,  -772,   -30,   -31,   -32,   -33,   -34,   -10,
-   -11,  -774,   -26,   -27,   -28,  -140,  -774,   -37,   -40,  -298,
-  -774,  -774,  -297,   -38,  -774,   -42,  -774,  -311,   -50,   -52,
-  -213,  -271,  -293,   -54,   -55,   -43,  -214,  -271,  -761,  -278,
-  -279,  -773,  -773,  -746,  -747,  -288,  -454,  -748,  -749,  -747,
-  -746,  -288,  -453,  -455,  -748,  -749,   -49,  -221,   -56,  -761,
-  -332,  -774,  -774,  -774,  -773,  -321,  -774,  -774,  -774,  -774,
-  -774,  -222,  -223,  -228,  -229,  -230,  -231,  -232,  -233,  -237,
-  -238,  -239,  -240,  -242,  -243,  -244,  -245,  -246,  -249,  -250,
-  -251,  -252,  -761,  -264,   -65,  -753,  -754,  -774,  -774,  -467,
-  -288,  -746,  -747,   -75,   -79,  -689,  -761,  -773,  -761,  -289,
-  -463,  -466,  -761,  -328,  -284,  -774,  -292,  -285,  -774,  -290,
-  -774,  -294,  -774,  -739,  -742,   -16,  -760,   -20,  -774,  -761,
-   -90,  -319,  -106,   -95,  -774,  -761,  -773,  -774,  -774,  -116,
-  -774,  -665,  -634,  -774,  -102,  -107,  -774,  -774,  -774,  -774,
-  -265,  -253,  -774,  -774,  -573,  -774,  -403,  -404,  -761,  -673,
-  -761,  -730,  -730,  -671,  -673,  -673,  -687,  -689,  -690,  -691,
-  -692,  -693,  -694,  -695,  -696,  -697,  -774,  -699,  -701,  -703,
-  -708,  -710,  -711,  -714,  -719,  -721,  -722,  -724,  -725,  -726,
-  -728,  -774,  -673,  -774,  -774,  -774,  -761,  -316,  -267,  -766,
-  -766,  -774,  -774,  -734,  -766,  -774,  -773,  -381,  -382,  -773,
-  -774,  -774,  -774,  -774,  -774,  -376,  -473,  -773,  -774,  -774,
-  -321,   -68,  -127,  -128,  -774,  -130,  -774,  -311,  -773,  -774,
-  -353,  -439,  -688,  -442,  -587,  -610,  -615,  -616,  -618,  -589,
-  -612,  -590,  -614,  -591,  -592,  -774,  -595,  -597,  -774,  -598,
-  -601,  -602,  -774,  -603,  -604,  -774,  -632,  -773,   -25,  -774,
-   -35,  -774,  -301,  -774,  -774,  -773,  -774,  -774,  -774,  -774,
-  -458,  -774,  -280,  -282,  -774,  -774,   -80,  -276,  -277,  -451,
-  -774,  -774,   -82,  -452,  -331,  -763,  -746,  -747,  -746,  -747,
-  -761,   -59,  -491,  -493,  -495,  -498,  -554,  -761,  -510,  -513,
-  -547,  -552,  -553,  -774,  -774,  -557,  -558,  -559,  -560,  -561,
-  -562,  -563,  -564,  -565,  -566,  -567,  -774,  -774,  -571,   -61,
-  -774,  -774,  -761,  -445,  -773,   -74,  -447,  -463,  -273,  -280,
-  -275,  -774,  -464,  -774,  -327,  -773,  -291,  -295,  -774,  -737,
-  -738,  -774,   -19,   -23,   -92,  -774,   -98,  -104,  -761,  -746,
-  -747,  -773,  -750,  -115,  -774,  -100,  -774,  -220,  -234,  -761,
-  -255,  -773,  -374,  -773,  -355,  -379,  -662,  -774,  -680,  -664,
-  -774,  -669,  -670,  -774,  -774,  -683,  -774,  -685,  -774,  -392,
-  -774,  -394,  -396,  -399,  -402,  -761,  -702,  -712,  -713,  -723,
-  -727,  -667,  -774,  -257,  -356,  -314,  -318,  -268,  -768,  -767,
-  -270,  -768,  -323,  -325,  -735,  -773,  -383,  -773,   -69,  -384,
-  -385,  -339,  -340,  -774,  -774,  -477,  -342,  -774,  -761,  -746,
-  -747,  -750,  -320,  -773,  -127,  -128,  -129,  -774,  -774,  -773,
-  -346,  -657,  -659,  -349,  -773,  -774,  -761,  -774,  -773,  -594,
-  -596,  -600,  -606,  -608,  -774,  -141,   -39,  -299,  -774,  -761,
-  -746,  -747,  -747,  -746,   -51,  -272,  -774,  -764,  -773,   -45,
-  -216,   -46,  -217,   -81,   -47,  -219,   -48,  -218,   -83,  -774,
-  -774,  -774,  -774,  -458,  -774,  -774,  -496,  -497,  -774,  -774,
-  -774,  -515,  -761,  -761,  -509,  -516,  -522,  -774,  -525,  -529,
-  -774,  -512,  -774,  -774,  -550,  -551,  -555,  -556,  -568,  -128,
-  -569,  -774,   -66,  -733,  -427,  -428,  -761,  -430,  -773,  -449,
-  -448,  -774,  -761,  -460,  -773,  -462,  -286,  -296,  -741,   -96,
-  -458,  -108,  -330,  -774,   -13,   -15,  -375,  -377,  -773,  -580,
-  -574,  -773,  -575,  -576,  -761,  -672,  -673,  -673,  -700,  -730,
-  -709,  -714,  -729,  -673,  -673,  -720,  -673,  -697,  -715,  -761,
-  -774,  -774,  -401,  -698,  -774,  -766,  -774,  -378,  -386,  -774,
-  -388,  -773,  -774,   -70,  -341,  -343,  -774,  -469,  -774,  -774,
-  -458,  -774,  -127,  -128,  -131,  -761,  -773,  -774,  -774,  -774,
-  -440,  -773,  -773,  -432,  -761,  -617,  -620,  -621,  -622,  -623,
-  -774,   -12,  -300,  -458,   -44,  -215,  -281,  -774,  -492,  -494,
-  -502,  -506,  -774,  -774,  -774,  -534,  -536,  -537,  -540,  -541,
-  -543,  -545,  -546,  -761,  -761,  -761,  -570,  -507,  -508,  -532,
-  -517,  -520,  -523,  -774,  -528,  -761,  -765,  -774,  -548,  -549,
-  -254,  -730,  -730,  -408,  -773,  -773,  -773,  -426,  -774,  -761,
-  -697,  -705,  -706,  -717,  -468,   -76,  -274,  -773,  -256,  -773,
-  -579,  -774,  -774,  -578,  -663,  -774,  -676,  -774,  -678,  -668,
-  -774,  -681,  -774,  -684,  -686,  -393,  -395,  -397,  -400,  -258,
-  -269,  -337,  -774,  -389,  -338,  -774,  -482,  -485,  -488,  -489,
-  -490,  -470,  -774,  -773,  -344,  -458,  -774,  -774,  -350,  -354,
-  -774,  -774,  -774,  -441,  -619,  -499,  -500,  -501,  -535,  -539,
-  -542,  -544,  -503,  -504,  -505,  -524,  -518,  -774,  -526,  -530,
-  -511,  -514,  -774,  -406,  -407,  -411,  -410,  -417,  -419,  -774,
-  -422,  -774,  -424,  -429,  -774,  -774,  -704,  -774,  -465,  -773,
-  -773,  -651,  -652,  -774,  -774,  -311,  -577,  -673,  -673,  -673,
-  -673,  -774,  -774,  -773,  -478,  -774,  -774,  -486,  -471,  -774,
-  -773,  -347,  -658,  -773,  -443,  -444,  -761,  -434,  -436,  -437,
-  -533,  -538,  -774,  -521,  -774,  -730,  -707,  -409,  -773,  -773,
-  -773,  -773,  -718,  -773,  -431,  -716,  -774,  -321,   -14,  -573,
-  -773,  -774,  -774,  -321,  -774,  -674,  -677,  -679,  -682,  -398,
-  -773,  -773,  -483,  -484,  -487,  -525,  -472,  -474,  -475,  -476,
-  -774,  -433,  -774,  -519,  -774,  -527,  -531,  -405,  -774,  -414,
-  -774,  -416,  -774,  -420,  -774,  -423,  -425,  -320,  -750,  -572,
-  -761,  -746,  -747,  -750,  -320,  -673,  -387,  -773,  -774,  -351,
-  -435,  -773,  -773,  -773,  -773,  -458,  -675,  -479,  -480,  -481,
-  -526,  -774,  -412,  -415,  -418,  -421,  -773,  -413 ]
-
-racc_goto_table = [
-     6,    43,   237,   644,   468,   299,   385,    43,   844,   636,
-   639,   282,   135,   317,   317,   317,   585,   791,   992,     4,
-   390,   391,   624,   625,   294,   232,   574,   769,   439,   986,
-   340,   240,   371,   589,   301,   281,    43,   344,   344,   366,
-   547,   131,   143,   224,   339,   151,   151,   534,   452,   453,
-   955,   375,   375,   969,   538,   827,   830,   148,   148,   921,
-   834,   359,   132,   379,   912,   975,    43,   967,   856,   465,
-   528,   148,   352,   352,   973,   486,   396,   536,  1014,     9,
-   336,  1096,   761,   135,   913,     9,  1098,   721,   749,   136,
-   353,   353,   967,   318,   318,   318,  1065,   409,     1,   411,
-   413,   416,   419,   422,   425,   801,   802,   409,   338,   387,
-   388,   352,   393,   392,   815,   926,   927,   408,  1187,   428,
-   766,  1138,     2,   766,   938,   966,   590,   426,  1225,   353,
-  1189,    43,   675,  1202,   142,   678,   588,   621,   596,   596,
-    43,   658,   687,   660,   381,  1235,   475,   481,  1068,   954,
-   966,   303,   311,   313,  1079,   148,   459,   372,   378,   459,
-   772,   930,   571,   571,   558,   459,   663,   223,   596,   402,
-  1050,   968,   448,   441,   434,   435,   436,   437,   499,   500,
-   283,   524,   769,   751,   838,   993,   319,   319,   319,   300,
-   757,   605,   605,   547,   689,   369,   968,   631,   756,   308,
-   312,   295,   632,   356,   356,  1193,  1066,   805,   807,     9,
-   400,   317,   860,   432,   530,  1034,  1045,    16,   438,   700,
-   380,   605,  1202,    16,    43,   382,   626,  1055,  1260,   469,
-   776,   383,   446,   384,   447,   458,   403,  1006,   458,   785,
-  1189,   659,   356,  1008,   458,  1032,  1043,   492,  1183,    43,
-   405,   864,    16,   843,  1097,  1067,  1147,   339,  1069,  1186,
-  1233,   661,  1010,   406,   865,  1033,  1044,   720,   540,   541,
-   944,  1004,   794,  1096,   466,   999,  1219,   766,   766,   485,
-   487,  1154,    16,   754,   317,   317,   451,   451,   315,   328,
-   329,  1227,   401,   670,   317,   672,   809,   847,   676,   941,
-  1105,   676,   469,  1110,  1267,  1198,  1058,  1059,  1139,   996,
-   769,   824,   825,   763,  1077,   911,   546,   546,   979,  1221,
-  1106,  1109,   409,  1028,  1046,  1029,  1270,   908,   841,   842,
-   570,   846,    43,   909,   766,   920,    43,   135,   923,   778,
-   344,    43,   552,  1190,   339,  1191,   975,    16,   961,   339,
-   572,   567,   575,  1108,  1081,  1167,    16,   407,   410,   344,
-   412,  1228,   379,   563,   537,   318,   555,   386,   386,   577,
-   415,   386,    43,   418,   318,   352,   421,   424,    43,    43,
-   336,   628,   633,  1015,   867,   336,  1140,   556,   868,    43,
-    43,   427,  1139,   353,   352,  1195,  1007,   641,   642,   135,
-   970,   476,   294,   648,   294,  1196,   475,   481,   559,   527,
-   557,  1100,   353,   565,  1256,  1199,   nil,   nil,  1208,  1200,
-   848,   nil,   866,   nil,   596,   nil,   640,   nil,   643,   nil,
-   nil,   nil,   386,   386,   386,   386,   nil,   352,  1268,   352,
-    16,   949,   454,   629,   773,   454,   nil,  1139,   701,  1236,
-   893,   454,   nil,    18,   nil,   353,   898,   353,   319,    18,
-   nil,   974,   696,   976,   nil,    16,   968,   319,   879,   546,
-   546,   903,   688,   707,   317,   151,   nil,   605,   914,   nil,
-   nil,   781,   nil,  1089,   nil,   nil,   946,   148,    18,  1236,
-   nil,   781,   469,   nil,   nil,   nil,   911,   911,   743,   743,
-   809,   nil,   750,   nil,   982,   769,   356,  1009,  1261,   942,
-   nil,  1057,   nil,  1139,  1224,   nil,   nil,   nil,    18,   968,
-   308,   nil,   nil,   463,   464,   356,   312,   nil,   707,   950,
-   994,   995,   488,   489,   nil,   546,   630,   634,   nil,   485,
-   487,   nil,   466,   889,   891,   nil,   317,   964,    16,   894,
-   896,   nil,    16,   nil,   nil,    43,   575,    16,   870,   nil,
-   539,   870,   781,   344,   469,   575,   nil,   nil,   356,   542,
-   356,   nil,   344,   nil,   nil,  1143,  1144,   nil,   nil,  1086,
-  1088,  1074,   nil,    18,  1107,   nil,  1091,  1093,    16,  1094,
-   nil,   nil,    18,  1064,    16,    16,   706,   853,   352,  1000,
-   nil,   766,   712,   nil,   nil,    16,    16,   352,   nil,   946,
-   475,   481,   605,   nil,   485,   962,   353,   nil,   968,   605,
-   787,  1113,  1269,   459,   485,   353,  1129,   317,   821,   nil,
-  1023,   nil,  1005,   459,   459,    43,   nil,   605,    43,   459,
-   459,   nil,  1249,   835,   708,   469,   837,   839,   nil,  1116,
-   713,   755,   nil,   nil,   nil,  1121,   862,   nil,  1031,   nil,
-   nil,   476,   nil,  1047,  1048,  1062,   nil,   nil,   nil,   nil,
-   809,   809,   nil,  1101,   nil,   317,    18,   nil,    18,  1104,
-   nil,    18,   nil,   nil,   386,     6,    43,    18,  1114,   nil,
-    43,   nil,   940,   469,   nil,   485,  1119,    43,   765,   708,
-   701,    18,   458,  1160,   874,   971,   nil,   701,   922,  1237,
-   nil,   nil,   458,   458,   nil,   nil,   nil,   nil,   458,   458,
-   875,   nil,   nil,   151,  1173,  1024,   743,  1174,   nil,   356,
-   nil,   nil,   743,   743,   939,   148,   476,   932,   356,   nil,
-   nil,   nil,  1168,   485,  1169,   nil,   476,  1170,   890,   892,
-   nil,  1070,   934,   nil,   895,   897,  1115,   nil,   701,   nil,
-   nil,   281,   nil,   546,     9,   911,   nil,   575,   876,   nil,
-   nil,    16,   781,   nil,   344,   884,   nil,   nil,   951,   707,
-  1215,  1216,  1217,  1218,    18,   344,   nil,   nil,    18,   959,
-  1229,   963,   nil,    18,  1132,  1133,  1134,   148,   nil,   nil,
-   nil,   nil,   nil,  1181,   nil,   nil,  1201,   nil,  1203,   352,
-   nil,   nil,   nil,  1040,  1040,   459,   nil,   476,   nil,   nil,
-   352,   nil,   752,   nil,    18,  1040,  1230,   353,   701,   nil,
-    18,    18,   nil,   990,   nil,   990,   nil,   nil,   353,   317,
-   nil,    18,    18,   nil,   nil,   nil,  1013,   nil,   nil,   nil,
-   nil,    16,    43,   451,    16,   888,   nil,   469,   nil,   701,
-  1001,   809,   809,    43,   nil,   476,   nil,    43,  1266,   nil,
-   nil,  1255,   nil,   nil,  1062,  1020,   nil,   789,  1062,  1071,
-  1062,   nil,   nil,   nil,   nil,   nil,   546,   701,   nil,   nil,
-   nil,   nil,   701,   701,   458,  1262,   nil,  1263,   nil,  1264,
-   605,  1040,    16,   485,   743,   nil,    16,   743,   743,   454,
-   nil,   nil,   888,    16,   743,   nil,  1013,  1259,   nil,   454,
-   454,   nil,   743,   743,   743,   454,   454,   nil,  1276,   nil,
-  1025,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
-   356,   nil,   934,   890,   892,   897,   895,   nil,   nil,   nil,
-   708,   356,   nil,   713,   863,   nil,   nil,    43,   nil,  1083,
-  1070,   nil,   nil,   nil,  1070,  1080,   490,  1062,   nil,  1062,
-   nil,  1062,   nil,  1062,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   985,   nil,  1250,   nil,   701,   nil,   nil,   nil,   nil,
-    43,   nil,   nil,   nil,   nil,   743,   nil,   nil,  1103,   nil,
-  1062,  1265,   nil,   nil,   nil,    43,   nil,    18,   nil,   nil,
-    43,    43,   nil,   nil,   972,  1118,   nil,   972,  1120,   nil,
-   nil,   nil,   nil,   701,   701,   701,  1102,   476,   nil,   nil,
-   nil,   nil,   nil,  1040,   nil,   922,   nil,   743,   nil,   nil,
-   nil,   nil,   543,   nil,  1117,   nil,   nil,   971,   nil,  1013,
-   nil,   nil,   743,  1070,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1146,  1146,  1146,   nil,   560,   nil,    16,   nil,
-   294,  1025,   nil,   nil,   nil,   nil,    43,   nil,    43,    16,
-   nil,  1162,   nil,    16,  1158,  1071,  1159,    18,  1071,   nil,
-    18,   nil,  1071,   nil,  1071,   nil,   nil,   nil,   nil,   nil,
-   nil,   454,   nil,   nil,   nil,   352,   nil,   nil,   nil,   nil,
-   627,   nil,    43,   nil,   nil,   nil,   352,   nil,   nil,   nil,
-  1180,   nil,   nil,   353,  1182,   781,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   353,   nil,   743,   nil,    18,   nil,
-   nil,   nil,    18,   735,   735,    18,   nil,   nil,   nil,    18,
-  1063,   nil,   nil,    16,   294,    18,    18,   959,   nil,    43,
-   nil,    18,    18,   nil,   nil,   nil,  1231,  1209,   nil,  1211,
-   nil,   nil,    43,    16,   nil,   nil,   743,   nil,   990,   nil,
-  1220,  1071,    43,  1071,   nil,  1071,   nil,  1071,   nil,   352,
-   317,   743,   nil,   743,   nil,   nil,  1146,  1146,  1146,  1146,
-   nil,  1146,   nil,   nil,   nil,   nil,    16,   353,   469,   nil,
-   nil,   nil,  1222,  1223,  1071,   nil,   nil,   714,   990,   nil,
-    43,    16,   nil,   nil,   nil,   nil,    16,    16,  1257,   nil,
-   701,   nil,   nil,   743,   nil,   nil,   356,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   356,  1148,  1150,
-  1152,   nil,   485,   nil,   nil,   990,   nil,   743,   485,  1146,
-  1146,  1146,  1146,   nil,   758,   nil,   760,   nil,   nil,   nil,
-   764,   nil,   nil,   nil,  1146,    19,   nil,   nil,   nil,   736,
-   736,    19,   nil,   nil,   386,   nil,   nil,   774,   nil,   nil,
-   nil,   nil,    16,   777,    16,   nil,   241,  1166,   nil,   nil,
-   nil,   nil,   386,   nil,    18,   nil,   241,   241,   241,   nil,
-    19,   345,   345,   nil,   nil,    18,   796,   nil,   799,    18,
-   356,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,
-    19,   nil,   nil,   nil,   nil,   241,   241,   nil,   nil,   241,
-   397,   nil,   nil,   nil,   826,   nil,   972,   nil,   nil,  1063,
-   nil,   nil,   nil,  1063,   nil,  1063,   nil,   nil,   nil,   737,
-   737,   735,   nil,   nil,   nil,    16,   nil,   735,   735,   nil,
-   476,   nil,  1239,  1241,  1243,  1245,   nil,  1246,    16,    18,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,
-   nil,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,    18,
-   241,   241,   241,   241,    19,   nil,   nil,   nil,   nil,   nil,
-   nil,   449,   462,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   nil,   nil,   nil,   nil,    16,    20,   nil,   nil,
-   nil,   nil,    18,   nil,   nil,  1272,  1273,  1274,  1275,   nil,
-   nil,   nil,  1063,   nil,  1063,   nil,  1063,    18,  1063,   nil,
-  1277,   nil,    18,    18,   nil,   nil,    20,   347,   347,   nil,
-   386,   386,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   933,   nil,   nil,   nil,   nil,  1063,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,    19,   241,
-   456,   241,   241,   456,   241,   nil,   399,   736,   nil,   456,
-   241,   241,   nil,   736,   736,   nil,   549,   952,   551,   nil,
-   nil,   553,   554,    19,   nil,   nil,   nil,   nil,    18,   nil,
-    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   983,   nil,   nil,   nil,   nil,   nil,   735,
-   nil,   nil,   735,   735,   nil,   nil,   nil,   nil,   nil,   735,
-   nil,    20,   nil,   nil,    18,   nil,   nil,   735,   735,   735,
-    20,   nil,   nil,   nil,   nil,   nil,   nil,   241,   241,   635,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   737,   nil,   nil,
-   nil,   nil,   nil,   737,   737,   nil,    19,   nil,   nil,   nil,
-    19,    18,   nil,   nil,   345,    19,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   345,    18,   nil,   nil,   nil,   nil,   nil,
-   735,   nil,   nil,   nil,   nil,   692,    19,   nil,   nil,   nil,
-   nil,   nil,    19,    19,    20,   nil,   457,   nil,   nil,   457,
-   nil,   nil,   241,    19,    19,   457,   nil,   nil,   nil,   nil,
-  1076,   nil,    18,   nil,   nil,   nil,   656,   nil,   656,    20,
-   nil,   nil,   735,   nil,   nil,   736,   nil,   nil,   736,   736,
-   nil,   nil,  1084,   nil,   nil,   736,   nil,   735,   nil,   nil,
-   nil,   nil,   nil,   736,   736,   736,   nil,  1095,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   767,   nil,  1123,   635,   nil,   770,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,   nil,    20,   241,   nil,   nil,
-   347,    20,   nil,   nil,   nil,   737,   736,   nil,   737,   737,
-   nil,   735,   nil,   nil,   nil,   737,   nil,   nil,   nil,   347,
-   nil,   nil,   nil,   737,   737,   737,   nil,   nil,   nil,   nil,
-   241,   nil,    20,   nil,   816,   nil,   nil,   nil,    20,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   736,    20,
-    20,   735,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    19,
-   nil,   nil,   657,   736,   657,   nil,   735,   345,   735,   241,
-   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,    30,
-   nil,   nil,   nil,   nil,   nil,    30,   737,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   735,   nil,
-    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   877,   nil,
-    30,    30,    30,   nil,    30,   nil,   nil,   767,   635,   nil,
-   nil,   nil,   735,   nil,   nil,   nil,   nil,   nil,   737,    19,
-   nil,   nil,    19,   nil,   nil,   nil,   nil,   736,   nil,   nil,
-   241,   nil,   nil,   737,    30,   nil,   nil,   nil,   nil,    30,
-    30,   nil,   241,    30,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   767,   nil,   nil,   736,   nil,   nil,
-    19,   nil,   nil,   947,    19,   nil,   948,   456,   241,    42,
-   nil,    19,   736,   nil,   736,    42,   nil,   456,   456,   nil,
-   nil,   nil,   nil,   456,   456,    20,   nil,   nil,   960,    30,
-   nil,   nil,   293,   347,    30,    30,    30,    30,    30,   nil,
-   nil,   nil,   347,   978,    42,   343,   343,   737,   nil,   nil,
-   nil,   nil,   nil,   nil,   736,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   767,   nil,   nil,   635,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   736,   nil,
-   nil,   nil,   997,   nil,   395,   nil,   nil,   737,   345,   nil,
-   nil,   nil,   nil,   738,   738,   nil,   nil,   nil,   nil,   345,
-   nil,   nil,   737,   nil,   737,    20,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,  1022,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    30,    30,    30,    30,    30,    30,    30,   nil,
-   nil,   nil,   nil,    30,    30,    30,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   737,   nil,   nil,    30,    42,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-    20,   nil,   nil,   457,   nil,   nil,    19,    20,   737,   nil,
-   nil,   nil,   241,   457,   457,   nil,   nil,    19,   nil,   457,
-   457,    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   456,
-   nil,    30,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    30,   nil,    42,  1111,    30,   nil,   nil,   nil,   nil,    30,
-   nil,   nil,   nil,   nil,   347,   nil,   nil,   nil,   nil,   nil,
-   nil,    19,   nil,   nil,   nil,   347,   nil,    42,   nil,   nil,
-   nil,   635,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    30,    19,   nil,   nil,   nil,   nil,    30,    30,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    30,    30,    30,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   739,   739,   nil,
-   nil,   nil,   241,   nil,    19,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    19,
-   241,   738,    20,   nil,    19,    19,   nil,   738,   738,   nil,
-   nil,   nil,   nil,    20,   nil,   nil,  1019,    20,   nil,   nil,
-    42,   nil,   nil,   nil,    42,   nil,   nil,  1178,   343,    42,
-   nil,   nil,   nil,   nil,   nil,   457,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,  1156,   nil,    42,    42,   nil,   nil,
-    19,    30,    19,   nil,   nil,  1163,   nil,    42,    42,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-   293,   nil,   293,   nil,  1226,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    30,   nil,    19,    20,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    30,   nil,   nil,   nil,   nil,   nil,   nil,
-    20,   nil,   nil,    30,   nil,   nil,   nil,   nil,  1205,   nil,
-   nil,   nil,   nil,    19,   nil,    20,   nil,   nil,   nil,    30,
-    20,    20,   nil,   nil,   nil,   nil,    19,   nil,   241,   241,
-   nil,   740,   740,   nil,   nil,   nil,    19,   nil,   nil,   738,
-   nil,   nil,   738,   738,   nil,   nil,   nil,   nil,   nil,   738,
-   nil,   nil,   nil,   nil,   741,   741,   nil,   738,   738,   738,
-   nil,   nil,   nil,   241,   nil,   739,   nil,   nil,   nil,   nil,
-   nil,   739,   739,    30,    19,   nil,    30,   nil,   nil,   nil,
-   657,   nil,   nil,   nil,    30,   nil,    20,   nil,    20,   nil,
-   nil,  1165,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,
-   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,
-   343,   nil,    20,   nil,    30,    33,   nil,   nil,    30,   nil,
-   738,    30,    30,   nil,   nil,    30,   nil,   nil,   nil,   nil,
-    33,    30,    30,   nil,   nil,   nil,   nil,    30,    30,   nil,
-    33,    33,    33,   nil,    33,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   657,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   738,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,    42,    33,   nil,    42,   738,   nil,    33,
-    33,   nil,    20,    33,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,    42,   nil,   nil,   nil,    42,   nil,
-   nil,   nil,   nil,   739,   nil,    42,   739,   739,   nil,    33,
-   nil,   nil,   nil,   739,    33,    33,    33,    33,    33,   740,
-   nil,   739,   739,   739,   nil,   740,   740,   nil,   nil,   nil,
-   nil,   738,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   741,   nil,   nil,   nil,   nil,   nil,   741,   741,
-    30,   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,
-   nil,    30,   nil,   nil,   nil,    30,   nil,   nil,   nil,   nil,
-   nil,   738,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   343,    30,   nil,   nil,   738,   nil,   738,   nil,
-   nil,   nil,   nil,   343,   739,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    33,    33,    33,    33,    33,    33,    33,   nil,
-   nil,   nil,   nil,    33,    33,    33,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,   738,   nil,
-   nil,   nil,   nil,   nil,   nil,    30,   739,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   739,   738,   nil,   nil,    30,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,    33,    33,   nil,   nil,   nil,    30,   nil,    30,   nil,
-   nil,    33,   nil,   nil,   nil,   nil,   nil,   740,   nil,   nil,
-   740,   740,   nil,    30,    30,   nil,   nil,   740,    30,    30,
-    33,   nil,   nil,   nil,    33,   740,   740,   740,   nil,    33,
-   741,   nil,   nil,   741,   741,   nil,   nil,   nil,   nil,   nil,
-   741,   nil,   nil,   nil,   nil,   739,   nil,   nil,   741,   741,
-   741,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
-    33,   nil,   nil,   nil,   nil,   nil,    33,    33,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    42,    33,    33,    33,   nil,
-   742,   742,   nil,   nil,    30,   739,    30,   nil,   nil,   nil,
-   nil,   nil,   nil,   744,   744,   nil,   nil,   nil,   740,   nil,
-   739,   nil,   739,   nil,   nil,   nil,   nil,   nil,    42,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    30,   741,   nil,    42,   nil,   nil,   nil,   nil,    42,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   740,   nil,   739,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   740,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   741,   nil,   nil,   739,    30,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   741,   nil,
-    30,    33,    30,    30,   nil,   nil,   nil,   nil,   293,   nil,
-    30,   nil,   nil,   nil,    42,   nil,    42,   248,   nil,  1161,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   316,   316,   316,
-   nil,   nil,   nil,   nil,    33,   nil,   nil,    30,   nil,   364,
-   365,   nil,   367,   368,   nil,   370,   nil,   nil,    30,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   740,
-   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   741,   nil,   nil,   nil,   nil,   nil,   nil,    33,
-   nil,   nil,   293,   nil,   nil,   nil,   nil,    42,   nil,   740,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   740,   nil,   740,   nil,   nil,   nil,
-    42,   nil,   741,   nil,   nil,   nil,   nil,   nil,   742,   nil,
-   nil,   nil,   nil,   nil,   742,   742,   nil,   741,   nil,   741,
-   nil,   744,   nil,    33,   nil,   nil,    33,   744,   744,   nil,
-   nil,   nil,   nil,   nil,    33,   nil,   740,   nil,    42,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   741,
-   740,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,    33,   nil,
-   nil,    33,    33,   741,   nil,    33,   nil,   nil,   nil,   nil,
-   nil,    33,    33,   nil,   nil,   nil,   nil,    33,    33,   nil,
-   316,   461,   nil,   nil,   467,   316,   nil,   nil,   nil,   nil,
-   467,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   248,   nil,   nil,   nil,   nil,   501,   502,
-   503,   504,   505,   506,   507,   508,   509,   510,   511,   512,
-   513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
-   nil,   nil,   nil,   nil,   523,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   316,   316,
-   nil,   nil,   nil,   nil,   nil,   nil,   742,   nil,   316,   742,
-   742,   nil,   nil,   nil,   nil,   316,   742,   316,   nil,   744,
-   316,   316,   744,   744,   742,   742,   742,   nil,   nil,   744,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   744,   744,   744,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    33,   nil,   nil,   580,   nil,   581,    33,   nil,   nil,   nil,
-   nil,    33,   nil,   nil,   nil,    33,   nil,   316,   316,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    33,   nil,   nil,   nil,   742,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   744,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   742,
-   nil,   nil,   nil,   nil,   316,    33,   nil,   nil,   nil,   nil,
-   nil,   nil,   744,   nil,   742,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    33,   nil,   744,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   316,   nil,
-   467,   467,   467,   nil,   nil,   nil,    33,   nil,    33,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,    33,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   365,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   742,   316,
-   nil,   nil,   316,   nil,   316,   nil,   nil,   nil,   nil,   nil,
-   nil,   744,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   467,   nil,   nil,   788,   nil,   nil,   nil,   790,   742,   nil,
-   nil,   nil,   nil,   nil,    33,   nil,    33,   nil,   nil,   nil,
-   nil,   744,   nil,   742,   nil,   742,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   316,   nil,   nil,   744,   nil,   744,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,
-    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   742,   nil,   nil,   nil,   nil,
-   nil,   316,   nil,   nil,   nil,   nil,   nil,   nil,   744,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   742,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,
-   nil,   nil,   744,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    33,   nil,    33,    33,   nil,   nil,   nil,   316,   467,   316,
-    33,   nil,   nil,   885,   nil,   nil,   316,   316,   467,   467,
-   nil,   nil,   nil,   nil,   467,   467,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   316,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   316,   nil,   nil,   316,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   316,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   316,   nil,   nil,   316,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   316,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   467,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   467,   467,   467,   467,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1060,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1078,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1099,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   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,   nil,
-   316,   467,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   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,
-   nil,   nil,   nil,   nil,   316 ]
-
-racc_goto_check = [
-     6,    78,    40,   125,    36,   181,   114,    78,   126,   118,
-   118,    43,   131,    57,    57,    57,    12,    15,   121,     2,
-    53,    53,    12,    12,    78,    38,    76,   263,    10,   119,
-    74,    27,    40,   167,    38,    46,    78,    78,    78,    86,
-    99,     5,    22,    22,    14,    83,    83,    63,    29,    29,
-    17,     6,     6,   158,    97,    94,    94,    81,    81,   210,
-    94,    75,     8,   133,   198,   258,    78,   169,    79,    33,
-   182,    81,    47,    47,   169,    33,    78,    36,   172,     9,
-    70,   152,    64,   131,   199,     9,   155,    42,    42,     7,
-    49,    49,   169,    93,    93,    93,   168,     6,     1,     6,
-     6,     6,     6,     6,     6,   162,   162,     6,    71,    24,
-    24,    47,     5,    24,   154,   224,   224,   231,   174,    46,
-   100,   215,     3,   100,   170,   252,    97,   231,   216,    49,
-   175,    78,   235,   259,    11,   235,   180,   180,   248,   248,
-    78,    80,    13,    80,     9,   216,    61,    61,   172,    16,
-   252,    62,    62,    62,    18,    81,    25,    88,    88,    25,
-    20,    79,   247,   247,    21,    25,   180,    23,   248,    26,
-   214,   254,    30,    32,    24,    24,    24,    24,    44,    45,
-    50,    51,   263,    52,    54,    56,    95,    95,    95,    60,
-    66,   253,   253,    99,    84,    90,   254,    92,    98,    96,
-    96,   110,   113,    89,    89,   215,   169,   251,   251,     9,
-   128,    57,   130,     7,    61,   201,   201,    28,     9,    37,
-   134,   253,   259,    28,    78,   135,   136,   201,   174,     6,
-    76,   137,    14,   138,    27,    27,   139,   140,    27,    76,
-   175,   141,    89,   142,    27,   198,   198,    38,   143,    78,
-   144,   145,    28,   125,   156,   160,   165,    14,   166,   173,
-   215,   176,   177,   178,   179,   199,   199,    36,   184,   185,
-   187,    79,   112,   152,    85,   188,   155,   100,   100,    81,
-    85,   172,    28,   190,    57,    57,    93,    93,    69,    69,
-    69,   191,    28,   236,    57,   236,   153,   192,   236,    64,
-   193,   236,     6,   201,   194,   168,   224,   224,   214,   195,
-   263,   112,   112,   182,   170,    42,     6,     6,   154,   196,
-   197,   200,     6,   203,    79,   205,   215,   206,   112,   112,
-    40,   112,    78,   207,   100,   211,    78,   131,   212,    36,
-    78,    78,   231,   218,    14,   219,   258,    28,   226,    14,
-    86,    38,    74,   199,   227,   169,    28,   230,   232,    78,
-   233,   121,   133,    75,    93,    93,     5,    31,    31,    38,
-   234,    31,    78,   237,    93,    47,   238,   239,    78,    78,
-    70,     6,     6,   240,   241,    70,   210,     8,   242,    78,
-    78,   245,   214,    49,    47,   158,   246,    14,    14,   131,
-   256,    96,    78,    38,    78,   257,    61,    61,    71,   262,
-     9,    94,    49,    71,   119,   169,   nil,   nil,    17,   169,
-    36,   nil,   180,   nil,   248,   nil,    24,   nil,     5,   nil,
-   nil,   nil,    31,    31,    31,    31,   nil,    47,   121,    47,
-    28,    76,    28,    93,    10,    28,   nil,   214,    40,   214,
-    63,    28,   nil,    34,   nil,    49,    63,    49,    95,    34,
-   nil,   167,    38,   167,   nil,    28,   254,    95,    36,     6,
-     6,    37,    22,     6,    57,    83,   nil,   253,    37,   nil,
-   nil,    61,   nil,   162,   nil,   nil,    99,    81,    34,   214,
-   nil,    61,     6,   nil,   nil,   nil,    42,    42,    78,    78,
-   153,   nil,    40,   nil,   153,   263,    89,    12,   169,    97,
-   nil,    42,   nil,   214,   198,   nil,   nil,   nil,    34,   254,
-    96,   nil,   nil,    31,    31,    89,    96,   nil,     6,    37,
-   112,   112,    31,    31,   nil,     6,    95,    95,   nil,    81,
-    85,   nil,    85,    33,    33,   nil,    57,    97,    28,    33,
-    33,   nil,    28,   nil,   nil,    78,    74,    28,   236,   nil,
-    69,   236,    61,    78,     6,    74,   nil,   nil,    89,    69,
-    89,   nil,    78,   nil,   nil,   162,   162,   nil,   nil,   251,
-   251,    12,   nil,    34,    42,   nil,   251,   251,    28,   251,
-   nil,   nil,    34,   167,    28,    28,    62,    53,    47,    37,
-   nil,   100,    62,   nil,   nil,    28,    28,    47,   nil,    99,
-    61,    61,   253,   nil,    81,    29,    49,   nil,   254,   253,
-    85,   118,   126,    25,    81,    49,    42,    57,   131,   nil,
-    37,   nil,    36,    25,    25,    78,   nil,   253,    78,    25,
-    25,   nil,    15,    14,    96,     6,    14,   131,   nil,    12,
-    96,    62,   nil,   nil,   nil,    12,     6,   nil,    37,   nil,
-   nil,    96,   nil,    37,    37,   157,   nil,   nil,   nil,   nil,
-   153,   153,   nil,   112,   nil,    57,    34,   nil,    34,   112,
-   nil,    34,   nil,   nil,    31,     6,    78,    34,   112,   nil,
-    78,   nil,   114,     6,   nil,    81,   112,    78,    95,    96,
-    40,    34,    27,   118,     2,   222,   nil,    40,    40,   162,
-   nil,   nil,    27,    27,   nil,   nil,   nil,   nil,    27,    27,
-    22,   nil,   nil,    83,   118,    33,    78,   118,   nil,    89,
-   nil,   nil,    78,    78,   181,    81,    96,    43,    89,   nil,
-   nil,   nil,   167,    81,   167,   nil,    96,   167,    85,    85,
-   nil,   253,     6,   nil,    85,    85,    37,   nil,    40,   nil,
-   nil,    46,   nil,     6,     9,    42,   nil,    74,     9,   nil,
-   nil,    28,    61,   nil,    78,     9,   nil,   nil,    74,     6,
-   251,   251,   251,   251,    34,    78,   nil,   nil,    34,     6,
-   125,     6,   nil,    34,    37,    37,    37,    81,   nil,   nil,
-   nil,   nil,   nil,   112,   nil,   nil,   167,   nil,   167,    47,
-   nil,   nil,   nil,   222,   222,    25,   nil,    96,   nil,   nil,
-    47,   nil,    31,   nil,    34,   222,    12,    49,    40,   nil,
-    34,    34,   nil,     6,   nil,     6,   nil,   nil,    49,    57,
-   nil,    34,    34,   nil,   nil,   nil,    40,   nil,   nil,   nil,
-   nil,    28,    78,    93,    28,    95,   nil,     6,   nil,    40,
-    14,   153,   153,    78,   nil,    96,   nil,    78,   251,   nil,
-   nil,   167,   nil,   nil,   157,    14,   nil,    31,   157,   255,
-   157,   nil,   nil,   nil,   nil,   nil,     6,    40,   nil,   nil,
-   nil,   nil,    40,    40,    27,   167,   nil,   167,   nil,   167,
-   253,   222,    28,    81,    78,   nil,    28,    78,    78,    28,
-   nil,   nil,    95,    28,    78,   nil,    40,   112,   nil,    28,
-    28,   nil,    78,    78,    78,    28,    28,   nil,   167,   nil,
-    85,   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,
-    89,   nil,     6,    85,    85,    85,    85,   nil,   nil,   nil,
-    96,    89,   nil,    96,    31,   nil,   nil,    78,   nil,     6,
-   253,   nil,   nil,   nil,   253,    14,    72,   157,   nil,   157,
-   nil,   157,   nil,   157,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    95,   nil,    36,   nil,    40,   nil,   nil,   nil,   nil,
-    78,   nil,   nil,   nil,   nil,    78,   nil,   nil,    14,   nil,
-   157,    37,   nil,   nil,   nil,    78,   nil,    34,   nil,   nil,
-    78,    78,   nil,   nil,   163,   131,   nil,   163,    14,   nil,
-   nil,   nil,   nil,    40,    40,    40,    24,    96,   nil,   nil,
-   nil,   nil,   nil,   222,   nil,    40,   nil,    78,   nil,   nil,
-   nil,   nil,    72,   nil,    24,   nil,   nil,   222,   nil,    40,
-   nil,   nil,    78,   253,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,     6,     6,     6,   nil,    72,   nil,    28,   nil,
-    78,    85,   nil,   nil,   nil,   nil,    78,   nil,    78,    28,
-   nil,    78,   nil,    28,    14,   255,    14,    34,   255,   nil,
-    34,   nil,   255,   nil,   255,   nil,   nil,   nil,   nil,   nil,
-   nil,    28,   nil,   nil,   nil,    47,   nil,   nil,   nil,   nil,
-    72,   nil,    78,   nil,   nil,   nil,    47,   nil,   nil,   nil,
-    14,   nil,   nil,    49,   131,    61,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    49,   nil,    78,   nil,    34,   nil,
-   nil,   nil,    34,   102,   102,    34,   nil,   nil,   nil,    34,
-   163,   nil,   nil,    28,    78,    34,    34,     6,   nil,    78,
-   nil,    34,    34,   nil,   nil,   nil,    40,    14,   nil,    38,
-   nil,   nil,    78,    28,   nil,   nil,    78,   nil,     6,   nil,
-    14,   255,    78,   255,   nil,   255,   nil,   255,   nil,    47,
-    57,    78,   nil,    78,   nil,   nil,     6,     6,     6,     6,
-   nil,     6,   nil,   nil,   nil,   nil,    28,    49,     6,   nil,
-   nil,   nil,    24,    24,   255,   nil,   nil,    72,     6,   nil,
-    78,    28,   nil,   nil,   nil,   nil,    28,    28,    14,   nil,
-    40,   nil,   nil,    78,   nil,   nil,    89,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    89,   164,   164,
-   164,   nil,    81,   nil,   nil,     6,   nil,    78,    81,     6,
-     6,     6,     6,   nil,    72,   nil,    72,   nil,   nil,   nil,
-    72,   nil,   nil,   nil,     6,    35,   nil,   nil,   nil,   103,
-   103,    35,   nil,   nil,    31,   nil,   nil,    72,   nil,   nil,
-   nil,   nil,    28,    72,    28,   nil,    35,    28,   nil,   nil,
-   nil,   nil,    31,   nil,    34,   nil,    35,    35,    35,   nil,
-    35,    35,    35,   nil,   nil,    34,    72,   nil,    72,    34,
-    89,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,    35,    35,   nil,   nil,    35,
-    35,   nil,   nil,   nil,    72,   nil,   163,   nil,   nil,   163,
-   nil,   nil,   nil,   163,   nil,   163,   nil,   nil,   nil,   104,
-   104,   102,   nil,   nil,   nil,    28,   nil,   102,   102,   nil,
-    96,   nil,   164,   164,   164,   164,   nil,   164,    28,    34,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,
-   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,    34,
-    35,    35,    35,    35,    35,   nil,   nil,   nil,   nil,   nil,
-   nil,    91,    91,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,    28,    39,   nil,   nil,
-   nil,   nil,    34,   nil,   nil,   164,   164,   164,   164,   nil,
-   nil,   nil,   163,   nil,   163,   nil,   163,    34,   163,   nil,
-   164,   nil,    34,    34,   nil,   nil,    39,    39,    39,   nil,
-    31,    31,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    72,   nil,   nil,   nil,   nil,   163,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,    35,    35,
-    35,    35,    35,    35,    35,   nil,    39,   103,   nil,    35,
-    35,    35,   nil,   103,   103,   nil,    91,    72,    91,   nil,
-   nil,    91,    91,    35,   nil,   nil,   nil,   nil,    34,   nil,
-    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,   102,
-   nil,   nil,   102,   102,   nil,   nil,   nil,   nil,   nil,   102,
-   nil,    39,   nil,   nil,    34,   nil,   nil,   102,   102,   102,
-    39,   nil,   nil,   nil,   nil,   nil,   nil,    35,    35,    91,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   104,   nil,   nil,
-   nil,   nil,   nil,   104,   104,   nil,    35,   nil,   nil,   nil,
-    35,    34,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    35,    34,   nil,   nil,   nil,   nil,   nil,
-   102,   nil,   nil,   nil,   nil,    91,    35,   nil,   nil,   nil,
-   nil,   nil,    35,    35,    39,   nil,    39,   nil,   nil,    39,
-   nil,   nil,    35,    35,    35,    39,   nil,   nil,   nil,   nil,
-    72,   nil,    34,   nil,   nil,   nil,    35,   nil,    35,    39,
-   nil,   nil,   102,   nil,   nil,   103,   nil,   nil,   103,   103,
-   nil,   nil,    72,   nil,   nil,   103,   nil,   102,   nil,   nil,
-   nil,   nil,   nil,   103,   103,   103,   nil,    72,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,    72,    91,   nil,    91,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,    39,    35,   nil,   nil,
-    39,    39,   nil,   nil,   nil,   104,   103,   nil,   104,   104,
-   nil,   102,   nil,   nil,   nil,   104,   nil,   nil,   nil,    39,
-   nil,   nil,   nil,   104,   104,   104,   nil,   nil,   nil,   nil,
-    35,   nil,    39,   nil,    91,   nil,   nil,   nil,    39,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   103,    39,
-    39,   102,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-   nil,   nil,    39,   103,    39,   nil,   102,    35,   102,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,    65,
-   nil,   nil,   nil,   nil,   nil,    65,   104,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   102,   nil,
-    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
-    65,    65,    65,   nil,    65,   nil,   nil,    91,    91,   nil,
-   nil,   nil,   102,   nil,   nil,   nil,   nil,   nil,   104,    35,
-   nil,   nil,    35,   nil,   nil,   nil,   nil,   103,   nil,   nil,
-    35,   nil,   nil,   104,    65,   nil,   nil,   nil,   nil,    65,
-    65,   nil,    35,    65,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    91,   nil,   nil,   103,   nil,   nil,
-    35,   nil,   nil,    91,    35,   nil,    91,    35,    35,    77,
-   nil,    35,   103,   nil,   103,    77,   nil,    35,    35,   nil,
-   nil,   nil,   nil,    35,    35,    39,   nil,   nil,    91,    65,
-   nil,   nil,    77,    39,    65,    65,    65,    65,    65,   nil,
-   nil,   nil,    39,    91,    77,    77,    77,   104,   nil,   nil,
-   nil,   nil,   nil,   nil,   103,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,    91,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   103,   nil,
-   nil,   nil,    91,   nil,    77,   nil,   nil,   104,    35,   nil,
-   nil,   nil,   nil,   105,   105,   nil,   nil,   nil,   nil,    35,
-   nil,   nil,   104,   nil,   104,    39,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    65,    65,    65,    65,    65,    65,    65,   nil,
-   nil,   nil,   nil,    65,    65,    65,   nil,   nil,   nil,    77,
-   nil,   nil,   nil,   nil,   104,   nil,   nil,    65,    77,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-    39,   nil,   nil,    39,   nil,   nil,    35,    39,   104,   nil,
-   nil,   nil,    35,    39,    39,   nil,   nil,    35,   nil,    39,
-    39,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-   nil,    65,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    65,   nil,    77,    91,    65,   nil,   nil,   nil,   nil,    65,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
-   nil,    35,   nil,   nil,   nil,    39,   nil,    77,   nil,   nil,
-   nil,    91,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    65,    35,   nil,   nil,   nil,   nil,    65,    65,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    65,    65,    65,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   106,   nil,
-   nil,   nil,    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-    35,   105,    39,   nil,    35,    35,   nil,   105,   105,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,    39,    39,   nil,   nil,
-    77,   nil,   nil,   nil,    77,   nil,   nil,    91,    77,    77,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    77,   nil,   nil,   nil,    35,   nil,    77,    77,   nil,   nil,
-    35,    65,    35,   nil,   nil,    35,   nil,    77,    77,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-    77,   nil,    77,   nil,    91,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    65,   nil,    35,    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,    65,   nil,   nil,   nil,   nil,   nil,   nil,
-    39,   nil,   nil,    65,   nil,   nil,   nil,   nil,    35,   nil,
-   nil,   nil,   nil,    35,   nil,    39,   nil,   nil,   nil,    65,
-    39,    39,   nil,   nil,   nil,   nil,    35,   nil,    35,    35,
-   nil,   107,   107,   nil,   nil,   nil,    35,   nil,   nil,   105,
-   nil,   nil,   105,   105,   nil,   nil,   nil,   nil,   nil,   105,
-   nil,   nil,   nil,   nil,   108,   108,   nil,   105,   105,   105,
-   nil,   nil,   nil,    35,   nil,   106,   nil,   nil,   nil,   nil,
-   nil,   106,   106,    65,    35,   nil,    65,   nil,   nil,   nil,
-    39,   nil,   nil,   nil,    65,   nil,    39,   nil,    39,   nil,
-   nil,    39,   nil,   nil,   nil,   nil,    65,   nil,   nil,   nil,
-   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
-    77,   nil,    39,   nil,    65,    68,   nil,   nil,    65,   nil,
-   105,    65,    65,   nil,   nil,    65,   nil,   nil,   nil,   nil,
-    68,    65,    65,   nil,   nil,   nil,   nil,    65,    65,   nil,
-    68,    68,    68,   nil,    68,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,    77,    68,   nil,    77,   105,   nil,    68,
-    68,   nil,    39,    68,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   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,    77,   nil,   nil,   nil,    77,   nil,
-   nil,   nil,   nil,   106,   nil,    77,   106,   106,   nil,    68,
-   nil,   nil,   nil,   106,    68,    68,    68,    68,    68,   107,
-   nil,   106,   106,   106,   nil,   107,   107,   nil,   nil,   nil,
-   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   108,   nil,   nil,   nil,   nil,   nil,   108,   108,
-    65,   nil,   nil,   nil,   nil,   nil,    65,   nil,   nil,   nil,
-   nil,    65,   nil,   nil,   nil,    65,   nil,   nil,   nil,   nil,
-   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    77,    65,   nil,   nil,   105,   nil,   105,   nil,
-   nil,   nil,   nil,    77,   106,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    68,    68,    68,    68,    68,    68,    68,   nil,
-   nil,   nil,   nil,    68,    68,    68,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   105,   nil,
-   nil,   nil,   nil,   nil,   nil,    65,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   106,   105,   nil,   nil,    65,   nil,   nil,   nil,   nil,
-    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    77,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,
-   nil,    68,    68,   nil,   nil,   nil,    65,   nil,    65,   nil,
-   nil,    68,   nil,   nil,   nil,   nil,   nil,   107,   nil,   nil,
-   107,   107,   nil,    65,    65,   nil,   nil,   107,    65,    65,
-    68,   nil,   nil,   nil,    68,   107,   107,   107,   nil,    68,
-   108,   nil,   nil,   108,   108,   nil,   nil,   nil,   nil,   nil,
-   108,   nil,   nil,   nil,   nil,   106,   nil,   nil,   108,   108,
-   108,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,
-    68,   nil,   nil,   nil,   nil,   nil,    68,    68,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    77,    68,    68,    68,   nil,
-   109,   109,   nil,   nil,    65,   106,    65,   nil,   nil,   nil,
-   nil,   nil,   nil,   116,   116,   nil,   nil,   nil,   107,   nil,
-   106,   nil,   106,   nil,   nil,   nil,   nil,   nil,    77,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    65,   108,   nil,    77,   nil,   nil,   nil,   nil,    77,    77,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   107,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   108,   nil,   nil,   106,    65,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,   nil,
-    65,    68,    65,    65,   nil,   nil,   nil,   nil,    77,   nil,
-    65,   nil,   nil,   nil,    77,   nil,    77,    41,   nil,    77,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,    41,
-   nil,   nil,   nil,   nil,    68,   nil,   nil,    65,   nil,    41,
-    41,   nil,    41,    41,   nil,    41,   nil,   nil,    65,   nil,
-    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   107,
-   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   108,   nil,   nil,   nil,   nil,   nil,   nil,    68,
-   nil,   nil,    77,   nil,   nil,   nil,   nil,    77,   nil,   107,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    77,   nil,   nil,   nil,   107,   nil,   107,   nil,   nil,   nil,
-    77,   nil,   108,   nil,   nil,   nil,   nil,   nil,   109,   nil,
-   nil,   nil,   nil,   nil,   109,   109,   nil,   108,   nil,   108,
-   nil,   116,   nil,    68,   nil,   nil,    68,   116,   116,   nil,
-   nil,   nil,   nil,   nil,    68,   nil,   107,   nil,    77,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,
-   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,    68,   nil,
-   nil,    68,    68,   108,   nil,    68,   nil,   nil,   nil,   nil,
-   nil,    68,    68,   nil,   nil,   nil,   nil,    68,    68,   nil,
-    41,    41,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   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,
-   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,    41,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   109,   nil,    41,   109,
-   109,   nil,   nil,   nil,   nil,    41,   109,    41,   nil,   116,
-    41,    41,   116,   116,   109,   109,   109,   nil,   nil,   116,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   116,   116,   116,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    68,   nil,   nil,    41,   nil,    41,    68,   nil,   nil,   nil,
-   nil,    68,   nil,   nil,   nil,    68,   nil,    41,    41,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    68,   nil,   nil,   nil,   109,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   116,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,
-   nil,   nil,   nil,   nil,    41,    68,   nil,   nil,   nil,   nil,
-   nil,   nil,   116,   nil,   109,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    68,   nil,   116,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-    41,    41,    41,   nil,   nil,   nil,    68,   nil,    68,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    68,    68,   nil,   nil,   nil,    68,    68,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    41,
-   nil,   nil,    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,
-   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,   nil,   nil,    41,   nil,   nil,   nil,    41,   109,   nil,
-   nil,   nil,   nil,   nil,    68,   nil,    68,   nil,   nil,   nil,
-   nil,   116,   nil,   109,   nil,   109,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,   nil,   nil,   116,   nil,   116,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
-    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   109,   nil,   nil,   nil,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   116,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-   nil,   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    68,   nil,    68,    68,   nil,   nil,   nil,    41,    41,    41,
-    68,   nil,   nil,    41,   nil,   nil,    41,    41,    41,    41,
-   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   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,    41,   nil,   nil,    41,   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,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,   nil,   nil,    41,   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,    41,   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,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    41,    41,    41,    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,   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,    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,   nil,   nil,   nil,   nil,   nil,   nil,    41,   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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    41,    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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    41 ]
-
-racc_goto_pointer = [
-   nil,    98,    17,   122,   nil,    36,    -2,    81,    57,    77,
-  -114,   124,  -357,  -298,     7,  -567,  -642,  -741,  -800,   nil,
-  -396,  -171,    31,   155,    37,   -71,    92,     8,   215,  -178,
-   -54,   295,    30,  -161,   451,  1273,  -227,  -249,     6,  1429,
-   -20,  3024,  -412,   -14,   -74,   -74,    10,    34,   nil,    52,
-   155,  -102,  -341,   -54,  -456,   nil,  -653,   -20,   nil,   nil,
-   161,   -86,   121,  -256,  -458,  1857,  -343,   nil,  2537,   255,
-    43,    71,   728,   nil,    -8,    22,  -334,  1967,    -1,  -586,
-  -262,    46,   nil,    34,  -251,    44,    -8,   nil,   104,   165,
-   145,  1195,  -186,    60,  -574,   153,   169,  -250,  -332,  -279,
-  -425,   nil,   644,   780,   870,  1554,  1758,  1952,  1975,  2431,
-   176,   nil,  -313,  -182,   -64,   nil,  2444,   nil,  -378,  -806,
-   nil,  -819,   nil,   nil,   nil,  -390,  -635,   nil,   133,   nil,
-  -446,     7,   nil,     9,   154,   158,  -155,   163,   164,   158,
-  -623,  -163,  -620,  -870,   171,  -409,   nil,   nil,   nil,   nil,
-   nil,   nil,  -899,  -310,  -492,  -895,  -726,  -271,  -747,   nil,
-  -681,   nil,  -486,   214,   184,  -808,  -678,  -343,  -840,  -730,
-  -630,   nil,  -788,  -863, -1004,  -992,  -145,  -603,   170,  -397,
-  -240,   -21,  -228,   nil,   -41,   -41,   nil,  -492,  -572,   nil,
-  -246,  -889,  -349,  -696,  -953,  -536,  -855,  -676,  -663,  -643,
-  -675,  -693,   nil,  -581,   nil,  -580,  -399,  -393,   nil,   nil,
-  -669,  -393,  -391,   nil,  -745,  -932, -1049,   nil,  -785,  -783,
-   nil,   nil,   -95,   nil,  -618,   nil,  -445,  -607,   nil,   nil,
-   261,    18,   257,   258,   267,  -283,  -117,   269,   271,   271,
-  -484,  -283,  -280,   nil,   nil,   282,  -465,  -190,  -238,   nil,
-   nil,  -387,  -672,  -185,  -626,   -57,  -400,  -737,  -739, -1016,
-   nil,   nil,   113,  -521 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   331,     7,   394,   334,
-   nil,   nil,   nil,   nil,   584,   nil,   nil,   nil,   nil,   330,
-   332,   nil,   nil,   nil,   nil,    14,    15,    21,   246,   nil,
-   nil,    17,   nil,   455,   247,   363,   nil,   nil,   858,   245,
-   491,    24,  1049,   nil,   nil,   nil,   150,    53,    25,    54,
-   nil,   nil,   nil,   nil,   nil,   389,   nil,    26,    27,    28,
-   nil,   784,   nil,   nil,   nil,   351,   nil,    29,   348,   470,
-    36,   nil,   nil,    38,    41,    40,   nil,   242,   243,   655,
-   nil,   478,   149,    95,   nil,   460,   111,    50,   nil,    55,
-   280,   322,   nil,   471,   nil,   472,   483,   nil,   709,   544,
-   320,   305,    56,    57,    58,    59,    60,    61,    62,    63,
-    64,    66,   nil,   nil,   306,    70,    71,    72,   nil,   nil,
-    73,   988,    74,    75,    76,   nil,   nil,    77,   nil,    78,
-   nil,   637,    79,   373,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   310,   298,   793,   958,
-   646,   989,   811,   604,   nil,   812,   813,   592,   586,   587,
-  1197,  1061,   nil,   593,   nil,   nil,   nil,   622,   nil,   595,
-   nil,   935,   nil,   nil,   nil,   602,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   482,   nil,   nil,   762,   nil,   nil,   529,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   916,   nil,   722,   731,   723,   724,   nil,   nil,   725,   726,
-   nil,   nil,   nil,   915,   917,   nil,   918,  1035,  1036,  1037,
-  1038,  1041,   613,  1042,   730,   732,   nil,   nil,    94,    96,
-    98,   nil,   nil,   nil,   nil,   nil,   665,   nil,   nil,   nil,
-   nil,   nil,   nil,   107,   108,   nil,   nil,   374,   965,   377,
-   591,   798,   594,   977,   607,   609,   610,  1072,   614,  1073,
-   617,   620,   nil,   325 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 150, :_reduce_1,
-  2, 148, :_reduce_2,
-  2, 149, :_reduce_3,
-  1, 151, :_reduce_none,
-  1, 151, :_reduce_none,
-  3, 151, :_reduce_6,
-  2, 151, :_reduce_none,
-  1, 154, :_reduce_none,
-  0, 158, :_reduce_9,
-  3, 154, :_reduce_10,
-  0, 160, :_reduce_11,
-  4, 157, :_reduce_12,
-  0, 165, :_reduce_13,
-  6, 159, :_reduce_14,
-  3, 159, :_reduce_15,
-  2, 161, :_reduce_16,
-  1, 166, :_reduce_none,
-  1, 166, :_reduce_none,
-  3, 166, :_reduce_19,
-  2, 166, :_reduce_20,
-  1, 167, :_reduce_none,
-  0, 168, :_reduce_22,
-  3, 167, :_reduce_23,
-  0, 179, :_reduce_24,
-  4, 156, :_reduce_25,
-  3, 156, :_reduce_26,
-  3, 156, :_reduce_27,
-  3, 156, :_reduce_28,
-  2, 156, :_reduce_29,
-  3, 156, :_reduce_30,
-  3, 156, :_reduce_31,
-  3, 156, :_reduce_32,
-  3, 156, :_reduce_33,
-  3, 156, :_reduce_34,
-  4, 156, :_reduce_35,
-  1, 156, :_reduce_none,
-  3, 156, :_reduce_37,
-  3, 156, :_reduce_38,
-  5, 156, :_reduce_39,
-  3, 156, :_reduce_40,
-  1, 156, :_reduce_none,
-  3, 172, :_reduce_42,
-  3, 172, :_reduce_43,
-  6, 172, :_reduce_44,
-  5, 172, :_reduce_45,
-  5, 172, :_reduce_46,
-  5, 172, :_reduce_47,
-  5, 172, :_reduce_48,
-  3, 172, :_reduce_49,
-  1, 180, :_reduce_50,
-  3, 180, :_reduce_51,
-  1, 180, :_reduce_none,
-  1, 178, :_reduce_none,
-  3, 178, :_reduce_54,
-  3, 178, :_reduce_55,
-  3, 178, :_reduce_56,
-  2, 178, :_reduce_57,
-  0, 191, :_reduce_58,
-  4, 178, :_reduce_59,
-  0, 192, :_reduce_60,
-  4, 178, :_reduce_61,
-  1, 178, :_reduce_none,
-  1, 190, :_reduce_63,
-  2, 194, :_reduce_64,
-  0, 199, :_reduce_65,
-  5, 196, :_reduce_66,
-  1, 171, :_reduce_67,
-  0, 202, :_reduce_68,
-  0, 203, :_reduce_69,
-  4, 200, :_reduce_70,
-  1, 174, :_reduce_none,
-  1, 174, :_reduce_none,
-  1, 205, :_reduce_none,
-  4, 205, :_reduce_74,
-  0, 213, :_reduce_75,
-  4, 210, :_reduce_76,
-  1, 212, :_reduce_77,
-  2, 204, :_reduce_78,
-  3, 204, :_reduce_79,
-  4, 204, :_reduce_80,
-  5, 204, :_reduce_81,
-  4, 204, :_reduce_82,
-  5, 204, :_reduce_83,
-  2, 204, :_reduce_84,
-  2, 204, :_reduce_85,
-  2, 204, :_reduce_86,
-  2, 204, :_reduce_87,
-  2, 204, :_reduce_88,
-  1, 173, :_reduce_none,
-  3, 173, :_reduce_90,
-  1, 218, :_reduce_none,
-  3, 218, :_reduce_92,
-  1, 217, :_reduce_93,
-  2, 217, :_reduce_94,
-  3, 217, :_reduce_95,
-  5, 217, :_reduce_96,
-  2, 217, :_reduce_97,
-  4, 217, :_reduce_98,
-  2, 217, :_reduce_99,
-  4, 217, :_reduce_100,
-  1, 217, :_reduce_101,
-  3, 217, :_reduce_102,
-  1, 221, :_reduce_none,
-  3, 221, :_reduce_104,
-  2, 220, :_reduce_105,
-  3, 220, :_reduce_106,
-  1, 223, :_reduce_107,
-  3, 223, :_reduce_108,
-  1, 222, :_reduce_109,
-  1, 222, :_reduce_110,
-  4, 222, :_reduce_111,
-  3, 222, :_reduce_112,
-  3, 222, :_reduce_113,
-  3, 222, :_reduce_114,
-  3, 222, :_reduce_115,
-  2, 222, :_reduce_116,
-  1, 222, :_reduce_117,
-  1, 175, :_reduce_118,
-  1, 175, :_reduce_119,
-  4, 175, :_reduce_120,
-  3, 175, :_reduce_121,
-  3, 175, :_reduce_122,
-  3, 175, :_reduce_123,
-  3, 175, :_reduce_124,
-  2, 175, :_reduce_125,
-  1, 175, :_reduce_126,
-  1, 226, :_reduce_127,
-  1, 226, :_reduce_none,
-  2, 227, :_reduce_129,
-  1, 227, :_reduce_130,
-  3, 227, :_reduce_131,
-  1, 193, :_reduce_none,
-  1, 193, :_reduce_none,
-  1, 193, :_reduce_none,
-  1, 193, :_reduce_135,
-  1, 193, :_reduce_none,
-  1, 169, :_reduce_137,
-  1, 169, :_reduce_none,
-  1, 170, :_reduce_139,
-  0, 231, :_reduce_140,
-  4, 170, :_reduce_141,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 228, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  3, 188, :_reduce_213,
-  3, 188, :_reduce_214,
-  6, 188, :_reduce_215,
-  5, 188, :_reduce_216,
-  5, 188, :_reduce_217,
-  5, 188, :_reduce_218,
-  5, 188, :_reduce_219,
-  4, 188, :_reduce_220,
-  3, 188, :_reduce_221,
-  3, 188, :_reduce_222,
-  3, 188, :_reduce_223,
-  2, 188, :_reduce_224,
-  2, 188, :_reduce_225,
-  2, 188, :_reduce_226,
-  2, 188, :_reduce_227,
-  3, 188, :_reduce_228,
-  3, 188, :_reduce_229,
-  3, 188, :_reduce_230,
-  3, 188, :_reduce_231,
-  3, 188, :_reduce_232,
-  3, 188, :_reduce_233,
-  4, 188, :_reduce_234,
-  2, 188, :_reduce_235,
-  2, 188, :_reduce_236,
-  3, 188, :_reduce_237,
-  3, 188, :_reduce_238,
-  3, 188, :_reduce_239,
-  3, 188, :_reduce_240,
-  1, 188, :_reduce_none,
-  3, 188, :_reduce_242,
-  3, 188, :_reduce_243,
-  3, 188, :_reduce_244,
-  3, 188, :_reduce_245,
-  3, 188, :_reduce_246,
-  2, 188, :_reduce_247,
-  2, 188, :_reduce_248,
-  3, 188, :_reduce_249,
-  3, 188, :_reduce_250,
-  3, 188, :_reduce_251,
-  3, 188, :_reduce_252,
-  3, 188, :_reduce_253,
-  6, 188, :_reduce_254,
-  4, 188, :_reduce_255,
-  6, 188, :_reduce_256,
-  4, 188, :_reduce_257,
-  6, 188, :_reduce_258,
-  1, 188, :_reduce_none,
-  1, 237, :_reduce_none,
-  1, 237, :_reduce_none,
-  1, 237, :_reduce_none,
-  1, 237, :_reduce_none,
-  3, 234, :_reduce_264,
-  3, 234, :_reduce_265,
-  1, 238, :_reduce_266,
-  1, 239, :_reduce_none,
-  2, 239, :_reduce_268,
-  4, 239, :_reduce_269,
-  2, 239, :_reduce_270,
-  1, 232, :_reduce_none,
-  3, 232, :_reduce_272,
-  3, 243, :_reduce_273,
-  5, 243, :_reduce_274,
-  3, 243, :_reduce_275,
-  1, 245, :_reduce_none,
-  1, 245, :_reduce_none,
-  1, 183, :_reduce_none,
-  1, 183, :_reduce_none,
-  2, 183, :_reduce_280,
-  4, 183, :_reduce_281,
-  2, 183, :_reduce_282,
-  1, 216, :_reduce_283,
-  2, 216, :_reduce_284,
-  2, 216, :_reduce_285,
-  4, 216, :_reduce_286,
-  1, 216, :_reduce_287,
-  0, 248, :_reduce_288,
-  2, 209, :_reduce_289,
-  2, 247, :_reduce_290,
-  2, 246, :_reduce_291,
-  1, 246, :_reduce_none,
-  1, 240, :_reduce_293,
-  2, 240, :_reduce_294,
-  3, 240, :_reduce_295,
-  4, 240, :_reduce_296,
-  1, 177, :_reduce_297,
-  1, 177, :_reduce_298,
-  3, 176, :_reduce_299,
-  4, 176, :_reduce_300,
-  2, 176, :_reduce_301,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_312,
-  0, 281, :_reduce_313,
-  4, 236, :_reduce_314,
-  0, 282, :_reduce_315,
-  3, 236, :_reduce_316,
-  0, 283, :_reduce_317,
-  4, 236, :_reduce_318,
-  3, 236, :_reduce_319,
-  3, 236, :_reduce_320,
-  2, 236, :_reduce_321,
-  0, 284, :_reduce_322,
-  4, 236, :_reduce_323,
-  0, 285, :_reduce_324,
-  4, 236, :_reduce_325,
-  1, 236, :_reduce_326,
-  4, 236, :_reduce_327,
-  3, 236, :_reduce_328,
-  1, 236, :_reduce_329,
-  5, 236, :_reduce_330,
-  4, 236, :_reduce_331,
-  3, 236, :_reduce_332,
-  2, 236, :_reduce_333,
-  1, 236, :_reduce_none,
-  2, 236, :_reduce_335,
-  1, 236, :_reduce_336,
-  6, 236, :_reduce_337,
-  6, 236, :_reduce_338,
-  4, 236, :_reduce_339,
-  4, 236, :_reduce_340,
-  5, 236, :_reduce_341,
-  4, 236, :_reduce_342,
-  5, 236, :_reduce_343,
-  6, 236, :_reduce_344,
-  0, 286, :_reduce_345,
-  0, 287, :_reduce_346,
-  7, 236, :_reduce_347,
-  0, 288, :_reduce_348,
-  0, 289, :_reduce_349,
-  0, 290, :_reduce_350,
-  9, 236, :_reduce_351,
-  0, 291, :_reduce_352,
-  0, 292, :_reduce_353,
-  6, 236, :_reduce_354,
-  4, 236, :_reduce_355,
-  4, 236, :_reduce_356,
-  1, 236, :_reduce_357,
-  1, 236, :_reduce_358,
-  1, 236, :_reduce_359,
-  1, 236, :_reduce_360,
-  1, 182, :_reduce_361,
-  1, 258, :_reduce_none,
-  1, 264, :_reduce_none,
-  1, 267, :_reduce_none,
-  1, 269, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 271, :_reduce_none,
-  1, 274, :_reduce_none,
-  1, 276, :_reduce_369,
-  1, 279, :_reduce_370,
-  1, 195, :_reduce_371,
-  1, 293, :_reduce_none,
-  1, 294, :_reduce_none,
-  1, 295, :_reduce_none,
-  1, 296, :_reduce_none,
-  1, 297, :_reduce_none,
-  1, 163, :_reduce_none,
-  1, 298, :_reduce_none,
-  1, 259, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 265, :_reduce_none,
-  1, 265, :_reduce_none,
-  2, 265, :_reduce_none,
-  1, 201, :_reduce_none,
-  1, 201, :_reduce_none,
-  1, 266, :_reduce_none,
-  5, 266, :_reduce_387,
-  1, 268, :_reduce_none,
-  2, 268, :_reduce_389,
-  1, 275, :_reduce_none,
-  1, 275, :_reduce_391,
-  1, 299, :_reduce_none,
-  3, 299, :_reduce_393,
-  1, 302, :_reduce_394,
-  3, 302, :_reduce_395,
-  1, 301, :_reduce_396,
-  3, 301, :_reduce_397,
-  5, 301, :_reduce_398,
-  1, 301, :_reduce_399,
-  3, 301, :_reduce_400,
-  2, 303, :_reduce_401,
-  1, 303, :_reduce_402,
-  1, 304, :_reduce_none,
-  1, 304, :_reduce_none,
-  4, 307, :_reduce_405,
-  2, 307, :_reduce_406,
-  2, 307, :_reduce_407,
-  1, 307, :_reduce_408,
-  2, 311, :_reduce_409,
-  1, 311, :_reduce_none,
-  1, 312, :_reduce_411,
-  6, 313, :_reduce_412,
-  8, 313, :_reduce_413,
-  4, 313, :_reduce_414,
-  6, 313, :_reduce_415,
-  4, 313, :_reduce_416,
-  2, 313, :_reduce_417,
-  6, 313, :_reduce_418,
-  2, 313, :_reduce_419,
-  4, 313, :_reduce_420,
-  6, 313, :_reduce_421,
-  2, 313, :_reduce_422,
-  4, 313, :_reduce_423,
-  2, 313, :_reduce_424,
-  4, 313, :_reduce_425,
-  1, 313, :_reduce_426,
-  1, 317, :_reduce_427,
-  1, 317, :_reduce_428,
-  3, 318, :_reduce_429,
-  1, 318, :_reduce_430,
-  4, 318, :_reduce_431,
-  1, 319, :_reduce_none,
-  4, 319, :_reduce_433,
-  1, 320, :_reduce_434,
-  3, 320, :_reduce_435,
-  1, 321, :_reduce_436,
-  1, 321, :_reduce_none,
-  0, 325, :_reduce_438,
-  0, 326, :_reduce_439,
-  5, 263, :_reduce_440,
-  4, 323, :_reduce_441,
-  1, 323, :_reduce_442,
-  3, 324, :_reduce_443,
-  3, 324, :_reduce_444,
-  3, 328, :_reduce_445,
-  2, 206, :_reduce_446,
-  4, 206, :_reduce_447,
-  5, 206, :_reduce_448,
-  5, 206, :_reduce_449,
-  2, 262, :_reduce_450,
-  4, 262, :_reduce_451,
-  4, 262, :_reduce_452,
-  3, 262, :_reduce_453,
-  3, 262, :_reduce_454,
-  3, 262, :_reduce_455,
-  2, 262, :_reduce_456,
-  1, 262, :_reduce_457,
-  4, 262, :_reduce_458,
-  0, 331, :_reduce_459,
-  4, 261, :_reduce_460,
-  0, 332, :_reduce_461,
-  4, 261, :_reduce_462,
-  0, 333, :_reduce_463,
-  0, 334, :_reduce_464,
-  4, 211, :_reduce_465,
-  0, 336, :_reduce_466,
-  0, 337, :_reduce_467,
-  4, 329, :_reduce_468,
-  1, 335, :_reduce_469,
-  2, 335, :_reduce_470,
-  3, 335, :_reduce_471,
-  4, 335, :_reduce_472,
-  0, 339, :_reduce_473,
-  6, 272, :_reduce_474,
-  1, 338, :_reduce_none,
-  1, 338, :_reduce_none,
-  0, 342, :_reduce_477,
-  0, 343, :_reduce_478,
-  7, 273, :_reduce_479,
-  1, 341, :_reduce_none,
-  1, 341, :_reduce_none,
-  1, 340, :_reduce_none,
-  3, 340, :_reduce_483,
-  3, 340, :_reduce_484,
-  1, 344, :_reduce_none,
-  2, 344, :_reduce_486,
-  3, 344, :_reduce_487,
-  1, 344, :_reduce_488,
-  1, 344, :_reduce_489,
-  1, 344, :_reduce_490,
-  1, 189, :_reduce_none,
-  3, 349, :_reduce_492,
-  1, 349, :_reduce_none,
-  3, 351, :_reduce_494,
-  1, 351, :_reduce_none,
-  1, 353, :_reduce_496,
-  1, 354, :_reduce_497,
-  1, 352, :_reduce_none,
-  4, 352, :_reduce_499,
-  4, 352, :_reduce_500,
-  4, 352, :_reduce_501,
-  3, 352, :_reduce_502,
-  4, 352, :_reduce_503,
-  4, 352, :_reduce_504,
-  4, 352, :_reduce_505,
-  3, 352, :_reduce_506,
-  3, 352, :_reduce_507,
-  3, 352, :_reduce_508,
-  2, 352, :_reduce_509,
-  0, 358, :_reduce_510,
-  4, 352, :_reduce_511,
-  2, 352, :_reduce_512,
-  0, 359, :_reduce_513,
-  4, 352, :_reduce_514,
-  1, 345, :_reduce_515,
-  1, 345, :_reduce_516,
-  2, 345, :_reduce_517,
-  3, 345, :_reduce_518,
-  5, 345, :_reduce_519,
-  2, 345, :_reduce_520,
-  4, 345, :_reduce_521,
-  1, 345, :_reduce_none,
-  2, 360, :_reduce_523,
-  3, 360, :_reduce_524,
-  1, 347, :_reduce_525,
-  3, 347, :_reduce_526,
-  5, 346, :_reduce_527,
-  2, 363, :_reduce_528,
-  1, 363, :_reduce_529,
-  1, 362, :_reduce_none,
-  3, 362, :_reduce_531,
-  1, 361, :_reduce_532,
-  3, 348, :_reduce_533,
-  1, 348, :_reduce_534,
-  2, 348, :_reduce_535,
-  1, 348, :_reduce_536,
-  1, 364, :_reduce_none,
-  3, 364, :_reduce_538,
-  2, 366, :_reduce_539,
-  1, 366, :_reduce_540,
-  1, 367, :_reduce_541,
-  2, 368, :_reduce_542,
-  1, 368, :_reduce_543,
-  2, 370, :_reduce_544,
-  1, 365, :_reduce_none,
-  1, 365, :_reduce_none,
-  1, 355, :_reduce_none,
-  3, 355, :_reduce_548,
-  3, 355, :_reduce_549,
-  2, 355, :_reduce_550,
-  2, 355, :_reduce_551,
-  1, 355, :_reduce_none,
-  1, 355, :_reduce_none,
-  1, 355, :_reduce_none,
-  2, 355, :_reduce_555,
-  2, 355, :_reduce_556,
-  1, 371, :_reduce_none,
-  1, 371, :_reduce_none,
-  1, 371, :_reduce_none,
-  1, 371, :_reduce_none,
-  1, 371, :_reduce_561,
-  1, 371, :_reduce_562,
-  1, 371, :_reduce_563,
-  1, 371, :_reduce_564,
-  1, 371, :_reduce_565,
-  1, 371, :_reduce_none,
-  1, 350, :_reduce_567,
-  2, 372, :_reduce_568,
-  2, 356, :_reduce_569,
-  3, 356, :_reduce_570,
-  1, 356, :_reduce_571,
-  6, 162, :_reduce_572,
-  0, 162, :_reduce_573,
-  1, 373, :_reduce_574,
-  1, 373, :_reduce_none,
-  1, 373, :_reduce_none,
-  2, 374, :_reduce_577,
-  1, 374, :_reduce_none,
-  2, 164, :_reduce_579,
-  1, 164, :_reduce_none,
-  1, 249, :_reduce_581,
-  1, 249, :_reduce_none,
-  1, 250, :_reduce_583,
-  1, 376, :_reduce_584,
-  1, 376, :_reduce_none,
-  2, 376, :_reduce_586,
-  3, 377, :_reduce_587,
-  1, 377, :_reduce_588,
-  3, 251, :_reduce_589,
-  3, 252, :_reduce_590,
-  3, 253, :_reduce_591,
-  3, 253, :_reduce_592,
-  1, 381, :_reduce_593,
-  3, 381, :_reduce_594,
-  1, 382, :_reduce_none,
-  2, 382, :_reduce_596,
-  3, 255, :_reduce_597,
-  3, 255, :_reduce_598,
-  1, 384, :_reduce_599,
-  3, 384, :_reduce_600,
-  3, 254, :_reduce_601,
-  3, 254, :_reduce_602,
-  3, 256, :_reduce_603,
-  3, 256, :_reduce_604,
-  1, 385, :_reduce_605,
-  3, 385, :_reduce_606,
-  1, 386, :_reduce_607,
-  3, 386, :_reduce_608,
-  1, 378, :_reduce_609,
-  2, 378, :_reduce_610,
-  1, 379, :_reduce_611,
-  2, 379, :_reduce_612,
-  1, 380, :_reduce_613,
-  2, 380, :_reduce_614,
-  1, 383, :_reduce_615,
-  0, 388, :_reduce_616,
-  3, 383, :_reduce_617,
-  0, 389, :_reduce_618,
-  4, 383, :_reduce_619,
-  1, 387, :_reduce_620,
-  1, 387, :_reduce_621,
-  1, 387, :_reduce_622,
-  1, 387, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  2, 390, :_reduce_626,
-  1, 390, :_reduce_627,
-  1, 392, :_reduce_none,
-  1, 392, :_reduce_none,
-  1, 392, :_reduce_none,
-  1, 392, :_reduce_none,
-  3, 391, :_reduce_632,
-  1, 375, :_reduce_none,
-  2, 375, :_reduce_634,
-  1, 233, :_reduce_none,
-  1, 233, :_reduce_none,
-  1, 233, :_reduce_none,
-  1, 233, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 224, :_reduce_none,
-  1, 225, :_reduce_644,
-  1, 225, :_reduce_645,
-  1, 225, :_reduce_646,
-  1, 225, :_reduce_647,
-  1, 225, :_reduce_648,
-  1, 225, :_reduce_649,
-  1, 225, :_reduce_650,
-  1, 257, :_reduce_651,
-  1, 257, :_reduce_652,
-  1, 181, :_reduce_653,
-  1, 181, :_reduce_654,
-  1, 186, :_reduce_655,
-  1, 186, :_reduce_656,
-  0, 393, :_reduce_657,
-  4, 277, :_reduce_658,
-  1, 277, :_reduce_659,
-  1, 235, :_reduce_none,
-  1, 235, :_reduce_661,
-  3, 394, :_reduce_662,
-  5, 394, :_reduce_663,
-  3, 394, :_reduce_664,
-  1, 280, :_reduce_none,
-  0, 396, :_reduce_666,
-  3, 280, :_reduce_667,
-  4, 395, :_reduce_668,
-  2, 395, :_reduce_669,
-  2, 395, :_reduce_670,
-  1, 395, :_reduce_none,
-  2, 398, :_reduce_672,
-  0, 398, :_reduce_673,
-  6, 327, :_reduce_674,
-  8, 327, :_reduce_675,
-  4, 327, :_reduce_676,
-  6, 327, :_reduce_677,
-  4, 327, :_reduce_678,
-  6, 327, :_reduce_679,
-  2, 327, :_reduce_680,
-  4, 327, :_reduce_681,
-  6, 327, :_reduce_682,
-  2, 327, :_reduce_683,
-  4, 327, :_reduce_684,
-  2, 327, :_reduce_685,
-  4, 327, :_reduce_686,
-  1, 327, :_reduce_687,
-  0, 327, :_reduce_688,
-  1, 244, :_reduce_689,
-  1, 322, :_reduce_690,
-  1, 322, :_reduce_691,
-  1, 322, :_reduce_692,
-  1, 322, :_reduce_693,
-  1, 300, :_reduce_none,
-  1, 300, :_reduce_695,
-  1, 400, :_reduce_none,
-  1, 401, :_reduce_none,
-  3, 401, :_reduce_698,
-  1, 314, :_reduce_699,
-  3, 314, :_reduce_700,
-  1, 402, :_reduce_none,
-  2, 403, :_reduce_702,
-  1, 403, :_reduce_703,
-  2, 404, :_reduce_704,
-  1, 404, :_reduce_705,
-  1, 308, :_reduce_none,
-  3, 308, :_reduce_707,
-  1, 397, :_reduce_none,
-  3, 397, :_reduce_709,
-  1, 369, :_reduce_none,
-  1, 369, :_reduce_none,
-  2, 306, :_reduce_712,
-  2, 305, :_reduce_713,
-  1, 305, :_reduce_714,
-  3, 405, :_reduce_715,
-  3, 406, :_reduce_716,
-  1, 315, :_reduce_717,
-  3, 315, :_reduce_718,
-  1, 399, :_reduce_719,
-  3, 399, :_reduce_720,
-  1, 407, :_reduce_none,
-  1, 407, :_reduce_none,
-  2, 316, :_reduce_723,
-  1, 316, :_reduce_724,
-  1, 408, :_reduce_none,
-  1, 408, :_reduce_none,
-  2, 310, :_reduce_727,
-  1, 310, :_reduce_728,
-  2, 309, :_reduce_729,
-  0, 309, :_reduce_730,
-  1, 197, :_reduce_none,
-  0, 409, :_reduce_732,
-  4, 197, :_reduce_733,
-  1, 260, :_reduce_734,
-  2, 260, :_reduce_none,
-  1, 242, :_reduce_none,
-  3, 242, :_reduce_737,
-  3, 410, :_reduce_738,
-  2, 410, :_reduce_739,
-  1, 410, :_reduce_740,
-  4, 410, :_reduce_741,
-  2, 410, :_reduce_742,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 214, :_reduce_none,
-  1, 208, :_reduce_none,
-  1, 208, :_reduce_none,
-  1, 208, :_reduce_none,
-  1, 208, :_reduce_none,
-  1, 330, :_reduce_none,
-  1, 330, :_reduce_none,
-  1, 330, :_reduce_none,
-  1, 198, :_reduce_none,
-  1, 198, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 207, :_reduce_none,
-  1, 207, :_reduce_none,
-  0, 152, :_reduce_none,
-  1, 152, :_reduce_none,
-  0, 187, :_reduce_none,
-  1, 187, :_reduce_none,
-  2, 219, :_reduce_none,
-  2, 184, :_reduce_764,
-  2, 357, :_reduce_765,
-  0, 241, :_reduce_none,
-  1, 241, :_reduce_none,
-  1, 241, :_reduce_none,
-  1, 278, :_reduce_769,
-  1, 278, :_reduce_none,
-  1, 155, :_reduce_none,
-  2, 155, :_reduce_772,
-  0, 153, :_reduce_773 ]
-
-racc_reduce_n = 774
-
-racc_shift_n = 1278
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLABEL_END => 141,
-  :tLONELY => 142,
-  :tBDOT2 => 143,
-  :tBDOT3 => 144,
-  :tLOWEST => 145,
-  :tEQL => 146 }
-
-racc_nt_base = 147
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLABEL_END",
-  "tLONELY",
-  "tBDOT2",
-  "tBDOT3",
-  "tLOWEST",
-  "tEQL",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "backref",
-  "opt_nl",
-  "arg",
-  "p_expr",
-  "def_name",
-  "@7",
-  "@8",
-  "fname",
-  "defn_head",
-  "k_def",
-  "defs_head",
-  "singleton",
-  "dot_or_colon",
-  "@9",
-  "expr_value_do",
-  "do",
-  "@10",
-  "@11",
-  "command",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@12",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "op",
-  "reswords",
-  "symbol",
-  "@13",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "f_opt_paren_args",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "args_forward",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@14",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "p_case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "f_arglist",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "f_any_kwrest",
-  "f_kwrest",
-  "f_no_kwarg",
-  "block_args_tail",
-  "f_block_kwarg",
-  "opt_f_block_arg",
-  "f_block_arg",
-  "opt_block_args_tail",
-  "excessed_comma",
-  "block_param",
-  "f_arg",
-  "f_block_optarg",
-  "f_rest_arg",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "p_top_expr",
-  "p_cases",
-  "@36",
-  "@37",
-  "p_top_expr_body",
-  "p_args",
-  "p_find",
-  "p_args_tail",
-  "p_kwargs",
-  "p_as",
-  "p_variable",
-  "p_alt",
-  "p_expr_basic",
-  "p_lparen",
-  "p_lbracket",
-  "p_value",
-  "p_const",
-  "rbrace",
-  "@38",
-  "@39",
-  "p_args_head",
-  "p_arg",
-  "p_args_post",
-  "p_rest",
-  "p_kwarg",
-  "p_any_kwrest",
-  "p_kw",
-  "p_kw_label",
-  "p_kwrest",
-  "kwrest_mark",
-  "p_kwnorest",
-  "p_primitive",
-  "p_var_ref",
-  "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",
-  "@40",
-  "@41",
-  "ssym",
-  "dsym",
-  "sym",
-  "@42",
-  "f_paren_args",
-  "args_tail",
-  "@43",
-  "f_kwarg",
-  "opt_args_tail",
-  "f_optarg",
-  "f_arg_asgn",
-  "f_arg_item",
-  "f_label",
-  "f_kw",
-  "f_block_kw",
-  "f_opt",
-  "f_block_opt",
-  "restarg_mark",
-  "blkarg_mark",
-  "@44",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 1
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      yyerror "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 2
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 3
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-
-    result
-end
-
-def _reduce_40(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 41 omitted
-
-def _reduce_42(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_50(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-def _reduce_51(val, _values, result)
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-
-    result
-end
-
-# reduce 52 omitted
-
-# reduce 53 omitted
-
-def _reduce_54(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_56(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_57(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-def _reduce_58(val, _values, result)
-                      # value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lhs, _, in_kwarg, rhs = val
-
-                      self.env.unextend
-                      self.in_kwarg = in_kwarg
-
-                      rhs = new_in rhs, nil, nil, rhs.line
-                      result = new_case lhs, rhs, rhs.line
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-
-    result
-end
-
-def _reduce_61(val, _values, result)
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-
-    result
-end
-
-# reduce 62 omitted
-
-def _reduce_63(val, _values, result)
-                      # TODO: numparam_name(p, fname);
-
-                      (id, line), = val
-                      old_in_def = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      result = [id.to_sym, line, old_in_def]
-
-    result
-end
-
-def _reduce_64(val, _values, result)
-                      _, name = val
-                      result = name
-
-    result
-end
-
-def _reduce_65(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_66(val, _values, result)
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                      self.in_single += 1 # TODO: remove?
-
-                      # self.in_def = true # local_push
-                      # self.env.extend
-                      # lexer.cmdarg.push false
-                      # lexer.cond.push false
-
-                      _, recv, _, _, name = val
-
-                      result = [recv, name]
-
-    result
-end
-
-def _reduce_67(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 71 omitted
-
-# reduce 72 omitted
-
-# reduce 73 omitted
-
-def _reduce_74(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_75(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_76(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_77(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_78(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_79(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_80(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_81(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_82(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_83(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 89 omitted
-
-def _reduce_90(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 91 omitted
-
-def _reduce_92(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_93(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_94(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_95(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_96(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 103 omitted
-
-def _reduce_104(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_107(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_108(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 4
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 5
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_118(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_119(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 6
-
-    result
-end
-
-def _reduce_120(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_122(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_123(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_124(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 7
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_125(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 8
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_126(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_127(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 128 omitted
-
-def _reduce_129(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_130(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 132 omitted
-
-# reduce 133 omitted
-
-# reduce 134 omitted
-
-def _reduce_135(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 136 omitted
-
-def _reduce_137(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 138 omitted
-
-def _reduce_139(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_140(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_141(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    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
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-# reduce 203 omitted
-
-# reduce 204 omitted
-
-# reduce 205 omitted
-
-# reduce 206 omitted
-
-# reduce 207 omitted
-
-# reduce 208 omitted
-
-# reduce 209 omitted
-
-# reduce 210 omitted
-
-# reduce 211 omitted
-
-# reduce 212 omitted
-
-def _reduce_213(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_214(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_215(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_216(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_217(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-
-    result
-end
-
-def _reduce_227(val, _values, result)
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-
-    result
-end
-
-def _reduce_228(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_229(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_230(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      _, num, _, arg = val
-                      lit = wrap :lit, num
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 241 omitted
-
-def _reduce_242(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_243(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_244(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_245(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_246(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_247(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_248(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_249(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_250(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_251(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_252(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_253(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_254(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-def _reduce_255(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_256(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_257(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-def _reduce_258(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-# reduce 259 omitted
-
-# reduce 260 omitted
-
-# reduce 261 omitted
-
-# reduce 262 omitted
-
-# reduce 263 omitted
-
-def _reduce_264(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_265(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_266(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 267 omitted
-
-def _reduce_268(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 271 omitted
-
-def _reduce_272(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_273(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-def _reduce_274(val, _values, result)
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-
-    result
-end
-
-def _reduce_275(val, _values, result)
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-
-    result
-end
-
-# reduce 276 omitted
-
-# reduce 277 omitted
-
-# reduce 278 omitted
-
-# reduce 279 omitted
-
-def _reduce_280(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_281(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_282(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_283(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_284(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_285(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_286(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_287(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_288(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_289(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_290(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_291(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 292 omitted
-
-def _reduce_293(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_294(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_295(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_297(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_298(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 302 omitted
-
-# reduce 303 omitted
-
-# reduce 304 omitted
-
-# reduce 305 omitted
-
-# reduce 306 omitted
-
-# reduce 307 omitted
-
-# reduce 308 omitted
-
-# reduce 309 omitted
-
-# reduce 310 omitted
-
-# reduce 311 omitted
-
-def _reduce_312(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_313(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_314(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_315(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_316(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_317(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_322(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_327(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      debug 9
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 334 omitted
-
-def _reduce_335(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_339(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_340(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_344(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_345(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_346(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_347(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_348(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_349(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_350(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_351(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_352(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_354(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_355(val, _values, result)
-                      # [               [:f, 1, false], s(:args)...]
-                      # =>
-                      # [[:k_def, 666], [:f, 1], false, s(:args)...]
-                      val.insert 1, val.first.pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_356(val, _values, result)
-                      # [        [recv, [:name, 1, false]], s(:args...]
-                      # =>
-                      # [         recv, [:name, 1, false],  s(:args...]
-                      # =>
-                      # [         recv, [:name, 1], false,  s(:args...]
-                      # =>
-                      # [ :k_def, recv, [:name, 1], false,  s(:args...]
-
-                      val.prepend(*val.shift)
-                      val.insert 2, val[1].pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_357(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_358(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_359(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_360(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_361(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 362 omitted
-
-# reduce 363 omitted
-
-# reduce 364 omitted
-
-# reduce 365 omitted
-
-# reduce 366 omitted
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-def _reduce_369(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_370(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_371(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 372 omitted
-
-# reduce 373 omitted
-
-# reduce 374 omitted
-
-# reduce 375 omitted
-
-# reduce 376 omitted
-
-# reduce 377 omitted
-
-# reduce 378 omitted
-
-# reduce 379 omitted
-
-# reduce 380 omitted
-
-# reduce 381 omitted
-
-# reduce 382 omitted
-
-# reduce 383 omitted
-
-# reduce 384 omitted
-
-# reduce 385 omitted
-
-# reduce 386 omitted
-
-def _reduce_387(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 388 omitted
-
-def _reduce_389(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 390 omitted
-
-def _reduce_391(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 392 omitted
-
-def _reduce_393(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_394(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_395(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_396(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_397(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_398(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-# reduce 403 omitted
-
-# reduce 404 omitted
-
-def _reduce_405(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_406(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_407(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_408(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_409(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 410 omitted
-
-def _reduce_411(val, _values, result)
-                      result = s(:WTF_COMMA!)
-
-    result
-end
-
-def _reduce_412(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_413(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_416(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_417(val, _values, result)
-                      arg, _ = val
-                      result = arg << nil
-
-    result
-end
-
-def _reduce_418(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_427(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 432 omitted
-
-def _reduce_433(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 437 omitted
-
-def _reduce_438(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_439(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_442(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_443(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_444(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_445(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_446(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_447(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_454(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_455(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_456(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_457(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_458(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_459(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_460(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_461(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_462(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_463(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_464(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_465(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_466(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_467(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_468(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_469(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_470(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_471(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_472(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_473(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 475 omitted
-
-# reduce 476 omitted
-
-def _reduce_477(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-
-    result
-end
-
-def _reduce_479(val, _values, result)
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-
-    result
-end
-
-# reduce 480 omitted
-
-# reduce 481 omitted
-
-# reduce 482 omitted
-
-def _reduce_483(val, _values, result)
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-
-    result
-end
-
-# reduce 485 omitted
-
-def _reduce_486(val, _values, result)
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-
-    result
-end
-
-def _reduce_487(val, _values, result)
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-
-    result
-end
-
-def _reduce_488(val, _values, result)
-                      find, = val
-
-                      result = new_find_pattern nil, find
-
-    result
-end
-
-def _reduce_489(val, _values, result)
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-
-    result
-end
-
-# reduce 491 omitted
-
-def _reduce_492(val, _values, result)
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-
-    result
-end
-
-# reduce 493 omitted
-
-def _reduce_494(val, _values, result)
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-
-    result
-end
-
-# reduce 495 omitted
-
-def _reduce_496(val, _values, result)
- push_pktbl
-    result
-end
-
-def _reduce_497(val, _values, result)
- push_pktbl
-    result
-end
-
-# reduce 498 omitted
-
-def _reduce_499(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-
-    result
-end
-
-def _reduce_500(val, _values, result)
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-
-    result
-end
-
-def _reduce_501(val, _values, result)
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-
-    result
-end
-
-def _reduce_502(val, _values, result)
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-
-    result
-end
-
-def _reduce_503(val, _values, result)
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-
-    result
-end
-
-def _reduce_504(val, _values, result)
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-
-    result
-end
-
-def _reduce_505(val, _values, result)
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-
-    result
-end
-
-def _reduce_506(val, _values, result)
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-
-    result
-end
-
-def _reduce_507(val, _values, result)
-                      _, pat, _ = val
-
-                      result = new_array_pattern nil, nil, pat, pat.line
-
-    result
-end
-
-def _reduce_508(val, _values, result)
-                      _, find, _ = val
-
-                      result = new_find_pattern nil, find
-
-    result
-end
-
-def _reduce_509(val, _values, result)
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-
-    result
-end
-
-def _reduce_510(val, _values, result)
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-
-    result
-end
-
-def _reduce_511(val, _values, result)
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-
-    result
-end
-
-def _reduce_512(val, _values, result)
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-
-    result
-end
-
-def _reduce_513(val, _values, result)
- push_pktbl
-    result
-end
-
-def _reduce_514(val, _values, result)
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-
-    result
-end
-
-def _reduce_515(val, _values, result)
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-
-    result
-end
-
-def _reduce_516(val, _values, result)
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-
-    result
-end
-
-def _reduce_517(val, _values, result)
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-
-    result
-end
-
-def _reduce_518(val, _values, result)
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-
-    result
-end
-
-def _reduce_519(val, _values, result)
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-
-    result
-end
-
-def _reduce_520(val, _values, result)
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-
-    result
-end
-
-def _reduce_521(val, _values, result)
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-
-    result
-end
-
-# reduce 522 omitted
-
-def _reduce_523(val, _values, result)
-                      arg, _ = val
-                      result = arg
-
-    result
-end
-
-def _reduce_524(val, _values, result)
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-
-    result
-end
-
-def _reduce_525(val, _values, result)
-                      (id, line), = val
-
-                      result = new_array_pattern_tail nil, true, id, nil
-                      result.line line
-
-    result
-end
-
-def _reduce_526(val, _values, result)
-                      (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id, rhs
-                      result.line line
-
-    result
-end
-
-def _reduce_527(val, _values, result)
-                      lhs, _, mid, _, rhs = val
-
-                      result = new_find_pattern_tail lhs, mid, rhs
-
-    result
-end
-
-def _reduce_528(val, _values, result)
-                      _, (id, line) = val
-
-                      result = [id.to_sym, line]
-
-    result
-end
-
-def _reduce_529(val, _values, result)
-                      (_id, line), = val
-
-                      result = [nil, line]
-
-    result
-end
-
-# reduce 530 omitted
-
-def _reduce_531(val, _values, result)
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-
-    result
-end
-
-def _reduce_532(val, _values, result)
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-
-    result
-end
-
-def _reduce_533(val, _values, result)
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-
-    result
-end
-
-def _reduce_534(val, _values, result)
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-
-    result
-end
-
-def _reduce_535(val, _values, result)
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-
-    result
-end
-
-# reduce 537 omitted
-
-def _reduce_538(val, _values, result)
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 10
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-
-    result
-end
-
-def _reduce_544(val, _values, result)
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-
-    result
-end
-
-# reduce 545 omitted
-
-# reduce 546 omitted
-
-# reduce 547 omitted
-
-def _reduce_548(val, _values, result)
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_550(val, _values, result)
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-
-    result
-end
-
-def _reduce_551(val, _values, result)
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-
-    result
-end
-
-# reduce 552 omitted
-
-# reduce 553 omitted
-
-# reduce 554 omitted
-
-def _reduce_555(val, _values, result)
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-
-    result
-end
-
-def _reduce_556(val, _values, result)
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-
-    result
-end
-
-# reduce 557 omitted
-
-# reduce 558 omitted
-
-# reduce 559 omitted
-
-# reduce 560 omitted
-
-def _reduce_561(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_562(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_563(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_565(val, _values, result)
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-
-    result
-end
-
-# reduce 566 omitted
-
-def _reduce_567(val, _values, result)
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-
-    result
-end
-
-def _reduce_568(val, _values, result)
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-
-    result
-end
-
-def _reduce_569(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_570(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-
-    result
-end
-
-def _reduce_572(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_573(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_574(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 575 omitted
-
-# reduce 576 omitted
-
-def _reduce_577(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 578 omitted
-
-def _reduce_579(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 580 omitted
-
-def _reduce_581(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 582 omitted
-
-def _reduce_583(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_584(val, _values, result)
-                      debug 12
-
-    result
-end
-
-# reduce 585 omitted
-
-def _reduce_586(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_587(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_588(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_589(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_590(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_591(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_592(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_593(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 595 omitted
-
-def _reduce_596(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_597(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_598(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_599(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_600(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_601(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_602(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_603(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_604(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_605(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_606(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_607(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_608(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_609(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_610(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_611(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_612(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_613(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_614(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_615(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_616(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_617(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_618(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_619(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 13
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_620(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_621(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_622(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 623 omitted
-
-# reduce 624 omitted
-
-# reduce 625 omitted
-
-def _reduce_626(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_627(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 628 omitted
-
-# reduce 629 omitted
-
-# reduce 630 omitted
-
-# reduce 631 omitted
-
-def _reduce_632(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 14
-                      end
-
-    result
-end
-
-# reduce 633 omitted
-
-def _reduce_634(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 635 omitted
-
-# reduce 636 omitted
-
-# reduce 637 omitted
-
-# reduce 638 omitted
-
-# reduce 639 omitted
-
-# reduce 640 omitted
-
-# reduce 641 omitted
-
-# reduce 642 omitted
-
-# reduce 643 omitted
-
-def _reduce_644(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_645(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_646(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_647(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_648(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_649(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_650(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_651(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-
-                      result.line line
-
-    result
-end
-
-def _reduce_652(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_653(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_654(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 15
-
-    result
-end
-
-def _reduce_655(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_656(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_657(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_658(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_659(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 660 omitted
-
-def _reduce_661(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_662(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_663(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_664(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-# reduce 665 omitted
-
-def _reduce_666(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_667(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_668(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_669(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_670(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 671 omitted
-
-def _reduce_672(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_673(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_674(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_675(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_676(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_677(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_678(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_679(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_680(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_681(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_682(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_683(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_684(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_685(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_686(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_687(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_688(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_689(val, _values, result)
-                      result = s(:forward_args).line lexer.lineno
-
-    result
-end
-
-def _reduce_690(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_691(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_692(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_693(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 694 omitted
-
-def _reduce_695(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 696 omitted
-
-# reduce 697 omitted
-
-def _reduce_698(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_699(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_700(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 701 omitted
-
-def _reduce_702(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_703(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_704(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_705(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 706 omitted
-
-def _reduce_707(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 708 omitted
-
-def _reduce_709(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 710 omitted
-
-# reduce 711 omitted
-
-def _reduce_712(val, _values, result)
-                      (_, line), _ = val
-                      result = [:"**nil", line]
-
-    result
-end
-
-def _reduce_713(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_714(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_715(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-
-    result
-end
-
-def _reduce_716(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-
-    result
-end
-
-def _reduce_717(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_718(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_719(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_720(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 721 omitted
-
-# reduce 722 omitted
-
-def _reduce_723(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_724(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 725 omitted
-
-# reduce 726 omitted
-
-def _reduce_727(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_728(val, _values, result)
-                      (_, line), = val
-
-                      result = [:&, line]
-
-    result
-end
-
-def _reduce_729(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_730(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 731 omitted
-
-def _reduce_732(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_733(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_734(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 735 omitted
-
-# reduce 736 omitted
-
-def _reduce_737(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_738(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_739(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_740(val, _values, result)
-                      lit = wrap :lit, val[0]
-                      arg = nil
-
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_741(val, _values, result)
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-
-    result
-end
-
-def _reduce_742(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 743 omitted
-
-# reduce 744 omitted
-
-# reduce 745 omitted
-
-# reduce 746 omitted
-
-# reduce 747 omitted
-
-# reduce 748 omitted
-
-# reduce 749 omitted
-
-# reduce 750 omitted
-
-# reduce 751 omitted
-
-# reduce 752 omitted
-
-# reduce 753 omitted
-
-# reduce 754 omitted
-
-# reduce 755 omitted
-
-# reduce 756 omitted
-
-# reduce 757 omitted
-
-# reduce 758 omitted
-
-# reduce 759 omitted
-
-# reduce 760 omitted
-
-# reduce 761 omitted
-
-# reduce 762 omitted
-
-# reduce 763 omitted
-
-def _reduce_764(val, _values, result)
-                      _, close = val
-                      result = [close, lexer.lineno]
-
-    result
-end
-
-def _reduce_765(val, _values, result)
-                      _, close = val
-                      result = [close, lexer.lineno]
-
-    result
-end
-
-# reduce 766 omitted
-
-# reduce 767 omitted
-
-# reduce 768 omitted
-
-def _reduce_769(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 770 omitted
-
-# reduce 771 omitted
-
-def _reduce_772(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_773(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby30Parser
diff -pruN 3.20.0-2/lib/ruby30_parser.y 3.21.1-1/lib/ruby30_parser.y
--- 3.20.0-2/lib/ruby30_parser.y	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby30_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,3459 +0,0 @@
-# -*- racc -*-
-
-class Ruby30Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-      tLONELY
-      tBDOT2 tBDOT3
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 1
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      yyerror "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 2
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 3
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg kRESCUE_MOD stmt
-                    {
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_call kRESCUE_MOD stmt
-                    {
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg tASSOC
-                    {
-                      # value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-                    p_expr
-                    {
-                      lhs, _, in_kwarg, rhs = val
-
-                      self.env.unextend
-                      self.in_kwarg = in_kwarg
-
-                      rhs = new_in rhs, nil, nil, rhs.line
-                      result = new_case lhs, rhs, rhs.line
-                    }
-                | arg
-                    kIN
-                    {
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-                    p_expr
-                    {
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-                    }
-                | arg                                   =tLBRACE_ARG
-
-        def_name: fname
-                    {
-                      # TODO: numparam_name(p, fname);
-
-                      (id, line), = val
-                      old_in_def = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      result = [id.to_sym, line, old_in_def]
-                    }
-       defn_head: k_def def_name
-                    {
-                      _, name = val
-                      result = name
-                    }
-       defs_head: k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    def_name
-                    {
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                      self.in_single += 1 # TODO: remove?
-
-                      # self.in_def = true # local_push
-                      # self.env.extend
-                      # lexer.cmdarg.push false
-                      # lexer.cond.push false
-
-                      _, recv, _, _, name = val
-
-                      result = [recv, name]
-                    }
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 4
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 5
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 6
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 7
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 8
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT2
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-                    }
-                | arg tDOT3
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-                    }
-
-                | tBDOT2 arg
-                    {
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-                    }
-                | tBDOT3 arg
-                    {
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-                    }
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, num, _, arg = val
-                      lit = wrap :lit, num
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | defn_head f_opt_paren_args tEQL arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defn_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defs_head f_opt_paren_args tEQL arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | defs_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-                | tLPAREN2 args tCOMMA args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 9
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_case expr_value opt_terms p_case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | defn_head f_arglist bodystmt k_end
-                    {
-                      # [               [:f, 1, false], s(:args)...]
-                      # =>
-                      # [[:k_def, 666], [:f, 1], false, s(:args)...]
-                      val.insert 1, val.first.pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | defs_head f_arglist bodystmt k_end
-                    {
-                      # [        [recv, [:name, 1, false]], s(:args...]
-                      # =>
-                      # [         recv, [:name, 1, false],  s(:args...]
-                      # =>
-                      # [         recv, [:name, 1], false,  s(:args...]
-                      # =>
-                      # [ :k_def, recv, [:name, 1], false,  s(:args...]
-
-                      val.prepend(*val.shift)
-                      val.insert 2, val[1].pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
-    f_any_kwrest: f_kwrest
-                | f_no_kwarg
-
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_any_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-  excessed_comma: tCOMMA
-                    {
-                      result = s(:WTF_COMMA!)
-                    }
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg excessed_comma
-                    {
-                      arg, _ = val
-                      result = arg << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    bodystmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-######################################################################
-
-     p_case_body: kIN
-                    {
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-                    }
-                    p_top_expr then
-                    {
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-                    }
-                    compstmt
-                    p_cases
-                    {
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-                    }
-
-         p_cases: opt_else
-                | p_case_body
-
-      p_top_expr: p_top_expr_body
-                | p_top_expr_body kIF_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-                    }
-                | p_top_expr_body kUNLESS_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-                    }
-
- p_top_expr_body: p_expr
-                | p_expr tCOMMA
-                    {
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-                    }
-                | p_expr tCOMMA p_args
-                    {
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-                    }
-                | p_find
-                    {
-                      find, = val
-
-                      result = new_find_pattern nil, find
-                    }
-                | p_args_tail
-                    {
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-                    }
-                | p_kwargs
-                    {
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-                    }
-
-          p_expr: p_as
-
-            p_as: p_expr tASSOC p_variable
-                    {
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-                    }
-                | p_alt
-
-           p_alt: p_alt tPIPE p_expr_basic
-                    {
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-                    }
-                | p_expr_basic
-
-        p_lparen: tLPAREN2 { push_pktbl }
-      p_lbracket: tLBRACK2 { push_pktbl }
-
-    p_expr_basic: p_value
-                | p_const p_lparen p_args tRPAREN
-                    {
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-                    }
-                | p_const p_lparen p_find tRPAREN
-                    {
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-                    }
-                | p_const p_lparen p_kwargs tRPAREN
-                    {
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-                    }
-                | p_const tLPAREN2 tRPAREN
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | p_const p_lbracket p_args rbracket
-                    {
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-                    }
-                | p_const p_lbracket p_find rbracket
-                    {
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-                    }
-                | p_const p_lbracket p_kwargs rbracket
-                    {
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-                    }
-                | p_const tLBRACK2 rbracket
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | tLBRACK p_args rbracket
-                    {
-                      _, pat, _ = val
-
-                      result = new_array_pattern nil, nil, pat, pat.line
-                    }
-                | tLBRACK p_find rbracket
-                    {
-                      _, find, _ = val
-
-                      result = new_find_pattern nil, find
-                    }
-                | tLBRACK rbracket
-                    {
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-                    }
-                | tLBRACE
-                    {
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-                    }
-                    p_kwargs rbrace
-                    {
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-                    }
-                | tLBRACE rbrace
-                    {
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-                    }
-                | tLPAREN { push_pktbl } p_expr tRPAREN
-                    {
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-                    }
-
-          p_args: p_expr
-                    {
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-                    }
-                | p_args_head
-                    {
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-                    }
-                | p_args_head p_arg
-                    {
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER
-                    {
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER tCOMMA p_args_post
-                    {
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-                    }
-                | p_args_head tSTAR
-                    {
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-                    }
-                | p_args_head tSTAR tCOMMA p_args_post
-                    {
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-                    }
-                | p_args_tail
-
-     p_args_head: p_arg tCOMMA
-                    {
-                      arg, _ = val
-                      result = arg
-                    }
-                | p_args_head p_arg tCOMMA
-                    {
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-                    }
-
-     p_args_tail: p_rest
-                    {
-                      (id, line), = val
-
-                      result = new_array_pattern_tail nil, true, id, nil
-                      result.line line
-                    }
-                | p_rest tCOMMA p_args_post
-                    {
-                      (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id, rhs
-                      result.line line
-                    }
-
-          p_find:  p_rest tCOMMA p_args_post tCOMMA p_rest
-                    {
-                      lhs, _, mid, _, rhs = val
-
-                      result = new_find_pattern_tail lhs, mid, rhs
-                    }
-
-          p_rest: tSTAR tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      result = [id.to_sym, line]
-                    }
-                | tSTAR
-                    {
-                      (_id, line), = val
-
-                      result = [nil, line]
-                    }
-
-     p_args_post: p_arg
-                | p_args_post tCOMMA p_arg
-                    {
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-                    }
-
-           p_arg: p_expr
-                    {
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-                    }
-
-        p_kwargs: p_kwarg tCOMMA p_any_kwrest
-                    {
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-                    }
-                | p_kwarg
-                    {
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_kwarg tCOMMA
-                    {
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_any_kwrest
-                    {
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-                    }
-
-         p_kwarg: p_kw # TODO? rb_ary_new_from_args(1, $1)
-                | p_kwarg tCOMMA p_kw
-                    {
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-                    }
-
-            p_kw: p_kw_label p_expr
-                    {
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-                    }
-                | p_kw_label
-                    {
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 10
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-                    }
-
-      p_kw_label: tLABEL
-                    {
-                      result = wrap :lit, val[0]
-                    }
-
-        p_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-                    }
-                | kwrest_mark
-                    {
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-                    }
-
-      p_kwnorest: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-                    }
-
-    p_any_kwrest: p_kwrest
-                | p_kwnorest
-
-         p_value: p_primitive
-                | p_primitive tDOT2 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT3 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT2
-                    {
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-                    }
-                | p_primitive tDOT3
-                    {
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-                    }
-                | p_variable
-                | p_var_ref
-                | p_const
-                | tBDOT2 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-                    }
-                | tBDOT3 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-                    }
-
-     p_primitive: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qwords
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | symbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qsymbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | keyword_variable
-                    {
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-                    }
-                | lambda
-
-      p_variable: tIDENTIFIER
-                    {
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-                    }
-
-       p_var_ref: tCARET tIDENTIFIER
-                    {
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-                    }
-
-
-         p_const: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | p_const tCOLON2 cname
-                    {
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-                    }
-                | tCONSTANT
-                    {
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-                    }
-######################################################################
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 12
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 13
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 14
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 15
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-f_opt_paren_args: f_paren_args
-                | none
-                    {
-                      result = end_args val
-                    }
-
-    f_paren_args: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-                | tLPAREN2 f_arg tCOMMA args_forward rparen
-                    {
-                      result = end_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      result = end_args val
-                    }
-
-       f_arglist: f_paren_args
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_any_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-    args_forward: tBDOT3
-                    {
-                      result = s(:forward_args).line lexer.lineno
-                    }
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-      f_no_kwarg: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-                      result = [:"**nil", line]
-                    }
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn
-                    tEQL
-                    arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-                    }
-
-     f_block_opt: f_arg_asgn
-                    tEQL
-                    primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-                | blkarg_mark
-                    {
-                      (_, line), = val
-
-                      result = [:&, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tLABEL
-                    {
-                      lit = wrap :lit, val[0]
-                      arg = nil
-
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-                | tLONELY # TODO: rename tANDDOT?
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-                    # TODO:
-                    # {
-                    #   _, close = val
-                    #   result = [close, lexer.lineno]
-                    # }
-        rbracket: opt_nl tRBRACK
-                    {
-                      _, close = val
-                      result = [close, lexer.lineno]
-                    }
-          rbrace: opt_nl tRCURLY
-                    {
-                      _, close = val
-                      result = [close, lexer.lineno]
-                    }
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby31_parser.rb 3.21.1-1/lib/ruby31_parser.rb
--- 3.20.0-2/lib/ruby31_parser.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby31_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,13638 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby31Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -652,   685,   688,   317,   641,  -122,   317,  -652,  -652,  -652,
-   228,   229,  -652,  -652,  -652,  -116,  -652,  -123,  1177,  -118,
-   641,   641,   228,   229,  -652,   246,  -652,  -652,  -652,   228,
-   229,  -773,   851,   745,   984,   850,  -652,  -652,   234,  -652,
-  -652,  -652,  -652,  -652,   247,   312,  1025,   641,  -130,  -117,
-  -129,   746,   983,  -125,  -127,   641,   867,   960,   240,   228,
-   229,   247,  1046,  -115,   684,   687,  -666,  -652,  -652,  -652,
-  -652,  -652,  -652,  -652,  -652,  -652,  -652,  -652,  -652,  -652,
-  -652,   641,  -116,  -652,  -652,  -652,  -118,  -652,  -652,   862,
-   319,  -652,  -124,   319,  -652,  -652,  1178,  -652,   959,  -652,
-   247,  -652,   235,  -652,  -652,  -652,  -652,  -652,  -652,  -652,
-  -113,  -652,   247,  -652,  -785,  -758,  -117,  -116,   134,   247,
-  -116,  -118,  -114,   133,  -118,  -122,  -652,  -652,  -652,  -652,
-  -115,  -652,  -122,  -652,   134,   134,  -655,  -116,  -652,   133,
-   133,  -118,  -652,  -655,  -655,  -655,  -652,  -123,  -655,  -655,
-  -655,  -117,  -655,  -121,  -117,  -120,  -130,  -129,  -116,  -118,
-  -655,   134,  -655,  -655,  -655,  -115,   133,  1045,  -115,   134,
-  -125,  -117,  -655,  -655,   133,  -655,  -655,  -655,  -655,  -655,
-  -127,  -126,   240,  -124,   960,  -115,  -126,  -128,  1003,   134,
-   317,  -667,  1003,     3,   133,   134,   669,  -115,  1142,   674,
-   133,   539,   130,  -655,  -655,  -655,  -655,  -655,  -655,  -655,
-  -655,  -655,  -655,  -655,  -655,  -655,  -655,   225,   317,  -655,
-  -655,  -655,  1002,  -655,  -655,  -539,  1002,  -655,   112,   113,
-  -655,  -655,   876,  -655,   244,  -655,   877,  -655,  -785,  -655,
-  -655,  -655,  -655,  -655,  -655,  -655,  -122,  -655,  -128,  -655,
-  -123,  -122,  -758,  -759,   226,   314,   669,   671,   670,  -758,
-  -130,  -123,  -655,  -655,  -655,  -655,  -123,  -655,   669,  -655,
-  -130,  -129,  -325,   669,  -655,  -130,  -129,   319,  -655,  -325,
-  -325,  -325,  -655,   314,  -125,  -325,  -325,  -108,  -325,  -125,
-  -773,  -117,  -119,  -130,  -127,  -126,  -325,  -124,   851,  -127,
-  -126,   853,  -124,   669,   -94,   319,   114,   115,  -325,  -325,
-   621,  -325,  -325,  -325,  -325,  -325,   240,   671,   670,   667,
-   134,   247,   782,   227,    99,   133,  -759,   112,   113,   671,
-   670,   240,   100,   516,   671,   670,   667,   828,   891,  -325,
-  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -325,  -325,  -325,   648,  1112,  -325,  -325,  -325,   669,   713,
-  -325,   867,  -128,  -325,   671,   670,  -325,  -128,   954,  -129,
-   244,  -325,  -785,  -325,   230,  -325,  -325,  -325,  -325,  -325,
-  -325,  -325,  1105,  -325,  1112,  -325,   513,  -785,   508,   307,
-   505,   504,   503,   513,   506,   234,   782,   516,  -325,  -325,
-   517,  -119,   233,  -325,   516,   114,   115,   516,  -762,   371,
-  -325,   231,  -121,   955,  -325,  -762,  -762,  -762,  -128,   671,
-   670,  -762,  -762,   513,  -762,   372,   511,  -125,   893,  -130,
-   524,   523,  -762,  -762,   516,   521,   520,   524,   523,  -366,
-  1025,   247,   648,   669,  -762,  -762,  -366,  -762,  -762,  -762,
-  -762,  -762,   444,   406,   234,  -366,  1105,   446,   445,   235,
-   966,   536,   669,   247,   517,   962,   570,   524,   523,   963,
-   537,   517,  -127,   571,   517,  -762,  -762,  -762,  -762,  -762,
-  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,   707,
-  -652,  -762,  -762,  -762,   876,   714,  -762,  -652,   995,  -762,
-   669,   517,  -762,  -366,   671,   670,   667,  -762,   708,  -762,
-   416,  -762,  -762,  -762,  -762,  -762,  -762,  -762,   235,  -762,
-  -762,  -762,   134,   671,   670,   672,   508,   133,   505,   504,
-   503,   513,   506,  -664,  -762,  -762,  -666,  -117,   134,  -762,
-  -664,   669,   516,   133,  -762,   669,  -762,   419,  -125,  -664,
-  -762,  -762,  -762,  -762,  -126,   422,  -762,  -762,  -762,   925,
-  -762,   671,   670,   677,   511,   926,  1084,  -127,  -762,  -762,
-  -762,  -762,  -762,   521,   520,   524,   523,   908,  -113,   425,
-  -762,  -762,  -665,  -762,  -762,  -762,  -762,  -762,   134,  -665,
-   442,   134,  -655,   133,   234,  -122,   133,  -664,  -665,  -655,
-  -667,   613,   671,   670,   682,   447,   671,   670,   689,   517,
-   611,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,
-  -762,  -762,  -762,  -762,  -762,  -124,  -662,  -762,  -762,  -762,
-  -661,   956,  -762,  -662,   488,  -762,  -124,  -661,  -762,  -762,
-   876,  -762,  -114,  -762,   995,  -762,  -665,  -762,  -762,  -762,
-  -762,  -762,  -762,  -762,  -663,  -762,  -762,  -762,   235,  -123,
-   851,  -663,   508,   853,   505,   504,   503,   513,   506,  -316,
-  -762,  -762,  -762,  -762,  -660,  -762,  -316,  -762,   516,  -673,
-  -325,  -660,  -762,   527,   621,  -316,  -762,  -325,  -325,  -325,
-  -126,   538,  -325,  -325,  -325,  -657,  -325,   540,   234,   541,
-   511,   246,  -657,   578,  -325,   623,  -325,  -325,  -325,   521,
-   520,   524,   523,   590,   537,   593,  -325,  -325,   234,  -325,
-  -325,  -325,  -325,  -325,   134,   652,  -120,   595,   234,   133,
-  -326,   707,  -658,  -316,   650,   700,   708,  -326,   908,  -658,
-   228,   229,   -93,  -129,   698,   517,  -326,  -325,  -325,  -325,
-  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -325,   247,   235,  -325,  -325,  -325,   606,   957,  -325,   288,
-   289,  -325,   607,  -116,  -325,  -325,   614,  -325,  -118,  -325,
-  -115,  -325,   235,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -125,  -325,   235,  -325,  -326,  -127,   508,  -124,   505,   504,
-   503,   513,   506,   234,   287,   286,  -325,  -325,  -325,  -325,
-   879,  -325,   516,  -325,  -659,   324,  -325,   851,  -325,   881,
-   853,  -659,  -325,  -325,  -325,  -325,  -128,   247,   960,  -325,
-  -325,  1181,  -325,   247,   511,   508,  1257,   505,   504,   503,
-  -325,   506,   524,   523,  -326,   524,   523,   985,   986,  1021,
-  1025,  -326,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -326,  -325,  -325,   240,   234,   240,  -759,   235,   314,  -325,
-  -325,  1221,   618,   738,  -759,   228,   229,   271,  -325,   517,
-  1219,   624,   742,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -325,  -325,  -325,  -325,  -325,  -325,  -325,  1203,  1204,  -325,
-  -325,  -325,   271,   713,  -325,  1021,  1025,  -325,  -326,   268,
-  -325,   247,   648,   270,   269,  -325,   435,  -325,  -325,  -325,
-  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,   235,  -325,
-   653,   654,   508,   234,   505,   504,   503,   513,   506,   234,
-  1245,   676,  -325,  -325,   680,  -325,  1245,  -325,   516,   881,
-   683,   686,  -762,   693,  -325,   881,   694,  -298,  -325,  -762,
-  -762,  -762,  -128,   696,   697,  -762,  -762,   701,  -762,   508,
-   511,   505,   504,   503,   247,   506,  -762,  -762,   705,   521,
-   520,   524,   523,   706,   122,   121,   123,   124,  -762,  -762,
-   314,  -762,  -762,  -762,  -762,  -762,   720,   235,   723,   247,
-   126,   125,   127,   235,   725,   728,   989,   738,   993,   992,
-   729,   731,   994,   112,   113,   517,   742,   733,   368,  -762,
-  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,
-  -762,  -762,  -762,   735,   747,  -762,  -762,  -762,   748,   714,
-  -762,   723,   754,  -762,   991,   760,  -762,   761,   271,   271,
-   271,  -762,   271,  -762,   810,  -762,  -762,  -762,  -762,  -762,
-  -762,  -762,   247,  -762,  -762,  -762,   816,   109,    99,   101,
-   102,   103,   105,   247,   271,   247,   100,   110,  -762,  -762,
-   442,  -762,   247,  -762,    93,  -108,   832,    97,   104,   106,
-  -762,   114,   115,   247,  -762,   627,   843,   723,  -126,     8,
-    89,    90,    91,    12,    82,   247,   268,   854,    83,    84,
-   270,   269,  -755,    87,  -756,    85,    86,    88,    36,    37,
-    80,    81,   137,   138,   139,   140,   141,    92,    34,    33,
-   122,   121,   123,   124,   855,   508,    24,   505,   504,   503,
-   595,   506,    11,    54,    10,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   858,   120,   128,   129,   723,   112,
-   113,   723,    50,    51,    49,  -652,   723,  -655,   883,   894,
-   895,  -299,  -652,   738,  -655,   909,   578,  -755,   578,  -756,
-   921,  -652,   742,  -655,    46,   948,   949,    39,   271,   247,
-    67,    68,   952,   247,    69,   961,    41,   978,   979,  -755,
-    53,  -756,   980,   997,   281,   282,  1050,  1051,    25,   307,
-  1052,   128,   129,   109,    99,   101,   102,   103,   105,  1009,
-   268,  1011,   100,   110,   270,   269,   266,   267,   593,  -652,
-    93,  -655,   595,    97,   104,   106,   843,   114,   115,   247,
-   314,    47,    48,   343,    89,    90,    91,    12,    82,   314,
-   843,   271,    83,    84,  1025,   723,  -762,    87,   723,    85,
-    86,    88,    36,    37,    80,    81,   137,   138,   139,   140,
-   141,    92,    34,    33,   122,   121,   123,   124,   247,   247,
-    24,   271,  1055,  -300,   247,  1060,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,  -298,   120,
-   128,   129,  1066,   112,   113,   728,    50,    51,    49,  -762,
-   271,   746,  1069,   268,  1071,  1073,  -762,   270,   269,   266,
-   267,  -758,  1075,  1075,   247,  -762,   802,  1089,    46,   247,
-   247,   347,  1103,  1106,    67,    68,   960,  1131,    69,   247,
-    41,   843,   268,  -762,    53,   723,   270,   269,   266,   267,
-   723,   723,    25,   247,   723,  1152,   247,   109,    99,   101,
-   102,   103,   105,  1154,  -301,  1167,   100,   110,   137,   138,
-   139,   140,   141,  -762,    93,  1168,  1169,    97,   104,   106,
-  1170,   114,   115,  1171,  1172,    47,    48,   343,    89,    90,
-    91,    12,    82,   247,   247,   247,    83,    84,   960,  1176,
-   247,    87,  1182,    85,    86,    88,    36,    37,    80,    81,
-   263,   247,  1184,   728,  1187,    92,    34,    33,   122,   121,
-   123,   124,  1191,   508,    24,   505,   504,   503,  1193,   506,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,  1195,   120,   128,   129,   247,   112,   113,   735,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   284,   279,   280,   723,   264,   265,  1211,  1212,   281,
-   282,   925,    46,  1222,   262,    39,  1223,  1075,    67,    68,
-  1075,  1075,    69,  1230,    41,   268,  1243,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,  1246,   720,
-  1168,   109,    99,   101,   102,   103,   105,  1265,  1265,   728,
-   100,   110,  1268,   285,  1270,  1272,  1274,  1274,    93,   723,
-   247,    97,   104,   106,  1075,   114,   115,  1265,  -759,    47,
-    48,   343,    89,    90,    91,    12,    82,  -758,  1292,  1274,
-    83,    84,  1274,  1274,  1274,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   137,   138,   139,   140,   141,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   702,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
-   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
-   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,  -270,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   702,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
-   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   922,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
-   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   953,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
-   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,   347,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,  1215,    24,   505,   504,   503,   nil,   506,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,   347,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,  1215,    24,   505,
-   504,   503,   nil,   506,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
-   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
-   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   247,   285,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
-   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
-   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
-   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,     8,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,    10,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
-   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
-   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
-   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
-   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
-   nil,  -786,  -786,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   284,   279,   280,   nil,  -786,  -786,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
-   277,   278,   288,   289,   283,   284,   279,   280,   nil,  -786,
-  -786,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
-   279,   280,   nil,  -786,  -786,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   508,    24,   505,   504,   503,
-   nil,   506,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,  -786,  -786,  -786,  -786,
-   288,   289,   nil,   738,  -786,  -786,   nil,   nil,   nil,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   508,
-    24,   505,   504,   503,   nil,   506,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-  -786,  -786,  -786,  -786,   288,   289,   nil,   738,  -786,  -786,
-   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   508,    24,   505,   504,   503,   nil,   506,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,  -786,  -786,  -786,  -786,   288,   289,
-   nil,   738,  -786,  -786,   nil,   nil,   nil,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,  -786,  -786,
-  -786,  -786,   288,   289,   nil,   nil,  -786,  -786,   nil,   nil,
-   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,  -786,  -786,  -786,  -786,   288,   289,   nil,   nil,
-  -786,  -786,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,  -786,  -786,  -786,  -786,
-   288,   289,   nil,   nil,  -786,  -786,   nil,   nil,   nil,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-   275,   276,   277,   278,   288,   289,   nil,   nil,   279,   280,
-   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   nil,   279,   280,   nil,   nil,   nil,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   nil,   nil,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
-   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
-   nil,    11,    54,    10,    13,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   271,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,
-   270,   269,   266,   267,   nil,   nil,   nil,    25,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   281,   282,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   268,
-   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -463,   114,
-   115,   nil,   nil,    47,    48,  -463,  -463,  -463,   nil,   nil,
-  -463,  -463,  -463,   508,  -463,   505,   504,   503,   513,   506,
-   nil,   nil,  -463,  -463,  -463,  -463,   nil,   nil,   nil,   516,
-   nil,   nil,   nil,   nil,  -463,  -463,   nil,  -463,  -463,  -463,
-  -463,  -463,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   524,   523,   nil,  -463,  -463,  -463,  -463,  -463,
-  -463,  -463,  -463,  -463,  -463,  -463,  -463,  -463,  -463,   nil,
-   nil,  -463,  -463,  -463,   nil,   nil,  -463,   nil,   314,  -463,
-   nil,   nil,  -463,  -463,   nil,  -463,   517,  -463,   nil,  -463,
-   nil,  -463,  -463,  -463,  -463,  -463,  -463,  -463,   nil,  -463,
-  -463,  -463,   508,   nil,   505,   504,   503,   513,   506,   nil,
-   nil,   nil,   nil,   nil,  -463,  -463,   nil,  -463,   516,  -463,
-  -334,   nil,   nil,   nil,   nil,   nil,  -463,  -334,  -334,  -334,
-  -463,   nil,  -334,  -334,  -334,   nil,  -334,   nil,   nil,   nil,
-   511,   nil,   nil,   nil,  -334,   nil,  -334,  -334,   nil,   nil,
-   nil,   524,   523,   nil,   nil,   nil,  -334,  -334,   nil,  -334,
-  -334,  -334,  -334,  -334,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   517,   nil,  -334,  -334,  -334,
-  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
-  -334,   nil,   nil,  -334,  -334,  -334,   nil,   nil,  -334,   nil,
-   324,  -334,   nil,   nil,  -334,  -334,   nil,  -334,   nil,  -334,
-   nil,  -334,   nil,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
-   nil,  -334,   nil,  -334,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  -334,  -334,   nil,  -334,
-   nil,  -334,    89,    90,    91,   nil,    82,   nil,  -334,   nil,
-    83,    84,  -334,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
-   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -317,
-   114,   115,   nil,   nil,    47,    48,  -317,  -317,  -317,   nil,
-   nil,  -317,  -317,  -317,   508,  -317,   505,   504,   503,   513,
-   506,   nil,   nil,  -317,   nil,  -317,  -317,  -317,   nil,   nil,
-   516,   122,   121,   123,   124,  -317,  -317,   nil,  -317,  -317,
-  -317,  -317,  -317,   nil,   nil,   nil,   nil,   126,   125,   127,
-   nil,   nil,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   112,   113,   nil,   524,   523,   368,  -317,  -317,  -317,  -317,
-  -317,  -317,  -317,  -317,  -317,  -317,  -317,  -317,  -317,  -317,
-   nil,   nil,  -317,  -317,  -317,   nil,   nil,  -317,   nil,   nil,
-  -317,   nil,   nil,  -317,  -317,   nil,  -317,   517,  -317,   nil,
-  -317,   nil,  -317,  -317,  -317,  -317,  -317,  -317,  -317,   nil,
-  -317,   nil,  -317,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,  -317,  -317,  -317,  -317,   nil,
-  -317,    93,  -317,   nil,    97,   104,   106,  -317,   114,   115,
-  -785,  -317,    89,    90,    91,    12,    82,  -785,  -785,  -785,
-    83,    84,  -785,  -785,  -785,    87,  -785,    85,    86,    88,
-    36,    37,    80,    81,  -785,  -785,  -785,  -785,   nil,    92,
-    34,    33,   122,   121,   123,   124,  -785,  -785,    24,  -785,
-  -785,  -785,  -785,  -785,    11,    54,   nil,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,  -785,  -785,  -785,
-  -785,  -785,  -785,  -785,  -785,  -785,  -785,  -785,  -785,  -785,
-  -785,   nil,   nil,  -785,  -785,  -785,    46,   nil,  -785,    39,
-   314,  -785,    67,    68,  -785,  -785,    69,  -785,    41,  -785,
-   nil,  -785,    53,  -785,  -785,  -785,  -785,  -785,  -785,  -785,
-    25,  -785,  -785,  -785,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,  -785,  -785,   nil,  -785,
-   nil,  -785,    93,   nil,   nil,    97,   104,   106,  -785,   114,
-   115,   nil,  -785,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   134,   nil,   nil,   nil,   nil,
-   133,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    11,    54,    10,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   435,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
-   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
-   nil,    11,    54,   nil,    13,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,    41,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   452,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   452,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   247,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,   580,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   247,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   627,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,  -763,   114,   115,   nil,
-   nil,    47,    48,  -763,  -763,  -763,   nil,   nil,  -763,  -763,
-  -763,   508,  -763,   505,   504,   503,   513,   506,   nil,   nil,
-  -763,  -763,  -763,  -763,  -763,   nil,   nil,   516,   nil,   nil,
-   nil,   nil,  -763,  -763,   nil,  -763,  -763,  -763,  -763,  -763,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   511,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   524,   523,   nil,  -763,  -763,  -763,  -763,  -763,  -763,  -763,
-  -763,  -763,  -763,  -763,  -763,  -763,  -763,   nil,   nil,  -763,
-  -763,  -763,   nil,   nil,  -763,   nil,   nil,  -763,   nil,   nil,
-  -763,  -763,   nil,  -763,   517,  -763,   nil,  -763,   nil,  -763,
-  -763,  -763,  -763,  -763,  -763,  -763,   nil,  -763,  -763,  -763,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -763,  -763,  -763,  -763,   nil,  -763,  -764,  -763,
-   nil,   nil,   nil,   nil,  -763,  -764,  -764,  -764,  -763,   nil,
-  -764,  -764,  -764,   nil,  -764,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -764,  -764,  -764,  -764,  -764,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -764,  -764,   nil,  -764,  -764,  -764,
-  -764,  -764,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  -764,  -764,  -764,  -764,  -764,
-  -764,  -764,  -764,  -764,  -764,  -764,  -764,  -764,  -764,   nil,
-   nil,  -764,  -764,  -764,   nil,   nil,  -764,   nil,   nil,  -764,
-   nil,   nil,  -764,  -764,   nil,  -764,   nil,  -764,   nil,  -764,
-   nil,  -764,  -764,  -764,  -764,  -764,  -764,  -764,   nil,  -764,
-  -764,  -764,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -764,  -764,  -764,  -764,   nil,  -764,
-   nil,  -764,   nil,    89,    90,    91,  -764,    82,   nil,   nil,
-  -764,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
-   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-  -785,   114,   115,   nil,   nil,    47,    48,  -785,  -785,  -785,
-   nil,   nil,  -785,  -785,  -785,   nil,  -785,   122,   121,   123,
-   124,   nil,   nil,   nil,  -785,  -785,  -785,   nil,   nil,   nil,
-   nil,   nil,   nil,   126,   125,   127,  -785,  -785,   nil,  -785,
-  -785,  -785,  -785,  -785,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   368,   nil,   nil,   nil,   nil,   nil,   508,   nil,   505,
-   504,   503,   513,   506,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   516,   nil,   nil,   nil,   nil,  -785,   nil,
-   nil,   nil,   nil,   nil,   nil,  -785,   nil,   nil,   nil,   nil,
-   314,  -785,   nil,   nil,   nil,   511,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   524,   523,   nil,   100,
-   110,   nil,  -785,  -785,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,  -785,   nil,    89,    90,
-    91,  -785,    82,   nil,   nil,   nil,    83,    84,  -785,   nil,
-   517,    87,  -785,    85,    86,    88,   364,   365,    80,    81,
-   502,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   825,   nil,   331,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   435,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   336,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,
-   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
-   nil,   nil,   nil,    11,    54,   nil,    13,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    39,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,    41,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   900,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,    12,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
-   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
-    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   336,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   825,   nil,   331,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   452,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   336,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   825,   nil,   331,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,   580,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   825,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-  1032,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,  1206,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   336,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,
-   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
-   368,   nil,   nil,   nil,   nil,   nil,   508,   nil,   505,   504,
-   503,   513,   506,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   356,   nil,   516,   352,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   351,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   511,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   524,   523,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   517,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   502,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
-   nil,   nil,   nil,   nil,   nil,   508,   nil,   505,   504,   503,
-   513,   506,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   356,
-   nil,   516,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   511,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   524,   523,   nil,   100,   110,   nil,
-   nil,   nil,   370,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   517,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   502,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
-   nil,   nil,   nil,   nil,   508,   nil,   505,   504,   503,   513,
-   506,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   400,   nil,
-   516,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   511,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   524,   523,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   517,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   502,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
-   nil,   nil,   nil,   508,   nil,   505,   504,   503,   513,   506,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   356,   nil,   516,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   511,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   524,   523,   nil,   100,   110,   nil,   nil,   nil,
-   609,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   517,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   502,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   356,   nil,   nil,   352,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,
-   655,    65,   118,   117,   656,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   657,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,   655,
-    65,   118,   117,   656,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   657,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-   360,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,
-   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
-   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1160,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1199,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1199,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   192,   203,   193,   216,   189,   209,   199,   198,
-   219,   220,   214,   197,   196,   191,   217,   221,   222,   201,
-   190,   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,
-   218,   213,   212,   205,   215,   200,   188,   207,   206,   nil,
-   nil,   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,
-   184,   145,   147,   144,   nil,   146,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,
-   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
-   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
-   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
-   175,   153,   nil,   nil,   181,   109,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,
-   209,   199,   198,   219,   220,   214,   197,   196,   191,   217,
-   221,   222,   201,   190,   204,   208,   210,   202,   195,   nil,
-   nil,   nil,   211,   218,   213,   212,   205,   215,   200,   188,
-   207,   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,
-   186,   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,
-   193,   216,   189,   209,   199,   198,   219,   220,   214,   197,
-   196,   191,   217,   221,   222,   201,   190,   204,   208,   210,
-   202,   195,   nil,   nil,   nil,   211,   218,   213,   301,   300,
-   302,   299,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,
-   187,   194,   185,   186,   296,   297,   298,   294,   147,   118,
-   117,   295,   nil,   120,   nil,   nil,   nil,   nil,   nil,   nil,
-   177,   178,   nil,   173,   155,   156,   157,   164,   161,   163,
-   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
-   166,   nil,   nil,   nil,   nil,   nil,   306,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
-   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
-   181,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   174,   192,   203,   193,   216,   189,   209,   199,   198,   219,
-   220,   214,   197,   196,   191,   217,   221,   222,   201,   190,
-   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,
-   213,   212,   205,   215,   200,   188,   207,   206,   nil,   nil,
-   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,   184,
-   145,   147,   432,   431,   146,   nil,   433,   nil,   nil,   nil,
-   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,
-   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
-   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
-   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
-   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,   209,
-   199,   198,   219,   220,   214,   197,   196,   191,   217,   221,
-   222,   201,   190,   204,   208,   210,   202,   195,   nil,   nil,
-   nil,   211,   218,   213,   212,   205,   215,   200,   188,   207,
-   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,   186,
-   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,   173,
-   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
-   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
-   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,   193,
-   216,   189,   209,   199,   198,   219,   220,   214,   197,   196,
-   191,   217,   221,   222,   201,   190,   204,   208,   210,   202,
-   195,   nil,   nil,   nil,   211,   218,   213,   212,   205,   215,
-   200,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,   187,
-   194,   185,   186,   182,   183,   184,   145,   147,   nil,   nil,
-   146,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   nil,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   109,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,
-   192,   203,   193,   216,   189,   209,   199,   198,   219,   220,
-   214,   197,   196,   191,   217,   221,   222,   201,   190,   204,
-   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,   213,
-   212,   205,   215,   200,   188,   207,   206,   nil,   nil,   nil,
-   nil,   nil,   187,   194,   185,   186,   182,   183,   184,   145,
-   147,   nil,   nil,   146,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,   164,
-   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
-   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
-   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
-   nil,   nil,   181,   nil,   nil,   nil,   nil,   122,   121,   123,
-   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   174,   126,   125,   127,   802,   nil,   nil,   nil,
-   805,   782,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   368,   516,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,
-   nil,   774,   nil,   777,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,
-   109,   783,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   517,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,   790,   791,
-   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   802,
-   nil,   nil,   nil,   805,   782,   nil,   nil,   nil,   nil,   112,
-   113,   nil,   nil,   nil,   368,   516,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,
-   nil,   773,   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,
-   nil,   nil,   nil,   109,   783,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   517,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,   790,   791,   122,   121,   123,   124,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
-   125,   127,   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,
-   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,
-   775,   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,   777,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   803,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   247,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,   790,   791,   122,   121,   123,   124,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   126,   125,   127,   802,   nil,   nil,   nil,   805,
-   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
-   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   804,   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,   nil,
-   774,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,   790,   791,   122,
-   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   802,   nil,
-   nil,   nil,   805,   nil,   nil,   nil,   nil,   nil,   112,   113,
-   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,
-   773,   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-   790,   791,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
-   127,   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,   nil,
-   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,
-   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   803,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,   790,   791,   122,   121,   123,   124,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   126,   125,   127,   802,   nil,   nil,   nil,   805,   782,
-   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,
-   516,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,
-   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,   nil,   774,
-   nil,   777,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,   109,   783,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   517,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,   790,   791,   122,   121,
-   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   126,   125,   127,   802,   nil,   nil,
-   nil,   805,   782,   nil,   nil,   nil,   nil,   112,   113,   nil,
-   nil,   nil,   368,   516,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,   773,
-   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,
-   nil,   109,   783,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   517,    97,   104,   106,   nil,   114,   115,   nil,   nil,   790,
-   791,   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
-   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,   nil,   nil,
-   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,
-   nil,   nil,   773,   nil,   nil,   774,   nil,  1102,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   803,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,   790,   791,   122,   121,   123,   124,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   126,   125,   127,   802,   nil,   nil,   nil,   805,   nil,   nil,
-   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,
-   nil,   775,   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   803,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,   790,   791,   122,   121,   123,
-   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   126,   125,   127,   802,   nil,   nil,   nil,
-   805,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,
-   nil,   774,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,   790,   791,
-   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   802,
-   nil,   nil,   nil,   805,   782,   nil,   nil,   nil,   nil,   112,
-   113,   nil,   nil,   nil,   368,   516,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,
-   nil,   773,   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,
-   nil,   nil,   nil,   109,   783,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   517,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,   790,   791,   122,   121,   123,   124,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
-   125,   127,   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,
-   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,
-   775,   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   803,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,   790,   791,   122,   121,   123,   124,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   126,   125,   127,   802,   nil,   nil,   nil,   805,
-   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
-   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   804,   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,   nil,
-   774,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,   790,   791,   122,
-   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   802,   nil,
-   nil,   nil,   805,   nil,   nil,   nil,   nil,   nil,   112,   113,
-   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,
-   773,   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-   790,   791,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
-   127,   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,   nil,
-   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,
-   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   803,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,   790,   791,   122,   121,   123,   124,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   126,   125,   127,   802,   nil,   nil,   nil,   805,   nil,
-   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   122,   121,   123,
-   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,
-   nil,   nil,   775,   126,   125,   127,   773,   nil,   nil,   774,
-   nil,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   368,   nil,   nil,   803,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,   790,   791,   nil,   nil,
-   508,   nil,   505,   504,   503,   513,   506,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   516,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   508,   511,   505,
-   504,   503,   513,   506,   nil,   nil,   nil,   521,   520,   524,
-   523,   nil,   508,   516,   505,   504,   503,   513,   506,   nil,
-   508,   nil,   505,   504,   503,   513,   506,   nil,   516,   nil,
-   nil,   nil,   nil,   nil,   nil,   511,   516,   nil,   nil,   nil,
-   nil,   nil,   nil,   517,   521,   520,   524,   523,   nil,   nil,
-   511,   665,   nil,   502,   nil,   nil,   nil,   nil,   511,   521,
-   520,   524,   523,   nil,   nil,   nil,   nil,   521,   520,   524,
-   523,   508,   nil,   505,   504,   503,   513,   506,   nil,   nil,
-   517,   nil,   nil,   nil,   nil,   nil,   nil,   516,   nil,   nil,
-   502,   nil,   nil,   nil,   508,   517,   505,   504,   503,   513,
-   506,   nil,   nil,   517,   nil,   502,   nil,   nil,   nil,   511,
-   516,   nil,   nil,   502,   nil,   nil,   nil,   nil,   521,   520,
-   524,   523,   508,   nil,   505,   504,   503,   513,   506,   nil,
-   nil,   nil,   511,   nil,   nil,   nil,   nil,   nil,   516,   nil,
-   nil,   521,   520,   524,   523,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   517,   nil,   nil,   nil,   nil,   nil,
-   511,   nil,   nil,   nil,   502,   nil,   nil,   nil,   nil,   521,
-   520,   524,   523,   nil,   nil,   nil,   nil,   517,   475,   479,
-   nil,   nil,   476,   nil,   nil,   nil,   nil,   502,   nil,   nil,
-   nil,   177,   178,   nil,   173,   155,   156,   157,   164,   161,
-   163,   nil,   nil,   158,   159,   517,   nil,   nil,   179,   180,
-   165,   166,   nil,   nil,   nil,   502,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
-   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
-   nil,   181,   nil,   nil,   nil,   nil,   482,   486,   nil,   nil,
-   481,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   nil,   nil,   nil,   nil,   576,   479,   nil,   nil,   577,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,   755,   479,   nil,   nil,   756,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
-   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
-   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
-   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
-   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
-   757,   486,   nil,   nil,   758,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
-   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
-   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
-   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
-   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   836,   479,
-   nil,   nil,   837,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   177,   178,   174,   173,   155,   156,   157,   164,   161,
-   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
-   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
-   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
-   nil,   181,   nil,   nil,   nil,   nil,   839,   486,   nil,   nil,
-   840,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   nil,   nil,   nil,   nil,   755,   479,   nil,   nil,   756,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,   757,   486,   nil,   nil,   758,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
-   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
-   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
-   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
-   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
-   871,   479,   nil,   nil,   872,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
-   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
-   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
-   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
-   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   873,   486,
-   nil,   nil,   874,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   177,   178,   174,   173,   155,   156,   157,   164,   161,
-   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
-   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
-   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
-   nil,   181,   nil,   nil,   nil,   nil,   902,   479,   nil,   nil,
-   903,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   nil,   nil,   nil,   nil,   905,   486,   nil,   nil,   904,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,  1036,   486,   nil,   nil,  1037,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
-   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
-   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
-   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
-   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
-   576,   479,   nil,   nil,   577,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
-   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
-   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
-   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
-   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,  1260,   479,
-   nil,   nil,  1261,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   177,   178,   174,   173,   155,   156,   157,   164,   161,
-   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
-   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
-   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
-   nil,   181,   nil,   nil,   nil,   nil,  1262,   486,   nil,   nil,
-  1263,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   nil,   nil,   nil,   nil,  1278,   486,   nil,   nil,  1277,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174 ]
-
-racc_action_check = [
-   116,   423,   426,    70,   389,   397,   813,   116,   116,   116,
-   532,   532,   116,   116,   116,   836,   116,   398,  1102,   837,
-   390,  1065,   809,   809,   116,    24,   116,   116,   116,   846,
-   846,   774,   632,   518,   784,   632,   116,   116,    30,   116,
-   116,   116,   116,   116,   774,    30,  1280,  1136,   401,   839,
-   653,   518,   784,   871,   872,  1139,  1280,   763,    20,    17,
-    17,    24,   887,  1016,   423,   426,   250,   116,   116,   116,
-   116,   116,   116,   116,   116,   116,   116,   116,   116,   116,
-   116,  1033,   836,   116,   116,   116,   837,   116,   116,   643,
-    70,   116,  1034,   813,   116,   116,  1102,   116,   763,   116,
-   532,   116,    30,   116,   116,   116,   116,   116,   116,   116,
-   397,   116,   809,   116,    20,   839,   839,   836,   389,   846,
-   836,   837,   398,   389,   837,   250,   116,   116,   116,   116,
-  1016,   116,  1157,   116,   390,  1065,   119,   836,   116,   390,
-  1065,   837,   116,   119,   119,   119,   116,  1158,   119,   119,
-   119,   839,   119,   401,   839,   653,  1161,  1222,   871,   872,
-   119,  1136,   119,   119,   119,  1016,  1136,   887,  1016,  1139,
-  1260,   839,   119,   119,  1139,   119,   119,   119,   119,   119,
-  1261,  1262,    21,  1283,   967,  1016,   873,   874,   811,   643,
-    32,   251,  1010,     1,   643,  1033,   414,  1034,  1033,   414,
-  1033,   253,     3,   119,   119,   119,   119,   119,   119,   119,
-   119,   119,   119,   119,   119,   119,   119,    13,   361,   119,
-   119,   119,   811,   119,   119,   967,  1010,   119,    49,    49,
-   119,   119,   657,   119,   459,   119,   657,   119,    21,   119,
-   119,   119,   119,   119,   119,   119,  1157,   119,  1263,   119,
-   251,  1157,   873,   874,    15,    32,   597,   414,   414,  1262,
-   253,  1158,   119,   119,   119,   119,  1158,   119,   678,   119,
-  1161,  1222,   481,   982,   119,  1161,  1222,    32,   119,   481,
-   481,   481,   119,   361,  1260,   481,   481,   831,   481,  1260,
-   963,   873,   874,   459,  1261,  1262,   481,  1283,   633,  1261,
-  1262,   633,  1283,  1180,   831,   361,    49,    49,   481,   481,
-   538,   481,   481,   481,   481,   481,   258,   597,   597,   597,
-     5,   963,   974,    16,    96,     5,  1263,   368,   368,   678,
-   678,   259,    96,   974,   982,   982,   982,   597,   678,   481,
-   481,   481,   481,   481,   481,   481,   481,   481,   481,   481,
-   481,   481,   481,   646,   982,   481,   481,   481,   681,   481,
-   481,   646,  1263,   481,  1180,  1180,   481,  1263,   755,   538,
-    22,   481,   258,   481,    18,   481,   481,   481,   481,   481,
-   481,   481,   974,   481,  1180,   481,   725,   259,  1002,    28,
-  1002,  1002,  1002,  1002,  1002,    19,   980,   725,   481,   481,
-   974,   481,    19,   481,  1002,   368,   368,   980,   482,    43,
-   481,    19,    22,   756,   481,   482,   482,   482,   481,   681,
-   681,   482,   482,  1184,   482,    46,  1002,   755,   681,    22,
-   725,   725,   482,   482,  1184,  1002,  1002,  1002,  1002,    55,
-  1207,    54,  1207,   410,   482,   482,    55,   482,   482,   482,
-   482,   482,   144,    78,   249,    55,   980,   144,   144,    19,
-   772,   249,   412,  1002,   725,   772,   293,  1184,  1184,   772,
-   249,  1002,   756,   293,   980,   482,   482,   482,   482,   482,
-   482,   482,   482,   482,   482,   482,   482,   482,   482,   902,
-   294,   482,   482,   482,   804,   482,   482,   294,   804,   482,
-   417,  1184,   482,    55,   410,   410,   410,   482,   903,   482,
-   103,   482,   482,   482,   482,   482,   482,   482,   249,   482,
-   482,   482,   340,   412,   412,   412,  1187,   340,  1187,  1187,
-  1187,  1187,  1187,   353,   482,   482,    44,   482,   394,   482,
-   353,   420,  1187,   394,   757,   428,   482,   104,   902,   353,
-   482,   757,   757,   757,   482,   105,   757,   757,   757,   719,
-   757,   417,   417,   417,  1187,   719,   958,   903,   757,   757,
-   757,   757,   757,  1187,  1187,  1187,  1187,  1057,    44,   106,
-   757,   757,   354,   757,   757,   757,   757,   757,   526,   354,
-   142,  1042,   295,   526,   355,    44,  1042,   353,   354,   295,
-    45,   355,   420,   420,   420,   223,   428,   428,   428,  1187,
-   355,   757,   757,   757,   757,   757,   757,   757,   757,   757,
-   757,   757,   757,   757,   757,   958,   296,   757,   757,   757,
-   297,   757,   757,   296,   236,   757,  1057,   297,   757,   757,
-   966,   757,    45,   757,   966,   757,   354,   757,   757,   757,
-   757,   757,   757,   757,   298,   757,   757,   757,   355,    45,
-   637,   298,  1191,   637,  1191,  1191,  1191,  1191,  1191,   357,
-   757,   757,   757,   757,   299,   757,   357,   757,  1191,   238,
-   758,   299,   757,   242,   372,   357,   757,   758,   758,   758,
-   757,   252,   758,   758,   758,   300,   758,   254,   373,   255,
-  1191,   261,   300,   313,   758,   373,   758,   758,   758,  1191,
-  1191,  1191,  1191,   328,   373,   329,   758,   758,   399,   758,
-   758,   758,   758,   758,  1147,   399,   372,   332,   458,  1147,
-   614,   475,   301,   357,   399,   458,   476,   614,   703,   301,
-   388,   388,   346,   372,   458,  1191,   614,   758,   758,   758,
-   758,   758,   758,   758,   758,   758,   758,   758,   758,   758,
-   758,   348,   373,   758,   758,   758,   349,   758,   758,    52,
-    52,   758,   350,   475,   758,   758,   356,   758,   476,   758,
-   703,   758,   399,   758,   758,   758,   758,   758,   758,   758,
-   475,   758,   458,   758,   614,   476,  1193,   703,  1193,  1193,
-  1193,  1193,  1193,   659,    52,    52,   758,   758,   758,   758,
-   659,   758,  1193,   758,   302,   359,   904,  1019,   758,   659,
-  1019,   302,   758,   904,   904,   904,   758,   360,  1107,   904,
-   904,  1107,   904,  1213,  1193,   511,  1213,   511,   511,   511,
-   904,   511,   728,   728,   877,  1193,  1193,   787,   787,   857,
-   857,   877,   904,   904,   840,   904,   904,   904,   904,   904,
-   877,   840,  1037,   362,  1159,   363,   840,   659,   367,  1037,
-   840,  1159,   369,   511,  1037,   885,   885,   548,  1037,  1193,
-  1159,   376,   511,   904,   904,   904,   904,   904,   904,   904,
-   904,   904,   904,   904,   904,   904,   904,  1140,  1140,   904,
-   904,   904,   378,   904,   904,  1247,  1247,   904,   877,   548,
-   904,   384,   395,   548,   548,   904,   396,   904,   840,   904,
-   904,   904,   904,   904,   904,   904,  1037,   904,  1159,   904,
-   400,   402,  1268,  1198,  1268,  1268,  1268,  1268,  1268,  1244,
-  1198,   416,   904,   904,   419,   904,  1244,   904,  1268,  1198,
-   422,   425,   905,   448,   904,  1244,   450,   451,   904,   905,
-   905,   905,   904,   453,   456,   905,   905,   460,   905,   738,
-  1268,   738,   738,   738,   470,   738,   905,   905,   473,  1268,
-  1268,  1268,  1268,   474,   790,   790,   790,   790,   905,   905,
-   483,   905,   905,   905,   905,   905,   489,  1198,   490,   493,
-   790,   790,   790,  1244,   494,   495,   803,   738,   803,   803,
-   498,   499,   803,   790,   790,  1268,   738,   500,   790,   905,
-   905,   905,   905,   905,   905,   905,   905,   905,   905,   905,
-   905,   905,   905,   510,   522,   905,   905,   905,   525,   905,
-   905,   528,   534,   905,   803,   542,   905,   543,   550,   551,
-   552,   905,   553,   905,   573,   905,   905,   905,   905,   905,
-   905,   905,   581,   905,   905,   905,   582,   790,   790,   790,
-   790,   790,   790,   583,   549,   587,   790,   790,   905,   905,
-   603,   905,   604,   905,   790,   605,   608,   790,   790,   790,
-   905,   790,   790,   610,   905,   615,   619,   628,   905,     2,
-     2,     2,     2,     2,     2,   629,   549,   634,     2,     2,
-   549,   549,   655,     2,   656,     2,     2,     2,     2,     2,
-     2,     2,     9,     9,     9,     9,     9,     2,     2,     2,
-     2,     2,     2,     2,   635,   948,     2,   948,   948,   948,
-   638,   948,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,   640,     2,     2,     2,   644,     2,
-     2,   645,     2,     2,     2,   655,   647,   656,   661,   685,
-   688,   695,   655,   948,   656,   704,   709,   655,   715,   656,
-   717,   655,   948,   656,     2,   740,   741,     2,   556,   743,
-     2,     2,   750,   759,     2,   768,     2,   776,   777,   655,
-     2,   656,   778,   807,   556,   556,   889,   889,     2,   812,
-   889,   889,   889,     2,     2,     2,     2,     2,     2,   818,
-   556,   820,     2,     2,   556,   556,   556,   556,   822,   655,
-     2,   656,   824,     2,     2,     2,   833,     2,     2,   835,
-   838,     2,     2,    39,    39,    39,    39,    39,    39,   841,
-   842,   845,    39,    39,   859,   865,  1036,    39,   866,    39,
-    39,    39,    39,    39,    39,    39,   344,   344,   344,   344,
-   344,    39,    39,    39,    39,    39,    39,    39,   870,   888,
-    39,   563,   896,   899,   901,   910,    39,    39,    39,    39,
-    39,    39,    39,    39,    39,    39,    39,    39,   929,    39,
-    39,    39,   930,    39,    39,   933,    39,    39,    39,  1036,
-   564,   935,   938,   563,   939,   941,  1036,   563,   563,   563,
-   563,  1036,   942,   944,   947,  1036,   960,   962,    39,   968,
-   969,    39,   973,   976,    39,    39,   981,  1007,    39,  1008,
-    39,  1015,   564,  1036,    39,  1020,   564,   564,   564,   564,
-  1026,  1035,    39,  1039,  1043,  1047,  1048,    39,    39,    39,
-    39,    39,    39,  1054,  1056,  1080,    39,    39,   383,   383,
-   383,   383,   383,  1036,    39,  1081,  1086,    39,    39,    39,
-  1091,    39,    39,  1092,  1093,    39,    39,   225,   225,   225,
-   225,   225,   225,  1094,  1095,  1096,   225,   225,  1100,  1101,
-  1104,   225,  1108,   225,   225,   225,   225,   225,   225,   225,
-    26,  1115,  1117,  1118,  1120,   225,   225,   225,   225,   225,
-   225,   225,  1121,   742,   225,   742,   742,   742,  1122,   742,
-   225,   225,   225,   225,   225,   225,   225,   225,   225,   225,
-   225,   225,  1124,   225,   225,   225,  1125,   225,   225,  1126,
-   225,   225,   225,    26,    26,    26,    26,    26,    26,    26,
-    26,    26,    26,    26,  1146,    26,    26,  1150,  1151,    26,
-    26,  1155,   225,  1160,    26,   225,  1163,  1164,   225,   225,
-  1165,  1166,   225,  1177,   225,    26,  1196,    26,   225,    26,
-    26,    26,    26,    26,    26,    26,   225,    26,  1199,  1218,
-  1228,   225,   225,   225,   225,   225,   225,  1229,  1231,  1234,
-   225,   225,  1237,    26,  1238,  1239,  1240,  1242,   225,  1255,
-  1259,   225,   225,   225,  1264,   225,   225,  1266,  1277,   225,
-   225,   237,   237,   237,   237,   237,   237,  1278,  1285,  1286,
-   237,   237,  1287,  1288,  1297,   237,   nil,   237,   237,   237,
-   237,   237,   237,   237,   602,   602,   602,   602,   602,   237,
-   237,   237,   237,   237,   237,   237,   nil,   nil,   237,   nil,
-   nil,   nil,   nil,   463,   237,   237,   237,   237,   237,   237,
-   237,   237,   237,   237,   237,   237,   nil,   237,   237,   237,
-   nil,   237,   237,   nil,   237,   237,   237,   463,   463,   463,
-   463,   463,   463,   463,   463,   463,   463,   463,   nil,   463,
-   463,   nil,   nil,   463,   463,   nil,   237,   nil,   nil,   237,
-   nil,   nil,   237,   237,   nil,   nil,   237,   nil,   237,   463,
-   nil,   463,   237,   463,   463,   463,   463,   463,   463,   463,
-   237,   463,   nil,   nil,   nil,   237,   237,   237,   237,   237,
-   237,   nil,   nil,   nil,   237,   237,   nil,   463,   nil,   463,
-   nil,   nil,   237,   nil,   nil,   237,   237,   237,   nil,   237,
-   237,   nil,   nil,   237,   237,   243,   243,   243,   243,   243,
-   243,   nil,   nil,   nil,   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,   469,   243,   243,
-   243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
-   nil,   243,   243,   243,   nil,   243,   243,   nil,   243,   243,
-   243,   469,   469,   469,   469,   469,   469,   469,   469,   469,
-   469,   469,   nil,   469,   469,   nil,   nil,   469,   469,   nil,
-   243,   nil,   nil,   243,   nil,   nil,   243,   243,   nil,   nil,
-   243,   nil,   243,   469,   nil,   469,   243,   469,   469,   469,
-   469,   469,   469,   469,   243,   469,   nil,   nil,   nil,   243,
-   243,   243,   243,   243,   243,   nil,   nil,   nil,   243,   243,
-   nil,   469,   nil,   nil,   nil,   nil,   243,   nil,   nil,   243,
-   243,   243,   nil,   243,   243,   nil,   nil,   243,   243,   260,
-   260,   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,
-   nil,   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,
-   260,   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,
-   260,   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,
-   nil,   718,   260,   260,   260,   260,   260,   260,   260,   260,
-   260,   260,   260,   260,   nil,   260,   260,   260,   nil,   260,
-   260,   nil,   260,   260,   260,   718,   718,   718,   718,   718,
-   718,   718,   718,   718,   718,   718,   nil,   718,   718,   nil,
-   nil,   718,   718,   nil,   260,   nil,   nil,   260,   nil,   nil,
-   260,   260,   nil,   nil,   260,   nil,   260,   718,   nil,   718,
-   260,   718,   718,   718,   718,   718,   718,   718,   260,   718,
-   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,
-   nil,   nil,   260,   260,   nil,   718,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   260,   260,   260,   nil,   260,   260,   nil,
-   nil,   260,   260,   347,   347,   347,   347,   347,   347,   nil,
-   nil,   nil,   347,   347,   nil,   nil,   nil,   347,   nil,   347,
-   347,   347,   347,   347,   347,   347,   nil,   nil,   nil,   nil,
-   nil,   347,   347,   347,   347,   347,   347,   347,   nil,   nil,
-   347,   nil,   nil,   nil,   nil,   751,   347,   347,   347,   347,
-   347,   347,   347,   347,   347,   347,   347,   347,   nil,   347,
-   347,   347,   nil,   347,   347,   nil,   347,   347,   347,   751,
-   751,   751,   751,   751,   751,   751,   751,   751,   751,   751,
-   nil,   751,   751,   nil,   nil,   751,   751,   nil,   347,   nil,
-   nil,   347,   nil,   nil,   347,   347,   nil,   nil,   347,   nil,
-   347,   751,   nil,   751,   347,   751,   751,   751,   751,   751,
-   751,   751,   347,   751,   nil,   nil,   nil,   347,   347,   347,
-   347,   347,   347,   nil,   nil,   nil,   347,   347,   nil,   751,
-   nil,   nil,   nil,   nil,   347,   nil,   nil,   347,   347,   347,
-   nil,   347,   347,   nil,   nil,   347,   347,   352,   352,   352,
-   352,   352,   352,   nil,   nil,   nil,   352,   352,   nil,   nil,
-   nil,   352,   nil,   352,   352,   352,   352,   352,   352,   352,
-   nil,   nil,   nil,   nil,   nil,   352,   352,   352,   352,   352,
-   352,   352,   nil,  1152,   352,  1152,  1152,  1152,   nil,  1152,
-   352,   352,   352,   352,   352,   352,   352,   352,   352,   352,
-   352,   352,   nil,   352,   352,   352,   nil,   352,   352,   nil,
-   352,   352,   352,   326,   326,   326,   326,   326,   326,   326,
-   326,   326,   326,   326,   nil,   326,   326,   nil,   nil,   326,
-   326,   nil,   352,   nil,   nil,   352,   nil,   nil,   352,   352,
-   nil,   nil,   352,   nil,   352,   326,   nil,   326,   352,   326,
-   326,   326,   326,   326,   326,   326,   352,   326,   nil,   nil,
-   nil,   352,   352,   352,   352,   352,   352,   nil,   nil,   nil,
-   352,   352,   nil,   326,   nil,   nil,   nil,   nil,   352,   nil,
-   nil,   352,   352,   352,   nil,   352,   352,   nil,   nil,   352,
-   352,   382,   382,   382,   382,   382,   382,   nil,   nil,   nil,
-   382,   382,   nil,   nil,   nil,   382,   nil,   382,   382,   382,
-   382,   382,   382,   382,   nil,   nil,   nil,   nil,   nil,   382,
-   382,   382,   382,   382,   382,   382,   nil,  1257,   382,  1257,
-  1257,  1257,   nil,  1257,   382,   382,   382,   382,   382,   382,
-   382,   382,   382,   382,   382,   382,   nil,   382,   382,   382,
-   nil,   382,   382,   nil,   382,   382,   382,   567,   567,   567,
-   567,   567,   567,   567,   567,   567,   567,   567,   nil,   567,
-   567,   nil,   nil,   567,   567,   nil,   382,   nil,   nil,   382,
-   nil,   nil,   382,   382,   nil,   nil,   382,   nil,   382,   567,
-   nil,   567,   382,   567,   567,   567,   567,   567,   567,   567,
-   382,   567,   nil,   nil,   nil,   382,   382,   382,   382,   382,
-   382,   nil,   nil,   nil,   382,   382,   567,   567,   nil,   nil,
-   nil,   nil,   382,   nil,   nil,   382,   382,   382,   nil,   382,
-   382,   nil,   nil,   382,   382,   392,   392,   392,   392,   392,
-   392,   nil,   nil,   nil,   392,   392,   nil,   nil,   nil,   392,
-   nil,   392,   392,   392,   392,   392,   392,   392,   nil,   nil,
-   nil,   nil,   nil,   392,   392,   392,   392,   392,   392,   392,
-   nil,   nil,   392,   nil,   nil,   nil,   nil,   nil,   392,   392,
-   392,   392,   392,   392,   392,   392,   392,   392,   392,   392,
-   nil,   392,   392,   392,   nil,   392,   392,   nil,   392,   392,
-   392,   626,   626,   626,   626,   626,   626,   626,   626,   626,
-   626,   626,   nil,   626,   626,   nil,   nil,   626,   626,   nil,
-   392,   nil,   nil,   392,   nil,   nil,   392,   392,   nil,   nil,
-   392,   nil,   392,   626,   nil,   626,   392,   626,   626,   626,
-   626,   626,   626,   626,   392,   626,   nil,   nil,   nil,   392,
-   392,   392,   392,   392,   392,   nil,   nil,   nil,   392,   392,
-   nil,   626,   nil,   nil,   nil,   nil,   392,   nil,   nil,   392,
-   392,   392,   nil,   392,   392,   nil,   nil,   392,   392,   393,
-   393,   393,   393,   393,   393,   nil,   nil,   nil,   393,   393,
-   nil,   nil,   nil,   393,   nil,   393,   393,   393,   393,   393,
-   393,   393,   nil,   nil,   nil,   nil,   nil,   393,   393,   393,
-   393,   393,   393,   393,   nil,   nil,   393,   nil,   nil,   nil,
-   nil,   nil,   393,   393,   393,   393,   393,   393,   393,   393,
-   393,   393,   393,   393,   nil,   393,   393,   393,   nil,   393,
-   393,   nil,   393,   393,   393,   907,   907,   907,   907,   907,
-   907,   907,   907,   907,   907,   907,   nil,   907,   907,   nil,
-   nil,   907,   907,   nil,   393,   nil,   nil,   393,   nil,   nil,
-   393,   393,   nil,   nil,   393,   nil,   393,   907,   nil,   907,
-   393,   907,   907,   907,   907,   907,   907,   907,   393,   907,
-   nil,   nil,   nil,   393,   393,   393,   393,   393,   393,   nil,
-   nil,   nil,   393,   393,   nil,   907,   nil,   nil,   nil,   nil,
-   393,   nil,   nil,   393,   393,   393,   nil,   393,   393,   nil,
-   nil,   393,   393,   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,
-   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,   nil,   639,
-   639,   639,   nil,   639,   639,   nil,   639,   639,   639,  1061,
-  1061,  1061,  1061,  1061,  1061,  1061,  1061,  1061,  1061,  1061,
-   nil,  1061,  1061,   nil,   nil,  1061,  1061,   nil,   639,   nil,
-   nil,   639,   nil,   nil,   639,   639,   nil,   nil,   639,   nil,
-   639,  1061,   nil,  1061,   639,  1061,  1061,  1061,  1061,  1061,
-  1061,  1061,   639,  1061,   nil,   nil,   nil,   639,   639,   639,
-   639,   639,   639,   nil,   nil,   nil,   639,   639,   nil,  1061,
-   nil,   nil,   nil,   nil,   639,   nil,   nil,   639,   639,   639,
-   nil,   639,   639,   nil,   nil,   639,   639,   642,   642,   642,
-   642,   642,   642,   nil,   nil,   nil,   642,   642,   nil,   nil,
-   nil,   642,   nil,   642,   642,   642,   642,   642,   642,   642,
-   nil,   nil,   nil,   nil,   nil,   642,   642,   642,   642,   642,
-   642,   642,   nil,   nil,   642,   nil,   nil,   nil,   nil,   nil,
-   642,   642,   642,   642,   642,   642,   642,   642,   642,   642,
-   642,   642,   nil,   642,   642,   642,   nil,   642,   642,   nil,
-   642,   642,   642,  1062,  1062,  1062,  1062,  1062,  1062,  1062,
-  1062,  1062,  1062,  1062,   nil,  1062,  1062,   nil,   nil,  1062,
-  1062,   nil,   642,   nil,   nil,   642,   nil,   nil,   642,   642,
-   nil,   nil,   642,   nil,   642,  1062,   nil,  1062,   642,  1062,
-  1062,  1062,  1062,  1062,  1062,  1062,   642,  1062,   nil,   nil,
-   nil,   642,   642,   642,   642,   642,   642,   nil,   nil,   nil,
-   642,   642,   nil,  1062,   nil,   nil,   nil,   nil,   642,   nil,
-   nil,   642,   642,   642,   nil,   642,   642,   nil,   nil,   642,
-   642,   690,   690,   690,   690,   690,   690,   nil,   nil,   nil,
-   690,   690,   nil,   nil,   nil,   690,   nil,   690,   690,   690,
-   690,   690,   690,   690,   nil,   nil,   nil,   nil,   nil,   690,
-   690,   690,   690,   690,   690,   690,   nil,   nil,   690,   nil,
-   nil,   nil,   nil,   nil,   690,   690,   690,   690,   690,   690,
-   690,   690,   690,   690,   690,   690,   nil,   690,   690,   690,
-   nil,   690,   690,   nil,   690,   690,   690,  1082,  1082,  1082,
-  1082,  1082,  1082,  1082,  1082,  1082,  1082,  1082,   nil,  1082,
-  1082,   nil,   nil,  1082,  1082,   nil,   690,   nil,   nil,   690,
-   nil,   nil,   690,   690,   nil,   nil,   690,   nil,   690,  1082,
-   nil,  1082,   690,  1082,  1082,  1082,  1082,  1082,  1082,  1082,
-   690,  1082,   nil,   nil,   nil,   690,   690,   690,   690,   690,
-   690,   nil,   nil,   nil,   690,   690,   nil,  1082,   nil,   nil,
-   nil,   nil,   690,   nil,   nil,   690,   690,   690,   nil,   690,
-   690,   nil,   nil,   690,   690,   875,   875,   875,   875,   875,
-   875,   nil,   nil,   nil,   875,   875,   nil,   nil,   nil,   875,
-   nil,   875,   875,   875,   875,   875,   875,   875,   nil,   nil,
-   nil,   nil,   nil,   875,   875,   875,   875,   875,   875,   875,
-   nil,   nil,   875,   nil,   nil,   nil,   nil,   nil,   875,   875,
-   875,   875,   875,   875,   875,   875,   875,   875,   875,   875,
-   nil,   875,   875,   875,   nil,   875,   875,   nil,   875,   875,
-   875,  1083,  1083,  1083,  1083,  1083,  1083,  1083,  1083,  1083,
-  1083,  1083,   nil,  1083,  1083,   nil,   nil,  1083,  1083,   nil,
-   875,   nil,   nil,   875,   nil,   nil,   875,   875,   nil,   nil,
-   875,   nil,   875,  1083,   nil,  1083,   875,  1083,  1083,  1083,
-  1083,  1083,  1083,  1083,   875,  1083,   nil,   nil,   nil,   875,
-   875,   875,   875,   875,   875,   nil,   nil,   nil,   875,   875,
-   nil,  1083,   nil,   nil,   nil,   nil,   875,   nil,   nil,   875,
-   875,   875,   nil,   875,   875,   nil,   nil,   875,   875,   886,
-   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,   886,   886,   886,   886,   886,   886,
-   886,   886,   886,   886,   nil,   886,   886,   886,   nil,   886,
-   886,   nil,   886,   886,   886,  1116,  1116,  1116,  1116,  1116,
-  1116,  1116,  1116,  1116,  1116,  1116,   nil,  1116,  1116,   nil,
-   nil,  1116,  1116,   nil,   886,   nil,   nil,   886,   nil,   nil,
-   886,   886,   nil,   nil,   886,   nil,   886,  1116,   nil,  1116,
-   886,  1116,  1116,  1116,  1116,  1116,  1116,  1116,   886,  1116,
-   nil,   nil,   nil,   886,   886,   886,   886,   886,   886,   nil,
-   nil,   nil,   886,   886,   nil,  1116,   nil,   nil,   nil,   nil,
-   886,   nil,   nil,   886,   886,   886,   nil,   886,   886,   nil,
-   nil,   886,   886,   890,   890,   890,   890,   890,   890,   nil,
-   nil,   nil,   890,   890,   nil,   nil,   nil,   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,   890,   890,   890,   890,
-   890,   890,   890,   890,   890,   890,   890,   890,   nil,   890,
-   890,   890,   nil,   890,   890,   nil,   890,   890,   890,   374,
-   374,   374,   374,   374,   374,   374,   374,   374,   374,   374,
-   nil,   374,   374,   nil,   nil,   374,   374,   nil,   890,   nil,
-   nil,   890,   nil,   nil,   890,   890,   nil,   nil,   890,   nil,
-   890,   374,   nil,   374,   890,   374,   374,   374,   374,   374,
-   374,   374,   890,   374,   nil,   nil,   nil,   890,   890,   890,
-   890,   890,   890,   nil,   nil,   nil,   890,   890,   nil,   nil,
-   nil,   nil,   nil,   nil,   890,   nil,   nil,   890,   890,   890,
-   nil,   890,   890,   nil,   nil,   890,   890,   927,   927,   927,
-   927,   927,   927,   nil,   nil,   nil,   927,   927,   nil,   nil,
-   nil,   927,   nil,   927,   927,   927,   927,   927,   927,   927,
-   nil,   nil,   nil,   nil,   nil,   927,   927,   927,   927,   927,
-   927,   927,   nil,   nil,   927,   nil,   nil,   nil,   nil,   nil,
-   927,   927,   927,   927,   927,   927,   927,   927,   927,   927,
-   927,   927,   nil,   927,   927,   927,   nil,   927,   927,   nil,
-   927,   927,   927,   375,   375,   375,   375,   375,   375,   375,
-   375,   375,   375,   375,   nil,   375,   375,   nil,   nil,   375,
-   375,   nil,   927,   nil,   nil,   927,   nil,   nil,   927,   927,
-   nil,   nil,   927,   nil,   927,   375,   nil,   375,   927,   375,
-   375,   375,   375,   375,   375,   375,   927,   375,   nil,   nil,
-   nil,   927,   927,   927,   927,   927,   927,   nil,   nil,   nil,
-   927,   927,   nil,   nil,   nil,   nil,   nil,   nil,   927,   nil,
-   nil,   927,   927,   927,   nil,   927,   927,   nil,   nil,   927,
-   927,  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,
-  1004,  1004,   nil,   nil,   nil,  1004,   nil,  1004,  1004,  1004,
-  1004,  1004,  1004,  1004,   nil,   nil,   nil,   nil,   nil,  1004,
-  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,  1004,   nil,
-   nil,   nil,   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,
-  1004,  1004,  1004,  1004,  1004,  1004,   nil,  1004,  1004,  1004,
-   nil,  1004,  1004,   nil,  1004,  1004,  1004,   546,   546,   546,
-   546,   546,   546,   546,   546,   546,   546,   546,   nil,   546,
-   546,   nil,   nil,   546,   546,   nil,  1004,   nil,   nil,  1004,
-   nil,   nil,  1004,  1004,   nil,   nil,  1004,   nil,  1004,   546,
-   nil,   546,  1004,   546,   546,   546,   546,   546,   546,   546,
-  1004,   546,   nil,   nil,   nil,  1004,  1004,  1004,  1004,  1004,
-  1004,   nil,   nil,   nil,  1004,  1004,   nil,   nil,   nil,   nil,
-   nil,   nil,  1004,   nil,   nil,  1004,  1004,  1004,   nil,  1004,
-  1004,   nil,   nil,  1004,  1004,  1025,  1025,  1025,  1025,  1025,
-  1025,   nil,   nil,   nil,  1025,  1025,   nil,   nil,   nil,  1025,
-   nil,  1025,  1025,  1025,  1025,  1025,  1025,  1025,   nil,   nil,
-   nil,   nil,   nil,  1025,  1025,  1025,  1025,  1025,  1025,  1025,
-   nil,   nil,  1025,   nil,   nil,   nil,   nil,   nil,  1025,  1025,
-  1025,  1025,  1025,  1025,  1025,  1025,  1025,  1025,  1025,  1025,
-   nil,  1025,  1025,  1025,   nil,  1025,  1025,   nil,  1025,  1025,
-  1025,   547,   547,   547,   547,   547,   547,   547,   547,   547,
-   547,   547,   nil,   547,   547,   nil,   nil,   547,   547,   nil,
-  1025,   nil,   nil,  1025,   nil,   nil,  1025,  1025,   nil,   nil,
-  1025,   nil,  1025,   547,   nil,   547,  1025,   547,   547,   547,
-   547,   547,   547,   547,  1025,   547,   nil,   nil,   nil,  1025,
-  1025,  1025,  1025,  1025,  1025,   nil,   nil,   nil,  1025,  1025,
-   nil,   nil,   nil,   nil,   nil,   nil,  1025,   nil,   nil,  1025,
-  1025,  1025,   nil,  1025,  1025,   nil,   nil,  1025,  1025,  1040,
-  1040,  1040,  1040,  1040,  1040,   nil,   nil,   nil,  1040,  1040,
-   nil,   nil,   nil,  1040,   nil,  1040,  1040,  1040,  1040,  1040,
-  1040,  1040,   nil,   nil,   nil,   nil,   nil,  1040,  1040,  1040,
-  1040,  1040,  1040,  1040,   nil,   949,  1040,   949,   949,   949,
-   nil,   949,  1040,  1040,  1040,  1040,  1040,  1040,  1040,  1040,
-  1040,  1040,  1040,  1040,   nil,  1040,  1040,  1040,   nil,  1040,
-  1040,   nil,  1040,  1040,  1040,   557,   557,   557,   557,   557,
-   557,   557,   nil,   949,   557,   557,   nil,   nil,   nil,   nil,
-   nil,   557,   557,   nil,  1040,   nil,   nil,  1040,   nil,   nil,
-  1040,  1040,   nil,   nil,  1040,   nil,  1040,   557,   nil,   557,
-  1040,   557,   557,   557,   557,   557,   557,   557,  1040,   557,
-   nil,   nil,   nil,  1040,  1040,  1040,  1040,  1040,  1040,   nil,
-   nil,   nil,  1040,  1040,   nil,   nil,   nil,   nil,   nil,   nil,
-  1040,   nil,   nil,  1040,  1040,  1040,   nil,  1040,  1040,   nil,
-   nil,  1040,  1040,  1045,  1045,  1045,  1045,  1045,  1045,   nil,
-   nil,   nil,  1045,  1045,   nil,   nil,   nil,  1045,   nil,  1045,
-  1045,  1045,  1045,  1045,  1045,  1045,   nil,   nil,   nil,   nil,
-   nil,  1045,  1045,  1045,  1045,  1045,  1045,  1045,   nil,  1167,
-  1045,  1167,  1167,  1167,   nil,  1167,  1045,  1045,  1045,  1045,
-  1045,  1045,  1045,  1045,  1045,  1045,  1045,  1045,   nil,  1045,
-  1045,  1045,   nil,  1045,  1045,   nil,  1045,  1045,  1045,   558,
-   558,   558,   558,   558,   558,   558,   nil,  1167,   558,   558,
-   nil,   nil,   nil,   nil,   nil,   558,   558,   nil,  1045,   nil,
-   nil,  1045,   nil,   nil,  1045,  1045,   nil,   nil,  1045,   nil,
-  1045,   558,   nil,   558,  1045,   558,   558,   558,   558,   558,
-   558,   558,  1045,   558,   nil,   nil,   nil,  1045,  1045,  1045,
-  1045,  1045,  1045,   nil,   nil,   nil,  1045,  1045,   nil,   nil,
-   nil,   nil,   nil,   nil,  1045,   nil,   nil,  1045,  1045,  1045,
-   nil,  1045,  1045,   nil,   nil,  1045,  1045,  1046,  1046,  1046,
-  1046,  1046,  1046,   nil,   nil,   nil,  1046,  1046,   nil,   nil,
-   nil,  1046,   nil,  1046,  1046,  1046,  1046,  1046,  1046,  1046,
-   nil,   nil,   nil,   nil,   nil,  1046,  1046,  1046,  1046,  1046,
-  1046,  1046,   nil,  1168,  1046,  1168,  1168,  1168,   nil,  1168,
-  1046,  1046,  1046,  1046,  1046,  1046,  1046,  1046,  1046,  1046,
-  1046,  1046,   nil,  1046,  1046,  1046,   nil,  1046,  1046,   nil,
-  1046,  1046,  1046,   559,   559,   559,   559,   559,   559,   559,
-   nil,  1168,   559,   559,   nil,   nil,   nil,   nil,   nil,   559,
-   559,   nil,  1046,   nil,   nil,  1046,   nil,   nil,  1046,  1046,
-   nil,   nil,  1046,   nil,  1046,   559,   nil,   559,  1046,   559,
-   559,   559,   559,   559,   559,   559,  1046,   559,   nil,   nil,
-   nil,  1046,  1046,  1046,  1046,  1046,  1046,   nil,   nil,   nil,
-  1046,  1046,   nil,   nil,   nil,   nil,   nil,   nil,  1046,   nil,
-   nil,  1046,  1046,  1046,   nil,  1046,  1046,   nil,   nil,  1046,
-  1046,  1063,  1063,  1063,  1063,  1063,  1063,   nil,   nil,   nil,
-  1063,  1063,   nil,   nil,   nil,  1063,   nil,  1063,  1063,  1063,
-  1063,  1063,  1063,  1063,   nil,   nil,   nil,   nil,   nil,  1063,
-  1063,  1063,  1063,  1063,  1063,  1063,   nil,   nil,  1063,   nil,
-   nil,   nil,   nil,   nil,  1063,  1063,  1063,  1063,  1063,  1063,
-  1063,  1063,  1063,  1063,  1063,  1063,   nil,  1063,  1063,  1063,
-   nil,  1063,  1063,   nil,  1063,  1063,  1063,   560,   560,   560,
-   560,   560,   560,   560,   nil,   nil,   560,   560,   nil,   nil,
-   nil,   nil,   nil,   560,   560,   nil,  1063,   nil,   nil,  1063,
-   nil,   nil,  1063,  1063,   nil,   nil,  1063,   nil,  1063,   560,
-   nil,   560,  1063,   560,   560,   560,   560,   560,   560,   560,
-  1063,   560,   nil,   nil,   nil,  1063,  1063,  1063,  1063,  1063,
-  1063,   nil,   nil,   nil,  1063,  1063,   nil,   nil,   nil,   nil,
-   nil,   nil,  1063,   nil,   nil,  1063,  1063,  1063,   nil,  1063,
-  1063,   nil,   nil,  1063,  1063,  1133,  1133,  1133,  1133,  1133,
-  1133,   nil,   nil,   nil,  1133,  1133,   nil,   nil,   nil,  1133,
-   nil,  1133,  1133,  1133,  1133,  1133,  1133,  1133,   nil,   nil,
-   nil,   nil,   nil,  1133,  1133,  1133,  1133,  1133,  1133,  1133,
-   nil,   nil,  1133,   nil,   nil,   nil,   nil,   nil,  1133,  1133,
-  1133,  1133,  1133,  1133,  1133,  1133,  1133,  1133,  1133,  1133,
-   nil,  1133,  1133,  1133,   nil,  1133,  1133,   nil,  1133,  1133,
-  1133,   561,   561,   561,   561,   561,   561,   561,   nil,   nil,
-   561,   561,   nil,   nil,   nil,   nil,   nil,   561,   561,   nil,
-  1133,   nil,   nil,  1133,   nil,   nil,  1133,  1133,   nil,   nil,
-  1133,   nil,  1133,   561,   nil,   561,  1133,   561,   561,   561,
-   561,   561,   561,   561,  1133,   561,   nil,   nil,   nil,  1133,
-  1133,  1133,  1133,  1133,  1133,   nil,   nil,   nil,  1133,  1133,
-   nil,   nil,   nil,   nil,   nil,   nil,  1133,   nil,   nil,  1133,
-  1133,  1133,   nil,  1133,  1133,   nil,   nil,  1133,  1133,  1143,
-  1143,  1143,  1143,  1143,  1143,   nil,   nil,   nil,  1143,  1143,
-   nil,   nil,   nil,  1143,   nil,  1143,  1143,  1143,  1143,  1143,
-  1143,  1143,   nil,   nil,   nil,   nil,   nil,  1143,  1143,  1143,
-  1143,  1143,  1143,  1143,   nil,   nil,  1143,   nil,   nil,   nil,
-   nil,   nil,  1143,  1143,  1143,  1143,  1143,  1143,  1143,  1143,
-  1143,  1143,  1143,  1143,   nil,  1143,  1143,  1143,   nil,  1143,
-  1143,   nil,  1143,  1143,  1143,   562,   562,   562,   562,   562,
-   562,   562,   nil,   nil,   562,   562,   nil,   nil,   nil,   nil,
-   nil,   562,   562,   nil,  1143,   nil,   nil,  1143,   nil,   nil,
-  1143,  1143,   nil,   nil,  1143,   nil,  1143,   562,   nil,   562,
-  1143,   562,   562,   562,   562,   562,   562,   562,  1143,   562,
-   nil,   nil,   nil,  1143,  1143,  1143,  1143,  1143,  1143,   nil,
-   nil,   nil,  1143,  1143,   nil,   nil,   nil,   nil,   nil,   nil,
-  1143,   nil,   nil,  1143,  1143,  1143,   nil,  1143,  1143,   nil,
-   nil,  1143,  1143,  1156,  1156,  1156,  1156,  1156,  1156,   nil,
-   nil,   nil,  1156,  1156,   nil,   nil,   nil,  1156,   nil,  1156,
-  1156,  1156,  1156,  1156,  1156,  1156,   nil,   nil,   nil,   nil,
-   nil,  1156,  1156,  1156,  1156,  1156,  1156,  1156,   nil,   nil,
-  1156,   nil,   nil,   nil,   nil,   nil,  1156,  1156,  1156,  1156,
-  1156,  1156,  1156,  1156,  1156,  1156,  1156,  1156,   nil,  1156,
-  1156,  1156,   nil,  1156,  1156,   nil,  1156,  1156,  1156,   565,
-   565,   565,   565,   565,   565,   565,   nil,   nil,   565,   565,
-   nil,   nil,   nil,   nil,   nil,   565,   565,   nil,  1156,   nil,
-   nil,  1156,   nil,   nil,  1156,  1156,   nil,   nil,  1156,   nil,
-  1156,   565,   nil,   565,  1156,   565,   565,   565,   565,   565,
-   565,   565,  1156,   565,   nil,   nil,   nil,  1156,  1156,  1156,
-  1156,  1156,  1156,   nil,   nil,   nil,  1156,  1156,   nil,   nil,
-   nil,   nil,   nil,   nil,  1156,   nil,   nil,  1156,  1156,  1156,
-   nil,  1156,  1156,   nil,   nil,  1156,  1156,  1201,  1201,  1201,
-  1201,  1201,  1201,   nil,   nil,   nil,  1201,  1201,   nil,   nil,
-   nil,  1201,   nil,  1201,  1201,  1201,  1201,  1201,  1201,  1201,
-   nil,   nil,   nil,   nil,   nil,  1201,  1201,  1201,  1201,  1201,
-  1201,  1201,   nil,   nil,  1201,   nil,   nil,   nil,   nil,   nil,
-  1201,  1201,  1201,  1201,  1201,  1201,  1201,  1201,  1201,  1201,
-  1201,  1201,   nil,  1201,  1201,  1201,   nil,  1201,  1201,   nil,
-  1201,  1201,  1201,   566,   566,   566,   566,   566,   566,   566,
-   566,   nil,   566,   566,   nil,   nil,   nil,   nil,   nil,   566,
-   566,   nil,  1201,   nil,   nil,  1201,   nil,   nil,  1201,  1201,
-   nil,   nil,  1201,   nil,  1201,   566,   nil,   566,  1201,   566,
-   566,   566,   566,   566,   566,   566,  1201,   566,   nil,   nil,
-   nil,  1201,  1201,  1201,  1201,  1201,  1201,   nil,   nil,   nil,
-  1201,  1201,   nil,   nil,   nil,   nil,   nil,   nil,  1201,   nil,
-   nil,  1201,  1201,  1201,   nil,  1201,  1201,   nil,   nil,  1201,
-  1201,  1210,  1210,  1210,  1210,  1210,  1210,   nil,   nil,   nil,
-  1210,  1210,   nil,   nil,   nil,  1210,   nil,  1210,  1210,  1210,
-  1210,  1210,  1210,  1210,   nil,   nil,   nil,   nil,   nil,  1210,
-  1210,  1210,  1210,  1210,  1210,  1210,   nil,   nil,  1210,   nil,
-   nil,   nil,   nil,   nil,  1210,  1210,  1210,  1210,  1210,  1210,
-  1210,  1210,  1210,  1210,  1210,  1210,   nil,  1210,  1210,  1210,
-   nil,  1210,  1210,   nil,  1210,  1210,  1210,   568,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   568,   568,   nil,  1210,   nil,   nil,  1210,
-   nil,   nil,  1210,  1210,   nil,   nil,  1210,   nil,  1210,   568,
-   nil,   568,  1210,   568,   568,   568,   568,   nil,   nil,   568,
-  1210,   568,   nil,   nil,   nil,  1210,  1210,  1210,  1210,  1210,
-  1210,   nil,   nil,   nil,  1210,  1210,   nil,   nil,   nil,   nil,
-   nil,   nil,  1210,   nil,   nil,  1210,  1210,  1210,   nil,  1210,
-  1210,   nil,   nil,  1210,  1210,  1248,  1248,  1248,  1248,  1248,
-  1248,   nil,   nil,   nil,  1248,  1248,   nil,   nil,   nil,  1248,
-   nil,  1248,  1248,  1248,  1248,  1248,  1248,  1248,   nil,   nil,
-   nil,   nil,   nil,  1248,  1248,  1248,  1248,  1248,  1248,  1248,
-   nil,   nil,  1248,   nil,   nil,   nil,   nil,   nil,  1248,  1248,
-  1248,  1248,  1248,  1248,  1248,  1248,  1248,  1248,  1248,  1248,
-   nil,  1248,  1248,  1248,   nil,  1248,  1248,   nil,  1248,  1248,
-  1248,   625,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   625,   625,   nil,
-  1248,   nil,   nil,  1248,   nil,   nil,  1248,  1248,   nil,   nil,
-  1248,   nil,  1248,   625,   nil,   625,  1248,   625,   625,   625,
-   625,   nil,   nil,   625,  1248,   625,   nil,   nil,   nil,  1248,
-  1248,  1248,  1248,  1248,  1248,   nil,   nil,   nil,  1248,  1248,
-   nil,   nil,   nil,   nil,   nil,   nil,  1248,   nil,   nil,  1248,
-  1248,  1248,   nil,  1248,  1248,   nil,   nil,  1248,  1248,     8,
-     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
-   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
-     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
-     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
-   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
-     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
-   nil,     8,     8,     8,   554,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   554,   554,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
-     8,   nil,   nil,     8,   nil,     8,   554,   nil,   554,     8,
-   554,   554,   554,   554,   nil,   nil,   nil,     8,   nil,   nil,
-   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
-   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
-   nil,   nil,     8,     8,     8,   nil,     8,     8,   nil,   nil,
-     8,     8,    25,    25,    25,   nil,    25,   nil,   nil,   nil,
-    25,    25,   nil,   nil,   nil,    25,   nil,    25,    25,    25,
-    25,    25,    25,    25,   nil,   nil,   nil,   nil,   nil,    25,
-    25,    25,    25,    25,    25,    25,   nil,   nil,    25,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,    25,    25,
-    25,    25,    25,    25,    25,    25,   nil,    25,    25,    25,
-   nil,    25,    25,   nil,    25,    25,    25,   555,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   555,   555,   nil,    25,   nil,   nil,    25,
-   nil,   nil,    25,    25,   nil,   nil,    25,   nil,   nil,   555,
-   nil,   555,    25,   555,   555,   555,   555,   nil,   nil,   nil,
-    25,   nil,   nil,   nil,   nil,    25,    25,    25,    25,    25,
-    25,   nil,   nil,   nil,    25,    25,   nil,   nil,   nil,   nil,
-   nil,   nil,    25,   nil,   nil,    25,    25,    25,    33,    25,
-    25,   nil,   nil,    25,    25,    33,    33,    33,   nil,   nil,
-    33,    33,    33,  1270,    33,  1270,  1270,  1270,  1270,  1270,
-   nil,   nil,    33,    33,    33,    33,   nil,   nil,   nil,  1270,
-   nil,   nil,   nil,   nil,    33,    33,   nil,    33,    33,    33,
-    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1270,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1270,  1270,   nil,    33,    33,    33,    33,    33,
-    33,    33,    33,    33,    33,    33,    33,    33,    33,   nil,
-   nil,    33,    33,    33,   nil,   nil,    33,   nil,    33,    33,
-   nil,   nil,    33,    33,   nil,    33,  1270,    33,   nil,    33,
-   nil,    33,    33,    33,    33,    33,    33,    33,   nil,    33,
-    33,    33,  1272,   nil,  1272,  1272,  1272,  1272,  1272,   nil,
-   nil,   nil,   nil,   nil,    33,    33,   nil,    33,  1272,    33,
-    34,   nil,   nil,   nil,   nil,   nil,    33,    34,    34,    34,
-    33,   nil,    34,    34,    34,   nil,    34,   nil,   nil,   nil,
-  1272,   nil,   nil,   nil,    34,   nil,    34,    34,   nil,   nil,
-   nil,  1272,  1272,   nil,   nil,   nil,    34,    34,   nil,    34,
-    34,    34,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1272,   nil,    34,    34,    34,
-    34,    34,    34,    34,    34,    34,    34,    34,    34,    34,
-    34,   nil,   nil,    34,    34,    34,   nil,   nil,    34,   nil,
-    34,    34,   nil,   nil,    34,    34,   nil,    34,   nil,    34,
-   nil,    34,   nil,    34,    34,    34,    34,    34,    34,    34,
-   nil,    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,    34,
-   nil,    34,    35,    35,    35,   nil,    35,   nil,    34,   nil,
-    35,    35,    34,   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,    35,    35,    35,    35,
-   nil,    35,    35,   nil,    35,    35,    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,    35,   nil,
-    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,    35,    35,    35,    35,    35,
-    35,   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,    35,    35,    35,    35,   nil,    35,
-    35,   nil,   nil,    35,    35,    36,    36,    36,   nil,    36,
-   nil,   nil,   nil,    36,    36,   nil,   nil,   nil,    36,   nil,
-    36,    36,    36,    36,    36,    36,    36,   nil,   nil,   nil,
-   nil,   nil,    36,    36,    36,    36,    36,    36,    36,   nil,
-   nil,    36,   nil,   nil,   nil,   nil,   nil,   nil,    36,   nil,
-   nil,    36,    36,    36,    36,    36,    36,    36,    36,    36,
-    36,    36,    36,   nil,    36,    36,   nil,    36,    36,    36,
-   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,    36,    36,   nil,   nil,    36,
-   nil,    36,   nil,    36,   nil,    36,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    36,   nil,   nil,   nil,   nil,    36,    36,
-    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,   nil,
-   nil,   nil,   nil,   nil,   nil,    36,   nil,    36,    36,    36,
-    36,   nil,    36,    36,   nil,   nil,    36,    36,    37,    37,
-    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,   nil,
-   nil,    37,   nil,    37,    37,    37,    37,    37,    37,    37,
-   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
-    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,
-   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,    37,
-    37,    37,    37,    37,    37,    37,   nil,    37,    37,   nil,
-    37,    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    37,   nil,   nil,    37,   nil,   nil,    37,    37,
-   nil,   nil,    37,   nil,    37,   nil,    37,   nil,    37,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,   nil,
-   nil,    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,
-    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
-    37,    37,    37,    37,   nil,    37,    37,   nil,   nil,    37,
-    37,    47,    47,    47,   nil,    47,   nil,   nil,   nil,    47,
-    47,   nil,   nil,   nil,    47,   nil,    47,    47,    47,    47,
-    47,    47,    47,   nil,   nil,   nil,   nil,   nil,    47,    47,
-    47,    47,    47,    47,    47,   nil,   nil,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,    47,    47,
-    47,    47,    47,    47,    47,   nil,    47,    47,    47,   nil,
-    47,    47,   nil,    47,    47,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,   nil,
-   nil,    47,    47,   nil,   nil,    47,   nil,   nil,   nil,   nil,
-   nil,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    47,
-   nil,   nil,   nil,   nil,    47,    47,    47,    47,    47,    47,
-   nil,   nil,   nil,    47,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,    47,   nil,   nil,    47,    47,    47,   nil,    47,    47,
-   nil,   nil,    47,    47,    48,    48,    48,   nil,    48,   nil,
-   nil,   nil,    48,    48,   nil,   nil,   nil,    48,   nil,    48,
-    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,   nil,
-   nil,    48,    48,    48,    48,    48,    48,    48,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-    48,    48,    48,    48,    48,    48,    48,    48,   nil,    48,
-    48,    48,   nil,    48,    48,   nil,    48,    48,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,    48,   nil,   nil,    48,    48,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,    48,    48,    48,
-    48,    48,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,
-   nil,    48,    48,   nil,   nil,    48,    48,    50,    50,    50,
-   nil,    50,   nil,   nil,   nil,    50,    50,   nil,   nil,   nil,
-    50,   nil,    50,    50,    50,    50,    50,    50,    50,   nil,
-   nil,   nil,   nil,   nil,    50,    50,    50,    50,    50,    50,
-    50,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,    50,    50,    50,    50,    50,    50,    50,
-    50,   nil,    50,    50,    50,   nil,    50,    50,   nil,    50,
-    50,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,    50,   nil,   nil,    50,    50,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-    50,    50,    50,    50,    50,    50,   nil,   nil,   nil,    50,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-    50,    50,    50,   nil,    50,    50,   nil,   nil,    50,    50,
-    51,    51,    51,   nil,    51,   nil,   nil,   nil,    51,    51,
-   nil,   nil,   nil,    51,   nil,    51,    51,    51,    51,    51,
-    51,    51,   nil,   nil,   nil,   nil,   nil,    51,    51,    51,
-    51,    51,    51,    51,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,    51,    51,    51,    51,
-    51,    51,    51,    51,   nil,    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,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,    51,    51,    51,    51,    51,    51,   nil,
-   nil,   nil,    51,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,    51,    51,    51,   nil,    51,    51,   nil,
-   nil,    51,    51,    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,   nil,
-    53,    53,    53,    53,    53,    53,    53,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,    53,
-    53,    53,    53,    53,    53,    53,    53,   nil,    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,   nil,
-   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,   nil,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,    53,    53,    53,    65,
-    53,    53,   nil,   nil,    53,    53,    65,    65,    65,   nil,
-   nil,    65,    65,    65,  1274,    65,  1274,  1274,  1274,  1274,
-  1274,   nil,   nil,    65,   nil,    65,    65,    65,   nil,   nil,
-  1274,   791,   791,   791,   791,    65,    65,   nil,    65,    65,
-    65,    65,    65,   nil,   nil,   nil,   nil,   791,   791,   791,
-   nil,   nil,  1274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   791,   791,   nil,  1274,  1274,   791,    65,    65,    65,    65,
-    65,    65,    65,    65,    65,    65,    65,    65,    65,    65,
-   nil,   nil,    65,    65,    65,   nil,   nil,    65,   nil,   nil,
-    65,   nil,   nil,    65,    65,   nil,    65,  1274,    65,   nil,
-    65,   nil,    65,    65,    65,    65,    65,    65,    65,   nil,
-    65,   nil,    65,   nil,   791,   791,   791,   791,   791,   791,
-   nil,   nil,   nil,   791,   791,    65,    65,    65,    65,   nil,
-    65,   791,    65,   nil,   791,   791,   791,    65,   791,   791,
-   477,    65,    67,    67,    67,    67,    67,   477,   477,   477,
-    67,    67,   477,   477,   477,    67,   477,    67,    67,    67,
-    67,    67,    67,    67,   477,   477,   477,   477,   nil,    67,
-    67,    67,    67,    67,    67,    67,   477,   477,    67,   477,
-   477,   477,   477,   477,    67,    67,   nil,    67,    67,    67,
-    67,    67,    67,    67,    67,    67,   nil,    67,    67,    67,
-   nil,    67,    67,   nil,    67,    67,    67,   477,   477,   477,
-   477,   477,   477,   477,   477,   477,   477,   477,   477,   477,
-   477,   nil,   nil,   477,   477,   477,    67,   nil,   477,    67,
-   477,   477,    67,    67,   477,   477,    67,   477,    67,   477,
-   nil,   477,    67,   477,   477,   477,   477,   477,   477,   477,
-    67,   477,   477,   477,   nil,    67,    67,    67,    67,    67,
-    67,   nil,   nil,   nil,    67,    67,   477,   477,   nil,   477,
-   nil,   477,    67,   nil,   nil,    67,    67,    67,   477,    67,
-    67,   nil,   477,    67,    67,    72,    72,    72,   nil,    72,
-   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
-    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
-   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
-   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
-    72,    72,    72,   nil,    72,    72,   nil,    72,    72,    72,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
-   nil,   nil,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,    72,    72,
-    72,    72,    72,    72,   nil,   nil,   nil,    72,    72,   nil,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
-    72,   nil,    72,    72,   nil,   nil,    72,    72,    73,    73,
-    73,   nil,    73,   nil,   nil,   nil,    73,    73,   nil,   nil,
-   nil,    73,   nil,    73,    73,    73,    73,    73,    73,    73,
-   nil,   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,
-    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,
-   nil,    73,   nil,   nil,    73,    73,    73,    73,    73,    73,
-    73,    73,   nil,    73,    73,    73,   nil,    73,    73,   nil,
-    73,    73,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    73,   nil,   nil,    73,   nil,   nil,    73,    73,
-   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,    73,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,   nil,
-   nil,    73,    73,    73,    73,    73,    73,   nil,   nil,   nil,
-    73,    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,
-   nil,    73,    73,    73,   nil,    73,    73,   nil,   nil,    73,
-    73,    76,    76,    76,   nil,    76,   nil,   nil,   nil,    76,
-    76,   nil,   nil,   nil,    76,   nil,    76,    76,    76,    76,
-    76,    76,    76,   nil,   nil,   nil,   nil,   nil,    76,    76,
-    76,    76,    76,    76,    76,   nil,   nil,    76,   nil,   nil,
-   nil,   nil,   nil,   nil,    76,   nil,   nil,    76,    76,    76,
-    76,    76,    76,    76,    76,   nil,    76,    76,    76,   nil,
-    76,    76,   nil,    76,    76,    76,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,    76,   nil,
-   nil,    76,    76,   nil,   nil,    76,   nil,   nil,   nil,   nil,
-   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,
-   nil,   nil,   nil,   nil,    76,    76,    76,    76,    76,    76,
-   nil,   nil,   nil,    76,    76,    76,   nil,   nil,   nil,   nil,
-    76,    76,   nil,   nil,    76,    76,    76,   nil,    76,    76,
-   nil,   nil,    76,    76,   132,   132,   132,   132,   132,   nil,
-   nil,   nil,   132,   132,   nil,   nil,   nil,   132,   nil,   132,
-   132,   132,   132,   132,   132,   132,   nil,   nil,   nil,   nil,
-   nil,   132,   132,   132,   132,   132,   132,   132,   nil,   nil,
-   132,   nil,   nil,   nil,   nil,   nil,   132,   132,   132,   132,
-   132,   132,   132,   132,   132,   132,   132,   132,   nil,   132,
-   132,   132,   nil,   132,   132,   nil,   132,   132,   132,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   132,   nil,
-   nil,   132,   nil,   nil,   132,   132,   nil,   nil,   132,   nil,
-   132,   nil,   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   132,   nil,   nil,   nil,   nil,   132,   132,   132,
-   132,   132,   132,   nil,   nil,   nil,   132,   132,   nil,   nil,
-   nil,   nil,   nil,   132,   132,   nil,   nil,   132,   132,   132,
-   nil,   132,   132,   nil,   nil,   132,   132,   137,   137,   137,
-   nil,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
-   137,   nil,   137,   137,   137,   137,   137,   137,   137,   nil,
-   nil,   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,
-   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   nil,
-   137,   nil,   nil,   137,   137,   137,   137,   137,   137,   137,
-   137,   nil,   137,   137,   137,   nil,   137,   137,   nil,   137,
-   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   137,   nil,   nil,   137,   nil,   nil,   137,   137,   nil,
-   nil,   137,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,
-   137,   137,   137,   137,   137,   137,   nil,   nil,   nil,   137,
-   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   137,   137,   137,   nil,   137,   137,   nil,   nil,   137,   137,
-   138,   138,   138,   nil,   138,   nil,   nil,   nil,   138,   138,
-   nil,   nil,   nil,   138,   nil,   138,   138,   138,   138,   138,
-   138,   138,   nil,   nil,   nil,   nil,   nil,   138,   138,   138,
-   138,   138,   138,   138,   nil,   nil,   138,   nil,   nil,   nil,
-   nil,   nil,   nil,   138,   nil,   nil,   138,   138,   138,   138,
-   138,   138,   138,   138,   nil,   138,   138,   138,   nil,   138,
-   138,   nil,   138,   138,   138,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   138,   nil,   nil,   138,   nil,   nil,
-   138,   138,   nil,   nil,   138,   nil,   nil,   nil,   nil,   nil,
-   138,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,
-   nil,   nil,   nil,   138,   138,   138,   138,   138,   138,   nil,
-   nil,   nil,   138,   138,   nil,   nil,   nil,   nil,   nil,   nil,
-   138,   nil,   nil,   138,   138,   138,   nil,   138,   138,   nil,
-   nil,   138,   138,   139,   139,   139,   nil,   139,   nil,   nil,
-   nil,   139,   139,   nil,   nil,   nil,   139,   nil,   139,   139,
-   139,   139,   139,   139,   139,   nil,   nil,   nil,   nil,   nil,
-   139,   139,   139,   139,   139,   139,   139,   nil,   nil,   139,
-   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   139,
-   139,   139,   139,   139,   139,   139,   139,   nil,   139,   139,
-   139,   nil,   139,   139,   nil,   139,   139,   139,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,
-   139,   nil,   nil,   139,   139,   nil,   nil,   139,   nil,   nil,
-   nil,   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   139,   nil,   nil,   nil,   nil,   139,   139,   139,   139,
-   139,   139,   nil,   nil,   nil,   139,   139,   nil,   nil,   nil,
-   nil,   nil,   nil,   139,   nil,   nil,   139,   139,   139,   nil,
-   139,   139,   nil,   nil,   139,   139,   140,   140,   140,   nil,
-   140,   nil,   nil,   nil,   140,   140,   nil,   nil,   nil,   140,
-   nil,   140,   140,   140,   140,   140,   140,   140,   nil,   nil,
-   nil,   nil,   nil,   140,   140,   140,   140,   140,   140,   140,
-   nil,   nil,   140,   nil,   nil,   nil,   nil,   nil,   nil,   140,
-   nil,   nil,   140,   140,   140,   140,   140,   140,   140,   140,
-   nil,   140,   140,   140,   nil,   140,   140,   nil,   140,   140,
-   140,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   140,   nil,   nil,   140,   nil,   nil,   140,   140,   nil,   nil,
-   140,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   140,   nil,   nil,   nil,   nil,   140,
-   140,   140,   140,   140,   140,   nil,   nil,   nil,   140,   140,
-   nil,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,   140,
-   140,   140,   nil,   140,   140,   nil,   nil,   140,   140,   141,
-   141,   141,   141,   141,   nil,   nil,   nil,   141,   141,   nil,
-   nil,   nil,   141,   nil,   141,   141,   141,   141,   141,   141,
-   141,   nil,   nil,   nil,   nil,   nil,   141,   141,   141,   141,
-   141,   141,   141,   nil,   nil,   141,   nil,   nil,   nil,   nil,
-   nil,   141,   141,   nil,   141,   141,   141,   141,   141,   141,
-   141,   141,   141,   nil,   141,   141,   141,   nil,   141,   141,
-   nil,   141,   141,   141,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   141,   nil,   nil,   141,   nil,   nil,   141,
-   141,   nil,   nil,   141,   nil,   141,   nil,   nil,   nil,   141,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   141,   nil,   nil,
-   nil,   nil,   141,   141,   141,   141,   141,   141,   nil,   nil,
-   nil,   141,   141,   nil,   nil,   nil,   nil,   nil,   nil,   141,
-   nil,   nil,   141,   141,   141,   nil,   141,   141,   nil,   nil,
-   141,   141,   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,   nil,   226,
-   226,   226,   226,   226,   226,   226,   nil,   nil,   226,   nil,
-   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
-   226,   226,   226,   226,   226,   226,   nil,   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,   226,   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,   nil,
-   nil,   nil,   226,   nil,   nil,   226,   226,   226,   nil,   226,
-   226,   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,   nil,   227,   227,   227,   227,   227,   227,   227,   nil,
-   nil,   227,   nil,   nil,   nil,   nil,   nil,   nil,   227,   nil,
-   nil,   227,   227,   227,   227,   227,   227,   227,   227,   nil,
-   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,   227,   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,   nil,   nil,   nil,   227,   nil,   nil,   227,   227,
-   227,   nil,   227,   227,   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,   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,   228,   nil,   nil,   nil,
-   nil,   228,   228,   228,   228,   228,   228,   nil,   nil,   nil,
-   228,   228,   nil,   nil,   nil,   nil,   nil,   nil,   228,   nil,
-   nil,   228,   228,   228,   nil,   228,   228,   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,   nil,   229,   229,
-   229,   229,   229,   229,   229,   nil,   nil,   229,   nil,   nil,
-   nil,   nil,   nil,   nil,   229,   nil,   nil,   229,   229,   229,
-   229,   229,   229,   229,   229,   nil,   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   229,   nil,   nil,   229,   229,   229,   nil,   229,   229,
-   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,
-   nil,   230,   230,   230,   230,   230,   230,   230,   nil,   nil,
-   230,   nil,   nil,   nil,   nil,   nil,   nil,   230,   nil,   nil,
-   230,   230,   230,   230,   230,   230,   230,   230,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   230,   nil,   nil,   230,   230,   230,
-   nil,   230,   230,   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,   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,   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,   231,   nil,   231,   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,   nil,   nil,   nil,   231,   nil,   231,
-   231,   231,   231,   nil,   231,   231,   nil,   nil,   231,   231,
-   244,   244,   244,   nil,   244,   nil,   nil,   nil,   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,   244,   nil,
-   nil,   nil,   nil,   244,   244,   244,   244,   244,   244,   nil,
-   nil,   nil,   244,   244,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   244,   244,   244,   nil,   244,   244,   nil,
-   nil,   244,   244,   245,   245,   245,   nil,   245,   nil,   nil,
-   nil,   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,   245,   nil,   nil,   nil,   nil,   245,   245,   245,   245,
-   245,   245,   nil,   nil,   nil,   245,   245,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   245,   245,   245,   nil,
-   245,   245,   nil,   nil,   245,   245,   246,   246,   246,   nil,
-   246,   nil,   nil,   nil,   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,   246,   nil,   nil,   nil,   nil,   246,
-   246,   246,   246,   246,   246,   nil,   nil,   nil,   246,   246,
-   246,   nil,   nil,   nil,   nil,   nil,   246,   nil,   nil,   246,
-   246,   246,   nil,   246,   246,   nil,   nil,   246,   246,   257,
-   257,   257,   nil,   257,   nil,   nil,   nil,   257,   257,   nil,
-   nil,   nil,   257,   nil,   257,   257,   257,   257,   257,   257,
-   257,   nil,   nil,   nil,   nil,   nil,   257,   257,   257,   257,
-   257,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   257,   257,   257,   257,   257,
-   257,   257,   257,   nil,   257,   257,   257,   nil,   257,   257,
-   nil,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,   nil,   257,
-   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   257,   257,   257,   257,   257,   257,   nil,   nil,
-   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   257,   257,   257,   nil,   257,   257,   nil,   nil,
-   257,   257,   264,   264,   264,   nil,   264,   nil,   nil,   nil,
-   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,   nil,   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,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   264,   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,
-   264,   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,
-   264,   nil,   nil,   264,   264,   265,   265,   265,   nil,   265,
-   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,   265,   nil,
-   265,   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,
-   nil,   nil,   265,   265,   265,   265,   265,   265,   265,   nil,
-   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
-   nil,   265,   265,   265,   265,   265,   265,   265,   265,   nil,
-   265,   265,   265,   nil,   265,   265,   nil,   265,   265,   265,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,
-   nil,   nil,   265,   nil,   nil,   265,   265,   nil,   nil,   265,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,   265,   265,
-   265,   265,   265,   265,   nil,   nil,   nil,   265,   265,   nil,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,
-   265,   nil,   265,   265,   nil,   nil,   265,   265,   266,   266,
-   266,   nil,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,
-   nil,   266,   nil,   266,   266,   266,   266,   266,   266,   266,
-   nil,   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,
-   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
-   nil,   266,   nil,   nil,   266,   266,   266,   266,   266,   266,
-   266,   266,   nil,   266,   266,   266,   nil,   266,   266,   nil,
-   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,   266,   266,
-   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,
-   nil,   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,
-   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   266,   266,   266,   nil,   266,   266,   nil,   nil,   266,
-   266,   267,   267,   267,   nil,   267,   nil,   nil,   nil,   267,
-   267,   nil,   nil,   nil,   267,   nil,   267,   267,   267,   267,
-   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   267,   267,
-   267,   267,   267,   267,   267,   nil,   nil,   267,   nil,   nil,
-   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,
-   267,   267,   267,   267,   267,   nil,   267,   267,   267,   nil,
-   267,   267,   nil,   267,   267,   267,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,
-   nil,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,
-   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   267,   267,   267,   nil,   267,   267,
-   nil,   nil,   267,   267,   268,   268,   268,   nil,   268,   nil,
-   nil,   nil,   268,   268,   nil,   nil,   nil,   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,   268,   268,   268,   268,   268,   268,   nil,   268,
-   268,   268,   nil,   268,   268,   nil,   268,   268,   268,   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,   268,   nil,   nil,   268,   nil,
-   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,   268,   268,   268,
-   nil,   268,   268,   nil,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,
-   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,
-   269,   nil,   nil,   269,   269,   269,   269,   269,   269,   269,
-   269,   nil,   269,   269,   269,   nil,   269,   269,   nil,   269,
-   269,   269,   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,   269,   nil,
-   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,
-   269,   269,   269,   nil,   269,   269,   nil,   nil,   269,   269,
-   270,   270,   270,   nil,   270,   nil,   nil,   nil,   270,   270,
-   nil,   nil,   nil,   270,   nil,   270,   270,   270,   270,   270,
-   270,   270,   nil,   nil,   nil,   nil,   nil,   270,   270,   270,
-   270,   270,   270,   270,   nil,   nil,   270,   nil,   nil,   nil,
-   nil,   nil,   nil,   270,   nil,   nil,   270,   270,   270,   270,
-   270,   270,   270,   270,   nil,   270,   270,   270,   nil,   270,
-   270,   nil,   270,   270,   270,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   270,   nil,   nil,   270,   nil,   nil,
-   270,   270,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,
-   270,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,
-   nil,   nil,   nil,   270,   270,   270,   270,   270,   270,   nil,
-   nil,   nil,   270,   270,   nil,   nil,   nil,   nil,   nil,   nil,
-   270,   nil,   nil,   270,   270,   270,   nil,   270,   270,   nil,
-   nil,   270,   270,   271,   271,   271,   nil,   271,   nil,   nil,
-   nil,   271,   271,   nil,   nil,   nil,   271,   nil,   271,   271,
-   271,   271,   271,   271,   271,   nil,   nil,   nil,   nil,   nil,
-   271,   271,   271,   271,   271,   271,   271,   nil,   nil,   271,
-   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,
-   271,   271,   271,   271,   271,   271,   271,   nil,   271,   271,
-   271,   nil,   271,   271,   nil,   271,   271,   271,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,
-   271,   nil,   nil,   271,   271,   nil,   nil,   271,   nil,   nil,
-   nil,   nil,   nil,   271,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   271,   nil,   nil,   nil,   nil,   271,   271,   271,   271,
-   271,   271,   nil,   nil,   nil,   271,   271,   nil,   nil,   nil,
-   nil,   nil,   nil,   271,   nil,   nil,   271,   271,   271,   nil,
-   271,   271,   nil,   nil,   271,   271,   272,   272,   272,   nil,
-   272,   nil,   nil,   nil,   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,
-   nil,   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,   nil,   nil,   nil,   nil,   272,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   272,   nil,   nil,   nil,   nil,   272,
-   272,   272,   272,   272,   272,   nil,   nil,   nil,   272,   272,
-   nil,   nil,   nil,   nil,   nil,   nil,   272,   nil,   nil,   272,
-   272,   272,   nil,   272,   272,   nil,   nil,   272,   272,   273,
-   273,   273,   nil,   273,   nil,   nil,   nil,   273,   273,   nil,
-   nil,   nil,   273,   nil,   273,   273,   273,   273,   273,   273,
-   273,   nil,   nil,   nil,   nil,   nil,   273,   273,   273,   273,
-   273,   273,   273,   nil,   nil,   273,   nil,   nil,   nil,   nil,
-   nil,   nil,   273,   nil,   nil,   273,   273,   273,   273,   273,
-   273,   273,   273,   nil,   273,   273,   273,   nil,   273,   273,
-   nil,   273,   273,   273,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   273,   nil,   nil,   273,   nil,   nil,   273,
-   273,   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   273,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,
-   nil,   nil,   273,   273,   273,   273,   273,   273,   nil,   nil,
-   nil,   273,   273,   nil,   nil,   nil,   nil,   nil,   nil,   273,
-   nil,   nil,   273,   273,   273,   nil,   273,   273,   nil,   nil,
-   273,   273,   274,   274,   274,   nil,   274,   nil,   nil,   nil,
-   274,   274,   nil,   nil,   nil,   274,   nil,   274,   274,   274,
-   274,   274,   274,   274,   nil,   nil,   nil,   nil,   nil,   274,
-   274,   274,   274,   274,   274,   274,   nil,   nil,   274,   nil,
-   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,
-   274,   274,   274,   274,   274,   274,   nil,   274,   274,   274,
-   nil,   274,   274,   nil,   274,   274,   274,   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,   274,   274,   nil,   nil,   274,   nil,   nil,   nil,
-   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   274,   nil,   nil,   nil,   nil,   274,   274,   274,   274,   274,
-   274,   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   nil,
-   nil,   nil,   274,   nil,   nil,   274,   274,   274,   nil,   274,
-   274,   nil,   nil,   274,   274,   275,   275,   275,   nil,   275,
-   nil,   nil,   nil,   275,   275,   nil,   nil,   nil,   275,   nil,
-   275,   275,   275,   275,   275,   275,   275,   nil,   nil,   nil,
-   nil,   nil,   275,   275,   275,   275,   275,   275,   275,   nil,
-   nil,   275,   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,
-   nil,   275,   275,   275,   275,   275,   275,   275,   275,   nil,
-   275,   275,   275,   nil,   275,   275,   nil,   275,   275,   275,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   275,
-   nil,   nil,   275,   nil,   nil,   275,   275,   nil,   nil,   275,
-   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   275,   nil,   nil,   nil,   nil,   275,   275,
-   275,   275,   275,   275,   nil,   nil,   nil,   275,   275,   nil,
-   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   275,   275,
-   275,   nil,   275,   275,   nil,   nil,   275,   275,   276,   276,
-   276,   nil,   276,   nil,   nil,   nil,   276,   276,   nil,   nil,
-   nil,   276,   nil,   276,   276,   276,   276,   276,   276,   276,
-   nil,   nil,   nil,   nil,   nil,   276,   276,   276,   276,   276,
-   276,   276,   nil,   nil,   276,   nil,   nil,   nil,   nil,   nil,
-   nil,   276,   nil,   nil,   276,   276,   276,   276,   276,   276,
-   276,   276,   nil,   276,   276,   276,   nil,   276,   276,   nil,
-   276,   276,   276,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   276,   nil,   nil,   276,   nil,   nil,   276,   276,
-   nil,   nil,   276,   nil,   nil,   nil,   nil,   nil,   276,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   276,   nil,   nil,   nil,
-   nil,   276,   276,   276,   276,   276,   276,   nil,   nil,   nil,
-   276,   276,   nil,   nil,   nil,   nil,   nil,   nil,   276,   nil,
-   nil,   276,   276,   276,   nil,   276,   276,   nil,   nil,   276,
-   276,   277,   277,   277,   nil,   277,   nil,   nil,   nil,   277,
-   277,   nil,   nil,   nil,   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,   277,
-   277,   277,   277,   277,   277,   nil,   277,   277,   277,   nil,
-   277,   277,   nil,   277,   277,   277,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   277,   nil,   nil,   277,   nil,
-   nil,   277,   277,   nil,   nil,   277,   nil,   nil,   nil,   nil,
-   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,   277,   277,   nil,   277,   277,
-   nil,   nil,   277,   277,   278,   278,   278,   nil,   278,   nil,
-   nil,   nil,   278,   278,   nil,   nil,   nil,   278,   nil,   278,
-   278,   278,   278,   278,   278,   278,   nil,   nil,   nil,   nil,
-   nil,   278,   278,   278,   278,   278,   278,   278,   nil,   nil,
-   278,   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
-   278,   278,   278,   278,   278,   278,   278,   278,   nil,   278,
-   278,   278,   nil,   278,   278,   nil,   278,   278,   278,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,
-   nil,   278,   nil,   nil,   278,   278,   nil,   nil,   278,   nil,
-   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   278,   nil,   nil,   nil,   nil,   278,   278,   278,
-   278,   278,   278,   nil,   nil,   nil,   278,   278,   nil,   nil,
-   nil,   nil,   nil,   nil,   278,   nil,   nil,   278,   278,   278,
-   nil,   278,   278,   nil,   nil,   278,   278,   279,   279,   279,
-   nil,   279,   nil,   nil,   nil,   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,   279,   nil,   nil,   nil,   nil,
-   279,   279,   279,   279,   279,   279,   nil,   nil,   nil,   279,
-   279,   nil,   nil,   nil,   nil,   nil,   nil,   279,   nil,   nil,
-   279,   279,   279,   nil,   279,   279,   nil,   nil,   279,   279,
-   280,   280,   280,   nil,   280,   nil,   nil,   nil,   280,   280,
-   nil,   nil,   nil,   280,   nil,   280,   280,   280,   280,   280,
-   280,   280,   nil,   nil,   nil,   nil,   nil,   280,   280,   280,
-   280,   280,   280,   280,   nil,   nil,   280,   nil,   nil,   nil,
-   nil,   nil,   nil,   280,   nil,   nil,   280,   280,   280,   280,
-   280,   280,   280,   280,   nil,   280,   280,   280,   nil,   280,
-   280,   nil,   280,   280,   280,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   280,   nil,   nil,   280,   nil,   nil,
-   280,   280,   nil,   nil,   280,   nil,   nil,   nil,   nil,   nil,
-   280,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,
-   nil,   nil,   nil,   280,   280,   280,   280,   280,   280,   nil,
-   nil,   nil,   280,   280,   nil,   nil,   nil,   nil,   nil,   nil,
-   280,   nil,   nil,   280,   280,   280,   nil,   280,   280,   nil,
-   nil,   280,   280,   281,   281,   281,   nil,   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,   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,   281,   nil,   nil,   nil,   nil,   281,   281,   281,   281,
-   281,   281,   nil,   nil,   nil,   281,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   281,   nil,   nil,   281,   281,   281,   nil,
-   281,   281,   nil,   nil,   281,   281,   282,   282,   282,   nil,
-   282,   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,   282,
-   nil,   282,   282,   282,   282,   282,   282,   282,   nil,   nil,
-   nil,   nil,   nil,   282,   282,   282,   282,   282,   282,   282,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   nil,   282,   282,   282,   282,   282,   282,   282,   282,
-   nil,   282,   282,   282,   nil,   282,   282,   nil,   282,   282,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   282,   nil,   nil,   282,   282,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   282,
-   282,   282,   282,   282,   282,   nil,   nil,   nil,   282,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   282,
-   282,   282,   nil,   282,   282,   nil,   nil,   282,   282,   283,
-   283,   283,   nil,   283,   nil,   nil,   nil,   283,   283,   nil,
-   nil,   nil,   283,   nil,   283,   283,   283,   283,   283,   283,
-   283,   nil,   nil,   nil,   nil,   nil,   283,   283,   283,   283,
-   283,   283,   283,   nil,   nil,   283,   nil,   nil,   nil,   nil,
-   nil,   nil,   283,   nil,   nil,   283,   283,   283,   283,   283,
-   283,   283,   283,   nil,   283,   283,   283,   nil,   283,   283,
-   nil,   283,   283,   283,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   283,   nil,   nil,   283,   nil,   nil,   283,
-   283,   nil,   nil,   283,   nil,   nil,   nil,   nil,   nil,   283,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,
-   nil,   nil,   283,   283,   283,   283,   283,   283,   nil,   nil,
-   nil,   283,   283,   nil,   nil,   nil,   nil,   nil,   nil,   283,
-   nil,   nil,   283,   283,   283,   nil,   283,   283,   nil,   nil,
-   283,   283,   284,   284,   284,   nil,   284,   nil,   nil,   nil,
-   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,
-   284,   nil,   nil,   nil,   nil,   284,   284,   284,   284,   284,
-   284,   nil,   nil,   nil,   284,   284,   nil,   nil,   nil,   nil,
-   nil,   nil,   284,   nil,   nil,   284,   284,   284,   nil,   284,
-   284,   nil,   nil,   284,   284,   285,   285,   285,   nil,   285,
-   nil,   nil,   nil,   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,   285,   nil,   nil,   nil,   nil,   285,   285,
-   285,   285,   285,   285,   nil,   nil,   nil,   285,   285,   nil,
-   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,   285,   285,
-   285,   nil,   285,   285,   nil,   nil,   285,   285,   290,   290,
-   290,   nil,   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,
-   nil,   290,   nil,   nil,   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,   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,   nil,   nil,   nil,   nil,   nil,   nil,   290,   nil,
-   nil,   290,   290,   290,   nil,   290,   290,   nil,   nil,   290,
-   290,   314,   314,   314,   nil,   314,   nil,   nil,   nil,   314,
-   314,   nil,   nil,   nil,   314,   nil,   314,   314,   314,   314,
-   314,   314,   314,   nil,   nil,   nil,   nil,   nil,   314,   314,
-   314,   314,   314,   314,   314,   nil,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,   314,   314,
-   314,   314,   314,   314,   314,   314,   314,   314,   314,   nil,
-   314,   314,   nil,   314,   314,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,   nil,
-   nil,   314,   314,   nil,   nil,   314,   nil,   314,   nil,   314,
-   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   314,
-   nil,   nil,   nil,   nil,   314,   314,   314,   314,   314,   314,
-   nil,   nil,   nil,   314,   314,   nil,   nil,   nil,   nil,   nil,
-   nil,   314,   nil,   314,   314,   314,   314,   nil,   314,   314,
-   nil,   nil,   314,   314,   315,   315,   315,   nil,   315,   nil,
-   nil,   nil,   315,   315,   nil,   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,   315,   315,
-   315,   315,   nil,   315,   315,   nil,   315,   315,   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,
-   315,   nil,   315,   nil,   315,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   315,   nil,   nil,   nil,   nil,   315,   315,   315,
-   315,   315,   315,   nil,   nil,   nil,   315,   315,   nil,   nil,
-   nil,   nil,   nil,   nil,   315,   nil,   315,   315,   315,   315,
-   nil,   315,   315,   nil,   nil,   315,   315,   324,   324,   324,
-   nil,   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,   nil,
-   324,   nil,   nil,   324,   324,   324,   324,   324,   324,   324,
-   324,   324,   324,   324,   324,   nil,   324,   324,   nil,   324,
-   324,   324,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   nil,   324,   nil,   nil,   324,   324,   nil,
-   nil,   324,   nil,   324,   nil,   324,   nil,   324,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   324,   nil,   nil,   nil,   nil,
-   324,   324,   324,   324,   324,   324,   nil,   nil,   nil,   324,
-   324,   324,   nil,   nil,   nil,   nil,   nil,   324,   nil,   324,
-   324,   324,   324,   nil,   324,   324,   nil,   nil,   324,   324,
-   331,   331,   331,   nil,   331,   nil,   nil,   nil,   331,   331,
-   nil,   nil,   nil,   331,   nil,   331,   331,   331,   331,   331,
-   331,   331,   nil,   nil,   nil,   nil,   nil,   331,   331,   331,
-   331,   331,   331,   331,   nil,   nil,   331,   nil,   nil,   nil,
-   nil,   nil,   nil,   331,   nil,   nil,   331,   331,   331,   331,
-   331,   331,   331,   331,   nil,   331,   331,   331,   nil,   331,
-   331,   nil,   331,   331,   331,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   331,   nil,   nil,   331,   nil,   nil,
-   331,   331,   nil,   nil,   331,   nil,   nil,   nil,   nil,   nil,
-   331,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,
-   nil,   nil,   nil,   331,   331,   331,   331,   331,   331,   nil,
-   nil,   nil,   331,   331,   nil,   nil,   nil,   nil,   nil,   nil,
-   331,   nil,   nil,   331,   331,   331,   nil,   331,   331,   nil,
-   nil,   331,   331,   333,   333,   333,   nil,   333,   nil,   nil,
-   nil,   333,   333,   nil,   nil,   nil,   333,   nil,   333,   333,
-   333,   333,   333,   333,   333,   nil,   nil,   nil,   nil,   nil,
-   333,   333,   333,   333,   333,   333,   333,   nil,   nil,   333,
-   nil,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   333,
-   333,   333,   333,   333,   333,   333,   333,   nil,   333,   333,
-   333,   nil,   333,   333,   nil,   333,   333,   333,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,
-   333,   nil,   nil,   333,   333,   nil,   nil,   333,   nil,   nil,
-   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   333,   nil,   nil,   nil,   nil,   333,   333,   333,   333,
-   333,   333,   nil,   nil,   nil,   333,   333,   nil,   nil,   nil,
-   nil,   nil,   nil,   333,   nil,   nil,   333,   333,   333,   nil,
-   333,   333,   nil,   nil,   333,   333,   336,   336,   336,   nil,
-   336,   nil,   nil,   nil,   336,   336,   nil,   nil,   nil,   336,
-   nil,   336,   336,   336,   336,   336,   336,   336,   nil,   nil,
-   nil,   nil,   nil,   336,   336,   336,   336,   336,   336,   336,
-   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,
-   nil,   nil,   336,   336,   336,   336,   336,   336,   336,   336,
-   nil,   336,   336,   336,   nil,   336,   336,   nil,   336,   336,
-   336,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   336,   nil,   nil,   336,   nil,   nil,   336,   336,   nil,   nil,
-   336,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   336,   nil,   nil,   nil,   nil,   336,
-   336,   336,   336,   336,   336,   nil,   nil,   nil,   336,   336,
-   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,   336,
-   336,   336,   nil,   336,   336,   nil,   nil,   336,   336,   337,
-   337,   337,   nil,   337,   nil,   nil,   nil,   337,   337,   nil,
-   nil,   nil,   337,   nil,   337,   337,   337,   337,   337,   337,
-   337,   nil,   nil,   nil,   nil,   nil,   337,   337,   337,   337,
-   337,   337,   337,   nil,   nil,   337,   nil,   nil,   nil,   nil,
-   nil,   nil,   337,   nil,   nil,   337,   337,   337,   337,   337,
-   337,   337,   337,   nil,   337,   337,   337,   nil,   337,   337,
-   nil,   337,   337,   337,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   337,   nil,   nil,   337,   nil,   nil,   337,
-   337,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   337,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   337,   nil,   nil,
-   nil,   nil,   337,   337,   337,   337,   337,   337,   nil,   nil,
-   nil,   337,   337,   nil,   nil,   nil,   nil,   nil,   nil,   337,
-   nil,   nil,   337,   337,   337,   nil,   337,   337,   nil,   nil,
-   337,   337,   343,   343,   343,   343,   343,   nil,   nil,   nil,
-   343,   343,   nil,   nil,   nil,   343,   nil,   343,   343,   343,
-   343,   343,   343,   343,   nil,   nil,   nil,   nil,   nil,   343,
-   343,   343,   343,   343,   343,   343,   nil,   nil,   343,   nil,
-   nil,   nil,   nil,   nil,   343,   343,   nil,   343,   343,   343,
-   343,   343,   343,   343,   343,   343,   nil,   343,   343,   343,
-   nil,   343,   343,   nil,   343,   343,   343,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,
-   nil,   nil,   343,   343,   nil,   nil,   343,   nil,   343,   nil,
-   nil,   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   343,   nil,   nil,   nil,   nil,   343,   343,   343,   343,   343,
-   343,   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,   nil,
-   nil,   nil,   343,   nil,   nil,   343,   343,   343,   nil,   343,
-   343,   nil,   nil,   343,   343,   379,   379,   379,   nil,   379,
-   nil,   nil,   nil,   379,   379,   nil,   nil,   nil,   379,   nil,
-   379,   379,   379,   379,   379,   379,   379,   nil,   nil,   nil,
-   nil,   nil,   379,   379,   379,   379,   379,   379,   379,   nil,
-   nil,   379,   nil,   nil,   nil,   nil,   nil,   nil,   379,   nil,
-   nil,   379,   379,   379,   379,   379,   379,   379,   379,   nil,
-   379,   379,   379,   nil,   379,   379,   nil,   379,   379,   379,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   379,
-   nil,   nil,   379,   nil,   nil,   379,   379,   nil,   nil,   379,
-   nil,   nil,   nil,   nil,   nil,   379,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   379,   nil,   nil,   nil,   nil,   379,   379,
-   379,   379,   379,   379,   nil,   nil,   nil,   379,   379,   nil,
-   nil,   nil,   nil,   nil,   nil,   379,   nil,   nil,   379,   379,
-   379,   nil,   379,   379,   nil,   nil,   379,   379,   381,   381,
-   381,   nil,   381,   nil,   nil,   nil,   381,   381,   nil,   nil,
-   nil,   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,   381,   381,   381,   381,
-   381,   381,   nil,   381,   381,   381,   nil,   381,   381,   nil,
-   381,   381,   381,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   381,   nil,   nil,   381,   381,   nil,   381,   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,   nil,   nil,   nil,   381,   nil,
-   nil,   381,   381,   381,   nil,   381,   381,   nil,   nil,   381,
-   381,   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,   nil,   385,   385,
-   385,   385,   385,   385,   385,   nil,   nil,   385,   nil,   nil,
-   nil,   nil,   nil,   nil,   385,   nil,   nil,   385,   385,   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,   nil,
-   nil,   385,   385,   nil,   nil,   385,   nil,   385,   nil,   nil,
-   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   385,   nil,   385,   385,   385,   385,   nil,   385,   385,
-   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,
-   nil,   386,   386,   386,   386,   386,   386,   386,   nil,   nil,
-   386,   nil,   nil,   nil,   nil,   nil,   nil,   386,   nil,   nil,
-   386,   386,   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,   nil,   nil,   386,   386,   nil,   nil,   386,   nil,
-   nil,   nil,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   386,   nil,   386,   386,   386,   386,
-   nil,   386,   386,   nil,   nil,   386,   386,   391,   391,   391,
-   nil,   391,   nil,   nil,   nil,   391,   391,   nil,   nil,   nil,
-   391,   nil,   391,   391,   391,   391,   391,   391,   391,   nil,
-   nil,   nil,   nil,   nil,   391,   391,   391,   391,   391,   391,
-   391,   nil,   nil,   391,   nil,   nil,   nil,   nil,   nil,   nil,
-   391,   nil,   nil,   391,   391,   391,   391,   391,   391,   391,
-   391,   nil,   391,   391,   391,   nil,   391,   391,   nil,   391,
-   391,   391,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   391,   nil,   nil,   391,   nil,   nil,   391,   391,   nil,
-   nil,   391,   nil,   nil,   nil,   nil,   nil,   391,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   391,   nil,   nil,   nil,   nil,
-   391,   391,   391,   391,   391,   391,   nil,   nil,   nil,   391,
-   391,   nil,   nil,   nil,   nil,   nil,   nil,   391,   nil,   nil,
-   391,   391,   391,   nil,   391,   391,   nil,   nil,   391,   391,
-   452,   452,   452,   nil,   452,   nil,   nil,   nil,   452,   452,
-   nil,   nil,   nil,   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,   452,   452,
-   452,   452,   452,   452,   nil,   452,   452,   452,   nil,   452,
-   452,   nil,   452,   452,   452,   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,   452,   nil,   nil,   452,   nil,   nil,   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,   nil,   nil,   nil,
-   452,   nil,   nil,   452,   452,   452,   486,   452,   452,   nil,
-   nil,   452,   452,   486,   486,   486,   nil,   nil,   486,   486,
-   486,  1292,   486,  1292,  1292,  1292,  1292,  1292,   nil,   nil,
-   486,   486,   486,   486,   486,   nil,   nil,  1292,   nil,   nil,
-   nil,   nil,   486,   486,   nil,   486,   486,   486,   486,   486,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1292,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1292,  1292,   nil,   486,   486,   486,   486,   486,   486,   486,
-   486,   486,   486,   486,   486,   486,   486,   nil,   nil,   486,
-   486,   486,   nil,   nil,   486,   nil,   nil,   486,   nil,   nil,
-   486,   486,   nil,   486,  1292,   486,   nil,   486,   nil,   486,
-   486,   486,   486,   486,   486,   486,   nil,   486,   486,   486,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   486,   486,   486,   486,   nil,   486,   487,   486,
-   nil,   nil,   nil,   nil,   486,   487,   487,   487,   486,   nil,
-   487,   487,   487,   nil,   487,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   487,   487,   487,   487,   487,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   487,   487,   nil,   487,   487,   487,
-   487,   487,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   487,   487,   487,   487,   487,
-   487,   487,   487,   487,   487,   487,   487,   487,   487,   nil,
-   nil,   487,   487,   487,   nil,   nil,   487,   nil,   nil,   487,
-   nil,   nil,   487,   487,   nil,   487,   nil,   487,   nil,   487,
-   nil,   487,   487,   487,   487,   487,   487,   487,   nil,   487,
-   487,   487,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   487,   487,   487,   487,   nil,   487,
-   nil,   487,   nil,   488,   488,   488,   487,   488,   nil,   nil,
-   487,   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,   nil,   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,   nil,   nil,   488,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   488,   nil,   nil,   nil,   nil,   488,   488,   488,   488,
-   488,   488,   nil,   nil,   nil,   488,   488,   nil,   nil,   nil,
-   nil,   nil,   nil,   488,   nil,   nil,   488,   488,   488,   nil,
-   488,   488,   nil,   nil,   488,   488,   514,   514,   514,   nil,
-   514,   nil,   nil,   nil,   514,   514,   nil,   nil,   nil,   514,
-   nil,   514,   514,   514,   514,   514,   514,   514,   nil,   nil,
-   nil,   nil,   nil,   514,   514,   514,   514,   514,   514,   514,
-   nil,   nil,   514,   nil,   nil,   nil,   nil,   nil,   nil,   514,
-   nil,   nil,   514,   514,   514,   514,   514,   514,   514,   514,
-   nil,   514,   514,   514,   nil,   514,   514,   nil,   514,   514,
-   514,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   514,   nil,   nil,   514,   nil,   nil,   514,   514,   nil,   nil,
-   514,   nil,   nil,   nil,   nil,   nil,   514,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   514,   nil,   nil,   nil,   nil,   514,
-   514,   514,   514,   514,   514,   nil,   nil,   nil,   514,   514,
-   nil,   nil,   nil,   nil,   nil,   nil,   514,   nil,   nil,   514,
-   514,   514,   nil,   514,   514,   nil,   nil,   514,   514,   527,
-   527,   527,   nil,   527,   nil,   nil,   nil,   527,   527,   nil,
-   nil,   nil,   527,   nil,   527,   527,   527,   527,   527,   527,
-   527,   nil,   nil,   nil,   nil,   nil,   527,   527,   527,   527,
-   527,   527,   527,   nil,   nil,   527,   nil,   nil,   nil,   nil,
-   nil,   nil,   527,   nil,   nil,   527,   527,   527,   527,   527,
-   527,   527,   527,   nil,   527,   527,   527,   nil,   527,   527,
-   nil,   527,   527,   527,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   527,   nil,   nil,   527,   nil,   nil,   527,
-   527,   nil,   nil,   527,   nil,   nil,   nil,   nil,   nil,   527,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   527,   nil,   nil,
-   nil,   nil,   527,   527,   527,   527,   527,   527,   nil,   nil,
-   nil,   527,   527,   nil,   nil,   nil,   nil,   nil,   nil,   527,
-   nil,   nil,   527,   527,   527,   nil,   527,   527,   nil,   nil,
-   527,   527,   537,   537,   537,   nil,   537,   nil,   nil,   nil,
-   537,   537,   nil,   nil,   nil,   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,
-   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,   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,   nil,
-   nil,   nil,   537,   nil,   537,   537,   537,   537,   nil,   537,
-   537,   nil,   nil,   537,   537,   539,   539,   539,   nil,   539,
-   nil,   nil,   nil,   539,   539,   nil,   nil,   nil,   539,   nil,
-   539,   539,   539,   539,   539,   539,   539,   nil,   nil,   nil,
-   nil,   nil,   539,   539,   539,   539,   539,   539,   539,   nil,
-   nil,   539,   nil,   nil,   nil,   nil,   nil,   nil,   539,   nil,
-   nil,   539,   539,   539,   539,   539,   539,   539,   539,   nil,
-   539,   539,   539,   nil,   539,   539,   nil,   539,   539,   539,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   539,
-   nil,   nil,   539,   nil,   nil,   539,   539,   nil,   nil,   539,
-   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   539,   nil,   nil,   nil,   nil,   539,   539,
-   539,   539,   539,   539,   nil,   nil,   nil,   539,   539,   nil,
-   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,   539,   539,
-   539,   nil,   539,   539,   nil,   nil,   539,   539,   540,   540,
-   540,   nil,   540,   nil,   nil,   nil,   540,   540,   nil,   nil,
-   nil,   540,   nil,   540,   540,   540,   540,   540,   540,   540,
-   nil,   nil,   nil,   nil,   nil,   540,   540,   540,   540,   540,
-   540,   540,   nil,   nil,   540,   nil,   nil,   nil,   nil,   nil,
-   nil,   540,   nil,   nil,   540,   540,   540,   540,   540,   540,
-   540,   540,   nil,   540,   540,   540,   nil,   540,   540,   nil,
-   540,   540,   540,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   540,   nil,   nil,   540,   nil,   nil,   540,   540,
-   nil,   nil,   540,   nil,   nil,   nil,   nil,   nil,   540,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   540,   nil,   nil,   nil,
-   nil,   540,   540,   540,   540,   540,   540,   nil,   nil,   nil,
-   540,   540,   nil,   nil,   nil,   nil,   nil,   nil,   540,   nil,
-   nil,   540,   540,   540,   nil,   540,   540,   nil,   nil,   540,
-   540,   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,   nil,   541,   541,
-   541,   541,   541,   541,   541,   nil,   nil,   541,   nil,   nil,
-   nil,   nil,   nil,   nil,   541,   nil,   nil,   541,   541,   541,
-   541,   541,   541,   541,   541,   nil,   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   541,   nil,   nil,   541,   541,   541,   nil,   541,   541,
-   nil,   nil,   541,   541,   572,   572,   572,   nil,   572,   nil,
-   nil,   nil,   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,   nil,   572,   nil,   nil,
-   572,   572,   572,   572,   572,   572,   572,   572,   nil,   572,
-   572,   572,   nil,   572,   572,   nil,   572,   572,   572,   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,   572,   nil,   nil,   572,   nil,
-   nil,   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,   572,   572,
-   575,   572,   572,   nil,   nil,   572,   572,   575,   575,   575,
-   nil,   nil,   575,   575,   575,   nil,   575,   985,   985,   985,
-   985,   nil,   nil,   nil,   575,   575,   575,   nil,   nil,   nil,
-   nil,   nil,   nil,   985,   985,   985,   575,   575,   nil,   575,
-   575,   575,   575,   575,   nil,   nil,   985,   985,   nil,   nil,
-   nil,   985,   nil,   nil,   nil,   nil,   nil,   733,   nil,   733,
-   733,   733,   733,   733,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   733,   nil,   nil,   nil,   nil,   575,   nil,
-   nil,   nil,   nil,   nil,   nil,   575,   nil,   nil,   nil,   nil,
-   575,   575,   nil,   nil,   nil,   733,   nil,   nil,   nil,   nil,
-   985,   985,   985,   985,   985,   985,   733,   733,   nil,   985,
-   985,   nil,   575,   575,   nil,   nil,   nil,   985,   nil,   nil,
-   985,   985,   985,   nil,   985,   985,   575,   nil,   580,   580,
-   580,   575,   580,   nil,   nil,   nil,   580,   580,   575,   nil,
-   733,   580,   575,   580,   580,   580,   580,   580,   580,   580,
-   733,   nil,   nil,   nil,   nil,   580,   580,   580,   580,   580,
-   580,   580,   nil,   nil,   580,   nil,   nil,   nil,   nil,   nil,
-   nil,   580,   nil,   nil,   580,   580,   580,   580,   580,   580,
-   580,   580,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   580,   nil,
-   nil,   580,   580,   580,   nil,   580,   580,   nil,   nil,   580,
-   580,   590,   590,   590,   nil,   590,   nil,   nil,   nil,   590,
-   590,   nil,   nil,   nil,   590,   nil,   590,   590,   590,   590,
-   590,   590,   590,   nil,   nil,   nil,   nil,   nil,   590,   590,
-   590,   590,   590,   590,   590,   nil,   nil,   590,   nil,   nil,
-   nil,   nil,   nil,   nil,   590,   nil,   nil,   590,   590,   590,
-   590,   590,   590,   590,   590,   590,   590,   590,   590,   nil,
-   590,   590,   nil,   590,   590,   590,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   590,   nil,   nil,   590,   nil,
-   nil,   590,   590,   nil,   nil,   590,   nil,   590,   nil,   590,
-   nil,   590,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   590,
-   nil,   nil,   nil,   nil,   590,   590,   590,   590,   590,   590,
-   nil,   nil,   nil,   590,   590,   nil,   nil,   nil,   nil,   nil,
-   nil,   590,   nil,   590,   590,   590,   590,   nil,   590,   590,
-   nil,   nil,   590,   590,   593,   593,   593,   nil,   593,   nil,
-   nil,   nil,   593,   593,   nil,   nil,   nil,   593,   nil,   593,
-   593,   593,   593,   593,   593,   593,   nil,   nil,   nil,   nil,
-   nil,   593,   593,   593,   593,   593,   593,   593,   nil,   nil,
-   593,   nil,   nil,   nil,   nil,   nil,   nil,   593,   nil,   nil,
-   593,   593,   593,   593,   593,   593,   593,   593,   593,   593,
-   593,   593,   nil,   593,   593,   nil,   593,   593,   593,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   593,   nil,
-   nil,   593,   nil,   nil,   593,   593,   nil,   nil,   593,   nil,
-   nil,   nil,   593,   nil,   593,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   593,   nil,   nil,   nil,   nil,   593,   593,   593,
-   593,   593,   593,   nil,   nil,   nil,   593,   593,   nil,   nil,
-   nil,   nil,   nil,   nil,   593,   nil,   593,   593,   593,   593,
-   nil,   593,   593,   nil,   nil,   593,   593,   595,   595,   595,
-   nil,   595,   nil,   nil,   nil,   595,   595,   nil,   nil,   nil,
-   595,   nil,   595,   595,   595,   595,   595,   595,   595,   nil,
-   nil,   nil,   nil,   nil,   595,   595,   595,   595,   595,   595,
-   595,   nil,   nil,   595,   nil,   nil,   nil,   nil,   nil,   nil,
-   595,   nil,   nil,   595,   595,   595,   595,   595,   595,   595,
-   595,   nil,   595,   595,   595,   nil,   595,   595,   nil,   595,
-   595,   595,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   595,   nil,   nil,   595,   nil,   nil,   595,   595,   nil,
-   nil,   595,   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,   nil,   nil,
-   595,   595,   595,   595,   595,   595,   nil,   nil,   nil,   595,
-   595,   nil,   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,
-   595,   595,   595,   nil,   595,   595,   nil,   nil,   595,   595,
-   601,   601,   601,   601,   601,   nil,   nil,   nil,   601,   601,
-   nil,   nil,   nil,   601,   nil,   601,   601,   601,   601,   601,
-   601,   601,   nil,   nil,   nil,   nil,   nil,   601,   601,   601,
-   601,   601,   601,   601,   nil,   nil,   601,   nil,   nil,   nil,
-   nil,   nil,   601,   601,   601,   601,   601,   601,   601,   601,
-   601,   601,   601,   601,   nil,   601,   601,   601,   nil,   601,
-   601,   nil,   601,   601,   601,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   601,   nil,   nil,   601,   nil,   nil,
-   601,   601,   nil,   nil,   601,   nil,   601,   nil,   nil,   nil,
-   601,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   601,   nil,
-   nil,   nil,   nil,   601,   601,   601,   601,   601,   601,   nil,
-   nil,   nil,   601,   601,   nil,   nil,   nil,   nil,   nil,   601,
-   601,   nil,   nil,   601,   601,   601,   nil,   601,   601,   nil,
-   nil,   601,   601,   611,   611,   611,   nil,   611,   nil,   nil,
-   nil,   611,   611,   nil,   nil,   nil,   611,   nil,   611,   611,
-   611,   611,   611,   611,   611,   nil,   nil,   nil,   nil,   nil,
-   611,   611,   611,   611,   611,   611,   611,   nil,   nil,   611,
-   nil,   nil,   nil,   nil,   nil,   nil,   611,   nil,   nil,   611,
-   611,   611,   611,   611,   611,   611,   611,   611,   611,   611,
-   611,   nil,   611,   611,   nil,   611,   611,   611,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   611,   nil,   nil,
-   611,   nil,   nil,   611,   611,   nil,   nil,   611,   nil,   611,
-   nil,   611,   nil,   611,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   611,   nil,   nil,   nil,   nil,   611,   611,   611,   611,
-   611,   611,   nil,   nil,   nil,   611,   611,   nil,   nil,   nil,
-   nil,   nil,   nil,   611,   nil,   611,   611,   611,   611,   nil,
-   611,   611,   nil,   nil,   611,   611,   621,   621,   621,   nil,
-   621,   nil,   nil,   nil,   621,   621,   nil,   nil,   nil,   621,
-   nil,   621,   621,   621,   621,   621,   621,   621,   nil,   nil,
-   nil,   nil,   nil,   621,   621,   621,   621,   621,   621,   621,
-   nil,   nil,   621,   nil,   nil,   nil,   nil,   nil,   nil,   621,
-   nil,   nil,   621,   621,   621,   621,   621,   621,   621,   621,
-   nil,   621,   621,   621,   nil,   621,   621,   nil,   621,   621,
-   621,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   621,   nil,   nil,   621,   nil,   nil,   621,   621,   nil,   nil,
-   621,   nil,   nil,   nil,   nil,   nil,   621,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,   621,
-   621,   621,   621,   621,   621,   nil,   nil,   nil,   621,   621,
-   nil,   nil,   nil,   nil,   nil,   nil,   621,   nil,   nil,   621,
-   621,   621,   nil,   621,   621,   nil,   nil,   621,   621,   624,
-   624,   624,   nil,   624,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   624,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   624,   nil,   nil,
-   nil,   nil,   624,   624,   624,   624,   624,   624,   nil,   nil,
-   nil,   624,   624,   nil,   nil,   nil,   nil,   nil,   nil,   624,
-   nil,   nil,   624,   624,   624,   nil,   624,   624,   nil,   nil,
-   624,   624,   627,   627,   627,   nil,   627,   nil,   nil,   nil,
-   627,   627,   nil,   nil,   nil,   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,
-   627,   627,   627,   627,   627,   627,   nil,   627,   627,   627,
-   nil,   627,   627,   nil,   627,   627,   627,   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,   627,   nil,   nil,   627,   nil,   nil,   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,   nil,
-   nil,   nil,   627,   nil,   nil,   627,   627,   627,   nil,   627,
-   627,   nil,   nil,   627,   627,   650,   650,   650,   nil,   650,
-   nil,   nil,   nil,   650,   650,   nil,   nil,   nil,   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,   650,   650,   650,   650,   650,   650,   650,
-   650,   650,   650,   nil,   650,   650,   nil,   650,   650,   650,
-   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,   650,   nil,   nil,   650,
-   nil,   650,   nil,   650,   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,   650,   650,   650,
-   650,   nil,   650,   650,   nil,   nil,   650,   650,   662,   662,
-   662,   nil,   662,   nil,   nil,   nil,   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,   662,   nil,   nil,   nil,
-   nil,   662,   662,   662,   662,   662,   662,   nil,   nil,   nil,
-   662,   662,   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,
-   nil,   662,   662,   662,   nil,   662,   662,   nil,   nil,   662,
-   662,   694,   694,   694,   694,   694,   nil,   nil,   nil,   694,
-   694,   nil,   nil,   nil,   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,   694,   694,   nil,   694,   694,   694,   694,
-   694,   694,   694,   694,   694,   nil,   694,   694,   694,   nil,
-   694,   694,   nil,   694,   694,   694,   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,   694,   nil,   nil,   694,   nil,   694,   nil,   nil,
-   nil,   694,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   694,
-   nil,   nil,   nil,   nil,   694,   694,   694,   694,   694,   694,
-   nil,   nil,   nil,   694,   694,   nil,   nil,   nil,   nil,   nil,
-   nil,   694,   nil,   nil,   694,   694,   694,   nil,   694,   694,
-   nil,   nil,   694,   694,   696,   696,   696,   nil,   696,   nil,
-   nil,   nil,   696,   696,   nil,   nil,   nil,   696,   nil,   696,
-   696,   696,   696,   696,   696,   696,   nil,   nil,   nil,   nil,
-   nil,   696,   696,   696,   696,   696,   696,   696,   nil,   nil,
-   696,   nil,   nil,   nil,   nil,   nil,   nil,   696,   nil,   nil,
-   696,   696,   696,   696,   696,   696,   696,   696,   nil,   696,
-   696,   696,   nil,   696,   696,   nil,   696,   696,   696,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   696,   nil,
-   nil,   696,   nil,   nil,   696,   696,   nil,   nil,   696,   nil,
-   696,   nil,   nil,   nil,   696,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   696,   nil,   nil,   nil,   nil,   696,   696,   696,
-   696,   696,   696,   nil,   nil,   nil,   696,   696,   nil,   nil,
-   nil,   nil,   nil,   nil,   696,   nil,   nil,   696,   696,   696,
-   nil,   696,   696,   nil,   nil,   696,   696,   697,   697,   697,
-   nil,   697,   nil,   nil,   nil,   697,   697,   nil,   nil,   nil,
-   697,   nil,   697,   697,   697,   697,   697,   697,   697,   nil,
-   nil,   nil,   nil,   nil,   697,   697,   697,   697,   697,   697,
-   697,   nil,   nil,   697,   nil,   nil,   nil,   nil,   nil,   nil,
-   697,   nil,   nil,   697,   697,   697,   697,   697,   697,   697,
-   697,   nil,   697,   697,   697,   nil,   697,   697,   nil,   697,
-   697,   697,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   697,   nil,   nil,   697,   nil,   nil,   697,   697,   nil,
-   nil,   697,   nil,   nil,   nil,   nil,   nil,   697,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   697,   nil,   nil,   nil,   nil,
-   697,   697,   697,   697,   697,   697,   nil,   nil,   nil,   697,
-   697,   nil,   nil,   nil,   nil,   nil,   nil,   697,   nil,   nil,
-   697,   697,   697,   nil,   697,   697,   nil,   nil,   697,   697,
-   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,   nil,   698,   698,   698,
-   698,   698,   698,   698,   nil,   nil,   698,   nil,   nil,   nil,
-   nil,   nil,   nil,   698,   nil,   nil,   698,   698,   698,   698,
-   698,   698,   698,   698,   698,   698,   698,   698,   nil,   698,
-   698,   nil,   698,   698,   698,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   698,   nil,   nil,   698,   nil,   nil,
-   698,   698,   nil,   nil,   698,   nil,   698,   nil,   698,   nil,
-   698,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   698,   nil,
-   nil,   nil,   nil,   698,   698,   698,   698,   698,   698,   nil,
-   nil,   nil,   698,   698,   nil,   nil,   nil,   nil,   nil,   nil,
-   698,   nil,   698,   698,   698,   698,   nil,   698,   698,   nil,
-   nil,   698,   698,   701,   701,   701,   701,   701,   nil,   nil,
-   nil,   701,   701,   nil,   nil,   nil,   701,   nil,   701,   701,
-   701,   701,   701,   701,   701,   nil,   nil,   nil,   nil,   nil,
-   701,   701,   701,   701,   701,   701,   701,   nil,   nil,   701,
-   nil,   nil,   nil,   nil,   nil,   701,   701,   nil,   701,   701,
-   701,   701,   701,   701,   701,   701,   701,   nil,   701,   701,
-   701,   nil,   701,   701,   nil,   701,   701,   701,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   701,   nil,   nil,
-   701,   nil,   nil,   701,   701,   nil,   nil,   701,   nil,   701,
-   nil,   nil,   nil,   701,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   701,   nil,   nil,   nil,   nil,   701,   701,   701,   701,
-   701,   701,   nil,   nil,   nil,   701,   701,   nil,   nil,   nil,
-   nil,   nil,   nil,   701,   nil,   nil,   701,   701,   701,   nil,
-   701,   701,   nil,   nil,   701,   701,   702,   702,   702,   nil,
-   702,   nil,   nil,   nil,   702,   702,   nil,   nil,   nil,   702,
-   nil,   702,   702,   702,   702,   702,   702,   702,   nil,   nil,
-   nil,   nil,   nil,   702,   702,   702,   702,   702,   702,   702,
-   nil,   nil,   702,   nil,   nil,   nil,   nil,   nil,   nil,   702,
-   nil,   nil,   702,   702,   702,   702,   702,   702,   702,   702,
-   nil,   702,   702,   702,   nil,   702,   702,   nil,   702,   702,
-   702,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   702,   nil,   nil,   702,   nil,   nil,   702,   702,   nil,   nil,
-   702,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   702,   nil,   nil,   nil,   nil,   702,
-   702,   702,   702,   702,   702,   nil,   nil,   nil,   702,   702,
-   nil,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,   702,
-   702,   702,   nil,   702,   702,   nil,   nil,   702,   702,   705,
-   705,   705,   nil,   705,   nil,   nil,   nil,   705,   705,   nil,
-   nil,   nil,   705,   nil,   705,   705,   705,   705,   705,   705,
-   705,   nil,   nil,   nil,   nil,   nil,   705,   705,   705,   705,
-   705,   705,   705,   nil,   nil,   705,   nil,   nil,   nil,   nil,
-   nil,   nil,   705,   nil,   nil,   705,   705,   705,   705,   705,
-   705,   705,   705,   705,   705,   705,   705,   nil,   705,   705,
-   nil,   705,   705,   705,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   705,   nil,   nil,   705,   nil,   nil,   705,
-   705,   nil,   nil,   705,   nil,   705,   nil,   705,   nil,   705,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   705,   nil,   nil,
-   nil,   nil,   705,   705,   705,   705,   705,   705,   nil,   nil,
-   nil,   705,   705,   nil,   nil,   nil,   nil,   nil,   nil,   705,
-   nil,   705,   705,   705,   705,   nil,   705,   705,   nil,   nil,
-   705,   705,   706,   706,   706,   nil,   706,   nil,   nil,   nil,
-   706,   706,   nil,   nil,   nil,   706,   nil,   706,   706,   706,
-   706,   706,   706,   706,   nil,   nil,   nil,   nil,   nil,   706,
-   706,   706,   706,   706,   706,   706,   nil,   nil,   706,   nil,
-   nil,   nil,   nil,   nil,   nil,   706,   nil,   nil,   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,   nil,   nil,
-   706,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   706,   nil,   706,   706,   706,   706,   nil,   706,
-   706,   nil,   nil,   706,   706,   707,   707,   707,   nil,   707,
-   nil,   nil,   nil,   707,   707,   nil,   nil,   nil,   707,   nil,
-   707,   707,   707,   707,   707,   707,   707,   nil,   nil,   nil,
-   nil,   nil,   707,   707,   707,   707,   707,   707,   707,   nil,
-   nil,   707,   nil,   nil,   nil,   nil,   nil,   nil,   707,   nil,
-   nil,   707,   707,   707,   707,   707,   707,   707,   707,   nil,
-   707,   707,   707,   nil,   707,   707,   nil,   707,   707,   707,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   707,
-   nil,   nil,   707,   nil,   nil,   707,   707,   nil,   nil,   707,
-   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   707,   nil,   nil,   nil,   nil,   707,   707,
-   707,   707,   707,   707,   nil,   nil,   nil,   707,   707,   nil,
-   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,   707,   707,
-   707,   nil,   707,   707,   nil,   nil,   707,   707,   708,   708,
-   708,   nil,   708,   nil,   nil,   nil,   708,   708,   nil,   nil,
-   nil,   708,   nil,   708,   708,   708,   708,   708,   708,   708,
-   nil,   nil,   nil,   nil,   nil,   708,   708,   708,   708,   708,
-   708,   708,   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,
-   nil,   708,   nil,   nil,   708,   708,   708,   708,   708,   708,
-   708,   708,   nil,   708,   708,   708,   nil,   708,   708,   nil,
-   708,   708,   708,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   708,   nil,   nil,   708,   nil,   nil,   708,   708,
-   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,   708,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,   nil,   nil,
-   nil,   708,   708,   708,   708,   708,   708,   nil,   nil,   nil,
-   708,   708,   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,
-   nil,   708,   708,   708,   nil,   708,   708,   nil,   nil,   708,
-   708,   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,   nil,   713,   713,
-   713,   713,   713,   713,   713,   nil,   nil,   713,   nil,   nil,
-   nil,   nil,   nil,   nil,   713,   nil,   nil,   713,   713,   713,
-   713,   713,   713,   713,   713,   nil,   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,   nil,   nil,   nil,
-   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   713,   nil,   nil,   713,   713,   713,   nil,   713,   713,
-   nil,   nil,   713,   713,   714,   714,   714,   nil,   714,   nil,
-   nil,   nil,   714,   714,   nil,   nil,   nil,   714,   nil,   714,
-   714,   714,   714,   714,   714,   714,   nil,   nil,   nil,   nil,
-   nil,   714,   714,   714,   714,   714,   714,   714,   nil,   nil,
-   714,   nil,   nil,   nil,   nil,   nil,   nil,   714,   nil,   nil,
-   714,   714,   714,   714,   714,   714,   714,   714,   nil,   714,
-   714,   714,   nil,   714,   714,   nil,   714,   714,   714,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   714,   nil,
-   nil,   714,   nil,   nil,   714,   714,   nil,   nil,   714,   nil,
-   nil,   nil,   nil,   nil,   714,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   714,   nil,   nil,   nil,   nil,   714,   714,   714,
-   714,   714,   714,   nil,   nil,   nil,   714,   714,   nil,   nil,
-   nil,   nil,   nil,   nil,   714,   nil,   nil,   714,   714,   714,
-   nil,   714,   714,   nil,   nil,   714,   714,   721,   721,   721,
-   nil,   721,   nil,   nil,   nil,   721,   721,   nil,   nil,   nil,
-   721,   nil,   721,   721,   721,   721,   721,   721,   721,   nil,
-   nil,   nil,   nil,   nil,   721,   721,   721,   721,   721,   721,
-   721,   nil,   nil,   721,   nil,   nil,   nil,   nil,   nil,   nil,
-   721,   nil,   nil,   721,   721,   721,   721,   721,   721,   721,
-   721,   nil,   721,   721,   721,   nil,   721,   721,   nil,   721,
-   721,   721,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   721,   nil,   nil,   721,   nil,   nil,   721,   721,   nil,
-   nil,   721,   nil,   721,   nil,   nil,   nil,   721,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,   nil,   nil,
-   721,   721,   721,   721,   721,   721,   nil,   nil,   nil,   721,
-   721,   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,
-   721,   721,   721,   nil,   721,   721,   nil,   nil,   721,   721,
-   736,   736,   736,   nil,   736,   nil,   nil,   nil,   736,   736,
-   nil,   nil,   nil,   736,   nil,   736,   736,   736,   736,   736,
-   736,   736,   nil,   nil,   nil,   nil,   nil,   736,   736,   736,
-   736,   736,   736,   736,   nil,   nil,   736,   nil,   nil,   nil,
-   nil,   nil,   nil,   736,   nil,   nil,   736,   736,   736,   736,
-   736,   736,   736,   736,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
-   736,   nil,   nil,   736,   736,   736,   nil,   736,   736,   nil,
-   nil,   736,   736,   760,   760,   760,   nil,   760,   nil,   nil,
-   nil,   760,   760,   nil,   nil,   nil,   760,   nil,   760,   760,
-   760,   760,   760,   760,   760,   nil,   nil,   nil,   nil,   nil,
-   760,   760,   760,   760,   760,   760,   760,   nil,   nil,   760,
-   nil,   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,   760,
-   760,   760,   760,   760,   760,   760,   760,   nil,   760,   760,
-   760,   nil,   760,   760,   nil,   760,   760,   760,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,
-   760,   nil,   nil,   760,   760,   nil,   nil,   760,   nil,   nil,
-   nil,   nil,   nil,   760,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   760,   nil,   nil,   nil,   nil,   760,   760,   760,   760,
-   760,   760,   nil,   nil,   nil,   760,   760,   nil,   nil,   nil,
-   nil,   nil,   nil,   760,   nil,   nil,   760,   760,   760,   nil,
-   760,   760,   nil,   nil,   760,   760,   761,   761,   761,   nil,
-   761,   nil,   nil,   nil,   761,   761,   nil,   nil,   nil,   761,
-   nil,   761,   761,   761,   761,   761,   761,   761,   nil,   nil,
-   nil,   nil,   nil,   761,   761,   761,   761,   761,   761,   761,
-   nil,   nil,   761,   nil,   nil,   nil,   nil,   nil,   nil,   761,
-   nil,   nil,   761,   761,   761,   761,   761,   761,   761,   761,
-   nil,   761,   761,   761,   nil,   761,   761,   nil,   761,   761,
-   761,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   761,   nil,   nil,   761,   nil,   nil,   761,   761,   nil,   nil,
-   761,   nil,   nil,   nil,   nil,   nil,   761,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   761,   nil,   nil,   nil,   nil,   761,
-   761,   761,   761,   761,   761,   nil,   nil,   nil,   761,   761,
-   nil,   nil,   nil,   nil,   nil,   nil,   761,   nil,   nil,   761,
-   761,   761,   nil,   761,   761,   nil,   nil,   761,   761,   816,
-   816,   816,   nil,   816,   nil,   nil,   nil,   816,   816,   nil,
-   nil,   nil,   816,   nil,   816,   816,   816,   816,   816,   816,
-   816,   nil,   nil,   nil,   nil,   nil,   816,   816,   816,   816,
-   816,   816,   816,   nil,   nil,   816,   nil,   nil,   nil,   nil,
-   nil,   nil,   816,   nil,   nil,   816,   816,   816,   816,   816,
-   816,   816,   816,   816,   816,   816,   816,   nil,   816,   816,
-   nil,   816,   816,   816,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   816,   nil,   nil,   816,   nil,   nil,   816,
-   816,   nil,   nil,   816,   nil,   816,   nil,   816,   nil,   816,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,
-   nil,   nil,   816,   816,   816,   816,   816,   816,   nil,   nil,
-   nil,   816,   816,   nil,   nil,   nil,   nil,   nil,   nil,   816,
-   nil,   816,   816,   816,   816,   nil,   816,   816,   nil,   nil,
-   816,   816,   825,   825,   825,   nil,   825,   nil,   nil,   nil,
-   825,   825,   nil,   nil,   nil,   825,   nil,   825,   825,   825,
-   825,   825,   825,   825,   nil,   nil,   nil,   nil,   nil,   825,
-   825,   825,   825,   825,   825,   825,   nil,   nil,   825,   nil,
-   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,   825,   825,
-   825,   825,   825,   825,   825,   825,   nil,   825,   825,   825,
-   nil,   825,   825,   nil,   825,   825,   825,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,   825,
-   nil,   nil,   825,   825,   nil,   nil,   825,   nil,   nil,   nil,
-   nil,   nil,   825,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   825,   nil,   nil,   nil,   nil,   825,   825,   825,   825,   825,
-   825,   nil,   nil,   nil,   825,   825,   nil,   nil,   nil,   nil,
-   nil,   nil,   825,   nil,   nil,   825,   825,   825,   nil,   825,
-   825,   nil,   nil,   825,   825,   828,   828,   828,   nil,   828,
-   nil,   nil,   nil,   828,   828,   nil,   nil,   nil,   828,   nil,
-   828,   828,   828,   828,   828,   828,   828,   nil,   nil,   nil,
-   nil,   nil,   828,   828,   828,   828,   828,   828,   828,   nil,
-   nil,   828,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,
-   nil,   828,   828,   828,   828,   828,   828,   828,   828,   nil,
-   828,   828,   828,   nil,   828,   828,   nil,   828,   828,   828,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   828,
-   nil,   nil,   828,   nil,   nil,   828,   828,   nil,   nil,   828,
-   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,   828,   828,
-   828,   828,   828,   828,   nil,   nil,   nil,   828,   828,   nil,
-   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,   828,
-   828,   nil,   828,   828,   nil,   nil,   828,   828,   850,   850,
-   850,   nil,   850,   nil,   nil,   nil,   850,   850,   nil,   nil,
-   nil,   850,   nil,   850,   850,   850,   850,   850,   850,   850,
-   nil,   nil,   nil,   nil,   nil,   850,   850,   850,   850,   850,
-   850,   850,   nil,   nil,   850,   nil,   nil,   nil,   nil,   nil,
-   nil,   850,   nil,   nil,   850,   850,   850,   850,   850,   850,
-   850,   850,   850,   850,   850,   850,   nil,   850,   850,   nil,
-   850,   850,   850,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   850,   nil,   nil,   850,   nil,   nil,   850,   850,
-   nil,   nil,   850,   nil,   850,   nil,   nil,   nil,   850,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   850,   nil,   nil,   nil,
-   nil,   850,   850,   850,   850,   850,   850,   nil,   nil,   nil,
-   850,   850,   nil,   nil,   nil,   nil,   nil,   nil,   850,   nil,
-   850,   850,   850,   850,   nil,   850,   850,   nil,   nil,   850,
-   850,   853,   853,   853,   nil,   853,   nil,   nil,   nil,   853,
-   853,   nil,   nil,   nil,   853,   nil,   853,   853,   853,   853,
-   853,   853,   853,   nil,   nil,   nil,   nil,   nil,   853,   853,
-   853,   853,   853,   853,   853,   nil,   nil,   853,   nil,   nil,
-   nil,   nil,   nil,   nil,   853,   nil,   nil,   853,   853,   853,
-   853,   853,   853,   853,   853,   853,   853,   853,   853,   nil,
-   853,   853,   nil,   853,   853,   853,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   853,   nil,   nil,   853,   nil,
-   nil,   853,   853,   nil,   nil,   853,   nil,   nil,   nil,   nil,
-   nil,   853,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   853,
-   nil,   nil,   nil,   nil,   853,   853,   853,   853,   853,   853,
-   nil,   nil,   nil,   853,   853,   nil,   nil,   nil,   nil,   nil,
-   nil,   853,   nil,   853,   853,   853,   853,   nil,   853,   853,
-   nil,   nil,   853,   853,   869,   869,   869,   nil,   869,   nil,
-   nil,   nil,   869,   869,   nil,   nil,   nil,   869,   nil,   869,
-   869,   869,   869,   869,   869,   869,   nil,   nil,   nil,   nil,
-   nil,   869,   869,   869,   869,   869,   869,   869,   nil,   nil,
-   869,   nil,   nil,   nil,   nil,   nil,   nil,   869,   nil,   nil,
-   869,   869,   869,   869,   869,   869,   869,   869,   nil,   869,
-   869,   869,   nil,   869,   869,   nil,   869,   869,   869,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   869,   nil,
-   nil,   869,   nil,   nil,   869,   869,   nil,   nil,   869,   nil,
-   869,   nil,   nil,   nil,   869,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   869,   nil,   nil,   nil,   nil,   869,   869,   869,
-   869,   869,   869,   nil,   nil,   nil,   869,   869,   nil,   nil,
-   nil,   nil,   nil,   nil,   869,   nil,   nil,   869,   869,   869,
-   nil,   869,   869,   nil,   nil,   869,   869,   881,   881,   881,
-   nil,   881,   nil,   nil,   nil,   881,   881,   nil,   nil,   nil,
-   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,   881,   881,   881,   881,   881,
-   881,   881,   881,   881,   881,   nil,   881,   881,   nil,   881,
-   881,   881,   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,   881,   nil,
-   nil,   881,   nil,   881,   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,   881,
-   881,   881,   881,   nil,   881,   881,   nil,   nil,   881,   881,
-   900,   900,   900,   nil,   900,   nil,   nil,   nil,   900,   900,
-   nil,   nil,   nil,   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,   900,   900,
-   900,   900,   900,   900,   nil,   900,   900,   900,   nil,   900,
-   900,   nil,   900,   900,   900,   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,   900,   nil,   nil,   900,   nil,   nil,   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,   900,   900,   nil,   900,   900,   nil,
-   nil,   900,   900,   908,   908,   908,   nil,   908,   nil,   nil,
-   nil,   908,   908,   nil,   nil,   nil,   908,   nil,   908,   908,
-   908,   908,   908,   908,   908,   nil,   nil,   nil,   nil,   nil,
-   908,   908,   908,   908,   908,   908,   908,   nil,   nil,   908,
-   nil,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   908,
-   908,   908,   908,   908,   908,   908,   908,   nil,   908,   908,
-   908,   nil,   908,   908,   nil,   908,   908,   908,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,
-   908,   nil,   nil,   908,   908,   nil,   nil,   908,   nil,   nil,
-   nil,   nil,   nil,   908,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   908,   nil,   nil,   nil,   nil,   908,   908,   908,   908,
-   908,   908,   nil,   nil,   nil,   908,   908,   nil,   nil,   nil,
-   nil,   nil,   nil,   908,   nil,   nil,   908,   908,   908,   nil,
-   908,   908,   nil,   nil,   908,   908,   921,   921,   921,   nil,
-   921,   nil,   nil,   nil,   921,   921,   nil,   nil,   nil,   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,   921,   921,   921,   921,   921,   921,
-   nil,   921,   921,   921,   nil,   921,   921,   nil,   921,   921,
-   921,   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,   921,   nil,   nil,
-   921,   nil,   nil,   nil,   nil,   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,
-   921,   921,   nil,   921,   921,   nil,   nil,   921,   921,   922,
-   922,   922,   nil,   922,   nil,   nil,   nil,   922,   922,   nil,
-   nil,   nil,   922,   nil,   922,   922,   922,   922,   922,   922,
-   922,   nil,   nil,   nil,   nil,   nil,   922,   922,   922,   922,
-   922,   922,   922,   nil,   nil,   922,   nil,   nil,   nil,   nil,
-   nil,   nil,   922,   nil,   nil,   922,   922,   922,   922,   922,
-   922,   922,   922,   nil,   922,   922,   922,   nil,   922,   922,
-   nil,   922,   922,   922,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   922,   nil,   nil,   922,   nil,   nil,   922,
-   922,   nil,   nil,   922,   nil,   nil,   nil,   nil,   nil,   922,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   922,   nil,   nil,
-   nil,   nil,   922,   922,   922,   922,   922,   922,   nil,   nil,
-   nil,   922,   922,   nil,   nil,   nil,   nil,   nil,   nil,   922,
-   nil,   nil,   922,   922,   922,   nil,   922,   922,   nil,   nil,
-   922,   922,   952,   952,   952,   nil,   952,   nil,   nil,   nil,
-   952,   952,   nil,   nil,   nil,   952,   nil,   952,   952,   952,
-   952,   952,   952,   952,   nil,   nil,   nil,   nil,   nil,   952,
-   952,   952,   952,   952,   952,   952,   nil,   nil,   952,   nil,
-   nil,   nil,   nil,   nil,   nil,   952,   nil,   nil,   952,   952,
-   952,   952,   952,   952,   952,   952,   nil,   952,   952,   952,
-   nil,   952,   952,   nil,   952,   952,   952,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   952,   nil,   nil,   952,
-   nil,   nil,   952,   952,   nil,   nil,   952,   nil,   nil,   nil,
-   nil,   nil,   952,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   952,   nil,   nil,   nil,   nil,   952,   952,   952,   952,   952,
-   952,   nil,   nil,   nil,   952,   952,   nil,   nil,   nil,   nil,
-   nil,   nil,   952,   nil,   nil,   952,   952,   952,   nil,   952,
-   952,   nil,   nil,   952,   952,   953,   953,   953,   nil,   953,
-   nil,   nil,   nil,   953,   953,   nil,   nil,   nil,   953,   nil,
-   953,   953,   953,   953,   953,   953,   953,   nil,   nil,   nil,
-   nil,   nil,   953,   953,   953,   953,   953,   953,   953,   nil,
-   nil,   953,   nil,   nil,   nil,   nil,   nil,   nil,   953,   nil,
-   nil,   953,   953,   953,   953,   953,   953,   953,   953,   nil,
-   953,   953,   953,   nil,   953,   953,   nil,   953,   953,   953,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   953,
-   nil,   nil,   953,   nil,   nil,   953,   953,   nil,   nil,   953,
-   nil,   nil,   nil,   nil,   nil,   953,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   953,   nil,   nil,   nil,   nil,   953,   953,
-   953,   953,   953,   953,   nil,   nil,   nil,   953,   953,   nil,
-   nil,   nil,   nil,   nil,   nil,   953,   nil,   nil,   953,   953,
-   953,   nil,   953,   953,   nil,   nil,   953,   953,   954,   954,
-   954,   nil,   954,   nil,   nil,   nil,   954,   954,   nil,   nil,
-   nil,   954,   nil,   954,   954,   954,   954,   954,   954,   954,
-   nil,   nil,   nil,   nil,   nil,   954,   954,   954,   954,   954,
-   954,   954,   nil,   nil,   954,   nil,   nil,   nil,   nil,   nil,
-   nil,   954,   nil,   nil,   954,   954,   954,   954,   954,   954,
-   954,   954,   nil,   954,   954,   954,   nil,   954,   954,   nil,
-   954,   954,   954,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   954,   nil,   nil,   954,   nil,   nil,   954,   954,
-   nil,   nil,   954,   nil,   nil,   nil,   nil,   nil,   954,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   954,   nil,   nil,   nil,
-   nil,   954,   954,   954,   954,   954,   954,   nil,   nil,   nil,
-   954,   954,   nil,   nil,   nil,   nil,   nil,   nil,   954,   nil,
-   nil,   954,   954,   954,   nil,   954,   954,   nil,   nil,   954,
-   954,   955,   955,   955,   nil,   955,   nil,   nil,   nil,   955,
-   955,   nil,   nil,   nil,   955,   nil,   955,   955,   955,   955,
-   955,   955,   955,   nil,   nil,   nil,   nil,   nil,   955,   955,
-   955,   955,   955,   955,   955,   nil,   nil,   955,   nil,   nil,
-   nil,   nil,   nil,   nil,   955,   nil,   nil,   955,   955,   955,
-   955,   955,   955,   955,   955,   nil,   955,   955,   955,   nil,
-   955,   955,   nil,   955,   955,   955,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   955,   nil,   nil,   955,   nil,
-   nil,   955,   955,   nil,   nil,   955,   nil,   nil,   nil,   nil,
-   nil,   955,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   955,
-   nil,   nil,   nil,   nil,   955,   955,   955,   955,   955,   955,
-   nil,   nil,   nil,   955,   955,   nil,   nil,   nil,   nil,   nil,
-   nil,   955,   nil,   nil,   955,   955,   955,   nil,   955,   955,
-   nil,   nil,   955,   955,   956,   956,   956,   nil,   956,   nil,
-   nil,   nil,   956,   956,   nil,   nil,   nil,   956,   nil,   956,
-   956,   956,   956,   956,   956,   956,   nil,   nil,   nil,   nil,
-   nil,   956,   956,   956,   956,   956,   956,   956,   nil,   nil,
-   956,   nil,   nil,   nil,   nil,   nil,   nil,   956,   nil,   nil,
-   956,   956,   956,   956,   956,   956,   956,   956,   nil,   956,
-   956,   956,   nil,   956,   956,   nil,   956,   956,   956,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   956,   nil,
-   nil,   956,   nil,   nil,   956,   956,   nil,   nil,   956,   nil,
-   nil,   nil,   nil,   nil,   956,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   956,   nil,   nil,   nil,   nil,   956,   956,   956,
-   956,   956,   956,   nil,   nil,   nil,   956,   956,   nil,   nil,
-   nil,   nil,   nil,   nil,   956,   nil,   nil,   956,   956,   956,
-   nil,   956,   956,   nil,   nil,   956,   956,   957,   957,   957,
-   nil,   957,   nil,   nil,   nil,   957,   957,   nil,   nil,   nil,
-   957,   nil,   957,   957,   957,   957,   957,   957,   957,   nil,
-   nil,   nil,   nil,   nil,   957,   957,   957,   957,   957,   957,
-   957,   nil,   nil,   957,   nil,   nil,   nil,   nil,   nil,   nil,
-   957,   nil,   nil,   957,   957,   957,   957,   957,   957,   957,
-   957,   nil,   957,   957,   957,   nil,   957,   957,   nil,   957,
-   957,   957,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   957,   nil,   nil,   957,   nil,   nil,   957,   957,   nil,
-   nil,   957,   nil,   nil,   nil,   nil,   nil,   957,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   957,   nil,   nil,   nil,   nil,
-   957,   957,   957,   957,   957,   957,   nil,   nil,   nil,   957,
-   957,   nil,   nil,   nil,   nil,   nil,   nil,   957,   nil,   nil,
-   957,   957,   957,   nil,   957,   957,   nil,   nil,   957,   957,
-   991,   991,   991,   nil,   991,   nil,   nil,   nil,   991,   991,
-   nil,   nil,   nil,   991,   nil,   991,   991,   991,   991,   991,
-   991,   991,   nil,   nil,   nil,   nil,   nil,   991,   991,   991,
-   991,   991,   991,   991,   nil,   nil,   991,   nil,   nil,   nil,
-   nil,   nil,   nil,   991,   nil,   nil,   991,   991,   991,   991,
-   991,   991,   991,   991,   nil,   991,   991,   991,   nil,   991,
-   991,   nil,   991,   991,   991,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   991,   nil,   nil,   991,   nil,   nil,
-   991,   991,   nil,   nil,   991,   nil,   nil,   nil,   nil,   nil,
-   991,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   991,   nil,
-   nil,   nil,   nil,   991,   991,   991,   991,   991,   991,   nil,
-   nil,   nil,   991,   991,   nil,   nil,   nil,   nil,   nil,   nil,
-   991,   nil,   nil,   991,   991,   991,   nil,   991,   991,   nil,
-   nil,   991,   991,   997,   997,   997,   nil,   997,   nil,   nil,
-   nil,   997,   997,   nil,   nil,   nil,   997,   nil,   997,   997,
-   997,   997,   997,   997,   997,   nil,   nil,   nil,   nil,   nil,
-   997,   997,   997,   997,   997,   997,   997,   nil,   nil,   997,
-   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,
-   997,   997,   997,   997,   997,   997,   997,   nil,   997,   997,
-   997,   nil,   997,   997,   nil,   997,   997,   997,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,   nil,
-   997,   nil,   nil,   997,   997,   nil,   nil,   997,   nil,   nil,
-   nil,   nil,   nil,   997,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   997,   nil,   nil,   nil,   nil,   997,   997,   997,   997,
-   997,   997,   nil,   nil,   nil,   997,   997,   nil,   nil,   nil,
-   nil,   nil,   nil,   997,   nil,   nil,   997,   997,   997,   nil,
-   997,   997,   nil,   nil,   997,   997,  1023,  1023,  1023,   nil,
-  1023,   nil,   nil,   nil,  1023,  1023,   nil,   nil,   nil,  1023,
-   nil,  1023,  1023,  1023,  1023,  1023,  1023,  1023,   nil,   nil,
-   nil,   nil,   nil,  1023,  1023,  1023,  1023,  1023,  1023,  1023,
-   nil,   nil,  1023,   nil,   nil,   nil,   nil,   nil,   nil,  1023,
-   nil,   nil,  1023,  1023,  1023,  1023,  1023,  1023,  1023,  1023,
-   nil,  1023,  1023,  1023,   nil,  1023,  1023,   nil,  1023,  1023,
-  1023,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1023,   nil,   nil,  1023,   nil,   nil,  1023,  1023,   nil,   nil,
-  1023,   nil,   nil,   nil,   nil,   nil,  1023,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1023,   nil,   nil,   nil,   nil,  1023,
-  1023,  1023,  1023,  1023,  1023,   nil,   nil,   nil,  1023,  1023,
-   nil,   nil,   nil,   nil,   nil,   nil,  1023,   nil,   nil,  1023,
-  1023,  1023,   nil,  1023,  1023,   nil,   nil,  1023,  1023,  1032,
-  1032,  1032,   nil,  1032,   nil,   nil,   nil,  1032,  1032,   nil,
-   nil,   nil,  1032,   nil,  1032,  1032,  1032,  1032,  1032,  1032,
-  1032,   nil,   nil,   nil,   nil,   nil,  1032,  1032,  1032,  1032,
-  1032,  1032,  1032,   nil,   nil,  1032,   nil,   nil,   nil,   nil,
-   nil,   nil,  1032,   nil,   nil,  1032,  1032,  1032,  1032,  1032,
-  1032,  1032,  1032,   nil,  1032,  1032,  1032,   nil,  1032,  1032,
-   nil,  1032,  1032,  1032,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1032,   nil,   nil,  1032,   nil,   nil,  1032,
-  1032,   nil,   nil,  1032,   nil,   nil,   nil,   nil,   nil,  1032,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1032,   nil,   nil,
-   nil,   nil,  1032,  1032,  1032,  1032,  1032,  1032,   nil,   nil,
-   nil,  1032,  1032,   nil,   nil,   nil,   nil,   nil,   nil,  1032,
-   nil,   nil,  1032,  1032,  1032,   nil,  1032,  1032,   nil,   nil,
-  1032,  1032,  1041,  1041,  1041,   nil,  1041,   nil,   nil,   nil,
-  1041,  1041,   nil,   nil,   nil,  1041,   nil,  1041,  1041,  1041,
-  1041,  1041,  1041,  1041,   nil,   nil,   nil,   nil,   nil,  1041,
-  1041,  1041,  1041,  1041,  1041,  1041,   nil,   nil,  1041,   nil,
-   nil,   nil,   nil,   nil,   nil,  1041,   nil,   nil,  1041,  1041,
-  1041,  1041,  1041,  1041,  1041,  1041,   nil,  1041,  1041,  1041,
-   nil,  1041,  1041,   nil,  1041,  1041,  1041,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1041,   nil,   nil,  1041,
-   nil,   nil,  1041,  1041,   nil,   nil,  1041,   nil,   nil,   nil,
-   nil,   nil,  1041,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1041,   nil,   nil,   nil,   nil,  1041,  1041,  1041,  1041,  1041,
-  1041,   nil,   nil,   nil,  1041,  1041,   nil,   nil,   nil,   nil,
-   nil,   nil,  1041,   nil,   nil,  1041,  1041,  1041,   nil,  1041,
-  1041,   nil,   nil,  1041,  1041,  1060,  1060,  1060,   nil,  1060,
-   nil,   nil,   nil,  1060,  1060,   nil,   nil,   nil,  1060,   nil,
-  1060,  1060,  1060,  1060,  1060,  1060,  1060,   nil,   nil,   nil,
-   nil,   nil,  1060,  1060,  1060,  1060,  1060,  1060,  1060,   nil,
-   nil,  1060,   nil,   nil,   nil,   nil,   nil,   nil,  1060,   nil,
-   nil,  1060,  1060,  1060,  1060,  1060,  1060,  1060,  1060,  1060,
-  1060,  1060,  1060,   nil,  1060,  1060,   nil,  1060,  1060,  1060,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1060,
-   nil,   nil,  1060,   nil,   nil,  1060,  1060,   nil,   nil,  1060,
-   nil,   nil,   nil,  1060,   nil,  1060,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1060,   nil,   nil,   nil,   nil,  1060,  1060,
-  1060,  1060,  1060,  1060,   nil,   nil,   nil,  1060,  1060,   nil,
-   nil,   nil,   nil,   nil,   nil,  1060,   nil,  1060,  1060,  1060,
-  1060,   nil,  1060,  1060,   nil,   nil,  1060,  1060,  1084,  1084,
-  1084,   nil,  1084,   nil,   nil,   nil,  1084,  1084,   nil,   nil,
-   nil,  1084,   nil,  1084,  1084,  1084,  1084,  1084,  1084,  1084,
-   nil,   nil,   nil,   nil,   nil,  1084,  1084,  1084,  1084,  1084,
-  1084,  1084,   nil,   nil,  1084,   nil,   nil,   nil,   nil,   nil,
-   nil,  1084,   nil,   nil,  1084,  1084,  1084,  1084,  1084,  1084,
-  1084,  1084,   nil,  1084,  1084,  1084,   nil,  1084,  1084,   nil,
-  1084,  1084,  1084,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1084,   nil,   nil,  1084,   nil,   nil,  1084,  1084,
-   nil,   nil,  1084,   nil,   nil,   nil,   nil,   nil,  1084,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1084,   nil,   nil,   nil,
-   nil,  1084,  1084,  1084,  1084,  1084,  1084,   nil,   nil,   nil,
-  1084,  1084,   nil,   nil,   nil,   nil,   nil,   nil,  1084,   nil,
-   nil,  1084,  1084,  1084,   nil,  1084,  1084,   nil,   nil,  1084,
-  1084,  1142,  1142,  1142,   nil,  1142,   nil,   nil,   nil,  1142,
-  1142,   nil,   nil,   nil,  1142,   nil,  1142,  1142,  1142,  1142,
-  1142,  1142,  1142,   nil,   nil,   nil,   nil,   nil,  1142,  1142,
-  1142,  1142,  1142,  1142,  1142,   nil,   nil,  1142,   nil,   nil,
-   nil,   nil,   nil,   nil,  1142,   nil,   nil,  1142,  1142,  1142,
-  1142,  1142,  1142,  1142,  1142,   nil,  1142,  1142,  1142,   nil,
-  1142,  1142,   nil,  1142,  1142,  1142,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1142,   nil,   nil,  1142,   nil,
-   nil,  1142,  1142,   nil,   nil,  1142,   nil,  1142,   nil,   nil,
-   nil,  1142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1142,
-   nil,   nil,   nil,   nil,  1142,  1142,  1142,  1142,  1142,  1142,
-   nil,   nil,   nil,  1142,  1142,   nil,   nil,   nil,   nil,   nil,
-   nil,  1142,   nil,   nil,  1142,  1142,  1142,   nil,  1142,  1142,
-   nil,   nil,  1142,  1142,  1203,  1203,  1203,   nil,  1203,   nil,
-   nil,   nil,  1203,  1203,   nil,   nil,   nil,  1203,   nil,  1203,
-  1203,  1203,  1203,  1203,  1203,  1203,   nil,   nil,   nil,   nil,
-   nil,  1203,  1203,  1203,  1203,  1203,  1203,  1203,   nil,   nil,
-  1203,   nil,   nil,   nil,   nil,   nil,   nil,  1203,   nil,   nil,
-  1203,  1203,  1203,  1203,  1203,  1203,  1203,  1203,   nil,  1203,
-  1203,  1203,   nil,  1203,  1203,   nil,  1203,  1203,  1203,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1203,   nil,
-   nil,  1203,   nil,   nil,  1203,  1203,   nil,   nil,  1203,   nil,
-   nil,   nil,   nil,   nil,  1203,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1203,   nil,   nil,   nil,   nil,  1203,  1203,  1203,
-  1203,  1203,  1203,   nil,   nil,   nil,  1203,  1203,   nil,   nil,
-   nil,   nil,   nil,   nil,  1203,   nil,   nil,  1203,  1203,  1203,
-   nil,  1203,  1203,   nil,   nil,  1203,  1203,  1204,  1204,  1204,
-   nil,  1204,   nil,   nil,   nil,  1204,  1204,   nil,   nil,   nil,
-  1204,   nil,  1204,  1204,  1204,  1204,  1204,  1204,  1204,   nil,
-   nil,   nil,   nil,   nil,  1204,  1204,  1204,  1204,  1204,  1204,
-  1204,   nil,   nil,  1204,   nil,   nil,   nil,   nil,   nil,   nil,
-  1204,   nil,   nil,  1204,  1204,  1204,  1204,  1204,  1204,  1204,
-  1204,   nil,  1204,  1204,  1204,   nil,  1204,  1204,   nil,  1204,
-  1204,  1204,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1204,   nil,   nil,  1204,   nil,   nil,  1204,  1204,   nil,
-   nil,  1204,   nil,   nil,   nil,   nil,   nil,  1204,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1204,   nil,   nil,   nil,   nil,
-  1204,  1204,  1204,  1204,  1204,  1204,   nil,   nil,   nil,  1204,
-  1204,   nil,   nil,   nil,   nil,   nil,   nil,  1204,   nil,   nil,
-  1204,  1204,  1204,   nil,  1204,  1204,   nil,   nil,  1204,  1204,
-  1206,  1206,  1206,   nil,  1206,   nil,   nil,   nil,  1206,  1206,
-   nil,   nil,   nil,  1206,   nil,  1206,  1206,  1206,  1206,  1206,
-  1206,  1206,   nil,   nil,   nil,   nil,   nil,  1206,  1206,  1206,
-  1206,  1206,  1206,  1206,   nil,   nil,  1206,   nil,   nil,   nil,
-   nil,   nil,   nil,  1206,   nil,   nil,  1206,  1206,  1206,  1206,
-  1206,  1206,  1206,  1206,   nil,  1206,  1206,  1206,   nil,  1206,
-  1206,   nil,  1206,  1206,  1206,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1206,   nil,   nil,  1206,   nil,   nil,
-  1206,  1206,   nil,   nil,  1206,   nil,   nil,   nil,   nil,   nil,
-  1206,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1206,   nil,
-   nil,   nil,   nil,  1206,  1206,  1206,  1206,  1206,  1206,   nil,
-   nil,   nil,  1206,  1206,   nil,   nil,   nil,   nil,   nil,   nil,
-  1206,   nil,   nil,  1206,  1206,  1206,   nil,  1206,  1206,   nil,
-   nil,  1206,  1206,  1219,  1219,  1219,   nil,  1219,   nil,   nil,
-   nil,  1219,  1219,   nil,   nil,   nil,  1219,   nil,  1219,  1219,
-  1219,  1219,  1219,  1219,  1219,   nil,   nil,   nil,   nil,   nil,
-  1219,  1219,  1219,  1219,  1219,  1219,  1219,   nil,   nil,  1219,
-   nil,   nil,   nil,   nil,   nil,   nil,  1219,   nil,   nil,  1219,
-  1219,  1219,  1219,  1219,  1219,  1219,  1219,  1219,  1219,  1219,
-  1219,   nil,  1219,  1219,   nil,  1219,  1219,  1219,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1219,   nil,   nil,
-  1219,   nil,   nil,  1219,  1219,   nil,   nil,  1219,   nil,  1219,
-   nil,  1219,   nil,  1219,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1219,   nil,   nil,   nil,   nil,  1219,  1219,  1219,  1219,
-  1219,  1219,   nil,   nil,   nil,  1219,  1219,   nil,   nil,   nil,
-   nil,   nil,   nil,  1219,   nil,  1219,  1219,  1219,  1219,   nil,
-  1219,  1219,   nil,   nil,  1219,  1219,    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,   nil,    40,    40,    40,    40,    40,    40,    40,
-   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,    40,
-   nil,   nil,    40,    40,    40,    40,    40,    40,    40,    40,
-   nil,    40,    40,    40,   nil,    40,    40,   nil,   nil,   nil,
-    40,   nil,   nil,   nil,   nil,   nil,  1071,   nil,  1071,  1071,
-  1071,  1071,  1071,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    40,   nil,  1071,    40,   nil,   nil,    40,    40,   nil,   nil,
-    40,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1071,   nil,   nil,   nil,   nil,    40,
-    40,    40,    40,    40,    40,  1071,  1071,   nil,    40,    40,
-   nil,   nil,   nil,   nil,   nil,   nil,    40,   nil,   nil,    40,
-    40,    40,   nil,    40,    40,    41,    41,    41,   nil,    41,
-   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,    41,  1071,
-    41,    41,    41,    41,    41,    41,    41,   nil,   nil,  1071,
-   nil,   nil,    41,    41,    41,    41,    41,    41,    41,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,    41,    41,    41,    41,    41,    41,    41,    41,   nil,
-    41,    41,    41,   nil,    41,    41,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,  1073,   nil,  1073,  1073,  1073,
-  1073,  1073,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,  1073,    41,   nil,   nil,    41,    41,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1073,   nil,   nil,   nil,   nil,    41,    41,
-    41,    41,    41,    41,  1073,  1073,   nil,    41,    41,   nil,
-   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,    41,    41,
-    41,   nil,    41,    41,    77,    77,    77,   nil,    77,   nil,
-   nil,   nil,    77,    77,   nil,   nil,   nil,    77,  1073,    77,
-    77,    77,    77,    77,    77,    77,   nil,   nil,  1073,   nil,
-   nil,    77,    77,    77,    77,    77,    77,    77,   nil,   nil,
-    77,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
-    77,    77,    77,    77,    77,    77,    77,    77,   nil,    77,
-    77,    77,   nil,    77,    77,   nil,   nil,   nil,    77,   nil,
-   nil,   nil,   nil,   nil,  1075,   nil,  1075,  1075,  1075,  1075,
-  1075,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
-  1075,    77,   nil,   nil,    77,    77,   nil,   nil,    77,   nil,
-    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1075,   nil,   nil,   nil,   nil,    77,    77,    77,
-    77,    77,    77,  1075,  1075,   nil,    77,    77,   nil,   nil,
-   nil,   nil,   nil,   nil,    77,   nil,   nil,    77,    77,    77,
-   nil,    77,    77,   351,   351,   351,   nil,   351,   nil,   nil,
-   nil,   351,   351,   nil,   nil,   nil,   351,  1075,   351,   351,
-   351,   351,   351,   351,   351,   nil,   nil,  1075,   nil,   nil,
-   351,   351,   351,   351,   351,   351,   351,   nil,   nil,   351,
-   nil,   nil,   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,
-   351,   351,   351,   351,   351,   351,   351,   nil,   351,   351,
-   351,   nil,   351,   351,   nil,   nil,   nil,   351,   nil,   nil,
-   nil,   nil,   nil,  1223,   nil,  1223,  1223,  1223,  1223,  1223,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   351,   nil,  1223,
-   351,   nil,   nil,   351,   351,   nil,   nil,   351,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1223,   nil,   nil,   nil,   nil,   351,   351,   351,   351,
-   351,   351,  1223,  1223,   nil,   351,   351,   nil,   nil,   nil,
-   351,   nil,   nil,   351,   nil,   nil,   351,   351,   351,   nil,
-   351,   351,   370,   370,   370,   nil,   370,   nil,   nil,   nil,
-   370,   370,   nil,   nil,   nil,   370,  1223,   370,   370,   370,
-   370,   370,   370,   370,   nil,   nil,  1223,   nil,   nil,   370,
-   370,   370,   370,   370,   370,   370,   nil,   nil,   370,   nil,
-   nil,   nil,   nil,   nil,   nil,   370,   nil,   nil,   370,   370,
-   370,   370,   370,   370,   370,   370,   nil,   370,   370,   370,
-   nil,   370,   370,   nil,   nil,   nil,   370,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   370,   nil,   nil,   370,
-   nil,   nil,   370,   370,   nil,   nil,   370,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   370,   370,   370,   370,   370,
-   370,   nil,   nil,   nil,   370,   370,   nil,   nil,   nil,   nil,
-   nil,   nil,   370,   nil,   nil,   370,   370,   370,   nil,   370,
-   370,   405,   405,   405,   nil,   405,   nil,   nil,   nil,   405,
-   405,   nil,   nil,   nil,   405,   nil,   405,   405,   405,   405,
-   405,   405,   405,   nil,   nil,   nil,   nil,   nil,   405,   405,
-   405,   405,   405,   405,   405,   nil,   nil,   405,   nil,   nil,
-   nil,   nil,   nil,   nil,   405,   nil,   nil,   405,   405,   405,
-   405,   405,   405,   405,   405,   nil,   405,   405,   405,   nil,
-   405,   405,   nil,   nil,   nil,   405,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   405,   nil,   nil,   405,   nil,
-   nil,   405,   405,   nil,   nil,   405,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   405,   405,   405,   405,   405,   405,
-   nil,   nil,   nil,   405,   405,   nil,   nil,   nil,   nil,   nil,
-   nil,   405,   nil,   nil,   405,   405,   405,   nil,   405,   405,
-   407,   407,   407,   nil,   407,   nil,   nil,   nil,   407,   407,
-   nil,   nil,   nil,   407,   nil,   407,   407,   407,   407,   407,
-   407,   407,   nil,   nil,   nil,   nil,   nil,   407,   407,   407,
-   407,   407,   407,   407,   nil,   nil,   407,   nil,   nil,   nil,
-   nil,   nil,   nil,   407,   nil,   nil,   407,   407,   407,   407,
-   407,   407,   407,   407,   nil,   407,   407,   407,   nil,   407,
-   407,   nil,   nil,   nil,   407,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   407,   nil,   nil,   407,   nil,   nil,
-   407,   407,   nil,   nil,   407,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   407,   407,   407,   407,   407,   407,   nil,
-   nil,   nil,   407,   407,   nil,   nil,   nil,   nil,   nil,   nil,
-   407,   nil,   nil,   407,   407,   407,   nil,   407,   407,   609,
-   609,   609,   nil,   609,   nil,   nil,   nil,   609,   609,   nil,
-   nil,   nil,   609,   nil,   609,   609,   609,   609,   609,   609,
-   609,   nil,   nil,   nil,   nil,   nil,   609,   609,   609,   609,
-   609,   609,   609,   nil,   nil,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   609,   nil,   nil,   609,   609,   609,   609,   609,
-   609,   609,   609,   nil,   609,   609,   609,   nil,   609,   609,
-   nil,   nil,   nil,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   609,   nil,   nil,   609,   nil,   nil,   609,
-   609,   nil,   nil,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   609,   609,   609,   609,   609,   609,   nil,   nil,
-   nil,   609,   609,   nil,   nil,   nil,   nil,   nil,   nil,   609,
-   nil,   nil,   609,   609,   609,   nil,   609,   609,   618,   618,
-   618,   nil,   618,   nil,   nil,   nil,   618,   618,   nil,   nil,
-   nil,   618,   nil,   618,   618,   618,   618,   618,   618,   618,
-   nil,   nil,   nil,   nil,   nil,   618,   618,   618,   618,   618,
-   618,   618,   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,
-   nil,   618,   nil,   nil,   618,   618,   618,   618,   618,   618,
-   618,   618,   nil,   618,   618,   618,   nil,   618,   618,   nil,
-   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   618,   nil,   nil,   618,   nil,   nil,   618,   618,
-   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   618,   618,   618,   618,   618,   618,   nil,   nil,   nil,
-   618,   618,   nil,   nil,   nil,   nil,   nil,   nil,   618,   nil,
-   nil,   618,   618,   618,   nil,   618,   618,   832,   832,   832,
-   nil,   832,   nil,   nil,   nil,   832,   832,   nil,   nil,   nil,
-   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,   832,   832,   832,   832,   832,
-   832,   nil,   832,   832,   832,   nil,   832,   832,   nil,   nil,
-   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   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,   832,   832,   nil,   832,   832,   843,   843,   843,   nil,
-   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,   nil,   843,
-   nil,   nil,   843,   843,   843,   843,   843,   843,   843,   843,
-   nil,   843,   843,   843,   nil,   843,   843,   nil,   nil,   nil,
-   843,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   843,   nil,   nil,   843,   nil,   nil,   843,   843,   nil,   nil,
-   843,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   843,
-   843,   843,   843,   843,   843,   nil,   nil,   nil,   843,   843,
-   nil,   nil,   nil,   nil,   nil,   nil,   843,   nil,   nil,   843,
-   843,   843,   nil,   843,   843,  1066,  1066,  1066,   nil,  1066,
-   nil,   nil,   nil,  1066,  1066,   nil,   nil,   nil,  1066,   nil,
-  1066,  1066,  1066,  1066,  1066,  1066,  1066,   nil,   nil,   nil,
-   nil,   nil,  1066,  1066,  1066,  1066,  1066,  1066,  1066,   nil,
-   nil,  1066,   nil,   nil,   nil,   nil,   nil,   nil,  1066,   nil,
-   nil,  1066,  1066,  1066,  1066,  1066,  1066,  1066,  1066,   nil,
-  1066,  1066,  1066,   nil,  1066,  1066,   nil,   nil,   nil,  1066,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1066,
-   nil,   nil,  1066,   nil,   nil,  1066,  1066,   nil,   nil,  1066,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1066,  1066,
-  1066,  1066,  1066,  1066,   nil,   nil,   nil,  1066,  1066,   nil,
-   nil,   nil,   nil,   nil,   nil,  1066,   nil,   nil,  1066,  1066,
-  1066,   nil,  1066,  1066,  1127,  1127,  1127,   nil,  1127,   nil,
-   nil,   nil,  1127,  1127,   nil,   nil,   nil,  1127,   nil,  1127,
-  1127,  1127,  1127,  1127,  1127,  1127,   nil,   nil,   nil,   nil,
-   nil,  1127,  1127,  1127,  1127,  1127,  1127,  1127,   nil,   nil,
-  1127,   nil,   nil,   nil,   nil,   nil,   nil,  1127,   nil,   nil,
-  1127,  1127,  1127,  1127,  1127,  1127,  1127,  1127,   nil,  1127,
-  1127,  1127,   nil,  1127,  1127,   nil,   nil,   nil,  1127,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1127,   nil,
-   nil,  1127,   nil,   nil,  1127,  1127,   nil,   nil,  1127,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1127,  1127,  1127,
-  1127,  1127,  1127,   nil,   nil,   nil,  1127,  1127,   nil,   nil,
-   nil,   nil,   nil,   nil,  1127,   nil,   nil,  1127,  1127,  1127,
-   nil,  1127,  1127,  1197,  1197,  1197,   nil,  1197,   nil,   nil,
-   nil,  1197,  1197,   nil,   nil,   nil,  1197,   nil,  1197,  1197,
-  1197,  1197,  1197,  1197,  1197,   nil,   nil,   nil,   nil,   nil,
-  1197,  1197,  1197,  1197,  1197,  1197,  1197,   nil,   nil,  1197,
-   nil,   nil,   nil,   nil,   nil,   nil,  1197,   nil,   nil,  1197,
-  1197,  1197,  1197,  1197,  1197,  1197,  1197,   nil,  1197,  1197,
-  1197,   nil,  1197,  1197,   nil,   nil,   nil,  1197,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1197,   nil,   nil,
-  1197,   nil,   nil,  1197,  1197,   nil,   nil,  1197,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1197,  1197,  1197,  1197,
-  1197,  1197,   nil,   nil,   nil,  1197,  1197,   nil,   nil,   nil,
-   nil,   nil,   nil,  1197,   nil,   nil,  1197,  1197,  1197,   nil,
-  1197,  1197,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
-   nil,   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,   nil,    11,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,
-    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,
-   nil,    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
-   nil,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    11,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
-   nil,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,   nil,   nil,   nil,   nil,   nil,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,   nil,   nil,    12,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,
-    12,    12,    12,    12,    12,    12,    12,   nil,   nil,    12,
-    12,   nil,   nil,   nil,    12,    12,    12,    12,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    27,    27,
-    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
-    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
-    27,    27,   nil,   nil,   nil,    27,    27,    27,    27,    27,
-    27,    27,    27,    27,    27,   nil,   nil,   nil,   nil,   nil,
-    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
-    27,    27,   nil,    27,   nil,   nil,   nil,   nil,   nil,   nil,
-    27,    27,   nil,    27,    27,    27,    27,    27,    27,    27,
-   nil,   nil,    27,    27,   nil,   nil,   nil,    27,    27,    27,
-    27,   nil,   nil,   nil,   nil,   nil,    27,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    27,    27,   nil,    27,    27,    27,
-    27,    27,    27,    27,    27,    27,    27,    27,   nil,   nil,
-    27,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    27,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   109,   109,   109,   109,   109,   nil,   nil,   nil,   109,   109,
-   109,   109,   109,   109,   109,   109,   109,   109,   nil,   nil,
-   nil,   nil,   nil,   109,   109,   109,   109,   109,   109,   109,
-   109,   109,   109,   109,   109,   nil,   109,   nil,   nil,   nil,
-   nil,   nil,   nil,   109,   109,   nil,   109,   109,   109,   109,
-   109,   109,   109,   nil,   nil,   109,   109,   nil,   nil,   nil,
-   109,   109,   109,   109,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,   109,   nil,
-   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   109,   nil,   nil,   109,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   109,   443,   443,   443,   443,   443,   443,
-   443,   443,   443,   443,   443,   443,   443,   443,   443,   443,
-   443,   443,   443,   443,   443,   443,   443,   443,   nil,   nil,
-   nil,   443,   443,   443,   443,   443,   443,   443,   443,   443,
-   443,   nil,   nil,   nil,   nil,   nil,   443,   443,   443,   443,
-   443,   443,   443,   443,   443,   nil,   nil,   443,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   443,   443,   nil,   443,
-   443,   443,   443,   443,   443,   443,   nil,   nil,   443,   443,
-   nil,   nil,   nil,   443,   443,   443,   443,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   443,   443,   nil,   443,   443,   443,   443,   443,   443,   443,
-   443,   443,   443,   443,   nil,   nil,   443,   443,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   443,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   443,   692,   692,   692,
-   692,   692,   692,   692,   692,   692,   692,   692,   692,   692,
-   692,   692,   692,   692,   692,   692,   692,   692,   692,   692,
-   692,   nil,   nil,   nil,   692,   692,   692,   692,   692,   692,
-   692,   692,   692,   692,   nil,   nil,   nil,   nil,   nil,   692,
-   692,   692,   692,   692,   692,   692,   692,   692,   nil,   nil,
-   692,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   692,
-   692,   nil,   692,   692,   692,   692,   692,   692,   692,   nil,
-   nil,   692,   692,   nil,   nil,   nil,   692,   692,   692,   692,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   692,   692,   nil,   692,   692,   692,   692,
-   692,   692,   692,   692,   692,   692,   692,   nil,   nil,   692,
-   692,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   692,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   692,
-   808,   808,   808,   808,   808,   808,   808,   808,   808,   808,
-   808,   808,   808,   808,   808,   808,   808,   808,   808,   808,
-   808,   808,   808,   808,   nil,   nil,   nil,   808,   808,   808,
-   808,   808,   808,   808,   808,   808,   808,   nil,   nil,   nil,
-   nil,   nil,   808,   808,   808,   808,   808,   808,   808,   808,
-   808,   nil,   nil,   808,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   808,   808,   nil,   808,   808,   808,   808,   808,
-   808,   808,   nil,   nil,   808,   808,   nil,   nil,   nil,   808,
-   808,   808,   808,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   808,   808,   nil,   808,
-   808,   808,   808,   808,   808,   808,   808,   808,   808,   808,
-   nil,   nil,   808,   nil,   nil,   nil,   nil,   544,   544,   544,
-   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   808,   544,   544,   544,   544,   nil,   nil,   nil,
-   544,   544,   nil,   nil,   nil,   nil,   544,   544,   nil,   nil,
-   nil,   544,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   544,   nil,   nil,   544,   nil,   nil,   nil,   544,   nil,
-   nil,   544,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   nil,
-   544,   544,   544,   544,   544,   544,   nil,   nil,   nil,   544,
-   544,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   544,
-   544,   544,   544,   nil,   544,   544,   nil,   nil,   544,   544,
-   545,   545,   545,   545,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   545,   545,   545,   545,
-   nil,   nil,   nil,   545,   545,   nil,   nil,   nil,   nil,   545,
-   545,   nil,   nil,   nil,   545,   545,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   545,   nil,   nil,   545,   nil,   nil,
-   nil,   545,   nil,   nil,   545,   nil,   545,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   545,
-   nil,   nil,   nil,   545,   545,   545,   545,   545,   545,   nil,
-   nil,   nil,   545,   545,   nil,   nil,   nil,   nil,   nil,   nil,
-   545,   nil,   545,   545,   545,   545,   nil,   545,   545,   nil,
-   nil,   545,   545,   773,   773,   773,   773,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   773,
-   773,   773,   773,   nil,   nil,   nil,   773,   nil,   nil,   nil,
-   nil,   nil,   773,   773,   nil,   nil,   nil,   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,   nil,   773,   nil,   nil,   773,   nil,   773,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   773,   nil,   nil,   nil,   773,   773,   773,   773,
-   773,   773,   nil,   nil,   nil,   773,   773,   773,   nil,   nil,
-   nil,   nil,   nil,   773,   nil,   nil,   773,   773,   773,   nil,
-   773,   773,   nil,   nil,   773,   773,   781,   781,   781,   781,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   781,   781,   781,   781,   nil,   nil,   nil,   781,
-   nil,   nil,   nil,   nil,   nil,   781,   781,   nil,   nil,   nil,
-   781,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   781,   nil,   nil,   781,   nil,   nil,   nil,   781,   nil,   nil,
-   781,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   781,   nil,   nil,   nil,   781,
-   781,   781,   781,   781,   781,   nil,   nil,   nil,   781,   781,
-   nil,   nil,   nil,   nil,   nil,   nil,   781,   nil,   nil,   781,
-   781,   781,   nil,   781,   781,   nil,   nil,   781,   781,   959,
-   959,   959,   959,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   959,   959,   959,   959,   nil,
-   nil,   nil,   959,   nil,   nil,   nil,   nil,   nil,   959,   959,
-   nil,   nil,   nil,   959,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   959,   nil,   nil,   959,   nil,   nil,   nil,
-   959,   nil,   nil,   959,   nil,   959,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   959,   nil,
-   nil,   nil,   959,   959,   959,   959,   959,   959,   nil,   nil,
-   nil,   959,   959,   nil,   nil,   nil,   nil,   nil,   nil,   959,
-   nil,   nil,   959,   959,   959,   nil,   959,   959,   nil,   nil,
-   959,   959,   961,   961,   961,   961,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   961,   961,
-   961,   961,   nil,   nil,   nil,   961,   nil,   nil,   nil,   nil,
-   nil,   961,   961,   nil,   nil,   nil,   961,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   961,   nil,   nil,   961,
-   nil,   nil,   nil,   961,   nil,   nil,   961,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   961,   nil,   nil,   nil,   961,   961,   961,   961,   961,
-   961,   nil,   nil,   nil,   961,   961,   nil,   nil,   nil,   nil,
-   nil,   nil,   961,   nil,   nil,   961,   961,   961,   nil,   961,
-   961,   nil,   nil,   961,   961,   964,   964,   964,   964,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   964,   964,   964,   964,   nil,   nil,   nil,   964,   964,
-   nil,   nil,   nil,   nil,   964,   964,   nil,   nil,   nil,   964,
-   964,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,
-   nil,   nil,   964,   nil,   nil,   nil,   964,   nil,   nil,   964,
-   nil,   964,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   964,   nil,   nil,   nil,   964,   964,
-   964,   964,   964,   964,   nil,   nil,   nil,   964,   964,   nil,
-   nil,   nil,   nil,   nil,   nil,   964,   nil,   964,   964,   964,
-   964,   nil,   964,   964,   nil,   nil,   964,   964,   965,   965,
-   965,   965,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   965,   965,   965,   965,   nil,   nil,
-   nil,   965,   965,   nil,   nil,   nil,   nil,   965,   965,   nil,
-   nil,   nil,   965,   965,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   965,   nil,   nil,   965,   nil,   nil,   nil,   965,
-   nil,   nil,   965,   nil,   965,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,   nil,
-   nil,   965,   965,   965,   965,   965,   965,   nil,   nil,   nil,
-   965,   965,   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,
-   965,   965,   965,   965,   nil,   965,   965,   nil,   nil,   965,
-   965,   971,   971,   971,   971,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   971,   971,   971,
-   971,   nil,   nil,   nil,   971,   nil,   nil,   nil,   nil,   nil,
-   971,   971,   nil,   nil,   nil,   971,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   971,   nil,   nil,   971,   nil,
-   nil,   nil,   971,   nil,   nil,   971,   nil,   971,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   971,   nil,   nil,   nil,   971,   971,   971,   971,   971,   971,
-   nil,   nil,   nil,   971,   971,   nil,   nil,   nil,   nil,   nil,
-   nil,   971,   nil,   nil,   971,   971,   971,   nil,   971,   971,
-   nil,   nil,   971,   971,   977,   977,   977,   977,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   977,   977,   977,   977,   nil,   nil,   nil,   977,   nil,   nil,
-   nil,   nil,   nil,   977,   977,   nil,   nil,   nil,   977,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   977,   nil,
-   nil,   977,   nil,   nil,   nil,   977,   nil,   nil,   977,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   977,   nil,   nil,   nil,   977,   977,   977,
-   977,   977,   977,   nil,   nil,   nil,   977,   977,   nil,   nil,
-   nil,   nil,   nil,   nil,   977,   nil,   nil,   977,   977,   977,
-   nil,   977,   977,   nil,   nil,   977,   977,   978,   978,   978,
-   978,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   978,   978,   978,   978,   nil,   nil,   nil,
-   978,   nil,   nil,   nil,   nil,   nil,   978,   978,   nil,   nil,
-   nil,   978,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   978,   nil,   nil,   978,   nil,   nil,   nil,   978,   nil,
-   nil,   978,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   978,   nil,   nil,   nil,
-   978,   978,   978,   978,   978,   978,   nil,   nil,   nil,   978,
-   978,   nil,   nil,   nil,   nil,   nil,   nil,   978,   nil,   nil,
-   978,   978,   978,   nil,   978,   978,   nil,   nil,   978,   978,
-  1030,  1030,  1030,  1030,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1030,  1030,  1030,  1030,
-   nil,   nil,   nil,  1030,  1030,   nil,   nil,   nil,   nil,  1030,
-  1030,   nil,   nil,   nil,  1030,  1030,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1030,   nil,   nil,  1030,   nil,   nil,
-   nil,  1030,   nil,   nil,  1030,   nil,  1030,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1030,
-   nil,   nil,   nil,  1030,  1030,  1030,  1030,  1030,  1030,   nil,
-   nil,   nil,  1030,  1030,   nil,   nil,   nil,   nil,   nil,   nil,
-  1030,   nil,  1030,  1030,  1030,  1030,   nil,  1030,  1030,   nil,
-   nil,  1030,  1030,  1169,  1169,  1169,  1169,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1169,
-  1169,  1169,  1169,   nil,   nil,   nil,  1169,   nil,   nil,   nil,
-   nil,   nil,  1169,  1169,   nil,   nil,   nil,  1169,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1169,   nil,   nil,
-  1169,   nil,   nil,   nil,  1169,   nil,   nil,  1169,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1169,   nil,   nil,   nil,  1169,  1169,  1169,  1169,
-  1169,  1169,   nil,   nil,   nil,  1169,  1169,   nil,   nil,   nil,
-   nil,   nil,   nil,  1169,   nil,   nil,  1169,  1169,  1169,   nil,
-  1169,  1169,   nil,   nil,  1169,  1169,  1178,  1178,  1178,  1178,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1178,  1178,  1178,  1178,   nil,   nil,   nil,  1178,
-   nil,   nil,   nil,   nil,   nil,  1178,  1178,   nil,   nil,   nil,
-  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1178,   nil,   nil,  1178,   nil,   nil,   nil,  1178,   nil,   nil,
-  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1178,   nil,   nil,   nil,  1178,
-  1178,  1178,  1178,  1178,  1178,   nil,   nil,   nil,  1178,  1178,
-   nil,   nil,   nil,   nil,   nil,   nil,  1178,   nil,   nil,  1178,
-  1178,  1178,   nil,  1178,  1178,   nil,   nil,  1178,  1178,  1182,
-  1182,  1182,  1182,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1182,  1182,  1182,  1182,   nil,
-   nil,   nil,  1182,   nil,   nil,   nil,   nil,   nil,  1182,  1182,
-   nil,   nil,   nil,  1182,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1182,   nil,   nil,  1182,   nil,   nil,   nil,
-  1182,   nil,   nil,  1182,   nil,  1182,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1182,   nil,
-   nil,   nil,  1182,  1182,  1182,  1182,  1182,  1182,   nil,   nil,
-   nil,  1182,  1182,   nil,   nil,   nil,   nil,   nil,   nil,  1182,
-   nil,   nil,  1182,  1182,  1182,   nil,  1182,  1182,   nil,   nil,
-  1182,  1182,  1230,  1230,  1230,  1230,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1230,  1230,
-  1230,  1230,   nil,   nil,   nil,  1230,   nil,   nil,   nil,   nil,
-   nil,  1230,  1230,   nil,   nil,   nil,  1230,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1230,   nil,   nil,  1230,
-   nil,   nil,   nil,  1230,   nil,   nil,  1230,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1230,   nil,   nil,   nil,  1230,  1230,  1230,  1230,  1230,
-  1230,   nil,   nil,   nil,  1230,  1230,   nil,   nil,   nil,   nil,
-   nil,   nil,  1230,   nil,   nil,  1230,  1230,  1230,   nil,  1230,
-  1230,   nil,   nil,  1230,  1230,  1265,  1265,  1265,  1265,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1265,  1265,  1265,  1265,   nil,   nil,   nil,  1265,   nil,
-   nil,   nil,   nil,   nil,  1265,  1265,   nil,   nil,   nil,  1265,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   986,   986,   986,
-   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1265,
-   nil,   nil,  1265,   986,   986,   986,  1265,   nil,   nil,  1265,
-   nil,   nil,   nil,   nil,   nil,   nil,   986,   986,   nil,   nil,
-   nil,   986,   nil,   nil,  1265,   nil,   nil,   nil,  1265,  1265,
-  1265,  1265,  1265,  1265,   nil,   nil,   nil,  1265,  1265,   nil,
-   nil,   nil,   nil,   nil,   nil,  1265,   nil,   nil,  1265,  1265,
-  1265,   nil,  1265,  1265,   nil,   nil,  1265,  1265,   nil,   nil,
-   240,   nil,   240,   240,   240,   240,   240,   nil,   nil,   nil,
-   986,   986,   986,   986,   986,   986,   240,   nil,   nil,   986,
-   986,   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,
-   986,   986,   986,   nil,   986,   986,   nil,   241,   240,   241,
-   241,   241,   241,   241,   nil,   nil,   nil,   240,   240,   240,
-   240,   nil,   408,   241,   408,   408,   408,   408,   408,   nil,
-   665,   nil,   665,   665,   665,   665,   665,   nil,   408,   nil,
-   nil,   nil,   nil,   nil,   nil,   241,   665,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   241,   241,   241,   241,   nil,   nil,
-   408,   408,   nil,   240,   nil,   nil,   nil,   nil,   665,   408,
-   408,   408,   408,   nil,   nil,   nil,   nil,   665,   665,   665,
-   665,   729,   nil,   729,   729,   729,   729,   729,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,   nil,
-   241,   nil,   nil,   nil,   731,   408,   731,   731,   731,   731,
-   731,   nil,   nil,   665,   nil,   408,   nil,   nil,   nil,   729,
-   731,   nil,   nil,   665,   nil,   nil,   nil,   nil,   729,   729,
-   729,   729,  1069,   nil,  1069,  1069,  1069,  1069,  1069,   nil,
-   nil,   nil,   731,   nil,   nil,   nil,   nil,   nil,  1069,   nil,
-   nil,   731,   731,   731,   731,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   729,   nil,   nil,   nil,   nil,   nil,
-  1069,   nil,   nil,   nil,   729,   nil,   nil,   nil,   nil,  1069,
-  1069,  1069,  1069,   nil,   nil,   nil,   nil,   731,   232,   232,
-   nil,   nil,   232,   nil,   nil,   nil,   nil,   731,   nil,   nil,
-   nil,   232,   232,   nil,   232,   232,   232,   232,   232,   232,
-   232,   nil,   nil,   232,   232,  1069,   nil,   nil,   232,   232,
-   232,   232,   nil,   nil,   nil,  1069,   nil,   232,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   232,   232,   nil,   232,   232,
-   232,   232,   232,   232,   232,   232,   232,   232,   232,   nil,
-   nil,   232,   nil,   nil,   nil,   nil,   233,   233,   nil,   nil,
-   233,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   233,
-   233,   232,   233,   233,   233,   233,   233,   233,   233,   nil,
-   nil,   233,   233,   nil,   nil,   nil,   233,   233,   233,   233,
-   nil,   nil,   nil,   nil,   nil,   233,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   233,   233,   nil,   233,   233,   233,   233,
-   233,   233,   233,   233,   233,   233,   233,   nil,   nil,   233,
-   nil,   nil,   nil,   nil,   310,   310,   nil,   nil,   310,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   310,   310,   233,
-   310,   310,   310,   310,   310,   310,   310,   nil,   nil,   310,
-   310,   nil,   nil,   nil,   310,   310,   310,   310,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   310,   310,   nil,   310,   310,   310,   310,   310,   310,
-   310,   310,   310,   310,   310,   nil,   nil,   310,   nil,   nil,
-   nil,   nil,   535,   535,   nil,   nil,   535,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   535,   535,   310,   535,   535,
-   535,   535,   535,   535,   535,   nil,   nil,   535,   535,   nil,
-   nil,   nil,   535,   535,   535,   535,   nil,   nil,   nil,   nil,
-   nil,   535,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   535,
-   535,   nil,   535,   535,   535,   535,   535,   535,   535,   535,
-   535,   535,   535,   nil,   nil,   535,   nil,   nil,   nil,   nil,
-   536,   536,   nil,   nil,   536,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   536,   536,   535,   536,   536,   536,   536,
-   536,   536,   536,   nil,   nil,   536,   536,   nil,   nil,   nil,
-   536,   536,   536,   536,   nil,   nil,   nil,   nil,   nil,   536,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   536,   536,   nil,
-   536,   536,   536,   536,   536,   536,   536,   536,   536,   536,
-   536,   nil,   nil,   536,   nil,   nil,   nil,   nil,   612,   612,
-   nil,   nil,   612,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   612,   612,   536,   612,   612,   612,   612,   612,   612,
-   612,   nil,   nil,   612,   612,   nil,   nil,   nil,   612,   612,
-   612,   612,   nil,   nil,   nil,   nil,   nil,   612,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   612,   612,   nil,   612,   612,
-   612,   612,   612,   612,   612,   612,   612,   612,   612,   nil,
-   nil,   612,   nil,   nil,   nil,   nil,   613,   613,   nil,   nil,
-   613,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   613,
-   613,   612,   613,   613,   613,   613,   613,   613,   613,   nil,
-   nil,   613,   613,   nil,   nil,   nil,   613,   613,   613,   613,
-   nil,   nil,   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   613,   613,   nil,   613,   613,   613,   613,
-   613,   613,   613,   613,   613,   613,   613,   nil,   nil,   613,
-   nil,   nil,   nil,   nil,   622,   622,   nil,   nil,   622,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   622,   622,   613,
-   622,   622,   622,   622,   622,   622,   622,   nil,   nil,   622,
-   622,   nil,   nil,   nil,   622,   622,   622,   622,   nil,   nil,
-   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   622,   622,   nil,   622,   622,   622,   622,   622,   622,
-   622,   622,   622,   622,   622,   nil,   nil,   622,   nil,   nil,
-   nil,   nil,   623,   623,   nil,   nil,   623,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   623,   623,   622,   623,   623,
-   623,   623,   623,   623,   623,   nil,   nil,   623,   623,   nil,
-   nil,   nil,   623,   623,   623,   623,   nil,   nil,   nil,   nil,
-   nil,   623,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   623,
-   623,   nil,   623,   623,   623,   623,   623,   623,   623,   623,
-   623,   623,   623,   nil,   nil,   623,   nil,   nil,   nil,   nil,
-   651,   651,   nil,   nil,   651,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   651,   651,   623,   651,   651,   651,   651,
-   651,   651,   651,   nil,   nil,   651,   651,   nil,   nil,   nil,
-   651,   651,   651,   651,   nil,   nil,   nil,   nil,   nil,   651,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   651,   651,   nil,
-   651,   651,   651,   651,   651,   651,   651,   651,   651,   651,
-   651,   nil,   nil,   651,   nil,   nil,   nil,   nil,   652,   652,
-   nil,   nil,   652,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   652,   652,   651,   652,   652,   652,   652,   652,   652,
-   652,   nil,   nil,   652,   652,   nil,   nil,   nil,   652,   652,
-   652,   652,   nil,   nil,   nil,   nil,   nil,   652,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   652,   652,   nil,   652,   652,
-   652,   652,   652,   652,   652,   652,   652,   652,   652,   nil,
-   nil,   652,   nil,   nil,   nil,   nil,   699,   699,   nil,   nil,
-   699,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   699,
-   699,   652,   699,   699,   699,   699,   699,   699,   699,   nil,
-   nil,   699,   699,   nil,   nil,   nil,   699,   699,   699,   699,
-   nil,   nil,   nil,   nil,   nil,   699,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   699,   699,   nil,   699,   699,   699,   699,
-   699,   699,   699,   699,   699,   699,   699,   nil,   nil,   699,
-   nil,   nil,   nil,   nil,   700,   700,   nil,   nil,   700,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   700,   700,   699,
-   700,   700,   700,   700,   700,   700,   700,   nil,   nil,   700,
-   700,   nil,   nil,   nil,   700,   700,   700,   700,   nil,   nil,
-   nil,   nil,   nil,   700,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   700,   700,   nil,   700,   700,   700,   700,   700,   700,
-   700,   700,   700,   700,   700,   nil,   nil,   700,   nil,   nil,
-   nil,   nil,   879,   879,   nil,   nil,   879,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   879,   879,   700,   879,   879,
-   879,   879,   879,   879,   879,   nil,   nil,   879,   879,   nil,
-   nil,   nil,   879,   879,   879,   879,   nil,   nil,   nil,   nil,
-   nil,   879,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   879,
-   879,   nil,   879,   879,   879,   879,   879,   879,   879,   879,
-   879,   879,   879,   nil,   nil,   879,   nil,   nil,   nil,   nil,
-   880,   880,   nil,   nil,   880,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   880,   880,   879,   880,   880,   880,   880,
-   880,   880,   880,   nil,   nil,   880,   880,   nil,   nil,   nil,
-   880,   880,   880,   880,   nil,   nil,   nil,   nil,   nil,   880,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   880,   880,   nil,
-   880,   880,   880,   880,   880,   880,   880,   880,   880,   880,
-   880,   nil,   nil,   880,   nil,   nil,   nil,   nil,  1220,  1220,
-   nil,   nil,  1220,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1220,  1220,   880,  1220,  1220,  1220,  1220,  1220,  1220,
-  1220,   nil,   nil,  1220,  1220,   nil,   nil,   nil,  1220,  1220,
-  1220,  1220,   nil,   nil,   nil,   nil,   nil,  1220,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1220,  1220,   nil,  1220,  1220,
-  1220,  1220,  1220,  1220,  1220,  1220,  1220,  1220,  1220,   nil,
-   nil,  1220,   nil,   nil,   nil,   nil,  1221,  1221,   nil,   nil,
-  1221,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1221,
-  1221,  1220,  1221,  1221,  1221,  1221,  1221,  1221,  1221,   nil,
-   nil,  1221,  1221,   nil,   nil,   nil,  1221,  1221,  1221,  1221,
-   nil,   nil,   nil,   nil,   nil,  1221,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1221,  1221,   nil,  1221,  1221,  1221,  1221,
-  1221,  1221,  1221,  1221,  1221,  1221,  1221,   nil,   nil,  1221,
-   nil,   nil,   nil,   nil,  1245,  1245,   nil,   nil,  1245,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1245,  1245,  1221,
-  1245,  1245,  1245,  1245,  1245,  1245,  1245,   nil,   nil,  1245,
-  1245,   nil,   nil,   nil,  1245,  1245,  1245,  1245,   nil,   nil,
-   nil,   nil,   nil,  1245,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1245,  1245,   nil,  1245,  1245,  1245,  1245,  1245,  1245,
-  1245,  1245,  1245,  1245,  1245,   nil,   nil,  1245,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1245 ]
-
-racc_action_pointer = [
-   nil,   193,  1098,   202,   nil,   194,   nil,   nil,  5417,  1083,
-   nil, 26870, 27003,   105,   nil,   108,   177,    23,   287,   317,
-   -32,    92,   283,   nil,   -65,  5560,  1386, 27136,   362,   nil,
-   -40,   nil,   165,  5698,  5830,  5960,  6103,  6246,   nil,  1242,
- 24924, 25063,   nil,   280,   449,   513,   370,  6389,  6532,   167,
-  6675,  6818,   697,  6961,   315,   361,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  7099,   nil,  7240,   nil,   nil,
-   -22,   nil,  7383,  7526,   nil,   nil,  7669, 25202,   370,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   208,   nil,   nil,   nil,
-   nil,   nil,   nil,   380,   417,   425,   449,   nil,   nil, 27269,
-   nil,   nil,   nil,   nil,   nil,   nil,     0,   nil,   nil,   136,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  7812,   nil,   nil,   nil,   nil,  7955,  8098,  8241,
-  8384,  8527,   478,   nil,   399,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   476,   nil,  1386,  8670,  8813,  8956,  9099,
-  9242,  9385, 29877, 29945,   nil,   nil,   488,  1530,   533,   nil,
- 29659, 29696,   537,  1674,  9528,  9671,  9814,   nil,   nil,   376,
-   -21,   104,   636,   114,   551,   612,   nil,  9957,   226,   241,
-  1818,   611,   nil,   nil, 10100, 10243, 10386, 10529, 10672, 10815,
- 10958, 11101, 11244, 11387, 11530, 11673, 11816, 11959, 12102, 12245,
- 12388, 12531, 12674, 12817, 12960, 13103,   nil,   nil,   nil,   nil,
- 13246,   nil,   nil,   388,   412,   514,   548,   552,   576,   596,
-   617,   654,   736,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
- 30013,   nil,   nil,   606, 13389, 13532,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil, 13675,   nil,  2106,   nil,   584,   586,
-   nil, 13818,   639, 13961,   nil,   nil, 14104, 14247,   nil,   nil,
-   396,   nil,   nil, 14390,  1227,   nil,   596,  1962,   635,   675,
-   643, 25341,  2106,   455,   504,   516,   721,   591,   nil,   725,
-   701,   193,   773,   775,   nil,   nil,   nil,   778,   266,   743,
- 25480,   nil,   597,   620,  3402,  3546,   814,   nil,   835, 14533,
-   nil, 14676,  2250,  1329,   785, 14819, 14962,   nil,   704,    -8,
-     8, 15105,  2394,  2538,   412,   896,   785,   -19,    -7,   640,
-   875,    24,   907,   nil,   nil, 25619,   nil, 25758, 29711,   nil,
-   383,   nil,   402,   nil,   136,   nil,   818,   440,   nil,   821,
-   481,   nil,   827,   -59,   nil,   828,   -58,   nil,   485,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil, 27402,   nil,   nil,   nil,   nil,   840,   nil,
-   913,   828, 15248,   834,   nil,   nil,   818,   nil,   650,   147,
-   924,   nil,   nil,  1530,   nil,   nil,   nil,   nil,   nil,  1674,
-   848,   nil,   nil,   849,   854,   644,   649,  7240,   nil,   nil,
-   nil,   272,   408,   900,   nil,   nil, 15386, 15518, 15651,   989,
-   989,   nil,   nil,   873,   875,   876,   nil,   nil,   881,   882,
-   888,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   887,   784,   nil,   nil, 15794,   nil,   nil,   nil,     0,   nil,
-   nil,   nil,   983,   nil,   nil,   987,   462, 15937,  1032,   nil,
-   nil,   nil,   -26,   nil,   951, 30081, 30149, 16080,   223, 16223,
- 16366, 16509,   899,   901, 27755, 27868,  3690,  3834,   810,  1007,
-   981,   982,   983,   985,  5417,  5560,  1121,  3978,  4122,  4266,
-  4410,  4554,  4698,  1214,  1243,  4842,  4986,  2250,  5130,   nil,
-   nil,   nil, 16652,  1045,   nil, 16790,   nil,   nil,   nil,   nil,
- 16916,   936,   937,   947,   nil,   nil,   nil,   949,   nil,   nil,
- 17059,   nil,   nil, 17202,   nil, 17345,   nil,   196,   nil,   nil,
-   nil, 17488,  1515,   968,   956,   956,   nil,   nil,   957, 25897,
-   967, 17631, 30217, 30285,   652,  1005,   nil,   nil, 26036,   967,
-   nil, 17774, 30353, 30421, 17917,  5274,  2394, 18060,  1088,   979,
-   nil,   nil,   -94,   172,  1012,  1021,   nil,   534,  1052,  2682,
-  1142,   nil,  2826,    63,  1149,  1152,   337,  1157,   nil,   nil,
- 18203, 30489, 30557,    26,   nil,  1087,  1089,   181,   nil,   725,
-   nil,  1061, 18346,   nil,   nil, 29719,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   208,   nil,
-   nil,   298,   nil,   nil,   nil,  1039,   nil,   nil,  1040,   nil,
-  2970,   nil, 27535,   nil, 18489,  1042, 18632, 18775, 18918, 30625,
- 30693, 19061, 19204,   651,  1080, 19347, 19490, 19633, 19776,  1079,
-   nil,   nil,   nil, 19919, 20062,  1081,   nil,  1137,  1818,   551,
-   nil, 20205,   nil,   nil,   nil,   330,   nil,   nil,   742, 29770,
-   nil, 29793,   nil, 16796,   nil,   nil, 20348,   nil,   918,   nil,
-  1056,  1057,  1372,  1063,   nil,   nil,   nil,   nil,   nil,   nil,
-  1149,  1962,   nil,   nil,   nil,   281,   326,   544,   680,  1067,
- 20491, 20634,   nil,   -31,   nil,   nil,   nil,   nil,  1086,   nil,
-   nil,   nil,   375, 27981,   -82,   nil,  1068,  1147,  1073,   nil,
-   nil, 28094,   nil,   nil,     1,   nil,   nil,   768,   nil,   nil,
-   952,  7099,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   955,   443,   nil,   nil,  1075, 27668,   -14,
-   nil,   113,  1182,   -19,   nil,   nil, 20777,   nil,  1106,   nil,
-  1212,   nil,  1099,   nil,  1144, 20920,   nil,   nil, 21063,   nil,
-   nil,   158, 26175,  1107,   nil,  1113,    -9,    -5,  1150,    25,
-   776,  1159,  1121, 26314,   nil,  1184,    -7,   nil,   nil,   nil,
- 21206,   nil,   nil, 21349,   nil,   nil,   nil,   836,   nil,  1240,
-   nil,   nil,   nil,   nil,   nil,  1246,  1249,   nil,   nil, 21492,
-  1152,    29,    30,   162,   163,  3114,   nil,   766,   nil, 30761,
- 30829, 21635,   nil,   nil,   nil,   839,  3258,    34,  1153,  1153,
-  3402,   nil,   nil,   nil,   nil,   nil,  1169,   nil,   nil,  1154,
- 21778,  1158,   402,   421,   816,   952,   nil,  2538, 21921,   nil,
-  1156,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil, 22064, 22207,   nil,   nil,   nil,   nil,  3546,   nil,  1169,
-  1214,   nil,   nil,  1176,   nil,  1260,   nil,   nil,  1183,  1185,
-   nil,  1186,  1193,   nil,  1194,   nil,   nil,  1198,  1084,  3964,
-   nil,   nil, 22350, 22493, 22636, 22779, 22922, 23065,   479, 28207,
-  1275, 28320,  1236,   195, 28433, 28546,   589,    96,  1203,  1204,
-   nil, 28659,   nil,  1203,   266,   nil,  1220, 28772, 28885,   nil,
-   340,  1248,   213,   nil,   nil, 16775, 29605,   nil,   nil,   nil,
-   nil, 23208,   nil,   nil,   nil,   nil,   nil, 23351,   nil,   nil,
-   nil,   nil,   337,   nil,  3690,   nil,   nil,  1224,  1213,   nil,
-   117,   nil,   nil,   nil,   nil,  1212,    39,   nil,   nil,   691,
-  1336,   nil,   nil, 23494,   nil,  3834,  1341,   nil,   nil,   nil,
- 28998,   nil, 23637,    69,    68,  1342,  1231,   784,   nil,  1227,
-  3978, 23780,   465,  1345,   nil,  4122,  4266,  1224,  1230,   nil,
-   nil,   nil,   nil,   nil,  1225,   nil,  1235,   490,   nil,   nil,
- 23923,  2682,  2826,  4410,   nil,     9, 26453,   nil,   nil, 29821,
-   nil, 24945,   nil, 25084,   nil, 25223,   nil,   nil,   nil,   nil,
-  1236,  1246,  2970,  3114, 24066,   nil,  1247,   nil,   nil,   nil,
-   nil,  1289,  1292,  1293,  1267,  1268,  1269,   nil,   nil,   nil,
-  1310,  1270,   -33,   nil,  1274,   nil,   nil,   740,  1273,   nil,
-   nil,   nil,   nil,   nil,   nil,  1285,  3258,  1283,  1284,   nil,
-  1285,  1293,  1299,   nil,  1333,  1320,  1303, 26592,   nil,   nil,
-   nil,   nil,   nil,  4554,   nil,   nil,    35,   nil,   nil,    43,
-   858,   nil, 24209,  4698,   nil,   nil,  1455,   598,   nil,   nil,
-  1354,  1459,  2092,   nil,   nil,  1463,  4842,   120,   135,   786,
-  1418,   144,   nil,  1347,  1348,  1351,  1352,  4108,  4252, 29111,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1354, 29224,   nil,
-   243,   nil, 29337,   nil,   367,   nil,   nil,   475,   nil,   nil,
-   nil,   611,   nil,   745,   nil,   nil,  1377, 26731,   855,  1443,
-   nil,  4986,   nil, 24352, 24495,   nil, 24638,   426,   nil,   nil,
-  5130,   nil,   nil,   707,   nil,   nil,   nil,   nil,  1492, 24781,
- 30897, 30965,   145, 25362,   nil,   nil,   nil,   nil,  1371,  1378,
- 29450,  1379,   nil,   nil,  1380,   nil,   nil,  1383,  1385,  1386,
-  1387,   nil,  1388,   nil,   861, 31033,   nil,   892,  5274,   nil,
-   nil,   nil,   nil,   nil,   nil,  1510,   nil,  2236,   nil,  1394,
-   158,   168,   169,   236,  1395, 29563,  1398,   nil,   881,   nil,
-  5662,   nil,  5761,   nil,  7063,   nil,   nil,  1438,  1447,   nil,
-    32,   nil,   nil,   171,   nil,  1409,  1410,  1413,  1414,   nil,
-   nil,   nil, 15350,   nil,   nil,   nil,   nil,  1415,   nil ]
-
-racc_action_default = [
-    -1,  -786,  -785,  -786,    -2,  -771,    -4,    -5,  -786,    -8,
-    -9,  -786,  -786,  -786,   -36,  -786,  -786,   -41,  -786,  -786,
-  -677,  -677,  -316,   -57,  -773,  -786,   -66,  -786,   -75,   -76,
-   -77,   -81,  -292,  -292,  -292,  -331,  -362,  -363,   -93,  -785,
-   -97,  -105,  -107,  -786,  -664,  -665,  -786,  -786,  -786,  -786,
-  -786,  -786,  -245,  -786,  -773,  -263,  -307,  -308,  -309,  -310,
-  -311,  -312,  -313,  -314,  -315,  -757,  -318,  -320,  -327,  -329,
-  -339,  -341,  -786,  -786,   -72,   -72,  -771,  -786,  -350,  -357,
-  -364,  -365,  -367,  -368,  -369,  -370,  -371,  -372,  -373,  -374,
-  -375,  -376,  -385,  -444,  -591,  -592,  -593,  -594,  -595,  -785,
-  -598,  -785,  -785,  -785,  -785,  -785,  -785,  -634,  -635,  -785,
-  -637,  -643,  -645,  -646,  -647,  -648,  -755,  -653,  -654,  -756,
-  -656,  -657,  -658,  -659,  -660,  -661,  -662,  -663,  -668,  -669,
-  1299,    -3,  -772,  -781,  -782,  -783,    -7,  -786,  -786,  -786,
-  -786,  -786,  -786,   -24,  -786,  -136,  -137,  -138,  -139,  -140,
-  -141,  -142,  -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,
-  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,
-  -204,  -205,  -206,  -207,  -208,  -209,  -210,  -211,  -212,  -213,
-  -214,  -215,  -216,   -29,  -143,  -785,  -786,  -786,  -786,  -786,
-  -786,  -785,  -786,  -786,  -767,  -768,  -786,  -785,  -676,  -674,
-  -700,  -700,  -786,  -785,  -786,  -786,  -773,  -774,   -61,  -786,
-  -664,  -665,  -786,  -316,  -786,  -786,  -251,  -786,  -677,  -677,
-  -785,  -786,   -62,   -64,  -228,  -229,  -786,  -786,  -786,  -786,
-  -786,  -786,  -786,  -786,  -786,  -786,  -786,  -786,  -786,  -786,
-  -786,  -786,  -786,  -786,  -786,  -786,  -264,  -265,  -266,  -267,
-  -786,   -67,   -68,  -786,  -136,  -137,  -176,  -177,  -178,  -194,
-  -199,  -206,  -209,  -664,  -665,  -743,  -744,  -378,  -472,  -452,
-  -786,  -769,  -770,   -82,  -785,  -786,  -338,  -377,  -456,  -465,
-  -467,   -88,  -462,   -89,  -773,   -90,  -270,  -287,  -785,  -785,
-  -291,  -295,  -298,  -786,  -785,  -748,  -752,  -786,   -91,   -92,
-  -771,   -17,   -18,  -786,   -21,   -22,   -95,  -785,  -773,  -786,
-   -98,  -101,  -785,  -113,  -114,  -786,  -786,  -121,  -331,  -334,
-  -773,  -786,  -677,  -677,  -362,  -363,  -366,  -463,  -786,  -103,
-  -786,  -109,  -326,  -786,  -230,  -231,  -644,  -239,  -240,  -786,
-  -252,  -786,  -785,  -322,  -773,  -785,  -785,  -340,   -71,  -786,
-  -786,  -786,  -785,  -785,  -771,  -786,  -772,  -664,  -665,  -786,
-  -786,  -316,  -786,  -395,  -396,  -786,  -353,  -786,  -700,  -596,
-  -786,  -619,  -786,  -621,  -786,  -623,  -786,  -786,  -603,  -786,
-  -786,  -609,  -786,  -786,  -615,  -786,  -786,  -617,  -786,  -636,
-  -638,  -639,  -640,  -641,    -6,  -784,   -30,   -31,   -32,   -33,
-   -34,   -10,   -11,  -786,   -26,   -27,   -28,  -144,  -786,   -37,
-   -40,  -303,  -786,  -786,  -302,   -38,  -786,   -42,  -786,  -316,
-   -54,   -56,  -217,  -275,  -298,   -58,   -59,   -43,  -218,  -275,
-  -773,  -282,  -283,  -785,  -785,  -758,  -759,  -292,  -460,  -760,
-  -761,  -759,  -758,  -292,  -459,  -461,  -760,  -761,  -786,  -583,
-  -786,  -408,  -409,  -773,  -742,  -742,  -682,  -683,  -685,  -685,
-  -685,  -699,  -701,  -702,  -703,  -704,  -705,  -706,  -707,  -708,
-  -709,  -786,  -711,  -713,  -715,  -720,  -722,  -723,  -726,  -731,
-  -733,  -734,  -736,  -737,  -738,  -740,  -786,  -786,  -786,   -53,
-  -225,   -60,  -773,  -337,  -786,  -786,  -786,  -785,  -326,  -786,
-  -786,  -786,  -786,  -786,  -786,  -786,  -226,  -227,  -232,  -233,
-  -234,  -235,  -236,  -237,  -241,  -242,  -243,  -244,  -246,  -247,
-  -248,  -249,  -250,  -253,  -254,  -255,  -256,  -773,  -268,   -69,
-  -765,  -766,  -786,  -786,  -473,  -292,  -758,  -759,   -79,   -83,
-  -701,  -773,  -785,  -773,  -293,  -469,  -472,  -773,  -333,  -288,
-  -786,  -297,  -289,  -786,  -294,  -786,  -299,  -786,  -751,  -754,
-   -16,  -772,   -20,  -786,  -773,   -94,  -324,  -110,   -99,  -786,
-  -773,  -785,  -786,  -786,  -120,  -786,  -676,  -644,  -786,  -106,
-  -111,  -786,  -786,  -786,  -786,  -269,  -257,  -786,  -786,  -773,
-  -321,  -271,  -778,  -778,  -786,  -786,  -746,  -778,  -786,  -785,
-  -386,  -387,  -785,  -786,  -786,  -786,  -786,  -786,  -381,  -479,
-  -785,  -786,  -786,  -326,   -72,  -131,  -132,  -786,  -134,  -786,
-  -316,  -785,  -786,  -358,  -445,  -700,  -448,  -597,  -620,  -625,
-  -626,  -628,  -599,  -622,  -600,  -624,  -601,  -602,  -786,  -605,
-  -607,  -786,  -608,  -611,  -612,  -786,  -613,  -614,  -786,  -642,
-  -785,   -25,  -786,   -35,  -786,  -306,  -786,  -786,  -785,  -786,
-  -786,  -786,  -786,  -464,  -786,  -284,  -286,  -786,  -786,   -84,
-  -280,  -281,  -457,  -786,  -786,   -86,  -458,   -49,  -259,  -785,
-  -379,  -785,  -360,  -384,  -675,  -786,  -680,  -681,  -786,  -786,
-  -692,  -786,  -695,  -786,  -697,  -410,  -786,  -397,  -786,  -399,
-  -401,  -404,  -407,  -773,  -714,  -724,  -725,  -735,  -739,  -678,
-   -51,  -261,  -361,  -336,  -775,  -758,  -759,  -758,  -759,  -773,
-  -786,  -786,   -63,  -491,  -494,  -495,  -496,  -497,  -499,  -501,
-  -504,  -505,  -562,  -773,  -517,  -520,  -532,  -536,  -541,  -543,
-  -544,  -547,  -548,  -785,  -551,  -553,  -554,  -555,  -560,  -561,
-  -786,  -786,  -565,  -566,  -567,  -568,  -569,  -570,  -571,  -572,
-  -573,  -574,  -575,  -786,  -786,  -581,   -65,  -786,  -786,  -773,
-  -451,  -785,   -78,  -453,  -469,  -277,  -284,  -279,  -786,  -470,
-  -786,  -332,  -785,  -296,  -300,  -786,  -749,  -750,  -786,   -19,
-   -23,   -96,  -786,  -102,  -108,  -773,  -758,  -759,  -785,  -762,
-  -119,  -786,  -104,  -786,  -224,  -238,  -773,  -319,  -323,  -272,
-  -780,  -779,  -274,  -780,  -328,  -330,  -747,  -785,  -388,  -785,
-   -73,  -389,  -390,  -344,  -345,  -786,  -786,  -483,  -347,  -786,
-  -773,  -758,  -759,  -762,  -325,  -785,  -131,  -132,  -133,  -786,
-  -786,  -785,  -351,  -670,  -672,  -354,  -785,  -786,  -773,  -786,
-  -785,  -604,  -606,  -610,  -616,  -618,  -786,  -145,   -39,  -304,
-  -786,  -773,  -758,  -759,  -759,  -758,   -55,  -276,  -786,  -776,
-  -785,   -45,  -220,   -46,  -221,   -85,   -47,  -223,   -48,  -222,
-   -87,  -786,  -786,   -13,   -15,  -380,  -382,  -785,  -590,  -584,
-  -785,  -585,  -586,  -742,  -721,  -726,  -741,  -684,  -685,  -685,
-  -712,  -685,  -685,  -732,  -685,  -709,  -727,  -773,  -786,  -786,
-  -406,  -710,  -786,  -786,  -786,  -786,  -786,  -786,  -464,  -492,
-  -786,  -786,  -502,  -503,  -786,  -786,  -786,  -522,  -773,  -773,
-  -516,  -523,  -529,  -786,  -786,  -519,  -786,  -786,  -786,  -535,
-  -542,  -546,  -786,  -550,  -552,  -558,  -559,  -563,  -564,  -576,
-  -577,  -786,  -649,  -650,  -651,  -132,  -579,  -786,   -70,  -745,
-  -433,  -434,  -773,  -436,  -785,  -455,  -454,  -786,  -773,  -466,
-  -785,  -468,  -290,  -301,  -753,  -100,  -464,  -112,  -335,  -778,
-  -786,  -383,  -391,  -786,  -393,  -785,  -786,   -74,  -346,  -348,
-  -786,  -475,  -786,  -786,  -464,  -786,  -131,  -132,  -135,  -773,
-  -785,  -786,  -786,  -786,  -446,  -785,  -785,  -438,  -773,  -627,
-  -630,  -631,  -632,  -633,  -786,   -12,  -305,  -464,   -44,  -219,
-  -285,   -50,  -260,  -785,  -589,  -786,  -786,  -588,  -679,  -786,
-  -688,  -786,  -690,  -786,  -693,  -786,  -696,  -698,  -398,  -400,
-  -402,  -405,   -52,  -262,  -786,  -493,  -532,  -498,  -500,  -509,
-  -513,  -786,  -786,  -786,  -773,  -773,  -773,  -580,  -514,  -515,
-  -539,  -524,  -527,  -530,  -773,  -785,  -777,  -786,  -533,  -537,
-  -540,  -545,  -549,  -556,  -557,  -773,  -258,  -742,  -742,  -414,
-  -785,  -785,  -785,  -432,  -786,  -773,  -709,  -717,  -718,  -729,
-  -474,   -80,  -278,  -785,  -273,  -342,  -786,  -394,  -343,  -786,
-  -488,  -476,  -786,  -785,  -349,  -464,  -786,  -786,  -355,  -359,
-  -786,  -786,  -786,  -447,  -629,  -785,  -785,  -664,  -665,  -786,
-  -786,  -316,  -587,  -685,  -685,  -685,  -685,  -786,  -786,  -786,
-  -506,  -507,  -508,  -510,  -511,  -512,  -531,  -525,  -786,  -518,
-  -786,  -521,  -786,  -578,  -786,  -412,  -413,  -417,  -416,  -423,
-  -425,  -786,  -428,  -786,  -430,  -435,  -786,  -786,  -716,  -786,
-  -471,  -785,  -484,  -786,  -786,  -477,  -786,  -785,  -352,  -671,
-  -785,  -449,  -450,  -773,  -440,  -442,  -443,   -14,  -583,  -785,
-  -786,  -786,  -326,  -786,  -686,  -689,  -691,  -694,  -403,  -533,
-  -786,  -528,  -534,  -538,  -742,  -719,  -415,  -785,  -785,  -785,
-  -785,  -730,  -785,  -437,  -728,  -786,  -326,  -785,  -785,  -489,
-  -490,  -478,  -480,  -481,  -482,  -786,  -439,  -786,  -582,  -773,
-  -758,  -759,  -762,  -325,  -685,  -786,  -526,  -411,  -786,  -420,
-  -786,  -422,  -786,  -426,  -786,  -429,  -431,  -325,  -762,  -392,
-  -785,  -356,  -441,  -464,  -687,  -785,  -785,  -785,  -785,  -485,
-  -486,  -487,  -786,  -418,  -421,  -424,  -427,  -785,  -419 ]
-
-racc_goto_table = [
-     6,    45,   647,   350,   309,   292,   291,    45,   327,   327,
-   327,   410,   135,   387,   719,   866,   148,   148,   239,   239,
-   232,   428,     4,   318,   322,   933,   304,   245,   470,   736,
-   940,   311,   148,   143,   224,   328,   328,   328,    45,   354,
-   354,  1026,   366,   366,   467,   151,   151,   639,   642,   592,
-   490,   726,   727,   248,   392,   393,   528,   381,   529,  1020,
-   583,   454,   455,   762,   806,   349,    45,   313,   321,   323,
-   441,   389,   390,   765,   765,   394,   398,   461,   131,   366,
-   461,   924,   823,   135,   943,   823,   132,   579,   430,   346,
-   243,   376,   619,   939,   461,   941,   743,   411,  1086,   413,
-   415,   418,   421,   424,   427,   510,   510,   411,   737,   975,
-   573,   581,   348,    18,   148,   826,  1108,   936,  1004,    18,
-   936,   369,  1241,   493,   526,  1079,  1081,   878,   818,  1214,
-  1048,    45,  1216,     1,   477,   483,   436,   437,   438,   439,
-    45,     2,   501,   501,  1121,     9,   329,   329,   329,   395,
-    18,     9,   849,   852,   325,   338,   339,   856,   673,   136,
-   675,  1093,  1096,   679,   987,   988,   679,   616,   616,   678,
-    16,  1104,   681,   969,   142,   661,    16,   663,    18,   690,
-   923,   730,   732,   734,  1063,   829,   603,   223,   404,   450,
-   443,   236,   242,   544,   592,   628,   545,   823,   823,  1241,
-   293,   569,   808,   860,   327,  1027,   310,    16,   814,   692,
-   383,   379,   575,   634,   813,   305,   635,   402,   882,   382,
-   384,   629,   385,   478,    45,   468,   453,   453,   826,   471,
-   386,   405,  1040,   662,  1282,    16,    45,  1216,   487,   530,
-  1042,  1210,    45,    18,  1124,   403,   597,   407,   886,  1080,
-   535,   448,    18,   865,   449,   460,   239,   239,   460,    45,
-   968,  1123,  1189,  1125,  1213,   763,   763,   664,  1044,   408,
-   887,   585,   460,   510,   996,     9,   586,  1010,  1033,   811,
-  1252,   869,  1139,   434,   440,  1289,   349,   327,   327,  1030,
-  1248,   666,  1087,  1088,   964,   965,   974,   327,   977,  1110,
-    16,  1111,   990,   930,  1065,   409,   412,  1229,   823,    16,
-   501,   414,   471,   417,   582,   328,  1231,  1133,  1101,   420,
-   423,  1232,   426,   947,   328,  1109,   591,   591,   243,  1237,
-  1049,   833,   411,   620,   759,   737,    18,   889,    18,   950,
-   842,    18,    45,   890,  1228,  1079,    45,   135,    18,  1038,
-   354,    45,   318,   366,    18,    18,   612,  1007,   322,  1113,
-  1114,   429,  1041,   615,  1092,  1095,  1122,  1196,  1266,   354,
-   938,    18,   366,   349,   622,   826,   940,   934,   349,  1235,
-   572,    45,   nil,   631,   636,   632,   nil,   nil,   820,  1253,
-   643,    45,    45,    16,  1119,   456,   nil,   346,   456,   nil,
-   651,   135,   346,   nil,   304,    16,   304,   366,   835,   366,
-   617,    16,   456,   600,   nil,   nil,   nil,   nil,   644,   645,
-   604,   601,   943,   nil,   892,   610,   329,   892,    16,   542,
-   543,   608,   243,  1163,   584,   329,  1097,   477,   483,  1179,
-   nil,   388,   388,   587,   nil,   388,  1085,   870,   148,  1279,
-   nil,  1091,  1094,   nil,    18,   nil,   nil,   nil,    18,   699,
-   nil,   717,  1290,    18,   nil,   691,   nil,   646,   711,   nil,
-   nil,   591,   591,   704,   716,   710,   nil,   151,   nil,   nil,
-   nil,   nil,   nil,   915,  1234,   nil,   602,   nil,   940,   920,
-  1068,   nil,   nil,    18,   967,   901,   633,   637,   nil,   nil,
-   750,   nil,   981,    18,    18,   nil,   388,   388,   388,   388,
-   327,    16,   709,   nil,   838,    16,  1109,  1217,   715,   nil,
-    16,   911,   913,   nil,   838,  1109,   478,   916,   918,  1233,
-   510,   830,   nil,   749,   530,   471,   468,   703,   nil,  1134,
-   nil,   487,  1012,   800,   800,   737,   737,   461,   888,  1140,
-    16,  1238,   823,   838,  1015,  1239,   931,   461,   461,   765,
-    16,    16,  1008,   461,   461,   nil,   711,   501,   nil,   nil,
-   807,   nil,   620,   710,   nil,   940,   936,  1109,   nil,  1119,
-   591,   620,   826,  1119,   327,  1119,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   510,   nil,   510,   465,   466,   nil,
-    45,   477,   483,   478,   nil,   nil,   nil,   nil,   354,   471,
-   812,   366,  1233,   478,   531,   532,   844,   354,   487,   nil,
-   366,  1070,  1072,   327,  1074,  1076,   nil,  1077,   487,   nil,
-  1012,   nil,  1285,   nil,   875,   nil,   nil,   nil,    45,   nil,
-   nil,    45,   478,   nil,   nil,  1197,   nil,   nil,   471,  1291,
-   861,   nil,   nil,   nil,   784,   784,   nil,   487,   nil,   884,
-  1119,   nil,  1119,   nil,  1119,   857,  1119,   nil,   859,   nil,
-   nil,   327,   nil,   nil,  1185,  1186,   nil,   nil,  1039,   nil,
-   967,   nil,   nil,   nil,  1119,   967,   967,   nil,     6,    45,
-   478,  1143,   nil,    45,   nil,   982,   471,   148,  1107,  1043,
-    45,   822,   912,   914,   nil,   487,   nil,   nil,   917,   919,
-   896,   nil,    18,   nil,   897,   nil,   nil,   928,   nil,   932,
-   nil,   453,  1058,  1156,   nil,   460,   151,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   460,   460,   nil,   nil,   nil,
-   nil,   460,   460,  1258,   nil,   nil,   nil,   nil,   nil,   nil,
-    18,   763,   nil,    18,   nil,   nil,  1006,   nil,   461,   nil,
-   388,   nil,   704,   nil,   737,   737,   nil,   nil,   nil,    16,
-   nil,   nil,   800,   nil,   nil,   nil,   704,   976,   nil,   nil,
-   800,   411,   838,   nil,   nil,   nil,   998,   291,  1005,   800,
-   800,  1267,   nil,   nil,  1201,   620,   nil,  1202,   nil,   nil,
-   nil,    18,   nil,   nil,   nil,    18,  1017,    16,    18,  1000,
-    16,   nil,    18,   148,  1254,  1118,   910,  1130,    18,    18,
-   591,   nil,   nil,   nil,    18,    18,   958,   nil,   nil,   711,
-   nil,   354,   716,     9,   366,   935,   710,   898,   704,   nil,
-   970,   nil,   354,   nil,   906,   366,  1224,  1225,  1226,  1227,
-   nil,   nil,   nil,  1146,   327,  1024,   nil,  1024,    16,  1151,
-   nil,   nil,    16,   nil,   nil,   456,   nil,  1126,   nil,    16,
-   nil,   478,   nil,   704,    45,   456,   456,   nil,   nil,   471,
-   nil,   456,   456,   nil,   487,    45,   nil,   nil,   nil,    45,
-   nil,  1047,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1035,  1016,  1059,   704,   nil,   nil,   nil,   591,   nil,
-   nil,   nil,   nil,   942,   nil,   944,  1054,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    45,   910,  1067,   nil,
-   nil,   nil,   nil,   nil,   510,   nil,   460,  1034,   nil,   nil,
-   nil,   809,   nil,   nil,   nil,   nil,   nil,  1284,   nil,   912,
-   914,   919,   917,  1064,   nil,   nil,   nil,   nil,   800,   nil,
-   800,  1019,   nil,   800,   800,   nil,   704,   nil,  1057,   nil,
-   800,   704,   704,   nil,   nil,   nil,   800,   800,   nil,   nil,
-   nil,   nil,   nil,   nil,   800,   800,    18,   nil,   nil,   nil,
-  1115,   nil,   nil,   nil,   nil,   nil,   846,    18,   nil,   nil,
-  1118,    18,   nil,    45,  1118,  1047,  1118,   nil,  1000,   nil,
-   722,   nil,   nil,   nil,   nil,   nil,  1259,  1180,   nil,    18,
-   nil,   nil,  1136,  1255,    45,   nil,   nil,   nil,   nil,   800,
-  1090,   885,   nil,   nil,   nil,  1098,  1099,   nil,    18,    45,
-  1147,   nil,   704,    16,    45,    45,   nil,   nil,   752,  1148,
-   nil,  1137,  1126,   nil,    16,   nil,  1126,  1127,    16,   nil,
-   nil,   nil,    45,   nil,   nil,  1158,   nil,   nil,   366,   nil,
-   nil,  1150,   nil,   nil,   784,   784,   456,   nil,   nil,  1059,
-   nil,  1118,   nil,  1118,   784,  1118,   nil,  1118,   nil,  1155,
-   784,   nil,   nil,   nil,   nil,    16,   nil,   704,   704,   704,
-   nil,   nil,   nil,   411,   nil,  1118,  1145,   976,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,  1188,  1188,
-  1188,   nil,   838,   nil,   nil,   nil,   304,   nil,  1047,   366,
-   nil,   nil,    45,  1126,   nil,   nil,    18,   nil,   nil,   nil,
-   784,   533,    45,   nil,   nil,   nil,   nil,   nil,   847,   nil,
-   nil,    18,   nil,   928,  1209,    45,    18,    18,   nil,  1200,
-  1220,  1173,  1174,  1175,   863,   864,   nil,   868,   800,  1207,
-   nil,   nil,    16,   nil,    18,   nil,   nil,   800,   nil,   nil,
-   nil,   800,  1218,   nil,  1120,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   327,    16,   nil,   nil,   304,   nil,   nil,   366,
-    45,   nil,  1249,  1250,   nil,  1024,   nil,   nil,    16,    45,
-   nil,   478,   nil,    16,    16,   nil,  1256,   471,   nil,   588,
-   nil,   nil,   nil,   nil,   nil,   nil,   487,  1247,   nil,   800,
-   nil,    16,   nil,   nil,  1162,  1188,  1188,  1188,  1188,  1127,
-  1188,   nil,  1127,   605,    18,  1024,  1127,    45,  1127,   nil,
-   487,  1164,   nil,  1165,    18,  1166,   nil,   nil,   nil,   nil,
-   nil,   nil,   704,   nil,   800,    19,   nil,    18,   nil,   nil,
-   nil,    19,   nil,   nil,  1280,   nil,   nil,   nil,  1024,   630,
-   nil,   nil,   nil,  1188,  1188,  1188,  1188,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   935,  1188,   nil,   nil,   249,   249,
-   249,    16,    19,   355,   355,   nil,   nil,   451,   464,   nil,
-   nil,    16,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,   nil,  1127,    16,  1127,  1283,  1127,   nil,  1127,
-    19,   nil,   nil,   nil,   nil,   249,   249,   nil,   nil,   249,
-   399,   nil,   nil,   nil,   nil,   nil,   nil,  1127,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
-   388,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,  1240,   nil,  1242,   nil,   nil,    16,   nil,
-   nil,   nil,   nil,   nil,   nil,  1028,  1029,   nil,   724,   nil,
-   nil,   nil,   388,   nil,   nil,    19,   nil,   nil,   nil,   nil,
-   249,   249,   249,   249,    19,  1264,   nil,   nil,   nil,   nil,
-   388,   nil,   594,   nil,   596,   nil,    16,   598,   599,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   753,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1286,   nil,  1287,   nil,  1288,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1190,  1192,  1194,   nil,   nil,   638,   nil,   nil,
-   nil,   nil,   nil,   nil,  1297,   nil,   815,    20,   817,   nil,
-   nil,   nil,   821,    20,   nil,   nil,   nil,   nil,    19,   249,
-   458,   249,   249,   458,   249,   nil,   nil,   nil,   nil,   831,
-    19,   nil,   nil,   nil,   nil,   834,    19,   458,   249,   249,
-   nil,   nil,   nil,   nil,    20,   362,   362,   nil,   nil,   nil,
-   nil,    21,   nil,    19,   848,   nil,   nil,    21,   nil,   nil,
-   nil,   nil,   nil,   695,   nil,   nil,   nil,   nil,   nil,   nil,
-  1135,   nil,    20,   nil,   nil,   nil,  1138,   nil,   nil,   nil,
-   nil,   nil,   362,   nil,   nil,  1144,   nil,   nil,    21,   363,
-   363,   nil,   nil,  1149,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   388,   388,   792,   792,   nil,   249,   249,  1269,
-  1271,  1273,  1275,   nil,  1276,   nil,    21,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   744,   363,   nil,   nil,   nil,
-   nil,   nil,   nil,   793,   793,   nil,    19,    20,   nil,   nil,
-    19,   nil,   nil,   nil,   355,    19,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1293,  1294,  1295,
-  1296,   nil,   nil,   355,   nil,   nil,   nil,   nil,   951,  1298,
-   nil,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,
-   nil,    21,   nil,   nil,   249,    19,    19,   nil,   nil,   nil,
-    21,   nil,   nil,   nil,   nil,   nil,  1208,   nil,   659,   nil,
-   659,   824,   nil,   nil,   638,   nil,   827,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    20,   nil,    20,   nil,   999,    20,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,    20,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
-   nil,  1018,   nil,   nil,    21,   nil,    21,   nil,   nil,    21,
-   nil,   249,   nil,   794,   794,   nil,    21,   nil,   nil,   nil,
-   nil,   nil,    21,    21,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1281,   nil,   899,   nil,    21,
-   nil,   nil,   nil,   nil,   nil,   nil,   824,   638,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   929,   792,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   792,   nil,   nil,   nil,   nil,   nil,   946,    20,   nil,
-   792,   792,    20,   nil,   nil,   nil,   362,    20,   nil,   nil,
-   nil,   nil,   793,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   793,   nil,  1078,   nil,   nil,   362,   nil,   nil,   nil,   793,
-   793,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-   nil,   nil,    21,   nil,    19,   nil,    21,    20,    20,   nil,
-   363,    21,   355,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   362,   355,   362,   nil,   nil,   nil,   nil,   nil,   nil,   363,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,
-   nil,    21,    19,  1132,   nil,    19,  1013,   nil,   nil,  1014,
-   nil,    21,    21,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   363,   249,   363,   nil,   nil,   nil,
-   nil,   824,   nil,   nil,   638,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1153,   nil,   nil,   nil,   nil,   nil,   nil,
-  1031,   nil,   nil,    19,   nil,   nil,   nil,    19,   nil,   nil,
-   458,   249,   nil,   nil,    19,   nil,   nil,   nil,   nil,   nil,
-   458,   458,   nil,   nil,   nil,   nil,   458,   458,   nil,   nil,
-   nil,  1056,   794,   nil,   nil,   nil,   nil,   nil,   nil,   792,
-   794,   792,   nil,   nil,   792,   792,   nil,   nil,   nil,   794,
-   794,   792,   nil,   nil,   nil,   nil,   nil,   792,   792,   nil,
-  1183,   nil,   nil,   nil,   nil,   792,   792,   nil,   793,   nil,
-   793,   nil,   nil,   793,   793,   nil,   nil,    22,   nil,   nil,
-   793,   nil,   nil,    22,   nil,   nil,   793,   793,   nil,   nil,
-   nil,   nil,   nil,   nil,   793,   793,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   792,   nil,   nil,   nil,    22,   357,   357,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   362,   nil,   nil,   nil,   nil,   793,
-   nil,   nil,    22,   362,   nil,   355,   nil,   nil,   nil,   nil,
-   nil,   nil,   401,   nil,   nil,   nil,   355,   nil,   nil,   nil,
-   nil,   nil,   nil,  1141,    20,   nil,   nil,    20,   nil,   nil,
-    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,    19,   nil,
-   nil,   638,   nil,   nil,   249,   nil,   nil,   nil,   nil,    19,
-   nil,   nil,   nil,    19,   nil,   nil,   nil,    22,    21,   nil,
-   nil,    21,   nil,   nil,   nil,    20,    22,   nil,   794,    20,
-   794,   458,    20,   794,   794,   nil,    20,   nil,   nil,   nil,
-   794,   nil,    20,    20,   nil,   nil,   794,   794,    20,    20,
-    19,   nil,   nil,   nil,   794,   794,   nil,   nil,   nil,   792,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   792,    21,
-   nil,   nil,   792,    21,   nil,   nil,    21,   nil,   nil,   nil,
-    21,   nil,   nil,  1205,   nil,   nil,    21,    21,   793,   nil,
-   nil,   nil,    21,    21,   nil,   nil,   nil,   793,   nil,   794,
-   nil,   793,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    22,   nil,   459,   nil,   249,   459,   nil,   nil,   nil,   nil,
-   792,   nil,    22,   nil,   nil,   nil,   nil,    19,    22,   459,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    22,   249,  1251,    19,   793,
-   nil,   nil,   nil,   nil,   nil,   792,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    19,   249,   nil,   nil,   362,    19,    19,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   362,   nil,
-   nil,   nil,   nil,   nil,   793,   nil,    19,   nil,   nil,  1159,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    20,   363,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   363,   nil,   nil,    20,   nil,   nil,    22,   nil,
-   nil,   nil,    22,   nil,   nil,   nil,   357,    22,   794,   nil,
-   nil,   nil,   nil,    20,   nil,   nil,   nil,   794,   nil,   nil,
-  1198,   794,   nil,   nil,    21,   357,    19,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,    21,    19,    22,   nil,    21,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    22,    22,    19,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    21,   nil,   nil,
-   660,   nil,   660,   nil,   nil,   nil,   nil,   nil,   nil,   794,
-   nil,   nil,   nil,   nil,   nil,   nil,    21,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1244,   nil,   nil,   nil,    19,   nil,   249,   249,   nil,   nil,
-   nil,   nil,   nil,    19,   794,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   249,   nil,   nil,   nil,   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,    19,   nil,   nil,   nil,    20,   nil,   nil,   nil,    32,
-    20,    20,   nil,    21,   nil,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   362,    32,   nil,    21,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    32,    32,    32,   nil,    32,   nil,   nil,    21,
-   nil,   nil,   nil,   nil,    21,    21,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    21,   nil,    32,   363,   nil,   nil,   nil,    32,
-    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   795,   795,
-   nil,   nil,   362,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,    20,   nil,   nil,   357,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   357,   nil,   nil,   363,   nil,   nil,    32,
-   nil,   nil,    21,   nil,    32,    32,    32,    32,    32,   nil,
-   nil,   nil,    21,   nil,    22,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   362,   nil,   nil,    21,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   796,   796,
-   nil,   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,   363,   nil,   nil,    22,
-    21,   nil,   459,    20,   nil,   nil,    22,   nil,   nil,    21,
-   nil,   nil,   459,   459,   nil,   nil,   nil,   nil,   459,   459,
-   nil,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
-   nil,    35,   nil,   nil,    32,   nil,   nil,    35,   nil,   nil,
-    32,    32,    32,    32,   nil,   nil,   nil,    21,   nil,   nil,
-   nil,   nil,   nil,   nil,    35,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,    35,    35,    35,   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,    35,   nil,   nil,    35,   nil,   795,   nil,   nil,
-   nil,    32,    32,   nil,   nil,   795,   nil,   nil,   nil,   nil,
-   nil,    32,   nil,   nil,   795,   795,   nil,   nil,   797,   797,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   357,   nil,   nil,
-    32,   nil,   nil,   nil,    32,   nil,   nil,   nil,   357,    32,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    35,   nil,   nil,   nil,   nil,    35,    35,    35,    35,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,
-    32,    22,   nil,   nil,  1053,    22,   nil,   796,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   796,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   459,   796,   796,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   798,   798,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    35,    35,    35,    35,    35,    35,
-    35,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,
-   nil,   nil,    35,    35,    35,    35,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    35,
-   nil,   nil,   nil,   795,   nil,   795,   nil,   nil,   795,   795,
-   nil,   nil,   nil,   nil,   nil,   795,   nil,   nil,   nil,    22,
-   nil,   795,   795,   nil,   nil,   nil,   nil,   nil,   nil,   795,
-   795,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
-    22,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    35,    35,    22,   nil,   nil,   nil,   nil,
-    22,    22,   nil,    35,   nil,   nil,   nil,   797,   799,   799,
-   nil,   nil,   nil,   nil,   795,   797,   nil,   nil,    22,    32,
-   nil,  1161,    35,   nil,   797,   797,    35,   nil,   nil,   nil,
-   nil,    35,   nil,   796,   nil,   796,   nil,   nil,   796,   796,
-    44,   nil,   nil,   nil,   nil,   796,    44,   nil,    32,   nil,
-   nil,   796,   796,   nil,   nil,   nil,   nil,   nil,    32,   796,
-   796,    35,   nil,   nil,   nil,   303,   nil,   nil,   nil,   nil,
-    35,    35,    35,   nil,    32,   nil,   nil,    44,   353,   353,
-   nil,   nil,   660,   nil,   nil,   nil,    32,   nil,    22,    32,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,    22,   nil,
-   nil,   nil,   nil,   nil,   796,    44,   nil,   nil,   nil,    32,
-   nil,    22,   nil,   nil,   nil,   397,   nil,   nil,   nil,   nil,
-   nil,   nil,   798,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   798,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   798,
-   798,    32,   nil,   nil,    32,    32,   nil,   nil,    32,   nil,
-   nil,   nil,   660,   795,    32,    32,    22,   nil,   nil,   nil,
-    32,    32,   795,   nil,   nil,    22,   795,    35,   nil,   nil,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   801,   801,   nil,   797,   nil,   797,   nil,   nil,   797,   797,
-   nil,   nil,   nil,    22,   nil,   797,    35,   nil,   nil,   nil,
-   nil,   797,   797,   nil,   795,   nil,    35,   nil,   nil,   797,
-   797,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   799,   nil,   nil,
-   nil,   nil,   nil,   796,   nil,   799,   nil,   nil,   nil,   795,
-   nil,    35,   796,   nil,   799,   799,   796,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   797,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,
-    35,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
-   nil,   nil,   nil,   nil,   796,   nil,    35,   nil,   798,   nil,
-   798,   nil,   nil,   798,   798,   nil,   nil,   nil,    35,   nil,
-   798,    35,    32,   nil,   nil,   nil,   798,   798,    32,    35,
-   nil,   nil,   nil,    32,   798,   798,   nil,    32,   nil,   796,
-   nil,    35,   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,    35,
-   nil,   nil,   nil,    35,    32,   nil,    35,    35,   nil,   798,
-    35,    44,   nil,   nil,   nil,    44,    35,    35,   nil,   353,
-    44,   nil,    35,    35,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   797,   nil,   nil,   nil,   nil,   353,   nil,
-   nil,   nil,   797,   nil,   nil,   nil,   797,   nil,   nil,   801,
-    44,   nil,   nil,   799,   nil,   799,   nil,   801,   799,   799,
-    44,    44,   nil,   nil,   nil,   799,   801,   801,    32,   nil,
-   nil,   799,   799,   303,   nil,   303,   nil,   nil,   nil,   799,
-   799,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   797,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,    32,    32,   799,   nil,   nil,   nil,   nil,   797,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   798,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   798,   nil,   nil,
-   nil,   798,   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,
-    35,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   798,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,   801,    35,   801,   nil,   nil,
-   801,   801,   nil,   nil,   798,   nil,   nil,   801,   nil,   nil,
-   nil,   nil,   nil,   801,   801,   nil,   nil,   nil,   nil,   nil,
-   nil,   801,   801,   799,   nil,   nil,   nil,   nil,   nil,    44,
-   nil,   nil,   799,   nil,   nil,   nil,   799,   353,    32,   nil,
-    32,    32,   nil,   nil,   nil,   nil,   353,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   801,    44,   nil,   nil,
-    44,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   799,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-    35,   nil,   nil,   nil,    35,    35,   nil,   nil,    44,   799,
-   nil,   nil,    44,   nil,   nil,   256,   nil,   nil,   nil,    44,
-   nil,   nil,    35,   nil,   nil,   326,   326,   326,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   374,   375,   nil,
-   377,   378,   nil,   380,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   801,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,   801,   nil,   nil,   nil,   801,   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,
-   353,   nil,   nil,   nil,   nil,   nil,   801,   nil,   nil,   nil,
-    35,   353,    35,    35,   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,   801,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    44,   nil,   nil,    35,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   463,   nil,   nil,
-   469,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   469,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,   nil,   256,   nil,   nil,
-   nil,   nil,   nil,   nil,   546,   547,   548,   549,   550,   551,
-   552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
-   562,   563,   564,   565,   566,   567,   nil,   nil,   nil,   nil,
-   568,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   326,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,
-   nil,   326,    44,   326,   nil,   nil,   326,   326,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
-   nil,   nil,   nil,    44,    44,   nil,   nil,   nil,   nil,   625,
-   nil,   626,   nil,   nil,   nil,   326,   326,   nil,   nil,   nil,
-   nil,    44,   nil,   nil,  1157,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   326,   nil,   nil,   303,   nil,   nil,   nil,   nil,
-   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,   718,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   303,   nil,   751,   nil,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,    44,   469,
-   469,   469,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,
-   375,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   326,   nil,   326,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   469,   nil,   nil,   845,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   469,   326,   nil,
-   nil,   nil,   907,   nil,   nil,   326,   326,   469,   469,   nil,
-   nil,   nil,   nil,   469,   469,   nil,   nil,   nil,   nil,   nil,
-   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   718,   751,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   326,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   469,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1061,  1062,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1082,  1083,   469,   469,   469,   469,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1116,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   469,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326 ]
-
-racc_goto_check = [
-     6,    79,   125,    75,   182,    47,    50,    79,    41,    41,
-    41,   222,   131,   114,    15,   126,    82,    82,     6,     6,
-    38,   222,     2,    96,    96,   158,    79,    45,    36,   160,
-   257,    38,    82,    22,    22,    93,    93,    93,    79,    79,
-    79,   121,    89,    89,    33,    84,    84,   118,   118,    99,
-    12,   163,   163,    27,    55,    55,    12,    45,    33,   119,
-    97,    29,    29,    46,    46,    14,    79,    63,    63,    63,
-    10,    24,    24,   201,   201,    24,    79,    25,     5,    89,
-    25,    17,   100,   131,   261,   100,     8,    64,    50,    71,
-   133,    87,    77,   170,    25,   170,   154,     6,   217,     6,
-     6,     6,     6,     6,     6,   256,   256,     6,   153,   211,
-   183,    36,    72,    34,    82,   266,   216,   164,   171,    34,
-   164,    76,   262,   181,   181,   152,   155,    80,    65,   175,
-   173,    79,   176,     1,    62,    62,    24,    24,    24,    24,
-    79,     3,   251,   251,   169,     9,    95,    95,    95,     5,
-    34,     9,    94,    94,    70,    70,    70,    94,   239,     7,
-   239,   202,   202,   239,   226,   226,   239,   250,   250,   238,
-    28,   202,   238,   200,    11,    81,    28,    81,    34,    13,
-    16,   254,   254,   254,    18,    20,    21,    23,    26,    30,
-    32,    40,    40,    48,    99,    12,    49,   100,   100,   262,
-    52,    53,    54,    56,    41,    58,    61,    28,    67,    85,
-     9,    90,    62,    92,    98,   110,   113,   128,   130,   134,
-   135,   136,   137,    96,    79,    86,    93,    93,   266,     6,
-   138,   139,   140,   141,   175,    28,    79,   176,    82,    86,
-   142,   143,    79,    34,   173,    28,   222,   144,   145,   156,
-    38,    14,    34,   125,    27,    27,     6,     6,    27,    79,
-   199,   161,   166,   167,   174,   198,   198,   177,   178,   179,
-   180,   185,    27,   256,    80,     9,   186,   188,   189,   191,
-   192,   193,   194,     7,     9,   195,    14,    41,    41,   196,
-   197,   181,   204,   206,   207,   208,   212,    41,   213,   219,
-    28,   220,   229,   230,   231,   234,   235,   216,   100,    28,
-   251,   236,     6,   237,    93,    93,   216,   171,   215,   240,
-   241,   217,   242,   154,    93,   215,     6,     6,   133,   169,
-   243,    77,     6,    75,    36,   153,    34,   244,    34,   153,
-    77,    34,    79,   245,   155,   152,    79,   131,    34,    80,
-    79,    79,    96,    89,    34,    34,    38,    65,    96,   226,
-   226,   248,   249,    45,   200,   200,   170,   173,   216,    79,
-   255,    34,    89,    14,    38,   266,   257,   259,    14,   260,
-   265,    79,   nil,     6,     6,    93,   nil,   nil,   183,   121,
-    24,    79,    79,    28,   164,    28,   nil,    71,    28,   nil,
-    38,   131,    71,   nil,    79,    28,    79,    89,    36,    89,
-    87,    28,    28,     5,   nil,   nil,   nil,   nil,    14,    14,
-    72,     8,   261,   nil,   239,    72,    95,   239,    28,    40,
-    40,    76,   133,   170,    70,    95,    80,    62,    62,   211,
-   nil,    31,    31,    70,   nil,    31,   199,    36,    82,   119,
-   nil,   199,   199,   nil,    34,   nil,   nil,   nil,    34,    38,
-   nil,    41,   121,    34,   nil,    22,   nil,     5,    96,   nil,
-   nil,     6,     6,    45,    96,     6,   nil,    84,   nil,   nil,
-   nil,   nil,   nil,    64,   158,   nil,     9,   nil,   257,    64,
-   163,   nil,   nil,    34,   198,    36,    95,    95,   nil,   nil,
-    41,   nil,   198,    34,    34,   nil,    31,    31,    31,    31,
-    41,    28,    63,   nil,    62,    28,   215,    17,    63,   nil,
-    28,    33,    33,   nil,    62,   215,    96,    33,    33,   215,
-   256,    10,   nil,   131,    86,     6,    86,    37,   nil,    94,
-   nil,    82,    99,    79,    79,   153,   153,    25,   181,    46,
-    28,   170,   100,    62,    77,   170,    29,    25,    25,   201,
-    28,    28,    97,    25,    25,   nil,    96,   251,   nil,   nil,
-    45,   nil,    75,     6,   nil,   257,   164,   215,   nil,   164,
-     6,    75,   266,   164,    41,   164,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   256,   nil,   256,    31,    31,   nil,
-    79,    62,    62,    96,   nil,   nil,   nil,   nil,    79,     6,
-    63,    89,   215,    96,    31,    31,    86,    79,    82,   nil,
-    89,   254,   254,    41,   254,   254,   nil,   254,    82,   nil,
-    99,   nil,   170,   nil,    55,   nil,   nil,   nil,    79,   nil,
-   nil,    79,    96,   nil,   nil,   160,   nil,   nil,     6,   126,
-   131,   nil,   nil,   nil,   224,   224,   nil,    82,   nil,     6,
-   164,   nil,   164,   nil,   164,    14,   164,   nil,    14,   nil,
-   nil,    41,   nil,   nil,   163,   163,   nil,   nil,    36,   nil,
-   198,   nil,   nil,   nil,   164,   198,   198,   nil,     6,    79,
-    96,   118,   nil,    79,   nil,   222,     6,    82,   198,    12,
-    79,    95,    86,    86,   nil,    82,   nil,   nil,    86,    86,
-     2,   nil,    34,   nil,    22,   nil,   nil,     6,   nil,     6,
-   nil,    93,    33,   118,   nil,    27,    84,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    27,    27,   nil,   nil,   nil,
-   nil,    27,    27,    15,   nil,   nil,   nil,   nil,   nil,   nil,
-    34,   198,   nil,    34,   nil,   nil,   114,   nil,    25,   nil,
-    31,   nil,    45,   nil,   153,   153,   nil,   nil,   nil,    28,
-   nil,   nil,    79,   nil,   nil,   nil,    45,    45,   nil,   nil,
-    79,     6,    62,   nil,   nil,   nil,    47,    50,   182,    79,
-    79,   163,   nil,   nil,   118,    75,   nil,   118,   nil,   nil,
-   nil,    34,   nil,   nil,   nil,    34,    75,    28,    34,     6,
-    28,   nil,    34,    82,   125,   157,    95,    12,    34,    34,
-     6,   nil,   nil,   nil,    34,    34,    37,   nil,   nil,    96,
-   nil,    79,    96,     9,    89,   224,     6,     9,    45,   nil,
-    37,   nil,    79,   nil,     9,    89,   254,   254,   254,   254,
-   nil,   nil,   nil,    12,    41,     6,   nil,     6,    28,    12,
-   nil,   nil,    28,   nil,   nil,    28,   nil,   256,   nil,    28,
-   nil,    96,   nil,    45,    79,    28,    28,   nil,   nil,     6,
-   nil,    28,    28,   nil,    82,    79,   nil,   nil,   nil,    79,
-   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    14,    37,    86,    45,   nil,   nil,   nil,     6,   nil,
-   nil,   nil,   nil,   168,   nil,   168,    14,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    79,    95,     6,   nil,
-   nil,   nil,   nil,   nil,   256,   nil,    27,    37,   nil,   nil,
-   nil,    31,   nil,   nil,   nil,   nil,   nil,   254,   nil,    86,
-    86,    86,    86,    14,   nil,   nil,   nil,   nil,    79,   nil,
-    79,    95,   nil,    79,    79,   nil,    45,   nil,    37,   nil,
-    79,    45,    45,   nil,   nil,   nil,    79,    79,   nil,   nil,
-   nil,   nil,   nil,   nil,    79,    79,    34,   nil,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    31,    34,   nil,   nil,
-   157,    34,   nil,    79,   157,    45,   157,   nil,     6,   nil,
-   112,   nil,   nil,   nil,   nil,   nil,    36,   222,   nil,    34,
-   nil,   nil,    24,    12,    79,   nil,   nil,   nil,   nil,    79,
-    37,    31,   nil,   nil,   nil,    37,    37,   nil,    34,    79,
-    24,   nil,    45,    28,    79,    79,   nil,   nil,   112,   131,
-   nil,    14,   256,   nil,    28,   nil,   256,   258,    28,   nil,
-   nil,   nil,    79,   nil,   nil,    79,   nil,   nil,    89,   nil,
-   nil,    14,   nil,   nil,   224,   224,    28,   nil,   nil,    86,
-   nil,   157,   nil,   157,   224,   157,   nil,   157,   nil,    14,
-   224,   nil,   nil,   nil,   nil,    28,   nil,    45,    45,    45,
-   nil,   nil,   nil,     6,   nil,   157,    37,    45,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,     6,     6,
-     6,   nil,    62,   nil,   nil,   nil,    79,   nil,    45,    89,
-   nil,   nil,    79,   256,   nil,   nil,    34,   nil,   nil,   nil,
-   224,    73,    79,   nil,   nil,   nil,   nil,   nil,   112,   nil,
-   nil,    34,   nil,     6,   131,    79,    34,    34,   nil,    14,
-    38,    37,    37,    37,   112,   112,   nil,   112,    79,    14,
-   nil,   nil,    28,   nil,    34,   nil,   nil,    79,   nil,   nil,
-   nil,    79,    14,   nil,   168,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,    28,   nil,   nil,    79,   nil,   nil,    89,
-    79,   nil,    24,    24,   nil,     6,   nil,   nil,    28,    79,
-   nil,    96,   nil,    28,    28,   nil,    45,     6,   nil,    73,
-   nil,   nil,   nil,   nil,   nil,   nil,    82,    14,   nil,    79,
-   nil,    28,   nil,   nil,    28,     6,     6,     6,     6,   258,
-     6,   nil,   258,    73,    34,     6,   258,    79,   258,   nil,
-    82,   168,   nil,   168,    34,   168,   nil,   nil,   nil,   nil,
-   nil,   nil,    45,   nil,    79,    35,   nil,    34,   nil,   nil,
-   nil,    35,   nil,   nil,    14,   nil,   nil,   nil,     6,    73,
-   nil,   nil,   nil,     6,     6,     6,     6,   nil,    35,   nil,
-   nil,   nil,   nil,   nil,   224,     6,   nil,   nil,    35,    35,
-    35,    28,    35,    35,    35,   nil,   nil,    91,    91,   nil,
-   nil,    28,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,   nil,   258,    28,   258,    37,   258,   nil,   258,
-    35,   nil,   nil,   nil,   nil,    35,    35,   nil,   nil,    35,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
-    31,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,
-   nil,   nil,   nil,   168,   nil,   168,   nil,   nil,    28,   nil,
-   nil,   nil,   nil,   nil,   nil,   112,   112,   nil,    73,   nil,
-   nil,   nil,    31,   nil,   nil,    35,   nil,   nil,   nil,   nil,
-    35,    35,    35,    35,    35,   168,   nil,   nil,   nil,   nil,
-    31,   nil,    91,   nil,    91,   nil,    28,    91,    91,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   168,   nil,   168,   nil,   168,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   165,   165,   165,   nil,   nil,    91,   nil,   nil,
-   nil,   nil,   nil,   nil,   168,   nil,    73,    39,    73,   nil,
-   nil,   nil,    73,    39,   nil,   nil,   nil,   nil,    35,    35,
-    35,    35,    35,    35,    35,   nil,   nil,   nil,   nil,    73,
-    35,   nil,   nil,   nil,   nil,    73,    35,    35,    35,    35,
-   nil,   nil,   nil,   nil,    39,    39,    39,   nil,   nil,   nil,
-   nil,    43,   nil,    35,    73,   nil,   nil,    43,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,   nil,   nil,   nil,   nil,
-   112,   nil,    39,   nil,   nil,   nil,   112,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   112,   nil,   nil,    43,    43,
-    43,   nil,   nil,   112,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    31,    31,   102,   102,   nil,    35,    35,   165,
-   165,   165,   165,   nil,   165,   nil,    43,    35,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,    43,   nil,   nil,   nil,
-   nil,   nil,   nil,   103,   103,   nil,    35,    39,   nil,   nil,
-    35,   nil,   nil,   nil,    35,    35,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   165,   165,   165,
-   165,   nil,   nil,    35,   nil,   nil,   nil,   nil,    73,   165,
-   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
-   nil,    43,   nil,   nil,    35,    35,    35,   nil,   nil,   nil,
-    43,   nil,   nil,   nil,   nil,   nil,   112,   nil,    35,   nil,
-    35,    91,   nil,   nil,    91,   nil,    91,   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,   nil,    73,    39,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
-   nil,    73,   nil,   nil,    43,   nil,    43,   nil,   nil,    43,
-   nil,    35,   nil,   104,   104,   nil,    43,   nil,   nil,   nil,
-   nil,   nil,    43,    43,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   112,   nil,    91,   nil,    43,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,    91,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,    91,   102,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   102,   nil,   nil,   nil,   nil,   nil,    91,    39,   nil,
-   102,   102,    39,   nil,   nil,   nil,    39,    39,   nil,   nil,
-   nil,   nil,   103,   nil,   nil,    35,   nil,   nil,   nil,   nil,
-   103,   nil,    73,   nil,   nil,    39,   nil,   nil,   nil,   103,
-   103,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,    43,   nil,    35,   nil,    43,    39,    39,   nil,
-    43,    43,    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,
-    39,    35,    39,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-   nil,    43,    35,    73,   nil,    35,    91,   nil,   nil,    91,
-   nil,    43,    43,    35,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,    35,    43,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    91,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    35,   nil,   nil,   nil,    35,   nil,   nil,
-    35,    35,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,
-    35,    35,   nil,   nil,   nil,   nil,    35,    35,   nil,   nil,
-   nil,    91,   104,   nil,   nil,   nil,   nil,   nil,   nil,   102,
-   104,   102,   nil,   nil,   102,   102,   nil,   nil,   nil,   104,
-   104,   102,   nil,   nil,   nil,   nil,   nil,   102,   102,   nil,
-    73,   nil,   nil,   nil,   nil,   102,   102,   nil,   103,   nil,
-   103,   nil,   nil,   103,   103,   nil,   nil,    44,   nil,   nil,
-   103,   nil,   nil,    44,   nil,   nil,   103,   103,   nil,   nil,
-   nil,   nil,   nil,   nil,   103,   103,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   102,   nil,   nil,   nil,    44,    44,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   103,
-   nil,   nil,    44,    39,   nil,    35,   nil,   nil,   nil,   nil,
-   nil,   nil,    44,   nil,   nil,   nil,    35,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,    39,   nil,   nil,    39,   nil,   nil,
-    43,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,    35,   nil,
-   nil,    91,   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,
-   nil,   nil,   nil,    35,   nil,   nil,   nil,    44,    43,   nil,
-   nil,    43,   nil,   nil,   nil,    39,    44,   nil,   104,    39,
-   104,    35,    39,   104,   104,   nil,    39,   nil,   nil,   nil,
-   104,   nil,    39,    39,   nil,   nil,   104,   104,    39,    39,
-    35,   nil,   nil,   nil,   104,   104,   nil,   nil,   nil,   102,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   102,    43,
-   nil,   nil,   102,    43,   nil,   nil,    43,   nil,   nil,   nil,
-    43,   nil,   nil,    91,   nil,   nil,    43,    43,   103,   nil,
-   nil,   nil,    43,    43,   nil,   nil,   nil,   103,   nil,   104,
-   nil,   103,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    44,   nil,    44,   nil,    35,    44,   nil,   nil,   nil,   nil,
-   102,   nil,    44,   nil,   nil,   nil,   nil,    35,    44,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,    35,    91,    35,   103,
-   nil,   nil,   nil,   nil,   nil,   102,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    35,    35,   nil,   nil,    39,    35,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,   103,   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,
-    39,    43,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,    43,   nil,   nil,    39,   nil,   nil,    44,   nil,
-   nil,   nil,    44,   nil,   nil,   nil,    44,    44,   104,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   104,   nil,   nil,
-    35,   104,   nil,   nil,    43,    44,    35,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,    43,    35,    44,   nil,    43,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,    44,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
-    44,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   104,
-   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,    35,   nil,    35,    35,   nil,   nil,
-   nil,   nil,   nil,    35,   104,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,    35,   nil,   nil,   nil,   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,    35,   nil,   nil,   nil,    39,   nil,   nil,   nil,    66,
-    39,    39,   nil,    43,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,    39,    66,   nil,    43,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,    66,    66,   nil,    66,   nil,   nil,    43,
-   nil,   nil,   nil,   nil,    43,    43,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,    66,    43,   nil,   nil,   nil,    66,
-    66,   nil,   nil,    66,   nil,   nil,   nil,   nil,   105,   105,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,
-   nil,    39,   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   nil,   nil,    43,   nil,   nil,    66,
-   nil,   nil,    43,   nil,    66,    66,    66,    66,    66,   nil,
-   nil,   nil,    43,   nil,    44,   nil,   nil,    44,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,    43,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   106,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,    43,   nil,   nil,    44,
-    43,   nil,    44,    39,   nil,   nil,    44,   nil,   nil,    43,
-   nil,   nil,    44,    44,   nil,   nil,   nil,   nil,    44,    44,
-   nil,   nil,    66,    66,    66,    66,    66,    66,    66,   nil,
-   nil,    69,   nil,   nil,    66,   nil,   nil,    69,   nil,   nil,
-    66,    66,    66,    66,   nil,   nil,   nil,    43,   nil,   nil,
-   nil,   nil,   nil,   nil,    69,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,    69,    69,    69,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,    69,    69,   nil,   nil,    69,   nil,   105,   nil,   nil,
-   nil,    66,    66,   nil,   nil,   105,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   105,   105,   nil,   nil,   107,   107,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,
-    66,   nil,   nil,   nil,    66,   nil,   nil,   nil,    44,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,    69,    69,    69,    69,
-    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    66,
-    66,    44,   nil,   nil,    44,    44,   nil,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   106,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   108,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    69,    69,    69,    69,    69,    69,
-    69,   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    69,    69,    69,    69,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,    69,
-   nil,   nil,   nil,   105,   nil,   105,   nil,   nil,   105,   105,
-   nil,   nil,   nil,   nil,   nil,   105,   nil,   nil,   nil,    44,
-   nil,   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-   105,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    44,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    69,    69,    44,   nil,   nil,   nil,   nil,
-    44,    44,   nil,    69,   nil,   nil,   nil,   107,   109,   109,
-   nil,   nil,   nil,   nil,   105,   107,   nil,   nil,    44,    66,
-   nil,    44,    69,   nil,   107,   107,    69,   nil,   nil,   nil,
-   nil,    69,   nil,   106,   nil,   106,   nil,   nil,   106,   106,
-    78,   nil,   nil,   nil,   nil,   106,    78,   nil,    66,   nil,
-   nil,   106,   106,   nil,   nil,   nil,   nil,   nil,    66,   106,
-   106,    69,   nil,   nil,   nil,    78,   nil,   nil,   nil,   nil,
-    69,    69,    69,   nil,    66,   nil,   nil,    78,    78,    78,
-   nil,   nil,    44,   nil,   nil,   nil,    66,   nil,    44,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    44,   nil,
-   nil,   nil,   nil,   nil,   106,    78,   nil,   nil,   nil,    66,
-   nil,    44,   nil,   nil,   nil,    78,   nil,   nil,   nil,   nil,
-   nil,   nil,   108,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   108,
-   108,    66,   nil,   nil,    66,    66,   nil,   nil,    66,   nil,
-   nil,   nil,    44,   105,    66,    66,    44,   nil,   nil,   nil,
-    66,    66,   105,   nil,   nil,    44,   105,    69,   nil,   nil,
-    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    78,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   116,   116,   nil,   107,   nil,   107,   nil,   nil,   107,   107,
-   nil,   nil,   nil,    44,   nil,   107,    69,   nil,   nil,   nil,
-   nil,   107,   107,   nil,   105,   nil,    69,   nil,   nil,   107,
-   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,   nil,   nil,
-   nil,   nil,   nil,   106,   nil,   109,   nil,   nil,   nil,   105,
-   nil,    69,   106,   nil,   109,   109,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    78,   107,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,   nil,
-    69,    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,
-   nil,   nil,   nil,   nil,   106,   nil,    69,   nil,   108,   nil,
-   108,   nil,   nil,   108,   108,   nil,   nil,   nil,    69,   nil,
-   108,    69,    66,   nil,   nil,   nil,   108,   108,    66,    69,
-   nil,   nil,   nil,    66,   108,   108,   nil,    66,   nil,   106,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    69,
-   nil,   nil,   nil,    69,    66,   nil,    69,    69,   nil,   108,
-    69,    78,   nil,   nil,   nil,    78,    69,    69,   nil,    78,
-    78,   nil,    69,    69,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,    78,   nil,
-   nil,   nil,   107,   nil,   nil,   nil,   107,   nil,   nil,   116,
-    78,   nil,   nil,   109,   nil,   109,   nil,   116,   109,   109,
-    78,    78,   nil,   nil,   nil,   109,   116,   116,    66,   nil,
-   nil,   109,   109,    78,   nil,    78,   nil,   nil,   nil,   109,
-   109,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,
-    66,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,
-   nil,   nil,    66,    66,   109,   nil,   nil,   nil,   nil,   107,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,   nil,   nil,
-   nil,   108,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,   116,    69,   116,   nil,   nil,
-   116,   116,   nil,   nil,   108,   nil,   nil,   116,   nil,   nil,
-   nil,   nil,   nil,   116,   116,   nil,   nil,   nil,   nil,   nil,
-   nil,   116,   116,   109,   nil,   nil,   nil,   nil,   nil,    78,
-   nil,   nil,   109,   nil,   nil,   nil,   109,    78,    66,   nil,
-    66,    66,   nil,   nil,   nil,   nil,    78,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,   116,    78,   nil,   nil,
-    78,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   109,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,    69,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    69,
-    69,   nil,   nil,   nil,    69,    69,   nil,   nil,    78,   109,
-   nil,   nil,    78,   nil,   nil,    42,   nil,   nil,   nil,    78,
-   nil,   nil,    69,   nil,   nil,    42,    42,    42,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,   nil,
-    42,    42,   nil,    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,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    69,   nil,   nil,   116,   nil,   nil,   nil,   nil,
-   nil,   nil,    69,   nil,   116,   nil,   nil,   nil,   116,   nil,
-   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    78,   nil,   nil,   nil,   nil,   nil,   116,   nil,   nil,   nil,
-    69,    78,    69,    69,   nil,   nil,   nil,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   116,   nil,    78,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    78,   nil,   nil,    69,    78,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,
-    42,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    78,   nil,    42,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    42,    42,    42,    42,    42,
-    42,    42,    42,    42,    42,    42,    42,    42,    42,    42,
-    42,    42,    42,    42,    42,    42,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,    78,    42,   nil,   nil,    42,    42,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    78,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,
-   nil,   nil,   nil,    78,    78,   nil,   nil,   nil,   nil,    42,
-   nil,    42,   nil,   nil,   nil,    42,    42,   nil,   nil,   nil,
-   nil,    78,   nil,   nil,    78,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    42,   nil,   nil,    78,   nil,   nil,   nil,   nil,
-   nil,    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,    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,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    78,   nil,    42,   nil,    78,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,    78,    42,
-    42,    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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,    42,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,    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,
-    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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,    42,   nil,
-   nil,   nil,    42,   nil,   nil,    42,    42,    42,    42,   nil,
-   nil,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,    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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,    42,   nil,
-   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,    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,   nil,   nil,
-   nil,   nil,    42,    42,    42,    42,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    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,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    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,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42 ]
-
-racc_goto_pointer = [
-   nil,   133,    20,   141,   nil,    73,    -2,   151,    81,   143,
-   -72,   164,  -187,  -263,    26,  -475,  -539,  -638,  -739,   nil,
-  -416,  -159,    22,   175,    -1,  -150,   111,    28,   168,  -165,
-   -37,   369,    47,  -186,   111,  1263,  -203,    67,     1,  1475,
-   171,   -27,  3780,  1519,  2025,     3,  -481,   -22,   -69,   -67,
-   -21,   nil,   173,   -92,  -367,   -20,  -440,   nil,  -655,   nil,
-   nil,   176,   -98,    35,  -226,  -457,  2517,  -370,   nil,  2749,
-   119,    50,    73,   895,   nil,   -37,    80,  -278,  3108,    -1,
-  -530,  -230,     5,   nil,    34,  -238,    -5,    42,   nil,     2,
-   159,  1081,  -172,     0,  -480,   111,    -9,  -254,  -361,  -280,
-  -508,   nil,  1030,  1059,  1209,  2054,  2144,  2304,  2419,  2534,
-   188,   nil,   520,  -170,   -57,   nil,  2716,   nil,  -342,  -798,
-   nil,  -818,   nil,   nil,   nil,  -393,  -631,   nil,   140,   nil,
-  -443,     7,   nil,    69,   153,   153,  -162,   154,   161,   153,
-  -650,  -173,  -645,  -907,   168,  -415,   nil,   nil,   nil,   nil,
-   nil,   nil,  -823,  -403,  -415,  -823,  -699,  -187,  -700,   nil,
-  -481,  -741,   nil,  -443,  -608,   342,  -858,  -739,   182,  -858,
-  -636,  -693,   nil,  -758,  -888, -1023, -1020,  -141,  -619,   176,
-  -394,  -117,   -24,  -198,   nil,   -48,   -44,   nil,  -542,  -591,
-   nil,  -295,  -927,  -368,  -748,  -995,  -578,  -912,  -279,  -513,
-  -600,  -471,  -803,   nil,  -668,   nil,  -668,  -478,  -477,   nil,
-   nil,  -665,  -478,  -477,   nil,  -653,  -862,  -861,   nil,  -681,
-  -679,   nil,   -88,   nil,   110,   nil,  -626,   nil,   nil,  -501,
-  -418,  -626,   nil,   nil,   209,   205,   209,   210,  -248,  -254,
-   215,   215,   216,  -559,  -333,  -328,   nil,   nil,   252,  -521,
-  -195,   -98,   nil,   nil,  -317,  -359,  -135,  -699,    55,  -348,
-  -805,  -647, -1069,   nil,   nil,    74,  -478 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   341,     7,   396,   344,
-   nil,   nil,   nil,   nil,   489,   nil,   nil,   nil,   nil,   340,
-   342,   nil,   nil,   nil,   nil,    14,    15,    23,   254,   nil,
-   nil,    17,   nil,   457,   255,   373,   nil,   nil,   880,   258,
-   nil,    28,    26,   259,   253,   534,   nil,   nil,   nil,   nil,
-   150,    27,   nil,   nil,   nil,   nil,   nil,   391,   nil,    29,
-    30,   nil,   841,   nil,   nil,   nil,   361,   nil,    31,   358,
-   472,    38,   nil,   nil,    40,    43,    42,   nil,   250,   251,
-   658,   nil,   480,   149,    95,   nil,   462,   111,    52,    55,
-   290,   332,   nil,   473,   nil,   474,   485,   497,   712,   589,
-   330,   315,    56,    57,    58,    59,    60,    61,    62,    63,
-    64,    66,   nil,   nil,   316,    70,    71,    72,   nil,   nil,
-    73,  1022,    74,    75,    76,   nil,   nil,    77,   nil,    78,
-   nil,   640,    79,   237,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   320,   308,   721,   927,
-   649,  1023,   739,   509,   nil,   740,   741,   495,   491,   492,
-   nil,  1236,  1117,   nil,   496,   nil,   nil,   nil,   498,   nil,
-   500,   nil,  1001,   nil,   nil,   nil,   507,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   484,   nil,   nil,   819,   nil,   nil,
-   574,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1100,   nil,
-   764,   972,   766,   767,   771,   768,   769,   nil,   nil,   770,
-   772,   nil,   nil,   nil,   971,   973,   nil,   776,   778,   779,
-   780,   781,   nil,   785,   518,   786,   787,   788,   789,   nil,
-   nil,   nil,    94,    96,    98,   nil,   nil,   nil,   nil,   668,
-   nil,   nil,   nil,   nil,   nil,   nil,   107,   108,   nil,   nil,
-   238,   937,   241,   494,   nil,   499,   945,   512,   514,   515,
-  1128,   519,  1129,   522,   525,   nil,   335 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 150, :_reduce_1,
-  2, 148, :_reduce_2,
-  2, 149, :_reduce_3,
-  1, 151, :_reduce_none,
-  1, 151, :_reduce_none,
-  3, 151, :_reduce_6,
-  2, 151, :_reduce_none,
-  1, 154, :_reduce_none,
-  0, 158, :_reduce_9,
-  3, 154, :_reduce_10,
-  0, 160, :_reduce_11,
-  4, 157, :_reduce_12,
-  0, 165, :_reduce_13,
-  6, 159, :_reduce_14,
-  3, 159, :_reduce_15,
-  2, 161, :_reduce_16,
-  1, 166, :_reduce_none,
-  1, 166, :_reduce_none,
-  3, 166, :_reduce_19,
-  2, 166, :_reduce_20,
-  1, 167, :_reduce_none,
-  0, 168, :_reduce_22,
-  3, 167, :_reduce_23,
-  0, 179, :_reduce_24,
-  4, 156, :_reduce_25,
-  3, 156, :_reduce_26,
-  3, 156, :_reduce_27,
-  3, 156, :_reduce_28,
-  2, 156, :_reduce_29,
-  3, 156, :_reduce_30,
-  3, 156, :_reduce_31,
-  3, 156, :_reduce_32,
-  3, 156, :_reduce_33,
-  3, 156, :_reduce_34,
-  4, 156, :_reduce_35,
-  1, 156, :_reduce_none,
-  3, 156, :_reduce_37,
-  3, 156, :_reduce_38,
-  5, 156, :_reduce_39,
-  3, 156, :_reduce_40,
-  1, 156, :_reduce_none,
-  3, 172, :_reduce_42,
-  3, 172, :_reduce_43,
-  6, 172, :_reduce_44,
-  5, 172, :_reduce_45,
-  5, 172, :_reduce_46,
-  5, 172, :_reduce_47,
-  5, 172, :_reduce_48,
-  4, 172, :_reduce_49,
-  6, 172, :_reduce_50,
-  4, 172, :_reduce_51,
-  6, 172, :_reduce_52,
-  3, 172, :_reduce_53,
-  1, 180, :_reduce_54,
-  3, 180, :_reduce_55,
-  1, 180, :_reduce_none,
-  1, 178, :_reduce_none,
-  3, 178, :_reduce_58,
-  3, 178, :_reduce_59,
-  3, 178, :_reduce_60,
-  2, 178, :_reduce_61,
-  0, 195, :_reduce_62,
-  4, 178, :_reduce_63,
-  0, 196, :_reduce_64,
-  4, 178, :_reduce_65,
-  1, 178, :_reduce_none,
-  1, 194, :_reduce_67,
-  2, 186, :_reduce_68,
-  0, 201, :_reduce_69,
-  5, 190, :_reduce_70,
-  1, 171, :_reduce_71,
-  0, 204, :_reduce_72,
-  0, 205, :_reduce_73,
-  4, 202, :_reduce_74,
-  1, 174, :_reduce_none,
-  1, 174, :_reduce_none,
-  1, 206, :_reduce_none,
-  4, 206, :_reduce_78,
-  0, 214, :_reduce_79,
-  4, 211, :_reduce_80,
-  1, 213, :_reduce_81,
-  2, 188, :_reduce_82,
-  3, 188, :_reduce_83,
-  4, 188, :_reduce_84,
-  5, 188, :_reduce_85,
-  4, 188, :_reduce_86,
-  5, 188, :_reduce_87,
-  2, 188, :_reduce_88,
-  2, 188, :_reduce_89,
-  2, 188, :_reduce_90,
-  2, 188, :_reduce_91,
-  2, 188, :_reduce_92,
-  1, 173, :_reduce_none,
-  3, 173, :_reduce_94,
-  1, 219, :_reduce_none,
-  3, 219, :_reduce_96,
-  1, 218, :_reduce_97,
-  2, 218, :_reduce_98,
-  3, 218, :_reduce_99,
-  5, 218, :_reduce_100,
-  2, 218, :_reduce_101,
-  4, 218, :_reduce_102,
-  2, 218, :_reduce_103,
-  4, 218, :_reduce_104,
-  1, 218, :_reduce_105,
-  3, 218, :_reduce_106,
-  1, 222, :_reduce_none,
-  3, 222, :_reduce_108,
-  2, 221, :_reduce_109,
-  3, 221, :_reduce_110,
-  1, 224, :_reduce_111,
-  3, 224, :_reduce_112,
-  1, 223, :_reduce_113,
-  1, 223, :_reduce_114,
-  4, 223, :_reduce_115,
-  3, 223, :_reduce_116,
-  3, 223, :_reduce_117,
-  3, 223, :_reduce_118,
-  3, 223, :_reduce_119,
-  2, 223, :_reduce_120,
-  1, 223, :_reduce_121,
-  1, 175, :_reduce_122,
-  1, 175, :_reduce_123,
-  4, 175, :_reduce_124,
-  3, 175, :_reduce_125,
-  3, 175, :_reduce_126,
-  3, 175, :_reduce_127,
-  3, 175, :_reduce_128,
-  2, 175, :_reduce_129,
-  1, 175, :_reduce_130,
-  1, 227, :_reduce_131,
-  1, 227, :_reduce_none,
-  2, 228, :_reduce_133,
-  1, 228, :_reduce_134,
-  3, 228, :_reduce_135,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_139,
-  1, 197, :_reduce_none,
-  1, 169, :_reduce_141,
-  1, 169, :_reduce_none,
-  1, 170, :_reduce_143,
-  0, 232, :_reduce_144,
-  4, 170, :_reduce_145,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  3, 189, :_reduce_217,
-  3, 189, :_reduce_218,
-  6, 189, :_reduce_219,
-  5, 189, :_reduce_220,
-  5, 189, :_reduce_221,
-  5, 189, :_reduce_222,
-  5, 189, :_reduce_223,
-  4, 189, :_reduce_224,
-  3, 189, :_reduce_225,
-  3, 189, :_reduce_226,
-  3, 189, :_reduce_227,
-  2, 189, :_reduce_228,
-  2, 189, :_reduce_229,
-  2, 189, :_reduce_230,
-  2, 189, :_reduce_231,
-  3, 189, :_reduce_232,
-  3, 189, :_reduce_233,
-  3, 189, :_reduce_234,
-  3, 189, :_reduce_235,
-  3, 189, :_reduce_236,
-  3, 189, :_reduce_237,
-  4, 189, :_reduce_238,
-  2, 189, :_reduce_239,
-  2, 189, :_reduce_240,
-  3, 189, :_reduce_241,
-  3, 189, :_reduce_242,
-  3, 189, :_reduce_243,
-  3, 189, :_reduce_244,
-  1, 189, :_reduce_none,
-  3, 189, :_reduce_246,
-  3, 189, :_reduce_247,
-  3, 189, :_reduce_248,
-  3, 189, :_reduce_249,
-  3, 189, :_reduce_250,
-  2, 189, :_reduce_251,
-  2, 189, :_reduce_252,
-  3, 189, :_reduce_253,
-  3, 189, :_reduce_254,
-  3, 189, :_reduce_255,
-  3, 189, :_reduce_256,
-  3, 189, :_reduce_257,
-  6, 189, :_reduce_258,
-  4, 189, :_reduce_259,
-  6, 189, :_reduce_260,
-  4, 189, :_reduce_261,
-  6, 189, :_reduce_262,
-  1, 189, :_reduce_none,
-  1, 237, :_reduce_none,
-  1, 237, :_reduce_none,
-  1, 237, :_reduce_none,
-  1, 237, :_reduce_none,
-  3, 235, :_reduce_268,
-  3, 235, :_reduce_269,
-  1, 238, :_reduce_270,
-  1, 239, :_reduce_none,
-  2, 239, :_reduce_272,
-  4, 239, :_reduce_273,
-  2, 239, :_reduce_274,
-  1, 233, :_reduce_none,
-  3, 233, :_reduce_276,
-  3, 243, :_reduce_277,
-  5, 243, :_reduce_278,
-  3, 243, :_reduce_279,
-  1, 245, :_reduce_none,
-  1, 245, :_reduce_none,
-  1, 183, :_reduce_none,
-  1, 183, :_reduce_none,
-  2, 183, :_reduce_284,
-  4, 183, :_reduce_285,
-  2, 183, :_reduce_286,
-  1, 217, :_reduce_287,
-  2, 217, :_reduce_288,
-  2, 217, :_reduce_289,
-  4, 217, :_reduce_290,
-  1, 217, :_reduce_291,
-  0, 248, :_reduce_292,
-  2, 210, :_reduce_293,
-  2, 247, :_reduce_294,
-  1, 247, :_reduce_295,
-  2, 246, :_reduce_296,
-  1, 246, :_reduce_none,
-  1, 240, :_reduce_298,
-  2, 240, :_reduce_299,
-  3, 240, :_reduce_300,
-  4, 240, :_reduce_301,
-  1, 177, :_reduce_302,
-  1, 177, :_reduce_303,
-  3, 176, :_reduce_304,
-  4, 176, :_reduce_305,
-  2, 176, :_reduce_306,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_317,
-  0, 281, :_reduce_318,
-  4, 236, :_reduce_319,
-  0, 282, :_reduce_320,
-  3, 236, :_reduce_321,
-  0, 283, :_reduce_322,
-  4, 236, :_reduce_323,
-  3, 236, :_reduce_324,
-  3, 236, :_reduce_325,
-  2, 236, :_reduce_326,
-  0, 284, :_reduce_327,
-  4, 236, :_reduce_328,
-  0, 285, :_reduce_329,
-  4, 236, :_reduce_330,
-  1, 236, :_reduce_331,
-  4, 236, :_reduce_332,
-  3, 236, :_reduce_333,
-  1, 236, :_reduce_334,
-  5, 236, :_reduce_335,
-  4, 236, :_reduce_336,
-  3, 236, :_reduce_337,
-  2, 236, :_reduce_338,
-  1, 236, :_reduce_none,
-  2, 236, :_reduce_340,
-  1, 236, :_reduce_341,
-  6, 236, :_reduce_342,
-  6, 236, :_reduce_343,
-  4, 236, :_reduce_344,
-  4, 236, :_reduce_345,
-  5, 236, :_reduce_346,
-  4, 236, :_reduce_347,
-  5, 236, :_reduce_348,
-  6, 236, :_reduce_349,
-  0, 286, :_reduce_350,
-  0, 287, :_reduce_351,
-  7, 236, :_reduce_352,
-  0, 288, :_reduce_353,
-  0, 289, :_reduce_354,
-  0, 290, :_reduce_355,
-  9, 236, :_reduce_356,
-  0, 291, :_reduce_357,
-  0, 292, :_reduce_358,
-  6, 236, :_reduce_359,
-  4, 236, :_reduce_360,
-  4, 236, :_reduce_361,
-  1, 236, :_reduce_362,
-  1, 236, :_reduce_363,
-  1, 236, :_reduce_364,
-  1, 236, :_reduce_365,
-  1, 182, :_reduce_366,
-  1, 258, :_reduce_none,
-  1, 264, :_reduce_none,
-  1, 267, :_reduce_none,
-  1, 269, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 271, :_reduce_none,
-  1, 274, :_reduce_none,
-  1, 276, :_reduce_374,
-  1, 279, :_reduce_375,
-  1, 198, :_reduce_376,
-  1, 293, :_reduce_none,
-  1, 294, :_reduce_none,
-  1, 295, :_reduce_none,
-  1, 296, :_reduce_none,
-  1, 297, :_reduce_none,
-  1, 163, :_reduce_none,
-  1, 298, :_reduce_none,
-  1, 259, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 265, :_reduce_none,
-  1, 265, :_reduce_none,
-  2, 265, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 266, :_reduce_none,
-  5, 266, :_reduce_392,
-  1, 268, :_reduce_none,
-  2, 268, :_reduce_394,
-  1, 275, :_reduce_none,
-  1, 275, :_reduce_396,
-  1, 299, :_reduce_none,
-  3, 299, :_reduce_398,
-  1, 302, :_reduce_399,
-  3, 302, :_reduce_400,
-  1, 301, :_reduce_401,
-  3, 301, :_reduce_402,
-  5, 301, :_reduce_403,
-  1, 301, :_reduce_404,
-  3, 301, :_reduce_405,
-  2, 303, :_reduce_406,
-  1, 303, :_reduce_407,
-  1, 304, :_reduce_none,
-  1, 304, :_reduce_none,
-  1, 307, :_reduce_none,
-  4, 308, :_reduce_411,
-  2, 308, :_reduce_412,
-  2, 308, :_reduce_413,
-  1, 308, :_reduce_414,
-  2, 312, :_reduce_415,
-  1, 312, :_reduce_none,
-  1, 313, :_reduce_417,
-  6, 314, :_reduce_418,
-  8, 314, :_reduce_419,
-  4, 314, :_reduce_420,
-  6, 314, :_reduce_421,
-  4, 314, :_reduce_422,
-  2, 314, :_reduce_423,
-  6, 314, :_reduce_424,
-  2, 314, :_reduce_425,
-  4, 314, :_reduce_426,
-  6, 314, :_reduce_427,
-  2, 314, :_reduce_428,
-  4, 314, :_reduce_429,
-  2, 314, :_reduce_430,
-  4, 314, :_reduce_431,
-  1, 314, :_reduce_432,
-  1, 318, :_reduce_433,
-  1, 318, :_reduce_434,
-  3, 319, :_reduce_435,
-  1, 319, :_reduce_436,
-  4, 319, :_reduce_437,
-  1, 320, :_reduce_none,
-  4, 320, :_reduce_439,
-  1, 321, :_reduce_440,
-  3, 321, :_reduce_441,
-  1, 322, :_reduce_442,
-  1, 322, :_reduce_none,
-  0, 326, :_reduce_444,
-  0, 327, :_reduce_445,
-  5, 263, :_reduce_446,
-  4, 324, :_reduce_447,
-  1, 324, :_reduce_448,
-  3, 325, :_reduce_449,
-  3, 325, :_reduce_450,
-  3, 329, :_reduce_451,
-  2, 207, :_reduce_452,
-  4, 207, :_reduce_453,
-  5, 207, :_reduce_454,
-  5, 207, :_reduce_455,
-  2, 262, :_reduce_456,
-  4, 262, :_reduce_457,
-  4, 262, :_reduce_458,
-  3, 262, :_reduce_459,
-  3, 262, :_reduce_460,
-  3, 262, :_reduce_461,
-  2, 262, :_reduce_462,
-  1, 262, :_reduce_463,
-  4, 262, :_reduce_464,
-  0, 332, :_reduce_465,
-  4, 261, :_reduce_466,
-  0, 333, :_reduce_467,
-  4, 261, :_reduce_468,
-  0, 334, :_reduce_469,
-  0, 335, :_reduce_470,
-  4, 212, :_reduce_471,
-  0, 337, :_reduce_472,
-  0, 338, :_reduce_473,
-  4, 330, :_reduce_474,
-  1, 336, :_reduce_475,
-  2, 336, :_reduce_476,
-  3, 336, :_reduce_477,
-  4, 336, :_reduce_478,
-  0, 340, :_reduce_479,
-  6, 272, :_reduce_480,
-  1, 339, :_reduce_none,
-  1, 339, :_reduce_none,
-  0, 343, :_reduce_483,
-  0, 344, :_reduce_484,
-  7, 273, :_reduce_485,
-  1, 342, :_reduce_none,
-  1, 342, :_reduce_none,
-  1, 341, :_reduce_none,
-  3, 341, :_reduce_489,
-  3, 341, :_reduce_490,
-  1, 193, :_reduce_none,
-  2, 193, :_reduce_492,
-  3, 193, :_reduce_493,
-  1, 193, :_reduce_494,
-  1, 193, :_reduce_495,
-  1, 193, :_reduce_496,
-  1, 345, :_reduce_none,
-  3, 350, :_reduce_498,
-  1, 350, :_reduce_none,
-  3, 352, :_reduce_500,
-  1, 352, :_reduce_none,
-  1, 354, :_reduce_502,
-  1, 355, :_reduce_503,
-  1, 353, :_reduce_none,
-  1, 353, :_reduce_none,
-  4, 353, :_reduce_506,
-  4, 353, :_reduce_507,
-  4, 353, :_reduce_508,
-  3, 353, :_reduce_509,
-  4, 353, :_reduce_510,
-  4, 353, :_reduce_511,
-  4, 353, :_reduce_512,
-  3, 353, :_reduce_513,
-  3, 353, :_reduce_514,
-  3, 353, :_reduce_515,
-  2, 353, :_reduce_516,
-  0, 359, :_reduce_517,
-  4, 353, :_reduce_518,
-  2, 353, :_reduce_519,
-  0, 360, :_reduce_520,
-  4, 353, :_reduce_521,
-  1, 346, :_reduce_522,
-  1, 346, :_reduce_523,
-  2, 346, :_reduce_524,
-  3, 346, :_reduce_525,
-  5, 346, :_reduce_526,
-  2, 346, :_reduce_527,
-  4, 346, :_reduce_528,
-  1, 346, :_reduce_none,
-  2, 361, :_reduce_530,
-  3, 361, :_reduce_531,
-  1, 348, :_reduce_532,
-  3, 348, :_reduce_533,
-  5, 347, :_reduce_534,
-  2, 364, :_reduce_535,
-  1, 364, :_reduce_536,
-  1, 363, :_reduce_none,
-  3, 363, :_reduce_538,
-  1, 362, :_reduce_539,
-  3, 349, :_reduce_540,
-  1, 349, :_reduce_541,
-  2, 349, :_reduce_542,
-  1, 349, :_reduce_543,
-  1, 365, :_reduce_none,
-  3, 365, :_reduce_545,
-  2, 367, :_reduce_546,
-  1, 367, :_reduce_547,
-  1, 368, :_reduce_548,
-  3, 368, :_reduce_549,
-  2, 370, :_reduce_550,
-  1, 370, :_reduce_551,
-  2, 372, :_reduce_552,
-  1, 366, :_reduce_none,
-  1, 366, :_reduce_none,
-  1, 356, :_reduce_none,
-  3, 356, :_reduce_556,
-  3, 356, :_reduce_557,
-  2, 356, :_reduce_558,
-  2, 356, :_reduce_559,
-  1, 356, :_reduce_none,
-  1, 356, :_reduce_none,
-  1, 356, :_reduce_none,
-  2, 356, :_reduce_563,
-  2, 356, :_reduce_564,
-  1, 373, :_reduce_none,
-  1, 373, :_reduce_none,
-  1, 373, :_reduce_none,
-  1, 373, :_reduce_none,
-  1, 373, :_reduce_569,
-  1, 373, :_reduce_570,
-  1, 373, :_reduce_571,
-  1, 373, :_reduce_572,
-  1, 373, :_reduce_573,
-  1, 373, :_reduce_none,
-  1, 351, :_reduce_575,
-  2, 374, :_reduce_576,
-  2, 374, :_reduce_577,
-  4, 375, :_reduce_578,
-  2, 357, :_reduce_579,
-  3, 357, :_reduce_580,
-  1, 357, :_reduce_581,
-  6, 162, :_reduce_582,
-  0, 162, :_reduce_583,
-  1, 377, :_reduce_584,
-  1, 377, :_reduce_none,
-  1, 377, :_reduce_none,
-  2, 378, :_reduce_587,
-  1, 378, :_reduce_none,
-  2, 164, :_reduce_589,
-  1, 164, :_reduce_none,
-  1, 249, :_reduce_591,
-  1, 249, :_reduce_none,
-  1, 250, :_reduce_593,
-  1, 380, :_reduce_594,
-  1, 380, :_reduce_none,
-  2, 380, :_reduce_596,
-  3, 381, :_reduce_597,
-  1, 381, :_reduce_598,
-  3, 251, :_reduce_599,
-  3, 252, :_reduce_600,
-  3, 253, :_reduce_601,
-  3, 253, :_reduce_602,
-  1, 384, :_reduce_603,
-  3, 384, :_reduce_604,
-  1, 385, :_reduce_none,
-  2, 385, :_reduce_606,
-  3, 255, :_reduce_607,
-  3, 255, :_reduce_608,
-  1, 387, :_reduce_609,
-  3, 387, :_reduce_610,
-  3, 254, :_reduce_611,
-  3, 254, :_reduce_612,
-  3, 256, :_reduce_613,
-  3, 256, :_reduce_614,
-  1, 388, :_reduce_615,
-  3, 388, :_reduce_616,
-  1, 389, :_reduce_617,
-  3, 389, :_reduce_618,
-  1, 369, :_reduce_619,
-  2, 369, :_reduce_620,
-  1, 382, :_reduce_621,
-  2, 382, :_reduce_622,
-  1, 383, :_reduce_623,
-  2, 383, :_reduce_624,
-  1, 386, :_reduce_625,
-  0, 391, :_reduce_626,
-  3, 386, :_reduce_627,
-  0, 392, :_reduce_628,
-  4, 386, :_reduce_629,
-  1, 390, :_reduce_630,
-  1, 390, :_reduce_631,
-  1, 390, :_reduce_632,
-  1, 390, :_reduce_none,
-  1, 231, :_reduce_none,
-  1, 231, :_reduce_none,
-  2, 393, :_reduce_636,
-  1, 393, :_reduce_637,
-  1, 395, :_reduce_none,
-  1, 395, :_reduce_none,
-  1, 395, :_reduce_none,
-  1, 395, :_reduce_none,
-  3, 394, :_reduce_642,
-  1, 379, :_reduce_none,
-  2, 379, :_reduce_644,
-  1, 234, :_reduce_none,
-  1, 234, :_reduce_none,
-  1, 234, :_reduce_none,
-  1, 234, :_reduce_none,
-  1, 376, :_reduce_649,
-  1, 376, :_reduce_650,
-  1, 376, :_reduce_651,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 226, :_reduce_657,
-  1, 226, :_reduce_658,
-  1, 226, :_reduce_659,
-  1, 226, :_reduce_660,
-  1, 226, :_reduce_661,
-  1, 226, :_reduce_662,
-  1, 226, :_reduce_663,
-  1, 257, :_reduce_664,
-  1, 257, :_reduce_665,
-  1, 181, :_reduce_666,
-  1, 181, :_reduce_667,
-  1, 191, :_reduce_668,
-  1, 191, :_reduce_669,
-  0, 396, :_reduce_670,
-  4, 277, :_reduce_671,
-  1, 277, :_reduce_672,
-  1, 187, :_reduce_none,
-  1, 187, :_reduce_674,
-  3, 397, :_reduce_675,
-  1, 280, :_reduce_none,
-  0, 399, :_reduce_677,
-  3, 280, :_reduce_678,
-  4, 398, :_reduce_679,
-  2, 398, :_reduce_680,
-  2, 398, :_reduce_681,
-  1, 398, :_reduce_none,
-  1, 398, :_reduce_none,
-  2, 401, :_reduce_684,
-  0, 401, :_reduce_685,
-  6, 328, :_reduce_686,
-  8, 328, :_reduce_687,
-  4, 328, :_reduce_688,
-  6, 328, :_reduce_689,
-  4, 328, :_reduce_690,
-  6, 328, :_reduce_691,
-  2, 328, :_reduce_692,
-  4, 328, :_reduce_693,
-  6, 328, :_reduce_694,
-  2, 328, :_reduce_695,
-  4, 328, :_reduce_696,
-  2, 328, :_reduce_697,
-  4, 328, :_reduce_698,
-  1, 328, :_reduce_699,
-  0, 328, :_reduce_700,
-  1, 244, :_reduce_701,
-  1, 323, :_reduce_702,
-  1, 323, :_reduce_703,
-  1, 323, :_reduce_704,
-  1, 323, :_reduce_705,
-  1, 300, :_reduce_none,
-  1, 300, :_reduce_707,
-  1, 403, :_reduce_none,
-  1, 404, :_reduce_none,
-  3, 404, :_reduce_710,
-  1, 315, :_reduce_711,
-  3, 315, :_reduce_712,
-  1, 405, :_reduce_none,
-  2, 406, :_reduce_714,
-  1, 406, :_reduce_715,
-  2, 407, :_reduce_716,
-  1, 407, :_reduce_717,
-  1, 309, :_reduce_none,
-  3, 309, :_reduce_719,
-  1, 400, :_reduce_none,
-  3, 400, :_reduce_721,
-  1, 371, :_reduce_none,
-  1, 371, :_reduce_none,
-  2, 306, :_reduce_724,
-  2, 305, :_reduce_725,
-  1, 305, :_reduce_726,
-  3, 408, :_reduce_727,
-  3, 409, :_reduce_728,
-  1, 316, :_reduce_729,
-  3, 316, :_reduce_730,
-  1, 402, :_reduce_731,
-  3, 402, :_reduce_732,
-  1, 410, :_reduce_none,
-  1, 410, :_reduce_none,
-  2, 317, :_reduce_735,
-  1, 317, :_reduce_736,
-  1, 411, :_reduce_none,
-  1, 411, :_reduce_none,
-  2, 311, :_reduce_739,
-  1, 311, :_reduce_740,
-  2, 310, :_reduce_741,
-  0, 310, :_reduce_742,
-  1, 199, :_reduce_none,
-  0, 412, :_reduce_744,
-  4, 199, :_reduce_745,
-  1, 260, :_reduce_746,
-  2, 260, :_reduce_none,
-  1, 242, :_reduce_none,
-  3, 242, :_reduce_749,
-  3, 413, :_reduce_750,
-  2, 413, :_reduce_751,
-  1, 413, :_reduce_752,
-  4, 413, :_reduce_753,
-  2, 413, :_reduce_754,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 331, :_reduce_none,
-  1, 331, :_reduce_none,
-  1, 331, :_reduce_none,
-  1, 200, :_reduce_none,
-  1, 200, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 208, :_reduce_none,
-  1, 208, :_reduce_none,
-  0, 152, :_reduce_none,
-  1, 152, :_reduce_none,
-  0, 192, :_reduce_none,
-  1, 192, :_reduce_none,
-  2, 220, :_reduce_none,
-  2, 184, :_reduce_776,
-  2, 358, :_reduce_777,
-  0, 241, :_reduce_none,
-  1, 241, :_reduce_none,
-  1, 241, :_reduce_none,
-  1, 278, :_reduce_781,
-  1, 278, :_reduce_none,
-  1, 155, :_reduce_none,
-  2, 155, :_reduce_784,
-  0, 153, :_reduce_785 ]
-
-racc_reduce_n = 786
-
-racc_shift_n = 1299
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLABEL_END => 141,
-  :tLONELY => 142,
-  :tBDOT2 => 143,
-  :tBDOT3 => 144,
-  :tLOWEST => 145,
-  :tEQL => 146 }
-
-racc_nt_base = 147
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLABEL_END",
-  "tLONELY",
-  "tBDOT2",
-  "tBDOT3",
-  "tLOWEST",
-  "tEQL",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "defn_head",
-  "f_opt_paren_args",
-  "command",
-  "arg",
-  "defs_head",
-  "backref",
-  "opt_nl",
-  "p_top_expr_body",
-  "def_name",
-  "@7",
-  "@8",
-  "fname",
-  "k_def",
-  "singleton",
-  "dot_or_colon",
-  "@9",
-  "expr_value_do",
-  "do",
-  "@10",
-  "@11",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@12",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "op",
-  "reswords",
-  "symbol",
-  "@13",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "args_forward",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@14",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "p_case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "f_arglist",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "f_any_kwrest",
-  "f_kwrest",
-  "f_no_kwarg",
-  "f_eq",
-  "block_args_tail",
-  "f_block_kwarg",
-  "opt_f_block_arg",
-  "f_block_arg",
-  "opt_block_args_tail",
-  "excessed_comma",
-  "block_param",
-  "f_arg",
-  "f_block_optarg",
-  "f_rest_arg",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "p_top_expr",
-  "p_cases",
-  "@36",
-  "@37",
-  "p_expr",
-  "p_args",
-  "p_find",
-  "p_args_tail",
-  "p_kwargs",
-  "p_as",
-  "p_variable",
-  "p_alt",
-  "p_expr_basic",
-  "p_lparen",
-  "p_lbracket",
-  "p_value",
-  "p_const",
-  "rbrace",
-  "@38",
-  "@39",
-  "p_args_head",
-  "p_arg",
-  "p_args_post",
-  "p_rest",
-  "p_kwarg",
-  "p_any_kwrest",
-  "p_kw",
-  "p_kw_label",
-  "string_contents",
-  "p_kwrest",
-  "kwrest_mark",
-  "p_kwnorest",
-  "p_primitive",
-  "p_var_ref",
-  "p_expr_ref",
-  "nonlocal_var",
-  "exc_list",
-  "exc_var",
-  "numeric",
-  "string",
-  "string1",
-  "xstring_contents",
-  "regexp_contents",
-  "word_list",
-  "word",
-  "string_content",
-  "symbol_list",
-  "qword_list",
-  "qsym_list",
-  "string_dvar",
-  "@40",
-  "@41",
-  "ssym",
-  "dsym",
-  "sym",
-  "@42",
-  "f_paren_args",
-  "args_tail",
-  "@43",
-  "f_kwarg",
-  "opt_args_tail",
-  "f_optarg",
-  "f_arg_asgn",
-  "f_arg_item",
-  "f_label",
-  "f_kw",
-  "f_block_kw",
-  "f_opt",
-  "f_block_opt",
-  "restarg_mark",
-  "blkarg_mark",
-  "@44",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 1
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      yyerror "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 2
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 3
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-
-    result
-end
-
-def _reduce_40(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 41 omitted
-
-def _reduce_42(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_50(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_51(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-def _reduce_52(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-def _reduce_53(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_54(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-
-    result
-end
-
-# reduce 56 omitted
-
-# reduce 57 omitted
-
-def _reduce_58(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_61(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-def _reduce_62(val, _values, result)
-                      # value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-
-    result
-end
-
-def _reduce_63(val, _values, result)
-                      lhs, _, in_kwarg, rhs = val
-
-                      self.env.unextend
-                      self.in_kwarg = in_kwarg
-
-                      rhs = new_in rhs, nil, nil, rhs.line
-                      result = new_case lhs, rhs, rhs.line
-
-    result
-end
-
-def _reduce_64(val, _values, result)
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-
-    result
-end
-
-def _reduce_65(val, _values, result)
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-
-    result
-end
-
-# reduce 66 omitted
-
-def _reduce_67(val, _values, result)
-                      # TODO: numparam_name(p, fname);
-
-                      (id, line), = val
-                      old_in_def = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      result = [id.to_sym, line, old_in_def]
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      _, name = val
-                      result = name
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                      self.in_single += 1 # TODO: remove?
-
-                      # self.in_def = true # local_push
-                      # self.env.extend
-                      # lexer.cmdarg.push false
-                      # lexer.cond.push false
-
-                      _, recv, _, _, name = val
-
-                      result = [recv, name]
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 75 omitted
-
-# reduce 76 omitted
-
-# reduce 77 omitted
-
-def _reduce_78(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_79(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_80(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_81(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_82(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_83(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 93 omitted
-
-def _reduce_94(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 95 omitted
-
-def _reduce_96(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 107 omitted
-
-def _reduce_108(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_118(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_119(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 4
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_120(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 5
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_122(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_123(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 6
-
-    result
-end
-
-def _reduce_124(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_125(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_126(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_127(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_128(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 7
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_129(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 8
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_130(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 132 omitted
-
-def _reduce_133(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_134(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_135(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 136 omitted
-
-# reduce 137 omitted
-
-# reduce 138 omitted
-
-def _reduce_139(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 140 omitted
-
-def _reduce_141(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 142 omitted
-
-def _reduce_143(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_144(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_145(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-# reduce 203 omitted
-
-# reduce 204 omitted
-
-# reduce 205 omitted
-
-# reduce 206 omitted
-
-# reduce 207 omitted
-
-# reduce 208 omitted
-
-# reduce 209 omitted
-
-# reduce 210 omitted
-
-# reduce 211 omitted
-
-# reduce 212 omitted
-
-# reduce 213 omitted
-
-# reduce 214 omitted
-
-# reduce 215 omitted
-
-# reduce 216 omitted
-
-def _reduce_217(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_227(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_228(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_229(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_230(val, _values, result)
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      _, num, _, arg = val
-                      lit = wrap :lit, num
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_241(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_242(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_243(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_244(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 245 omitted
-
-def _reduce_246(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_247(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_248(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_249(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_250(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_251(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_252(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_253(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_254(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_255(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_256(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_257(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_258(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-def _reduce_259(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_260(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_261(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-def _reduce_262(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-# reduce 263 omitted
-
-# reduce 264 omitted
-
-# reduce 265 omitted
-
-# reduce 266 omitted
-
-# reduce 267 omitted
-
-def _reduce_268(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 271 omitted
-
-def _reduce_272(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_273(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_274(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 275 omitted
-
-def _reduce_276(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-
-    result
-end
-
-# reduce 280 omitted
-
-# reduce 281 omitted
-
-# reduce 282 omitted
-
-# reduce 283 omitted
-
-def _reduce_284(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_285(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_286(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_287(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_288(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_289(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_290(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_291(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_292(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_293(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_294(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_295(val, _values, result)
-                      (_, line), = val
-                      result = s(:block_pass).line line
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 297 omitted
-
-def _reduce_298(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_302(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_303(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_305(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 307 omitted
-
-# reduce 308 omitted
-
-# reduce 309 omitted
-
-# reduce 310 omitted
-
-# reduce 311 omitted
-
-# reduce 312 omitted
-
-# reduce 313 omitted
-
-# reduce 314 omitted
-
-# reduce 315 omitted
-
-# reduce 316 omitted
-
-def _reduce_317(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_327(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      debug 9
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 339 omitted
-
-def _reduce_340(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_344(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_345(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_346(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_347(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_348(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_349(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_350(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_351(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_352(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_354(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_355(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_356(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_357(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_358(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_359(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_360(val, _values, result)
-                      # [               [:f, 1, false], s(:args)...]
-                      # =>
-                      # [[:k_def, 666], [:f, 1], false, s(:args)...]
-                      val.insert 1, val.first.pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_361(val, _values, result)
-                      # [        [recv, [:name, 1, false]], s(:args...]
-                      # =>
-                      # [         recv, [:name, 1, false],  s(:args...]
-                      # =>
-                      # [         recv, [:name, 1], false,  s(:args...]
-                      # =>
-                      # [ :k_def, recv, [:name, 1], false,  s(:args...]
-
-                      val.prepend(*val.shift)
-                      val.insert 2, val[1].pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_362(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_363(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_364(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_365(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_366(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-# reduce 369 omitted
-
-# reduce 370 omitted
-
-# reduce 371 omitted
-
-# reduce 372 omitted
-
-# reduce 373 omitted
-
-def _reduce_374(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_375(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_376(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 377 omitted
-
-# reduce 378 omitted
-
-# reduce 379 omitted
-
-# reduce 380 omitted
-
-# reduce 381 omitted
-
-# reduce 382 omitted
-
-# reduce 383 omitted
-
-# reduce 384 omitted
-
-# reduce 385 omitted
-
-# reduce 386 omitted
-
-# reduce 387 omitted
-
-# reduce 388 omitted
-
-# reduce 389 omitted
-
-# reduce 390 omitted
-
-# reduce 391 omitted
-
-def _reduce_392(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 393 omitted
-
-def _reduce_394(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 395 omitted
-
-def _reduce_396(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 397 omitted
-
-def _reduce_398(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_403(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_406(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_407(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-# reduce 408 omitted
-
-# reduce 409 omitted
-
-# reduce 410 omitted
-
-def _reduce_411(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_412(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_413(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 416 omitted
-
-def _reduce_417(val, _values, result)
-                      result = s(:WTF_COMMA!)
-
-    result
-end
-
-def _reduce_418(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      arg, _ = val
-                      result = arg << nil
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_433(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 438 omitted
-
-def _reduce_439(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_442(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 443 omitted
-
-def _reduce_444(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_445(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_446(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_447(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_454(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_455(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_456(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_457(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_458(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_459(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_460(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_461(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_462(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_463(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_464(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_465(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_466(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_467(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_468(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_469(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_470(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_471(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_472(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_473(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_476(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_477(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_479(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_480(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 481 omitted
-
-# reduce 482 omitted
-
-def _reduce_483(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-
-    result
-end
-
-def _reduce_485(val, _values, result)
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-
-    result
-end
-
-# reduce 486 omitted
-
-# reduce 487 omitted
-
-# reduce 488 omitted
-
-def _reduce_489(val, _values, result)
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-
-    result
-end
-
-# reduce 491 omitted
-
-def _reduce_492(val, _values, result)
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      find, = val
-
-                      result = new_find_pattern nil, find
-
-    result
-end
-
-def _reduce_495(val, _values, result)
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-
-    result
-end
-
-# reduce 497 omitted
-
-def _reduce_498(val, _values, result)
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-
-    result
-end
-
-# reduce 499 omitted
-
-def _reduce_500(val, _values, result)
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-
-    result
-end
-
-# reduce 501 omitted
-
-def _reduce_502(val, _values, result)
- push_pktbl
-    result
-end
-
-def _reduce_503(val, _values, result)
- push_pktbl
-    result
-end
-
-# reduce 504 omitted
-
-# reduce 505 omitted
-
-def _reduce_506(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-
-    result
-end
-
-def _reduce_507(val, _values, result)
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-
-    result
-end
-
-def _reduce_508(val, _values, result)
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-
-    result
-end
-
-def _reduce_509(val, _values, result)
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-
-    result
-end
-
-def _reduce_510(val, _values, result)
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-
-    result
-end
-
-def _reduce_511(val, _values, result)
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-
-    result
-end
-
-def _reduce_512(val, _values, result)
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-
-    result
-end
-
-def _reduce_513(val, _values, result)
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-
-    result
-end
-
-def _reduce_514(val, _values, result)
-                      _, pat, _ = val
-
-                      result = new_array_pattern nil, nil, pat, pat.line
-
-    result
-end
-
-def _reduce_515(val, _values, result)
-                      _, find, _ = val
-
-                      result = new_find_pattern nil, find
-
-    result
-end
-
-def _reduce_516(val, _values, result)
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-
-    result
-end
-
-def _reduce_517(val, _values, result)
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-
-    result
-end
-
-def _reduce_518(val, _values, result)
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-
-    result
-end
-
-def _reduce_519(val, _values, result)
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-
-    result
-end
-
-def _reduce_520(val, _values, result)
- push_pktbl
-    result
-end
-
-def _reduce_521(val, _values, result)
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-
-    result
-end
-
-def _reduce_522(val, _values, result)
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-
-    result
-end
-
-def _reduce_523(val, _values, result)
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-
-    result
-end
-
-def _reduce_524(val, _values, result)
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-
-    result
-end
-
-def _reduce_525(val, _values, result)
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-
-    result
-end
-
-def _reduce_526(val, _values, result)
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-
-    result
-end
-
-def _reduce_527(val, _values, result)
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-
-    result
-end
-
-def _reduce_528(val, _values, result)
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-
-    result
-end
-
-# reduce 529 omitted
-
-def _reduce_530(val, _values, result)
-                      arg, _ = val
-                      result = arg
-
-    result
-end
-
-def _reduce_531(val, _values, result)
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-
-    result
-end
-
-def _reduce_532(val, _values, result)
-                      (id, line), = val
-
-                      result = new_array_pattern_tail nil, true, id, nil
-                      result.line line
-
-    result
-end
-
-def _reduce_533(val, _values, result)
-                      (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id, rhs
-                      result.line line
-
-    result
-end
-
-def _reduce_534(val, _values, result)
-                      lhs, _, mid, _, rhs = val
-
-                      result = new_find_pattern_tail lhs, mid, rhs
-
-    result
-end
-
-def _reduce_535(val, _values, result)
-                      _, (id, line) = val
-
-                      result = [id.to_sym, line]
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      (_id, line), = val
-
-                      result = [nil, line]
-
-    result
-end
-
-# reduce 537 omitted
-
-def _reduce_538(val, _values, result)
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-
-    result
-end
-
-# reduce 544 omitted
-
-def _reduce_545(val, _values, result)
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-
-    result
-end
-
-def _reduce_546(val, _values, result)
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_547(val, _values, result)
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 10
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-
-    result
-end
-
-def _reduce_548(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      # you can't actually get here the way I lex labels
-                      debug 11
-
-    result
-end
-
-def _reduce_550(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-
-    result
-end
-
-def _reduce_551(val, _values, result)
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-
-    result
-end
-
-def _reduce_552(val, _values, result)
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-
-    result
-end
-
-# reduce 553 omitted
-
-# reduce 554 omitted
-
-# reduce 555 omitted
-
-def _reduce_556(val, _values, result)
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-
-    result
-end
-
-# reduce 560 omitted
-
-# reduce 561 omitted
-
-# reduce 562 omitted
-
-def _reduce_563(val, _values, result)
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-
-    result
-end
-
-# reduce 565 omitted
-
-# reduce 566 omitted
-
-# reduce 567 omitted
-
-# reduce 568 omitted
-
-def _reduce_569(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_570(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_572(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_573(val, _values, result)
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-
-    result
-end
-
-# reduce 574 omitted
-
-def _reduce_575(val, _values, result)
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-
-    result
-end
-
-def _reduce_576(val, _values, result)
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-
-    result
-end
-
-def _reduce_577(val, _values, result)
-                      _, var = val
-                      result = var
-
-    result
-end
-
-def _reduce_578(val, _values, result)
-                      _, _, expr, _ = val
-                      result = expr # TODO? s(:begin, expr).line expr.line
-
-    result
-end
-
-def _reduce_579(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_580(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_581(val, _values, result)
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-
-    result
-end
-
-def _reduce_582(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_583(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_584(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 585 omitted
-
-# reduce 586 omitted
-
-def _reduce_587(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 588 omitted
-
-def _reduce_589(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 590 omitted
-
-def _reduce_591(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 592 omitted
-
-def _reduce_593(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      debug 12
-
-    result
-end
-
-# reduce 595 omitted
-
-def _reduce_596(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_597(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_598(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_599(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_600(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_601(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_602(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_603(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_604(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 605 omitted
-
-def _reduce_606(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_607(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_608(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_609(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_610(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_611(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_612(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_613(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_614(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_615(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_616(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_617(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_618(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_619(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_620(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_621(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_622(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_623(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_624(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_625(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_626(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_627(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_628(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_629(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 13
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_630(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_631(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_632(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 633 omitted
-
-# reduce 634 omitted
-
-# reduce 635 omitted
-
-def _reduce_636(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_637(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 638 omitted
-
-# reduce 639 omitted
-
-# reduce 640 omitted
-
-# reduce 641 omitted
-
-def _reduce_642(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 14
-                      end
-
-    result
-end
-
-# reduce 643 omitted
-
-def _reduce_644(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 645 omitted
-
-# reduce 646 omitted
-
-# reduce 647 omitted
-
-# reduce 648 omitted
-
-def _reduce_649(val, _values, result)
- result = wrap :ivar, val[0]
-    result
-end
-
-def _reduce_650(val, _values, result)
- result = wrap :gvar, val[0]
-    result
-end
-
-def _reduce_651(val, _values, result)
- result = wrap :cvar, val[0]
-    result
-end
-
-# reduce 652 omitted
-
-# reduce 653 omitted
-
-# reduce 654 omitted
-
-# reduce 655 omitted
-
-# reduce 656 omitted
-
-def _reduce_657(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_658(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_659(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_660(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_661(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_662(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_663(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_664(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-
-                      result.line line
-
-    result
-end
-
-def _reduce_665(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_666(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_667(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 15
-
-    result
-end
-
-def _reduce_668(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_669(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_670(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_671(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_672(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 673 omitted
-
-def _reduce_674(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_675(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-# reduce 676 omitted
-
-def _reduce_677(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_678(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_679(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_680(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_681(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 682 omitted
-
-# reduce 683 omitted
-
-def _reduce_684(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_685(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_686(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_687(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_688(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_689(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_690(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_691(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_692(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_693(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_694(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_695(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_696(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_697(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_698(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_699(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_700(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_701(val, _values, result)
-                      result = s(:forward_args).line lexer.lineno
-
-    result
-end
-
-def _reduce_702(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_703(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_704(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_705(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 706 omitted
-
-def _reduce_707(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 708 omitted
-
-# reduce 709 omitted
-
-def _reduce_710(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_711(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_712(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 713 omitted
-
-def _reduce_714(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_715(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_716(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_717(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 718 omitted
-
-def _reduce_719(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 720 omitted
-
-def _reduce_721(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 722 omitted
-
-# reduce 723 omitted
-
-def _reduce_724(val, _values, result)
-                      (_, line), _ = val
-                      result = [:"**nil", line]
-
-    result
-end
-
-def _reduce_725(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_726(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_727(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-
-    result
-end
-
-def _reduce_728(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-
-    result
-end
-
-def _reduce_729(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_730(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_731(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_732(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 733 omitted
-
-# reduce 734 omitted
-
-def _reduce_735(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_736(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 737 omitted
-
-# reduce 738 omitted
-
-def _reduce_739(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_740(val, _values, result)
-                      (_, line), = val
-
-                      result = [:&, line]
-
-    result
-end
-
-def _reduce_741(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_742(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 743 omitted
-
-def _reduce_744(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_745(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_746(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 747 omitted
-
-# reduce 748 omitted
-
-def _reduce_749(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_750(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_751(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_752(val, _values, result)
-                      lit = wrap :lit, val[0]
-                      arg = nil
-
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_753(val, _values, result)
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-
-    result
-end
-
-def _reduce_754(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 755 omitted
-
-# reduce 756 omitted
-
-# reduce 757 omitted
-
-# reduce 758 omitted
-
-# reduce 759 omitted
-
-# reduce 760 omitted
-
-# reduce 761 omitted
-
-# reduce 762 omitted
-
-# reduce 763 omitted
-
-# reduce 764 omitted
-
-# reduce 765 omitted
-
-# reduce 766 omitted
-
-# reduce 767 omitted
-
-# reduce 768 omitted
-
-# reduce 769 omitted
-
-# reduce 770 omitted
-
-# reduce 771 omitted
-
-# reduce 772 omitted
-
-# reduce 773 omitted
-
-# reduce 774 omitted
-
-# reduce 775 omitted
-
-def _reduce_776(val, _values, result)
-                      _, close = val
-                      result = [close, lexer.lineno]
-
-    result
-end
-
-def _reduce_777(val, _values, result)
-                      _, close = val
-                      result = [close, lexer.lineno]
-
-    result
-end
-
-# reduce 778 omitted
-
-# reduce 779 omitted
-
-# reduce 780 omitted
-
-def _reduce_781(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 782 omitted
-
-# reduce 783 omitted
-
-def _reduce_784(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_785(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby31Parser
diff -pruN 3.20.0-2/lib/ruby31_parser.y 3.21.1-1/lib/ruby31_parser.y
--- 3.20.0-2/lib/ruby31_parser.y	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby31_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,3493 +0,0 @@
-# -*- racc -*-
-
-class Ruby31Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-      tLONELY
-      tBDOT2 tBDOT3
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 1
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      yyerror "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 2
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 3
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg kRESCUE_MOD stmt
-                    {
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | defn_head f_opt_paren_args tEQL command
-                    {
-                      result = new_endless_defn val
-                    }
-                | defn_head f_opt_paren_args tEQL command kRESCUE_MOD arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defs_head f_opt_paren_args tEQL command
-                    {
-                      result = new_endless_defs val
-                    }
-                | defs_head f_opt_paren_args tEQL command kRESCUE_MOD arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_call kRESCUE_MOD stmt
-                    {
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg tASSOC
-                    {
-                      # value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-                    p_top_expr_body
-                    {
-                      lhs, _, in_kwarg, rhs = val
-
-                      self.env.unextend
-                      self.in_kwarg = in_kwarg
-
-                      rhs = new_in rhs, nil, nil, rhs.line
-                      result = new_case lhs, rhs, rhs.line
-                    }
-                | arg
-                    kIN
-                    {
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-                    p_top_expr_body
-                    {
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-                    }
-                | arg                                   =tLBRACE_ARG
-
-        def_name: fname
-                    {
-                      # TODO: numparam_name(p, fname);
-
-                      (id, line), = val
-                      old_in_def = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      result = [id.to_sym, line, old_in_def]
-                    }
-       defn_head: k_def def_name
-                    {
-                      _, name = val
-                      result = name
-                    }
-       defs_head: k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    def_name
-                    {
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                      self.in_single += 1 # TODO: remove?
-
-                      # self.in_def = true # local_push
-                      # self.env.extend
-                      # lexer.cmdarg.push false
-                      # lexer.cond.push false
-
-                      _, recv, _, _, name = val
-
-                      result = [recv, name]
-                    }
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 4
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 5
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 6
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 7
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 8
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT2
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-                    }
-                | arg tDOT3
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-                    }
-
-                | tBDOT2 arg
-                    {
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-                    }
-                | tBDOT3 arg
-                    {
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-                    }
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, num, _, arg = val
-                      lit = wrap :lit, num
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | defn_head f_opt_paren_args tEQL arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defn_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defs_head f_opt_paren_args tEQL arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | defs_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-                | tLPAREN2 args tCOMMA args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-                | tAMPER
-                    {
-                      (_, line), = val
-                      result = s(:block_pass).line line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 9
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_case expr_value opt_terms p_case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | defn_head f_arglist bodystmt k_end
-                    {
-                      # [               [:f, 1, false], s(:args)...]
-                      # =>
-                      # [[:k_def, 666], [:f, 1], false, s(:args)...]
-                      val.insert 1, val.first.pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | defs_head f_arglist bodystmt k_end
-                    {
-                      # [        [recv, [:name, 1, false]], s(:args...]
-                      # =>
-                      # [         recv, [:name, 1, false],  s(:args...]
-                      # =>
-                      # [         recv, [:name, 1], false,  s(:args...]
-                      # =>
-                      # [ :k_def, recv, [:name, 1], false,  s(:args...]
-
-                      val.prepend(*val.shift)
-                      val.insert 2, val[1].pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
-    f_any_kwrest: f_kwrest
-                | f_no_kwarg
-
-            f_eq: tEQL # TODO: self.in_argdef = false
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_any_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-  excessed_comma: tCOMMA
-                    {
-                      result = s(:WTF_COMMA!)
-                    }
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg excessed_comma
-                    {
-                      arg, _ = val
-                      result = arg << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    bodystmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-######################################################################
-
-     p_case_body: kIN
-                    {
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-                    }
-                    p_top_expr then
-                    {
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-                    }
-                    compstmt
-                    p_cases
-                    {
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-                    }
-
-         p_cases: opt_else
-                | p_case_body
-
-      p_top_expr: p_top_expr_body
-                | p_top_expr_body kIF_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-                    }
-                | p_top_expr_body kUNLESS_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-                    }
-
- p_top_expr_body: p_expr
-                | p_expr tCOMMA
-                    {
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-                    }
-                | p_expr tCOMMA p_args
-                    {
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-                    }
-                | p_find
-                    {
-                      find, = val
-
-                      result = new_find_pattern nil, find
-                    }
-                | p_args_tail
-                    {
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-                    }
-                | p_kwargs
-                    {
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-                    }
-
-          p_expr: p_as
-
-            p_as: p_expr tASSOC p_variable
-                    {
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-                    }
-                | p_alt
-
-           p_alt: p_alt tPIPE p_expr_basic
-                    {
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-                    }
-                | p_expr_basic
-
-        p_lparen: tLPAREN2 { push_pktbl }
-      p_lbracket: tLBRACK2 { push_pktbl }
-
-    p_expr_basic: p_value
-                | p_variable
-                | p_const p_lparen p_args tRPAREN
-                    {
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-                    }
-                | p_const p_lparen p_find tRPAREN
-                    {
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-                    }
-                | p_const p_lparen p_kwargs tRPAREN
-                    {
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-                    }
-                | p_const tLPAREN2 tRPAREN
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | p_const p_lbracket p_args rbracket
-                    {
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-                    }
-                | p_const p_lbracket p_find rbracket
-                    {
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-                    }
-                | p_const p_lbracket p_kwargs rbracket
-                    {
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-                    }
-                | p_const tLBRACK2 rbracket
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | tLBRACK p_args rbracket
-                    {
-                      _, pat, _ = val
-
-                      result = new_array_pattern nil, nil, pat, pat.line
-                    }
-                | tLBRACK p_find rbracket
-                    {
-                      _, find, _ = val
-
-                      result = new_find_pattern nil, find
-                    }
-                | tLBRACK rbracket
-                    {
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-                    }
-                | tLBRACE
-                    {
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-                    }
-                    p_kwargs rbrace
-                    {
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-                    }
-                | tLBRACE rbrace
-                    {
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-                    }
-                | tLPAREN { push_pktbl } p_expr tRPAREN
-                    {
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-                    }
-
-          p_args: p_expr
-                    {
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-                    }
-                | p_args_head
-                    {
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-                    }
-                | p_args_head p_arg
-                    {
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER
-                    {
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER tCOMMA p_args_post
-                    {
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-                    }
-                | p_args_head tSTAR
-                    {
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-                    }
-                | p_args_head tSTAR tCOMMA p_args_post
-                    {
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-                    }
-                | p_args_tail
-
-     p_args_head: p_arg tCOMMA
-                    {
-                      arg, _ = val
-                      result = arg
-                    }
-                | p_args_head p_arg tCOMMA
-                    {
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-                    }
-
-     p_args_tail: p_rest
-                    {
-                      (id, line), = val
-
-                      result = new_array_pattern_tail nil, true, id, nil
-                      result.line line
-                    }
-                | p_rest tCOMMA p_args_post
-                    {
-                      (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id, rhs
-                      result.line line
-                    }
-
-          p_find:  p_rest tCOMMA p_args_post tCOMMA p_rest
-                    {
-                      lhs, _, mid, _, rhs = val
-
-                      result = new_find_pattern_tail lhs, mid, rhs
-                    }
-
-          p_rest: tSTAR tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      result = [id.to_sym, line]
-                    }
-                | tSTAR
-                    {
-                      (_id, line), = val
-
-                      result = [nil, line]
-                    }
-
-     p_args_post: p_arg
-                | p_args_post tCOMMA p_arg
-                    {
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-                    }
-
-           p_arg: p_expr
-                    {
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-                    }
-
-        p_kwargs: p_kwarg tCOMMA p_any_kwrest
-                    {
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-                    }
-                | p_kwarg
-                    {
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_kwarg tCOMMA
-                    {
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_any_kwrest
-                    {
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-                    }
-
-         p_kwarg: p_kw # TODO? rb_ary_new_from_args(1, $1)
-                | p_kwarg tCOMMA p_kw
-                    {
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-                    }
-
-            p_kw: p_kw_label p_expr
-                    {
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-                    }
-                | p_kw_label
-                    {
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 10
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-                    }
-
-      p_kw_label: tLABEL
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | tSTRING_BEG string_contents tLABEL_END
-                    {
-                      # you can't actually get here the way I lex labels
-                      debug 11
-                    }
-
-        p_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-                    }
-                | kwrest_mark
-                    {
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-                    }
-
-      p_kwnorest: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-                    }
-
-    p_any_kwrest: p_kwrest
-                | p_kwnorest
-
-         p_value: p_primitive
-                | p_primitive tDOT2 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT3 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT2
-                    {
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-                    }
-                | p_primitive tDOT3
-                    {
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-                    }
-                | p_var_ref
-                | p_expr_ref
-                | p_const
-                | tBDOT2 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-                    }
-                | tBDOT3 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-                    }
-
-     p_primitive: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qwords
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | symbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qsymbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | keyword_variable
-                    {
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-                    }
-                | lambda
-
-      p_variable: tIDENTIFIER
-                    {
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-                    }
-
-       p_var_ref: tCARET tIDENTIFIER
-                    {
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-                    }
-                | tCARET nonlocal_var
-                    {
-                      _, var = val
-                      result = var
-                    }
-
-      p_expr_ref: tCARET tLPAREN expr_value rparen
-                    {
-                      _, _, expr, _ = val
-                      result = expr # TODO? s(:begin, expr).line expr.line
-                    }
-
-         p_const: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | p_const tCOLON2 cname
-                    {
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-                    }
-                | tCONSTANT
-                    {
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-                    }
-######################################################################
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 12
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 13
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 14
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-    nonlocal_var: tIVAR { result = wrap :ivar, val[0] }
-                | tGVAR { result = wrap :gvar, val[0] }
-                | tCVAR { result = wrap :cvar, val[0] }
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 15
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-f_opt_paren_args: f_paren_args
-                | none
-                    {
-                      result = end_args val
-                    }
-
-    f_paren_args: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-
-       f_arglist: f_paren_args
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_any_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-                | args_forward
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-    args_forward: tBDOT3
-                    {
-                      result = s(:forward_args).line lexer.lineno
-                    }
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-      f_no_kwarg: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-                      result = [:"**nil", line]
-                    }
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn
-                    f_eq
-                    arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-                    }
-
-     f_block_opt: f_arg_asgn
-                    f_eq
-                    primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-                | blkarg_mark
-                    {
-                      (_, line), = val
-
-                      result = [:&, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tLABEL
-                    {
-                      lit = wrap :lit, val[0]
-                      arg = nil
-
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-                | tLONELY # TODO: rename tANDDOT?
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-                    # TODO:
-                    # {
-                    #   _, close = val
-                    #   result = [close, lexer.lineno]
-                    # }
-        rbracket: opt_nl tRBRACK
-                    {
-                      _, close = val
-                      result = [close, lexer.lineno]
-                    }
-          rbrace: opt_nl tRCURLY
-                    {
-                      _, close = val
-                      result = [close, lexer.lineno]
-                    }
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby32_parser.rb 3.21.1-1/lib/ruby32_parser.rb
--- 3.20.0-2/lib/ruby32_parser.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby32_parser.rb	1970-01-01 00:00:00.000000000 +0000
@@ -1,13638 +0,0 @@
-#
-# DO NOT MODIFY!!!!
-# This file is automatically generated by Racc 1.6.2
-# from Racc grammar file "".
-#
-
-require 'racc/parser.rb'
-class Ruby32Parser < RubyParser::Parser
-
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
-##### State transition tables begin ###
-
-racc_action_table = [
-  -652,   685,   688,   317,   641,  -122,   317,  -652,  -652,  -652,
-   228,   229,  -652,  -652,  -652,  -116,  -652,  -123,  1177,  -118,
-   641,   641,   228,   229,  -652,   246,  -652,  -652,  -652,   228,
-   229,  -773,   851,   745,   984,   850,  -652,  -652,   234,  -652,
-  -652,  -652,  -652,  -652,   247,   312,  1025,   641,  -130,  -117,
-  -129,   746,   983,  -125,  -127,   641,   867,   960,   240,   228,
-   229,   247,  1046,  -115,   684,   687,  -666,  -652,  -652,  -652,
-  -652,  -652,  -652,  -652,  -652,  -652,  -652,  -652,  -652,  -652,
-  -652,   641,  -116,  -652,  -652,  -652,  -118,  -652,  -652,   862,
-   319,  -652,  -124,   319,  -652,  -652,  1178,  -652,   959,  -652,
-   247,  -652,   235,  -652,  -652,  -652,  -652,  -652,  -652,  -652,
-  -113,  -652,   247,  -652,  -785,  -758,  -117,  -116,   134,   247,
-  -116,  -118,  -114,   133,  -118,  -122,  -652,  -652,  -652,  -652,
-  -115,  -652,  -122,  -652,   134,   134,  -655,  -116,  -652,   133,
-   133,  -118,  -652,  -655,  -655,  -655,  -652,  -123,  -655,  -655,
-  -655,  -117,  -655,  -121,  -117,  -120,  -130,  -129,  -116,  -118,
-  -655,   134,  -655,  -655,  -655,  -115,   133,  1045,  -115,   134,
-  -125,  -117,  -655,  -655,   133,  -655,  -655,  -655,  -655,  -655,
-  -127,  -126,   240,  -124,   960,  -115,  -126,  -128,  1003,   134,
-   317,  -667,  1003,     3,   133,   134,   669,  -115,  1142,   674,
-   133,   539,   130,  -655,  -655,  -655,  -655,  -655,  -655,  -655,
-  -655,  -655,  -655,  -655,  -655,  -655,  -655,   225,   317,  -655,
-  -655,  -655,  1002,  -655,  -655,  -539,  1002,  -655,   112,   113,
-  -655,  -655,   876,  -655,   244,  -655,   877,  -655,  -785,  -655,
-  -655,  -655,  -655,  -655,  -655,  -655,  -122,  -655,  -128,  -655,
-  -123,  -122,  -758,  -759,   226,   314,   669,   671,   670,  -758,
-  -130,  -123,  -655,  -655,  -655,  -655,  -123,  -655,   669,  -655,
-  -130,  -129,  -325,   669,  -655,  -130,  -129,   319,  -655,  -325,
-  -325,  -325,  -655,   314,  -125,  -325,  -325,  -108,  -325,  -125,
-  -773,  -117,  -119,  -130,  -127,  -126,  -325,  -124,   851,  -127,
-  -126,   853,  -124,   669,   -94,   319,   114,   115,  -325,  -325,
-   621,  -325,  -325,  -325,  -325,  -325,   240,   671,   670,   667,
-   134,   247,   782,   227,    99,   133,  -759,   112,   113,   671,
-   670,   240,   100,   516,   671,   670,   667,   828,   891,  -325,
-  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -325,  -325,  -325,   648,  1112,  -325,  -325,  -325,   669,   713,
-  -325,   867,  -128,  -325,   671,   670,  -325,  -128,   954,  -129,
-   244,  -325,  -785,  -325,   230,  -325,  -325,  -325,  -325,  -325,
-  -325,  -325,  1105,  -325,  1112,  -325,   513,  -785,   508,   307,
-   505,   504,   503,   513,   506,   234,   782,   516,  -325,  -325,
-   517,  -119,   233,  -325,   516,   114,   115,   516,  -762,   371,
-  -325,   231,  -121,   955,  -325,  -762,  -762,  -762,  -128,   671,
-   670,  -762,  -762,   513,  -762,   372,   511,  -125,   893,  -130,
-   524,   523,  -762,  -762,   516,   521,   520,   524,   523,  -366,
-  1025,   247,   648,   669,  -762,  -762,  -366,  -762,  -762,  -762,
-  -762,  -762,   444,   406,   234,  -366,  1105,   446,   445,   235,
-   966,   536,   669,   247,   517,   962,   570,   524,   523,   963,
-   537,   517,  -127,   571,   517,  -762,  -762,  -762,  -762,  -762,
-  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,   707,
-  -652,  -762,  -762,  -762,   876,   714,  -762,  -652,   995,  -762,
-   669,   517,  -762,  -366,   671,   670,   667,  -762,   708,  -762,
-   416,  -762,  -762,  -762,  -762,  -762,  -762,  -762,   235,  -762,
-  -762,  -762,   134,   671,   670,   672,   508,   133,   505,   504,
-   503,   513,   506,  -664,  -762,  -762,  -666,  -117,   134,  -762,
-  -664,   669,   516,   133,  -762,   669,  -762,   419,  -125,  -664,
-  -762,  -762,  -762,  -762,  -126,   422,  -762,  -762,  -762,   925,
-  -762,   671,   670,   677,   511,   926,  1084,  -127,  -762,  -762,
-  -762,  -762,  -762,   521,   520,   524,   523,   908,  -113,   425,
-  -762,  -762,  -665,  -762,  -762,  -762,  -762,  -762,   134,  -665,
-   442,   134,  -655,   133,   234,  -122,   133,  -664,  -665,  -655,
-  -667,   613,   671,   670,   682,   447,   671,   670,   689,   517,
-   611,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,
-  -762,  -762,  -762,  -762,  -762,  -124,  -662,  -762,  -762,  -762,
-  -661,   956,  -762,  -662,   488,  -762,  -124,  -661,  -762,  -762,
-   876,  -762,  -114,  -762,   995,  -762,  -665,  -762,  -762,  -762,
-  -762,  -762,  -762,  -762,  -663,  -762,  -762,  -762,   235,  -123,
-   851,  -663,   508,   853,   505,   504,   503,   513,   506,  -316,
-  -762,  -762,  -762,  -762,  -660,  -762,  -316,  -762,   516,  -673,
-  -325,  -660,  -762,   527,   621,  -316,  -762,  -325,  -325,  -325,
-  -126,   538,  -325,  -325,  -325,  -657,  -325,   540,   234,   541,
-   511,   246,  -657,   578,  -325,   623,  -325,  -325,  -325,   521,
-   520,   524,   523,   590,   537,   593,  -325,  -325,   234,  -325,
-  -325,  -325,  -325,  -325,   134,   652,  -120,   595,   234,   133,
-  -326,   707,  -658,  -316,   650,   700,   708,  -326,   908,  -658,
-   228,   229,   -93,  -129,   698,   517,  -326,  -325,  -325,  -325,
-  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -325,   247,   235,  -325,  -325,  -325,   606,   957,  -325,   288,
-   289,  -325,   607,  -116,  -325,  -325,   614,  -325,  -118,  -325,
-  -115,  -325,   235,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -125,  -325,   235,  -325,  -326,  -127,   508,  -124,   505,   504,
-   503,   513,   506,   234,   287,   286,  -325,  -325,  -325,  -325,
-   879,  -325,   516,  -325,  -659,   324,  -325,   851,  -325,   881,
-   853,  -659,  -325,  -325,  -325,  -325,  -128,   247,   960,  -325,
-  -325,  1181,  -325,   247,   511,   508,  1257,   505,   504,   503,
-  -325,   506,   524,   523,  -326,   524,   523,   985,   986,  1021,
-  1025,  -326,  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -326,  -325,  -325,   240,   234,   240,  -759,   235,   314,  -325,
-  -325,  1221,   618,   738,  -759,   228,   229,   271,  -325,   517,
-  1219,   624,   742,  -325,  -325,  -325,  -325,  -325,  -325,  -325,
-  -325,  -325,  -325,  -325,  -325,  -325,  -325,  1203,  1204,  -325,
-  -325,  -325,   271,   713,  -325,  1021,  1025,  -325,  -326,   268,
-  -325,   247,   648,   270,   269,  -325,   435,  -325,  -325,  -325,
-  -325,  -325,  -325,  -325,  -325,  -325,  -325,  -325,   235,  -325,
-   653,   654,   508,   234,   505,   504,   503,   513,   506,   234,
-  1245,   676,  -325,  -325,   680,  -325,  1245,  -325,   516,   881,
-   683,   686,  -762,   693,  -325,   881,   694,  -298,  -325,  -762,
-  -762,  -762,  -128,   696,   697,  -762,  -762,   701,  -762,   508,
-   511,   505,   504,   503,   247,   506,  -762,  -762,   705,   521,
-   520,   524,   523,   706,   122,   121,   123,   124,  -762,  -762,
-   314,  -762,  -762,  -762,  -762,  -762,   720,   235,   723,   247,
-   126,   125,   127,   235,   725,   728,   989,   738,   993,   992,
-   729,   731,   994,   112,   113,   517,   742,   733,   368,  -762,
-  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,  -762,
-  -762,  -762,  -762,   735,   747,  -762,  -762,  -762,   748,   714,
-  -762,   723,   754,  -762,   991,   760,  -762,   761,   271,   271,
-   271,  -762,   271,  -762,   810,  -762,  -762,  -762,  -762,  -762,
-  -762,  -762,   247,  -762,  -762,  -762,   816,   109,    99,   101,
-   102,   103,   105,   247,   271,   247,   100,   110,  -762,  -762,
-   442,  -762,   247,  -762,    93,  -108,   832,    97,   104,   106,
-  -762,   114,   115,   247,  -762,   627,   843,   723,  -126,     8,
-    89,    90,    91,    12,    82,   247,   268,   854,    83,    84,
-   270,   269,  -755,    87,  -756,    85,    86,    88,    36,    37,
-    80,    81,   137,   138,   139,   140,   141,    92,    34,    33,
-   122,   121,   123,   124,   855,   508,    24,   505,   504,   503,
-   595,   506,    11,    54,    10,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   858,   120,   128,   129,   723,   112,
-   113,   723,    50,    51,    49,  -652,   723,  -655,   883,   894,
-   895,  -299,  -652,   738,  -655,   909,   578,  -755,   578,  -756,
-   921,  -652,   742,  -655,    46,   948,   949,    39,   271,   247,
-    67,    68,   952,   247,    69,   961,    41,   978,   979,  -755,
-    53,  -756,   980,   997,   281,   282,  1050,  1051,    25,   307,
-  1052,   128,   129,   109,    99,   101,   102,   103,   105,  1009,
-   268,  1011,   100,   110,   270,   269,   266,   267,   593,  -652,
-    93,  -655,   595,    97,   104,   106,   843,   114,   115,   247,
-   314,    47,    48,   343,    89,    90,    91,    12,    82,   314,
-   843,   271,    83,    84,  1025,   723,  -762,    87,   723,    85,
-    86,    88,    36,    37,    80,    81,   137,   138,   139,   140,
-   141,    92,    34,    33,   122,   121,   123,   124,   247,   247,
-    24,   271,  1055,  -300,   247,  1060,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,  -298,   120,
-   128,   129,  1066,   112,   113,   728,    50,    51,    49,  -762,
-   271,   746,  1069,   268,  1071,  1073,  -762,   270,   269,   266,
-   267,  -758,  1075,  1075,   247,  -762,   802,  1089,    46,   247,
-   247,   347,  1103,  1106,    67,    68,   960,  1131,    69,   247,
-    41,   843,   268,  -762,    53,   723,   270,   269,   266,   267,
-   723,   723,    25,   247,   723,  1152,   247,   109,    99,   101,
-   102,   103,   105,  1154,  -301,  1167,   100,   110,   137,   138,
-   139,   140,   141,  -762,    93,  1168,  1169,    97,   104,   106,
-  1170,   114,   115,  1171,  1172,    47,    48,   343,    89,    90,
-    91,    12,    82,   247,   247,   247,    83,    84,   960,  1176,
-   247,    87,  1182,    85,    86,    88,    36,    37,    80,    81,
-   263,   247,  1184,   728,  1187,    92,    34,    33,   122,   121,
-   123,   124,  1191,   508,    24,   505,   504,   503,  1193,   506,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,  1195,   120,   128,   129,   247,   112,   113,   735,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   284,   279,   280,   723,   264,   265,  1211,  1212,   281,
-   282,   925,    46,  1222,   262,    39,  1223,  1075,    67,    68,
-  1075,  1075,    69,  1230,    41,   268,  1243,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,  1246,   720,
-  1168,   109,    99,   101,   102,   103,   105,  1265,  1265,   728,
-   100,   110,  1268,   285,  1270,  1272,  1274,  1274,    93,   723,
-   247,    97,   104,   106,  1075,   114,   115,  1265,  -759,    47,
-    48,   343,    89,    90,    91,    12,    82,  -758,  1292,  1274,
-    83,    84,  1274,  1274,  1274,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   137,   138,   139,   140,   141,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   702,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
-   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
-   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,  -270,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   702,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
-   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   922,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
-   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   953,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
-   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,   347,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,  1215,    24,   505,   504,   503,   nil,   506,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,   347,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,  1215,    24,   505,
-   504,   503,   nil,   506,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
-   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
-   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   247,   285,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
-   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
-   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
-   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,     8,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,    10,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
-   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
-   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
-   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
-   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
-   nil,  -786,  -786,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   284,   279,   280,   nil,  -786,  -786,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
-   277,   278,   288,   289,   283,   284,   279,   280,   nil,  -786,
-  -786,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
-   279,   280,   nil,  -786,  -786,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   508,    24,   505,   504,   503,
-   nil,   506,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,  -786,  -786,  -786,  -786,
-   288,   289,   nil,   738,  -786,  -786,   nil,   nil,   nil,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   508,
-    24,   505,   504,   503,   nil,   506,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-  -786,  -786,  -786,  -786,   288,   289,   nil,   738,  -786,  -786,
-   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   508,    24,   505,   504,   503,   nil,   506,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,  -786,  -786,  -786,  -786,   288,   289,
-   nil,   738,  -786,  -786,   nil,   nil,   nil,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,  -786,  -786,
-  -786,  -786,   288,   289,   nil,   nil,  -786,  -786,   nil,   nil,
-   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,  -786,  -786,  -786,  -786,   288,   289,   nil,   nil,
-  -786,  -786,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   271,  -786,  -786,  -786,  -786,
-   288,   289,   nil,   nil,  -786,  -786,   nil,   nil,   nil,   nil,
-   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
-    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
-   275,   276,   277,   278,   288,   289,   nil,   nil,   279,   280,
-   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
-   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
-    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
-   283,   nil,   279,   280,   nil,   nil,   nil,   nil,   nil,   281,
-   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
-   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
-   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   272,
-    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
-   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
-    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
-   267,   nil,   nil,   272,    25,   273,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
-   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
-   nil,    11,    54,    10,    13,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   271,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,
-   270,   269,   266,   267,   nil,   nil,   nil,    25,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   281,   282,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   268,
-   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -463,   114,
-   115,   nil,   nil,    47,    48,  -463,  -463,  -463,   nil,   nil,
-  -463,  -463,  -463,   508,  -463,   505,   504,   503,   513,   506,
-   nil,   nil,  -463,  -463,  -463,  -463,   nil,   nil,   nil,   516,
-   nil,   nil,   nil,   nil,  -463,  -463,   nil,  -463,  -463,  -463,
-  -463,  -463,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   524,   523,   nil,  -463,  -463,  -463,  -463,  -463,
-  -463,  -463,  -463,  -463,  -463,  -463,  -463,  -463,  -463,   nil,
-   nil,  -463,  -463,  -463,   nil,   nil,  -463,   nil,   314,  -463,
-   nil,   nil,  -463,  -463,   nil,  -463,   517,  -463,   nil,  -463,
-   nil,  -463,  -463,  -463,  -463,  -463,  -463,  -463,   nil,  -463,
-  -463,  -463,   508,   nil,   505,   504,   503,   513,   506,   nil,
-   nil,   nil,   nil,   nil,  -463,  -463,   nil,  -463,   516,  -463,
-  -334,   nil,   nil,   nil,   nil,   nil,  -463,  -334,  -334,  -334,
-  -463,   nil,  -334,  -334,  -334,   nil,  -334,   nil,   nil,   nil,
-   511,   nil,   nil,   nil,  -334,   nil,  -334,  -334,   nil,   nil,
-   nil,   524,   523,   nil,   nil,   nil,  -334,  -334,   nil,  -334,
-  -334,  -334,  -334,  -334,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   517,   nil,  -334,  -334,  -334,
-  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
-  -334,   nil,   nil,  -334,  -334,  -334,   nil,   nil,  -334,   nil,
-   324,  -334,   nil,   nil,  -334,  -334,   nil,  -334,   nil,  -334,
-   nil,  -334,   nil,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
-   nil,  -334,   nil,  -334,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  -334,  -334,   nil,  -334,
-   nil,  -334,    89,    90,    91,   nil,    82,   nil,  -334,   nil,
-    83,    84,  -334,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
-   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -317,
-   114,   115,   nil,   nil,    47,    48,  -317,  -317,  -317,   nil,
-   nil,  -317,  -317,  -317,   508,  -317,   505,   504,   503,   513,
-   506,   nil,   nil,  -317,   nil,  -317,  -317,  -317,   nil,   nil,
-   516,   122,   121,   123,   124,  -317,  -317,   nil,  -317,  -317,
-  -317,  -317,  -317,   nil,   nil,   nil,   nil,   126,   125,   127,
-   nil,   nil,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   112,   113,   nil,   524,   523,   368,  -317,  -317,  -317,  -317,
-  -317,  -317,  -317,  -317,  -317,  -317,  -317,  -317,  -317,  -317,
-   nil,   nil,  -317,  -317,  -317,   nil,   nil,  -317,   nil,   nil,
-  -317,   nil,   nil,  -317,  -317,   nil,  -317,   517,  -317,   nil,
-  -317,   nil,  -317,  -317,  -317,  -317,  -317,  -317,  -317,   nil,
-  -317,   nil,  -317,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,  -317,  -317,  -317,  -317,   nil,
-  -317,    93,  -317,   nil,    97,   104,   106,  -317,   114,   115,
-  -785,  -317,    89,    90,    91,    12,    82,  -785,  -785,  -785,
-    83,    84,  -785,  -785,  -785,    87,  -785,    85,    86,    88,
-    36,    37,    80,    81,  -785,  -785,  -785,  -785,   nil,    92,
-    34,    33,   122,   121,   123,   124,  -785,  -785,    24,  -785,
-  -785,  -785,  -785,  -785,    11,    54,   nil,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,  -785,  -785,  -785,
-  -785,  -785,  -785,  -785,  -785,  -785,  -785,  -785,  -785,  -785,
-  -785,   nil,   nil,  -785,  -785,  -785,    46,   nil,  -785,    39,
-   314,  -785,    67,    68,  -785,  -785,    69,  -785,    41,  -785,
-   nil,  -785,    53,  -785,  -785,  -785,  -785,  -785,  -785,  -785,
-    25,  -785,  -785,  -785,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,  -785,  -785,   nil,  -785,
-   nil,  -785,    93,   nil,   nil,    97,   104,   106,  -785,   114,
-   115,   nil,  -785,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   134,   nil,   nil,   nil,   nil,
-   133,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,    12,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    11,    54,    10,    13,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,
-   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   435,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
-   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
-   nil,    11,    54,   nil,    13,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,    41,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   452,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   452,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   247,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,   580,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   247,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,    12,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    39,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   627,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,  -763,   114,   115,   nil,
-   nil,    47,    48,  -763,  -763,  -763,   nil,   nil,  -763,  -763,
-  -763,   508,  -763,   505,   504,   503,   513,   506,   nil,   nil,
-  -763,  -763,  -763,  -763,  -763,   nil,   nil,   516,   nil,   nil,
-   nil,   nil,  -763,  -763,   nil,  -763,  -763,  -763,  -763,  -763,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   511,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   524,   523,   nil,  -763,  -763,  -763,  -763,  -763,  -763,  -763,
-  -763,  -763,  -763,  -763,  -763,  -763,  -763,   nil,   nil,  -763,
-  -763,  -763,   nil,   nil,  -763,   nil,   nil,  -763,   nil,   nil,
-  -763,  -763,   nil,  -763,   517,  -763,   nil,  -763,   nil,  -763,
-  -763,  -763,  -763,  -763,  -763,  -763,   nil,  -763,  -763,  -763,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -763,  -763,  -763,  -763,   nil,  -763,  -764,  -763,
-   nil,   nil,   nil,   nil,  -763,  -764,  -764,  -764,  -763,   nil,
-  -764,  -764,  -764,   nil,  -764,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  -764,  -764,  -764,  -764,  -764,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -764,  -764,   nil,  -764,  -764,  -764,
-  -764,  -764,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  -764,  -764,  -764,  -764,  -764,
-  -764,  -764,  -764,  -764,  -764,  -764,  -764,  -764,  -764,   nil,
-   nil,  -764,  -764,  -764,   nil,   nil,  -764,   nil,   nil,  -764,
-   nil,   nil,  -764,  -764,   nil,  -764,   nil,  -764,   nil,  -764,
-   nil,  -764,  -764,  -764,  -764,  -764,  -764,  -764,   nil,  -764,
-  -764,  -764,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  -764,  -764,  -764,  -764,   nil,  -764,
-   nil,  -764,   nil,    89,    90,    91,  -764,    82,   nil,   nil,
-  -764,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
-   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-  -785,   114,   115,   nil,   nil,    47,    48,  -785,  -785,  -785,
-   nil,   nil,  -785,  -785,  -785,   nil,  -785,   122,   121,   123,
-   124,   nil,   nil,   nil,  -785,  -785,  -785,   nil,   nil,   nil,
-   nil,   nil,   nil,   126,   125,   127,  -785,  -785,   nil,  -785,
-  -785,  -785,  -785,  -785,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   368,   nil,   nil,   nil,   nil,   nil,   508,   nil,   505,
-   504,   503,   513,   506,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   516,   nil,   nil,   nil,   nil,  -785,   nil,
-   nil,   nil,   nil,   nil,   nil,  -785,   nil,   nil,   nil,   nil,
-   314,  -785,   nil,   nil,   nil,   511,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   524,   523,   nil,   100,
-   110,   nil,  -785,  -785,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,  -785,   nil,    89,    90,
-    91,  -785,    82,   nil,   nil,   nil,    83,    84,  -785,   nil,
-   517,    87,  -785,    85,    86,    88,   364,   365,    80,    81,
-   502,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   825,   nil,   331,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    46,   nil,   nil,    39,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,    41,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   435,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   336,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,
-   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
-   nil,   nil,   nil,    11,    54,   nil,    13,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    39,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,    41,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   900,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,    12,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
-   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
-    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   336,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   825,   nil,   331,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
-    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
-    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   452,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   336,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   825,   nil,   331,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,   580,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   825,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-  1032,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
-   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
-   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
-    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
-    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
-    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
-   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
-   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
-    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
-   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,  1206,   nil,   nil,
-   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
-   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
-    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
-    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
-    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   336,   120,   128,
-   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,
-   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
-   368,   nil,   nil,   nil,   nil,   nil,   508,   nil,   505,   504,
-   503,   513,   506,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   356,   nil,   516,   352,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   351,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   511,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   524,   523,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   517,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   502,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
-   nil,   nil,   nil,   nil,   nil,   508,   nil,   505,   504,   503,
-   513,   506,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   356,
-   nil,   516,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   511,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   524,   523,   nil,   100,   110,   nil,
-   nil,   nil,   370,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   517,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   502,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
-   nil,   nil,   nil,   nil,   508,   nil,   505,   504,   503,   513,
-   506,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   400,   nil,
-   516,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   511,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   524,   523,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   517,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   502,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
-   nil,   nil,   nil,   508,   nil,   505,   504,   503,   513,   506,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   356,   nil,   516,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   511,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   524,   523,   nil,   100,   110,   nil,   nil,   nil,
-   609,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
-    83,    84,   nil,   nil,   nil,    87,   517,    85,    86,    88,
-   364,   365,    80,    81,   nil,   nil,   502,   nil,   nil,    92,
-   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
-   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,
-   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
-   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   356,   nil,   nil,   352,
-   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
-    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
-   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
-   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
-   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,
-   655,    65,   118,   117,   656,   nil,   120,   128,   129,   nil,
-   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   657,   nil,   nil,   260,   nil,
-   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
-   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
-    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
-   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
-   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,   655,
-    65,   118,   117,   656,   nil,   120,   128,   129,   nil,   112,
-   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   657,   nil,   nil,   260,   nil,   nil,
-    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,
-    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
-   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
-    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
-   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
-   nil,   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,
-   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
-   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,
-    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,    90,
-    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
-   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
-   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
-   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
-   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,   118,
-   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
-   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,
-   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   nil,    97,   104,   106,   nil,   114,   115,    89,    90,    91,
-   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
-    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
-   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
-   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
-   360,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
-   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,
-   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,    89,    90,    91,   nil,
-    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
-   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
-   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
-   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
-   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
-   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
-   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
-   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
-    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
-   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
-   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
-   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
-   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1160,
-   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
-   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
-    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
-   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
-   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
-   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
-   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1199,   nil,
-   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
-   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
-    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
-    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
-   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
-   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
-   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1199,   nil,   nil,
-   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   192,   203,   193,   216,   189,   209,   199,   198,
-   219,   220,   214,   197,   196,   191,   217,   221,   222,   201,
-   190,   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,
-   218,   213,   212,   205,   215,   200,   188,   207,   206,   nil,
-   nil,   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,
-   184,   145,   147,   144,   nil,   146,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,
-   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
-   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
-   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
-   175,   153,   nil,   nil,   181,   109,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,
-   209,   199,   198,   219,   220,   214,   197,   196,   191,   217,
-   221,   222,   201,   190,   204,   208,   210,   202,   195,   nil,
-   nil,   nil,   211,   218,   213,   212,   205,   215,   200,   188,
-   207,   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,
-   186,   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,
-   193,   216,   189,   209,   199,   198,   219,   220,   214,   197,
-   196,   191,   217,   221,   222,   201,   190,   204,   208,   210,
-   202,   195,   nil,   nil,   nil,   211,   218,   213,   301,   300,
-   302,   299,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,
-   187,   194,   185,   186,   296,   297,   298,   294,   147,   118,
-   117,   295,   nil,   120,   nil,   nil,   nil,   nil,   nil,   nil,
-   177,   178,   nil,   173,   155,   156,   157,   164,   161,   163,
-   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
-   166,   nil,   nil,   nil,   nil,   nil,   306,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
-   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
-   181,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   174,   192,   203,   193,   216,   189,   209,   199,   198,   219,
-   220,   214,   197,   196,   191,   217,   221,   222,   201,   190,
-   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,
-   213,   212,   205,   215,   200,   188,   207,   206,   nil,   nil,
-   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,   184,
-   145,   147,   432,   431,   146,   nil,   433,   nil,   nil,   nil,
-   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,
-   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
-   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
-   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
-   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,   209,
-   199,   198,   219,   220,   214,   197,   196,   191,   217,   221,
-   222,   201,   190,   204,   208,   210,   202,   195,   nil,   nil,
-   nil,   211,   218,   213,   212,   205,   215,   200,   188,   207,
-   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,   186,
-   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,   173,
-   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
-   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
-   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,   193,
-   216,   189,   209,   199,   198,   219,   220,   214,   197,   196,
-   191,   217,   221,   222,   201,   190,   204,   208,   210,   202,
-   195,   nil,   nil,   nil,   211,   218,   213,   212,   205,   215,
-   200,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,   187,
-   194,   185,   186,   182,   183,   184,   145,   147,   nil,   nil,
-   146,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   nil,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   109,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,
-   192,   203,   193,   216,   189,   209,   199,   198,   219,   220,
-   214,   197,   196,   191,   217,   221,   222,   201,   190,   204,
-   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,   213,
-   212,   205,   215,   200,   188,   207,   206,   nil,   nil,   nil,
-   nil,   nil,   187,   194,   185,   186,   182,   183,   184,   145,
-   147,   nil,   nil,   146,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,   164,
-   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
-   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
-   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
-   nil,   nil,   181,   nil,   nil,   nil,   nil,   122,   121,   123,
-   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   174,   126,   125,   127,   802,   nil,   nil,   nil,
-   805,   782,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   368,   516,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,
-   nil,   774,   nil,   777,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,
-   109,   783,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   517,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,   790,   791,
-   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   802,
-   nil,   nil,   nil,   805,   782,   nil,   nil,   nil,   nil,   112,
-   113,   nil,   nil,   nil,   368,   516,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,
-   nil,   773,   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,
-   nil,   nil,   nil,   109,   783,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   517,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,   790,   791,   122,   121,   123,   124,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
-   125,   127,   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,
-   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,
-   775,   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,   777,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   803,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   247,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,   790,   791,   122,   121,   123,   124,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   126,   125,   127,   802,   nil,   nil,   nil,   805,
-   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
-   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   804,   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,   nil,
-   774,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,   790,   791,   122,
-   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   802,   nil,
-   nil,   nil,   805,   nil,   nil,   nil,   nil,   nil,   112,   113,
-   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,
-   773,   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-   790,   791,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
-   127,   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,   nil,
-   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,
-   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   803,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,   790,   791,   122,   121,   123,   124,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   126,   125,   127,   802,   nil,   nil,   nil,   805,   782,
-   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,
-   516,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,
-   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,   nil,   774,
-   nil,   777,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,   109,   783,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   517,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,   790,   791,   122,   121,
-   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   126,   125,   127,   802,   nil,   nil,
-   nil,   805,   782,   nil,   nil,   nil,   nil,   112,   113,   nil,
-   nil,   nil,   368,   516,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,   773,
-   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,
-   nil,   109,   783,   101,   102,   103,   105,   nil,   nil,   nil,
-   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
-   517,    97,   104,   106,   nil,   114,   115,   nil,   nil,   790,
-   791,   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
-   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,   nil,   nil,
-   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,
-   nil,   nil,   773,   nil,   nil,   774,   nil,  1102,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   803,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
-   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
-   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
-   nil,   nil,   790,   791,   122,   121,   123,   124,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   126,   125,   127,   802,   nil,   nil,   nil,   805,   nil,   nil,
-   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,
-   nil,   775,   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   803,   nil,   nil,   nil,   109,    99,   101,
-   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
-   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
-   nil,   114,   115,   nil,   nil,   790,   791,   122,   121,   123,
-   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   126,   125,   127,   802,   nil,   nil,   nil,
-   805,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,
-   nil,   774,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   nil,   790,   791,
-   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   802,
-   nil,   nil,   nil,   805,   782,   nil,   nil,   nil,   nil,   112,
-   113,   nil,   nil,   nil,   368,   516,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,
-   nil,   773,   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,
-   nil,   nil,   nil,   109,   783,   101,   102,   103,   105,   nil,
-   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
-    93,   nil,   517,    97,   104,   106,   nil,   114,   115,   nil,
-   nil,   790,   791,   122,   121,   123,   124,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
-   125,   127,   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,
-   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,
-   775,   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   803,   nil,   nil,   nil,   109,    99,   101,   102,
-   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
-   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
-   114,   115,   nil,   nil,   790,   791,   122,   121,   123,   124,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   126,   125,   127,   802,   nil,   nil,   nil,   805,
-   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
-   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   804,   nil,   nil,   775,   nil,   nil,   nil,   773,   nil,   nil,
-   774,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   803,   nil,   nil,   nil,   109,
-    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
-   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
-   104,   106,   nil,   114,   115,   nil,   nil,   790,   791,   122,
-   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   802,   nil,
-   nil,   nil,   805,   nil,   nil,   nil,   nil,   nil,   112,   113,
-   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   804,   nil,   nil,   775,   nil,   nil,   nil,
-   773,   nil,   nil,   774,   nil,   777,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   803,   nil,
-   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
-   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
-   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
-   790,   791,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
-   127,   802,   nil,   nil,   nil,   805,   nil,   nil,   nil,   nil,
-   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   804,   nil,   nil,   775,
-   nil,   nil,   nil,   773,   nil,   nil,   774,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   803,   nil,   nil,   nil,   109,    99,   101,   102,   103,
-   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
-   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
-   115,   nil,   nil,   790,   791,   122,   121,   123,   124,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   126,   125,   127,   802,   nil,   nil,   nil,   805,   nil,
-   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   122,   121,   123,
-   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,
-   nil,   nil,   775,   126,   125,   127,   773,   nil,   nil,   774,
-   nil,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
-   nil,   368,   nil,   nil,   803,   nil,   nil,   nil,   109,    99,
-   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
-   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
-   106,   nil,   114,   115,   nil,   nil,   790,   791,   nil,   nil,
-   508,   nil,   505,   504,   503,   513,   506,   nil,   nil,   nil,
-   109,    99,   101,   102,   103,   105,   516,   nil,   nil,   100,
-   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
-    97,   104,   106,   nil,   114,   115,   nil,   508,   511,   505,
-   504,   503,   513,   506,   nil,   nil,   nil,   521,   520,   524,
-   523,   nil,   508,   516,   505,   504,   503,   513,   506,   nil,
-   508,   nil,   505,   504,   503,   513,   506,   nil,   516,   nil,
-   nil,   nil,   nil,   nil,   nil,   511,   516,   nil,   nil,   nil,
-   nil,   nil,   nil,   517,   521,   520,   524,   523,   nil,   nil,
-   511,   665,   nil,   502,   nil,   nil,   nil,   nil,   511,   521,
-   520,   524,   523,   nil,   nil,   nil,   nil,   521,   520,   524,
-   523,   508,   nil,   505,   504,   503,   513,   506,   nil,   nil,
-   517,   nil,   nil,   nil,   nil,   nil,   nil,   516,   nil,   nil,
-   502,   nil,   nil,   nil,   508,   517,   505,   504,   503,   513,
-   506,   nil,   nil,   517,   nil,   502,   nil,   nil,   nil,   511,
-   516,   nil,   nil,   502,   nil,   nil,   nil,   nil,   521,   520,
-   524,   523,   508,   nil,   505,   504,   503,   513,   506,   nil,
-   nil,   nil,   511,   nil,   nil,   nil,   nil,   nil,   516,   nil,
-   nil,   521,   520,   524,   523,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   517,   nil,   nil,   nil,   nil,   nil,
-   511,   nil,   nil,   nil,   502,   nil,   nil,   nil,   nil,   521,
-   520,   524,   523,   nil,   nil,   nil,   nil,   517,   475,   479,
-   nil,   nil,   476,   nil,   nil,   nil,   nil,   502,   nil,   nil,
-   nil,   177,   178,   nil,   173,   155,   156,   157,   164,   161,
-   163,   nil,   nil,   158,   159,   517,   nil,   nil,   179,   180,
-   165,   166,   nil,   nil,   nil,   502,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
-   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
-   nil,   181,   nil,   nil,   nil,   nil,   482,   486,   nil,   nil,
-   481,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   nil,   nil,   nil,   nil,   576,   479,   nil,   nil,   577,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,   755,   479,   nil,   nil,   756,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
-   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
-   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
-   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
-   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
-   757,   486,   nil,   nil,   758,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
-   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
-   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
-   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
-   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   836,   479,
-   nil,   nil,   837,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   177,   178,   174,   173,   155,   156,   157,   164,   161,
-   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
-   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
-   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
-   nil,   181,   nil,   nil,   nil,   nil,   839,   486,   nil,   nil,
-   840,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   nil,   nil,   nil,   nil,   755,   479,   nil,   nil,   756,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,   757,   486,   nil,   nil,   758,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
-   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
-   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
-   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
-   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
-   871,   479,   nil,   nil,   872,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
-   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
-   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
-   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
-   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   873,   486,
-   nil,   nil,   874,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   177,   178,   174,   173,   155,   156,   157,   164,   161,
-   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
-   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
-   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
-   nil,   181,   nil,   nil,   nil,   nil,   902,   479,   nil,   nil,
-   903,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   nil,   nil,   nil,   nil,   905,   486,   nil,   nil,   904,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,  1036,   486,   nil,   nil,  1037,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
-   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
-   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
-   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
-   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
-   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
-   576,   479,   nil,   nil,   577,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
-   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
-   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
-   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
-   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,  1260,   479,
-   nil,   nil,  1261,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   177,   178,   174,   173,   155,   156,   157,   164,   161,
-   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
-   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
-   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
-   nil,   181,   nil,   nil,   nil,   nil,  1262,   486,   nil,   nil,
-  1263,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
-   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
-   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
-   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
-   nil,   nil,   nil,   nil,  1278,   486,   nil,   nil,  1277,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
-   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
-   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
-   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
-   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174 ]
-
-racc_action_check = [
-   116,   423,   426,    70,   389,   397,   813,   116,   116,   116,
-   532,   532,   116,   116,   116,   836,   116,   398,  1102,   837,
-   390,  1065,   809,   809,   116,    24,   116,   116,   116,   846,
-   846,   774,   632,   518,   784,   632,   116,   116,    30,   116,
-   116,   116,   116,   116,   774,    30,  1280,  1136,   401,   839,
-   653,   518,   784,   871,   872,  1139,  1280,   763,    20,    17,
-    17,    24,   887,  1016,   423,   426,   250,   116,   116,   116,
-   116,   116,   116,   116,   116,   116,   116,   116,   116,   116,
-   116,  1033,   836,   116,   116,   116,   837,   116,   116,   643,
-    70,   116,  1034,   813,   116,   116,  1102,   116,   763,   116,
-   532,   116,    30,   116,   116,   116,   116,   116,   116,   116,
-   397,   116,   809,   116,    20,   839,   839,   836,   389,   846,
-   836,   837,   398,   389,   837,   250,   116,   116,   116,   116,
-  1016,   116,  1157,   116,   390,  1065,   119,   836,   116,   390,
-  1065,   837,   116,   119,   119,   119,   116,  1158,   119,   119,
-   119,   839,   119,   401,   839,   653,  1161,  1222,   871,   872,
-   119,  1136,   119,   119,   119,  1016,  1136,   887,  1016,  1139,
-  1260,   839,   119,   119,  1139,   119,   119,   119,   119,   119,
-  1261,  1262,    21,  1283,   967,  1016,   873,   874,   811,   643,
-    32,   251,  1010,     1,   643,  1033,   414,  1034,  1033,   414,
-  1033,   253,     3,   119,   119,   119,   119,   119,   119,   119,
-   119,   119,   119,   119,   119,   119,   119,    13,   361,   119,
-   119,   119,   811,   119,   119,   967,  1010,   119,    49,    49,
-   119,   119,   657,   119,   459,   119,   657,   119,    21,   119,
-   119,   119,   119,   119,   119,   119,  1157,   119,  1263,   119,
-   251,  1157,   873,   874,    15,    32,   597,   414,   414,  1262,
-   253,  1158,   119,   119,   119,   119,  1158,   119,   678,   119,
-  1161,  1222,   481,   982,   119,  1161,  1222,    32,   119,   481,
-   481,   481,   119,   361,  1260,   481,   481,   831,   481,  1260,
-   963,   873,   874,   459,  1261,  1262,   481,  1283,   633,  1261,
-  1262,   633,  1283,  1180,   831,   361,    49,    49,   481,   481,
-   538,   481,   481,   481,   481,   481,   258,   597,   597,   597,
-     5,   963,   974,    16,    96,     5,  1263,   368,   368,   678,
-   678,   259,    96,   974,   982,   982,   982,   597,   678,   481,
-   481,   481,   481,   481,   481,   481,   481,   481,   481,   481,
-   481,   481,   481,   646,   982,   481,   481,   481,   681,   481,
-   481,   646,  1263,   481,  1180,  1180,   481,  1263,   755,   538,
-    22,   481,   258,   481,    18,   481,   481,   481,   481,   481,
-   481,   481,   974,   481,  1180,   481,   725,   259,  1002,    28,
-  1002,  1002,  1002,  1002,  1002,    19,   980,   725,   481,   481,
-   974,   481,    19,   481,  1002,   368,   368,   980,   482,    43,
-   481,    19,    22,   756,   481,   482,   482,   482,   481,   681,
-   681,   482,   482,  1184,   482,    46,  1002,   755,   681,    22,
-   725,   725,   482,   482,  1184,  1002,  1002,  1002,  1002,    55,
-  1207,    54,  1207,   410,   482,   482,    55,   482,   482,   482,
-   482,   482,   144,    78,   249,    55,   980,   144,   144,    19,
-   772,   249,   412,  1002,   725,   772,   293,  1184,  1184,   772,
-   249,  1002,   756,   293,   980,   482,   482,   482,   482,   482,
-   482,   482,   482,   482,   482,   482,   482,   482,   482,   902,
-   294,   482,   482,   482,   804,   482,   482,   294,   804,   482,
-   417,  1184,   482,    55,   410,   410,   410,   482,   903,   482,
-   103,   482,   482,   482,   482,   482,   482,   482,   249,   482,
-   482,   482,   340,   412,   412,   412,  1187,   340,  1187,  1187,
-  1187,  1187,  1187,   353,   482,   482,    44,   482,   394,   482,
-   353,   420,  1187,   394,   757,   428,   482,   104,   902,   353,
-   482,   757,   757,   757,   482,   105,   757,   757,   757,   719,
-   757,   417,   417,   417,  1187,   719,   958,   903,   757,   757,
-   757,   757,   757,  1187,  1187,  1187,  1187,  1057,    44,   106,
-   757,   757,   354,   757,   757,   757,   757,   757,   526,   354,
-   142,  1042,   295,   526,   355,    44,  1042,   353,   354,   295,
-    45,   355,   420,   420,   420,   223,   428,   428,   428,  1187,
-   355,   757,   757,   757,   757,   757,   757,   757,   757,   757,
-   757,   757,   757,   757,   757,   958,   296,   757,   757,   757,
-   297,   757,   757,   296,   236,   757,  1057,   297,   757,   757,
-   966,   757,    45,   757,   966,   757,   354,   757,   757,   757,
-   757,   757,   757,   757,   298,   757,   757,   757,   355,    45,
-   637,   298,  1191,   637,  1191,  1191,  1191,  1191,  1191,   357,
-   757,   757,   757,   757,   299,   757,   357,   757,  1191,   238,
-   758,   299,   757,   242,   372,   357,   757,   758,   758,   758,
-   757,   252,   758,   758,   758,   300,   758,   254,   373,   255,
-  1191,   261,   300,   313,   758,   373,   758,   758,   758,  1191,
-  1191,  1191,  1191,   328,   373,   329,   758,   758,   399,   758,
-   758,   758,   758,   758,  1147,   399,   372,   332,   458,  1147,
-   614,   475,   301,   357,   399,   458,   476,   614,   703,   301,
-   388,   388,   346,   372,   458,  1191,   614,   758,   758,   758,
-   758,   758,   758,   758,   758,   758,   758,   758,   758,   758,
-   758,   348,   373,   758,   758,   758,   349,   758,   758,    52,
-    52,   758,   350,   475,   758,   758,   356,   758,   476,   758,
-   703,   758,   399,   758,   758,   758,   758,   758,   758,   758,
-   475,   758,   458,   758,   614,   476,  1193,   703,  1193,  1193,
-  1193,  1193,  1193,   659,    52,    52,   758,   758,   758,   758,
-   659,   758,  1193,   758,   302,   359,   904,  1019,   758,   659,
-  1019,   302,   758,   904,   904,   904,   758,   360,  1107,   904,
-   904,  1107,   904,  1213,  1193,   511,  1213,   511,   511,   511,
-   904,   511,   728,   728,   877,  1193,  1193,   787,   787,   857,
-   857,   877,   904,   904,   840,   904,   904,   904,   904,   904,
-   877,   840,  1037,   362,  1159,   363,   840,   659,   367,  1037,
-   840,  1159,   369,   511,  1037,   885,   885,   548,  1037,  1193,
-  1159,   376,   511,   904,   904,   904,   904,   904,   904,   904,
-   904,   904,   904,   904,   904,   904,   904,  1140,  1140,   904,
-   904,   904,   378,   904,   904,  1247,  1247,   904,   877,   548,
-   904,   384,   395,   548,   548,   904,   396,   904,   840,   904,
-   904,   904,   904,   904,   904,   904,  1037,   904,  1159,   904,
-   400,   402,  1268,  1198,  1268,  1268,  1268,  1268,  1268,  1244,
-  1198,   416,   904,   904,   419,   904,  1244,   904,  1268,  1198,
-   422,   425,   905,   448,   904,  1244,   450,   451,   904,   905,
-   905,   905,   904,   453,   456,   905,   905,   460,   905,   738,
-  1268,   738,   738,   738,   470,   738,   905,   905,   473,  1268,
-  1268,  1268,  1268,   474,   790,   790,   790,   790,   905,   905,
-   483,   905,   905,   905,   905,   905,   489,  1198,   490,   493,
-   790,   790,   790,  1244,   494,   495,   803,   738,   803,   803,
-   498,   499,   803,   790,   790,  1268,   738,   500,   790,   905,
-   905,   905,   905,   905,   905,   905,   905,   905,   905,   905,
-   905,   905,   905,   510,   522,   905,   905,   905,   525,   905,
-   905,   528,   534,   905,   803,   542,   905,   543,   550,   551,
-   552,   905,   553,   905,   573,   905,   905,   905,   905,   905,
-   905,   905,   581,   905,   905,   905,   582,   790,   790,   790,
-   790,   790,   790,   583,   549,   587,   790,   790,   905,   905,
-   603,   905,   604,   905,   790,   605,   608,   790,   790,   790,
-   905,   790,   790,   610,   905,   615,   619,   628,   905,     2,
-     2,     2,     2,     2,     2,   629,   549,   634,     2,     2,
-   549,   549,   655,     2,   656,     2,     2,     2,     2,     2,
-     2,     2,     9,     9,     9,     9,     9,     2,     2,     2,
-     2,     2,     2,     2,   635,   948,     2,   948,   948,   948,
-   638,   948,     2,     2,     2,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,   640,     2,     2,     2,   644,     2,
-     2,   645,     2,     2,     2,   655,   647,   656,   661,   685,
-   688,   695,   655,   948,   656,   704,   709,   655,   715,   656,
-   717,   655,   948,   656,     2,   740,   741,     2,   556,   743,
-     2,     2,   750,   759,     2,   768,     2,   776,   777,   655,
-     2,   656,   778,   807,   556,   556,   889,   889,     2,   812,
-   889,   889,   889,     2,     2,     2,     2,     2,     2,   818,
-   556,   820,     2,     2,   556,   556,   556,   556,   822,   655,
-     2,   656,   824,     2,     2,     2,   833,     2,     2,   835,
-   838,     2,     2,    39,    39,    39,    39,    39,    39,   841,
-   842,   845,    39,    39,   859,   865,  1036,    39,   866,    39,
-    39,    39,    39,    39,    39,    39,   344,   344,   344,   344,
-   344,    39,    39,    39,    39,    39,    39,    39,   870,   888,
-    39,   563,   896,   899,   901,   910,    39,    39,    39,    39,
-    39,    39,    39,    39,    39,    39,    39,    39,   929,    39,
-    39,    39,   930,    39,    39,   933,    39,    39,    39,  1036,
-   564,   935,   938,   563,   939,   941,  1036,   563,   563,   563,
-   563,  1036,   942,   944,   947,  1036,   960,   962,    39,   968,
-   969,    39,   973,   976,    39,    39,   981,  1007,    39,  1008,
-    39,  1015,   564,  1036,    39,  1020,   564,   564,   564,   564,
-  1026,  1035,    39,  1039,  1043,  1047,  1048,    39,    39,    39,
-    39,    39,    39,  1054,  1056,  1080,    39,    39,   383,   383,
-   383,   383,   383,  1036,    39,  1081,  1086,    39,    39,    39,
-  1091,    39,    39,  1092,  1093,    39,    39,   225,   225,   225,
-   225,   225,   225,  1094,  1095,  1096,   225,   225,  1100,  1101,
-  1104,   225,  1108,   225,   225,   225,   225,   225,   225,   225,
-    26,  1115,  1117,  1118,  1120,   225,   225,   225,   225,   225,
-   225,   225,  1121,   742,   225,   742,   742,   742,  1122,   742,
-   225,   225,   225,   225,   225,   225,   225,   225,   225,   225,
-   225,   225,  1124,   225,   225,   225,  1125,   225,   225,  1126,
-   225,   225,   225,    26,    26,    26,    26,    26,    26,    26,
-    26,    26,    26,    26,  1146,    26,    26,  1150,  1151,    26,
-    26,  1155,   225,  1160,    26,   225,  1163,  1164,   225,   225,
-  1165,  1166,   225,  1177,   225,    26,  1196,    26,   225,    26,
-    26,    26,    26,    26,    26,    26,   225,    26,  1199,  1218,
-  1228,   225,   225,   225,   225,   225,   225,  1229,  1231,  1234,
-   225,   225,  1237,    26,  1238,  1239,  1240,  1242,   225,  1255,
-  1259,   225,   225,   225,  1264,   225,   225,  1266,  1277,   225,
-   225,   237,   237,   237,   237,   237,   237,  1278,  1285,  1286,
-   237,   237,  1287,  1288,  1297,   237,   nil,   237,   237,   237,
-   237,   237,   237,   237,   602,   602,   602,   602,   602,   237,
-   237,   237,   237,   237,   237,   237,   nil,   nil,   237,   nil,
-   nil,   nil,   nil,   463,   237,   237,   237,   237,   237,   237,
-   237,   237,   237,   237,   237,   237,   nil,   237,   237,   237,
-   nil,   237,   237,   nil,   237,   237,   237,   463,   463,   463,
-   463,   463,   463,   463,   463,   463,   463,   463,   nil,   463,
-   463,   nil,   nil,   463,   463,   nil,   237,   nil,   nil,   237,
-   nil,   nil,   237,   237,   nil,   nil,   237,   nil,   237,   463,
-   nil,   463,   237,   463,   463,   463,   463,   463,   463,   463,
-   237,   463,   nil,   nil,   nil,   237,   237,   237,   237,   237,
-   237,   nil,   nil,   nil,   237,   237,   nil,   463,   nil,   463,
-   nil,   nil,   237,   nil,   nil,   237,   237,   237,   nil,   237,
-   237,   nil,   nil,   237,   237,   243,   243,   243,   243,   243,
-   243,   nil,   nil,   nil,   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,   469,   243,   243,
-   243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
-   nil,   243,   243,   243,   nil,   243,   243,   nil,   243,   243,
-   243,   469,   469,   469,   469,   469,   469,   469,   469,   469,
-   469,   469,   nil,   469,   469,   nil,   nil,   469,   469,   nil,
-   243,   nil,   nil,   243,   nil,   nil,   243,   243,   nil,   nil,
-   243,   nil,   243,   469,   nil,   469,   243,   469,   469,   469,
-   469,   469,   469,   469,   243,   469,   nil,   nil,   nil,   243,
-   243,   243,   243,   243,   243,   nil,   nil,   nil,   243,   243,
-   nil,   469,   nil,   nil,   nil,   nil,   243,   nil,   nil,   243,
-   243,   243,   nil,   243,   243,   nil,   nil,   243,   243,   260,
-   260,   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,
-   nil,   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,
-   260,   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,
-   260,   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,
-   nil,   718,   260,   260,   260,   260,   260,   260,   260,   260,
-   260,   260,   260,   260,   nil,   260,   260,   260,   nil,   260,
-   260,   nil,   260,   260,   260,   718,   718,   718,   718,   718,
-   718,   718,   718,   718,   718,   718,   nil,   718,   718,   nil,
-   nil,   718,   718,   nil,   260,   nil,   nil,   260,   nil,   nil,
-   260,   260,   nil,   nil,   260,   nil,   260,   718,   nil,   718,
-   260,   718,   718,   718,   718,   718,   718,   718,   260,   718,
-   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,
-   nil,   nil,   260,   260,   nil,   718,   nil,   nil,   nil,   nil,
-   260,   nil,   nil,   260,   260,   260,   nil,   260,   260,   nil,
-   nil,   260,   260,   347,   347,   347,   347,   347,   347,   nil,
-   nil,   nil,   347,   347,   nil,   nil,   nil,   347,   nil,   347,
-   347,   347,   347,   347,   347,   347,   nil,   nil,   nil,   nil,
-   nil,   347,   347,   347,   347,   347,   347,   347,   nil,   nil,
-   347,   nil,   nil,   nil,   nil,   751,   347,   347,   347,   347,
-   347,   347,   347,   347,   347,   347,   347,   347,   nil,   347,
-   347,   347,   nil,   347,   347,   nil,   347,   347,   347,   751,
-   751,   751,   751,   751,   751,   751,   751,   751,   751,   751,
-   nil,   751,   751,   nil,   nil,   751,   751,   nil,   347,   nil,
-   nil,   347,   nil,   nil,   347,   347,   nil,   nil,   347,   nil,
-   347,   751,   nil,   751,   347,   751,   751,   751,   751,   751,
-   751,   751,   347,   751,   nil,   nil,   nil,   347,   347,   347,
-   347,   347,   347,   nil,   nil,   nil,   347,   347,   nil,   751,
-   nil,   nil,   nil,   nil,   347,   nil,   nil,   347,   347,   347,
-   nil,   347,   347,   nil,   nil,   347,   347,   352,   352,   352,
-   352,   352,   352,   nil,   nil,   nil,   352,   352,   nil,   nil,
-   nil,   352,   nil,   352,   352,   352,   352,   352,   352,   352,
-   nil,   nil,   nil,   nil,   nil,   352,   352,   352,   352,   352,
-   352,   352,   nil,  1152,   352,  1152,  1152,  1152,   nil,  1152,
-   352,   352,   352,   352,   352,   352,   352,   352,   352,   352,
-   352,   352,   nil,   352,   352,   352,   nil,   352,   352,   nil,
-   352,   352,   352,   326,   326,   326,   326,   326,   326,   326,
-   326,   326,   326,   326,   nil,   326,   326,   nil,   nil,   326,
-   326,   nil,   352,   nil,   nil,   352,   nil,   nil,   352,   352,
-   nil,   nil,   352,   nil,   352,   326,   nil,   326,   352,   326,
-   326,   326,   326,   326,   326,   326,   352,   326,   nil,   nil,
-   nil,   352,   352,   352,   352,   352,   352,   nil,   nil,   nil,
-   352,   352,   nil,   326,   nil,   nil,   nil,   nil,   352,   nil,
-   nil,   352,   352,   352,   nil,   352,   352,   nil,   nil,   352,
-   352,   382,   382,   382,   382,   382,   382,   nil,   nil,   nil,
-   382,   382,   nil,   nil,   nil,   382,   nil,   382,   382,   382,
-   382,   382,   382,   382,   nil,   nil,   nil,   nil,   nil,   382,
-   382,   382,   382,   382,   382,   382,   nil,  1257,   382,  1257,
-  1257,  1257,   nil,  1257,   382,   382,   382,   382,   382,   382,
-   382,   382,   382,   382,   382,   382,   nil,   382,   382,   382,
-   nil,   382,   382,   nil,   382,   382,   382,   567,   567,   567,
-   567,   567,   567,   567,   567,   567,   567,   567,   nil,   567,
-   567,   nil,   nil,   567,   567,   nil,   382,   nil,   nil,   382,
-   nil,   nil,   382,   382,   nil,   nil,   382,   nil,   382,   567,
-   nil,   567,   382,   567,   567,   567,   567,   567,   567,   567,
-   382,   567,   nil,   nil,   nil,   382,   382,   382,   382,   382,
-   382,   nil,   nil,   nil,   382,   382,   567,   567,   nil,   nil,
-   nil,   nil,   382,   nil,   nil,   382,   382,   382,   nil,   382,
-   382,   nil,   nil,   382,   382,   392,   392,   392,   392,   392,
-   392,   nil,   nil,   nil,   392,   392,   nil,   nil,   nil,   392,
-   nil,   392,   392,   392,   392,   392,   392,   392,   nil,   nil,
-   nil,   nil,   nil,   392,   392,   392,   392,   392,   392,   392,
-   nil,   nil,   392,   nil,   nil,   nil,   nil,   nil,   392,   392,
-   392,   392,   392,   392,   392,   392,   392,   392,   392,   392,
-   nil,   392,   392,   392,   nil,   392,   392,   nil,   392,   392,
-   392,   626,   626,   626,   626,   626,   626,   626,   626,   626,
-   626,   626,   nil,   626,   626,   nil,   nil,   626,   626,   nil,
-   392,   nil,   nil,   392,   nil,   nil,   392,   392,   nil,   nil,
-   392,   nil,   392,   626,   nil,   626,   392,   626,   626,   626,
-   626,   626,   626,   626,   392,   626,   nil,   nil,   nil,   392,
-   392,   392,   392,   392,   392,   nil,   nil,   nil,   392,   392,
-   nil,   626,   nil,   nil,   nil,   nil,   392,   nil,   nil,   392,
-   392,   392,   nil,   392,   392,   nil,   nil,   392,   392,   393,
-   393,   393,   393,   393,   393,   nil,   nil,   nil,   393,   393,
-   nil,   nil,   nil,   393,   nil,   393,   393,   393,   393,   393,
-   393,   393,   nil,   nil,   nil,   nil,   nil,   393,   393,   393,
-   393,   393,   393,   393,   nil,   nil,   393,   nil,   nil,   nil,
-   nil,   nil,   393,   393,   393,   393,   393,   393,   393,   393,
-   393,   393,   393,   393,   nil,   393,   393,   393,   nil,   393,
-   393,   nil,   393,   393,   393,   907,   907,   907,   907,   907,
-   907,   907,   907,   907,   907,   907,   nil,   907,   907,   nil,
-   nil,   907,   907,   nil,   393,   nil,   nil,   393,   nil,   nil,
-   393,   393,   nil,   nil,   393,   nil,   393,   907,   nil,   907,
-   393,   907,   907,   907,   907,   907,   907,   907,   393,   907,
-   nil,   nil,   nil,   393,   393,   393,   393,   393,   393,   nil,
-   nil,   nil,   393,   393,   nil,   907,   nil,   nil,   nil,   nil,
-   393,   nil,   nil,   393,   393,   393,   nil,   393,   393,   nil,
-   nil,   393,   393,   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,
-   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,   nil,   639,
-   639,   639,   nil,   639,   639,   nil,   639,   639,   639,  1061,
-  1061,  1061,  1061,  1061,  1061,  1061,  1061,  1061,  1061,  1061,
-   nil,  1061,  1061,   nil,   nil,  1061,  1061,   nil,   639,   nil,
-   nil,   639,   nil,   nil,   639,   639,   nil,   nil,   639,   nil,
-   639,  1061,   nil,  1061,   639,  1061,  1061,  1061,  1061,  1061,
-  1061,  1061,   639,  1061,   nil,   nil,   nil,   639,   639,   639,
-   639,   639,   639,   nil,   nil,   nil,   639,   639,   nil,  1061,
-   nil,   nil,   nil,   nil,   639,   nil,   nil,   639,   639,   639,
-   nil,   639,   639,   nil,   nil,   639,   639,   642,   642,   642,
-   642,   642,   642,   nil,   nil,   nil,   642,   642,   nil,   nil,
-   nil,   642,   nil,   642,   642,   642,   642,   642,   642,   642,
-   nil,   nil,   nil,   nil,   nil,   642,   642,   642,   642,   642,
-   642,   642,   nil,   nil,   642,   nil,   nil,   nil,   nil,   nil,
-   642,   642,   642,   642,   642,   642,   642,   642,   642,   642,
-   642,   642,   nil,   642,   642,   642,   nil,   642,   642,   nil,
-   642,   642,   642,  1062,  1062,  1062,  1062,  1062,  1062,  1062,
-  1062,  1062,  1062,  1062,   nil,  1062,  1062,   nil,   nil,  1062,
-  1062,   nil,   642,   nil,   nil,   642,   nil,   nil,   642,   642,
-   nil,   nil,   642,   nil,   642,  1062,   nil,  1062,   642,  1062,
-  1062,  1062,  1062,  1062,  1062,  1062,   642,  1062,   nil,   nil,
-   nil,   642,   642,   642,   642,   642,   642,   nil,   nil,   nil,
-   642,   642,   nil,  1062,   nil,   nil,   nil,   nil,   642,   nil,
-   nil,   642,   642,   642,   nil,   642,   642,   nil,   nil,   642,
-   642,   690,   690,   690,   690,   690,   690,   nil,   nil,   nil,
-   690,   690,   nil,   nil,   nil,   690,   nil,   690,   690,   690,
-   690,   690,   690,   690,   nil,   nil,   nil,   nil,   nil,   690,
-   690,   690,   690,   690,   690,   690,   nil,   nil,   690,   nil,
-   nil,   nil,   nil,   nil,   690,   690,   690,   690,   690,   690,
-   690,   690,   690,   690,   690,   690,   nil,   690,   690,   690,
-   nil,   690,   690,   nil,   690,   690,   690,  1082,  1082,  1082,
-  1082,  1082,  1082,  1082,  1082,  1082,  1082,  1082,   nil,  1082,
-  1082,   nil,   nil,  1082,  1082,   nil,   690,   nil,   nil,   690,
-   nil,   nil,   690,   690,   nil,   nil,   690,   nil,   690,  1082,
-   nil,  1082,   690,  1082,  1082,  1082,  1082,  1082,  1082,  1082,
-   690,  1082,   nil,   nil,   nil,   690,   690,   690,   690,   690,
-   690,   nil,   nil,   nil,   690,   690,   nil,  1082,   nil,   nil,
-   nil,   nil,   690,   nil,   nil,   690,   690,   690,   nil,   690,
-   690,   nil,   nil,   690,   690,   875,   875,   875,   875,   875,
-   875,   nil,   nil,   nil,   875,   875,   nil,   nil,   nil,   875,
-   nil,   875,   875,   875,   875,   875,   875,   875,   nil,   nil,
-   nil,   nil,   nil,   875,   875,   875,   875,   875,   875,   875,
-   nil,   nil,   875,   nil,   nil,   nil,   nil,   nil,   875,   875,
-   875,   875,   875,   875,   875,   875,   875,   875,   875,   875,
-   nil,   875,   875,   875,   nil,   875,   875,   nil,   875,   875,
-   875,  1083,  1083,  1083,  1083,  1083,  1083,  1083,  1083,  1083,
-  1083,  1083,   nil,  1083,  1083,   nil,   nil,  1083,  1083,   nil,
-   875,   nil,   nil,   875,   nil,   nil,   875,   875,   nil,   nil,
-   875,   nil,   875,  1083,   nil,  1083,   875,  1083,  1083,  1083,
-  1083,  1083,  1083,  1083,   875,  1083,   nil,   nil,   nil,   875,
-   875,   875,   875,   875,   875,   nil,   nil,   nil,   875,   875,
-   nil,  1083,   nil,   nil,   nil,   nil,   875,   nil,   nil,   875,
-   875,   875,   nil,   875,   875,   nil,   nil,   875,   875,   886,
-   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,   886,   886,   886,   886,   886,   886,
-   886,   886,   886,   886,   nil,   886,   886,   886,   nil,   886,
-   886,   nil,   886,   886,   886,  1116,  1116,  1116,  1116,  1116,
-  1116,  1116,  1116,  1116,  1116,  1116,   nil,  1116,  1116,   nil,
-   nil,  1116,  1116,   nil,   886,   nil,   nil,   886,   nil,   nil,
-   886,   886,   nil,   nil,   886,   nil,   886,  1116,   nil,  1116,
-   886,  1116,  1116,  1116,  1116,  1116,  1116,  1116,   886,  1116,
-   nil,   nil,   nil,   886,   886,   886,   886,   886,   886,   nil,
-   nil,   nil,   886,   886,   nil,  1116,   nil,   nil,   nil,   nil,
-   886,   nil,   nil,   886,   886,   886,   nil,   886,   886,   nil,
-   nil,   886,   886,   890,   890,   890,   890,   890,   890,   nil,
-   nil,   nil,   890,   890,   nil,   nil,   nil,   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,   890,   890,   890,   890,
-   890,   890,   890,   890,   890,   890,   890,   890,   nil,   890,
-   890,   890,   nil,   890,   890,   nil,   890,   890,   890,   374,
-   374,   374,   374,   374,   374,   374,   374,   374,   374,   374,
-   nil,   374,   374,   nil,   nil,   374,   374,   nil,   890,   nil,
-   nil,   890,   nil,   nil,   890,   890,   nil,   nil,   890,   nil,
-   890,   374,   nil,   374,   890,   374,   374,   374,   374,   374,
-   374,   374,   890,   374,   nil,   nil,   nil,   890,   890,   890,
-   890,   890,   890,   nil,   nil,   nil,   890,   890,   nil,   nil,
-   nil,   nil,   nil,   nil,   890,   nil,   nil,   890,   890,   890,
-   nil,   890,   890,   nil,   nil,   890,   890,   927,   927,   927,
-   927,   927,   927,   nil,   nil,   nil,   927,   927,   nil,   nil,
-   nil,   927,   nil,   927,   927,   927,   927,   927,   927,   927,
-   nil,   nil,   nil,   nil,   nil,   927,   927,   927,   927,   927,
-   927,   927,   nil,   nil,   927,   nil,   nil,   nil,   nil,   nil,
-   927,   927,   927,   927,   927,   927,   927,   927,   927,   927,
-   927,   927,   nil,   927,   927,   927,   nil,   927,   927,   nil,
-   927,   927,   927,   375,   375,   375,   375,   375,   375,   375,
-   375,   375,   375,   375,   nil,   375,   375,   nil,   nil,   375,
-   375,   nil,   927,   nil,   nil,   927,   nil,   nil,   927,   927,
-   nil,   nil,   927,   nil,   927,   375,   nil,   375,   927,   375,
-   375,   375,   375,   375,   375,   375,   927,   375,   nil,   nil,
-   nil,   927,   927,   927,   927,   927,   927,   nil,   nil,   nil,
-   927,   927,   nil,   nil,   nil,   nil,   nil,   nil,   927,   nil,
-   nil,   927,   927,   927,   nil,   927,   927,   nil,   nil,   927,
-   927,  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,
-  1004,  1004,   nil,   nil,   nil,  1004,   nil,  1004,  1004,  1004,
-  1004,  1004,  1004,  1004,   nil,   nil,   nil,   nil,   nil,  1004,
-  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,  1004,   nil,
-   nil,   nil,   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,
-  1004,  1004,  1004,  1004,  1004,  1004,   nil,  1004,  1004,  1004,
-   nil,  1004,  1004,   nil,  1004,  1004,  1004,   546,   546,   546,
-   546,   546,   546,   546,   546,   546,   546,   546,   nil,   546,
-   546,   nil,   nil,   546,   546,   nil,  1004,   nil,   nil,  1004,
-   nil,   nil,  1004,  1004,   nil,   nil,  1004,   nil,  1004,   546,
-   nil,   546,  1004,   546,   546,   546,   546,   546,   546,   546,
-  1004,   546,   nil,   nil,   nil,  1004,  1004,  1004,  1004,  1004,
-  1004,   nil,   nil,   nil,  1004,  1004,   nil,   nil,   nil,   nil,
-   nil,   nil,  1004,   nil,   nil,  1004,  1004,  1004,   nil,  1004,
-  1004,   nil,   nil,  1004,  1004,  1025,  1025,  1025,  1025,  1025,
-  1025,   nil,   nil,   nil,  1025,  1025,   nil,   nil,   nil,  1025,
-   nil,  1025,  1025,  1025,  1025,  1025,  1025,  1025,   nil,   nil,
-   nil,   nil,   nil,  1025,  1025,  1025,  1025,  1025,  1025,  1025,
-   nil,   nil,  1025,   nil,   nil,   nil,   nil,   nil,  1025,  1025,
-  1025,  1025,  1025,  1025,  1025,  1025,  1025,  1025,  1025,  1025,
-   nil,  1025,  1025,  1025,   nil,  1025,  1025,   nil,  1025,  1025,
-  1025,   547,   547,   547,   547,   547,   547,   547,   547,   547,
-   547,   547,   nil,   547,   547,   nil,   nil,   547,   547,   nil,
-  1025,   nil,   nil,  1025,   nil,   nil,  1025,  1025,   nil,   nil,
-  1025,   nil,  1025,   547,   nil,   547,  1025,   547,   547,   547,
-   547,   547,   547,   547,  1025,   547,   nil,   nil,   nil,  1025,
-  1025,  1025,  1025,  1025,  1025,   nil,   nil,   nil,  1025,  1025,
-   nil,   nil,   nil,   nil,   nil,   nil,  1025,   nil,   nil,  1025,
-  1025,  1025,   nil,  1025,  1025,   nil,   nil,  1025,  1025,  1040,
-  1040,  1040,  1040,  1040,  1040,   nil,   nil,   nil,  1040,  1040,
-   nil,   nil,   nil,  1040,   nil,  1040,  1040,  1040,  1040,  1040,
-  1040,  1040,   nil,   nil,   nil,   nil,   nil,  1040,  1040,  1040,
-  1040,  1040,  1040,  1040,   nil,   949,  1040,   949,   949,   949,
-   nil,   949,  1040,  1040,  1040,  1040,  1040,  1040,  1040,  1040,
-  1040,  1040,  1040,  1040,   nil,  1040,  1040,  1040,   nil,  1040,
-  1040,   nil,  1040,  1040,  1040,   557,   557,   557,   557,   557,
-   557,   557,   nil,   949,   557,   557,   nil,   nil,   nil,   nil,
-   nil,   557,   557,   nil,  1040,   nil,   nil,  1040,   nil,   nil,
-  1040,  1040,   nil,   nil,  1040,   nil,  1040,   557,   nil,   557,
-  1040,   557,   557,   557,   557,   557,   557,   557,  1040,   557,
-   nil,   nil,   nil,  1040,  1040,  1040,  1040,  1040,  1040,   nil,
-   nil,   nil,  1040,  1040,   nil,   nil,   nil,   nil,   nil,   nil,
-  1040,   nil,   nil,  1040,  1040,  1040,   nil,  1040,  1040,   nil,
-   nil,  1040,  1040,  1045,  1045,  1045,  1045,  1045,  1045,   nil,
-   nil,   nil,  1045,  1045,   nil,   nil,   nil,  1045,   nil,  1045,
-  1045,  1045,  1045,  1045,  1045,  1045,   nil,   nil,   nil,   nil,
-   nil,  1045,  1045,  1045,  1045,  1045,  1045,  1045,   nil,  1167,
-  1045,  1167,  1167,  1167,   nil,  1167,  1045,  1045,  1045,  1045,
-  1045,  1045,  1045,  1045,  1045,  1045,  1045,  1045,   nil,  1045,
-  1045,  1045,   nil,  1045,  1045,   nil,  1045,  1045,  1045,   558,
-   558,   558,   558,   558,   558,   558,   nil,  1167,   558,   558,
-   nil,   nil,   nil,   nil,   nil,   558,   558,   nil,  1045,   nil,
-   nil,  1045,   nil,   nil,  1045,  1045,   nil,   nil,  1045,   nil,
-  1045,   558,   nil,   558,  1045,   558,   558,   558,   558,   558,
-   558,   558,  1045,   558,   nil,   nil,   nil,  1045,  1045,  1045,
-  1045,  1045,  1045,   nil,   nil,   nil,  1045,  1045,   nil,   nil,
-   nil,   nil,   nil,   nil,  1045,   nil,   nil,  1045,  1045,  1045,
-   nil,  1045,  1045,   nil,   nil,  1045,  1045,  1046,  1046,  1046,
-  1046,  1046,  1046,   nil,   nil,   nil,  1046,  1046,   nil,   nil,
-   nil,  1046,   nil,  1046,  1046,  1046,  1046,  1046,  1046,  1046,
-   nil,   nil,   nil,   nil,   nil,  1046,  1046,  1046,  1046,  1046,
-  1046,  1046,   nil,  1168,  1046,  1168,  1168,  1168,   nil,  1168,
-  1046,  1046,  1046,  1046,  1046,  1046,  1046,  1046,  1046,  1046,
-  1046,  1046,   nil,  1046,  1046,  1046,   nil,  1046,  1046,   nil,
-  1046,  1046,  1046,   559,   559,   559,   559,   559,   559,   559,
-   nil,  1168,   559,   559,   nil,   nil,   nil,   nil,   nil,   559,
-   559,   nil,  1046,   nil,   nil,  1046,   nil,   nil,  1046,  1046,
-   nil,   nil,  1046,   nil,  1046,   559,   nil,   559,  1046,   559,
-   559,   559,   559,   559,   559,   559,  1046,   559,   nil,   nil,
-   nil,  1046,  1046,  1046,  1046,  1046,  1046,   nil,   nil,   nil,
-  1046,  1046,   nil,   nil,   nil,   nil,   nil,   nil,  1046,   nil,
-   nil,  1046,  1046,  1046,   nil,  1046,  1046,   nil,   nil,  1046,
-  1046,  1063,  1063,  1063,  1063,  1063,  1063,   nil,   nil,   nil,
-  1063,  1063,   nil,   nil,   nil,  1063,   nil,  1063,  1063,  1063,
-  1063,  1063,  1063,  1063,   nil,   nil,   nil,   nil,   nil,  1063,
-  1063,  1063,  1063,  1063,  1063,  1063,   nil,   nil,  1063,   nil,
-   nil,   nil,   nil,   nil,  1063,  1063,  1063,  1063,  1063,  1063,
-  1063,  1063,  1063,  1063,  1063,  1063,   nil,  1063,  1063,  1063,
-   nil,  1063,  1063,   nil,  1063,  1063,  1063,   560,   560,   560,
-   560,   560,   560,   560,   nil,   nil,   560,   560,   nil,   nil,
-   nil,   nil,   nil,   560,   560,   nil,  1063,   nil,   nil,  1063,
-   nil,   nil,  1063,  1063,   nil,   nil,  1063,   nil,  1063,   560,
-   nil,   560,  1063,   560,   560,   560,   560,   560,   560,   560,
-  1063,   560,   nil,   nil,   nil,  1063,  1063,  1063,  1063,  1063,
-  1063,   nil,   nil,   nil,  1063,  1063,   nil,   nil,   nil,   nil,
-   nil,   nil,  1063,   nil,   nil,  1063,  1063,  1063,   nil,  1063,
-  1063,   nil,   nil,  1063,  1063,  1133,  1133,  1133,  1133,  1133,
-  1133,   nil,   nil,   nil,  1133,  1133,   nil,   nil,   nil,  1133,
-   nil,  1133,  1133,  1133,  1133,  1133,  1133,  1133,   nil,   nil,
-   nil,   nil,   nil,  1133,  1133,  1133,  1133,  1133,  1133,  1133,
-   nil,   nil,  1133,   nil,   nil,   nil,   nil,   nil,  1133,  1133,
-  1133,  1133,  1133,  1133,  1133,  1133,  1133,  1133,  1133,  1133,
-   nil,  1133,  1133,  1133,   nil,  1133,  1133,   nil,  1133,  1133,
-  1133,   561,   561,   561,   561,   561,   561,   561,   nil,   nil,
-   561,   561,   nil,   nil,   nil,   nil,   nil,   561,   561,   nil,
-  1133,   nil,   nil,  1133,   nil,   nil,  1133,  1133,   nil,   nil,
-  1133,   nil,  1133,   561,   nil,   561,  1133,   561,   561,   561,
-   561,   561,   561,   561,  1133,   561,   nil,   nil,   nil,  1133,
-  1133,  1133,  1133,  1133,  1133,   nil,   nil,   nil,  1133,  1133,
-   nil,   nil,   nil,   nil,   nil,   nil,  1133,   nil,   nil,  1133,
-  1133,  1133,   nil,  1133,  1133,   nil,   nil,  1133,  1133,  1143,
-  1143,  1143,  1143,  1143,  1143,   nil,   nil,   nil,  1143,  1143,
-   nil,   nil,   nil,  1143,   nil,  1143,  1143,  1143,  1143,  1143,
-  1143,  1143,   nil,   nil,   nil,   nil,   nil,  1143,  1143,  1143,
-  1143,  1143,  1143,  1143,   nil,   nil,  1143,   nil,   nil,   nil,
-   nil,   nil,  1143,  1143,  1143,  1143,  1143,  1143,  1143,  1143,
-  1143,  1143,  1143,  1143,   nil,  1143,  1143,  1143,   nil,  1143,
-  1143,   nil,  1143,  1143,  1143,   562,   562,   562,   562,   562,
-   562,   562,   nil,   nil,   562,   562,   nil,   nil,   nil,   nil,
-   nil,   562,   562,   nil,  1143,   nil,   nil,  1143,   nil,   nil,
-  1143,  1143,   nil,   nil,  1143,   nil,  1143,   562,   nil,   562,
-  1143,   562,   562,   562,   562,   562,   562,   562,  1143,   562,
-   nil,   nil,   nil,  1143,  1143,  1143,  1143,  1143,  1143,   nil,
-   nil,   nil,  1143,  1143,   nil,   nil,   nil,   nil,   nil,   nil,
-  1143,   nil,   nil,  1143,  1143,  1143,   nil,  1143,  1143,   nil,
-   nil,  1143,  1143,  1156,  1156,  1156,  1156,  1156,  1156,   nil,
-   nil,   nil,  1156,  1156,   nil,   nil,   nil,  1156,   nil,  1156,
-  1156,  1156,  1156,  1156,  1156,  1156,   nil,   nil,   nil,   nil,
-   nil,  1156,  1156,  1156,  1156,  1156,  1156,  1156,   nil,   nil,
-  1156,   nil,   nil,   nil,   nil,   nil,  1156,  1156,  1156,  1156,
-  1156,  1156,  1156,  1156,  1156,  1156,  1156,  1156,   nil,  1156,
-  1156,  1156,   nil,  1156,  1156,   nil,  1156,  1156,  1156,   565,
-   565,   565,   565,   565,   565,   565,   nil,   nil,   565,   565,
-   nil,   nil,   nil,   nil,   nil,   565,   565,   nil,  1156,   nil,
-   nil,  1156,   nil,   nil,  1156,  1156,   nil,   nil,  1156,   nil,
-  1156,   565,   nil,   565,  1156,   565,   565,   565,   565,   565,
-   565,   565,  1156,   565,   nil,   nil,   nil,  1156,  1156,  1156,
-  1156,  1156,  1156,   nil,   nil,   nil,  1156,  1156,   nil,   nil,
-   nil,   nil,   nil,   nil,  1156,   nil,   nil,  1156,  1156,  1156,
-   nil,  1156,  1156,   nil,   nil,  1156,  1156,  1201,  1201,  1201,
-  1201,  1201,  1201,   nil,   nil,   nil,  1201,  1201,   nil,   nil,
-   nil,  1201,   nil,  1201,  1201,  1201,  1201,  1201,  1201,  1201,
-   nil,   nil,   nil,   nil,   nil,  1201,  1201,  1201,  1201,  1201,
-  1201,  1201,   nil,   nil,  1201,   nil,   nil,   nil,   nil,   nil,
-  1201,  1201,  1201,  1201,  1201,  1201,  1201,  1201,  1201,  1201,
-  1201,  1201,   nil,  1201,  1201,  1201,   nil,  1201,  1201,   nil,
-  1201,  1201,  1201,   566,   566,   566,   566,   566,   566,   566,
-   566,   nil,   566,   566,   nil,   nil,   nil,   nil,   nil,   566,
-   566,   nil,  1201,   nil,   nil,  1201,   nil,   nil,  1201,  1201,
-   nil,   nil,  1201,   nil,  1201,   566,   nil,   566,  1201,   566,
-   566,   566,   566,   566,   566,   566,  1201,   566,   nil,   nil,
-   nil,  1201,  1201,  1201,  1201,  1201,  1201,   nil,   nil,   nil,
-  1201,  1201,   nil,   nil,   nil,   nil,   nil,   nil,  1201,   nil,
-   nil,  1201,  1201,  1201,   nil,  1201,  1201,   nil,   nil,  1201,
-  1201,  1210,  1210,  1210,  1210,  1210,  1210,   nil,   nil,   nil,
-  1210,  1210,   nil,   nil,   nil,  1210,   nil,  1210,  1210,  1210,
-  1210,  1210,  1210,  1210,   nil,   nil,   nil,   nil,   nil,  1210,
-  1210,  1210,  1210,  1210,  1210,  1210,   nil,   nil,  1210,   nil,
-   nil,   nil,   nil,   nil,  1210,  1210,  1210,  1210,  1210,  1210,
-  1210,  1210,  1210,  1210,  1210,  1210,   nil,  1210,  1210,  1210,
-   nil,  1210,  1210,   nil,  1210,  1210,  1210,   568,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   568,   568,   nil,  1210,   nil,   nil,  1210,
-   nil,   nil,  1210,  1210,   nil,   nil,  1210,   nil,  1210,   568,
-   nil,   568,  1210,   568,   568,   568,   568,   nil,   nil,   568,
-  1210,   568,   nil,   nil,   nil,  1210,  1210,  1210,  1210,  1210,
-  1210,   nil,   nil,   nil,  1210,  1210,   nil,   nil,   nil,   nil,
-   nil,   nil,  1210,   nil,   nil,  1210,  1210,  1210,   nil,  1210,
-  1210,   nil,   nil,  1210,  1210,  1248,  1248,  1248,  1248,  1248,
-  1248,   nil,   nil,   nil,  1248,  1248,   nil,   nil,   nil,  1248,
-   nil,  1248,  1248,  1248,  1248,  1248,  1248,  1248,   nil,   nil,
-   nil,   nil,   nil,  1248,  1248,  1248,  1248,  1248,  1248,  1248,
-   nil,   nil,  1248,   nil,   nil,   nil,   nil,   nil,  1248,  1248,
-  1248,  1248,  1248,  1248,  1248,  1248,  1248,  1248,  1248,  1248,
-   nil,  1248,  1248,  1248,   nil,  1248,  1248,   nil,  1248,  1248,
-  1248,   625,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   625,   625,   nil,
-  1248,   nil,   nil,  1248,   nil,   nil,  1248,  1248,   nil,   nil,
-  1248,   nil,  1248,   625,   nil,   625,  1248,   625,   625,   625,
-   625,   nil,   nil,   625,  1248,   625,   nil,   nil,   nil,  1248,
-  1248,  1248,  1248,  1248,  1248,   nil,   nil,   nil,  1248,  1248,
-   nil,   nil,   nil,   nil,   nil,   nil,  1248,   nil,   nil,  1248,
-  1248,  1248,   nil,  1248,  1248,   nil,   nil,  1248,  1248,     8,
-     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
-   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
-     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
-     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
-   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
-     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
-   nil,     8,     8,     8,   554,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   554,   554,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
-     8,   nil,   nil,     8,   nil,     8,   554,   nil,   554,     8,
-   554,   554,   554,   554,   nil,   nil,   nil,     8,   nil,   nil,
-   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
-   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
-   nil,   nil,     8,     8,     8,   nil,     8,     8,   nil,   nil,
-     8,     8,    25,    25,    25,   nil,    25,   nil,   nil,   nil,
-    25,    25,   nil,   nil,   nil,    25,   nil,    25,    25,    25,
-    25,    25,    25,    25,   nil,   nil,   nil,   nil,   nil,    25,
-    25,    25,    25,    25,    25,    25,   nil,   nil,    25,   nil,
-   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,    25,    25,
-    25,    25,    25,    25,    25,    25,   nil,    25,    25,    25,
-   nil,    25,    25,   nil,    25,    25,    25,   555,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   555,   555,   nil,    25,   nil,   nil,    25,
-   nil,   nil,    25,    25,   nil,   nil,    25,   nil,   nil,   555,
-   nil,   555,    25,   555,   555,   555,   555,   nil,   nil,   nil,
-    25,   nil,   nil,   nil,   nil,    25,    25,    25,    25,    25,
-    25,   nil,   nil,   nil,    25,    25,   nil,   nil,   nil,   nil,
-   nil,   nil,    25,   nil,   nil,    25,    25,    25,    33,    25,
-    25,   nil,   nil,    25,    25,    33,    33,    33,   nil,   nil,
-    33,    33,    33,  1270,    33,  1270,  1270,  1270,  1270,  1270,
-   nil,   nil,    33,    33,    33,    33,   nil,   nil,   nil,  1270,
-   nil,   nil,   nil,   nil,    33,    33,   nil,    33,    33,    33,
-    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1270,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1270,  1270,   nil,    33,    33,    33,    33,    33,
-    33,    33,    33,    33,    33,    33,    33,    33,    33,   nil,
-   nil,    33,    33,    33,   nil,   nil,    33,   nil,    33,    33,
-   nil,   nil,    33,    33,   nil,    33,  1270,    33,   nil,    33,
-   nil,    33,    33,    33,    33,    33,    33,    33,   nil,    33,
-    33,    33,  1272,   nil,  1272,  1272,  1272,  1272,  1272,   nil,
-   nil,   nil,   nil,   nil,    33,    33,   nil,    33,  1272,    33,
-    34,   nil,   nil,   nil,   nil,   nil,    33,    34,    34,    34,
-    33,   nil,    34,    34,    34,   nil,    34,   nil,   nil,   nil,
-  1272,   nil,   nil,   nil,    34,   nil,    34,    34,   nil,   nil,
-   nil,  1272,  1272,   nil,   nil,   nil,    34,    34,   nil,    34,
-    34,    34,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1272,   nil,    34,    34,    34,
-    34,    34,    34,    34,    34,    34,    34,    34,    34,    34,
-    34,   nil,   nil,    34,    34,    34,   nil,   nil,    34,   nil,
-    34,    34,   nil,   nil,    34,    34,   nil,    34,   nil,    34,
-   nil,    34,   nil,    34,    34,    34,    34,    34,    34,    34,
-   nil,    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,    34,
-   nil,    34,    35,    35,    35,   nil,    35,   nil,    34,   nil,
-    35,    35,    34,   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,    35,    35,    35,    35,
-   nil,    35,    35,   nil,    35,    35,    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,    35,   nil,
-    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,    35,    35,    35,    35,    35,
-    35,   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,    35,    35,    35,    35,   nil,    35,
-    35,   nil,   nil,    35,    35,    36,    36,    36,   nil,    36,
-   nil,   nil,   nil,    36,    36,   nil,   nil,   nil,    36,   nil,
-    36,    36,    36,    36,    36,    36,    36,   nil,   nil,   nil,
-   nil,   nil,    36,    36,    36,    36,    36,    36,    36,   nil,
-   nil,    36,   nil,   nil,   nil,   nil,   nil,   nil,    36,   nil,
-   nil,    36,    36,    36,    36,    36,    36,    36,    36,    36,
-    36,    36,    36,   nil,    36,    36,   nil,    36,    36,    36,
-   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,    36,    36,   nil,   nil,    36,
-   nil,    36,   nil,    36,   nil,    36,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    36,   nil,   nil,   nil,   nil,    36,    36,
-    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,   nil,
-   nil,   nil,   nil,   nil,   nil,    36,   nil,    36,    36,    36,
-    36,   nil,    36,    36,   nil,   nil,    36,    36,    37,    37,
-    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,   nil,
-   nil,    37,   nil,    37,    37,    37,    37,    37,    37,    37,
-   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
-    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,
-   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,    37,
-    37,    37,    37,    37,    37,    37,   nil,    37,    37,   nil,
-    37,    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    37,   nil,   nil,    37,   nil,   nil,    37,    37,
-   nil,   nil,    37,   nil,    37,   nil,    37,   nil,    37,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,   nil,
-   nil,    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,
-    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
-    37,    37,    37,    37,   nil,    37,    37,   nil,   nil,    37,
-    37,    47,    47,    47,   nil,    47,   nil,   nil,   nil,    47,
-    47,   nil,   nil,   nil,    47,   nil,    47,    47,    47,    47,
-    47,    47,    47,   nil,   nil,   nil,   nil,   nil,    47,    47,
-    47,    47,    47,    47,    47,   nil,   nil,    47,   nil,   nil,
-   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,    47,    47,
-    47,    47,    47,    47,    47,   nil,    47,    47,    47,   nil,
-    47,    47,   nil,    47,    47,    47,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,   nil,
-   nil,    47,    47,   nil,   nil,    47,   nil,   nil,   nil,   nil,
-   nil,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    47,
-   nil,   nil,   nil,   nil,    47,    47,    47,    47,    47,    47,
-   nil,   nil,   nil,    47,    47,   nil,   nil,   nil,   nil,   nil,
-   nil,    47,   nil,   nil,    47,    47,    47,   nil,    47,    47,
-   nil,   nil,    47,    47,    48,    48,    48,   nil,    48,   nil,
-   nil,   nil,    48,    48,   nil,   nil,   nil,    48,   nil,    48,
-    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,   nil,
-   nil,    48,    48,    48,    48,    48,    48,    48,   nil,   nil,
-    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
-    48,    48,    48,    48,    48,    48,    48,    48,   nil,    48,
-    48,    48,   nil,    48,    48,   nil,    48,    48,    48,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
-   nil,    48,   nil,   nil,    48,    48,   nil,   nil,    48,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    48,   nil,   nil,   nil,   nil,    48,    48,    48,
-    48,    48,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,
-   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,
-   nil,    48,    48,   nil,   nil,    48,    48,    50,    50,    50,
-   nil,    50,   nil,   nil,   nil,    50,    50,   nil,   nil,   nil,
-    50,   nil,    50,    50,    50,    50,    50,    50,    50,   nil,
-   nil,   nil,   nil,   nil,    50,    50,    50,    50,    50,    50,
-    50,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
-    50,   nil,   nil,    50,    50,    50,    50,    50,    50,    50,
-    50,   nil,    50,    50,    50,   nil,    50,    50,   nil,    50,
-    50,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    50,   nil,   nil,    50,   nil,   nil,    50,    50,   nil,
-   nil,    50,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
-    50,    50,    50,    50,    50,    50,   nil,   nil,   nil,    50,
-    50,   nil,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
-    50,    50,    50,   nil,    50,    50,   nil,   nil,    50,    50,
-    51,    51,    51,   nil,    51,   nil,   nil,   nil,    51,    51,
-   nil,   nil,   nil,    51,   nil,    51,    51,    51,    51,    51,
-    51,    51,   nil,   nil,   nil,   nil,   nil,    51,    51,    51,
-    51,    51,    51,    51,   nil,   nil,    51,   nil,   nil,   nil,
-   nil,   nil,   nil,    51,   nil,   nil,    51,    51,    51,    51,
-    51,    51,    51,    51,   nil,    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,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
-   nil,   nil,   nil,    51,    51,    51,    51,    51,    51,   nil,
-   nil,   nil,    51,    51,   nil,   nil,   nil,   nil,   nil,   nil,
-    51,   nil,   nil,    51,    51,    51,   nil,    51,    51,   nil,
-   nil,    51,    51,    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,   nil,
-    53,    53,    53,    53,    53,    53,    53,   nil,   nil,    53,
-   nil,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,    53,
-    53,    53,    53,    53,    53,    53,    53,   nil,    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,   nil,
-   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,   nil,   nil,   nil,
-   nil,   nil,   nil,    53,   nil,   nil,    53,    53,    53,    65,
-    53,    53,   nil,   nil,    53,    53,    65,    65,    65,   nil,
-   nil,    65,    65,    65,  1274,    65,  1274,  1274,  1274,  1274,
-  1274,   nil,   nil,    65,   nil,    65,    65,    65,   nil,   nil,
-  1274,   791,   791,   791,   791,    65,    65,   nil,    65,    65,
-    65,    65,    65,   nil,   nil,   nil,   nil,   791,   791,   791,
-   nil,   nil,  1274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   791,   791,   nil,  1274,  1274,   791,    65,    65,    65,    65,
-    65,    65,    65,    65,    65,    65,    65,    65,    65,    65,
-   nil,   nil,    65,    65,    65,   nil,   nil,    65,   nil,   nil,
-    65,   nil,   nil,    65,    65,   nil,    65,  1274,    65,   nil,
-    65,   nil,    65,    65,    65,    65,    65,    65,    65,   nil,
-    65,   nil,    65,   nil,   791,   791,   791,   791,   791,   791,
-   nil,   nil,   nil,   791,   791,    65,    65,    65,    65,   nil,
-    65,   791,    65,   nil,   791,   791,   791,    65,   791,   791,
-   477,    65,    67,    67,    67,    67,    67,   477,   477,   477,
-    67,    67,   477,   477,   477,    67,   477,    67,    67,    67,
-    67,    67,    67,    67,   477,   477,   477,   477,   nil,    67,
-    67,    67,    67,    67,    67,    67,   477,   477,    67,   477,
-   477,   477,   477,   477,    67,    67,   nil,    67,    67,    67,
-    67,    67,    67,    67,    67,    67,   nil,    67,    67,    67,
-   nil,    67,    67,   nil,    67,    67,    67,   477,   477,   477,
-   477,   477,   477,   477,   477,   477,   477,   477,   477,   477,
-   477,   nil,   nil,   477,   477,   477,    67,   nil,   477,    67,
-   477,   477,    67,    67,   477,   477,    67,   477,    67,   477,
-   nil,   477,    67,   477,   477,   477,   477,   477,   477,   477,
-    67,   477,   477,   477,   nil,    67,    67,    67,    67,    67,
-    67,   nil,   nil,   nil,    67,    67,   477,   477,   nil,   477,
-   nil,   477,    67,   nil,   nil,    67,    67,    67,   477,    67,
-    67,   nil,   477,    67,    67,    72,    72,    72,   nil,    72,
-   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
-    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
-   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
-   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
-   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
-    72,    72,    72,   nil,    72,    72,   nil,    72,    72,    72,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
-   nil,   nil,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,    72,    72,
-    72,    72,    72,    72,   nil,   nil,   nil,    72,    72,   nil,
-   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
-    72,   nil,    72,    72,   nil,   nil,    72,    72,    73,    73,
-    73,   nil,    73,   nil,   nil,   nil,    73,    73,   nil,   nil,
-   nil,    73,   nil,    73,    73,    73,    73,    73,    73,    73,
-   nil,   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,
-    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,
-   nil,    73,   nil,   nil,    73,    73,    73,    73,    73,    73,
-    73,    73,   nil,    73,    73,    73,   nil,    73,    73,   nil,
-    73,    73,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    73,   nil,   nil,    73,   nil,   nil,    73,    73,
-   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,    73,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,   nil,
-   nil,    73,    73,    73,    73,    73,    73,   nil,   nil,   nil,
-    73,    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,
-   nil,    73,    73,    73,   nil,    73,    73,   nil,   nil,    73,
-    73,    76,    76,    76,   nil,    76,   nil,   nil,   nil,    76,
-    76,   nil,   nil,   nil,    76,   nil,    76,    76,    76,    76,
-    76,    76,    76,   nil,   nil,   nil,   nil,   nil,    76,    76,
-    76,    76,    76,    76,    76,   nil,   nil,    76,   nil,   nil,
-   nil,   nil,   nil,   nil,    76,   nil,   nil,    76,    76,    76,
-    76,    76,    76,    76,    76,   nil,    76,    76,    76,   nil,
-    76,    76,   nil,    76,    76,    76,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,    76,   nil,
-   nil,    76,    76,   nil,   nil,    76,   nil,   nil,   nil,   nil,
-   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,
-   nil,   nil,   nil,   nil,    76,    76,    76,    76,    76,    76,
-   nil,   nil,   nil,    76,    76,    76,   nil,   nil,   nil,   nil,
-    76,    76,   nil,   nil,    76,    76,    76,   nil,    76,    76,
-   nil,   nil,    76,    76,   132,   132,   132,   132,   132,   nil,
-   nil,   nil,   132,   132,   nil,   nil,   nil,   132,   nil,   132,
-   132,   132,   132,   132,   132,   132,   nil,   nil,   nil,   nil,
-   nil,   132,   132,   132,   132,   132,   132,   132,   nil,   nil,
-   132,   nil,   nil,   nil,   nil,   nil,   132,   132,   132,   132,
-   132,   132,   132,   132,   132,   132,   132,   132,   nil,   132,
-   132,   132,   nil,   132,   132,   nil,   132,   132,   132,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   132,   nil,
-   nil,   132,   nil,   nil,   132,   132,   nil,   nil,   132,   nil,
-   132,   nil,   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   132,   nil,   nil,   nil,   nil,   132,   132,   132,
-   132,   132,   132,   nil,   nil,   nil,   132,   132,   nil,   nil,
-   nil,   nil,   nil,   132,   132,   nil,   nil,   132,   132,   132,
-   nil,   132,   132,   nil,   nil,   132,   132,   137,   137,   137,
-   nil,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
-   137,   nil,   137,   137,   137,   137,   137,   137,   137,   nil,
-   nil,   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,
-   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   nil,
-   137,   nil,   nil,   137,   137,   137,   137,   137,   137,   137,
-   137,   nil,   137,   137,   137,   nil,   137,   137,   nil,   137,
-   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   137,   nil,   nil,   137,   nil,   nil,   137,   137,   nil,
-   nil,   137,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,
-   137,   137,   137,   137,   137,   137,   nil,   nil,   nil,   137,
-   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
-   137,   137,   137,   nil,   137,   137,   nil,   nil,   137,   137,
-   138,   138,   138,   nil,   138,   nil,   nil,   nil,   138,   138,
-   nil,   nil,   nil,   138,   nil,   138,   138,   138,   138,   138,
-   138,   138,   nil,   nil,   nil,   nil,   nil,   138,   138,   138,
-   138,   138,   138,   138,   nil,   nil,   138,   nil,   nil,   nil,
-   nil,   nil,   nil,   138,   nil,   nil,   138,   138,   138,   138,
-   138,   138,   138,   138,   nil,   138,   138,   138,   nil,   138,
-   138,   nil,   138,   138,   138,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   138,   nil,   nil,   138,   nil,   nil,
-   138,   138,   nil,   nil,   138,   nil,   nil,   nil,   nil,   nil,
-   138,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,
-   nil,   nil,   nil,   138,   138,   138,   138,   138,   138,   nil,
-   nil,   nil,   138,   138,   nil,   nil,   nil,   nil,   nil,   nil,
-   138,   nil,   nil,   138,   138,   138,   nil,   138,   138,   nil,
-   nil,   138,   138,   139,   139,   139,   nil,   139,   nil,   nil,
-   nil,   139,   139,   nil,   nil,   nil,   139,   nil,   139,   139,
-   139,   139,   139,   139,   139,   nil,   nil,   nil,   nil,   nil,
-   139,   139,   139,   139,   139,   139,   139,   nil,   nil,   139,
-   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   139,
-   139,   139,   139,   139,   139,   139,   139,   nil,   139,   139,
-   139,   nil,   139,   139,   nil,   139,   139,   139,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,
-   139,   nil,   nil,   139,   139,   nil,   nil,   139,   nil,   nil,
-   nil,   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   139,   nil,   nil,   nil,   nil,   139,   139,   139,   139,
-   139,   139,   nil,   nil,   nil,   139,   139,   nil,   nil,   nil,
-   nil,   nil,   nil,   139,   nil,   nil,   139,   139,   139,   nil,
-   139,   139,   nil,   nil,   139,   139,   140,   140,   140,   nil,
-   140,   nil,   nil,   nil,   140,   140,   nil,   nil,   nil,   140,
-   nil,   140,   140,   140,   140,   140,   140,   140,   nil,   nil,
-   nil,   nil,   nil,   140,   140,   140,   140,   140,   140,   140,
-   nil,   nil,   140,   nil,   nil,   nil,   nil,   nil,   nil,   140,
-   nil,   nil,   140,   140,   140,   140,   140,   140,   140,   140,
-   nil,   140,   140,   140,   nil,   140,   140,   nil,   140,   140,
-   140,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   140,   nil,   nil,   140,   nil,   nil,   140,   140,   nil,   nil,
-   140,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   140,   nil,   nil,   nil,   nil,   140,
-   140,   140,   140,   140,   140,   nil,   nil,   nil,   140,   140,
-   nil,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,   140,
-   140,   140,   nil,   140,   140,   nil,   nil,   140,   140,   141,
-   141,   141,   141,   141,   nil,   nil,   nil,   141,   141,   nil,
-   nil,   nil,   141,   nil,   141,   141,   141,   141,   141,   141,
-   141,   nil,   nil,   nil,   nil,   nil,   141,   141,   141,   141,
-   141,   141,   141,   nil,   nil,   141,   nil,   nil,   nil,   nil,
-   nil,   141,   141,   nil,   141,   141,   141,   141,   141,   141,
-   141,   141,   141,   nil,   141,   141,   141,   nil,   141,   141,
-   nil,   141,   141,   141,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   141,   nil,   nil,   141,   nil,   nil,   141,
-   141,   nil,   nil,   141,   nil,   141,   nil,   nil,   nil,   141,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   141,   nil,   nil,
-   nil,   nil,   141,   141,   141,   141,   141,   141,   nil,   nil,
-   nil,   141,   141,   nil,   nil,   nil,   nil,   nil,   nil,   141,
-   nil,   nil,   141,   141,   141,   nil,   141,   141,   nil,   nil,
-   141,   141,   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,   nil,   226,
-   226,   226,   226,   226,   226,   226,   nil,   nil,   226,   nil,
-   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
-   226,   226,   226,   226,   226,   226,   nil,   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,   226,   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,   nil,
-   nil,   nil,   226,   nil,   nil,   226,   226,   226,   nil,   226,
-   226,   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,   nil,   227,   227,   227,   227,   227,   227,   227,   nil,
-   nil,   227,   nil,   nil,   nil,   nil,   nil,   nil,   227,   nil,
-   nil,   227,   227,   227,   227,   227,   227,   227,   227,   nil,
-   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,   227,   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,   nil,   nil,   nil,   227,   nil,   nil,   227,   227,
-   227,   nil,   227,   227,   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,   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,   228,   nil,   nil,   nil,
-   nil,   228,   228,   228,   228,   228,   228,   nil,   nil,   nil,
-   228,   228,   nil,   nil,   nil,   nil,   nil,   nil,   228,   nil,
-   nil,   228,   228,   228,   nil,   228,   228,   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,   nil,   229,   229,
-   229,   229,   229,   229,   229,   nil,   nil,   229,   nil,   nil,
-   nil,   nil,   nil,   nil,   229,   nil,   nil,   229,   229,   229,
-   229,   229,   229,   229,   229,   nil,   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   229,   nil,   nil,   229,   229,   229,   nil,   229,   229,
-   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,
-   nil,   230,   230,   230,   230,   230,   230,   230,   nil,   nil,
-   230,   nil,   nil,   nil,   nil,   nil,   nil,   230,   nil,   nil,
-   230,   230,   230,   230,   230,   230,   230,   230,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   230,   nil,   nil,   230,   230,   230,
-   nil,   230,   230,   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,   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,   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,   231,   nil,   231,   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,   nil,   nil,   nil,   231,   nil,   231,
-   231,   231,   231,   nil,   231,   231,   nil,   nil,   231,   231,
-   244,   244,   244,   nil,   244,   nil,   nil,   nil,   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,   244,   nil,
-   nil,   nil,   nil,   244,   244,   244,   244,   244,   244,   nil,
-   nil,   nil,   244,   244,   nil,   nil,   nil,   nil,   nil,   nil,
-   244,   nil,   nil,   244,   244,   244,   nil,   244,   244,   nil,
-   nil,   244,   244,   245,   245,   245,   nil,   245,   nil,   nil,
-   nil,   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,   245,   nil,   nil,   nil,   nil,   245,   245,   245,   245,
-   245,   245,   nil,   nil,   nil,   245,   245,   nil,   nil,   nil,
-   nil,   nil,   nil,   245,   nil,   nil,   245,   245,   245,   nil,
-   245,   245,   nil,   nil,   245,   245,   246,   246,   246,   nil,
-   246,   nil,   nil,   nil,   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,   246,   nil,   nil,   nil,   nil,   246,
-   246,   246,   246,   246,   246,   nil,   nil,   nil,   246,   246,
-   246,   nil,   nil,   nil,   nil,   nil,   246,   nil,   nil,   246,
-   246,   246,   nil,   246,   246,   nil,   nil,   246,   246,   257,
-   257,   257,   nil,   257,   nil,   nil,   nil,   257,   257,   nil,
-   nil,   nil,   257,   nil,   257,   257,   257,   257,   257,   257,
-   257,   nil,   nil,   nil,   nil,   nil,   257,   257,   257,   257,
-   257,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,
-   nil,   nil,   257,   nil,   nil,   257,   257,   257,   257,   257,
-   257,   257,   257,   nil,   257,   257,   257,   nil,   257,   257,
-   nil,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,   nil,   257,
-   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
-   nil,   nil,   257,   257,   257,   257,   257,   257,   nil,   nil,
-   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,
-   nil,   nil,   257,   257,   257,   nil,   257,   257,   nil,   nil,
-   257,   257,   264,   264,   264,   nil,   264,   nil,   nil,   nil,
-   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,   nil,   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,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   264,   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,
-   264,   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,
-   nil,   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,
-   264,   nil,   nil,   264,   264,   265,   265,   265,   nil,   265,
-   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,   265,   nil,
-   265,   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,
-   nil,   nil,   265,   265,   265,   265,   265,   265,   265,   nil,
-   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
-   nil,   265,   265,   265,   265,   265,   265,   265,   265,   nil,
-   265,   265,   265,   nil,   265,   265,   nil,   265,   265,   265,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,
-   nil,   nil,   265,   nil,   nil,   265,   265,   nil,   nil,   265,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,   265,   265,
-   265,   265,   265,   265,   nil,   nil,   nil,   265,   265,   nil,
-   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,
-   265,   nil,   265,   265,   nil,   nil,   265,   265,   266,   266,
-   266,   nil,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,
-   nil,   266,   nil,   266,   266,   266,   266,   266,   266,   266,
-   nil,   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,
-   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
-   nil,   266,   nil,   nil,   266,   266,   266,   266,   266,   266,
-   266,   266,   nil,   266,   266,   266,   nil,   266,   266,   nil,
-   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,   266,   266,
-   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,
-   nil,   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,
-   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
-   nil,   266,   266,   266,   nil,   266,   266,   nil,   nil,   266,
-   266,   267,   267,   267,   nil,   267,   nil,   nil,   nil,   267,
-   267,   nil,   nil,   nil,   267,   nil,   267,   267,   267,   267,
-   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   267,   267,
-   267,   267,   267,   267,   267,   nil,   nil,   267,   nil,   nil,
-   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,
-   267,   267,   267,   267,   267,   nil,   267,   267,   267,   nil,
-   267,   267,   nil,   267,   267,   267,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,
-   nil,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,
-   nil,   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,
-   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,
-   nil,   267,   nil,   nil,   267,   267,   267,   nil,   267,   267,
-   nil,   nil,   267,   267,   268,   268,   268,   nil,   268,   nil,
-   nil,   nil,   268,   268,   nil,   nil,   nil,   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,   268,   268,   268,   268,   268,   268,   nil,   268,
-   268,   268,   nil,   268,   268,   nil,   268,   268,   268,   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,   268,   nil,   nil,   268,   nil,
-   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,   268,   268,   268,
-   nil,   268,   268,   nil,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,
-   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,
-   269,   nil,   nil,   269,   269,   269,   269,   269,   269,   269,
-   269,   nil,   269,   269,   269,   nil,   269,   269,   nil,   269,
-   269,   269,   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,   269,   nil,
-   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,
-   269,   269,   269,   nil,   269,   269,   nil,   nil,   269,   269,
-   270,   270,   270,   nil,   270,   nil,   nil,   nil,   270,   270,
-   nil,   nil,   nil,   270,   nil,   270,   270,   270,   270,   270,
-   270,   270,   nil,   nil,   nil,   nil,   nil,   270,   270,   270,
-   270,   270,   270,   270,   nil,   nil,   270,   nil,   nil,   nil,
-   nil,   nil,   nil,   270,   nil,   nil,   270,   270,   270,   270,
-   270,   270,   270,   270,   nil,   270,   270,   270,   nil,   270,
-   270,   nil,   270,   270,   270,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   270,   nil,   nil,   270,   nil,   nil,
-   270,   270,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,
-   270,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,
-   nil,   nil,   nil,   270,   270,   270,   270,   270,   270,   nil,
-   nil,   nil,   270,   270,   nil,   nil,   nil,   nil,   nil,   nil,
-   270,   nil,   nil,   270,   270,   270,   nil,   270,   270,   nil,
-   nil,   270,   270,   271,   271,   271,   nil,   271,   nil,   nil,
-   nil,   271,   271,   nil,   nil,   nil,   271,   nil,   271,   271,
-   271,   271,   271,   271,   271,   nil,   nil,   nil,   nil,   nil,
-   271,   271,   271,   271,   271,   271,   271,   nil,   nil,   271,
-   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,
-   271,   271,   271,   271,   271,   271,   271,   nil,   271,   271,
-   271,   nil,   271,   271,   nil,   271,   271,   271,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,
-   271,   nil,   nil,   271,   271,   nil,   nil,   271,   nil,   nil,
-   nil,   nil,   nil,   271,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   271,   nil,   nil,   nil,   nil,   271,   271,   271,   271,
-   271,   271,   nil,   nil,   nil,   271,   271,   nil,   nil,   nil,
-   nil,   nil,   nil,   271,   nil,   nil,   271,   271,   271,   nil,
-   271,   271,   nil,   nil,   271,   271,   272,   272,   272,   nil,
-   272,   nil,   nil,   nil,   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,
-   nil,   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,   nil,   nil,   nil,   nil,   272,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   272,   nil,   nil,   nil,   nil,   272,
-   272,   272,   272,   272,   272,   nil,   nil,   nil,   272,   272,
-   nil,   nil,   nil,   nil,   nil,   nil,   272,   nil,   nil,   272,
-   272,   272,   nil,   272,   272,   nil,   nil,   272,   272,   273,
-   273,   273,   nil,   273,   nil,   nil,   nil,   273,   273,   nil,
-   nil,   nil,   273,   nil,   273,   273,   273,   273,   273,   273,
-   273,   nil,   nil,   nil,   nil,   nil,   273,   273,   273,   273,
-   273,   273,   273,   nil,   nil,   273,   nil,   nil,   nil,   nil,
-   nil,   nil,   273,   nil,   nil,   273,   273,   273,   273,   273,
-   273,   273,   273,   nil,   273,   273,   273,   nil,   273,   273,
-   nil,   273,   273,   273,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   273,   nil,   nil,   273,   nil,   nil,   273,
-   273,   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   273,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,
-   nil,   nil,   273,   273,   273,   273,   273,   273,   nil,   nil,
-   nil,   273,   273,   nil,   nil,   nil,   nil,   nil,   nil,   273,
-   nil,   nil,   273,   273,   273,   nil,   273,   273,   nil,   nil,
-   273,   273,   274,   274,   274,   nil,   274,   nil,   nil,   nil,
-   274,   274,   nil,   nil,   nil,   274,   nil,   274,   274,   274,
-   274,   274,   274,   274,   nil,   nil,   nil,   nil,   nil,   274,
-   274,   274,   274,   274,   274,   274,   nil,   nil,   274,   nil,
-   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,
-   274,   274,   274,   274,   274,   274,   nil,   274,   274,   274,
-   nil,   274,   274,   nil,   274,   274,   274,   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,   274,   274,   nil,   nil,   274,   nil,   nil,   nil,
-   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   274,   nil,   nil,   nil,   nil,   274,   274,   274,   274,   274,
-   274,   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   nil,
-   nil,   nil,   274,   nil,   nil,   274,   274,   274,   nil,   274,
-   274,   nil,   nil,   274,   274,   275,   275,   275,   nil,   275,
-   nil,   nil,   nil,   275,   275,   nil,   nil,   nil,   275,   nil,
-   275,   275,   275,   275,   275,   275,   275,   nil,   nil,   nil,
-   nil,   nil,   275,   275,   275,   275,   275,   275,   275,   nil,
-   nil,   275,   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,
-   nil,   275,   275,   275,   275,   275,   275,   275,   275,   nil,
-   275,   275,   275,   nil,   275,   275,   nil,   275,   275,   275,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   275,
-   nil,   nil,   275,   nil,   nil,   275,   275,   nil,   nil,   275,
-   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   275,   nil,   nil,   nil,   nil,   275,   275,
-   275,   275,   275,   275,   nil,   nil,   nil,   275,   275,   nil,
-   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   275,   275,
-   275,   nil,   275,   275,   nil,   nil,   275,   275,   276,   276,
-   276,   nil,   276,   nil,   nil,   nil,   276,   276,   nil,   nil,
-   nil,   276,   nil,   276,   276,   276,   276,   276,   276,   276,
-   nil,   nil,   nil,   nil,   nil,   276,   276,   276,   276,   276,
-   276,   276,   nil,   nil,   276,   nil,   nil,   nil,   nil,   nil,
-   nil,   276,   nil,   nil,   276,   276,   276,   276,   276,   276,
-   276,   276,   nil,   276,   276,   276,   nil,   276,   276,   nil,
-   276,   276,   276,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   276,   nil,   nil,   276,   nil,   nil,   276,   276,
-   nil,   nil,   276,   nil,   nil,   nil,   nil,   nil,   276,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   276,   nil,   nil,   nil,
-   nil,   276,   276,   276,   276,   276,   276,   nil,   nil,   nil,
-   276,   276,   nil,   nil,   nil,   nil,   nil,   nil,   276,   nil,
-   nil,   276,   276,   276,   nil,   276,   276,   nil,   nil,   276,
-   276,   277,   277,   277,   nil,   277,   nil,   nil,   nil,   277,
-   277,   nil,   nil,   nil,   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,   277,
-   277,   277,   277,   277,   277,   nil,   277,   277,   277,   nil,
-   277,   277,   nil,   277,   277,   277,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   277,   nil,   nil,   277,   nil,
-   nil,   277,   277,   nil,   nil,   277,   nil,   nil,   nil,   nil,
-   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,   277,   277,   nil,   277,   277,
-   nil,   nil,   277,   277,   278,   278,   278,   nil,   278,   nil,
-   nil,   nil,   278,   278,   nil,   nil,   nil,   278,   nil,   278,
-   278,   278,   278,   278,   278,   278,   nil,   nil,   nil,   nil,
-   nil,   278,   278,   278,   278,   278,   278,   278,   nil,   nil,
-   278,   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
-   278,   278,   278,   278,   278,   278,   278,   278,   nil,   278,
-   278,   278,   nil,   278,   278,   nil,   278,   278,   278,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,
-   nil,   278,   nil,   nil,   278,   278,   nil,   nil,   278,   nil,
-   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   278,   nil,   nil,   nil,   nil,   278,   278,   278,
-   278,   278,   278,   nil,   nil,   nil,   278,   278,   nil,   nil,
-   nil,   nil,   nil,   nil,   278,   nil,   nil,   278,   278,   278,
-   nil,   278,   278,   nil,   nil,   278,   278,   279,   279,   279,
-   nil,   279,   nil,   nil,   nil,   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,   279,   nil,   nil,   nil,   nil,
-   279,   279,   279,   279,   279,   279,   nil,   nil,   nil,   279,
-   279,   nil,   nil,   nil,   nil,   nil,   nil,   279,   nil,   nil,
-   279,   279,   279,   nil,   279,   279,   nil,   nil,   279,   279,
-   280,   280,   280,   nil,   280,   nil,   nil,   nil,   280,   280,
-   nil,   nil,   nil,   280,   nil,   280,   280,   280,   280,   280,
-   280,   280,   nil,   nil,   nil,   nil,   nil,   280,   280,   280,
-   280,   280,   280,   280,   nil,   nil,   280,   nil,   nil,   nil,
-   nil,   nil,   nil,   280,   nil,   nil,   280,   280,   280,   280,
-   280,   280,   280,   280,   nil,   280,   280,   280,   nil,   280,
-   280,   nil,   280,   280,   280,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   280,   nil,   nil,   280,   nil,   nil,
-   280,   280,   nil,   nil,   280,   nil,   nil,   nil,   nil,   nil,
-   280,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,
-   nil,   nil,   nil,   280,   280,   280,   280,   280,   280,   nil,
-   nil,   nil,   280,   280,   nil,   nil,   nil,   nil,   nil,   nil,
-   280,   nil,   nil,   280,   280,   280,   nil,   280,   280,   nil,
-   nil,   280,   280,   281,   281,   281,   nil,   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,   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,   281,   nil,   nil,   nil,   nil,   281,   281,   281,   281,
-   281,   281,   nil,   nil,   nil,   281,   281,   nil,   nil,   nil,
-   nil,   nil,   nil,   281,   nil,   nil,   281,   281,   281,   nil,
-   281,   281,   nil,   nil,   281,   281,   282,   282,   282,   nil,
-   282,   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,   282,
-   nil,   282,   282,   282,   282,   282,   282,   282,   nil,   nil,
-   nil,   nil,   nil,   282,   282,   282,   282,   282,   282,   282,
-   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,
-   nil,   nil,   282,   282,   282,   282,   282,   282,   282,   282,
-   nil,   282,   282,   282,   nil,   282,   282,   nil,   282,   282,
-   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   282,   nil,   nil,   282,   nil,   nil,   282,   282,   nil,   nil,
-   282,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   282,
-   282,   282,   282,   282,   282,   nil,   nil,   nil,   282,   282,
-   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   282,
-   282,   282,   nil,   282,   282,   nil,   nil,   282,   282,   283,
-   283,   283,   nil,   283,   nil,   nil,   nil,   283,   283,   nil,
-   nil,   nil,   283,   nil,   283,   283,   283,   283,   283,   283,
-   283,   nil,   nil,   nil,   nil,   nil,   283,   283,   283,   283,
-   283,   283,   283,   nil,   nil,   283,   nil,   nil,   nil,   nil,
-   nil,   nil,   283,   nil,   nil,   283,   283,   283,   283,   283,
-   283,   283,   283,   nil,   283,   283,   283,   nil,   283,   283,
-   nil,   283,   283,   283,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   283,   nil,   nil,   283,   nil,   nil,   283,
-   283,   nil,   nil,   283,   nil,   nil,   nil,   nil,   nil,   283,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,
-   nil,   nil,   283,   283,   283,   283,   283,   283,   nil,   nil,
-   nil,   283,   283,   nil,   nil,   nil,   nil,   nil,   nil,   283,
-   nil,   nil,   283,   283,   283,   nil,   283,   283,   nil,   nil,
-   283,   283,   284,   284,   284,   nil,   284,   nil,   nil,   nil,
-   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,
-   284,   nil,   nil,   nil,   nil,   284,   284,   284,   284,   284,
-   284,   nil,   nil,   nil,   284,   284,   nil,   nil,   nil,   nil,
-   nil,   nil,   284,   nil,   nil,   284,   284,   284,   nil,   284,
-   284,   nil,   nil,   284,   284,   285,   285,   285,   nil,   285,
-   nil,   nil,   nil,   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,   285,   nil,   nil,   nil,   nil,   285,   285,
-   285,   285,   285,   285,   nil,   nil,   nil,   285,   285,   nil,
-   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,   285,   285,
-   285,   nil,   285,   285,   nil,   nil,   285,   285,   290,   290,
-   290,   nil,   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,
-   nil,   290,   nil,   nil,   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,   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,   nil,   nil,   nil,   nil,   nil,   nil,   290,   nil,
-   nil,   290,   290,   290,   nil,   290,   290,   nil,   nil,   290,
-   290,   314,   314,   314,   nil,   314,   nil,   nil,   nil,   314,
-   314,   nil,   nil,   nil,   314,   nil,   314,   314,   314,   314,
-   314,   314,   314,   nil,   nil,   nil,   nil,   nil,   314,   314,
-   314,   314,   314,   314,   314,   nil,   nil,   314,   nil,   nil,
-   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,   314,   314,
-   314,   314,   314,   314,   314,   314,   314,   314,   314,   nil,
-   314,   314,   nil,   314,   314,   314,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,   nil,
-   nil,   314,   314,   nil,   nil,   314,   nil,   314,   nil,   314,
-   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   314,
-   nil,   nil,   nil,   nil,   314,   314,   314,   314,   314,   314,
-   nil,   nil,   nil,   314,   314,   nil,   nil,   nil,   nil,   nil,
-   nil,   314,   nil,   314,   314,   314,   314,   nil,   314,   314,
-   nil,   nil,   314,   314,   315,   315,   315,   nil,   315,   nil,
-   nil,   nil,   315,   315,   nil,   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,   315,   315,
-   315,   315,   nil,   315,   315,   nil,   315,   315,   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,
-   315,   nil,   315,   nil,   315,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   315,   nil,   nil,   nil,   nil,   315,   315,   315,
-   315,   315,   315,   nil,   nil,   nil,   315,   315,   nil,   nil,
-   nil,   nil,   nil,   nil,   315,   nil,   315,   315,   315,   315,
-   nil,   315,   315,   nil,   nil,   315,   315,   324,   324,   324,
-   nil,   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,   nil,
-   324,   nil,   nil,   324,   324,   324,   324,   324,   324,   324,
-   324,   324,   324,   324,   324,   nil,   324,   324,   nil,   324,
-   324,   324,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   324,   nil,   nil,   324,   nil,   nil,   324,   324,   nil,
-   nil,   324,   nil,   324,   nil,   324,   nil,   324,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   324,   nil,   nil,   nil,   nil,
-   324,   324,   324,   324,   324,   324,   nil,   nil,   nil,   324,
-   324,   324,   nil,   nil,   nil,   nil,   nil,   324,   nil,   324,
-   324,   324,   324,   nil,   324,   324,   nil,   nil,   324,   324,
-   331,   331,   331,   nil,   331,   nil,   nil,   nil,   331,   331,
-   nil,   nil,   nil,   331,   nil,   331,   331,   331,   331,   331,
-   331,   331,   nil,   nil,   nil,   nil,   nil,   331,   331,   331,
-   331,   331,   331,   331,   nil,   nil,   331,   nil,   nil,   nil,
-   nil,   nil,   nil,   331,   nil,   nil,   331,   331,   331,   331,
-   331,   331,   331,   331,   nil,   331,   331,   331,   nil,   331,
-   331,   nil,   331,   331,   331,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   331,   nil,   nil,   331,   nil,   nil,
-   331,   331,   nil,   nil,   331,   nil,   nil,   nil,   nil,   nil,
-   331,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,
-   nil,   nil,   nil,   331,   331,   331,   331,   331,   331,   nil,
-   nil,   nil,   331,   331,   nil,   nil,   nil,   nil,   nil,   nil,
-   331,   nil,   nil,   331,   331,   331,   nil,   331,   331,   nil,
-   nil,   331,   331,   333,   333,   333,   nil,   333,   nil,   nil,
-   nil,   333,   333,   nil,   nil,   nil,   333,   nil,   333,   333,
-   333,   333,   333,   333,   333,   nil,   nil,   nil,   nil,   nil,
-   333,   333,   333,   333,   333,   333,   333,   nil,   nil,   333,
-   nil,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   333,
-   333,   333,   333,   333,   333,   333,   333,   nil,   333,   333,
-   333,   nil,   333,   333,   nil,   333,   333,   333,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,
-   333,   nil,   nil,   333,   333,   nil,   nil,   333,   nil,   nil,
-   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   333,   nil,   nil,   nil,   nil,   333,   333,   333,   333,
-   333,   333,   nil,   nil,   nil,   333,   333,   nil,   nil,   nil,
-   nil,   nil,   nil,   333,   nil,   nil,   333,   333,   333,   nil,
-   333,   333,   nil,   nil,   333,   333,   336,   336,   336,   nil,
-   336,   nil,   nil,   nil,   336,   336,   nil,   nil,   nil,   336,
-   nil,   336,   336,   336,   336,   336,   336,   336,   nil,   nil,
-   nil,   nil,   nil,   336,   336,   336,   336,   336,   336,   336,
-   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,
-   nil,   nil,   336,   336,   336,   336,   336,   336,   336,   336,
-   nil,   336,   336,   336,   nil,   336,   336,   nil,   336,   336,
-   336,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   336,   nil,   nil,   336,   nil,   nil,   336,   336,   nil,   nil,
-   336,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   336,   nil,   nil,   nil,   nil,   336,
-   336,   336,   336,   336,   336,   nil,   nil,   nil,   336,   336,
-   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,   336,
-   336,   336,   nil,   336,   336,   nil,   nil,   336,   336,   337,
-   337,   337,   nil,   337,   nil,   nil,   nil,   337,   337,   nil,
-   nil,   nil,   337,   nil,   337,   337,   337,   337,   337,   337,
-   337,   nil,   nil,   nil,   nil,   nil,   337,   337,   337,   337,
-   337,   337,   337,   nil,   nil,   337,   nil,   nil,   nil,   nil,
-   nil,   nil,   337,   nil,   nil,   337,   337,   337,   337,   337,
-   337,   337,   337,   nil,   337,   337,   337,   nil,   337,   337,
-   nil,   337,   337,   337,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   337,   nil,   nil,   337,   nil,   nil,   337,
-   337,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   337,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   337,   nil,   nil,
-   nil,   nil,   337,   337,   337,   337,   337,   337,   nil,   nil,
-   nil,   337,   337,   nil,   nil,   nil,   nil,   nil,   nil,   337,
-   nil,   nil,   337,   337,   337,   nil,   337,   337,   nil,   nil,
-   337,   337,   343,   343,   343,   343,   343,   nil,   nil,   nil,
-   343,   343,   nil,   nil,   nil,   343,   nil,   343,   343,   343,
-   343,   343,   343,   343,   nil,   nil,   nil,   nil,   nil,   343,
-   343,   343,   343,   343,   343,   343,   nil,   nil,   343,   nil,
-   nil,   nil,   nil,   nil,   343,   343,   nil,   343,   343,   343,
-   343,   343,   343,   343,   343,   343,   nil,   343,   343,   343,
-   nil,   343,   343,   nil,   343,   343,   343,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,
-   nil,   nil,   343,   343,   nil,   nil,   343,   nil,   343,   nil,
-   nil,   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   343,   nil,   nil,   nil,   nil,   343,   343,   343,   343,   343,
-   343,   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,   nil,
-   nil,   nil,   343,   nil,   nil,   343,   343,   343,   nil,   343,
-   343,   nil,   nil,   343,   343,   379,   379,   379,   nil,   379,
-   nil,   nil,   nil,   379,   379,   nil,   nil,   nil,   379,   nil,
-   379,   379,   379,   379,   379,   379,   379,   nil,   nil,   nil,
-   nil,   nil,   379,   379,   379,   379,   379,   379,   379,   nil,
-   nil,   379,   nil,   nil,   nil,   nil,   nil,   nil,   379,   nil,
-   nil,   379,   379,   379,   379,   379,   379,   379,   379,   nil,
-   379,   379,   379,   nil,   379,   379,   nil,   379,   379,   379,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   379,
-   nil,   nil,   379,   nil,   nil,   379,   379,   nil,   nil,   379,
-   nil,   nil,   nil,   nil,   nil,   379,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   379,   nil,   nil,   nil,   nil,   379,   379,
-   379,   379,   379,   379,   nil,   nil,   nil,   379,   379,   nil,
-   nil,   nil,   nil,   nil,   nil,   379,   nil,   nil,   379,   379,
-   379,   nil,   379,   379,   nil,   nil,   379,   379,   381,   381,
-   381,   nil,   381,   nil,   nil,   nil,   381,   381,   nil,   nil,
-   nil,   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,   381,   381,   381,   381,
-   381,   381,   nil,   381,   381,   381,   nil,   381,   381,   nil,
-   381,   381,   381,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   381,   nil,   nil,   381,   381,   nil,   381,   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,   nil,   nil,   nil,   381,   nil,
-   nil,   381,   381,   381,   nil,   381,   381,   nil,   nil,   381,
-   381,   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,   nil,   385,   385,
-   385,   385,   385,   385,   385,   nil,   nil,   385,   nil,   nil,
-   nil,   nil,   nil,   nil,   385,   nil,   nil,   385,   385,   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,   nil,
-   nil,   385,   385,   nil,   nil,   385,   nil,   385,   nil,   nil,
-   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   385,   nil,   385,   385,   385,   385,   nil,   385,   385,
-   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,
-   nil,   386,   386,   386,   386,   386,   386,   386,   nil,   nil,
-   386,   nil,   nil,   nil,   nil,   nil,   nil,   386,   nil,   nil,
-   386,   386,   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,   nil,   nil,   386,   386,   nil,   nil,   386,   nil,
-   nil,   nil,   nil,   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,   nil,   nil,
-   nil,   nil,   nil,   nil,   386,   nil,   386,   386,   386,   386,
-   nil,   386,   386,   nil,   nil,   386,   386,   391,   391,   391,
-   nil,   391,   nil,   nil,   nil,   391,   391,   nil,   nil,   nil,
-   391,   nil,   391,   391,   391,   391,   391,   391,   391,   nil,
-   nil,   nil,   nil,   nil,   391,   391,   391,   391,   391,   391,
-   391,   nil,   nil,   391,   nil,   nil,   nil,   nil,   nil,   nil,
-   391,   nil,   nil,   391,   391,   391,   391,   391,   391,   391,
-   391,   nil,   391,   391,   391,   nil,   391,   391,   nil,   391,
-   391,   391,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   391,   nil,   nil,   391,   nil,   nil,   391,   391,   nil,
-   nil,   391,   nil,   nil,   nil,   nil,   nil,   391,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   391,   nil,   nil,   nil,   nil,
-   391,   391,   391,   391,   391,   391,   nil,   nil,   nil,   391,
-   391,   nil,   nil,   nil,   nil,   nil,   nil,   391,   nil,   nil,
-   391,   391,   391,   nil,   391,   391,   nil,   nil,   391,   391,
-   452,   452,   452,   nil,   452,   nil,   nil,   nil,   452,   452,
-   nil,   nil,   nil,   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,   452,   452,
-   452,   452,   452,   452,   nil,   452,   452,   452,   nil,   452,
-   452,   nil,   452,   452,   452,   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,   452,   nil,   nil,   452,   nil,   nil,   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,   nil,   nil,   nil,
-   452,   nil,   nil,   452,   452,   452,   486,   452,   452,   nil,
-   nil,   452,   452,   486,   486,   486,   nil,   nil,   486,   486,
-   486,  1292,   486,  1292,  1292,  1292,  1292,  1292,   nil,   nil,
-   486,   486,   486,   486,   486,   nil,   nil,  1292,   nil,   nil,
-   nil,   nil,   486,   486,   nil,   486,   486,   486,   486,   486,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1292,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1292,  1292,   nil,   486,   486,   486,   486,   486,   486,   486,
-   486,   486,   486,   486,   486,   486,   486,   nil,   nil,   486,
-   486,   486,   nil,   nil,   486,   nil,   nil,   486,   nil,   nil,
-   486,   486,   nil,   486,  1292,   486,   nil,   486,   nil,   486,
-   486,   486,   486,   486,   486,   486,   nil,   486,   486,   486,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   486,   486,   486,   486,   nil,   486,   487,   486,
-   nil,   nil,   nil,   nil,   486,   487,   487,   487,   486,   nil,
-   487,   487,   487,   nil,   487,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   487,   487,   487,   487,   487,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   487,   487,   nil,   487,   487,   487,
-   487,   487,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   487,   487,   487,   487,   487,
-   487,   487,   487,   487,   487,   487,   487,   487,   487,   nil,
-   nil,   487,   487,   487,   nil,   nil,   487,   nil,   nil,   487,
-   nil,   nil,   487,   487,   nil,   487,   nil,   487,   nil,   487,
-   nil,   487,   487,   487,   487,   487,   487,   487,   nil,   487,
-   487,   487,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   487,   487,   487,   487,   nil,   487,
-   nil,   487,   nil,   488,   488,   488,   487,   488,   nil,   nil,
-   487,   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,   nil,   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,   nil,   nil,   488,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   488,   nil,   nil,   nil,   nil,   488,   488,   488,   488,
-   488,   488,   nil,   nil,   nil,   488,   488,   nil,   nil,   nil,
-   nil,   nil,   nil,   488,   nil,   nil,   488,   488,   488,   nil,
-   488,   488,   nil,   nil,   488,   488,   514,   514,   514,   nil,
-   514,   nil,   nil,   nil,   514,   514,   nil,   nil,   nil,   514,
-   nil,   514,   514,   514,   514,   514,   514,   514,   nil,   nil,
-   nil,   nil,   nil,   514,   514,   514,   514,   514,   514,   514,
-   nil,   nil,   514,   nil,   nil,   nil,   nil,   nil,   nil,   514,
-   nil,   nil,   514,   514,   514,   514,   514,   514,   514,   514,
-   nil,   514,   514,   514,   nil,   514,   514,   nil,   514,   514,
-   514,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   514,   nil,   nil,   514,   nil,   nil,   514,   514,   nil,   nil,
-   514,   nil,   nil,   nil,   nil,   nil,   514,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   514,   nil,   nil,   nil,   nil,   514,
-   514,   514,   514,   514,   514,   nil,   nil,   nil,   514,   514,
-   nil,   nil,   nil,   nil,   nil,   nil,   514,   nil,   nil,   514,
-   514,   514,   nil,   514,   514,   nil,   nil,   514,   514,   527,
-   527,   527,   nil,   527,   nil,   nil,   nil,   527,   527,   nil,
-   nil,   nil,   527,   nil,   527,   527,   527,   527,   527,   527,
-   527,   nil,   nil,   nil,   nil,   nil,   527,   527,   527,   527,
-   527,   527,   527,   nil,   nil,   527,   nil,   nil,   nil,   nil,
-   nil,   nil,   527,   nil,   nil,   527,   527,   527,   527,   527,
-   527,   527,   527,   nil,   527,   527,   527,   nil,   527,   527,
-   nil,   527,   527,   527,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   527,   nil,   nil,   527,   nil,   nil,   527,
-   527,   nil,   nil,   527,   nil,   nil,   nil,   nil,   nil,   527,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   527,   nil,   nil,
-   nil,   nil,   527,   527,   527,   527,   527,   527,   nil,   nil,
-   nil,   527,   527,   nil,   nil,   nil,   nil,   nil,   nil,   527,
-   nil,   nil,   527,   527,   527,   nil,   527,   527,   nil,   nil,
-   527,   527,   537,   537,   537,   nil,   537,   nil,   nil,   nil,
-   537,   537,   nil,   nil,   nil,   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,
-   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,   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,   nil,
-   nil,   nil,   537,   nil,   537,   537,   537,   537,   nil,   537,
-   537,   nil,   nil,   537,   537,   539,   539,   539,   nil,   539,
-   nil,   nil,   nil,   539,   539,   nil,   nil,   nil,   539,   nil,
-   539,   539,   539,   539,   539,   539,   539,   nil,   nil,   nil,
-   nil,   nil,   539,   539,   539,   539,   539,   539,   539,   nil,
-   nil,   539,   nil,   nil,   nil,   nil,   nil,   nil,   539,   nil,
-   nil,   539,   539,   539,   539,   539,   539,   539,   539,   nil,
-   539,   539,   539,   nil,   539,   539,   nil,   539,   539,   539,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   539,
-   nil,   nil,   539,   nil,   nil,   539,   539,   nil,   nil,   539,
-   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   539,   nil,   nil,   nil,   nil,   539,   539,
-   539,   539,   539,   539,   nil,   nil,   nil,   539,   539,   nil,
-   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,   539,   539,
-   539,   nil,   539,   539,   nil,   nil,   539,   539,   540,   540,
-   540,   nil,   540,   nil,   nil,   nil,   540,   540,   nil,   nil,
-   nil,   540,   nil,   540,   540,   540,   540,   540,   540,   540,
-   nil,   nil,   nil,   nil,   nil,   540,   540,   540,   540,   540,
-   540,   540,   nil,   nil,   540,   nil,   nil,   nil,   nil,   nil,
-   nil,   540,   nil,   nil,   540,   540,   540,   540,   540,   540,
-   540,   540,   nil,   540,   540,   540,   nil,   540,   540,   nil,
-   540,   540,   540,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   540,   nil,   nil,   540,   nil,   nil,   540,   540,
-   nil,   nil,   540,   nil,   nil,   nil,   nil,   nil,   540,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   540,   nil,   nil,   nil,
-   nil,   540,   540,   540,   540,   540,   540,   nil,   nil,   nil,
-   540,   540,   nil,   nil,   nil,   nil,   nil,   nil,   540,   nil,
-   nil,   540,   540,   540,   nil,   540,   540,   nil,   nil,   540,
-   540,   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,   nil,   541,   541,
-   541,   541,   541,   541,   541,   nil,   nil,   541,   nil,   nil,
-   nil,   nil,   nil,   nil,   541,   nil,   nil,   541,   541,   541,
-   541,   541,   541,   541,   541,   nil,   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   541,   nil,   nil,   541,   541,   541,   nil,   541,   541,
-   nil,   nil,   541,   541,   572,   572,   572,   nil,   572,   nil,
-   nil,   nil,   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,   nil,   572,   nil,   nil,
-   572,   572,   572,   572,   572,   572,   572,   572,   nil,   572,
-   572,   572,   nil,   572,   572,   nil,   572,   572,   572,   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,   572,   nil,   nil,   572,   nil,
-   nil,   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,   572,   572,
-   575,   572,   572,   nil,   nil,   572,   572,   575,   575,   575,
-   nil,   nil,   575,   575,   575,   nil,   575,   985,   985,   985,
-   985,   nil,   nil,   nil,   575,   575,   575,   nil,   nil,   nil,
-   nil,   nil,   nil,   985,   985,   985,   575,   575,   nil,   575,
-   575,   575,   575,   575,   nil,   nil,   985,   985,   nil,   nil,
-   nil,   985,   nil,   nil,   nil,   nil,   nil,   733,   nil,   733,
-   733,   733,   733,   733,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   733,   nil,   nil,   nil,   nil,   575,   nil,
-   nil,   nil,   nil,   nil,   nil,   575,   nil,   nil,   nil,   nil,
-   575,   575,   nil,   nil,   nil,   733,   nil,   nil,   nil,   nil,
-   985,   985,   985,   985,   985,   985,   733,   733,   nil,   985,
-   985,   nil,   575,   575,   nil,   nil,   nil,   985,   nil,   nil,
-   985,   985,   985,   nil,   985,   985,   575,   nil,   580,   580,
-   580,   575,   580,   nil,   nil,   nil,   580,   580,   575,   nil,
-   733,   580,   575,   580,   580,   580,   580,   580,   580,   580,
-   733,   nil,   nil,   nil,   nil,   580,   580,   580,   580,   580,
-   580,   580,   nil,   nil,   580,   nil,   nil,   nil,   nil,   nil,
-   nil,   580,   nil,   nil,   580,   580,   580,   580,   580,   580,
-   580,   580,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   580,   nil,
-   nil,   580,   580,   580,   nil,   580,   580,   nil,   nil,   580,
-   580,   590,   590,   590,   nil,   590,   nil,   nil,   nil,   590,
-   590,   nil,   nil,   nil,   590,   nil,   590,   590,   590,   590,
-   590,   590,   590,   nil,   nil,   nil,   nil,   nil,   590,   590,
-   590,   590,   590,   590,   590,   nil,   nil,   590,   nil,   nil,
-   nil,   nil,   nil,   nil,   590,   nil,   nil,   590,   590,   590,
-   590,   590,   590,   590,   590,   590,   590,   590,   590,   nil,
-   590,   590,   nil,   590,   590,   590,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   590,   nil,   nil,   590,   nil,
-   nil,   590,   590,   nil,   nil,   590,   nil,   590,   nil,   590,
-   nil,   590,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   590,
-   nil,   nil,   nil,   nil,   590,   590,   590,   590,   590,   590,
-   nil,   nil,   nil,   590,   590,   nil,   nil,   nil,   nil,   nil,
-   nil,   590,   nil,   590,   590,   590,   590,   nil,   590,   590,
-   nil,   nil,   590,   590,   593,   593,   593,   nil,   593,   nil,
-   nil,   nil,   593,   593,   nil,   nil,   nil,   593,   nil,   593,
-   593,   593,   593,   593,   593,   593,   nil,   nil,   nil,   nil,
-   nil,   593,   593,   593,   593,   593,   593,   593,   nil,   nil,
-   593,   nil,   nil,   nil,   nil,   nil,   nil,   593,   nil,   nil,
-   593,   593,   593,   593,   593,   593,   593,   593,   593,   593,
-   593,   593,   nil,   593,   593,   nil,   593,   593,   593,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   593,   nil,
-   nil,   593,   nil,   nil,   593,   593,   nil,   nil,   593,   nil,
-   nil,   nil,   593,   nil,   593,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   593,   nil,   nil,   nil,   nil,   593,   593,   593,
-   593,   593,   593,   nil,   nil,   nil,   593,   593,   nil,   nil,
-   nil,   nil,   nil,   nil,   593,   nil,   593,   593,   593,   593,
-   nil,   593,   593,   nil,   nil,   593,   593,   595,   595,   595,
-   nil,   595,   nil,   nil,   nil,   595,   595,   nil,   nil,   nil,
-   595,   nil,   595,   595,   595,   595,   595,   595,   595,   nil,
-   nil,   nil,   nil,   nil,   595,   595,   595,   595,   595,   595,
-   595,   nil,   nil,   595,   nil,   nil,   nil,   nil,   nil,   nil,
-   595,   nil,   nil,   595,   595,   595,   595,   595,   595,   595,
-   595,   nil,   595,   595,   595,   nil,   595,   595,   nil,   595,
-   595,   595,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   595,   nil,   nil,   595,   nil,   nil,   595,   595,   nil,
-   nil,   595,   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,   nil,   nil,
-   595,   595,   595,   595,   595,   595,   nil,   nil,   nil,   595,
-   595,   nil,   nil,   nil,   nil,   nil,   nil,   595,   nil,   nil,
-   595,   595,   595,   nil,   595,   595,   nil,   nil,   595,   595,
-   601,   601,   601,   601,   601,   nil,   nil,   nil,   601,   601,
-   nil,   nil,   nil,   601,   nil,   601,   601,   601,   601,   601,
-   601,   601,   nil,   nil,   nil,   nil,   nil,   601,   601,   601,
-   601,   601,   601,   601,   nil,   nil,   601,   nil,   nil,   nil,
-   nil,   nil,   601,   601,   601,   601,   601,   601,   601,   601,
-   601,   601,   601,   601,   nil,   601,   601,   601,   nil,   601,
-   601,   nil,   601,   601,   601,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   601,   nil,   nil,   601,   nil,   nil,
-   601,   601,   nil,   nil,   601,   nil,   601,   nil,   nil,   nil,
-   601,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   601,   nil,
-   nil,   nil,   nil,   601,   601,   601,   601,   601,   601,   nil,
-   nil,   nil,   601,   601,   nil,   nil,   nil,   nil,   nil,   601,
-   601,   nil,   nil,   601,   601,   601,   nil,   601,   601,   nil,
-   nil,   601,   601,   611,   611,   611,   nil,   611,   nil,   nil,
-   nil,   611,   611,   nil,   nil,   nil,   611,   nil,   611,   611,
-   611,   611,   611,   611,   611,   nil,   nil,   nil,   nil,   nil,
-   611,   611,   611,   611,   611,   611,   611,   nil,   nil,   611,
-   nil,   nil,   nil,   nil,   nil,   nil,   611,   nil,   nil,   611,
-   611,   611,   611,   611,   611,   611,   611,   611,   611,   611,
-   611,   nil,   611,   611,   nil,   611,   611,   611,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   611,   nil,   nil,
-   611,   nil,   nil,   611,   611,   nil,   nil,   611,   nil,   611,
-   nil,   611,   nil,   611,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   611,   nil,   nil,   nil,   nil,   611,   611,   611,   611,
-   611,   611,   nil,   nil,   nil,   611,   611,   nil,   nil,   nil,
-   nil,   nil,   nil,   611,   nil,   611,   611,   611,   611,   nil,
-   611,   611,   nil,   nil,   611,   611,   621,   621,   621,   nil,
-   621,   nil,   nil,   nil,   621,   621,   nil,   nil,   nil,   621,
-   nil,   621,   621,   621,   621,   621,   621,   621,   nil,   nil,
-   nil,   nil,   nil,   621,   621,   621,   621,   621,   621,   621,
-   nil,   nil,   621,   nil,   nil,   nil,   nil,   nil,   nil,   621,
-   nil,   nil,   621,   621,   621,   621,   621,   621,   621,   621,
-   nil,   621,   621,   621,   nil,   621,   621,   nil,   621,   621,
-   621,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   621,   nil,   nil,   621,   nil,   nil,   621,   621,   nil,   nil,
-   621,   nil,   nil,   nil,   nil,   nil,   621,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,   621,
-   621,   621,   621,   621,   621,   nil,   nil,   nil,   621,   621,
-   nil,   nil,   nil,   nil,   nil,   nil,   621,   nil,   nil,   621,
-   621,   621,   nil,   621,   621,   nil,   nil,   621,   621,   624,
-   624,   624,   nil,   624,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   624,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   624,   nil,   nil,
-   nil,   nil,   624,   624,   624,   624,   624,   624,   nil,   nil,
-   nil,   624,   624,   nil,   nil,   nil,   nil,   nil,   nil,   624,
-   nil,   nil,   624,   624,   624,   nil,   624,   624,   nil,   nil,
-   624,   624,   627,   627,   627,   nil,   627,   nil,   nil,   nil,
-   627,   627,   nil,   nil,   nil,   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,
-   627,   627,   627,   627,   627,   627,   nil,   627,   627,   627,
-   nil,   627,   627,   nil,   627,   627,   627,   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,   627,   nil,   nil,   627,   nil,   nil,   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,   nil,
-   nil,   nil,   627,   nil,   nil,   627,   627,   627,   nil,   627,
-   627,   nil,   nil,   627,   627,   650,   650,   650,   nil,   650,
-   nil,   nil,   nil,   650,   650,   nil,   nil,   nil,   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,   650,   650,   650,   650,   650,   650,   650,
-   650,   650,   650,   nil,   650,   650,   nil,   650,   650,   650,
-   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,   650,   nil,   nil,   650,
-   nil,   650,   nil,   650,   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,   650,   650,   650,
-   650,   nil,   650,   650,   nil,   nil,   650,   650,   662,   662,
-   662,   nil,   662,   nil,   nil,   nil,   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,   662,   nil,   nil,   nil,
-   nil,   662,   662,   662,   662,   662,   662,   nil,   nil,   nil,
-   662,   662,   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,
-   nil,   662,   662,   662,   nil,   662,   662,   nil,   nil,   662,
-   662,   694,   694,   694,   694,   694,   nil,   nil,   nil,   694,
-   694,   nil,   nil,   nil,   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,   694,   694,   nil,   694,   694,   694,   694,
-   694,   694,   694,   694,   694,   nil,   694,   694,   694,   nil,
-   694,   694,   nil,   694,   694,   694,   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,   694,   nil,   nil,   694,   nil,   694,   nil,   nil,
-   nil,   694,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   694,
-   nil,   nil,   nil,   nil,   694,   694,   694,   694,   694,   694,
-   nil,   nil,   nil,   694,   694,   nil,   nil,   nil,   nil,   nil,
-   nil,   694,   nil,   nil,   694,   694,   694,   nil,   694,   694,
-   nil,   nil,   694,   694,   696,   696,   696,   nil,   696,   nil,
-   nil,   nil,   696,   696,   nil,   nil,   nil,   696,   nil,   696,
-   696,   696,   696,   696,   696,   696,   nil,   nil,   nil,   nil,
-   nil,   696,   696,   696,   696,   696,   696,   696,   nil,   nil,
-   696,   nil,   nil,   nil,   nil,   nil,   nil,   696,   nil,   nil,
-   696,   696,   696,   696,   696,   696,   696,   696,   nil,   696,
-   696,   696,   nil,   696,   696,   nil,   696,   696,   696,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   696,   nil,
-   nil,   696,   nil,   nil,   696,   696,   nil,   nil,   696,   nil,
-   696,   nil,   nil,   nil,   696,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   696,   nil,   nil,   nil,   nil,   696,   696,   696,
-   696,   696,   696,   nil,   nil,   nil,   696,   696,   nil,   nil,
-   nil,   nil,   nil,   nil,   696,   nil,   nil,   696,   696,   696,
-   nil,   696,   696,   nil,   nil,   696,   696,   697,   697,   697,
-   nil,   697,   nil,   nil,   nil,   697,   697,   nil,   nil,   nil,
-   697,   nil,   697,   697,   697,   697,   697,   697,   697,   nil,
-   nil,   nil,   nil,   nil,   697,   697,   697,   697,   697,   697,
-   697,   nil,   nil,   697,   nil,   nil,   nil,   nil,   nil,   nil,
-   697,   nil,   nil,   697,   697,   697,   697,   697,   697,   697,
-   697,   nil,   697,   697,   697,   nil,   697,   697,   nil,   697,
-   697,   697,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   697,   nil,   nil,   697,   nil,   nil,   697,   697,   nil,
-   nil,   697,   nil,   nil,   nil,   nil,   nil,   697,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   697,   nil,   nil,   nil,   nil,
-   697,   697,   697,   697,   697,   697,   nil,   nil,   nil,   697,
-   697,   nil,   nil,   nil,   nil,   nil,   nil,   697,   nil,   nil,
-   697,   697,   697,   nil,   697,   697,   nil,   nil,   697,   697,
-   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,   nil,   698,   698,   698,
-   698,   698,   698,   698,   nil,   nil,   698,   nil,   nil,   nil,
-   nil,   nil,   nil,   698,   nil,   nil,   698,   698,   698,   698,
-   698,   698,   698,   698,   698,   698,   698,   698,   nil,   698,
-   698,   nil,   698,   698,   698,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   698,   nil,   nil,   698,   nil,   nil,
-   698,   698,   nil,   nil,   698,   nil,   698,   nil,   698,   nil,
-   698,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   698,   nil,
-   nil,   nil,   nil,   698,   698,   698,   698,   698,   698,   nil,
-   nil,   nil,   698,   698,   nil,   nil,   nil,   nil,   nil,   nil,
-   698,   nil,   698,   698,   698,   698,   nil,   698,   698,   nil,
-   nil,   698,   698,   701,   701,   701,   701,   701,   nil,   nil,
-   nil,   701,   701,   nil,   nil,   nil,   701,   nil,   701,   701,
-   701,   701,   701,   701,   701,   nil,   nil,   nil,   nil,   nil,
-   701,   701,   701,   701,   701,   701,   701,   nil,   nil,   701,
-   nil,   nil,   nil,   nil,   nil,   701,   701,   nil,   701,   701,
-   701,   701,   701,   701,   701,   701,   701,   nil,   701,   701,
-   701,   nil,   701,   701,   nil,   701,   701,   701,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   701,   nil,   nil,
-   701,   nil,   nil,   701,   701,   nil,   nil,   701,   nil,   701,
-   nil,   nil,   nil,   701,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   701,   nil,   nil,   nil,   nil,   701,   701,   701,   701,
-   701,   701,   nil,   nil,   nil,   701,   701,   nil,   nil,   nil,
-   nil,   nil,   nil,   701,   nil,   nil,   701,   701,   701,   nil,
-   701,   701,   nil,   nil,   701,   701,   702,   702,   702,   nil,
-   702,   nil,   nil,   nil,   702,   702,   nil,   nil,   nil,   702,
-   nil,   702,   702,   702,   702,   702,   702,   702,   nil,   nil,
-   nil,   nil,   nil,   702,   702,   702,   702,   702,   702,   702,
-   nil,   nil,   702,   nil,   nil,   nil,   nil,   nil,   nil,   702,
-   nil,   nil,   702,   702,   702,   702,   702,   702,   702,   702,
-   nil,   702,   702,   702,   nil,   702,   702,   nil,   702,   702,
-   702,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   702,   nil,   nil,   702,   nil,   nil,   702,   702,   nil,   nil,
-   702,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   702,   nil,   nil,   nil,   nil,   702,
-   702,   702,   702,   702,   702,   nil,   nil,   nil,   702,   702,
-   nil,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,   702,
-   702,   702,   nil,   702,   702,   nil,   nil,   702,   702,   705,
-   705,   705,   nil,   705,   nil,   nil,   nil,   705,   705,   nil,
-   nil,   nil,   705,   nil,   705,   705,   705,   705,   705,   705,
-   705,   nil,   nil,   nil,   nil,   nil,   705,   705,   705,   705,
-   705,   705,   705,   nil,   nil,   705,   nil,   nil,   nil,   nil,
-   nil,   nil,   705,   nil,   nil,   705,   705,   705,   705,   705,
-   705,   705,   705,   705,   705,   705,   705,   nil,   705,   705,
-   nil,   705,   705,   705,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   705,   nil,   nil,   705,   nil,   nil,   705,
-   705,   nil,   nil,   705,   nil,   705,   nil,   705,   nil,   705,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   705,   nil,   nil,
-   nil,   nil,   705,   705,   705,   705,   705,   705,   nil,   nil,
-   nil,   705,   705,   nil,   nil,   nil,   nil,   nil,   nil,   705,
-   nil,   705,   705,   705,   705,   nil,   705,   705,   nil,   nil,
-   705,   705,   706,   706,   706,   nil,   706,   nil,   nil,   nil,
-   706,   706,   nil,   nil,   nil,   706,   nil,   706,   706,   706,
-   706,   706,   706,   706,   nil,   nil,   nil,   nil,   nil,   706,
-   706,   706,   706,   706,   706,   706,   nil,   nil,   706,   nil,
-   nil,   nil,   nil,   nil,   nil,   706,   nil,   nil,   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,   nil,   nil,
-   706,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   706,   nil,   706,   706,   706,   706,   nil,   706,
-   706,   nil,   nil,   706,   706,   707,   707,   707,   nil,   707,
-   nil,   nil,   nil,   707,   707,   nil,   nil,   nil,   707,   nil,
-   707,   707,   707,   707,   707,   707,   707,   nil,   nil,   nil,
-   nil,   nil,   707,   707,   707,   707,   707,   707,   707,   nil,
-   nil,   707,   nil,   nil,   nil,   nil,   nil,   nil,   707,   nil,
-   nil,   707,   707,   707,   707,   707,   707,   707,   707,   nil,
-   707,   707,   707,   nil,   707,   707,   nil,   707,   707,   707,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   707,
-   nil,   nil,   707,   nil,   nil,   707,   707,   nil,   nil,   707,
-   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   707,   nil,   nil,   nil,   nil,   707,   707,
-   707,   707,   707,   707,   nil,   nil,   nil,   707,   707,   nil,
-   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,   707,   707,
-   707,   nil,   707,   707,   nil,   nil,   707,   707,   708,   708,
-   708,   nil,   708,   nil,   nil,   nil,   708,   708,   nil,   nil,
-   nil,   708,   nil,   708,   708,   708,   708,   708,   708,   708,
-   nil,   nil,   nil,   nil,   nil,   708,   708,   708,   708,   708,
-   708,   708,   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,
-   nil,   708,   nil,   nil,   708,   708,   708,   708,   708,   708,
-   708,   708,   nil,   708,   708,   708,   nil,   708,   708,   nil,
-   708,   708,   708,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   708,   nil,   nil,   708,   nil,   nil,   708,   708,
-   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,   708,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,   nil,   nil,
-   nil,   708,   708,   708,   708,   708,   708,   nil,   nil,   nil,
-   708,   708,   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,
-   nil,   708,   708,   708,   nil,   708,   708,   nil,   nil,   708,
-   708,   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,   nil,   713,   713,
-   713,   713,   713,   713,   713,   nil,   nil,   713,   nil,   nil,
-   nil,   nil,   nil,   nil,   713,   nil,   nil,   713,   713,   713,
-   713,   713,   713,   713,   713,   nil,   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,   nil,   nil,   nil,
-   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,   nil,   nil,   nil,   nil,   nil,
-   nil,   713,   nil,   nil,   713,   713,   713,   nil,   713,   713,
-   nil,   nil,   713,   713,   714,   714,   714,   nil,   714,   nil,
-   nil,   nil,   714,   714,   nil,   nil,   nil,   714,   nil,   714,
-   714,   714,   714,   714,   714,   714,   nil,   nil,   nil,   nil,
-   nil,   714,   714,   714,   714,   714,   714,   714,   nil,   nil,
-   714,   nil,   nil,   nil,   nil,   nil,   nil,   714,   nil,   nil,
-   714,   714,   714,   714,   714,   714,   714,   714,   nil,   714,
-   714,   714,   nil,   714,   714,   nil,   714,   714,   714,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   714,   nil,
-   nil,   714,   nil,   nil,   714,   714,   nil,   nil,   714,   nil,
-   nil,   nil,   nil,   nil,   714,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   714,   nil,   nil,   nil,   nil,   714,   714,   714,
-   714,   714,   714,   nil,   nil,   nil,   714,   714,   nil,   nil,
-   nil,   nil,   nil,   nil,   714,   nil,   nil,   714,   714,   714,
-   nil,   714,   714,   nil,   nil,   714,   714,   721,   721,   721,
-   nil,   721,   nil,   nil,   nil,   721,   721,   nil,   nil,   nil,
-   721,   nil,   721,   721,   721,   721,   721,   721,   721,   nil,
-   nil,   nil,   nil,   nil,   721,   721,   721,   721,   721,   721,
-   721,   nil,   nil,   721,   nil,   nil,   nil,   nil,   nil,   nil,
-   721,   nil,   nil,   721,   721,   721,   721,   721,   721,   721,
-   721,   nil,   721,   721,   721,   nil,   721,   721,   nil,   721,
-   721,   721,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   721,   nil,   nil,   721,   nil,   nil,   721,   721,   nil,
-   nil,   721,   nil,   721,   nil,   nil,   nil,   721,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,   nil,   nil,
-   721,   721,   721,   721,   721,   721,   nil,   nil,   nil,   721,
-   721,   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,
-   721,   721,   721,   nil,   721,   721,   nil,   nil,   721,   721,
-   736,   736,   736,   nil,   736,   nil,   nil,   nil,   736,   736,
-   nil,   nil,   nil,   736,   nil,   736,   736,   736,   736,   736,
-   736,   736,   nil,   nil,   nil,   nil,   nil,   736,   736,   736,
-   736,   736,   736,   736,   nil,   nil,   736,   nil,   nil,   nil,
-   nil,   nil,   nil,   736,   nil,   nil,   736,   736,   736,   736,
-   736,   736,   736,   736,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
-   736,   nil,   nil,   736,   736,   736,   nil,   736,   736,   nil,
-   nil,   736,   736,   760,   760,   760,   nil,   760,   nil,   nil,
-   nil,   760,   760,   nil,   nil,   nil,   760,   nil,   760,   760,
-   760,   760,   760,   760,   760,   nil,   nil,   nil,   nil,   nil,
-   760,   760,   760,   760,   760,   760,   760,   nil,   nil,   760,
-   nil,   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,   760,
-   760,   760,   760,   760,   760,   760,   760,   nil,   760,   760,
-   760,   nil,   760,   760,   nil,   760,   760,   760,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,
-   760,   nil,   nil,   760,   760,   nil,   nil,   760,   nil,   nil,
-   nil,   nil,   nil,   760,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   760,   nil,   nil,   nil,   nil,   760,   760,   760,   760,
-   760,   760,   nil,   nil,   nil,   760,   760,   nil,   nil,   nil,
-   nil,   nil,   nil,   760,   nil,   nil,   760,   760,   760,   nil,
-   760,   760,   nil,   nil,   760,   760,   761,   761,   761,   nil,
-   761,   nil,   nil,   nil,   761,   761,   nil,   nil,   nil,   761,
-   nil,   761,   761,   761,   761,   761,   761,   761,   nil,   nil,
-   nil,   nil,   nil,   761,   761,   761,   761,   761,   761,   761,
-   nil,   nil,   761,   nil,   nil,   nil,   nil,   nil,   nil,   761,
-   nil,   nil,   761,   761,   761,   761,   761,   761,   761,   761,
-   nil,   761,   761,   761,   nil,   761,   761,   nil,   761,   761,
-   761,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   761,   nil,   nil,   761,   nil,   nil,   761,   761,   nil,   nil,
-   761,   nil,   nil,   nil,   nil,   nil,   761,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   761,   nil,   nil,   nil,   nil,   761,
-   761,   761,   761,   761,   761,   nil,   nil,   nil,   761,   761,
-   nil,   nil,   nil,   nil,   nil,   nil,   761,   nil,   nil,   761,
-   761,   761,   nil,   761,   761,   nil,   nil,   761,   761,   816,
-   816,   816,   nil,   816,   nil,   nil,   nil,   816,   816,   nil,
-   nil,   nil,   816,   nil,   816,   816,   816,   816,   816,   816,
-   816,   nil,   nil,   nil,   nil,   nil,   816,   816,   816,   816,
-   816,   816,   816,   nil,   nil,   816,   nil,   nil,   nil,   nil,
-   nil,   nil,   816,   nil,   nil,   816,   816,   816,   816,   816,
-   816,   816,   816,   816,   816,   816,   816,   nil,   816,   816,
-   nil,   816,   816,   816,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   816,   nil,   nil,   816,   nil,   nil,   816,
-   816,   nil,   nil,   816,   nil,   816,   nil,   816,   nil,   816,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,
-   nil,   nil,   816,   816,   816,   816,   816,   816,   nil,   nil,
-   nil,   816,   816,   nil,   nil,   nil,   nil,   nil,   nil,   816,
-   nil,   816,   816,   816,   816,   nil,   816,   816,   nil,   nil,
-   816,   816,   825,   825,   825,   nil,   825,   nil,   nil,   nil,
-   825,   825,   nil,   nil,   nil,   825,   nil,   825,   825,   825,
-   825,   825,   825,   825,   nil,   nil,   nil,   nil,   nil,   825,
-   825,   825,   825,   825,   825,   825,   nil,   nil,   825,   nil,
-   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,   825,   825,
-   825,   825,   825,   825,   825,   825,   nil,   825,   825,   825,
-   nil,   825,   825,   nil,   825,   825,   825,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,   825,
-   nil,   nil,   825,   825,   nil,   nil,   825,   nil,   nil,   nil,
-   nil,   nil,   825,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   825,   nil,   nil,   nil,   nil,   825,   825,   825,   825,   825,
-   825,   nil,   nil,   nil,   825,   825,   nil,   nil,   nil,   nil,
-   nil,   nil,   825,   nil,   nil,   825,   825,   825,   nil,   825,
-   825,   nil,   nil,   825,   825,   828,   828,   828,   nil,   828,
-   nil,   nil,   nil,   828,   828,   nil,   nil,   nil,   828,   nil,
-   828,   828,   828,   828,   828,   828,   828,   nil,   nil,   nil,
-   nil,   nil,   828,   828,   828,   828,   828,   828,   828,   nil,
-   nil,   828,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,
-   nil,   828,   828,   828,   828,   828,   828,   828,   828,   nil,
-   828,   828,   828,   nil,   828,   828,   nil,   828,   828,   828,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   828,
-   nil,   nil,   828,   nil,   nil,   828,   828,   nil,   nil,   828,
-   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,   828,   828,
-   828,   828,   828,   828,   nil,   nil,   nil,   828,   828,   nil,
-   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,   828,
-   828,   nil,   828,   828,   nil,   nil,   828,   828,   850,   850,
-   850,   nil,   850,   nil,   nil,   nil,   850,   850,   nil,   nil,
-   nil,   850,   nil,   850,   850,   850,   850,   850,   850,   850,
-   nil,   nil,   nil,   nil,   nil,   850,   850,   850,   850,   850,
-   850,   850,   nil,   nil,   850,   nil,   nil,   nil,   nil,   nil,
-   nil,   850,   nil,   nil,   850,   850,   850,   850,   850,   850,
-   850,   850,   850,   850,   850,   850,   nil,   850,   850,   nil,
-   850,   850,   850,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   850,   nil,   nil,   850,   nil,   nil,   850,   850,
-   nil,   nil,   850,   nil,   850,   nil,   nil,   nil,   850,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   850,   nil,   nil,   nil,
-   nil,   850,   850,   850,   850,   850,   850,   nil,   nil,   nil,
-   850,   850,   nil,   nil,   nil,   nil,   nil,   nil,   850,   nil,
-   850,   850,   850,   850,   nil,   850,   850,   nil,   nil,   850,
-   850,   853,   853,   853,   nil,   853,   nil,   nil,   nil,   853,
-   853,   nil,   nil,   nil,   853,   nil,   853,   853,   853,   853,
-   853,   853,   853,   nil,   nil,   nil,   nil,   nil,   853,   853,
-   853,   853,   853,   853,   853,   nil,   nil,   853,   nil,   nil,
-   nil,   nil,   nil,   nil,   853,   nil,   nil,   853,   853,   853,
-   853,   853,   853,   853,   853,   853,   853,   853,   853,   nil,
-   853,   853,   nil,   853,   853,   853,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   853,   nil,   nil,   853,   nil,
-   nil,   853,   853,   nil,   nil,   853,   nil,   nil,   nil,   nil,
-   nil,   853,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   853,
-   nil,   nil,   nil,   nil,   853,   853,   853,   853,   853,   853,
-   nil,   nil,   nil,   853,   853,   nil,   nil,   nil,   nil,   nil,
-   nil,   853,   nil,   853,   853,   853,   853,   nil,   853,   853,
-   nil,   nil,   853,   853,   869,   869,   869,   nil,   869,   nil,
-   nil,   nil,   869,   869,   nil,   nil,   nil,   869,   nil,   869,
-   869,   869,   869,   869,   869,   869,   nil,   nil,   nil,   nil,
-   nil,   869,   869,   869,   869,   869,   869,   869,   nil,   nil,
-   869,   nil,   nil,   nil,   nil,   nil,   nil,   869,   nil,   nil,
-   869,   869,   869,   869,   869,   869,   869,   869,   nil,   869,
-   869,   869,   nil,   869,   869,   nil,   869,   869,   869,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   869,   nil,
-   nil,   869,   nil,   nil,   869,   869,   nil,   nil,   869,   nil,
-   869,   nil,   nil,   nil,   869,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   869,   nil,   nil,   nil,   nil,   869,   869,   869,
-   869,   869,   869,   nil,   nil,   nil,   869,   869,   nil,   nil,
-   nil,   nil,   nil,   nil,   869,   nil,   nil,   869,   869,   869,
-   nil,   869,   869,   nil,   nil,   869,   869,   881,   881,   881,
-   nil,   881,   nil,   nil,   nil,   881,   881,   nil,   nil,   nil,
-   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,   881,   881,   881,   881,   881,
-   881,   881,   881,   881,   881,   nil,   881,   881,   nil,   881,
-   881,   881,   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,   881,   nil,
-   nil,   881,   nil,   881,   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,   881,
-   881,   881,   881,   nil,   881,   881,   nil,   nil,   881,   881,
-   900,   900,   900,   nil,   900,   nil,   nil,   nil,   900,   900,
-   nil,   nil,   nil,   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,   900,   900,
-   900,   900,   900,   900,   nil,   900,   900,   900,   nil,   900,
-   900,   nil,   900,   900,   900,   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,   900,   nil,   nil,   900,   nil,   nil,   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,   900,   900,   nil,   900,   900,   nil,
-   nil,   900,   900,   908,   908,   908,   nil,   908,   nil,   nil,
-   nil,   908,   908,   nil,   nil,   nil,   908,   nil,   908,   908,
-   908,   908,   908,   908,   908,   nil,   nil,   nil,   nil,   nil,
-   908,   908,   908,   908,   908,   908,   908,   nil,   nil,   908,
-   nil,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   908,
-   908,   908,   908,   908,   908,   908,   908,   nil,   908,   908,
-   908,   nil,   908,   908,   nil,   908,   908,   908,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,
-   908,   nil,   nil,   908,   908,   nil,   nil,   908,   nil,   nil,
-   nil,   nil,   nil,   908,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   908,   nil,   nil,   nil,   nil,   908,   908,   908,   908,
-   908,   908,   nil,   nil,   nil,   908,   908,   nil,   nil,   nil,
-   nil,   nil,   nil,   908,   nil,   nil,   908,   908,   908,   nil,
-   908,   908,   nil,   nil,   908,   908,   921,   921,   921,   nil,
-   921,   nil,   nil,   nil,   921,   921,   nil,   nil,   nil,   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,   921,   921,   921,   921,   921,   921,
-   nil,   921,   921,   921,   nil,   921,   921,   nil,   921,   921,
-   921,   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,   921,   nil,   nil,
-   921,   nil,   nil,   nil,   nil,   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,
-   921,   921,   nil,   921,   921,   nil,   nil,   921,   921,   922,
-   922,   922,   nil,   922,   nil,   nil,   nil,   922,   922,   nil,
-   nil,   nil,   922,   nil,   922,   922,   922,   922,   922,   922,
-   922,   nil,   nil,   nil,   nil,   nil,   922,   922,   922,   922,
-   922,   922,   922,   nil,   nil,   922,   nil,   nil,   nil,   nil,
-   nil,   nil,   922,   nil,   nil,   922,   922,   922,   922,   922,
-   922,   922,   922,   nil,   922,   922,   922,   nil,   922,   922,
-   nil,   922,   922,   922,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   922,   nil,   nil,   922,   nil,   nil,   922,
-   922,   nil,   nil,   922,   nil,   nil,   nil,   nil,   nil,   922,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   922,   nil,   nil,
-   nil,   nil,   922,   922,   922,   922,   922,   922,   nil,   nil,
-   nil,   922,   922,   nil,   nil,   nil,   nil,   nil,   nil,   922,
-   nil,   nil,   922,   922,   922,   nil,   922,   922,   nil,   nil,
-   922,   922,   952,   952,   952,   nil,   952,   nil,   nil,   nil,
-   952,   952,   nil,   nil,   nil,   952,   nil,   952,   952,   952,
-   952,   952,   952,   952,   nil,   nil,   nil,   nil,   nil,   952,
-   952,   952,   952,   952,   952,   952,   nil,   nil,   952,   nil,
-   nil,   nil,   nil,   nil,   nil,   952,   nil,   nil,   952,   952,
-   952,   952,   952,   952,   952,   952,   nil,   952,   952,   952,
-   nil,   952,   952,   nil,   952,   952,   952,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   952,   nil,   nil,   952,
-   nil,   nil,   952,   952,   nil,   nil,   952,   nil,   nil,   nil,
-   nil,   nil,   952,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   952,   nil,   nil,   nil,   nil,   952,   952,   952,   952,   952,
-   952,   nil,   nil,   nil,   952,   952,   nil,   nil,   nil,   nil,
-   nil,   nil,   952,   nil,   nil,   952,   952,   952,   nil,   952,
-   952,   nil,   nil,   952,   952,   953,   953,   953,   nil,   953,
-   nil,   nil,   nil,   953,   953,   nil,   nil,   nil,   953,   nil,
-   953,   953,   953,   953,   953,   953,   953,   nil,   nil,   nil,
-   nil,   nil,   953,   953,   953,   953,   953,   953,   953,   nil,
-   nil,   953,   nil,   nil,   nil,   nil,   nil,   nil,   953,   nil,
-   nil,   953,   953,   953,   953,   953,   953,   953,   953,   nil,
-   953,   953,   953,   nil,   953,   953,   nil,   953,   953,   953,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   953,
-   nil,   nil,   953,   nil,   nil,   953,   953,   nil,   nil,   953,
-   nil,   nil,   nil,   nil,   nil,   953,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   953,   nil,   nil,   nil,   nil,   953,   953,
-   953,   953,   953,   953,   nil,   nil,   nil,   953,   953,   nil,
-   nil,   nil,   nil,   nil,   nil,   953,   nil,   nil,   953,   953,
-   953,   nil,   953,   953,   nil,   nil,   953,   953,   954,   954,
-   954,   nil,   954,   nil,   nil,   nil,   954,   954,   nil,   nil,
-   nil,   954,   nil,   954,   954,   954,   954,   954,   954,   954,
-   nil,   nil,   nil,   nil,   nil,   954,   954,   954,   954,   954,
-   954,   954,   nil,   nil,   954,   nil,   nil,   nil,   nil,   nil,
-   nil,   954,   nil,   nil,   954,   954,   954,   954,   954,   954,
-   954,   954,   nil,   954,   954,   954,   nil,   954,   954,   nil,
-   954,   954,   954,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   954,   nil,   nil,   954,   nil,   nil,   954,   954,
-   nil,   nil,   954,   nil,   nil,   nil,   nil,   nil,   954,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   954,   nil,   nil,   nil,
-   nil,   954,   954,   954,   954,   954,   954,   nil,   nil,   nil,
-   954,   954,   nil,   nil,   nil,   nil,   nil,   nil,   954,   nil,
-   nil,   954,   954,   954,   nil,   954,   954,   nil,   nil,   954,
-   954,   955,   955,   955,   nil,   955,   nil,   nil,   nil,   955,
-   955,   nil,   nil,   nil,   955,   nil,   955,   955,   955,   955,
-   955,   955,   955,   nil,   nil,   nil,   nil,   nil,   955,   955,
-   955,   955,   955,   955,   955,   nil,   nil,   955,   nil,   nil,
-   nil,   nil,   nil,   nil,   955,   nil,   nil,   955,   955,   955,
-   955,   955,   955,   955,   955,   nil,   955,   955,   955,   nil,
-   955,   955,   nil,   955,   955,   955,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   955,   nil,   nil,   955,   nil,
-   nil,   955,   955,   nil,   nil,   955,   nil,   nil,   nil,   nil,
-   nil,   955,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   955,
-   nil,   nil,   nil,   nil,   955,   955,   955,   955,   955,   955,
-   nil,   nil,   nil,   955,   955,   nil,   nil,   nil,   nil,   nil,
-   nil,   955,   nil,   nil,   955,   955,   955,   nil,   955,   955,
-   nil,   nil,   955,   955,   956,   956,   956,   nil,   956,   nil,
-   nil,   nil,   956,   956,   nil,   nil,   nil,   956,   nil,   956,
-   956,   956,   956,   956,   956,   956,   nil,   nil,   nil,   nil,
-   nil,   956,   956,   956,   956,   956,   956,   956,   nil,   nil,
-   956,   nil,   nil,   nil,   nil,   nil,   nil,   956,   nil,   nil,
-   956,   956,   956,   956,   956,   956,   956,   956,   nil,   956,
-   956,   956,   nil,   956,   956,   nil,   956,   956,   956,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   956,   nil,
-   nil,   956,   nil,   nil,   956,   956,   nil,   nil,   956,   nil,
-   nil,   nil,   nil,   nil,   956,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   956,   nil,   nil,   nil,   nil,   956,   956,   956,
-   956,   956,   956,   nil,   nil,   nil,   956,   956,   nil,   nil,
-   nil,   nil,   nil,   nil,   956,   nil,   nil,   956,   956,   956,
-   nil,   956,   956,   nil,   nil,   956,   956,   957,   957,   957,
-   nil,   957,   nil,   nil,   nil,   957,   957,   nil,   nil,   nil,
-   957,   nil,   957,   957,   957,   957,   957,   957,   957,   nil,
-   nil,   nil,   nil,   nil,   957,   957,   957,   957,   957,   957,
-   957,   nil,   nil,   957,   nil,   nil,   nil,   nil,   nil,   nil,
-   957,   nil,   nil,   957,   957,   957,   957,   957,   957,   957,
-   957,   nil,   957,   957,   957,   nil,   957,   957,   nil,   957,
-   957,   957,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   957,   nil,   nil,   957,   nil,   nil,   957,   957,   nil,
-   nil,   957,   nil,   nil,   nil,   nil,   nil,   957,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   957,   nil,   nil,   nil,   nil,
-   957,   957,   957,   957,   957,   957,   nil,   nil,   nil,   957,
-   957,   nil,   nil,   nil,   nil,   nil,   nil,   957,   nil,   nil,
-   957,   957,   957,   nil,   957,   957,   nil,   nil,   957,   957,
-   991,   991,   991,   nil,   991,   nil,   nil,   nil,   991,   991,
-   nil,   nil,   nil,   991,   nil,   991,   991,   991,   991,   991,
-   991,   991,   nil,   nil,   nil,   nil,   nil,   991,   991,   991,
-   991,   991,   991,   991,   nil,   nil,   991,   nil,   nil,   nil,
-   nil,   nil,   nil,   991,   nil,   nil,   991,   991,   991,   991,
-   991,   991,   991,   991,   nil,   991,   991,   991,   nil,   991,
-   991,   nil,   991,   991,   991,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   991,   nil,   nil,   991,   nil,   nil,
-   991,   991,   nil,   nil,   991,   nil,   nil,   nil,   nil,   nil,
-   991,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   991,   nil,
-   nil,   nil,   nil,   991,   991,   991,   991,   991,   991,   nil,
-   nil,   nil,   991,   991,   nil,   nil,   nil,   nil,   nil,   nil,
-   991,   nil,   nil,   991,   991,   991,   nil,   991,   991,   nil,
-   nil,   991,   991,   997,   997,   997,   nil,   997,   nil,   nil,
-   nil,   997,   997,   nil,   nil,   nil,   997,   nil,   997,   997,
-   997,   997,   997,   997,   997,   nil,   nil,   nil,   nil,   nil,
-   997,   997,   997,   997,   997,   997,   997,   nil,   nil,   997,
-   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,
-   997,   997,   997,   997,   997,   997,   997,   nil,   997,   997,
-   997,   nil,   997,   997,   nil,   997,   997,   997,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,   nil,
-   997,   nil,   nil,   997,   997,   nil,   nil,   997,   nil,   nil,
-   nil,   nil,   nil,   997,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   997,   nil,   nil,   nil,   nil,   997,   997,   997,   997,
-   997,   997,   nil,   nil,   nil,   997,   997,   nil,   nil,   nil,
-   nil,   nil,   nil,   997,   nil,   nil,   997,   997,   997,   nil,
-   997,   997,   nil,   nil,   997,   997,  1023,  1023,  1023,   nil,
-  1023,   nil,   nil,   nil,  1023,  1023,   nil,   nil,   nil,  1023,
-   nil,  1023,  1023,  1023,  1023,  1023,  1023,  1023,   nil,   nil,
-   nil,   nil,   nil,  1023,  1023,  1023,  1023,  1023,  1023,  1023,
-   nil,   nil,  1023,   nil,   nil,   nil,   nil,   nil,   nil,  1023,
-   nil,   nil,  1023,  1023,  1023,  1023,  1023,  1023,  1023,  1023,
-   nil,  1023,  1023,  1023,   nil,  1023,  1023,   nil,  1023,  1023,
-  1023,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1023,   nil,   nil,  1023,   nil,   nil,  1023,  1023,   nil,   nil,
-  1023,   nil,   nil,   nil,   nil,   nil,  1023,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1023,   nil,   nil,   nil,   nil,  1023,
-  1023,  1023,  1023,  1023,  1023,   nil,   nil,   nil,  1023,  1023,
-   nil,   nil,   nil,   nil,   nil,   nil,  1023,   nil,   nil,  1023,
-  1023,  1023,   nil,  1023,  1023,   nil,   nil,  1023,  1023,  1032,
-  1032,  1032,   nil,  1032,   nil,   nil,   nil,  1032,  1032,   nil,
-   nil,   nil,  1032,   nil,  1032,  1032,  1032,  1032,  1032,  1032,
-  1032,   nil,   nil,   nil,   nil,   nil,  1032,  1032,  1032,  1032,
-  1032,  1032,  1032,   nil,   nil,  1032,   nil,   nil,   nil,   nil,
-   nil,   nil,  1032,   nil,   nil,  1032,  1032,  1032,  1032,  1032,
-  1032,  1032,  1032,   nil,  1032,  1032,  1032,   nil,  1032,  1032,
-   nil,  1032,  1032,  1032,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1032,   nil,   nil,  1032,   nil,   nil,  1032,
-  1032,   nil,   nil,  1032,   nil,   nil,   nil,   nil,   nil,  1032,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1032,   nil,   nil,
-   nil,   nil,  1032,  1032,  1032,  1032,  1032,  1032,   nil,   nil,
-   nil,  1032,  1032,   nil,   nil,   nil,   nil,   nil,   nil,  1032,
-   nil,   nil,  1032,  1032,  1032,   nil,  1032,  1032,   nil,   nil,
-  1032,  1032,  1041,  1041,  1041,   nil,  1041,   nil,   nil,   nil,
-  1041,  1041,   nil,   nil,   nil,  1041,   nil,  1041,  1041,  1041,
-  1041,  1041,  1041,  1041,   nil,   nil,   nil,   nil,   nil,  1041,
-  1041,  1041,  1041,  1041,  1041,  1041,   nil,   nil,  1041,   nil,
-   nil,   nil,   nil,   nil,   nil,  1041,   nil,   nil,  1041,  1041,
-  1041,  1041,  1041,  1041,  1041,  1041,   nil,  1041,  1041,  1041,
-   nil,  1041,  1041,   nil,  1041,  1041,  1041,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1041,   nil,   nil,  1041,
-   nil,   nil,  1041,  1041,   nil,   nil,  1041,   nil,   nil,   nil,
-   nil,   nil,  1041,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1041,   nil,   nil,   nil,   nil,  1041,  1041,  1041,  1041,  1041,
-  1041,   nil,   nil,   nil,  1041,  1041,   nil,   nil,   nil,   nil,
-   nil,   nil,  1041,   nil,   nil,  1041,  1041,  1041,   nil,  1041,
-  1041,   nil,   nil,  1041,  1041,  1060,  1060,  1060,   nil,  1060,
-   nil,   nil,   nil,  1060,  1060,   nil,   nil,   nil,  1060,   nil,
-  1060,  1060,  1060,  1060,  1060,  1060,  1060,   nil,   nil,   nil,
-   nil,   nil,  1060,  1060,  1060,  1060,  1060,  1060,  1060,   nil,
-   nil,  1060,   nil,   nil,   nil,   nil,   nil,   nil,  1060,   nil,
-   nil,  1060,  1060,  1060,  1060,  1060,  1060,  1060,  1060,  1060,
-  1060,  1060,  1060,   nil,  1060,  1060,   nil,  1060,  1060,  1060,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1060,
-   nil,   nil,  1060,   nil,   nil,  1060,  1060,   nil,   nil,  1060,
-   nil,   nil,   nil,  1060,   nil,  1060,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1060,   nil,   nil,   nil,   nil,  1060,  1060,
-  1060,  1060,  1060,  1060,   nil,   nil,   nil,  1060,  1060,   nil,
-   nil,   nil,   nil,   nil,   nil,  1060,   nil,  1060,  1060,  1060,
-  1060,   nil,  1060,  1060,   nil,   nil,  1060,  1060,  1084,  1084,
-  1084,   nil,  1084,   nil,   nil,   nil,  1084,  1084,   nil,   nil,
-   nil,  1084,   nil,  1084,  1084,  1084,  1084,  1084,  1084,  1084,
-   nil,   nil,   nil,   nil,   nil,  1084,  1084,  1084,  1084,  1084,
-  1084,  1084,   nil,   nil,  1084,   nil,   nil,   nil,   nil,   nil,
-   nil,  1084,   nil,   nil,  1084,  1084,  1084,  1084,  1084,  1084,
-  1084,  1084,   nil,  1084,  1084,  1084,   nil,  1084,  1084,   nil,
-  1084,  1084,  1084,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1084,   nil,   nil,  1084,   nil,   nil,  1084,  1084,
-   nil,   nil,  1084,   nil,   nil,   nil,   nil,   nil,  1084,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1084,   nil,   nil,   nil,
-   nil,  1084,  1084,  1084,  1084,  1084,  1084,   nil,   nil,   nil,
-  1084,  1084,   nil,   nil,   nil,   nil,   nil,   nil,  1084,   nil,
-   nil,  1084,  1084,  1084,   nil,  1084,  1084,   nil,   nil,  1084,
-  1084,  1142,  1142,  1142,   nil,  1142,   nil,   nil,   nil,  1142,
-  1142,   nil,   nil,   nil,  1142,   nil,  1142,  1142,  1142,  1142,
-  1142,  1142,  1142,   nil,   nil,   nil,   nil,   nil,  1142,  1142,
-  1142,  1142,  1142,  1142,  1142,   nil,   nil,  1142,   nil,   nil,
-   nil,   nil,   nil,   nil,  1142,   nil,   nil,  1142,  1142,  1142,
-  1142,  1142,  1142,  1142,  1142,   nil,  1142,  1142,  1142,   nil,
-  1142,  1142,   nil,  1142,  1142,  1142,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1142,   nil,   nil,  1142,   nil,
-   nil,  1142,  1142,   nil,   nil,  1142,   nil,  1142,   nil,   nil,
-   nil,  1142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1142,
-   nil,   nil,   nil,   nil,  1142,  1142,  1142,  1142,  1142,  1142,
-   nil,   nil,   nil,  1142,  1142,   nil,   nil,   nil,   nil,   nil,
-   nil,  1142,   nil,   nil,  1142,  1142,  1142,   nil,  1142,  1142,
-   nil,   nil,  1142,  1142,  1203,  1203,  1203,   nil,  1203,   nil,
-   nil,   nil,  1203,  1203,   nil,   nil,   nil,  1203,   nil,  1203,
-  1203,  1203,  1203,  1203,  1203,  1203,   nil,   nil,   nil,   nil,
-   nil,  1203,  1203,  1203,  1203,  1203,  1203,  1203,   nil,   nil,
-  1203,   nil,   nil,   nil,   nil,   nil,   nil,  1203,   nil,   nil,
-  1203,  1203,  1203,  1203,  1203,  1203,  1203,  1203,   nil,  1203,
-  1203,  1203,   nil,  1203,  1203,   nil,  1203,  1203,  1203,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1203,   nil,
-   nil,  1203,   nil,   nil,  1203,  1203,   nil,   nil,  1203,   nil,
-   nil,   nil,   nil,   nil,  1203,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1203,   nil,   nil,   nil,   nil,  1203,  1203,  1203,
-  1203,  1203,  1203,   nil,   nil,   nil,  1203,  1203,   nil,   nil,
-   nil,   nil,   nil,   nil,  1203,   nil,   nil,  1203,  1203,  1203,
-   nil,  1203,  1203,   nil,   nil,  1203,  1203,  1204,  1204,  1204,
-   nil,  1204,   nil,   nil,   nil,  1204,  1204,   nil,   nil,   nil,
-  1204,   nil,  1204,  1204,  1204,  1204,  1204,  1204,  1204,   nil,
-   nil,   nil,   nil,   nil,  1204,  1204,  1204,  1204,  1204,  1204,
-  1204,   nil,   nil,  1204,   nil,   nil,   nil,   nil,   nil,   nil,
-  1204,   nil,   nil,  1204,  1204,  1204,  1204,  1204,  1204,  1204,
-  1204,   nil,  1204,  1204,  1204,   nil,  1204,  1204,   nil,  1204,
-  1204,  1204,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1204,   nil,   nil,  1204,   nil,   nil,  1204,  1204,   nil,
-   nil,  1204,   nil,   nil,   nil,   nil,   nil,  1204,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1204,   nil,   nil,   nil,   nil,
-  1204,  1204,  1204,  1204,  1204,  1204,   nil,   nil,   nil,  1204,
-  1204,   nil,   nil,   nil,   nil,   nil,   nil,  1204,   nil,   nil,
-  1204,  1204,  1204,   nil,  1204,  1204,   nil,   nil,  1204,  1204,
-  1206,  1206,  1206,   nil,  1206,   nil,   nil,   nil,  1206,  1206,
-   nil,   nil,   nil,  1206,   nil,  1206,  1206,  1206,  1206,  1206,
-  1206,  1206,   nil,   nil,   nil,   nil,   nil,  1206,  1206,  1206,
-  1206,  1206,  1206,  1206,   nil,   nil,  1206,   nil,   nil,   nil,
-   nil,   nil,   nil,  1206,   nil,   nil,  1206,  1206,  1206,  1206,
-  1206,  1206,  1206,  1206,   nil,  1206,  1206,  1206,   nil,  1206,
-  1206,   nil,  1206,  1206,  1206,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1206,   nil,   nil,  1206,   nil,   nil,
-  1206,  1206,   nil,   nil,  1206,   nil,   nil,   nil,   nil,   nil,
-  1206,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1206,   nil,
-   nil,   nil,   nil,  1206,  1206,  1206,  1206,  1206,  1206,   nil,
-   nil,   nil,  1206,  1206,   nil,   nil,   nil,   nil,   nil,   nil,
-  1206,   nil,   nil,  1206,  1206,  1206,   nil,  1206,  1206,   nil,
-   nil,  1206,  1206,  1219,  1219,  1219,   nil,  1219,   nil,   nil,
-   nil,  1219,  1219,   nil,   nil,   nil,  1219,   nil,  1219,  1219,
-  1219,  1219,  1219,  1219,  1219,   nil,   nil,   nil,   nil,   nil,
-  1219,  1219,  1219,  1219,  1219,  1219,  1219,   nil,   nil,  1219,
-   nil,   nil,   nil,   nil,   nil,   nil,  1219,   nil,   nil,  1219,
-  1219,  1219,  1219,  1219,  1219,  1219,  1219,  1219,  1219,  1219,
-  1219,   nil,  1219,  1219,   nil,  1219,  1219,  1219,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1219,   nil,   nil,
-  1219,   nil,   nil,  1219,  1219,   nil,   nil,  1219,   nil,  1219,
-   nil,  1219,   nil,  1219,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1219,   nil,   nil,   nil,   nil,  1219,  1219,  1219,  1219,
-  1219,  1219,   nil,   nil,   nil,  1219,  1219,   nil,   nil,   nil,
-   nil,   nil,   nil,  1219,   nil,  1219,  1219,  1219,  1219,   nil,
-  1219,  1219,   nil,   nil,  1219,  1219,    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,   nil,    40,    40,    40,    40,    40,    40,    40,
-   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,    40,
-   nil,   nil,    40,    40,    40,    40,    40,    40,    40,    40,
-   nil,    40,    40,    40,   nil,    40,    40,   nil,   nil,   nil,
-    40,   nil,   nil,   nil,   nil,   nil,  1071,   nil,  1071,  1071,
-  1071,  1071,  1071,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    40,   nil,  1071,    40,   nil,   nil,    40,    40,   nil,   nil,
-    40,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1071,   nil,   nil,   nil,   nil,    40,
-    40,    40,    40,    40,    40,  1071,  1071,   nil,    40,    40,
-   nil,   nil,   nil,   nil,   nil,   nil,    40,   nil,   nil,    40,
-    40,    40,   nil,    40,    40,    41,    41,    41,   nil,    41,
-   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,    41,  1071,
-    41,    41,    41,    41,    41,    41,    41,   nil,   nil,  1071,
-   nil,   nil,    41,    41,    41,    41,    41,    41,    41,   nil,
-   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
-   nil,    41,    41,    41,    41,    41,    41,    41,    41,   nil,
-    41,    41,    41,   nil,    41,    41,   nil,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,  1073,   nil,  1073,  1073,  1073,
-  1073,  1073,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
-   nil,  1073,    41,   nil,   nil,    41,    41,   nil,   nil,    41,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1073,   nil,   nil,   nil,   nil,    41,    41,
-    41,    41,    41,    41,  1073,  1073,   nil,    41,    41,   nil,
-   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,    41,    41,
-    41,   nil,    41,    41,    77,    77,    77,   nil,    77,   nil,
-   nil,   nil,    77,    77,   nil,   nil,   nil,    77,  1073,    77,
-    77,    77,    77,    77,    77,    77,   nil,   nil,  1073,   nil,
-   nil,    77,    77,    77,    77,    77,    77,    77,   nil,   nil,
-    77,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
-    77,    77,    77,    77,    77,    77,    77,    77,   nil,    77,
-    77,    77,   nil,    77,    77,   nil,   nil,   nil,    77,   nil,
-   nil,   nil,   nil,   nil,  1075,   nil,  1075,  1075,  1075,  1075,
-  1075,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
-  1075,    77,   nil,   nil,    77,    77,   nil,   nil,    77,   nil,
-    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1075,   nil,   nil,   nil,   nil,    77,    77,    77,
-    77,    77,    77,  1075,  1075,   nil,    77,    77,   nil,   nil,
-   nil,   nil,   nil,   nil,    77,   nil,   nil,    77,    77,    77,
-   nil,    77,    77,   351,   351,   351,   nil,   351,   nil,   nil,
-   nil,   351,   351,   nil,   nil,   nil,   351,  1075,   351,   351,
-   351,   351,   351,   351,   351,   nil,   nil,  1075,   nil,   nil,
-   351,   351,   351,   351,   351,   351,   351,   nil,   nil,   351,
-   nil,   nil,   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,
-   351,   351,   351,   351,   351,   351,   351,   nil,   351,   351,
-   351,   nil,   351,   351,   nil,   nil,   nil,   351,   nil,   nil,
-   nil,   nil,   nil,  1223,   nil,  1223,  1223,  1223,  1223,  1223,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   351,   nil,  1223,
-   351,   nil,   nil,   351,   351,   nil,   nil,   351,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1223,   nil,   nil,   nil,   nil,   351,   351,   351,   351,
-   351,   351,  1223,  1223,   nil,   351,   351,   nil,   nil,   nil,
-   351,   nil,   nil,   351,   nil,   nil,   351,   351,   351,   nil,
-   351,   351,   370,   370,   370,   nil,   370,   nil,   nil,   nil,
-   370,   370,   nil,   nil,   nil,   370,  1223,   370,   370,   370,
-   370,   370,   370,   370,   nil,   nil,  1223,   nil,   nil,   370,
-   370,   370,   370,   370,   370,   370,   nil,   nil,   370,   nil,
-   nil,   nil,   nil,   nil,   nil,   370,   nil,   nil,   370,   370,
-   370,   370,   370,   370,   370,   370,   nil,   370,   370,   370,
-   nil,   370,   370,   nil,   nil,   nil,   370,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   370,   nil,   nil,   370,
-   nil,   nil,   370,   370,   nil,   nil,   370,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   370,   370,   370,   370,   370,
-   370,   nil,   nil,   nil,   370,   370,   nil,   nil,   nil,   nil,
-   nil,   nil,   370,   nil,   nil,   370,   370,   370,   nil,   370,
-   370,   405,   405,   405,   nil,   405,   nil,   nil,   nil,   405,
-   405,   nil,   nil,   nil,   405,   nil,   405,   405,   405,   405,
-   405,   405,   405,   nil,   nil,   nil,   nil,   nil,   405,   405,
-   405,   405,   405,   405,   405,   nil,   nil,   405,   nil,   nil,
-   nil,   nil,   nil,   nil,   405,   nil,   nil,   405,   405,   405,
-   405,   405,   405,   405,   405,   nil,   405,   405,   405,   nil,
-   405,   405,   nil,   nil,   nil,   405,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   405,   nil,   nil,   405,   nil,
-   nil,   405,   405,   nil,   nil,   405,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   405,   405,   405,   405,   405,   405,
-   nil,   nil,   nil,   405,   405,   nil,   nil,   nil,   nil,   nil,
-   nil,   405,   nil,   nil,   405,   405,   405,   nil,   405,   405,
-   407,   407,   407,   nil,   407,   nil,   nil,   nil,   407,   407,
-   nil,   nil,   nil,   407,   nil,   407,   407,   407,   407,   407,
-   407,   407,   nil,   nil,   nil,   nil,   nil,   407,   407,   407,
-   407,   407,   407,   407,   nil,   nil,   407,   nil,   nil,   nil,
-   nil,   nil,   nil,   407,   nil,   nil,   407,   407,   407,   407,
-   407,   407,   407,   407,   nil,   407,   407,   407,   nil,   407,
-   407,   nil,   nil,   nil,   407,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   407,   nil,   nil,   407,   nil,   nil,
-   407,   407,   nil,   nil,   407,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   407,   407,   407,   407,   407,   407,   nil,
-   nil,   nil,   407,   407,   nil,   nil,   nil,   nil,   nil,   nil,
-   407,   nil,   nil,   407,   407,   407,   nil,   407,   407,   609,
-   609,   609,   nil,   609,   nil,   nil,   nil,   609,   609,   nil,
-   nil,   nil,   609,   nil,   609,   609,   609,   609,   609,   609,
-   609,   nil,   nil,   nil,   nil,   nil,   609,   609,   609,   609,
-   609,   609,   609,   nil,   nil,   609,   nil,   nil,   nil,   nil,
-   nil,   nil,   609,   nil,   nil,   609,   609,   609,   609,   609,
-   609,   609,   609,   nil,   609,   609,   609,   nil,   609,   609,
-   nil,   nil,   nil,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   609,   nil,   nil,   609,   nil,   nil,   609,
-   609,   nil,   nil,   609,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   609,   609,   609,   609,   609,   609,   nil,   nil,
-   nil,   609,   609,   nil,   nil,   nil,   nil,   nil,   nil,   609,
-   nil,   nil,   609,   609,   609,   nil,   609,   609,   618,   618,
-   618,   nil,   618,   nil,   nil,   nil,   618,   618,   nil,   nil,
-   nil,   618,   nil,   618,   618,   618,   618,   618,   618,   618,
-   nil,   nil,   nil,   nil,   nil,   618,   618,   618,   618,   618,
-   618,   618,   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,
-   nil,   618,   nil,   nil,   618,   618,   618,   618,   618,   618,
-   618,   618,   nil,   618,   618,   618,   nil,   618,   618,   nil,
-   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   618,   nil,   nil,   618,   nil,   nil,   618,   618,
-   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   618,   618,   618,   618,   618,   618,   nil,   nil,   nil,
-   618,   618,   nil,   nil,   nil,   nil,   nil,   nil,   618,   nil,
-   nil,   618,   618,   618,   nil,   618,   618,   832,   832,   832,
-   nil,   832,   nil,   nil,   nil,   832,   832,   nil,   nil,   nil,
-   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,   832,   832,   832,   832,   832,
-   832,   nil,   832,   832,   832,   nil,   832,   832,   nil,   nil,
-   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   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,   832,   832,   nil,   832,   832,   843,   843,   843,   nil,
-   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,   nil,   843,
-   nil,   nil,   843,   843,   843,   843,   843,   843,   843,   843,
-   nil,   843,   843,   843,   nil,   843,   843,   nil,   nil,   nil,
-   843,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   843,   nil,   nil,   843,   nil,   nil,   843,   843,   nil,   nil,
-   843,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   843,
-   843,   843,   843,   843,   843,   nil,   nil,   nil,   843,   843,
-   nil,   nil,   nil,   nil,   nil,   nil,   843,   nil,   nil,   843,
-   843,   843,   nil,   843,   843,  1066,  1066,  1066,   nil,  1066,
-   nil,   nil,   nil,  1066,  1066,   nil,   nil,   nil,  1066,   nil,
-  1066,  1066,  1066,  1066,  1066,  1066,  1066,   nil,   nil,   nil,
-   nil,   nil,  1066,  1066,  1066,  1066,  1066,  1066,  1066,   nil,
-   nil,  1066,   nil,   nil,   nil,   nil,   nil,   nil,  1066,   nil,
-   nil,  1066,  1066,  1066,  1066,  1066,  1066,  1066,  1066,   nil,
-  1066,  1066,  1066,   nil,  1066,  1066,   nil,   nil,   nil,  1066,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1066,
-   nil,   nil,  1066,   nil,   nil,  1066,  1066,   nil,   nil,  1066,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1066,  1066,
-  1066,  1066,  1066,  1066,   nil,   nil,   nil,  1066,  1066,   nil,
-   nil,   nil,   nil,   nil,   nil,  1066,   nil,   nil,  1066,  1066,
-  1066,   nil,  1066,  1066,  1127,  1127,  1127,   nil,  1127,   nil,
-   nil,   nil,  1127,  1127,   nil,   nil,   nil,  1127,   nil,  1127,
-  1127,  1127,  1127,  1127,  1127,  1127,   nil,   nil,   nil,   nil,
-   nil,  1127,  1127,  1127,  1127,  1127,  1127,  1127,   nil,   nil,
-  1127,   nil,   nil,   nil,   nil,   nil,   nil,  1127,   nil,   nil,
-  1127,  1127,  1127,  1127,  1127,  1127,  1127,  1127,   nil,  1127,
-  1127,  1127,   nil,  1127,  1127,   nil,   nil,   nil,  1127,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1127,   nil,
-   nil,  1127,   nil,   nil,  1127,  1127,   nil,   nil,  1127,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1127,  1127,  1127,
-  1127,  1127,  1127,   nil,   nil,   nil,  1127,  1127,   nil,   nil,
-   nil,   nil,   nil,   nil,  1127,   nil,   nil,  1127,  1127,  1127,
-   nil,  1127,  1127,  1197,  1197,  1197,   nil,  1197,   nil,   nil,
-   nil,  1197,  1197,   nil,   nil,   nil,  1197,   nil,  1197,  1197,
-  1197,  1197,  1197,  1197,  1197,   nil,   nil,   nil,   nil,   nil,
-  1197,  1197,  1197,  1197,  1197,  1197,  1197,   nil,   nil,  1197,
-   nil,   nil,   nil,   nil,   nil,   nil,  1197,   nil,   nil,  1197,
-  1197,  1197,  1197,  1197,  1197,  1197,  1197,   nil,  1197,  1197,
-  1197,   nil,  1197,  1197,   nil,   nil,   nil,  1197,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1197,   nil,   nil,
-  1197,   nil,   nil,  1197,  1197,   nil,   nil,  1197,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1197,  1197,  1197,  1197,
-  1197,  1197,   nil,   nil,   nil,  1197,  1197,   nil,   nil,   nil,
-   nil,   nil,   nil,  1197,   nil,   nil,  1197,  1197,  1197,   nil,
-  1197,  1197,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,    11,
-    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
-   nil,   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,
-    11,    11,    11,    11,   nil,    11,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,
-    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,
-   nil,    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
-   nil,    11,    11,    11,    11,    11,    11,    11,    11,    11,
-    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    11,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
-   nil,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
-    12,    12,   nil,   nil,   nil,   nil,   nil,    12,    12,    12,
-    12,    12,    12,    12,    12,    12,   nil,   nil,    12,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,
-    12,    12,    12,    12,    12,    12,    12,   nil,   nil,    12,
-    12,   nil,   nil,   nil,    12,    12,    12,    12,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
-    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    27,    27,
-    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
-    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
-    27,    27,   nil,   nil,   nil,    27,    27,    27,    27,    27,
-    27,    27,    27,    27,    27,   nil,   nil,   nil,   nil,   nil,
-    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
-    27,    27,   nil,    27,   nil,   nil,   nil,   nil,   nil,   nil,
-    27,    27,   nil,    27,    27,    27,    27,    27,    27,    27,
-   nil,   nil,    27,    27,   nil,   nil,   nil,    27,    27,    27,
-    27,   nil,   nil,   nil,   nil,   nil,    27,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    27,    27,   nil,    27,    27,    27,
-    27,    27,    27,    27,    27,    27,    27,    27,   nil,   nil,
-    27,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    27,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   109,   109,   109,   109,   109,   nil,   nil,   nil,   109,   109,
-   109,   109,   109,   109,   109,   109,   109,   109,   nil,   nil,
-   nil,   nil,   nil,   109,   109,   109,   109,   109,   109,   109,
-   109,   109,   109,   109,   109,   nil,   109,   nil,   nil,   nil,
-   nil,   nil,   nil,   109,   109,   nil,   109,   109,   109,   109,
-   109,   109,   109,   nil,   nil,   109,   109,   nil,   nil,   nil,
-   109,   109,   109,   109,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,   109,   nil,
-   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
-   109,   nil,   nil,   109,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   109,   443,   443,   443,   443,   443,   443,
-   443,   443,   443,   443,   443,   443,   443,   443,   443,   443,
-   443,   443,   443,   443,   443,   443,   443,   443,   nil,   nil,
-   nil,   443,   443,   443,   443,   443,   443,   443,   443,   443,
-   443,   nil,   nil,   nil,   nil,   nil,   443,   443,   443,   443,
-   443,   443,   443,   443,   443,   nil,   nil,   443,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   443,   443,   nil,   443,
-   443,   443,   443,   443,   443,   443,   nil,   nil,   443,   443,
-   nil,   nil,   nil,   443,   443,   443,   443,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   443,   443,   nil,   443,   443,   443,   443,   443,   443,   443,
-   443,   443,   443,   443,   nil,   nil,   443,   443,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   443,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   443,   692,   692,   692,
-   692,   692,   692,   692,   692,   692,   692,   692,   692,   692,
-   692,   692,   692,   692,   692,   692,   692,   692,   692,   692,
-   692,   nil,   nil,   nil,   692,   692,   692,   692,   692,   692,
-   692,   692,   692,   692,   nil,   nil,   nil,   nil,   nil,   692,
-   692,   692,   692,   692,   692,   692,   692,   692,   nil,   nil,
-   692,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   692,
-   692,   nil,   692,   692,   692,   692,   692,   692,   692,   nil,
-   nil,   692,   692,   nil,   nil,   nil,   692,   692,   692,   692,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   692,   692,   nil,   692,   692,   692,   692,
-   692,   692,   692,   692,   692,   692,   692,   nil,   nil,   692,
-   692,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   692,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   692,
-   808,   808,   808,   808,   808,   808,   808,   808,   808,   808,
-   808,   808,   808,   808,   808,   808,   808,   808,   808,   808,
-   808,   808,   808,   808,   nil,   nil,   nil,   808,   808,   808,
-   808,   808,   808,   808,   808,   808,   808,   nil,   nil,   nil,
-   nil,   nil,   808,   808,   808,   808,   808,   808,   808,   808,
-   808,   nil,   nil,   808,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   808,   808,   nil,   808,   808,   808,   808,   808,
-   808,   808,   nil,   nil,   808,   808,   nil,   nil,   nil,   808,
-   808,   808,   808,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   808,   808,   nil,   808,
-   808,   808,   808,   808,   808,   808,   808,   808,   808,   808,
-   nil,   nil,   808,   nil,   nil,   nil,   nil,   544,   544,   544,
-   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   808,   544,   544,   544,   544,   nil,   nil,   nil,
-   544,   544,   nil,   nil,   nil,   nil,   544,   544,   nil,   nil,
-   nil,   544,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   544,   nil,   nil,   544,   nil,   nil,   nil,   544,   nil,
-   nil,   544,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   nil,
-   544,   544,   544,   544,   544,   544,   nil,   nil,   nil,   544,
-   544,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   544,
-   544,   544,   544,   nil,   544,   544,   nil,   nil,   544,   544,
-   545,   545,   545,   545,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   545,   545,   545,   545,
-   nil,   nil,   nil,   545,   545,   nil,   nil,   nil,   nil,   545,
-   545,   nil,   nil,   nil,   545,   545,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   545,   nil,   nil,   545,   nil,   nil,
-   nil,   545,   nil,   nil,   545,   nil,   545,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   545,
-   nil,   nil,   nil,   545,   545,   545,   545,   545,   545,   nil,
-   nil,   nil,   545,   545,   nil,   nil,   nil,   nil,   nil,   nil,
-   545,   nil,   545,   545,   545,   545,   nil,   545,   545,   nil,
-   nil,   545,   545,   773,   773,   773,   773,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   773,
-   773,   773,   773,   nil,   nil,   nil,   773,   nil,   nil,   nil,
-   nil,   nil,   773,   773,   nil,   nil,   nil,   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,   nil,   773,   nil,   nil,   773,   nil,   773,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   773,   nil,   nil,   nil,   773,   773,   773,   773,
-   773,   773,   nil,   nil,   nil,   773,   773,   773,   nil,   nil,
-   nil,   nil,   nil,   773,   nil,   nil,   773,   773,   773,   nil,
-   773,   773,   nil,   nil,   773,   773,   781,   781,   781,   781,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   781,   781,   781,   781,   nil,   nil,   nil,   781,
-   nil,   nil,   nil,   nil,   nil,   781,   781,   nil,   nil,   nil,
-   781,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   781,   nil,   nil,   781,   nil,   nil,   nil,   781,   nil,   nil,
-   781,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   781,   nil,   nil,   nil,   781,
-   781,   781,   781,   781,   781,   nil,   nil,   nil,   781,   781,
-   nil,   nil,   nil,   nil,   nil,   nil,   781,   nil,   nil,   781,
-   781,   781,   nil,   781,   781,   nil,   nil,   781,   781,   959,
-   959,   959,   959,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   959,   959,   959,   959,   nil,
-   nil,   nil,   959,   nil,   nil,   nil,   nil,   nil,   959,   959,
-   nil,   nil,   nil,   959,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   959,   nil,   nil,   959,   nil,   nil,   nil,
-   959,   nil,   nil,   959,   nil,   959,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   959,   nil,
-   nil,   nil,   959,   959,   959,   959,   959,   959,   nil,   nil,
-   nil,   959,   959,   nil,   nil,   nil,   nil,   nil,   nil,   959,
-   nil,   nil,   959,   959,   959,   nil,   959,   959,   nil,   nil,
-   959,   959,   961,   961,   961,   961,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   961,   961,
-   961,   961,   nil,   nil,   nil,   961,   nil,   nil,   nil,   nil,
-   nil,   961,   961,   nil,   nil,   nil,   961,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   961,   nil,   nil,   961,
-   nil,   nil,   nil,   961,   nil,   nil,   961,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   961,   nil,   nil,   nil,   961,   961,   961,   961,   961,
-   961,   nil,   nil,   nil,   961,   961,   nil,   nil,   nil,   nil,
-   nil,   nil,   961,   nil,   nil,   961,   961,   961,   nil,   961,
-   961,   nil,   nil,   961,   961,   964,   964,   964,   964,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   964,   964,   964,   964,   nil,   nil,   nil,   964,   964,
-   nil,   nil,   nil,   nil,   964,   964,   nil,   nil,   nil,   964,
-   964,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,
-   nil,   nil,   964,   nil,   nil,   nil,   964,   nil,   nil,   964,
-   nil,   964,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   964,   nil,   nil,   nil,   964,   964,
-   964,   964,   964,   964,   nil,   nil,   nil,   964,   964,   nil,
-   nil,   nil,   nil,   nil,   nil,   964,   nil,   964,   964,   964,
-   964,   nil,   964,   964,   nil,   nil,   964,   964,   965,   965,
-   965,   965,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   965,   965,   965,   965,   nil,   nil,
-   nil,   965,   965,   nil,   nil,   nil,   nil,   965,   965,   nil,
-   nil,   nil,   965,   965,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   965,   nil,   nil,   965,   nil,   nil,   nil,   965,
-   nil,   nil,   965,   nil,   965,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,   nil,
-   nil,   965,   965,   965,   965,   965,   965,   nil,   nil,   nil,
-   965,   965,   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,
-   965,   965,   965,   965,   nil,   965,   965,   nil,   nil,   965,
-   965,   971,   971,   971,   971,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   971,   971,   971,
-   971,   nil,   nil,   nil,   971,   nil,   nil,   nil,   nil,   nil,
-   971,   971,   nil,   nil,   nil,   971,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   971,   nil,   nil,   971,   nil,
-   nil,   nil,   971,   nil,   nil,   971,   nil,   971,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   971,   nil,   nil,   nil,   971,   971,   971,   971,   971,   971,
-   nil,   nil,   nil,   971,   971,   nil,   nil,   nil,   nil,   nil,
-   nil,   971,   nil,   nil,   971,   971,   971,   nil,   971,   971,
-   nil,   nil,   971,   971,   977,   977,   977,   977,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   977,   977,   977,   977,   nil,   nil,   nil,   977,   nil,   nil,
-   nil,   nil,   nil,   977,   977,   nil,   nil,   nil,   977,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   977,   nil,
-   nil,   977,   nil,   nil,   nil,   977,   nil,   nil,   977,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   977,   nil,   nil,   nil,   977,   977,   977,
-   977,   977,   977,   nil,   nil,   nil,   977,   977,   nil,   nil,
-   nil,   nil,   nil,   nil,   977,   nil,   nil,   977,   977,   977,
-   nil,   977,   977,   nil,   nil,   977,   977,   978,   978,   978,
-   978,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   978,   978,   978,   978,   nil,   nil,   nil,
-   978,   nil,   nil,   nil,   nil,   nil,   978,   978,   nil,   nil,
-   nil,   978,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   978,   nil,   nil,   978,   nil,   nil,   nil,   978,   nil,
-   nil,   978,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   978,   nil,   nil,   nil,
-   978,   978,   978,   978,   978,   978,   nil,   nil,   nil,   978,
-   978,   nil,   nil,   nil,   nil,   nil,   nil,   978,   nil,   nil,
-   978,   978,   978,   nil,   978,   978,   nil,   nil,   978,   978,
-  1030,  1030,  1030,  1030,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1030,  1030,  1030,  1030,
-   nil,   nil,   nil,  1030,  1030,   nil,   nil,   nil,   nil,  1030,
-  1030,   nil,   nil,   nil,  1030,  1030,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,  1030,   nil,   nil,  1030,   nil,   nil,
-   nil,  1030,   nil,   nil,  1030,   nil,  1030,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1030,
-   nil,   nil,   nil,  1030,  1030,  1030,  1030,  1030,  1030,   nil,
-   nil,   nil,  1030,  1030,   nil,   nil,   nil,   nil,   nil,   nil,
-  1030,   nil,  1030,  1030,  1030,  1030,   nil,  1030,  1030,   nil,
-   nil,  1030,  1030,  1169,  1169,  1169,  1169,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1169,
-  1169,  1169,  1169,   nil,   nil,   nil,  1169,   nil,   nil,   nil,
-   nil,   nil,  1169,  1169,   nil,   nil,   nil,  1169,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1169,   nil,   nil,
-  1169,   nil,   nil,   nil,  1169,   nil,   nil,  1169,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1169,   nil,   nil,   nil,  1169,  1169,  1169,  1169,
-  1169,  1169,   nil,   nil,   nil,  1169,  1169,   nil,   nil,   nil,
-   nil,   nil,   nil,  1169,   nil,   nil,  1169,  1169,  1169,   nil,
-  1169,  1169,   nil,   nil,  1169,  1169,  1178,  1178,  1178,  1178,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1178,  1178,  1178,  1178,   nil,   nil,   nil,  1178,
-   nil,   nil,   nil,   nil,   nil,  1178,  1178,   nil,   nil,   nil,
-  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1178,   nil,   nil,  1178,   nil,   nil,   nil,  1178,   nil,   nil,
-  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1178,   nil,   nil,   nil,  1178,
-  1178,  1178,  1178,  1178,  1178,   nil,   nil,   nil,  1178,  1178,
-   nil,   nil,   nil,   nil,   nil,   nil,  1178,   nil,   nil,  1178,
-  1178,  1178,   nil,  1178,  1178,   nil,   nil,  1178,  1178,  1182,
-  1182,  1182,  1182,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1182,  1182,  1182,  1182,   nil,
-   nil,   nil,  1182,   nil,   nil,   nil,   nil,   nil,  1182,  1182,
-   nil,   nil,   nil,  1182,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1182,   nil,   nil,  1182,   nil,   nil,   nil,
-  1182,   nil,   nil,  1182,   nil,  1182,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1182,   nil,
-   nil,   nil,  1182,  1182,  1182,  1182,  1182,  1182,   nil,   nil,
-   nil,  1182,  1182,   nil,   nil,   nil,   nil,   nil,   nil,  1182,
-   nil,   nil,  1182,  1182,  1182,   nil,  1182,  1182,   nil,   nil,
-  1182,  1182,  1230,  1230,  1230,  1230,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1230,  1230,
-  1230,  1230,   nil,   nil,   nil,  1230,   nil,   nil,   nil,   nil,
-   nil,  1230,  1230,   nil,   nil,   nil,  1230,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,  1230,   nil,   nil,  1230,
-   nil,   nil,   nil,  1230,   nil,   nil,  1230,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1230,   nil,   nil,   nil,  1230,  1230,  1230,  1230,  1230,
-  1230,   nil,   nil,   nil,  1230,  1230,   nil,   nil,   nil,   nil,
-   nil,   nil,  1230,   nil,   nil,  1230,  1230,  1230,   nil,  1230,
-  1230,   nil,   nil,  1230,  1230,  1265,  1265,  1265,  1265,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1265,  1265,  1265,  1265,   nil,   nil,   nil,  1265,   nil,
-   nil,   nil,   nil,   nil,  1265,  1265,   nil,   nil,   nil,  1265,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   986,   986,   986,
-   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1265,
-   nil,   nil,  1265,   986,   986,   986,  1265,   nil,   nil,  1265,
-   nil,   nil,   nil,   nil,   nil,   nil,   986,   986,   nil,   nil,
-   nil,   986,   nil,   nil,  1265,   nil,   nil,   nil,  1265,  1265,
-  1265,  1265,  1265,  1265,   nil,   nil,   nil,  1265,  1265,   nil,
-   nil,   nil,   nil,   nil,   nil,  1265,   nil,   nil,  1265,  1265,
-  1265,   nil,  1265,  1265,   nil,   nil,  1265,  1265,   nil,   nil,
-   240,   nil,   240,   240,   240,   240,   240,   nil,   nil,   nil,
-   986,   986,   986,   986,   986,   986,   240,   nil,   nil,   986,
-   986,   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,
-   986,   986,   986,   nil,   986,   986,   nil,   241,   240,   241,
-   241,   241,   241,   241,   nil,   nil,   nil,   240,   240,   240,
-   240,   nil,   408,   241,   408,   408,   408,   408,   408,   nil,
-   665,   nil,   665,   665,   665,   665,   665,   nil,   408,   nil,
-   nil,   nil,   nil,   nil,   nil,   241,   665,   nil,   nil,   nil,
-   nil,   nil,   nil,   240,   241,   241,   241,   241,   nil,   nil,
-   408,   408,   nil,   240,   nil,   nil,   nil,   nil,   665,   408,
-   408,   408,   408,   nil,   nil,   nil,   nil,   665,   665,   665,
-   665,   729,   nil,   729,   729,   729,   729,   729,   nil,   nil,
-   241,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,   nil,
-   241,   nil,   nil,   nil,   731,   408,   731,   731,   731,   731,
-   731,   nil,   nil,   665,   nil,   408,   nil,   nil,   nil,   729,
-   731,   nil,   nil,   665,   nil,   nil,   nil,   nil,   729,   729,
-   729,   729,  1069,   nil,  1069,  1069,  1069,  1069,  1069,   nil,
-   nil,   nil,   731,   nil,   nil,   nil,   nil,   nil,  1069,   nil,
-   nil,   731,   731,   731,   731,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   729,   nil,   nil,   nil,   nil,   nil,
-  1069,   nil,   nil,   nil,   729,   nil,   nil,   nil,   nil,  1069,
-  1069,  1069,  1069,   nil,   nil,   nil,   nil,   731,   232,   232,
-   nil,   nil,   232,   nil,   nil,   nil,   nil,   731,   nil,   nil,
-   nil,   232,   232,   nil,   232,   232,   232,   232,   232,   232,
-   232,   nil,   nil,   232,   232,  1069,   nil,   nil,   232,   232,
-   232,   232,   nil,   nil,   nil,  1069,   nil,   232,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   232,   232,   nil,   232,   232,
-   232,   232,   232,   232,   232,   232,   232,   232,   232,   nil,
-   nil,   232,   nil,   nil,   nil,   nil,   233,   233,   nil,   nil,
-   233,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   233,
-   233,   232,   233,   233,   233,   233,   233,   233,   233,   nil,
-   nil,   233,   233,   nil,   nil,   nil,   233,   233,   233,   233,
-   nil,   nil,   nil,   nil,   nil,   233,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   233,   233,   nil,   233,   233,   233,   233,
-   233,   233,   233,   233,   233,   233,   233,   nil,   nil,   233,
-   nil,   nil,   nil,   nil,   310,   310,   nil,   nil,   310,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   310,   310,   233,
-   310,   310,   310,   310,   310,   310,   310,   nil,   nil,   310,
-   310,   nil,   nil,   nil,   310,   310,   310,   310,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   310,   310,   nil,   310,   310,   310,   310,   310,   310,
-   310,   310,   310,   310,   310,   nil,   nil,   310,   nil,   nil,
-   nil,   nil,   535,   535,   nil,   nil,   535,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   535,   535,   310,   535,   535,
-   535,   535,   535,   535,   535,   nil,   nil,   535,   535,   nil,
-   nil,   nil,   535,   535,   535,   535,   nil,   nil,   nil,   nil,
-   nil,   535,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   535,
-   535,   nil,   535,   535,   535,   535,   535,   535,   535,   535,
-   535,   535,   535,   nil,   nil,   535,   nil,   nil,   nil,   nil,
-   536,   536,   nil,   nil,   536,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   536,   536,   535,   536,   536,   536,   536,
-   536,   536,   536,   nil,   nil,   536,   536,   nil,   nil,   nil,
-   536,   536,   536,   536,   nil,   nil,   nil,   nil,   nil,   536,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   536,   536,   nil,
-   536,   536,   536,   536,   536,   536,   536,   536,   536,   536,
-   536,   nil,   nil,   536,   nil,   nil,   nil,   nil,   612,   612,
-   nil,   nil,   612,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   612,   612,   536,   612,   612,   612,   612,   612,   612,
-   612,   nil,   nil,   612,   612,   nil,   nil,   nil,   612,   612,
-   612,   612,   nil,   nil,   nil,   nil,   nil,   612,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   612,   612,   nil,   612,   612,
-   612,   612,   612,   612,   612,   612,   612,   612,   612,   nil,
-   nil,   612,   nil,   nil,   nil,   nil,   613,   613,   nil,   nil,
-   613,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   613,
-   613,   612,   613,   613,   613,   613,   613,   613,   613,   nil,
-   nil,   613,   613,   nil,   nil,   nil,   613,   613,   613,   613,
-   nil,   nil,   nil,   nil,   nil,   613,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   613,   613,   nil,   613,   613,   613,   613,
-   613,   613,   613,   613,   613,   613,   613,   nil,   nil,   613,
-   nil,   nil,   nil,   nil,   622,   622,   nil,   nil,   622,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   622,   622,   613,
-   622,   622,   622,   622,   622,   622,   622,   nil,   nil,   622,
-   622,   nil,   nil,   nil,   622,   622,   622,   622,   nil,   nil,
-   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   622,   622,   nil,   622,   622,   622,   622,   622,   622,
-   622,   622,   622,   622,   622,   nil,   nil,   622,   nil,   nil,
-   nil,   nil,   623,   623,   nil,   nil,   623,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   623,   623,   622,   623,   623,
-   623,   623,   623,   623,   623,   nil,   nil,   623,   623,   nil,
-   nil,   nil,   623,   623,   623,   623,   nil,   nil,   nil,   nil,
-   nil,   623,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   623,
-   623,   nil,   623,   623,   623,   623,   623,   623,   623,   623,
-   623,   623,   623,   nil,   nil,   623,   nil,   nil,   nil,   nil,
-   651,   651,   nil,   nil,   651,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   651,   651,   623,   651,   651,   651,   651,
-   651,   651,   651,   nil,   nil,   651,   651,   nil,   nil,   nil,
-   651,   651,   651,   651,   nil,   nil,   nil,   nil,   nil,   651,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   651,   651,   nil,
-   651,   651,   651,   651,   651,   651,   651,   651,   651,   651,
-   651,   nil,   nil,   651,   nil,   nil,   nil,   nil,   652,   652,
-   nil,   nil,   652,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   652,   652,   651,   652,   652,   652,   652,   652,   652,
-   652,   nil,   nil,   652,   652,   nil,   nil,   nil,   652,   652,
-   652,   652,   nil,   nil,   nil,   nil,   nil,   652,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   652,   652,   nil,   652,   652,
-   652,   652,   652,   652,   652,   652,   652,   652,   652,   nil,
-   nil,   652,   nil,   nil,   nil,   nil,   699,   699,   nil,   nil,
-   699,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   699,
-   699,   652,   699,   699,   699,   699,   699,   699,   699,   nil,
-   nil,   699,   699,   nil,   nil,   nil,   699,   699,   699,   699,
-   nil,   nil,   nil,   nil,   nil,   699,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   699,   699,   nil,   699,   699,   699,   699,
-   699,   699,   699,   699,   699,   699,   699,   nil,   nil,   699,
-   nil,   nil,   nil,   nil,   700,   700,   nil,   nil,   700,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   700,   700,   699,
-   700,   700,   700,   700,   700,   700,   700,   nil,   nil,   700,
-   700,   nil,   nil,   nil,   700,   700,   700,   700,   nil,   nil,
-   nil,   nil,   nil,   700,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   700,   700,   nil,   700,   700,   700,   700,   700,   700,
-   700,   700,   700,   700,   700,   nil,   nil,   700,   nil,   nil,
-   nil,   nil,   879,   879,   nil,   nil,   879,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   879,   879,   700,   879,   879,
-   879,   879,   879,   879,   879,   nil,   nil,   879,   879,   nil,
-   nil,   nil,   879,   879,   879,   879,   nil,   nil,   nil,   nil,
-   nil,   879,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   879,
-   879,   nil,   879,   879,   879,   879,   879,   879,   879,   879,
-   879,   879,   879,   nil,   nil,   879,   nil,   nil,   nil,   nil,
-   880,   880,   nil,   nil,   880,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   880,   880,   879,   880,   880,   880,   880,
-   880,   880,   880,   nil,   nil,   880,   880,   nil,   nil,   nil,
-   880,   880,   880,   880,   nil,   nil,   nil,   nil,   nil,   880,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   880,   880,   nil,
-   880,   880,   880,   880,   880,   880,   880,   880,   880,   880,
-   880,   nil,   nil,   880,   nil,   nil,   nil,   nil,  1220,  1220,
-   nil,   nil,  1220,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1220,  1220,   880,  1220,  1220,  1220,  1220,  1220,  1220,
-  1220,   nil,   nil,  1220,  1220,   nil,   nil,   nil,  1220,  1220,
-  1220,  1220,   nil,   nil,   nil,   nil,   nil,  1220,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1220,  1220,   nil,  1220,  1220,
-  1220,  1220,  1220,  1220,  1220,  1220,  1220,  1220,  1220,   nil,
-   nil,  1220,   nil,   nil,   nil,   nil,  1221,  1221,   nil,   nil,
-  1221,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1221,
-  1221,  1220,  1221,  1221,  1221,  1221,  1221,  1221,  1221,   nil,
-   nil,  1221,  1221,   nil,   nil,   nil,  1221,  1221,  1221,  1221,
-   nil,   nil,   nil,   nil,   nil,  1221,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1221,  1221,   nil,  1221,  1221,  1221,  1221,
-  1221,  1221,  1221,  1221,  1221,  1221,  1221,   nil,   nil,  1221,
-   nil,   nil,   nil,   nil,  1245,  1245,   nil,   nil,  1245,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1245,  1245,  1221,
-  1245,  1245,  1245,  1245,  1245,  1245,  1245,   nil,   nil,  1245,
-  1245,   nil,   nil,   nil,  1245,  1245,  1245,  1245,   nil,   nil,
-   nil,   nil,   nil,  1245,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1245,  1245,   nil,  1245,  1245,  1245,  1245,  1245,  1245,
-  1245,  1245,  1245,  1245,  1245,   nil,   nil,  1245,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1245 ]
-
-racc_action_pointer = [
-   nil,   193,  1098,   202,   nil,   194,   nil,   nil,  5417,  1083,
-   nil, 26870, 27003,   105,   nil,   108,   177,    23,   287,   317,
-   -32,    92,   283,   nil,   -65,  5560,  1386, 27136,   362,   nil,
-   -40,   nil,   165,  5698,  5830,  5960,  6103,  6246,   nil,  1242,
- 24924, 25063,   nil,   280,   449,   513,   370,  6389,  6532,   167,
-  6675,  6818,   697,  6961,   315,   361,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  7099,   nil,  7240,   nil,   nil,
-   -22,   nil,  7383,  7526,   nil,   nil,  7669, 25202,   370,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   208,   nil,   nil,   nil,
-   nil,   nil,   nil,   380,   417,   425,   449,   nil,   nil, 27269,
-   nil,   nil,   nil,   nil,   nil,   nil,     0,   nil,   nil,   136,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  7812,   nil,   nil,   nil,   nil,  7955,  8098,  8241,
-  8384,  8527,   478,   nil,   399,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   476,   nil,  1386,  8670,  8813,  8956,  9099,
-  9242,  9385, 29877, 29945,   nil,   nil,   488,  1530,   533,   nil,
- 29659, 29696,   537,  1674,  9528,  9671,  9814,   nil,   nil,   376,
-   -21,   104,   636,   114,   551,   612,   nil,  9957,   226,   241,
-  1818,   611,   nil,   nil, 10100, 10243, 10386, 10529, 10672, 10815,
- 10958, 11101, 11244, 11387, 11530, 11673, 11816, 11959, 12102, 12245,
- 12388, 12531, 12674, 12817, 12960, 13103,   nil,   nil,   nil,   nil,
- 13246,   nil,   nil,   388,   412,   514,   548,   552,   576,   596,
-   617,   654,   736,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
- 30013,   nil,   nil,   606, 13389, 13532,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil, 13675,   nil,  2106,   nil,   584,   586,
-   nil, 13818,   639, 13961,   nil,   nil, 14104, 14247,   nil,   nil,
-   396,   nil,   nil, 14390,  1227,   nil,   596,  1962,   635,   675,
-   643, 25341,  2106,   455,   504,   516,   721,   591,   nil,   725,
-   701,   193,   773,   775,   nil,   nil,   nil,   778,   266,   743,
- 25480,   nil,   597,   620,  3402,  3546,   814,   nil,   835, 14533,
-   nil, 14676,  2250,  1329,   785, 14819, 14962,   nil,   704,    -8,
-     8, 15105,  2394,  2538,   412,   896,   785,   -19,    -7,   640,
-   875,    24,   907,   nil,   nil, 25619,   nil, 25758, 29711,   nil,
-   383,   nil,   402,   nil,   136,   nil,   818,   440,   nil,   821,
-   481,   nil,   827,   -59,   nil,   828,   -58,   nil,   485,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil, 27402,   nil,   nil,   nil,   nil,   840,   nil,
-   913,   828, 15248,   834,   nil,   nil,   818,   nil,   650,   147,
-   924,   nil,   nil,  1530,   nil,   nil,   nil,   nil,   nil,  1674,
-   848,   nil,   nil,   849,   854,   644,   649,  7240,   nil,   nil,
-   nil,   272,   408,   900,   nil,   nil, 15386, 15518, 15651,   989,
-   989,   nil,   nil,   873,   875,   876,   nil,   nil,   881,   882,
-   888,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   887,   784,   nil,   nil, 15794,   nil,   nil,   nil,     0,   nil,
-   nil,   nil,   983,   nil,   nil,   987,   462, 15937,  1032,   nil,
-   nil,   nil,   -26,   nil,   951, 30081, 30149, 16080,   223, 16223,
- 16366, 16509,   899,   901, 27755, 27868,  3690,  3834,   810,  1007,
-   981,   982,   983,   985,  5417,  5560,  1121,  3978,  4122,  4266,
-  4410,  4554,  4698,  1214,  1243,  4842,  4986,  2250,  5130,   nil,
-   nil,   nil, 16652,  1045,   nil, 16790,   nil,   nil,   nil,   nil,
- 16916,   936,   937,   947,   nil,   nil,   nil,   949,   nil,   nil,
- 17059,   nil,   nil, 17202,   nil, 17345,   nil,   196,   nil,   nil,
-   nil, 17488,  1515,   968,   956,   956,   nil,   nil,   957, 25897,
-   967, 17631, 30217, 30285,   652,  1005,   nil,   nil, 26036,   967,
-   nil, 17774, 30353, 30421, 17917,  5274,  2394, 18060,  1088,   979,
-   nil,   nil,   -94,   172,  1012,  1021,   nil,   534,  1052,  2682,
-  1142,   nil,  2826,    63,  1149,  1152,   337,  1157,   nil,   nil,
- 18203, 30489, 30557,    26,   nil,  1087,  1089,   181,   nil,   725,
-   nil,  1061, 18346,   nil,   nil, 29719,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   208,   nil,
-   nil,   298,   nil,   nil,   nil,  1039,   nil,   nil,  1040,   nil,
-  2970,   nil, 27535,   nil, 18489,  1042, 18632, 18775, 18918, 30625,
- 30693, 19061, 19204,   651,  1080, 19347, 19490, 19633, 19776,  1079,
-   nil,   nil,   nil, 19919, 20062,  1081,   nil,  1137,  1818,   551,
-   nil, 20205,   nil,   nil,   nil,   330,   nil,   nil,   742, 29770,
-   nil, 29793,   nil, 16796,   nil,   nil, 20348,   nil,   918,   nil,
-  1056,  1057,  1372,  1063,   nil,   nil,   nil,   nil,   nil,   nil,
-  1149,  1962,   nil,   nil,   nil,   281,   326,   544,   680,  1067,
- 20491, 20634,   nil,   -31,   nil,   nil,   nil,   nil,  1086,   nil,
-   nil,   nil,   375, 27981,   -82,   nil,  1068,  1147,  1073,   nil,
-   nil, 28094,   nil,   nil,     1,   nil,   nil,   768,   nil,   nil,
-   952,  7099,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   955,   443,   nil,   nil,  1075, 27668,   -14,
-   nil,   113,  1182,   -19,   nil,   nil, 20777,   nil,  1106,   nil,
-  1212,   nil,  1099,   nil,  1144, 20920,   nil,   nil, 21063,   nil,
-   nil,   158, 26175,  1107,   nil,  1113,    -9,    -5,  1150,    25,
-   776,  1159,  1121, 26314,   nil,  1184,    -7,   nil,   nil,   nil,
- 21206,   nil,   nil, 21349,   nil,   nil,   nil,   836,   nil,  1240,
-   nil,   nil,   nil,   nil,   nil,  1246,  1249,   nil,   nil, 21492,
-  1152,    29,    30,   162,   163,  3114,   nil,   766,   nil, 30761,
- 30829, 21635,   nil,   nil,   nil,   839,  3258,    34,  1153,  1153,
-  3402,   nil,   nil,   nil,   nil,   nil,  1169,   nil,   nil,  1154,
- 21778,  1158,   402,   421,   816,   952,   nil,  2538, 21921,   nil,
-  1156,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil, 22064, 22207,   nil,   nil,   nil,   nil,  3546,   nil,  1169,
-  1214,   nil,   nil,  1176,   nil,  1260,   nil,   nil,  1183,  1185,
-   nil,  1186,  1193,   nil,  1194,   nil,   nil,  1198,  1084,  3964,
-   nil,   nil, 22350, 22493, 22636, 22779, 22922, 23065,   479, 28207,
-  1275, 28320,  1236,   195, 28433, 28546,   589,    96,  1203,  1204,
-   nil, 28659,   nil,  1203,   266,   nil,  1220, 28772, 28885,   nil,
-   340,  1248,   213,   nil,   nil, 16775, 29605,   nil,   nil,   nil,
-   nil, 23208,   nil,   nil,   nil,   nil,   nil, 23351,   nil,   nil,
-   nil,   nil,   337,   nil,  3690,   nil,   nil,  1224,  1213,   nil,
-   117,   nil,   nil,   nil,   nil,  1212,    39,   nil,   nil,   691,
-  1336,   nil,   nil, 23494,   nil,  3834,  1341,   nil,   nil,   nil,
- 28998,   nil, 23637,    69,    68,  1342,  1231,   784,   nil,  1227,
-  3978, 23780,   465,  1345,   nil,  4122,  4266,  1224,  1230,   nil,
-   nil,   nil,   nil,   nil,  1225,   nil,  1235,   490,   nil,   nil,
- 23923,  2682,  2826,  4410,   nil,     9, 26453,   nil,   nil, 29821,
-   nil, 24945,   nil, 25084,   nil, 25223,   nil,   nil,   nil,   nil,
-  1236,  1246,  2970,  3114, 24066,   nil,  1247,   nil,   nil,   nil,
-   nil,  1289,  1292,  1293,  1267,  1268,  1269,   nil,   nil,   nil,
-  1310,  1270,   -33,   nil,  1274,   nil,   nil,   740,  1273,   nil,
-   nil,   nil,   nil,   nil,   nil,  1285,  3258,  1283,  1284,   nil,
-  1285,  1293,  1299,   nil,  1333,  1320,  1303, 26592,   nil,   nil,
-   nil,   nil,   nil,  4554,   nil,   nil,    35,   nil,   nil,    43,
-   858,   nil, 24209,  4698,   nil,   nil,  1455,   598,   nil,   nil,
-  1354,  1459,  2092,   nil,   nil,  1463,  4842,   120,   135,   786,
-  1418,   144,   nil,  1347,  1348,  1351,  1352,  4108,  4252, 29111,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1354, 29224,   nil,
-   243,   nil, 29337,   nil,   367,   nil,   nil,   475,   nil,   nil,
-   nil,   611,   nil,   745,   nil,   nil,  1377, 26731,   855,  1443,
-   nil,  4986,   nil, 24352, 24495,   nil, 24638,   426,   nil,   nil,
-  5130,   nil,   nil,   707,   nil,   nil,   nil,   nil,  1492, 24781,
- 30897, 30965,   145, 25362,   nil,   nil,   nil,   nil,  1371,  1378,
- 29450,  1379,   nil,   nil,  1380,   nil,   nil,  1383,  1385,  1386,
-  1387,   nil,  1388,   nil,   861, 31033,   nil,   892,  5274,   nil,
-   nil,   nil,   nil,   nil,   nil,  1510,   nil,  2236,   nil,  1394,
-   158,   168,   169,   236,  1395, 29563,  1398,   nil,   881,   nil,
-  5662,   nil,  5761,   nil,  7063,   nil,   nil,  1438,  1447,   nil,
-    32,   nil,   nil,   171,   nil,  1409,  1410,  1413,  1414,   nil,
-   nil,   nil, 15350,   nil,   nil,   nil,   nil,  1415,   nil ]
-
-racc_action_default = [
-    -1,  -786,  -785,  -786,    -2,  -771,    -4,    -5,  -786,    -8,
-    -9,  -786,  -786,  -786,   -36,  -786,  -786,   -41,  -786,  -786,
-  -677,  -677,  -316,   -57,  -773,  -786,   -66,  -786,   -75,   -76,
-   -77,   -81,  -292,  -292,  -292,  -331,  -362,  -363,   -93,  -785,
-   -97,  -105,  -107,  -786,  -664,  -665,  -786,  -786,  -786,  -786,
-  -786,  -786,  -245,  -786,  -773,  -263,  -307,  -308,  -309,  -310,
-  -311,  -312,  -313,  -314,  -315,  -757,  -318,  -320,  -327,  -329,
-  -339,  -341,  -786,  -786,   -72,   -72,  -771,  -786,  -350,  -357,
-  -364,  -365,  -367,  -368,  -369,  -370,  -371,  -372,  -373,  -374,
-  -375,  -376,  -385,  -444,  -591,  -592,  -593,  -594,  -595,  -785,
-  -598,  -785,  -785,  -785,  -785,  -785,  -785,  -634,  -635,  -785,
-  -637,  -643,  -645,  -646,  -647,  -648,  -755,  -653,  -654,  -756,
-  -656,  -657,  -658,  -659,  -660,  -661,  -662,  -663,  -668,  -669,
-  1299,    -3,  -772,  -781,  -782,  -783,    -7,  -786,  -786,  -786,
-  -786,  -786,  -786,   -24,  -786,  -136,  -137,  -138,  -139,  -140,
-  -141,  -142,  -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,
-  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,
-  -204,  -205,  -206,  -207,  -208,  -209,  -210,  -211,  -212,  -213,
-  -214,  -215,  -216,   -29,  -143,  -785,  -786,  -786,  -786,  -786,
-  -786,  -785,  -786,  -786,  -767,  -768,  -786,  -785,  -676,  -674,
-  -700,  -700,  -786,  -785,  -786,  -786,  -773,  -774,   -61,  -786,
-  -664,  -665,  -786,  -316,  -786,  -786,  -251,  -786,  -677,  -677,
-  -785,  -786,   -62,   -64,  -228,  -229,  -786,  -786,  -786,  -786,
-  -786,  -786,  -786,  -786,  -786,  -786,  -786,  -786,  -786,  -786,
-  -786,  -786,  -786,  -786,  -786,  -786,  -264,  -265,  -266,  -267,
-  -786,   -67,   -68,  -786,  -136,  -137,  -176,  -177,  -178,  -194,
-  -199,  -206,  -209,  -664,  -665,  -743,  -744,  -378,  -472,  -452,
-  -786,  -769,  -770,   -82,  -785,  -786,  -338,  -377,  -456,  -465,
-  -467,   -88,  -462,   -89,  -773,   -90,  -270,  -287,  -785,  -785,
-  -291,  -295,  -298,  -786,  -785,  -748,  -752,  -786,   -91,   -92,
-  -771,   -17,   -18,  -786,   -21,   -22,   -95,  -785,  -773,  -786,
-   -98,  -101,  -785,  -113,  -114,  -786,  -786,  -121,  -331,  -334,
-  -773,  -786,  -677,  -677,  -362,  -363,  -366,  -463,  -786,  -103,
-  -786,  -109,  -326,  -786,  -230,  -231,  -644,  -239,  -240,  -786,
-  -252,  -786,  -785,  -322,  -773,  -785,  -785,  -340,   -71,  -786,
-  -786,  -786,  -785,  -785,  -771,  -786,  -772,  -664,  -665,  -786,
-  -786,  -316,  -786,  -395,  -396,  -786,  -353,  -786,  -700,  -596,
-  -786,  -619,  -786,  -621,  -786,  -623,  -786,  -786,  -603,  -786,
-  -786,  -609,  -786,  -786,  -615,  -786,  -786,  -617,  -786,  -636,
-  -638,  -639,  -640,  -641,    -6,  -784,   -30,   -31,   -32,   -33,
-   -34,   -10,   -11,  -786,   -26,   -27,   -28,  -144,  -786,   -37,
-   -40,  -303,  -786,  -786,  -302,   -38,  -786,   -42,  -786,  -316,
-   -54,   -56,  -217,  -275,  -298,   -58,   -59,   -43,  -218,  -275,
-  -773,  -282,  -283,  -785,  -785,  -758,  -759,  -292,  -460,  -760,
-  -761,  -759,  -758,  -292,  -459,  -461,  -760,  -761,  -786,  -583,
-  -786,  -408,  -409,  -773,  -742,  -742,  -682,  -683,  -685,  -685,
-  -685,  -699,  -701,  -702,  -703,  -704,  -705,  -706,  -707,  -708,
-  -709,  -786,  -711,  -713,  -715,  -720,  -722,  -723,  -726,  -731,
-  -733,  -734,  -736,  -737,  -738,  -740,  -786,  -786,  -786,   -53,
-  -225,   -60,  -773,  -337,  -786,  -786,  -786,  -785,  -326,  -786,
-  -786,  -786,  -786,  -786,  -786,  -786,  -226,  -227,  -232,  -233,
-  -234,  -235,  -236,  -237,  -241,  -242,  -243,  -244,  -246,  -247,
-  -248,  -249,  -250,  -253,  -254,  -255,  -256,  -773,  -268,   -69,
-  -765,  -766,  -786,  -786,  -473,  -292,  -758,  -759,   -79,   -83,
-  -701,  -773,  -785,  -773,  -293,  -469,  -472,  -773,  -333,  -288,
-  -786,  -297,  -289,  -786,  -294,  -786,  -299,  -786,  -751,  -754,
-   -16,  -772,   -20,  -786,  -773,   -94,  -324,  -110,   -99,  -786,
-  -773,  -785,  -786,  -786,  -120,  -786,  -676,  -644,  -786,  -106,
-  -111,  -786,  -786,  -786,  -786,  -269,  -257,  -786,  -786,  -773,
-  -321,  -271,  -778,  -778,  -786,  -786,  -746,  -778,  -786,  -785,
-  -386,  -387,  -785,  -786,  -786,  -786,  -786,  -786,  -381,  -479,
-  -785,  -786,  -786,  -326,   -72,  -131,  -132,  -786,  -134,  -786,
-  -316,  -785,  -786,  -358,  -445,  -700,  -448,  -597,  -620,  -625,
-  -626,  -628,  -599,  -622,  -600,  -624,  -601,  -602,  -786,  -605,
-  -607,  -786,  -608,  -611,  -612,  -786,  -613,  -614,  -786,  -642,
-  -785,   -25,  -786,   -35,  -786,  -306,  -786,  -786,  -785,  -786,
-  -786,  -786,  -786,  -464,  -786,  -284,  -286,  -786,  -786,   -84,
-  -280,  -281,  -457,  -786,  -786,   -86,  -458,   -49,  -259,  -785,
-  -379,  -785,  -360,  -384,  -675,  -786,  -680,  -681,  -786,  -786,
-  -692,  -786,  -695,  -786,  -697,  -410,  -786,  -397,  -786,  -399,
-  -401,  -404,  -407,  -773,  -714,  -724,  -725,  -735,  -739,  -678,
-   -51,  -261,  -361,  -336,  -775,  -758,  -759,  -758,  -759,  -773,
-  -786,  -786,   -63,  -491,  -494,  -495,  -496,  -497,  -499,  -501,
-  -504,  -505,  -562,  -773,  -517,  -520,  -532,  -536,  -541,  -543,
-  -544,  -547,  -548,  -785,  -551,  -553,  -554,  -555,  -560,  -561,
-  -786,  -786,  -565,  -566,  -567,  -568,  -569,  -570,  -571,  -572,
-  -573,  -574,  -575,  -786,  -786,  -581,   -65,  -786,  -786,  -773,
-  -451,  -785,   -78,  -453,  -469,  -277,  -284,  -279,  -786,  -470,
-  -786,  -332,  -785,  -296,  -300,  -786,  -749,  -750,  -786,   -19,
-   -23,   -96,  -786,  -102,  -108,  -773,  -758,  -759,  -785,  -762,
-  -119,  -786,  -104,  -786,  -224,  -238,  -773,  -319,  -323,  -272,
-  -780,  -779,  -274,  -780,  -328,  -330,  -747,  -785,  -388,  -785,
-   -73,  -389,  -390,  -344,  -345,  -786,  -786,  -483,  -347,  -786,
-  -773,  -758,  -759,  -762,  -325,  -785,  -131,  -132,  -133,  -786,
-  -786,  -785,  -351,  -670,  -672,  -354,  -785,  -786,  -773,  -786,
-  -785,  -604,  -606,  -610,  -616,  -618,  -786,  -145,   -39,  -304,
-  -786,  -773,  -758,  -759,  -759,  -758,   -55,  -276,  -786,  -776,
-  -785,   -45,  -220,   -46,  -221,   -85,   -47,  -223,   -48,  -222,
-   -87,  -786,  -786,   -13,   -15,  -380,  -382,  -785,  -590,  -584,
-  -785,  -585,  -586,  -742,  -721,  -726,  -741,  -684,  -685,  -685,
-  -712,  -685,  -685,  -732,  -685,  -709,  -727,  -773,  -786,  -786,
-  -406,  -710,  -786,  -786,  -786,  -786,  -786,  -786,  -464,  -492,
-  -786,  -786,  -502,  -503,  -786,  -786,  -786,  -522,  -773,  -773,
-  -516,  -523,  -529,  -786,  -786,  -519,  -786,  -786,  -786,  -535,
-  -542,  -546,  -786,  -550,  -552,  -558,  -559,  -563,  -564,  -576,
-  -577,  -786,  -649,  -650,  -651,  -132,  -579,  -786,   -70,  -745,
-  -433,  -434,  -773,  -436,  -785,  -455,  -454,  -786,  -773,  -466,
-  -785,  -468,  -290,  -301,  -753,  -100,  -464,  -112,  -335,  -778,
-  -786,  -383,  -391,  -786,  -393,  -785,  -786,   -74,  -346,  -348,
-  -786,  -475,  -786,  -786,  -464,  -786,  -131,  -132,  -135,  -773,
-  -785,  -786,  -786,  -786,  -446,  -785,  -785,  -438,  -773,  -627,
-  -630,  -631,  -632,  -633,  -786,   -12,  -305,  -464,   -44,  -219,
-  -285,   -50,  -260,  -785,  -589,  -786,  -786,  -588,  -679,  -786,
-  -688,  -786,  -690,  -786,  -693,  -786,  -696,  -698,  -398,  -400,
-  -402,  -405,   -52,  -262,  -786,  -493,  -532,  -498,  -500,  -509,
-  -513,  -786,  -786,  -786,  -773,  -773,  -773,  -580,  -514,  -515,
-  -539,  -524,  -527,  -530,  -773,  -785,  -777,  -786,  -533,  -537,
-  -540,  -545,  -549,  -556,  -557,  -773,  -258,  -742,  -742,  -414,
-  -785,  -785,  -785,  -432,  -786,  -773,  -709,  -717,  -718,  -729,
-  -474,   -80,  -278,  -785,  -273,  -342,  -786,  -394,  -343,  -786,
-  -488,  -476,  -786,  -785,  -349,  -464,  -786,  -786,  -355,  -359,
-  -786,  -786,  -786,  -447,  -629,  -785,  -785,  -664,  -665,  -786,
-  -786,  -316,  -587,  -685,  -685,  -685,  -685,  -786,  -786,  -786,
-  -506,  -507,  -508,  -510,  -511,  -512,  -531,  -525,  -786,  -518,
-  -786,  -521,  -786,  -578,  -786,  -412,  -413,  -417,  -416,  -423,
-  -425,  -786,  -428,  -786,  -430,  -435,  -786,  -786,  -716,  -786,
-  -471,  -785,  -484,  -786,  -786,  -477,  -786,  -785,  -352,  -671,
-  -785,  -449,  -450,  -773,  -440,  -442,  -443,   -14,  -583,  -785,
-  -786,  -786,  -326,  -786,  -686,  -689,  -691,  -694,  -403,  -533,
-  -786,  -528,  -534,  -538,  -742,  -719,  -415,  -785,  -785,  -785,
-  -785,  -730,  -785,  -437,  -728,  -786,  -326,  -785,  -785,  -489,
-  -490,  -478,  -480,  -481,  -482,  -786,  -439,  -786,  -582,  -773,
-  -758,  -759,  -762,  -325,  -685,  -786,  -526,  -411,  -786,  -420,
-  -786,  -422,  -786,  -426,  -786,  -429,  -431,  -325,  -762,  -392,
-  -785,  -356,  -441,  -464,  -687,  -785,  -785,  -785,  -785,  -485,
-  -486,  -487,  -786,  -418,  -421,  -424,  -427,  -785,  -419 ]
-
-racc_goto_table = [
-     6,    45,   647,   350,   309,   292,   291,    45,   327,   327,
-   327,   410,   135,   387,   719,   866,   148,   148,   239,   239,
-   232,   428,     4,   318,   322,   933,   304,   245,   470,   736,
-   940,   311,   148,   143,   224,   328,   328,   328,    45,   354,
-   354,  1026,   366,   366,   467,   151,   151,   639,   642,   592,
-   490,   726,   727,   248,   392,   393,   528,   381,   529,  1020,
-   583,   454,   455,   762,   806,   349,    45,   313,   321,   323,
-   441,   389,   390,   765,   765,   394,   398,   461,   131,   366,
-   461,   924,   823,   135,   943,   823,   132,   579,   430,   346,
-   243,   376,   619,   939,   461,   941,   743,   411,  1086,   413,
-   415,   418,   421,   424,   427,   510,   510,   411,   737,   975,
-   573,   581,   348,    18,   148,   826,  1108,   936,  1004,    18,
-   936,   369,  1241,   493,   526,  1079,  1081,   878,   818,  1214,
-  1048,    45,  1216,     1,   477,   483,   436,   437,   438,   439,
-    45,     2,   501,   501,  1121,     9,   329,   329,   329,   395,
-    18,     9,   849,   852,   325,   338,   339,   856,   673,   136,
-   675,  1093,  1096,   679,   987,   988,   679,   616,   616,   678,
-    16,  1104,   681,   969,   142,   661,    16,   663,    18,   690,
-   923,   730,   732,   734,  1063,   829,   603,   223,   404,   450,
-   443,   236,   242,   544,   592,   628,   545,   823,   823,  1241,
-   293,   569,   808,   860,   327,  1027,   310,    16,   814,   692,
-   383,   379,   575,   634,   813,   305,   635,   402,   882,   382,
-   384,   629,   385,   478,    45,   468,   453,   453,   826,   471,
-   386,   405,  1040,   662,  1282,    16,    45,  1216,   487,   530,
-  1042,  1210,    45,    18,  1124,   403,   597,   407,   886,  1080,
-   535,   448,    18,   865,   449,   460,   239,   239,   460,    45,
-   968,  1123,  1189,  1125,  1213,   763,   763,   664,  1044,   408,
-   887,   585,   460,   510,   996,     9,   586,  1010,  1033,   811,
-  1252,   869,  1139,   434,   440,  1289,   349,   327,   327,  1030,
-  1248,   666,  1087,  1088,   964,   965,   974,   327,   977,  1110,
-    16,  1111,   990,   930,  1065,   409,   412,  1229,   823,    16,
-   501,   414,   471,   417,   582,   328,  1231,  1133,  1101,   420,
-   423,  1232,   426,   947,   328,  1109,   591,   591,   243,  1237,
-  1049,   833,   411,   620,   759,   737,    18,   889,    18,   950,
-   842,    18,    45,   890,  1228,  1079,    45,   135,    18,  1038,
-   354,    45,   318,   366,    18,    18,   612,  1007,   322,  1113,
-  1114,   429,  1041,   615,  1092,  1095,  1122,  1196,  1266,   354,
-   938,    18,   366,   349,   622,   826,   940,   934,   349,  1235,
-   572,    45,   nil,   631,   636,   632,   nil,   nil,   820,  1253,
-   643,    45,    45,    16,  1119,   456,   nil,   346,   456,   nil,
-   651,   135,   346,   nil,   304,    16,   304,   366,   835,   366,
-   617,    16,   456,   600,   nil,   nil,   nil,   nil,   644,   645,
-   604,   601,   943,   nil,   892,   610,   329,   892,    16,   542,
-   543,   608,   243,  1163,   584,   329,  1097,   477,   483,  1179,
-   nil,   388,   388,   587,   nil,   388,  1085,   870,   148,  1279,
-   nil,  1091,  1094,   nil,    18,   nil,   nil,   nil,    18,   699,
-   nil,   717,  1290,    18,   nil,   691,   nil,   646,   711,   nil,
-   nil,   591,   591,   704,   716,   710,   nil,   151,   nil,   nil,
-   nil,   nil,   nil,   915,  1234,   nil,   602,   nil,   940,   920,
-  1068,   nil,   nil,    18,   967,   901,   633,   637,   nil,   nil,
-   750,   nil,   981,    18,    18,   nil,   388,   388,   388,   388,
-   327,    16,   709,   nil,   838,    16,  1109,  1217,   715,   nil,
-    16,   911,   913,   nil,   838,  1109,   478,   916,   918,  1233,
-   510,   830,   nil,   749,   530,   471,   468,   703,   nil,  1134,
-   nil,   487,  1012,   800,   800,   737,   737,   461,   888,  1140,
-    16,  1238,   823,   838,  1015,  1239,   931,   461,   461,   765,
-    16,    16,  1008,   461,   461,   nil,   711,   501,   nil,   nil,
-   807,   nil,   620,   710,   nil,   940,   936,  1109,   nil,  1119,
-   591,   620,   826,  1119,   327,  1119,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   510,   nil,   510,   465,   466,   nil,
-    45,   477,   483,   478,   nil,   nil,   nil,   nil,   354,   471,
-   812,   366,  1233,   478,   531,   532,   844,   354,   487,   nil,
-   366,  1070,  1072,   327,  1074,  1076,   nil,  1077,   487,   nil,
-  1012,   nil,  1285,   nil,   875,   nil,   nil,   nil,    45,   nil,
-   nil,    45,   478,   nil,   nil,  1197,   nil,   nil,   471,  1291,
-   861,   nil,   nil,   nil,   784,   784,   nil,   487,   nil,   884,
-  1119,   nil,  1119,   nil,  1119,   857,  1119,   nil,   859,   nil,
-   nil,   327,   nil,   nil,  1185,  1186,   nil,   nil,  1039,   nil,
-   967,   nil,   nil,   nil,  1119,   967,   967,   nil,     6,    45,
-   478,  1143,   nil,    45,   nil,   982,   471,   148,  1107,  1043,
-    45,   822,   912,   914,   nil,   487,   nil,   nil,   917,   919,
-   896,   nil,    18,   nil,   897,   nil,   nil,   928,   nil,   932,
-   nil,   453,  1058,  1156,   nil,   460,   151,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   460,   460,   nil,   nil,   nil,
-   nil,   460,   460,  1258,   nil,   nil,   nil,   nil,   nil,   nil,
-    18,   763,   nil,    18,   nil,   nil,  1006,   nil,   461,   nil,
-   388,   nil,   704,   nil,   737,   737,   nil,   nil,   nil,    16,
-   nil,   nil,   800,   nil,   nil,   nil,   704,   976,   nil,   nil,
-   800,   411,   838,   nil,   nil,   nil,   998,   291,  1005,   800,
-   800,  1267,   nil,   nil,  1201,   620,   nil,  1202,   nil,   nil,
-   nil,    18,   nil,   nil,   nil,    18,  1017,    16,    18,  1000,
-    16,   nil,    18,   148,  1254,  1118,   910,  1130,    18,    18,
-   591,   nil,   nil,   nil,    18,    18,   958,   nil,   nil,   711,
-   nil,   354,   716,     9,   366,   935,   710,   898,   704,   nil,
-   970,   nil,   354,   nil,   906,   366,  1224,  1225,  1226,  1227,
-   nil,   nil,   nil,  1146,   327,  1024,   nil,  1024,    16,  1151,
-   nil,   nil,    16,   nil,   nil,   456,   nil,  1126,   nil,    16,
-   nil,   478,   nil,   704,    45,   456,   456,   nil,   nil,   471,
-   nil,   456,   456,   nil,   487,    45,   nil,   nil,   nil,    45,
-   nil,  1047,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1035,  1016,  1059,   704,   nil,   nil,   nil,   591,   nil,
-   nil,   nil,   nil,   942,   nil,   944,  1054,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    45,   910,  1067,   nil,
-   nil,   nil,   nil,   nil,   510,   nil,   460,  1034,   nil,   nil,
-   nil,   809,   nil,   nil,   nil,   nil,   nil,  1284,   nil,   912,
-   914,   919,   917,  1064,   nil,   nil,   nil,   nil,   800,   nil,
-   800,  1019,   nil,   800,   800,   nil,   704,   nil,  1057,   nil,
-   800,   704,   704,   nil,   nil,   nil,   800,   800,   nil,   nil,
-   nil,   nil,   nil,   nil,   800,   800,    18,   nil,   nil,   nil,
-  1115,   nil,   nil,   nil,   nil,   nil,   846,    18,   nil,   nil,
-  1118,    18,   nil,    45,  1118,  1047,  1118,   nil,  1000,   nil,
-   722,   nil,   nil,   nil,   nil,   nil,  1259,  1180,   nil,    18,
-   nil,   nil,  1136,  1255,    45,   nil,   nil,   nil,   nil,   800,
-  1090,   885,   nil,   nil,   nil,  1098,  1099,   nil,    18,    45,
-  1147,   nil,   704,    16,    45,    45,   nil,   nil,   752,  1148,
-   nil,  1137,  1126,   nil,    16,   nil,  1126,  1127,    16,   nil,
-   nil,   nil,    45,   nil,   nil,  1158,   nil,   nil,   366,   nil,
-   nil,  1150,   nil,   nil,   784,   784,   456,   nil,   nil,  1059,
-   nil,  1118,   nil,  1118,   784,  1118,   nil,  1118,   nil,  1155,
-   784,   nil,   nil,   nil,   nil,    16,   nil,   704,   704,   704,
-   nil,   nil,   nil,   411,   nil,  1118,  1145,   976,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,  1188,  1188,
-  1188,   nil,   838,   nil,   nil,   nil,   304,   nil,  1047,   366,
-   nil,   nil,    45,  1126,   nil,   nil,    18,   nil,   nil,   nil,
-   784,   533,    45,   nil,   nil,   nil,   nil,   nil,   847,   nil,
-   nil,    18,   nil,   928,  1209,    45,    18,    18,   nil,  1200,
-  1220,  1173,  1174,  1175,   863,   864,   nil,   868,   800,  1207,
-   nil,   nil,    16,   nil,    18,   nil,   nil,   800,   nil,   nil,
-   nil,   800,  1218,   nil,  1120,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   327,    16,   nil,   nil,   304,   nil,   nil,   366,
-    45,   nil,  1249,  1250,   nil,  1024,   nil,   nil,    16,    45,
-   nil,   478,   nil,    16,    16,   nil,  1256,   471,   nil,   588,
-   nil,   nil,   nil,   nil,   nil,   nil,   487,  1247,   nil,   800,
-   nil,    16,   nil,   nil,  1162,  1188,  1188,  1188,  1188,  1127,
-  1188,   nil,  1127,   605,    18,  1024,  1127,    45,  1127,   nil,
-   487,  1164,   nil,  1165,    18,  1166,   nil,   nil,   nil,   nil,
-   nil,   nil,   704,   nil,   800,    19,   nil,    18,   nil,   nil,
-   nil,    19,   nil,   nil,  1280,   nil,   nil,   nil,  1024,   630,
-   nil,   nil,   nil,  1188,  1188,  1188,  1188,   nil,   249,   nil,
-   nil,   nil,   nil,   nil,   935,  1188,   nil,   nil,   249,   249,
-   249,    16,    19,   355,   355,   nil,   nil,   451,   464,   nil,
-   nil,    16,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    18,   nil,  1127,    16,  1127,  1283,  1127,   nil,  1127,
-    19,   nil,   nil,   nil,   nil,   249,   249,   nil,   nil,   249,
-   399,   nil,   nil,   nil,   nil,   nil,   nil,  1127,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
-   388,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
-   nil,   nil,   nil,  1240,   nil,  1242,   nil,   nil,    16,   nil,
-   nil,   nil,   nil,   nil,   nil,  1028,  1029,   nil,   724,   nil,
-   nil,   nil,   388,   nil,   nil,    19,   nil,   nil,   nil,   nil,
-   249,   249,   249,   249,    19,  1264,   nil,   nil,   nil,   nil,
-   388,   nil,   594,   nil,   596,   nil,    16,   598,   599,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   753,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1286,   nil,  1287,   nil,  1288,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1190,  1192,  1194,   nil,   nil,   638,   nil,   nil,
-   nil,   nil,   nil,   nil,  1297,   nil,   815,    20,   817,   nil,
-   nil,   nil,   821,    20,   nil,   nil,   nil,   nil,    19,   249,
-   458,   249,   249,   458,   249,   nil,   nil,   nil,   nil,   831,
-    19,   nil,   nil,   nil,   nil,   834,    19,   458,   249,   249,
-   nil,   nil,   nil,   nil,    20,   362,   362,   nil,   nil,   nil,
-   nil,    21,   nil,    19,   848,   nil,   nil,    21,   nil,   nil,
-   nil,   nil,   nil,   695,   nil,   nil,   nil,   nil,   nil,   nil,
-  1135,   nil,    20,   nil,   nil,   nil,  1138,   nil,   nil,   nil,
-   nil,   nil,   362,   nil,   nil,  1144,   nil,   nil,    21,   363,
-   363,   nil,   nil,  1149,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   388,   388,   792,   792,   nil,   249,   249,  1269,
-  1271,  1273,  1275,   nil,  1276,   nil,    21,   249,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   744,   363,   nil,   nil,   nil,
-   nil,   nil,   nil,   793,   793,   nil,    19,    20,   nil,   nil,
-    19,   nil,   nil,   nil,   355,    19,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1293,  1294,  1295,
-  1296,   nil,   nil,   355,   nil,   nil,   nil,   nil,   951,  1298,
-   nil,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,
-   nil,    21,   nil,   nil,   249,    19,    19,   nil,   nil,   nil,
-    21,   nil,   nil,   nil,   nil,   nil,  1208,   nil,   659,   nil,
-   659,   824,   nil,   nil,   638,   nil,   827,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    20,   nil,    20,   nil,   999,    20,   nil,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,    20,    20,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
-   nil,  1018,   nil,   nil,    21,   nil,    21,   nil,   nil,    21,
-   nil,   249,   nil,   794,   794,   nil,    21,   nil,   nil,   nil,
-   nil,   nil,    21,    21,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,  1281,   nil,   899,   nil,    21,
-   nil,   nil,   nil,   nil,   nil,   nil,   824,   638,   nil,   nil,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   249,   nil,   929,   792,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   792,   nil,   nil,   nil,   nil,   nil,   946,    20,   nil,
-   792,   792,    20,   nil,   nil,   nil,   362,    20,   nil,   nil,
-   nil,   nil,   793,   nil,   nil,   249,   nil,   nil,   nil,   nil,
-   793,   nil,  1078,   nil,   nil,   362,   nil,   nil,   nil,   793,
-   793,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
-   nil,   nil,    21,   nil,    19,   nil,    21,    20,    20,   nil,
-   363,    21,   355,   nil,   249,   nil,   nil,   nil,   nil,   nil,
-   362,   355,   362,   nil,   nil,   nil,   nil,   nil,   nil,   363,
-   249,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,
-   nil,    21,    19,  1132,   nil,    19,  1013,   nil,   nil,  1014,
-   nil,    21,    21,   249,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   363,   249,   363,   nil,   nil,   nil,
-   nil,   824,   nil,   nil,   638,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,  1153,   nil,   nil,   nil,   nil,   nil,   nil,
-  1031,   nil,   nil,    19,   nil,   nil,   nil,    19,   nil,   nil,
-   458,   249,   nil,   nil,    19,   nil,   nil,   nil,   nil,   nil,
-   458,   458,   nil,   nil,   nil,   nil,   458,   458,   nil,   nil,
-   nil,  1056,   794,   nil,   nil,   nil,   nil,   nil,   nil,   792,
-   794,   792,   nil,   nil,   792,   792,   nil,   nil,   nil,   794,
-   794,   792,   nil,   nil,   nil,   nil,   nil,   792,   792,   nil,
-  1183,   nil,   nil,   nil,   nil,   792,   792,   nil,   793,   nil,
-   793,   nil,   nil,   793,   793,   nil,   nil,    22,   nil,   nil,
-   793,   nil,   nil,    22,   nil,   nil,   793,   793,   nil,   nil,
-   nil,   nil,   nil,   nil,   793,   793,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   792,   nil,   nil,   nil,    22,   357,   357,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   362,   nil,   nil,   nil,   nil,   793,
-   nil,   nil,    22,   362,   nil,   355,   nil,   nil,   nil,   nil,
-   nil,   nil,   401,   nil,   nil,   nil,   355,   nil,   nil,   nil,
-   nil,   nil,   nil,  1141,    20,   nil,   nil,    20,   nil,   nil,
-    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,    19,   nil,
-   nil,   638,   nil,   nil,   249,   nil,   nil,   nil,   nil,    19,
-   nil,   nil,   nil,    19,   nil,   nil,   nil,    22,    21,   nil,
-   nil,    21,   nil,   nil,   nil,    20,    22,   nil,   794,    20,
-   794,   458,    20,   794,   794,   nil,    20,   nil,   nil,   nil,
-   794,   nil,    20,    20,   nil,   nil,   794,   794,    20,    20,
-    19,   nil,   nil,   nil,   794,   794,   nil,   nil,   nil,   792,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   792,    21,
-   nil,   nil,   792,    21,   nil,   nil,    21,   nil,   nil,   nil,
-    21,   nil,   nil,  1205,   nil,   nil,    21,    21,   793,   nil,
-   nil,   nil,    21,    21,   nil,   nil,   nil,   793,   nil,   794,
-   nil,   793,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    22,   nil,   459,   nil,   249,   459,   nil,   nil,   nil,   nil,
-   792,   nil,    22,   nil,   nil,   nil,   nil,    19,    22,   459,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    22,   249,  1251,    19,   793,
-   nil,   nil,   nil,   nil,   nil,   792,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    19,   249,   nil,   nil,   362,    19,    19,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   362,   nil,
-   nil,   nil,   nil,   nil,   793,   nil,    19,   nil,   nil,  1159,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    20,   363,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    20,   363,   nil,   nil,    20,   nil,   nil,    22,   nil,
-   nil,   nil,    22,   nil,   nil,   nil,   357,    22,   794,   nil,
-   nil,   nil,   nil,    20,   nil,   nil,   nil,   794,   nil,   nil,
-  1198,   794,   nil,   nil,    21,   357,    19,   nil,   nil,   nil,
-   nil,   nil,    20,   nil,   nil,    21,    19,    22,   nil,    21,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    22,    22,    19,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    21,   nil,   nil,
-   660,   nil,   660,   nil,   nil,   nil,   nil,   nil,   nil,   794,
-   nil,   nil,   nil,   nil,   nil,   nil,    21,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-  1244,   nil,   nil,   nil,    19,   nil,   249,   249,   nil,   nil,
-   nil,   nil,   nil,    19,   794,   nil,   nil,   nil,   nil,    20,
-   nil,   nil,   249,   nil,   nil,   nil,   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,    19,   nil,   nil,   nil,    20,   nil,   nil,   nil,    32,
-    20,    20,   nil,    21,   nil,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   362,    32,   nil,    21,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    32,    32,    32,   nil,    32,   nil,   nil,    21,
-   nil,   nil,   nil,   nil,    21,    21,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    21,   nil,    32,   363,   nil,   nil,   nil,    32,
-    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   795,   795,
-   nil,   nil,   362,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    22,   nil,   nil,   nil,
-   nil,    20,   nil,   nil,   357,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   357,   nil,   nil,   363,   nil,   nil,    32,
-   nil,   nil,    21,   nil,    32,    32,    32,    32,    32,   nil,
-   nil,   nil,    21,   nil,    22,   nil,   nil,    22,   nil,   nil,
-   nil,   nil,   362,   nil,   nil,    21,    20,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   796,   796,
-   nil,   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,   363,   nil,   nil,    22,
-    21,   nil,   459,    20,   nil,   nil,    22,   nil,   nil,    21,
-   nil,   nil,   459,   459,   nil,   nil,   nil,   nil,   459,   459,
-   nil,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
-   nil,    35,   nil,   nil,    32,   nil,   nil,    35,   nil,   nil,
-    32,    32,    32,    32,   nil,   nil,   nil,    21,   nil,   nil,
-   nil,   nil,   nil,   nil,    35,   nil,   nil,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,    35,    35,    35,   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,    35,   nil,   nil,    35,   nil,   795,   nil,   nil,
-   nil,    32,    32,   nil,   nil,   795,   nil,   nil,   nil,   nil,
-   nil,    32,   nil,   nil,   795,   795,   nil,   nil,   797,   797,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   357,   nil,   nil,
-    32,   nil,   nil,   nil,    32,   nil,   nil,   nil,   357,    32,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    35,   nil,   nil,   nil,   nil,    35,    35,    35,    35,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
-    22,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,
-    32,    22,   nil,   nil,  1053,    22,   nil,   796,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   796,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   459,   796,   796,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   798,   798,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    35,    35,    35,    35,    35,    35,
-    35,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,
-   nil,   nil,    35,    35,    35,    35,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    35,
-   nil,   nil,   nil,   795,   nil,   795,   nil,   nil,   795,   795,
-   nil,   nil,   nil,   nil,   nil,   795,   nil,   nil,   nil,    22,
-   nil,   795,   795,   nil,   nil,   nil,   nil,   nil,   nil,   795,
-   795,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
-    22,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    35,    35,    22,   nil,   nil,   nil,   nil,
-    22,    22,   nil,    35,   nil,   nil,   nil,   797,   799,   799,
-   nil,   nil,   nil,   nil,   795,   797,   nil,   nil,    22,    32,
-   nil,  1161,    35,   nil,   797,   797,    35,   nil,   nil,   nil,
-   nil,    35,   nil,   796,   nil,   796,   nil,   nil,   796,   796,
-    44,   nil,   nil,   nil,   nil,   796,    44,   nil,    32,   nil,
-   nil,   796,   796,   nil,   nil,   nil,   nil,   nil,    32,   796,
-   796,    35,   nil,   nil,   nil,   303,   nil,   nil,   nil,   nil,
-    35,    35,    35,   nil,    32,   nil,   nil,    44,   353,   353,
-   nil,   nil,   660,   nil,   nil,   nil,    32,   nil,    22,    32,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,    22,   nil,
-   nil,   nil,   nil,   nil,   796,    44,   nil,   nil,   nil,    32,
-   nil,    22,   nil,   nil,   nil,   397,   nil,   nil,   nil,   nil,
-   nil,   nil,   798,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   798,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   798,
-   798,    32,   nil,   nil,    32,    32,   nil,   nil,    32,   nil,
-   nil,   nil,   660,   795,    32,    32,    22,   nil,   nil,   nil,
-    32,    32,   795,   nil,   nil,    22,   795,    35,   nil,   nil,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   801,   801,   nil,   797,   nil,   797,   nil,   nil,   797,   797,
-   nil,   nil,   nil,    22,   nil,   797,    35,   nil,   nil,   nil,
-   nil,   797,   797,   nil,   795,   nil,    35,   nil,   nil,   797,
-   797,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   799,   nil,   nil,
-   nil,   nil,   nil,   796,   nil,   799,   nil,   nil,   nil,   795,
-   nil,    35,   796,   nil,   799,   799,   796,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   797,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,
-    35,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
-   nil,   nil,   nil,   nil,   796,   nil,    35,   nil,   798,   nil,
-   798,   nil,   nil,   798,   798,   nil,   nil,   nil,    35,   nil,
-   798,    35,    32,   nil,   nil,   nil,   798,   798,    32,    35,
-   nil,   nil,   nil,    32,   798,   798,   nil,    32,   nil,   796,
-   nil,    35,   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,    35,
-   nil,   nil,   nil,    35,    32,   nil,    35,    35,   nil,   798,
-    35,    44,   nil,   nil,   nil,    44,    35,    35,   nil,   353,
-    44,   nil,    35,    35,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   797,   nil,   nil,   nil,   nil,   353,   nil,
-   nil,   nil,   797,   nil,   nil,   nil,   797,   nil,   nil,   801,
-    44,   nil,   nil,   799,   nil,   799,   nil,   801,   799,   799,
-    44,    44,   nil,   nil,   nil,   799,   801,   801,    32,   nil,
-   nil,   799,   799,   303,   nil,   303,   nil,   nil,   nil,   799,
-   799,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   797,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,
-   nil,   nil,    32,    32,   799,   nil,   nil,   nil,   nil,   797,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   798,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   798,   nil,   nil,
-   nil,   798,   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,
-    35,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   798,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,
-    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    32,   nil,   801,    35,   801,   nil,   nil,
-   801,   801,   nil,   nil,   798,   nil,   nil,   801,   nil,   nil,
-   nil,   nil,   nil,   801,   801,   nil,   nil,   nil,   nil,   nil,
-   nil,   801,   801,   799,   nil,   nil,   nil,   nil,   nil,    44,
-   nil,   nil,   799,   nil,   nil,   nil,   799,   353,    32,   nil,
-    32,    32,   nil,   nil,   nil,   nil,   353,    32,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   801,    44,   nil,   nil,
-    44,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   799,    32,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
-    35,   nil,   nil,   nil,    35,    35,   nil,   nil,    44,   799,
-   nil,   nil,    44,   nil,   nil,   256,   nil,   nil,   nil,    44,
-   nil,   nil,    35,   nil,   nil,   326,   326,   326,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   374,   375,   nil,
-   377,   378,   nil,   380,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   801,   nil,   nil,   nil,   nil,
-   nil,   nil,    35,   nil,   801,   nil,   nil,   nil,   801,   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,
-   353,   nil,   nil,   nil,   nil,   nil,   801,   nil,   nil,   nil,
-    35,   353,    35,    35,   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,   801,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    44,   nil,   nil,    35,    44,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   463,   nil,   nil,
-   469,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   469,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,   nil,   256,   nil,   nil,
-   nil,   nil,   nil,   nil,   546,   547,   548,   549,   550,   551,
-   552,   553,   554,   555,   556,   557,   558,   559,   560,   561,
-   562,   563,   564,   565,   566,   567,   nil,   nil,   nil,   nil,
-   568,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   326,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,
-   nil,   326,    44,   326,   nil,   nil,   326,   326,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
-   nil,   nil,   nil,    44,    44,   nil,   nil,   nil,   nil,   625,
-   nil,   626,   nil,   nil,   nil,   326,   326,   nil,   nil,   nil,
-   nil,    44,   nil,   nil,  1157,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   326,   nil,   nil,   303,   nil,   nil,   nil,   nil,
-   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,   718,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   303,   nil,   751,   nil,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,    44,   469,
-   469,   469,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,
-   375,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   326,   nil,   326,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   469,   nil,   nil,   845,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   469,   326,   nil,
-   nil,   nil,   907,   nil,   nil,   326,   326,   469,   469,   nil,
-   nil,   nil,   nil,   469,   469,   nil,   nil,   nil,   nil,   nil,
-   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   718,   751,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   326,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   469,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,  1061,  1062,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,  1082,  1083,   469,   469,   469,   469,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1116,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   469,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326 ]
-
-racc_goto_check = [
-     6,    79,   125,    75,   182,    47,    50,    79,    41,    41,
-    41,   222,   131,   114,    15,   126,    82,    82,     6,     6,
-    38,   222,     2,    96,    96,   158,    79,    45,    36,   160,
-   257,    38,    82,    22,    22,    93,    93,    93,    79,    79,
-    79,   121,    89,    89,    33,    84,    84,   118,   118,    99,
-    12,   163,   163,    27,    55,    55,    12,    45,    33,   119,
-    97,    29,    29,    46,    46,    14,    79,    63,    63,    63,
-    10,    24,    24,   201,   201,    24,    79,    25,     5,    89,
-    25,    17,   100,   131,   261,   100,     8,    64,    50,    71,
-   133,    87,    77,   170,    25,   170,   154,     6,   217,     6,
-     6,     6,     6,     6,     6,   256,   256,     6,   153,   211,
-   183,    36,    72,    34,    82,   266,   216,   164,   171,    34,
-   164,    76,   262,   181,   181,   152,   155,    80,    65,   175,
-   173,    79,   176,     1,    62,    62,    24,    24,    24,    24,
-    79,     3,   251,   251,   169,     9,    95,    95,    95,     5,
-    34,     9,    94,    94,    70,    70,    70,    94,   239,     7,
-   239,   202,   202,   239,   226,   226,   239,   250,   250,   238,
-    28,   202,   238,   200,    11,    81,    28,    81,    34,    13,
-    16,   254,   254,   254,    18,    20,    21,    23,    26,    30,
-    32,    40,    40,    48,    99,    12,    49,   100,   100,   262,
-    52,    53,    54,    56,    41,    58,    61,    28,    67,    85,
-     9,    90,    62,    92,    98,   110,   113,   128,   130,   134,
-   135,   136,   137,    96,    79,    86,    93,    93,   266,     6,
-   138,   139,   140,   141,   175,    28,    79,   176,    82,    86,
-   142,   143,    79,    34,   173,    28,   222,   144,   145,   156,
-    38,    14,    34,   125,    27,    27,     6,     6,    27,    79,
-   199,   161,   166,   167,   174,   198,   198,   177,   178,   179,
-   180,   185,    27,   256,    80,     9,   186,   188,   189,   191,
-   192,   193,   194,     7,     9,   195,    14,    41,    41,   196,
-   197,   181,   204,   206,   207,   208,   212,    41,   213,   219,
-    28,   220,   229,   230,   231,   234,   235,   216,   100,    28,
-   251,   236,     6,   237,    93,    93,   216,   171,   215,   240,
-   241,   217,   242,   154,    93,   215,     6,     6,   133,   169,
-   243,    77,     6,    75,    36,   153,    34,   244,    34,   153,
-    77,    34,    79,   245,   155,   152,    79,   131,    34,    80,
-    79,    79,    96,    89,    34,    34,    38,    65,    96,   226,
-   226,   248,   249,    45,   200,   200,   170,   173,   216,    79,
-   255,    34,    89,    14,    38,   266,   257,   259,    14,   260,
-   265,    79,   nil,     6,     6,    93,   nil,   nil,   183,   121,
-    24,    79,    79,    28,   164,    28,   nil,    71,    28,   nil,
-    38,   131,    71,   nil,    79,    28,    79,    89,    36,    89,
-    87,    28,    28,     5,   nil,   nil,   nil,   nil,    14,    14,
-    72,     8,   261,   nil,   239,    72,    95,   239,    28,    40,
-    40,    76,   133,   170,    70,    95,    80,    62,    62,   211,
-   nil,    31,    31,    70,   nil,    31,   199,    36,    82,   119,
-   nil,   199,   199,   nil,    34,   nil,   nil,   nil,    34,    38,
-   nil,    41,   121,    34,   nil,    22,   nil,     5,    96,   nil,
-   nil,     6,     6,    45,    96,     6,   nil,    84,   nil,   nil,
-   nil,   nil,   nil,    64,   158,   nil,     9,   nil,   257,    64,
-   163,   nil,   nil,    34,   198,    36,    95,    95,   nil,   nil,
-    41,   nil,   198,    34,    34,   nil,    31,    31,    31,    31,
-    41,    28,    63,   nil,    62,    28,   215,    17,    63,   nil,
-    28,    33,    33,   nil,    62,   215,    96,    33,    33,   215,
-   256,    10,   nil,   131,    86,     6,    86,    37,   nil,    94,
-   nil,    82,    99,    79,    79,   153,   153,    25,   181,    46,
-    28,   170,   100,    62,    77,   170,    29,    25,    25,   201,
-    28,    28,    97,    25,    25,   nil,    96,   251,   nil,   nil,
-    45,   nil,    75,     6,   nil,   257,   164,   215,   nil,   164,
-     6,    75,   266,   164,    41,   164,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   256,   nil,   256,    31,    31,   nil,
-    79,    62,    62,    96,   nil,   nil,   nil,   nil,    79,     6,
-    63,    89,   215,    96,    31,    31,    86,    79,    82,   nil,
-    89,   254,   254,    41,   254,   254,   nil,   254,    82,   nil,
-    99,   nil,   170,   nil,    55,   nil,   nil,   nil,    79,   nil,
-   nil,    79,    96,   nil,   nil,   160,   nil,   nil,     6,   126,
-   131,   nil,   nil,   nil,   224,   224,   nil,    82,   nil,     6,
-   164,   nil,   164,   nil,   164,    14,   164,   nil,    14,   nil,
-   nil,    41,   nil,   nil,   163,   163,   nil,   nil,    36,   nil,
-   198,   nil,   nil,   nil,   164,   198,   198,   nil,     6,    79,
-    96,   118,   nil,    79,   nil,   222,     6,    82,   198,    12,
-    79,    95,    86,    86,   nil,    82,   nil,   nil,    86,    86,
-     2,   nil,    34,   nil,    22,   nil,   nil,     6,   nil,     6,
-   nil,    93,    33,   118,   nil,    27,    84,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    27,    27,   nil,   nil,   nil,
-   nil,    27,    27,    15,   nil,   nil,   nil,   nil,   nil,   nil,
-    34,   198,   nil,    34,   nil,   nil,   114,   nil,    25,   nil,
-    31,   nil,    45,   nil,   153,   153,   nil,   nil,   nil,    28,
-   nil,   nil,    79,   nil,   nil,   nil,    45,    45,   nil,   nil,
-    79,     6,    62,   nil,   nil,   nil,    47,    50,   182,    79,
-    79,   163,   nil,   nil,   118,    75,   nil,   118,   nil,   nil,
-   nil,    34,   nil,   nil,   nil,    34,    75,    28,    34,     6,
-    28,   nil,    34,    82,   125,   157,    95,    12,    34,    34,
-     6,   nil,   nil,   nil,    34,    34,    37,   nil,   nil,    96,
-   nil,    79,    96,     9,    89,   224,     6,     9,    45,   nil,
-    37,   nil,    79,   nil,     9,    89,   254,   254,   254,   254,
-   nil,   nil,   nil,    12,    41,     6,   nil,     6,    28,    12,
-   nil,   nil,    28,   nil,   nil,    28,   nil,   256,   nil,    28,
-   nil,    96,   nil,    45,    79,    28,    28,   nil,   nil,     6,
-   nil,    28,    28,   nil,    82,    79,   nil,   nil,   nil,    79,
-   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    14,    37,    86,    45,   nil,   nil,   nil,     6,   nil,
-   nil,   nil,   nil,   168,   nil,   168,    14,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    79,    95,     6,   nil,
-   nil,   nil,   nil,   nil,   256,   nil,    27,    37,   nil,   nil,
-   nil,    31,   nil,   nil,   nil,   nil,   nil,   254,   nil,    86,
-    86,    86,    86,    14,   nil,   nil,   nil,   nil,    79,   nil,
-    79,    95,   nil,    79,    79,   nil,    45,   nil,    37,   nil,
-    79,    45,    45,   nil,   nil,   nil,    79,    79,   nil,   nil,
-   nil,   nil,   nil,   nil,    79,    79,    34,   nil,   nil,   nil,
-    24,   nil,   nil,   nil,   nil,   nil,    31,    34,   nil,   nil,
-   157,    34,   nil,    79,   157,    45,   157,   nil,     6,   nil,
-   112,   nil,   nil,   nil,   nil,   nil,    36,   222,   nil,    34,
-   nil,   nil,    24,    12,    79,   nil,   nil,   nil,   nil,    79,
-    37,    31,   nil,   nil,   nil,    37,    37,   nil,    34,    79,
-    24,   nil,    45,    28,    79,    79,   nil,   nil,   112,   131,
-   nil,    14,   256,   nil,    28,   nil,   256,   258,    28,   nil,
-   nil,   nil,    79,   nil,   nil,    79,   nil,   nil,    89,   nil,
-   nil,    14,   nil,   nil,   224,   224,    28,   nil,   nil,    86,
-   nil,   157,   nil,   157,   224,   157,   nil,   157,   nil,    14,
-   224,   nil,   nil,   nil,   nil,    28,   nil,    45,    45,    45,
-   nil,   nil,   nil,     6,   nil,   157,    37,    45,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,     6,     6,
-     6,   nil,    62,   nil,   nil,   nil,    79,   nil,    45,    89,
-   nil,   nil,    79,   256,   nil,   nil,    34,   nil,   nil,   nil,
-   224,    73,    79,   nil,   nil,   nil,   nil,   nil,   112,   nil,
-   nil,    34,   nil,     6,   131,    79,    34,    34,   nil,    14,
-    38,    37,    37,    37,   112,   112,   nil,   112,    79,    14,
-   nil,   nil,    28,   nil,    34,   nil,   nil,    79,   nil,   nil,
-   nil,    79,    14,   nil,   168,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    41,    28,   nil,   nil,    79,   nil,   nil,    89,
-    79,   nil,    24,    24,   nil,     6,   nil,   nil,    28,    79,
-   nil,    96,   nil,    28,    28,   nil,    45,     6,   nil,    73,
-   nil,   nil,   nil,   nil,   nil,   nil,    82,    14,   nil,    79,
-   nil,    28,   nil,   nil,    28,     6,     6,     6,     6,   258,
-     6,   nil,   258,    73,    34,     6,   258,    79,   258,   nil,
-    82,   168,   nil,   168,    34,   168,   nil,   nil,   nil,   nil,
-   nil,   nil,    45,   nil,    79,    35,   nil,    34,   nil,   nil,
-   nil,    35,   nil,   nil,    14,   nil,   nil,   nil,     6,    73,
-   nil,   nil,   nil,     6,     6,     6,     6,   nil,    35,   nil,
-   nil,   nil,   nil,   nil,   224,     6,   nil,   nil,    35,    35,
-    35,    28,    35,    35,    35,   nil,   nil,    91,    91,   nil,
-   nil,    28,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    34,   nil,   258,    28,   258,    37,   258,   nil,   258,
-    35,   nil,   nil,   nil,   nil,    35,    35,   nil,   nil,    35,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
-    31,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,
-   nil,   nil,   nil,   168,   nil,   168,   nil,   nil,    28,   nil,
-   nil,   nil,   nil,   nil,   nil,   112,   112,   nil,    73,   nil,
-   nil,   nil,    31,   nil,   nil,    35,   nil,   nil,   nil,   nil,
-    35,    35,    35,    35,    35,   168,   nil,   nil,   nil,   nil,
-    31,   nil,    91,   nil,    91,   nil,    28,    91,    91,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   168,   nil,   168,   nil,   168,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   165,   165,   165,   nil,   nil,    91,   nil,   nil,
-   nil,   nil,   nil,   nil,   168,   nil,    73,    39,    73,   nil,
-   nil,   nil,    73,    39,   nil,   nil,   nil,   nil,    35,    35,
-    35,    35,    35,    35,    35,   nil,   nil,   nil,   nil,    73,
-    35,   nil,   nil,   nil,   nil,    73,    35,    35,    35,    35,
-   nil,   nil,   nil,   nil,    39,    39,    39,   nil,   nil,   nil,
-   nil,    43,   nil,    35,    73,   nil,   nil,    43,   nil,   nil,
-   nil,   nil,   nil,    91,   nil,   nil,   nil,   nil,   nil,   nil,
-   112,   nil,    39,   nil,   nil,   nil,   112,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   112,   nil,   nil,    43,    43,
-    43,   nil,   nil,   112,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    31,    31,   102,   102,   nil,    35,    35,   165,
-   165,   165,   165,   nil,   165,   nil,    43,    35,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    91,    43,   nil,   nil,   nil,
-   nil,   nil,   nil,   103,   103,   nil,    35,    39,   nil,   nil,
-    35,   nil,   nil,   nil,    35,    35,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   165,   165,   165,
-   165,   nil,   nil,    35,   nil,   nil,   nil,   nil,    73,   165,
-   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
-   nil,    43,   nil,   nil,    35,    35,    35,   nil,   nil,   nil,
-    43,   nil,   nil,   nil,   nil,   nil,   112,   nil,    35,   nil,
-    35,    91,   nil,   nil,    91,   nil,    91,   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,   nil,    73,    39,   nil,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,    39,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
-   nil,    73,   nil,   nil,    43,   nil,    43,   nil,   nil,    43,
-   nil,    35,   nil,   104,   104,   nil,    43,   nil,   nil,   nil,
-   nil,   nil,    43,    43,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   112,   nil,    91,   nil,    43,
-   nil,   nil,   nil,   nil,   nil,   nil,    91,    91,   nil,   nil,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,    91,   102,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   102,   nil,   nil,   nil,   nil,   nil,    91,    39,   nil,
-   102,   102,    39,   nil,   nil,   nil,    39,    39,   nil,   nil,
-   nil,   nil,   103,   nil,   nil,    35,   nil,   nil,   nil,   nil,
-   103,   nil,    73,   nil,   nil,    39,   nil,   nil,   nil,   103,
-   103,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
-   nil,   nil,    43,   nil,    35,   nil,    43,    39,    39,   nil,
-    43,    43,    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,
-    39,    35,    39,   nil,   nil,   nil,   nil,   nil,   nil,    43,
-    35,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
-   nil,    43,    35,    73,   nil,    35,    91,   nil,   nil,    91,
-   nil,    43,    43,    35,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    43,    35,    43,   nil,   nil,   nil,
-   nil,    91,   nil,   nil,    91,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,
-    91,   nil,   nil,    35,   nil,   nil,   nil,    35,   nil,   nil,
-    35,    35,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,
-    35,    35,   nil,   nil,   nil,   nil,    35,    35,   nil,   nil,
-   nil,    91,   104,   nil,   nil,   nil,   nil,   nil,   nil,   102,
-   104,   102,   nil,   nil,   102,   102,   nil,   nil,   nil,   104,
-   104,   102,   nil,   nil,   nil,   nil,   nil,   102,   102,   nil,
-    73,   nil,   nil,   nil,   nil,   102,   102,   nil,   103,   nil,
-   103,   nil,   nil,   103,   103,   nil,   nil,    44,   nil,   nil,
-   103,   nil,   nil,    44,   nil,   nil,   103,   103,   nil,   nil,
-   nil,   nil,   nil,   nil,   103,   103,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   102,   nil,   nil,   nil,    44,    44,    44,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   103,
-   nil,   nil,    44,    39,   nil,    35,   nil,   nil,   nil,   nil,
-   nil,   nil,    44,   nil,   nil,   nil,    35,   nil,   nil,   nil,
-   nil,   nil,   nil,    91,    39,   nil,   nil,    39,   nil,   nil,
-    43,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,    35,   nil,
-   nil,    91,   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,
-   nil,   nil,   nil,    35,   nil,   nil,   nil,    44,    43,   nil,
-   nil,    43,   nil,   nil,   nil,    39,    44,   nil,   104,    39,
-   104,    35,    39,   104,   104,   nil,    39,   nil,   nil,   nil,
-   104,   nil,    39,    39,   nil,   nil,   104,   104,    39,    39,
-    35,   nil,   nil,   nil,   104,   104,   nil,   nil,   nil,   102,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   102,    43,
-   nil,   nil,   102,    43,   nil,   nil,    43,   nil,   nil,   nil,
-    43,   nil,   nil,    91,   nil,   nil,    43,    43,   103,   nil,
-   nil,   nil,    43,    43,   nil,   nil,   nil,   103,   nil,   104,
-   nil,   103,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    44,   nil,    44,   nil,    35,    44,   nil,   nil,   nil,   nil,
-   102,   nil,    44,   nil,   nil,   nil,   nil,    35,    44,    44,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,    35,    91,    35,   103,
-   nil,   nil,   nil,   nil,   nil,   102,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    35,    35,   nil,   nil,    39,    35,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,   103,   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,
-    39,    43,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    39,    43,   nil,   nil,    39,   nil,   nil,    44,   nil,
-   nil,   nil,    44,   nil,   nil,   nil,    44,    44,   104,   nil,
-   nil,   nil,   nil,    39,   nil,   nil,   nil,   104,   nil,   nil,
-    35,   104,   nil,   nil,    43,    44,    35,   nil,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,    43,    35,    44,   nil,    43,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,    44,    35,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
-    44,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   104,
-   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    35,   nil,   nil,   nil,    35,   nil,    35,    35,   nil,   nil,
-   nil,   nil,   nil,    35,   104,   nil,   nil,   nil,   nil,    39,
-   nil,   nil,    35,   nil,   nil,   nil,   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,    35,   nil,   nil,   nil,    39,   nil,   nil,   nil,    66,
-    39,    39,   nil,    43,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,    39,    66,   nil,    43,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    66,    66,    66,   nil,    66,   nil,   nil,    43,
-   nil,   nil,   nil,   nil,    43,    43,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    43,   nil,    66,    43,   nil,   nil,   nil,    66,
-    66,   nil,   nil,    66,   nil,   nil,   nil,   nil,   105,   105,
-   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,
-   nil,    39,   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   nil,   nil,    43,   nil,   nil,    66,
-   nil,   nil,    43,   nil,    66,    66,    66,    66,    66,   nil,
-   nil,   nil,    43,   nil,    44,   nil,   nil,    44,   nil,   nil,
-   nil,   nil,    39,   nil,   nil,    43,    39,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   106,   106,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    44,    43,   nil,   nil,    44,
-    43,   nil,    44,    39,   nil,   nil,    44,   nil,   nil,    43,
-   nil,   nil,    44,    44,   nil,   nil,   nil,   nil,    44,    44,
-   nil,   nil,    66,    66,    66,    66,    66,    66,    66,   nil,
-   nil,    69,   nil,   nil,    66,   nil,   nil,    69,   nil,   nil,
-    66,    66,    66,    66,   nil,   nil,   nil,    43,   nil,   nil,
-   nil,   nil,   nil,   nil,    69,   nil,   nil,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,    69,    69,    69,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,    69,    69,   nil,   nil,    69,   nil,   105,   nil,   nil,
-   nil,    66,    66,   nil,   nil,   105,   nil,   nil,   nil,   nil,
-   nil,    66,   nil,   nil,   105,   105,   nil,   nil,   107,   107,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,
-    66,   nil,   nil,   nil,    66,   nil,   nil,   nil,    44,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    69,   nil,   nil,   nil,   nil,    69,    69,    69,    69,
-    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
-    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    66,
-    66,    44,   nil,   nil,    44,    44,   nil,   106,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    44,   106,   106,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   108,   108,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    69,    69,    69,    69,    69,    69,
-    69,   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,
-   nil,   nil,    69,    69,    69,    69,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,    69,
-   nil,   nil,   nil,   105,   nil,   105,   nil,   nil,   105,   105,
-   nil,   nil,   nil,   nil,   nil,   105,   nil,   nil,   nil,    44,
-   nil,   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,   105,
-   105,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-    44,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    69,    69,    44,   nil,   nil,   nil,   nil,
-    44,    44,   nil,    69,   nil,   nil,   nil,   107,   109,   109,
-   nil,   nil,   nil,   nil,   105,   107,   nil,   nil,    44,    66,
-   nil,    44,    69,   nil,   107,   107,    69,   nil,   nil,   nil,
-   nil,    69,   nil,   106,   nil,   106,   nil,   nil,   106,   106,
-    78,   nil,   nil,   nil,   nil,   106,    78,   nil,    66,   nil,
-   nil,   106,   106,   nil,   nil,   nil,   nil,   nil,    66,   106,
-   106,    69,   nil,   nil,   nil,    78,   nil,   nil,   nil,   nil,
-    69,    69,    69,   nil,    66,   nil,   nil,    78,    78,    78,
-   nil,   nil,    44,   nil,   nil,   nil,    66,   nil,    44,    66,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    44,   nil,
-   nil,   nil,   nil,   nil,   106,    78,   nil,   nil,   nil,    66,
-   nil,    44,   nil,   nil,   nil,    78,   nil,   nil,   nil,   nil,
-   nil,   nil,   108,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   108,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   108,
-   108,    66,   nil,   nil,    66,    66,   nil,   nil,    66,   nil,
-   nil,   nil,    44,   105,    66,    66,    44,   nil,   nil,   nil,
-    66,    66,   105,   nil,   nil,    44,   105,    69,   nil,   nil,
-    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    78,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   116,   116,   nil,   107,   nil,   107,   nil,   nil,   107,   107,
-   nil,   nil,   nil,    44,   nil,   107,    69,   nil,   nil,   nil,
-   nil,   107,   107,   nil,   105,   nil,    69,   nil,   nil,   107,
-   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,   nil,   nil,
-   nil,   nil,   nil,   106,   nil,   109,   nil,   nil,   nil,   105,
-   nil,    69,   106,   nil,   109,   109,   106,   nil,   nil,   nil,
-   nil,   nil,   nil,    78,   107,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,   nil,
-    69,    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,
-   nil,   nil,   nil,   nil,   106,   nil,    69,   nil,   108,   nil,
-   108,   nil,   nil,   108,   108,   nil,   nil,   nil,    69,   nil,
-   108,    69,    66,   nil,   nil,   nil,   108,   108,    66,    69,
-   nil,   nil,   nil,    66,   108,   108,   nil,    66,   nil,   106,
-   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    69,
-   nil,   nil,   nil,    69,    66,   nil,    69,    69,   nil,   108,
-    69,    78,   nil,   nil,   nil,    78,    69,    69,   nil,    78,
-    78,   nil,    69,    69,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,    78,   nil,
-   nil,   nil,   107,   nil,   nil,   nil,   107,   nil,   nil,   116,
-    78,   nil,   nil,   109,   nil,   109,   nil,   116,   109,   109,
-    78,    78,   nil,   nil,   nil,   109,   116,   116,    66,   nil,
-   nil,   109,   109,    78,   nil,    78,   nil,   nil,   nil,   109,
-   109,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,
-    66,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    66,   nil,
-   nil,   nil,    66,    66,   109,   nil,   nil,   nil,   nil,   107,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,   nil,   nil,
-   nil,   108,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,
-    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    66,   nil,   116,    69,   116,   nil,   nil,
-   116,   116,   nil,   nil,   108,   nil,   nil,   116,   nil,   nil,
-   nil,   nil,   nil,   116,   116,   nil,   nil,   nil,   nil,   nil,
-   nil,   116,   116,   109,   nil,   nil,   nil,   nil,   nil,    78,
-   nil,   nil,   109,   nil,   nil,   nil,   109,    78,    66,   nil,
-    66,    66,   nil,   nil,   nil,   nil,    78,    66,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
-    69,   nil,   nil,   nil,   nil,   nil,   116,    78,   nil,   nil,
-    78,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   109,    66,   nil,   nil,   nil,   nil,
-   nil,   nil,    69,   nil,    69,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    69,
-    69,   nil,   nil,   nil,    69,    69,   nil,   nil,    78,   109,
-   nil,   nil,    78,   nil,   nil,    42,   nil,   nil,   nil,    78,
-   nil,   nil,    69,   nil,   nil,    42,    42,    42,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,   nil,
-    42,    42,   nil,    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,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    69,   nil,   nil,   116,   nil,   nil,   nil,   nil,
-   nil,   nil,    69,   nil,   116,   nil,   nil,   nil,   116,   nil,
-   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    78,   nil,   nil,   nil,   nil,   nil,   116,   nil,   nil,   nil,
-    69,    78,    69,    69,   nil,   nil,   nil,   nil,   nil,    69,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    69,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   116,   nil,    78,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    78,   nil,   nil,    69,    78,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,
-    42,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    78,   nil,    42,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    42,    42,    42,    42,    42,
-    42,    42,    42,    42,    42,    42,    42,    42,    42,    42,
-    42,    42,    42,    42,    42,    42,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,    78,    42,   nil,   nil,    42,    42,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,    78,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,
-   nil,   nil,   nil,    78,    78,   nil,   nil,   nil,   nil,    42,
-   nil,    42,   nil,   nil,   nil,    42,    42,   nil,   nil,   nil,
-   nil,    78,   nil,   nil,    78,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    42,   nil,   nil,    78,   nil,   nil,   nil,   nil,
-   nil,    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,    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,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    78,   nil,    42,   nil,    78,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,    78,    42,
-    42,    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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,    42,   nil,    42,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,    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,
-    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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,    42,   nil,
-   nil,   nil,    42,   nil,   nil,    42,    42,    42,    42,   nil,
-   nil,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,    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,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,    42,   nil,
-   nil,   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,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,    42,    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,   nil,   nil,
-   nil,   nil,    42,    42,    42,    42,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    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,   nil,   nil,
-    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,    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,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,    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,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42 ]
-
-racc_goto_pointer = [
-   nil,   133,    20,   141,   nil,    73,    -2,   151,    81,   143,
-   -72,   164,  -187,  -263,    26,  -475,  -539,  -638,  -739,   nil,
-  -416,  -159,    22,   175,    -1,  -150,   111,    28,   168,  -165,
-   -37,   369,    47,  -186,   111,  1263,  -203,    67,     1,  1475,
-   171,   -27,  3780,  1519,  2025,     3,  -481,   -22,   -69,   -67,
-   -21,   nil,   173,   -92,  -367,   -20,  -440,   nil,  -655,   nil,
-   nil,   176,   -98,    35,  -226,  -457,  2517,  -370,   nil,  2749,
-   119,    50,    73,   895,   nil,   -37,    80,  -278,  3108,    -1,
-  -530,  -230,     5,   nil,    34,  -238,    -5,    42,   nil,     2,
-   159,  1081,  -172,     0,  -480,   111,    -9,  -254,  -361,  -280,
-  -508,   nil,  1030,  1059,  1209,  2054,  2144,  2304,  2419,  2534,
-   188,   nil,   520,  -170,   -57,   nil,  2716,   nil,  -342,  -798,
-   nil,  -818,   nil,   nil,   nil,  -393,  -631,   nil,   140,   nil,
-  -443,     7,   nil,    69,   153,   153,  -162,   154,   161,   153,
-  -650,  -173,  -645,  -907,   168,  -415,   nil,   nil,   nil,   nil,
-   nil,   nil,  -823,  -403,  -415,  -823,  -699,  -187,  -700,   nil,
-  -481,  -741,   nil,  -443,  -608,   342,  -858,  -739,   182,  -858,
-  -636,  -693,   nil,  -758,  -888, -1023, -1020,  -141,  -619,   176,
-  -394,  -117,   -24,  -198,   nil,   -48,   -44,   nil,  -542,  -591,
-   nil,  -295,  -927,  -368,  -748,  -995,  -578,  -912,  -279,  -513,
-  -600,  -471,  -803,   nil,  -668,   nil,  -668,  -478,  -477,   nil,
-   nil,  -665,  -478,  -477,   nil,  -653,  -862,  -861,   nil,  -681,
-  -679,   nil,   -88,   nil,   110,   nil,  -626,   nil,   nil,  -501,
-  -418,  -626,   nil,   nil,   209,   205,   209,   210,  -248,  -254,
-   215,   215,   216,  -559,  -333,  -328,   nil,   nil,   252,  -521,
-  -195,   -98,   nil,   nil,  -317,  -359,  -135,  -699,    55,  -348,
-  -805,  -647, -1069,   nil,   nil,    74,  -478 ]
-
-racc_goto_default = [
-   nil,   nil,   nil,   nil,     5,   nil,   341,     7,   396,   344,
-   nil,   nil,   nil,   nil,   489,   nil,   nil,   nil,   nil,   340,
-   342,   nil,   nil,   nil,   nil,    14,    15,    23,   254,   nil,
-   nil,    17,   nil,   457,   255,   373,   nil,   nil,   880,   258,
-   nil,    28,    26,   259,   253,   534,   nil,   nil,   nil,   nil,
-   150,    27,   nil,   nil,   nil,   nil,   nil,   391,   nil,    29,
-    30,   nil,   841,   nil,   nil,   nil,   361,   nil,    31,   358,
-   472,    38,   nil,   nil,    40,    43,    42,   nil,   250,   251,
-   658,   nil,   480,   149,    95,   nil,   462,   111,    52,    55,
-   290,   332,   nil,   473,   nil,   474,   485,   497,   712,   589,
-   330,   315,    56,    57,    58,    59,    60,    61,    62,    63,
-    64,    66,   nil,   nil,   316,    70,    71,    72,   nil,   nil,
-    73,  1022,    74,    75,    76,   nil,   nil,    77,   nil,    78,
-   nil,   640,    79,   237,   nil,   nil,   nil,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   nil,   nil,   320,   308,   721,   927,
-   649,  1023,   739,   509,   nil,   740,   741,   495,   491,   492,
-   nil,  1236,  1117,   nil,   496,   nil,   nil,   nil,   498,   nil,
-   500,   nil,  1001,   nil,   nil,   nil,   507,   nil,   nil,   nil,
-   nil,   nil,   nil,   nil,   484,   nil,   nil,   819,   nil,   nil,
-   574,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1100,   nil,
-   764,   972,   766,   767,   771,   768,   769,   nil,   nil,   770,
-   772,   nil,   nil,   nil,   971,   973,   nil,   776,   778,   779,
-   780,   781,   nil,   785,   518,   786,   787,   788,   789,   nil,
-   nil,   nil,    94,    96,    98,   nil,   nil,   nil,   nil,   668,
-   nil,   nil,   nil,   nil,   nil,   nil,   107,   108,   nil,   nil,
-   238,   937,   241,   494,   nil,   499,   945,   512,   514,   515,
-  1128,   519,  1129,   522,   525,   nil,   335 ]
-
-racc_reduce_table = [
-  0, 0, :racc_error,
-  0, 150, :_reduce_1,
-  2, 148, :_reduce_2,
-  2, 149, :_reduce_3,
-  1, 151, :_reduce_none,
-  1, 151, :_reduce_none,
-  3, 151, :_reduce_6,
-  2, 151, :_reduce_none,
-  1, 154, :_reduce_none,
-  0, 158, :_reduce_9,
-  3, 154, :_reduce_10,
-  0, 160, :_reduce_11,
-  4, 157, :_reduce_12,
-  0, 165, :_reduce_13,
-  6, 159, :_reduce_14,
-  3, 159, :_reduce_15,
-  2, 161, :_reduce_16,
-  1, 166, :_reduce_none,
-  1, 166, :_reduce_none,
-  3, 166, :_reduce_19,
-  2, 166, :_reduce_20,
-  1, 167, :_reduce_none,
-  0, 168, :_reduce_22,
-  3, 167, :_reduce_23,
-  0, 179, :_reduce_24,
-  4, 156, :_reduce_25,
-  3, 156, :_reduce_26,
-  3, 156, :_reduce_27,
-  3, 156, :_reduce_28,
-  2, 156, :_reduce_29,
-  3, 156, :_reduce_30,
-  3, 156, :_reduce_31,
-  3, 156, :_reduce_32,
-  3, 156, :_reduce_33,
-  3, 156, :_reduce_34,
-  4, 156, :_reduce_35,
-  1, 156, :_reduce_none,
-  3, 156, :_reduce_37,
-  3, 156, :_reduce_38,
-  5, 156, :_reduce_39,
-  3, 156, :_reduce_40,
-  1, 156, :_reduce_none,
-  3, 172, :_reduce_42,
-  3, 172, :_reduce_43,
-  6, 172, :_reduce_44,
-  5, 172, :_reduce_45,
-  5, 172, :_reduce_46,
-  5, 172, :_reduce_47,
-  5, 172, :_reduce_48,
-  4, 172, :_reduce_49,
-  6, 172, :_reduce_50,
-  4, 172, :_reduce_51,
-  6, 172, :_reduce_52,
-  3, 172, :_reduce_53,
-  1, 180, :_reduce_54,
-  3, 180, :_reduce_55,
-  1, 180, :_reduce_none,
-  1, 178, :_reduce_none,
-  3, 178, :_reduce_58,
-  3, 178, :_reduce_59,
-  3, 178, :_reduce_60,
-  2, 178, :_reduce_61,
-  0, 195, :_reduce_62,
-  4, 178, :_reduce_63,
-  0, 196, :_reduce_64,
-  4, 178, :_reduce_65,
-  1, 178, :_reduce_none,
-  1, 194, :_reduce_67,
-  2, 186, :_reduce_68,
-  0, 201, :_reduce_69,
-  5, 190, :_reduce_70,
-  1, 171, :_reduce_71,
-  0, 204, :_reduce_72,
-  0, 205, :_reduce_73,
-  4, 202, :_reduce_74,
-  1, 174, :_reduce_none,
-  1, 174, :_reduce_none,
-  1, 206, :_reduce_none,
-  4, 206, :_reduce_78,
-  0, 214, :_reduce_79,
-  4, 211, :_reduce_80,
-  1, 213, :_reduce_81,
-  2, 188, :_reduce_82,
-  3, 188, :_reduce_83,
-  4, 188, :_reduce_84,
-  5, 188, :_reduce_85,
-  4, 188, :_reduce_86,
-  5, 188, :_reduce_87,
-  2, 188, :_reduce_88,
-  2, 188, :_reduce_89,
-  2, 188, :_reduce_90,
-  2, 188, :_reduce_91,
-  2, 188, :_reduce_92,
-  1, 173, :_reduce_none,
-  3, 173, :_reduce_94,
-  1, 219, :_reduce_none,
-  3, 219, :_reduce_96,
-  1, 218, :_reduce_97,
-  2, 218, :_reduce_98,
-  3, 218, :_reduce_99,
-  5, 218, :_reduce_100,
-  2, 218, :_reduce_101,
-  4, 218, :_reduce_102,
-  2, 218, :_reduce_103,
-  4, 218, :_reduce_104,
-  1, 218, :_reduce_105,
-  3, 218, :_reduce_106,
-  1, 222, :_reduce_none,
-  3, 222, :_reduce_108,
-  2, 221, :_reduce_109,
-  3, 221, :_reduce_110,
-  1, 224, :_reduce_111,
-  3, 224, :_reduce_112,
-  1, 223, :_reduce_113,
-  1, 223, :_reduce_114,
-  4, 223, :_reduce_115,
-  3, 223, :_reduce_116,
-  3, 223, :_reduce_117,
-  3, 223, :_reduce_118,
-  3, 223, :_reduce_119,
-  2, 223, :_reduce_120,
-  1, 223, :_reduce_121,
-  1, 175, :_reduce_122,
-  1, 175, :_reduce_123,
-  4, 175, :_reduce_124,
-  3, 175, :_reduce_125,
-  3, 175, :_reduce_126,
-  3, 175, :_reduce_127,
-  3, 175, :_reduce_128,
-  2, 175, :_reduce_129,
-  1, 175, :_reduce_130,
-  1, 227, :_reduce_131,
-  1, 227, :_reduce_none,
-  2, 228, :_reduce_133,
-  1, 228, :_reduce_134,
-  3, 228, :_reduce_135,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_none,
-  1, 197, :_reduce_139,
-  1, 197, :_reduce_none,
-  1, 169, :_reduce_141,
-  1, 169, :_reduce_none,
-  1, 170, :_reduce_143,
-  0, 232, :_reduce_144,
-  4, 170, :_reduce_145,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 229, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  1, 230, :_reduce_none,
-  3, 189, :_reduce_217,
-  3, 189, :_reduce_218,
-  6, 189, :_reduce_219,
-  5, 189, :_reduce_220,
-  5, 189, :_reduce_221,
-  5, 189, :_reduce_222,
-  5, 189, :_reduce_223,
-  4, 189, :_reduce_224,
-  3, 189, :_reduce_225,
-  3, 189, :_reduce_226,
-  3, 189, :_reduce_227,
-  2, 189, :_reduce_228,
-  2, 189, :_reduce_229,
-  2, 189, :_reduce_230,
-  2, 189, :_reduce_231,
-  3, 189, :_reduce_232,
-  3, 189, :_reduce_233,
-  3, 189, :_reduce_234,
-  3, 189, :_reduce_235,
-  3, 189, :_reduce_236,
-  3, 189, :_reduce_237,
-  4, 189, :_reduce_238,
-  2, 189, :_reduce_239,
-  2, 189, :_reduce_240,
-  3, 189, :_reduce_241,
-  3, 189, :_reduce_242,
-  3, 189, :_reduce_243,
-  3, 189, :_reduce_244,
-  1, 189, :_reduce_none,
-  3, 189, :_reduce_246,
-  3, 189, :_reduce_247,
-  3, 189, :_reduce_248,
-  3, 189, :_reduce_249,
-  3, 189, :_reduce_250,
-  2, 189, :_reduce_251,
-  2, 189, :_reduce_252,
-  3, 189, :_reduce_253,
-  3, 189, :_reduce_254,
-  3, 189, :_reduce_255,
-  3, 189, :_reduce_256,
-  3, 189, :_reduce_257,
-  6, 189, :_reduce_258,
-  4, 189, :_reduce_259,
-  6, 189, :_reduce_260,
-  4, 189, :_reduce_261,
-  6, 189, :_reduce_262,
-  1, 189, :_reduce_none,
-  1, 237, :_reduce_none,
-  1, 237, :_reduce_none,
-  1, 237, :_reduce_none,
-  1, 237, :_reduce_none,
-  3, 235, :_reduce_268,
-  3, 235, :_reduce_269,
-  1, 238, :_reduce_270,
-  1, 239, :_reduce_none,
-  2, 239, :_reduce_272,
-  4, 239, :_reduce_273,
-  2, 239, :_reduce_274,
-  1, 233, :_reduce_none,
-  3, 233, :_reduce_276,
-  3, 243, :_reduce_277,
-  5, 243, :_reduce_278,
-  3, 243, :_reduce_279,
-  1, 245, :_reduce_none,
-  1, 245, :_reduce_none,
-  1, 183, :_reduce_none,
-  1, 183, :_reduce_none,
-  2, 183, :_reduce_284,
-  4, 183, :_reduce_285,
-  2, 183, :_reduce_286,
-  1, 217, :_reduce_287,
-  2, 217, :_reduce_288,
-  2, 217, :_reduce_289,
-  4, 217, :_reduce_290,
-  1, 217, :_reduce_291,
-  0, 248, :_reduce_292,
-  2, 210, :_reduce_293,
-  2, 247, :_reduce_294,
-  1, 247, :_reduce_295,
-  2, 246, :_reduce_296,
-  1, 246, :_reduce_none,
-  1, 240, :_reduce_298,
-  2, 240, :_reduce_299,
-  3, 240, :_reduce_300,
-  4, 240, :_reduce_301,
-  1, 177, :_reduce_302,
-  1, 177, :_reduce_303,
-  3, 176, :_reduce_304,
-  4, 176, :_reduce_305,
-  2, 176, :_reduce_306,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_none,
-  1, 236, :_reduce_317,
-  0, 281, :_reduce_318,
-  4, 236, :_reduce_319,
-  0, 282, :_reduce_320,
-  3, 236, :_reduce_321,
-  0, 283, :_reduce_322,
-  4, 236, :_reduce_323,
-  3, 236, :_reduce_324,
-  3, 236, :_reduce_325,
-  2, 236, :_reduce_326,
-  0, 284, :_reduce_327,
-  4, 236, :_reduce_328,
-  0, 285, :_reduce_329,
-  4, 236, :_reduce_330,
-  1, 236, :_reduce_331,
-  4, 236, :_reduce_332,
-  3, 236, :_reduce_333,
-  1, 236, :_reduce_334,
-  5, 236, :_reduce_335,
-  4, 236, :_reduce_336,
-  3, 236, :_reduce_337,
-  2, 236, :_reduce_338,
-  1, 236, :_reduce_none,
-  2, 236, :_reduce_340,
-  1, 236, :_reduce_341,
-  6, 236, :_reduce_342,
-  6, 236, :_reduce_343,
-  4, 236, :_reduce_344,
-  4, 236, :_reduce_345,
-  5, 236, :_reduce_346,
-  4, 236, :_reduce_347,
-  5, 236, :_reduce_348,
-  6, 236, :_reduce_349,
-  0, 286, :_reduce_350,
-  0, 287, :_reduce_351,
-  7, 236, :_reduce_352,
-  0, 288, :_reduce_353,
-  0, 289, :_reduce_354,
-  0, 290, :_reduce_355,
-  9, 236, :_reduce_356,
-  0, 291, :_reduce_357,
-  0, 292, :_reduce_358,
-  6, 236, :_reduce_359,
-  4, 236, :_reduce_360,
-  4, 236, :_reduce_361,
-  1, 236, :_reduce_362,
-  1, 236, :_reduce_363,
-  1, 236, :_reduce_364,
-  1, 236, :_reduce_365,
-  1, 182, :_reduce_366,
-  1, 258, :_reduce_none,
-  1, 264, :_reduce_none,
-  1, 267, :_reduce_none,
-  1, 269, :_reduce_none,
-  1, 270, :_reduce_none,
-  1, 271, :_reduce_none,
-  1, 274, :_reduce_none,
-  1, 276, :_reduce_374,
-  1, 279, :_reduce_375,
-  1, 198, :_reduce_376,
-  1, 293, :_reduce_none,
-  1, 294, :_reduce_none,
-  1, 295, :_reduce_none,
-  1, 296, :_reduce_none,
-  1, 297, :_reduce_none,
-  1, 163, :_reduce_none,
-  1, 298, :_reduce_none,
-  1, 259, :_reduce_none,
-  1, 216, :_reduce_none,
-  1, 265, :_reduce_none,
-  1, 265, :_reduce_none,
-  2, 265, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 203, :_reduce_none,
-  1, 266, :_reduce_none,
-  5, 266, :_reduce_392,
-  1, 268, :_reduce_none,
-  2, 268, :_reduce_394,
-  1, 275, :_reduce_none,
-  1, 275, :_reduce_396,
-  1, 299, :_reduce_none,
-  3, 299, :_reduce_398,
-  1, 302, :_reduce_399,
-  3, 302, :_reduce_400,
-  1, 301, :_reduce_401,
-  3, 301, :_reduce_402,
-  5, 301, :_reduce_403,
-  1, 301, :_reduce_404,
-  3, 301, :_reduce_405,
-  2, 303, :_reduce_406,
-  1, 303, :_reduce_407,
-  1, 304, :_reduce_none,
-  1, 304, :_reduce_none,
-  1, 307, :_reduce_none,
-  4, 308, :_reduce_411,
-  2, 308, :_reduce_412,
-  2, 308, :_reduce_413,
-  1, 308, :_reduce_414,
-  2, 312, :_reduce_415,
-  1, 312, :_reduce_none,
-  1, 313, :_reduce_417,
-  6, 314, :_reduce_418,
-  8, 314, :_reduce_419,
-  4, 314, :_reduce_420,
-  6, 314, :_reduce_421,
-  4, 314, :_reduce_422,
-  2, 314, :_reduce_423,
-  6, 314, :_reduce_424,
-  2, 314, :_reduce_425,
-  4, 314, :_reduce_426,
-  6, 314, :_reduce_427,
-  2, 314, :_reduce_428,
-  4, 314, :_reduce_429,
-  2, 314, :_reduce_430,
-  4, 314, :_reduce_431,
-  1, 314, :_reduce_432,
-  1, 318, :_reduce_433,
-  1, 318, :_reduce_434,
-  3, 319, :_reduce_435,
-  1, 319, :_reduce_436,
-  4, 319, :_reduce_437,
-  1, 320, :_reduce_none,
-  4, 320, :_reduce_439,
-  1, 321, :_reduce_440,
-  3, 321, :_reduce_441,
-  1, 322, :_reduce_442,
-  1, 322, :_reduce_none,
-  0, 326, :_reduce_444,
-  0, 327, :_reduce_445,
-  5, 263, :_reduce_446,
-  4, 324, :_reduce_447,
-  1, 324, :_reduce_448,
-  3, 325, :_reduce_449,
-  3, 325, :_reduce_450,
-  3, 329, :_reduce_451,
-  2, 207, :_reduce_452,
-  4, 207, :_reduce_453,
-  5, 207, :_reduce_454,
-  5, 207, :_reduce_455,
-  2, 262, :_reduce_456,
-  4, 262, :_reduce_457,
-  4, 262, :_reduce_458,
-  3, 262, :_reduce_459,
-  3, 262, :_reduce_460,
-  3, 262, :_reduce_461,
-  2, 262, :_reduce_462,
-  1, 262, :_reduce_463,
-  4, 262, :_reduce_464,
-  0, 332, :_reduce_465,
-  4, 261, :_reduce_466,
-  0, 333, :_reduce_467,
-  4, 261, :_reduce_468,
-  0, 334, :_reduce_469,
-  0, 335, :_reduce_470,
-  4, 212, :_reduce_471,
-  0, 337, :_reduce_472,
-  0, 338, :_reduce_473,
-  4, 330, :_reduce_474,
-  1, 336, :_reduce_475,
-  2, 336, :_reduce_476,
-  3, 336, :_reduce_477,
-  4, 336, :_reduce_478,
-  0, 340, :_reduce_479,
-  6, 272, :_reduce_480,
-  1, 339, :_reduce_none,
-  1, 339, :_reduce_none,
-  0, 343, :_reduce_483,
-  0, 344, :_reduce_484,
-  7, 273, :_reduce_485,
-  1, 342, :_reduce_none,
-  1, 342, :_reduce_none,
-  1, 341, :_reduce_none,
-  3, 341, :_reduce_489,
-  3, 341, :_reduce_490,
-  1, 193, :_reduce_none,
-  2, 193, :_reduce_492,
-  3, 193, :_reduce_493,
-  1, 193, :_reduce_494,
-  1, 193, :_reduce_495,
-  1, 193, :_reduce_496,
-  1, 345, :_reduce_none,
-  3, 350, :_reduce_498,
-  1, 350, :_reduce_none,
-  3, 352, :_reduce_500,
-  1, 352, :_reduce_none,
-  1, 354, :_reduce_502,
-  1, 355, :_reduce_503,
-  1, 353, :_reduce_none,
-  1, 353, :_reduce_none,
-  4, 353, :_reduce_506,
-  4, 353, :_reduce_507,
-  4, 353, :_reduce_508,
-  3, 353, :_reduce_509,
-  4, 353, :_reduce_510,
-  4, 353, :_reduce_511,
-  4, 353, :_reduce_512,
-  3, 353, :_reduce_513,
-  3, 353, :_reduce_514,
-  3, 353, :_reduce_515,
-  2, 353, :_reduce_516,
-  0, 359, :_reduce_517,
-  4, 353, :_reduce_518,
-  2, 353, :_reduce_519,
-  0, 360, :_reduce_520,
-  4, 353, :_reduce_521,
-  1, 346, :_reduce_522,
-  1, 346, :_reduce_523,
-  2, 346, :_reduce_524,
-  3, 346, :_reduce_525,
-  5, 346, :_reduce_526,
-  2, 346, :_reduce_527,
-  4, 346, :_reduce_528,
-  1, 346, :_reduce_none,
-  2, 361, :_reduce_530,
-  3, 361, :_reduce_531,
-  1, 348, :_reduce_532,
-  3, 348, :_reduce_533,
-  5, 347, :_reduce_534,
-  2, 364, :_reduce_535,
-  1, 364, :_reduce_536,
-  1, 363, :_reduce_none,
-  3, 363, :_reduce_538,
-  1, 362, :_reduce_539,
-  3, 349, :_reduce_540,
-  1, 349, :_reduce_541,
-  2, 349, :_reduce_542,
-  1, 349, :_reduce_543,
-  1, 365, :_reduce_none,
-  3, 365, :_reduce_545,
-  2, 367, :_reduce_546,
-  1, 367, :_reduce_547,
-  1, 368, :_reduce_548,
-  3, 368, :_reduce_549,
-  2, 370, :_reduce_550,
-  1, 370, :_reduce_551,
-  2, 372, :_reduce_552,
-  1, 366, :_reduce_none,
-  1, 366, :_reduce_none,
-  1, 356, :_reduce_none,
-  3, 356, :_reduce_556,
-  3, 356, :_reduce_557,
-  2, 356, :_reduce_558,
-  2, 356, :_reduce_559,
-  1, 356, :_reduce_none,
-  1, 356, :_reduce_none,
-  1, 356, :_reduce_none,
-  2, 356, :_reduce_563,
-  2, 356, :_reduce_564,
-  1, 373, :_reduce_none,
-  1, 373, :_reduce_none,
-  1, 373, :_reduce_none,
-  1, 373, :_reduce_none,
-  1, 373, :_reduce_569,
-  1, 373, :_reduce_570,
-  1, 373, :_reduce_571,
-  1, 373, :_reduce_572,
-  1, 373, :_reduce_573,
-  1, 373, :_reduce_none,
-  1, 351, :_reduce_575,
-  2, 374, :_reduce_576,
-  2, 374, :_reduce_577,
-  4, 375, :_reduce_578,
-  2, 357, :_reduce_579,
-  3, 357, :_reduce_580,
-  1, 357, :_reduce_581,
-  6, 162, :_reduce_582,
-  0, 162, :_reduce_583,
-  1, 377, :_reduce_584,
-  1, 377, :_reduce_none,
-  1, 377, :_reduce_none,
-  2, 378, :_reduce_587,
-  1, 378, :_reduce_none,
-  2, 164, :_reduce_589,
-  1, 164, :_reduce_none,
-  1, 249, :_reduce_591,
-  1, 249, :_reduce_none,
-  1, 250, :_reduce_593,
-  1, 380, :_reduce_594,
-  1, 380, :_reduce_none,
-  2, 380, :_reduce_596,
-  3, 381, :_reduce_597,
-  1, 381, :_reduce_598,
-  3, 251, :_reduce_599,
-  3, 252, :_reduce_600,
-  3, 253, :_reduce_601,
-  3, 253, :_reduce_602,
-  1, 384, :_reduce_603,
-  3, 384, :_reduce_604,
-  1, 385, :_reduce_none,
-  2, 385, :_reduce_606,
-  3, 255, :_reduce_607,
-  3, 255, :_reduce_608,
-  1, 387, :_reduce_609,
-  3, 387, :_reduce_610,
-  3, 254, :_reduce_611,
-  3, 254, :_reduce_612,
-  3, 256, :_reduce_613,
-  3, 256, :_reduce_614,
-  1, 388, :_reduce_615,
-  3, 388, :_reduce_616,
-  1, 389, :_reduce_617,
-  3, 389, :_reduce_618,
-  1, 369, :_reduce_619,
-  2, 369, :_reduce_620,
-  1, 382, :_reduce_621,
-  2, 382, :_reduce_622,
-  1, 383, :_reduce_623,
-  2, 383, :_reduce_624,
-  1, 386, :_reduce_625,
-  0, 391, :_reduce_626,
-  3, 386, :_reduce_627,
-  0, 392, :_reduce_628,
-  4, 386, :_reduce_629,
-  1, 390, :_reduce_630,
-  1, 390, :_reduce_631,
-  1, 390, :_reduce_632,
-  1, 390, :_reduce_none,
-  1, 231, :_reduce_none,
-  1, 231, :_reduce_none,
-  2, 393, :_reduce_636,
-  1, 393, :_reduce_637,
-  1, 395, :_reduce_none,
-  1, 395, :_reduce_none,
-  1, 395, :_reduce_none,
-  1, 395, :_reduce_none,
-  3, 394, :_reduce_642,
-  1, 379, :_reduce_none,
-  2, 379, :_reduce_644,
-  1, 234, :_reduce_none,
-  1, 234, :_reduce_none,
-  1, 234, :_reduce_none,
-  1, 234, :_reduce_none,
-  1, 376, :_reduce_649,
-  1, 376, :_reduce_650,
-  1, 376, :_reduce_651,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 225, :_reduce_none,
-  1, 226, :_reduce_657,
-  1, 226, :_reduce_658,
-  1, 226, :_reduce_659,
-  1, 226, :_reduce_660,
-  1, 226, :_reduce_661,
-  1, 226, :_reduce_662,
-  1, 226, :_reduce_663,
-  1, 257, :_reduce_664,
-  1, 257, :_reduce_665,
-  1, 181, :_reduce_666,
-  1, 181, :_reduce_667,
-  1, 191, :_reduce_668,
-  1, 191, :_reduce_669,
-  0, 396, :_reduce_670,
-  4, 277, :_reduce_671,
-  1, 277, :_reduce_672,
-  1, 187, :_reduce_none,
-  1, 187, :_reduce_674,
-  3, 397, :_reduce_675,
-  1, 280, :_reduce_none,
-  0, 399, :_reduce_677,
-  3, 280, :_reduce_678,
-  4, 398, :_reduce_679,
-  2, 398, :_reduce_680,
-  2, 398, :_reduce_681,
-  1, 398, :_reduce_none,
-  1, 398, :_reduce_none,
-  2, 401, :_reduce_684,
-  0, 401, :_reduce_685,
-  6, 328, :_reduce_686,
-  8, 328, :_reduce_687,
-  4, 328, :_reduce_688,
-  6, 328, :_reduce_689,
-  4, 328, :_reduce_690,
-  6, 328, :_reduce_691,
-  2, 328, :_reduce_692,
-  4, 328, :_reduce_693,
-  6, 328, :_reduce_694,
-  2, 328, :_reduce_695,
-  4, 328, :_reduce_696,
-  2, 328, :_reduce_697,
-  4, 328, :_reduce_698,
-  1, 328, :_reduce_699,
-  0, 328, :_reduce_700,
-  1, 244, :_reduce_701,
-  1, 323, :_reduce_702,
-  1, 323, :_reduce_703,
-  1, 323, :_reduce_704,
-  1, 323, :_reduce_705,
-  1, 300, :_reduce_none,
-  1, 300, :_reduce_707,
-  1, 403, :_reduce_none,
-  1, 404, :_reduce_none,
-  3, 404, :_reduce_710,
-  1, 315, :_reduce_711,
-  3, 315, :_reduce_712,
-  1, 405, :_reduce_none,
-  2, 406, :_reduce_714,
-  1, 406, :_reduce_715,
-  2, 407, :_reduce_716,
-  1, 407, :_reduce_717,
-  1, 309, :_reduce_none,
-  3, 309, :_reduce_719,
-  1, 400, :_reduce_none,
-  3, 400, :_reduce_721,
-  1, 371, :_reduce_none,
-  1, 371, :_reduce_none,
-  2, 306, :_reduce_724,
-  2, 305, :_reduce_725,
-  1, 305, :_reduce_726,
-  3, 408, :_reduce_727,
-  3, 409, :_reduce_728,
-  1, 316, :_reduce_729,
-  3, 316, :_reduce_730,
-  1, 402, :_reduce_731,
-  3, 402, :_reduce_732,
-  1, 410, :_reduce_none,
-  1, 410, :_reduce_none,
-  2, 317, :_reduce_735,
-  1, 317, :_reduce_736,
-  1, 411, :_reduce_none,
-  1, 411, :_reduce_none,
-  2, 311, :_reduce_739,
-  1, 311, :_reduce_740,
-  2, 310, :_reduce_741,
-  0, 310, :_reduce_742,
-  1, 199, :_reduce_none,
-  0, 412, :_reduce_744,
-  4, 199, :_reduce_745,
-  1, 260, :_reduce_746,
-  2, 260, :_reduce_none,
-  1, 242, :_reduce_none,
-  3, 242, :_reduce_749,
-  3, 413, :_reduce_750,
-  2, 413, :_reduce_751,
-  1, 413, :_reduce_752,
-  4, 413, :_reduce_753,
-  2, 413, :_reduce_754,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 215, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 209, :_reduce_none,
-  1, 331, :_reduce_none,
-  1, 331, :_reduce_none,
-  1, 331, :_reduce_none,
-  1, 200, :_reduce_none,
-  1, 200, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 185, :_reduce_none,
-  1, 208, :_reduce_none,
-  1, 208, :_reduce_none,
-  0, 152, :_reduce_none,
-  1, 152, :_reduce_none,
-  0, 192, :_reduce_none,
-  1, 192, :_reduce_none,
-  2, 220, :_reduce_none,
-  2, 184, :_reduce_776,
-  2, 358, :_reduce_777,
-  0, 241, :_reduce_none,
-  1, 241, :_reduce_none,
-  1, 241, :_reduce_none,
-  1, 278, :_reduce_781,
-  1, 278, :_reduce_none,
-  1, 155, :_reduce_none,
-  2, 155, :_reduce_784,
-  0, 153, :_reduce_785 ]
-
-racc_reduce_n = 786
-
-racc_shift_n = 1299
-
-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,
-  :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,
-  :tQWORDS_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,
-  :tDSTAR => 134,
-  :tCHAR => 135,
-  :tSYMBOLS_BEG => 136,
-  :tQSYMBOLS_BEG => 137,
-  :tSTRING_DEND => 138,
-  :tRATIONAL => 139,
-  :tIMAGINARY => 140,
-  :tLABEL_END => 141,
-  :tLONELY => 142,
-  :tBDOT2 => 143,
-  :tBDOT3 => 144,
-  :tLOWEST => 145,
-  :tEQL => 146 }
-
-racc_nt_base = 147
-
-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",
-  "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",
-  "tNL",
-  "tEH",
-  "tCOLON",
-  "tCOMMA",
-  "tSPACE",
-  "tSEMI",
-  "tLAMBDA",
-  "tLAMBEG",
-  "tDSTAR",
-  "tCHAR",
-  "tSYMBOLS_BEG",
-  "tQSYMBOLS_BEG",
-  "tSTRING_DEND",
-  "tRATIONAL",
-  "tIMAGINARY",
-  "tLABEL_END",
-  "tLONELY",
-  "tBDOT2",
-  "tBDOT3",
-  "tLOWEST",
-  "tEQL",
-  "$start",
-  "program",
-  "top_compstmt",
-  "@1",
-  "top_stmts",
-  "opt_terms",
-  "none",
-  "top_stmt",
-  "terms",
-  "stmt",
-  "begin_block",
-  "@2",
-  "bodystmt",
-  "@3",
-  "compstmt",
-  "opt_rescue",
-  "k_else",
-  "opt_ensure",
-  "@4",
-  "stmts",
-  "stmt_or_begin",
-  "@5",
-  "fitem",
-  "undef_list",
-  "expr_value",
-  "command_asgn",
-  "mlhs",
-  "command_call",
-  "lhs",
-  "mrhs",
-  "mrhs_arg",
-  "expr",
-  "@6",
-  "command_rhs",
-  "var_lhs",
-  "primary_value",
-  "opt_call_args",
-  "rbracket",
-  "call_op",
-  "defn_head",
-  "f_opt_paren_args",
-  "command",
-  "arg",
-  "defs_head",
-  "backref",
-  "opt_nl",
-  "p_top_expr_body",
-  "def_name",
-  "@7",
-  "@8",
-  "fname",
-  "k_def",
-  "singleton",
-  "dot_or_colon",
-  "@9",
-  "expr_value_do",
-  "do",
-  "@10",
-  "@11",
-  "block_command",
-  "block_call",
-  "call_op2",
-  "operation2",
-  "command_args",
-  "cmd_brace_block",
-  "brace_body",
-  "fcall",
-  "@12",
-  "operation",
-  "k_return",
-  "call_args",
-  "mlhs_basic",
-  "mlhs_inner",
-  "rparen",
-  "mlhs_head",
-  "mlhs_item",
-  "mlhs_node",
-  "mlhs_post",
-  "user_variable",
-  "keyword_variable",
-  "cname",
-  "cpath",
-  "op",
-  "reswords",
-  "symbol",
-  "@13",
-  "arg_rhs",
-  "simple_numeric",
-  "rel_expr",
-  "primary",
-  "relop",
-  "arg_value",
-  "aref_args",
-  "args",
-  "trailer",
-  "assocs",
-  "paren_args",
-  "args_forward",
-  "opt_paren_args",
-  "opt_block_arg",
-  "block_arg",
-  "@14",
-  "literal",
-  "strings",
-  "xstring",
-  "regexp",
-  "words",
-  "qwords",
-  "symbols",
-  "qsymbols",
-  "var_ref",
-  "k_begin",
-  "k_end",
-  "assoc_list",
-  "brace_block",
-  "method_call",
-  "lambda",
-  "k_if",
-  "then",
-  "if_tail",
-  "k_unless",
-  "opt_else",
-  "k_while",
-  "k_until",
-  "k_case",
-  "case_body",
-  "p_case_body",
-  "k_for",
-  "for_var",
-  "k_class",
-  "superclass",
-  "term",
-  "k_module",
-  "f_arglist",
-  "@15",
-  "@16",
-  "@17",
-  "@18",
-  "@19",
-  "@20",
-  "@21",
-  "@22",
-  "@23",
-  "@24",
-  "@25",
-  "@26",
-  "k_do",
-  "k_do_block",
-  "k_rescue",
-  "k_ensure",
-  "k_when",
-  "k_elsif",
-  "f_marg",
-  "f_norm_arg",
-  "f_margs",
-  "f_marg_list",
-  "f_rest_marg",
-  "f_any_kwrest",
-  "f_kwrest",
-  "f_no_kwarg",
-  "f_eq",
-  "block_args_tail",
-  "f_block_kwarg",
-  "opt_f_block_arg",
-  "f_block_arg",
-  "opt_block_args_tail",
-  "excessed_comma",
-  "block_param",
-  "f_arg",
-  "f_block_optarg",
-  "f_rest_arg",
-  "opt_block_param",
-  "block_param_def",
-  "opt_bv_decl",
-  "bv_decls",
-  "bvar",
-  "f_bad_arg",
-  "f_larglist",
-  "lambda_body",
-  "@27",
-  "@28",
-  "f_args",
-  "do_block",
-  "do_body",
-  "operation3",
-  "@29",
-  "@30",
-  "@31",
-  "@32",
-  "case_args",
-  "@33",
-  "@34",
-  "cases",
-  "@35",
-  "p_top_expr",
-  "p_cases",
-  "@36",
-  "@37",
-  "p_expr",
-  "p_args",
-  "p_find",
-  "p_args_tail",
-  "p_kwargs",
-  "p_as",
-  "p_variable",
-  "p_alt",
-  "p_expr_basic",
-  "p_lparen",
-  "p_lbracket",
-  "p_value",
-  "p_const",
-  "rbrace",
-  "@38",
-  "@39",
-  "p_args_head",
-  "p_arg",
-  "p_args_post",
-  "p_rest",
-  "p_kwarg",
-  "p_any_kwrest",
-  "p_kw",
-  "p_kw_label",
-  "string_contents",
-  "p_kwrest",
-  "kwrest_mark",
-  "p_kwnorest",
-  "p_primitive",
-  "p_var_ref",
-  "p_expr_ref",
-  "nonlocal_var",
-  "exc_list",
-  "exc_var",
-  "numeric",
-  "string",
-  "string1",
-  "xstring_contents",
-  "regexp_contents",
-  "word_list",
-  "word",
-  "string_content",
-  "symbol_list",
-  "qword_list",
-  "qsym_list",
-  "string_dvar",
-  "@40",
-  "@41",
-  "ssym",
-  "dsym",
-  "sym",
-  "@42",
-  "f_paren_args",
-  "args_tail",
-  "@43",
-  "f_kwarg",
-  "opt_args_tail",
-  "f_optarg",
-  "f_arg_asgn",
-  "f_arg_item",
-  "f_label",
-  "f_kw",
-  "f_block_kw",
-  "f_opt",
-  "f_block_opt",
-  "restarg_mark",
-  "blkarg_mark",
-  "@44",
-  "assoc" ]
-
-Racc_debug_parser = false
-
-##### State transition tables end #####
-
-# reduce 0 omitted
-
-def _reduce_1(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_2(val, _values, result)
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-
-    result
-end
-
-def _reduce_3(val, _values, result)
-                      stmt, _ = val
-                      result = stmt
-
-    result
-end
-
-# reduce 4 omitted
-
-# reduce 5 omitted
-
-def _reduce_6(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 7 omitted
-
-# reduce 8 omitted
-
-def _reduce_9(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 1
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_10(val, _values, result)
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-
-    result
-end
-
-def _reduce_11(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_12(val, _values, result)
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-
-    result
-end
-
-def _reduce_13(val, _values, result)
-                      res = _values[-2]
-                      yyerror "else without rescue is useless" unless res
-
-    result
-end
-
-def _reduce_14(val, _values, result)
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-
-    result
-end
-
-def _reduce_15(val, _values, result)
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-
-    result
-end
-
-def _reduce_16(val, _values, result)
-                      result = new_compstmt val
-
-    result
-end
-
-# reduce 17 omitted
-
-# reduce 18 omitted
-
-def _reduce_19(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-def _reduce_20(val, _values, result)
-                      result = val[1]
-                      debug 2
-
-    result
-end
-
-# reduce 21 omitted
-
-def _reduce_22(val, _values, result)
-                      yyerror "BEGIN is permitted only at toplevel"
-
-    result
-end
-
-def _reduce_23(val, _values, result)
-                      result = val[2] # wtf?
-
-    result
-end
-
-def _reduce_24(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_25(val, _values, result)
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-
-    result
-end
-
-def _reduce_26(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-
-    result
-end
-
-def _reduce_27(val, _values, result)
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-
-    result
-end
-
-def _reduce_28(val, _values, result)
-                      yyerror "can't make alias for the number variables"
-
-    result
-end
-
-def _reduce_29(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_30(val, _values, result)
-                      t, _, c = val
-                      result = new_if c, t, nil
-
-    result
-end
-
-def _reduce_31(val, _values, result)
-                      f, _, c = val
-                      result = new_if c, nil, f
-
-    result
-end
-
-def _reduce_32(val, _values, result)
-                      e, _, c = val
-                      result = new_while e, c, true
-
-    result
-end
-
-def _reduce_33(val, _values, result)
-                      e, _, c = val
-                      result = new_until e, c, true
-
-    result
-end
-
-def _reduce_34(val, _values, result)
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-
-    result
-end
-
-def _reduce_35(val, _values, result)
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 3
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-
-    result
-end
-
-# reduce 36 omitted
-
-def _reduce_37(val, _values, result)
-                      result = new_masgn val[0], val[2], :wrap
-
-    result
-end
-
-def _reduce_38(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-
-    result
-end
-
-def _reduce_39(val, _values, result)
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-
-    result
-end
-
-def _reduce_40(val, _values, result)
-                      result = new_masgn val[0], val[2]
-
-    result
-end
-
-# reduce 41 omitted
-
-def _reduce_42(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_43(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_44(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_45(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_46(val, _values, result)
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-
-    result
-end
-
-def _reduce_47(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_48(val, _values, result)
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-
-    result
-end
-
-def _reduce_49(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_50(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_51(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-def _reduce_52(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-def _reduce_53(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_54(val, _values, result)
-                      expr, = val
-                      result = value_expr expr
-
-    result
-end
-
-def _reduce_55(val, _values, result)
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-
-    result
-end
-
-# reduce 56 omitted
-
-# reduce 57 omitted
-
-def _reduce_58(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-
-    result
-end
-
-def _reduce_59(val, _values, result)
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-
-    result
-end
-
-def _reduce_60(val, _values, result)
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-
-    result
-end
-
-def _reduce_61(val, _values, result)
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-
-    result
-end
-
-def _reduce_62(val, _values, result)
-                      # value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-
-    result
-end
-
-def _reduce_63(val, _values, result)
-                      lhs, _, in_kwarg, rhs = val
-
-                      self.env.unextend
-                      self.in_kwarg = in_kwarg
-
-                      rhs = new_in rhs, nil, nil, rhs.line
-                      result = new_case lhs, rhs, rhs.line
-
-    result
-end
-
-def _reduce_64(val, _values, result)
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-
-    result
-end
-
-def _reduce_65(val, _values, result)
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-
-    result
-end
-
-# reduce 66 omitted
-
-def _reduce_67(val, _values, result)
-                      # TODO: numparam_name(p, fname);
-
-                      (id, line), = val
-                      old_in_def = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      result = [id.to_sym, line, old_in_def]
-
-    result
-end
-
-def _reduce_68(val, _values, result)
-                      _, name = val
-                      result = name
-
-    result
-end
-
-def _reduce_69(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_70(val, _values, result)
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                      self.in_single += 1 # TODO: remove?
-
-                      # self.in_def = true # local_push
-                      # self.env.extend
-                      # lexer.cmdarg.push false
-                      # lexer.cond.push false
-
-                      _, recv, _, _, name = val
-
-                      result = [recv, name]
-
-    result
-end
-
-def _reduce_71(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-def _reduce_72(val, _values, result)
-                      lexer.cond.push true
-
-    result
-end
-
-def _reduce_73(val, _values, result)
-                      lexer.cond.pop
-
-    result
-end
-
-def _reduce_74(val, _values, result)
-                      _, expr, _, _ = val
-                      result = expr
-
-    result
-end
-
-# reduce 75 omitted
-
-# reduce 76 omitted
-
-# reduce 77 omitted
-
-def _reduce_78(val, _values, result)
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-
-    result
-end
-
-def _reduce_79(val, _values, result)
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_80(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-
-    result
-end
-
-def _reduce_81(val, _values, result)
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-
-    result
-end
-
-def _reduce_82(val, _values, result)
-                      call, args = val
-                      result = call.concat args.sexp_body
-
-    result
-end
-
-def _reduce_83(val, _values, result)
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-
-    result
-end
-
-def _reduce_84(val, _values, result)
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-
-    result
-end
-
-def _reduce_85(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_86(val, _values, result)
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-
-    result
-end
-
-def _reduce_87(val, _values, result)
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-
-    result
-end
-
-def _reduce_88(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_89(val, _values, result)
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-
-    result
-end
-
-def _reduce_90(val, _values, result)
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-
-    result
-end
-
-def _reduce_91(val, _values, result)
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-
-    result
-end
-
-def _reduce_92(val, _values, result)
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-
-    result
-end
-
-# reduce 93 omitted
-
-def _reduce_94(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 95 omitted
-
-def _reduce_96(val, _values, result)
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-
-    result
-end
-
-def _reduce_97(val, _values, result)
-                      head, = val
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_98(val, _values, result)
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-
-    result
-end
-
-def _reduce_99(val, _values, result)
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-
-    result
-end
-
-def _reduce_100(val, _values, result)
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-
-    result
-end
-
-def _reduce_101(val, _values, result)
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-
-    result
-end
-
-def _reduce_102(val, _values, result)
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_103(val, _values, result)
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-def _reduce_104(val, _values, result)
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-
-    result
-end
-
-def _reduce_105(val, _values, result)
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-
-    result
-end
-
-def _reduce_106(val, _values, result)
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-
-    result
-end
-
-# reduce 107 omitted
-
-def _reduce_108(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_109(val, _values, result)
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-
-    result
-end
-
-def _reduce_110(val, _values, result)
-                      result = val[0] << val[1].compact
-
-    result
-end
-
-def _reduce_111(val, _values, result)
-                      item, = val
-                      result = s(:array, item).line item.line
-
-    result
-end
-
-def _reduce_112(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_113(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_114(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_115(val, _values, result)
-                      result = self.aryset val[0], val[2]
-
-    result
-end
-
-def _reduce_116(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_117(val, _values, result)
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-
-    result
-end
-
-def _reduce_118(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_119(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 4
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-
-    result
-end
-
-def _reduce_120(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        debug 5
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_121(val, _values, result)
-                      ref, = val
-
-                      self.backref_assign_error ref
-
-    result
-end
-
-def _reduce_122(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-    result
-end
-
-def _reduce_123(val, _values, result)
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 6
-
-    result
-end
-
-def _reduce_124(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-
-    result
-end
-
-def _reduce_125(val, _values, result)
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-
-    result
-end
-
-def _reduce_126(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-
-    result
-end
-
-def _reduce_127(val, _values, result)
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-
-    result
-end
-
-def _reduce_128(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 7
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_129(val, _values, result)
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 8
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_130(val, _values, result)
-                      self.backref_assign_error val[0]
-
-    result
-end
-
-def _reduce_131(val, _values, result)
-                      yyerror "class/module name must be CONSTANT"
-
-    result
-end
-
-# reduce 132 omitted
-
-def _reduce_133(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_134(val, _values, result)
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-
-    result
-end
-
-def _reduce_135(val, _values, result)
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-
-    result
-end
-
-# reduce 136 omitted
-
-# reduce 137 omitted
-
-# reduce 138 omitted
-
-def _reduce_139(val, _values, result)
-                      lexer.lex_state = EXPR_END
-
-    result
-end
-
-# reduce 140 omitted
-
-def _reduce_141(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 142 omitted
-
-def _reduce_143(val, _values, result)
-                      result = new_undef val[0]
-
-    result
-end
-
-def _reduce_144(val, _values, result)
-                      lexer.lex_state = EXPR_FNAME
-
-    result
-end
-
-def _reduce_145(val, _values, result)
-                      result = new_undef val[0], val[3]
-
-    result
-end
-
-# 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
-
-# reduce 194 omitted
-
-# reduce 195 omitted
-
-# reduce 196 omitted
-
-# reduce 197 omitted
-
-# reduce 198 omitted
-
-# reduce 199 omitted
-
-# reduce 200 omitted
-
-# reduce 201 omitted
-
-# reduce 202 omitted
-
-# reduce 203 omitted
-
-# reduce 204 omitted
-
-# reduce 205 omitted
-
-# reduce 206 omitted
-
-# reduce 207 omitted
-
-# reduce 208 omitted
-
-# reduce 209 omitted
-
-# reduce 210 omitted
-
-# reduce 211 omitted
-
-# reduce 212 omitted
-
-# reduce 213 omitted
-
-# reduce 214 omitted
-
-# reduce 215 omitted
-
-# reduce 216 omitted
-
-def _reduce_217(val, _values, result)
-                      result = new_assign val[0], val[2]
-
-    result
-end
-
-def _reduce_218(val, _values, result)
-                      result = new_op_asgn val
-
-    result
-end
-
-def _reduce_219(val, _values, result)
-                      result = new_op_asgn1 val
-
-    result
-end
-
-def _reduce_220(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_221(val, _values, result)
-                      result = new_op_asgn2 val
-
-    result
-end
-
-def _reduce_222(val, _values, result)
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-
-    result
-end
-
-def _reduce_223(val, _values, result)
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_224(val, _values, result)
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-
-    result
-end
-
-def _reduce_225(val, _values, result)
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-
-    result
-end
-
-def _reduce_226(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_227(val, _values, result)
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-
-    result
-end
-
-def _reduce_228(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_229(val, _values, result)
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_230(val, _values, result)
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-
-    result
-end
-
-def _reduce_231(val, _values, result)
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-
-    result
-end
-
-def _reduce_232(val, _values, result)
-                      result = new_call val[0], :+, argl(val[2])
-
-    result
-end
-
-def _reduce_233(val, _values, result)
-                      result = new_call val[0], :-, argl(val[2])
-
-    result
-end
-
-def _reduce_234(val, _values, result)
-                      result = new_call val[0], :*, argl(val[2])
-
-    result
-end
-
-def _reduce_235(val, _values, result)
-                      result = new_call val[0], :"/", argl(val[2])
-
-    result
-end
-
-def _reduce_236(val, _values, result)
-                      result = new_call val[0], :"%", argl(val[2])
-
-    result
-end
-
-def _reduce_237(val, _values, result)
-                      result = new_call val[0], :**, argl(val[2])
-
-    result
-end
-
-def _reduce_238(val, _values, result)
-                      _, num, _, arg = val
-                      lit = wrap :lit, num
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-
-    result
-end
-
-def _reduce_239(val, _values, result)
-                      result = new_call val[1], :"+@"
-
-    result
-end
-
-def _reduce_240(val, _values, result)
-                      result = new_call val[1], :"-@"
-
-    result
-end
-
-def _reduce_241(val, _values, result)
-                      result = new_call val[0], :"|", argl(val[2])
-
-    result
-end
-
-def _reduce_242(val, _values, result)
-                      result = new_call val[0], :"^", argl(val[2])
-
-    result
-end
-
-def _reduce_243(val, _values, result)
-                      result = new_call val[0], :"&", argl(val[2])
-
-    result
-end
-
-def _reduce_244(val, _values, result)
-                      result = new_call val[0], :"<=>", argl(val[2])
-
-    result
-end
-
-# reduce 245 omitted
-
-def _reduce_246(val, _values, result)
-                      result = new_call val[0], :"==", argl(val[2])
-
-    result
-end
-
-def _reduce_247(val, _values, result)
-                      result = new_call val[0], :"===", argl(val[2])
-
-    result
-end
-
-def _reduce_248(val, _values, result)
-                      result = new_call val[0], :"!=", argl(val[2])
-
-    result
-end
-
-def _reduce_249(val, _values, result)
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-
-    result
-end
-
-def _reduce_250(val, _values, result)
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-
-    result
-end
-
-def _reduce_251(val, _values, result)
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-
-    result
-end
-
-def _reduce_252(val, _values, result)
-                      result = new_call value_expr(val[1]), :"~"
-
-    result
-end
-
-def _reduce_253(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-
-    result
-end
-
-def _reduce_254(val, _values, result)
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-
-    result
-end
-
-def _reduce_255(val, _values, result)
-                      result = logical_op :and, val[0], val[2]
-
-    result
-end
-
-def _reduce_256(val, _values, result)
-                      result = logical_op :or, val[0], val[2]
-
-    result
-end
-
-def _reduce_257(val, _values, result)
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_258(val, _values, result)
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-
-    result
-end
-
-def _reduce_259(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_260(val, _values, result)
-                      result = new_endless_defn val
-
-    result
-end
-
-def _reduce_261(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-def _reduce_262(val, _values, result)
-                      result = new_endless_defs val
-
-    result
-end
-
-# reduce 263 omitted
-
-# reduce 264 omitted
-
-# reduce 265 omitted
-
-# reduce 266 omitted
-
-# reduce 267 omitted
-
-def _reduce_268(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_269(val, _values, result)
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-
-    result
-end
-
-def _reduce_270(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 271 omitted
-
-def _reduce_272(val, _values, result)
-                      result = args [val[0]]
-
-    result
-end
-
-def _reduce_273(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_274(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-# reduce 275 omitted
-
-def _reduce_276(val, _values, result)
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-
-    result
-end
-
-def _reduce_277(val, _values, result)
-                      _, args, _ = val
-                      result = args
-
-    result
-end
-
-def _reduce_278(val, _values, result)
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-
-    result
-end
-
-def _reduce_279(val, _values, result)
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-
-    result
-end
-
-# reduce 280 omitted
-
-# reduce 281 omitted
-
-# reduce 282 omitted
-
-# reduce 283 omitted
-
-def _reduce_284(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_285(val, _values, result)
-                      result = args [val[0], array_to_hash(val[2])]
-
-    result
-end
-
-def _reduce_286(val, _values, result)
-                      result = args [array_to_hash(val[0])]
-
-    result
-end
-
-def _reduce_287(val, _values, result)
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-
-    result
-end
-
-def _reduce_288(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_289(val, _values, result)
-                      result = call_args [array_to_hash(val[0]), val[1]]
-
-    result
-end
-
-def _reduce_290(val, _values, result)
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-
-    result
-end
-
-def _reduce_291(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_292(val, _values, result)
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-
-    result
-end
-
-def _reduce_293(val, _values, result)
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-
-    result
-end
-
-def _reduce_294(val, _values, result)
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-
-    result
-end
-
-def _reduce_295(val, _values, result)
-                      (_, line), = val
-                      result = s(:block_pass).line line
-
-    result
-end
-
-def _reduce_296(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 297 omitted
-
-def _reduce_298(val, _values, result)
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-
-    result
-end
-
-def _reduce_299(val, _values, result)
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_300(val, _values, result)
-                      args, _, id = val
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_301(val, _values, result)
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-
-    result
-end
-
-def _reduce_302(val, _values, result)
-                      result = new_masgn_arg val[0]
-
-    result
-end
-
-def _reduce_303(val, _values, result)
-                      result = new_masgn_arg val[0], :wrap
-
-    result
-end
-
-def _reduce_304(val, _values, result)
-                      result = val[0] << val[2]
-
-    result
-end
-
-def _reduce_305(val, _values, result)
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-
-    result
-end
-
-def _reduce_306(val, _values, result)
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-
-    result
-end
-
-# reduce 307 omitted
-
-# reduce 308 omitted
-
-# reduce 309 omitted
-
-# reduce 310 omitted
-
-# reduce 311 omitted
-
-# reduce 312 omitted
-
-# reduce 313 omitted
-
-# reduce 314 omitted
-
-# reduce 315 omitted
-
-# reduce 316 omitted
-
-def _reduce_317(val, _values, result)
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-
-    result
-end
-
-def _reduce_318(val, _values, result)
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_319(val, _values, result)
-                      lexer.cmdarg.pop
-                      result = new_begin val
-
-    result
-end
-
-def _reduce_320(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-
-    result
-end
-
-def _reduce_321(val, _values, result)
-                      _, line, _ = val
-                      result = s(:begin).line line
-
-    result
-end
-
-def _reduce_322(val, _values, result)
-                      lexer.lex_state = EXPR_ENDARG
-
-    result
-end
-
-def _reduce_323(val, _values, result)
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-
-    result
-end
-
-def _reduce_324(val, _values, result)
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-
-    result
-end
-
-def _reduce_325(val, _values, result)
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-
-    result
-end
-
-def _reduce_326(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_327(val, _values, result)
- result = lexer.lineno
-    result
-end
-
-def _reduce_328(val, _values, result)
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-
-    result
-end
-
-def _reduce_329(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_330(val, _values, result)
-                      result = new_hash val
-
-    result
-end
-
-def _reduce_331(val, _values, result)
-                      (_, line), = val
-                      result = s(:return).line line
-
-    result
-end
-
-def _reduce_332(val, _values, result)
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-
-    result
-end
-
-def _reduce_333(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_334(val, _values, result)
-                      (_, line), = val
-
-                      result = new_yield.line line
-
-    result
-end
-
-def _reduce_335(val, _values, result)
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-
-    result
-end
-
-def _reduce_336(val, _values, result)
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-
-    result
-end
-
-def _reduce_337(val, _values, result)
-                      debug 9
-
-    result
-end
-
-def _reduce_338(val, _values, result)
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-
-    result
-end
-
-# reduce 339 omitted
-
-def _reduce_340(val, _values, result)
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-
-    result
-end
-
-def _reduce_341(val, _values, result)
-                      expr, = val
-                      result = expr
-
-    result
-end
-
-def _reduce_342(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-
-    result
-end
-
-def _reduce_343(val, _values, result)
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-
-    result
-end
-
-def _reduce_344(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-
-    result
-end
-
-def _reduce_345(val, _values, result)
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-
-    result
-end
-
-def _reduce_346(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_347(val, _values, result)
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-
-    result
-end
-
-def _reduce_348(val, _values, result)
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-
-    result
-end
-
-def _reduce_349(val, _values, result)
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-
-    result
-end
-
-def _reduce_350(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_351(val, _values, result)
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-
-    result
-end
-
-def _reduce_352(val, _values, result)
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_353(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_354(val, _values, result)
-                      result = self.in_def
-                      self.in_def = false
-
-    result
-end
-
-def _reduce_355(val, _values, result)
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-
-    result
-end
-
-def _reduce_356(val, _values, result)
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_357(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_358(val, _values, result)
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-
-    result
-end
-
-def _reduce_359(val, _values, result)
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_360(val, _values, result)
-                      # [               [:f, 1, false], s(:args)...]
-                      # =>
-                      # [[:k_def, 666], [:f, 1], false, s(:args)...]
-                      val.insert 1, val.first.pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_361(val, _values, result)
-                      # [        [recv, [:name, 1, false]], s(:args...]
-                      # =>
-                      # [         recv, [:name, 1, false],  s(:args...]
-                      # =>
-                      # [         recv, [:name, 1], false,  s(:args...]
-                      # =>
-                      # [ :k_def, recv, [:name, 1], false,  s(:args...]
-
-                      val.prepend(*val.shift)
-                      val.insert 2, val[1].pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-
-    result
-end
-
-def _reduce_362(val, _values, result)
-                      (_, line), = val
-                      result = s(:break).line line
-
-    result
-end
-
-def _reduce_363(val, _values, result)
-                      (_, line), = val
-                      result = s(:next).line line
-
-    result
-end
-
-def _reduce_364(val, _values, result)
-                      (_, line), = val
-                      result = s(:redo).line line
-
-    result
-end
-
-def _reduce_365(val, _values, result)
-                      (_, line), = val
-                      result = s(:retry).line line
-
-    result
-end
-
-def _reduce_366(val, _values, result)
-                      result = value_expr(val[0])
-
-    result
-end
-
-# reduce 367 omitted
-
-# reduce 368 omitted
-
-# reduce 369 omitted
-
-# reduce 370 omitted
-
-# reduce 371 omitted
-
-# reduce 372 omitted
-
-# reduce 373 omitted
-
-def _reduce_374(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_375(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-def _reduce_376(val, _values, result)
-                      self.comments.push self.lexer.comments
-
-    result
-end
-
-# reduce 377 omitted
-
-# reduce 378 omitted
-
-# reduce 379 omitted
-
-# reduce 380 omitted
-
-# reduce 381 omitted
-
-# reduce 382 omitted
-
-# reduce 383 omitted
-
-# reduce 384 omitted
-
-# reduce 385 omitted
-
-# reduce 386 omitted
-
-# reduce 387 omitted
-
-# reduce 388 omitted
-
-# reduce 389 omitted
-
-# reduce 390 omitted
-
-# reduce 391 omitted
-
-def _reduce_392(val, _values, result)
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-
-    result
-end
-
-# reduce 393 omitted
-
-def _reduce_394(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 395 omitted
-
-def _reduce_396(val, _values, result)
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-
-    result
-end
-
-# reduce 397 omitted
-
-def _reduce_398(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_399(val, _values, result)
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-
-    result
-end
-
-def _reduce_400(val, _values, result)
-                      result = list_append val[0], val[2]
-
-    result
-end
-
-def _reduce_401(val, _values, result)
-                      args, = val
-
-                      result = block_var args
-
-    result
-end
-
-def _reduce_402(val, _values, result)
-                      args, _, rest = val
-
-                      result = block_var args, rest
-
-    result
-end
-
-def _reduce_403(val, _values, result)
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-
-    result
-end
-
-def _reduce_404(val, _values, result)
-                      rest, = val
-
-                      result = block_var rest
-
-    result
-end
-
-def _reduce_405(val, _values, result)
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-
-    result
-end
-
-def _reduce_406(val, _values, result)
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-
-    result
-end
-
-def _reduce_407(val, _values, result)
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-
-    result
-end
-
-# reduce 408 omitted
-
-# reduce 409 omitted
-
-# reduce 410 omitted
-
-def _reduce_411(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_412(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_413(val, _values, result)
-                      result = call_args val
-
-    result
-end
-
-def _reduce_414(val, _values, result)
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-
-    result
-end
-
-def _reduce_415(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 416 omitted
-
-def _reduce_417(val, _values, result)
-                      result = s(:WTF_COMMA!)
-
-    result
-end
-
-def _reduce_418(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_419(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_420(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_421(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_422(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_423(val, _values, result)
-                      arg, _ = val
-                      result = arg << nil
-
-    result
-end
-
-def _reduce_424(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_425(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_426(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_427(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_428(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_429(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_430(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_431(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_432(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_433(val, _values, result)
- result = 0
-    result
-end
-
-def _reduce_434(val, _values, result)
-                      self.lexer.command_start = true
-
-    result
-end
-
-def _reduce_435(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-def _reduce_436(val, _values, result)
-                      result = s(:args).line lexer.lineno
-
-    result
-end
-
-def _reduce_437(val, _values, result)
-                      # TODO: current_arg = 0
-                      result = args val
-
-    result
-end
-
-# reduce 438 omitted
-
-def _reduce_439(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_440(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_441(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_442(val, _values, result)
-                      result = wrap :shadow, val[0]
-
-    result
-end
-
-# reduce 443 omitted
-
-def _reduce_444(val, _values, result)
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-
-    result
-end
-
-def _reduce_445(val, _values, result)
-                      lexer.cmdarg.push false
-
-    result
-end
-
-def _reduce_446(val, _values, result)
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-
-    result
-end
-
-def _reduce_447(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_448(val, _values, result)
-                      result = val[0]
-                      result = 0 if result == s(:args)
-
-    result
-end
-
-def _reduce_449(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_450(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_451(val, _values, result)
-                      (_, line), iter, _ = val
-                      result = iter.line line
-
-    result
-end
-
-def _reduce_452(val, _values, result)
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-
-    result
-end
-
-def _reduce_453(val, _values, result)
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-
-    result
-end
-
-def _reduce_454(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_455(val, _values, result)
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-
-    result
-end
-
-def _reduce_456(val, _values, result)
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-
-    result
-end
-
-def _reduce_457(val, _values, result)
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-
-    result
-end
-
-def _reduce_458(val, _values, result)
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-
-    result
-end
-
-def _reduce_459(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-
-    result
-end
-
-def _reduce_460(val, _values, result)
-                      result = new_call val[0], :call, val[2], val[1]
-
-    result
-end
-
-def _reduce_461(val, _values, result)
-                      result = new_call val[0], :call, val[2]
-
-    result
-end
-
-def _reduce_462(val, _values, result)
-                      result = new_super val[1]
-
-    result
-end
-
-def _reduce_463(val, _values, result)
-                      result = s(:zsuper).line lexer.lineno
-
-    result
-end
-
-def _reduce_464(val, _values, result)
-                      result = new_aref val
-
-    result
-end
-
-def _reduce_465(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_466(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_467(val, _values, result)
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_468(val, _values, result)
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_469(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_470(val, _values, result)
- result = lexer.cmdarg.store(false)
-    result
-end
-
-def _reduce_471(val, _values, result)
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-
-    result
-end
-
-def _reduce_472(val, _values, result)
- self.env.extend :dynamic; result = self.lexer.lineno
-    result
-end
-
-def _reduce_473(val, _values, result)
- lexer.cmdarg.push false
-    result
-end
-
-def _reduce_474(val, _values, result)
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-
-    result
-end
-
-def _reduce_475(val, _values, result)
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-def _reduce_476(val, _values, result)
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-
-    result
-end
-
-def _reduce_477(val, _values, result)
-                      args, _, id = val
-
-                      result = self.list_append args, id
-
-    result
-end
-
-def _reduce_478(val, _values, result)
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-
-    result
-end
-
-def _reduce_479(val, _values, result)
-                      result = self.lexer.lineno
-
-    result
-end
-
-def _reduce_480(val, _values, result)
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-
-    result
-end
-
-# reduce 481 omitted
-
-# reduce 482 omitted
-
-def _reduce_483(val, _values, result)
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-
-    result
-end
-
-def _reduce_484(val, _values, result)
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-
-    result
-end
-
-def _reduce_485(val, _values, result)
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-
-    result
-end
-
-# reduce 486 omitted
-
-# reduce 487 omitted
-
-# reduce 488 omitted
-
-def _reduce_489(val, _values, result)
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-
-    result
-end
-
-def _reduce_490(val, _values, result)
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-
-    result
-end
-
-# reduce 491 omitted
-
-def _reduce_492(val, _values, result)
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-
-    result
-end
-
-def _reduce_493(val, _values, result)
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-
-    result
-end
-
-def _reduce_494(val, _values, result)
-                      find, = val
-
-                      result = new_find_pattern nil, find
-
-    result
-end
-
-def _reduce_495(val, _values, result)
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-
-    result
-end
-
-def _reduce_496(val, _values, result)
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-
-    result
-end
-
-# reduce 497 omitted
-
-def _reduce_498(val, _values, result)
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-
-    result
-end
-
-# reduce 499 omitted
-
-def _reduce_500(val, _values, result)
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-
-    result
-end
-
-# reduce 501 omitted
-
-def _reduce_502(val, _values, result)
- push_pktbl
-    result
-end
-
-def _reduce_503(val, _values, result)
- push_pktbl
-    result
-end
-
-# reduce 504 omitted
-
-# reduce 505 omitted
-
-def _reduce_506(val, _values, result)
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-
-    result
-end
-
-def _reduce_507(val, _values, result)
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-
-    result
-end
-
-def _reduce_508(val, _values, result)
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-
-    result
-end
-
-def _reduce_509(val, _values, result)
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-
-    result
-end
-
-def _reduce_510(val, _values, result)
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-
-    result
-end
-
-def _reduce_511(val, _values, result)
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-
-    result
-end
-
-def _reduce_512(val, _values, result)
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-
-    result
-end
-
-def _reduce_513(val, _values, result)
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-
-    result
-end
-
-def _reduce_514(val, _values, result)
-                      _, pat, _ = val
-
-                      result = new_array_pattern nil, nil, pat, pat.line
-
-    result
-end
-
-def _reduce_515(val, _values, result)
-                      _, find, _ = val
-
-                      result = new_find_pattern nil, find
-
-    result
-end
-
-def _reduce_516(val, _values, result)
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-
-    result
-end
-
-def _reduce_517(val, _values, result)
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-
-    result
-end
-
-def _reduce_518(val, _values, result)
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-
-    result
-end
-
-def _reduce_519(val, _values, result)
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-
-    result
-end
-
-def _reduce_520(val, _values, result)
- push_pktbl
-    result
-end
-
-def _reduce_521(val, _values, result)
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-
-    result
-end
-
-def _reduce_522(val, _values, result)
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-
-    result
-end
-
-def _reduce_523(val, _values, result)
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-
-    result
-end
-
-def _reduce_524(val, _values, result)
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-
-    result
-end
-
-def _reduce_525(val, _values, result)
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-
-    result
-end
-
-def _reduce_526(val, _values, result)
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-
-    result
-end
-
-def _reduce_527(val, _values, result)
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-
-    result
-end
-
-def _reduce_528(val, _values, result)
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-
-    result
-end
-
-# reduce 529 omitted
-
-def _reduce_530(val, _values, result)
-                      arg, _ = val
-                      result = arg
-
-    result
-end
-
-def _reduce_531(val, _values, result)
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-
-    result
-end
-
-def _reduce_532(val, _values, result)
-                      (id, line), = val
-
-                      result = new_array_pattern_tail nil, true, id, nil
-                      result.line line
-
-    result
-end
-
-def _reduce_533(val, _values, result)
-                      (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id, rhs
-                      result.line line
-
-    result
-end
-
-def _reduce_534(val, _values, result)
-                      lhs, _, mid, _, rhs = val
-
-                      result = new_find_pattern_tail lhs, mid, rhs
-
-    result
-end
-
-def _reduce_535(val, _values, result)
-                      _, (id, line) = val
-
-                      result = [id.to_sym, line]
-
-    result
-end
-
-def _reduce_536(val, _values, result)
-                      (_id, line), = val
-
-                      result = [nil, line]
-
-    result
-end
-
-# reduce 537 omitted
-
-def _reduce_538(val, _values, result)
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-
-    result
-end
-
-def _reduce_539(val, _values, result)
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-
-    result
-end
-
-def _reduce_540(val, _values, result)
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-
-    result
-end
-
-def _reduce_541(val, _values, result)
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-
-    result
-end
-
-def _reduce_542(val, _values, result)
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-
-    result
-end
-
-def _reduce_543(val, _values, result)
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-
-    result
-end
-
-# reduce 544 omitted
-
-def _reduce_545(val, _values, result)
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-
-    result
-end
-
-def _reduce_546(val, _values, result)
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_547(val, _values, result)
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 10
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-
-    result
-end
-
-def _reduce_548(val, _values, result)
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-def _reduce_549(val, _values, result)
-                      # you can't actually get here the way I lex labels
-                      debug 11
-
-    result
-end
-
-def _reduce_550(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-
-    result
-end
-
-def _reduce_551(val, _values, result)
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-
-    result
-end
-
-def _reduce_552(val, _values, result)
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-
-    result
-end
-
-# reduce 553 omitted
-
-# reduce 554 omitted
-
-# reduce 555 omitted
-
-def _reduce_556(val, _values, result)
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_557(val, _values, result)
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-
-    result
-end
-
-def _reduce_558(val, _values, result)
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-
-    result
-end
-
-def _reduce_559(val, _values, result)
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-
-    result
-end
-
-# reduce 560 omitted
-
-# reduce 561 omitted
-
-# reduce 562 omitted
-
-def _reduce_563(val, _values, result)
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-
-    result
-end
-
-def _reduce_564(val, _values, result)
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-
-    result
-end
-
-# reduce 565 omitted
-
-# reduce 566 omitted
-
-# reduce 567 omitted
-
-# reduce 568 omitted
-
-def _reduce_569(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_570(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_571(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_572(val, _values, result)
-                      result = ary_to_pat val[0]
-
-    result
-end
-
-def _reduce_573(val, _values, result)
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-
-    result
-end
-
-# reduce 574 omitted
-
-def _reduce_575(val, _values, result)
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-
-    result
-end
-
-def _reduce_576(val, _values, result)
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-
-    result
-end
-
-def _reduce_577(val, _values, result)
-                      _, var = val
-                      result = var
-
-    result
-end
-
-def _reduce_578(val, _values, result)
-                      _, _, expr, _ = val
-                      result = expr # TODO? s(:begin, expr).line expr.line
-
-    result
-end
-
-def _reduce_579(val, _values, result)
-                      result = wrap :colon3, val[1]
-
-    result
-end
-
-def _reduce_580(val, _values, result)
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-
-    result
-end
-
-def _reduce_581(val, _values, result)
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-
-    result
-end
-
-def _reduce_582(val, _values, result)
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-
-    result
-end
-
-def _reduce_583(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_584(val, _values, result)
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-
-    result
-end
-
-# reduce 585 omitted
-
-# reduce 586 omitted
-
-def _reduce_587(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-# reduce 588 omitted
-
-def _reduce_589(val, _values, result)
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-
-    result
-end
-
-# reduce 590 omitted
-
-def _reduce_591(val, _values, result)
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-
-    result
-end
-
-# reduce 592 omitted
-
-def _reduce_593(val, _values, result)
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-
-    result
-end
-
-def _reduce_594(val, _values, result)
-                      debug 12
-
-    result
-end
-
-# reduce 595 omitted
-
-def _reduce_596(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_597(val, _values, result)
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-
-    result
-end
-
-def _reduce_598(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_599(val, _values, result)
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-
-    result
-end
-
-def _reduce_600(val, _values, result)
-                      result = new_regexp val
-
-    result
-end
-
-def _reduce_601(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_602(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_603(val, _values, result)
-                      result = new_word_list
-
-    result
-end
-
-def _reduce_604(val, _values, result)
-                      result = val[0].dup << new_word_list_entry(val)
-
-    result
-end
-
-# reduce 605 omitted
-
-def _reduce_606(val, _values, result)
-                      result = self.literal_concat val[0], val[1]
-
-    result
-end
-
-def _reduce_607(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_608(val, _values, result)
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-
-    result
-end
-
-def _reduce_609(val, _values, result)
-                      result = new_symbol_list
-
-    result
-end
-
-def _reduce_610(val, _values, result)
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-
-    result
-end
-
-def _reduce_611(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_612(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_613(val, _values, result)
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-
-    result
-end
-
-def _reduce_614(val, _values, result)
-                      (_, line), list, _ = val
-
-                      result = list.line line
-
-    result
-end
-
-def _reduce_615(val, _values, result)
-                      result = new_qword_list
-
-    result
-end
-
-def _reduce_616(val, _values, result)
-                      result = val[0].dup << new_qword_list_entry(val)
-
-    result
-end
-
-def _reduce_617(val, _values, result)
-                      result = new_qsym_list
-
-    result
-end
-
-def _reduce_618(val, _values, result)
-                      result = val[0].dup << new_qsym_list_entry(val)
-
-    result
-end
-
-def _reduce_619(val, _values, result)
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-
-    result
-end
-
-def _reduce_620(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_621(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_622(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_623(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_624(val, _values, result)
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-
-    result
-end
-
-def _reduce_625(val, _values, result)
-                      result = new_string val
-
-    result
-end
-
-def _reduce_626(val, _values, result)
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_627(val, _values, result)
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-
-    result
-end
-
-def _reduce_628(val, _values, result)
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-
-    result
-end
-
-def _reduce_629(val, _values, result)
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 13
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-
-    result
-end
-
-def _reduce_630(val, _values, result)
-                      result = wrap :gvar, val[0]
-
-    result
-end
-
-def _reduce_631(val, _values, result)
-                      result = wrap :ivar, val[0]
-
-    result
-end
-
-def _reduce_632(val, _values, result)
-                      result = wrap :cvar, val[0]
-
-    result
-end
-
-# reduce 633 omitted
-
-# reduce 634 omitted
-
-# reduce 635 omitted
-
-def _reduce_636(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-
-    result
-end
-
-def _reduce_637(val, _values, result)
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-
-    result
-end
-
-# reduce 638 omitted
-
-# reduce 639 omitted
-
-# reduce 640 omitted
-
-# reduce 641 omitted
-
-def _reduce_642(val, _values, result)
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 14
-                      end
-
-    result
-end
-
-# reduce 643 omitted
-
-def _reduce_644(val, _values, result)
-                      _, (num, line) = val
-                      result = [-num, line]
-
-    result
-end
-
-# reduce 645 omitted
-
-# reduce 646 omitted
-
-# reduce 647 omitted
-
-# reduce 648 omitted
-
-def _reduce_649(val, _values, result)
- result = wrap :ivar, val[0]
-    result
-end
-
-def _reduce_650(val, _values, result)
- result = wrap :gvar, val[0]
-    result
-end
-
-def _reduce_651(val, _values, result)
- result = wrap :cvar, val[0]
-    result
-end
-
-# reduce 652 omitted
-
-# reduce 653 omitted
-
-# reduce 654 omitted
-
-# reduce 655 omitted
-
-# reduce 656 omitted
-
-def _reduce_657(val, _values, result)
- result = s(:nil).line lexer.lineno
-    result
-end
-
-def _reduce_658(val, _values, result)
- result = s(:self).line lexer.lineno
-    result
-end
-
-def _reduce_659(val, _values, result)
- result = s(:true).line lexer.lineno
-    result
-end
-
-def _reduce_660(val, _values, result)
- result = s(:false).line lexer.lineno
-    result
-end
-
-def _reduce_661(val, _values, result)
- result = s(:str, self.file).line lexer.lineno
-    result
-end
-
-def _reduce_662(val, _values, result)
- result = s(:lit, lexer.lineno).line lexer.lineno
-    result
-end
-
-def _reduce_663(val, _values, result)
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-
-    result
-end
-
-def _reduce_664(val, _values, result)
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-
-                      result.line line
-
-    result
-end
-
-def _reduce_665(val, _values, result)
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-
-    result
-end
-
-def _reduce_666(val, _values, result)
-                      result = self.assignable val[0]
-
-    result
-end
-
-def _reduce_667(val, _values, result)
-                      result = self.assignable val[0]
-                      debug 15
-
-    result
-end
-
-def _reduce_668(val, _values, result)
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-
-    result
-end
-
-def _reduce_669(val, _values, result)
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-
-    result
-end
-
-def _reduce_670(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-
-    result
-end
-
-def _reduce_671(val, _values, result)
-                      result = val[2]
-
-    result
-end
-
-def _reduce_672(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 673 omitted
-
-def _reduce_674(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_675(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-# reduce 676 omitted
-
-def _reduce_677(val, _values, result)
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-
-    result
-end
-
-def _reduce_678(val, _values, result)
-                      result = end_args val
-
-    result
-end
-
-def _reduce_679(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_680(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_681(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 682 omitted
-
-# reduce 683 omitted
-
-def _reduce_684(val, _values, result)
-                      result = val[1]
-
-    result
-end
-
-def _reduce_685(val, _values, result)
-                      result = nil
-
-    result
-end
-
-def _reduce_686(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_687(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_688(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_689(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_690(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_691(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_692(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_693(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_694(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_695(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_696(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_697(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_698(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_699(val, _values, result)
-                      result = args val
-
-    result
-end
-
-def _reduce_700(val, _values, result)
-                      result = args val
-                      # result.line lexer.lineno
-
-    result
-end
-
-def _reduce_701(val, _values, result)
-                      result = s(:forward_args).line lexer.lineno
-
-    result
-end
-
-def _reduce_702(val, _values, result)
-                      yyerror "formal argument cannot be a constant"
-
-    result
-end
-
-def _reduce_703(val, _values, result)
-                      yyerror "formal argument cannot be an instance variable"
-
-    result
-end
-
-def _reduce_704(val, _values, result)
-                      yyerror "formal argument cannot be a global variable"
-
-    result
-end
-
-def _reduce_705(val, _values, result)
-                      yyerror "formal argument cannot be a class variable"
-
-    result
-end
-
-# reduce 706 omitted
-
-def _reduce_707(val, _values, result)
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-
-    result
-end
-
-# reduce 708 omitted
-
-# reduce 709 omitted
-
-def _reduce_710(val, _values, result)
-                      _, margs, _ = val
-
-                      result = margs
-
-    result
-end
-
-def _reduce_711(val, _values, result)
-                      result = new_arg val
-
-    result
-end
-
-def _reduce_712(val, _values, result)
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-
-    result
-end
-
-# reduce 713 omitted
-
-def _reduce_714(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-
-    result
-end
-
-def _reduce_715(val, _values, result)
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-def _reduce_716(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-
-    result
-end
-
-def _reduce_717(val, _values, result)
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-
-    result
-end
-
-# reduce 718 omitted
-
-def _reduce_719(val, _values, result)
-                      list, _, item = val
-                      result = list << item.last
-
-    result
-end
-
-# reduce 720 omitted
-
-def _reduce_721(val, _values, result)
-                      result = args val
-
-    result
-end
-
-# reduce 722 omitted
-
-# reduce 723 omitted
-
-def _reduce_724(val, _values, result)
-                      (_, line), _ = val
-                      result = [:"**nil", line]
-
-    result
-end
-
-def _reduce_725(val, _values, result)
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-
-    result
-end
-
-def _reduce_726(val, _values, result)
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-
-    result
-end
-
-def _reduce_727(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-
-    result
-end
-
-def _reduce_728(val, _values, result)
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-
-    result
-end
-
-def _reduce_729(val, _values, result)
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-
-    result
-end
-
-def _reduce_730(val, _values, result)
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-
-    result
-end
-
-def _reduce_731(val, _values, result)
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-
-    result
-end
-
-def _reduce_732(val, _values, result)
-                      result = self.block_append val[0], val[2]
-
-    result
-end
-
-# reduce 733 omitted
-
-# reduce 734 omitted
-
-def _reduce_735(val, _values, result)
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-
-    result
-end
-
-def _reduce_736(val, _values, result)
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-
-    result
-end
-
-# reduce 737 omitted
-
-# reduce 738 omitted
-
-def _reduce_739(val, _values, result)
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-
-    result
-end
-
-def _reduce_740(val, _values, result)
-                      (_, line), = val
-
-                      result = [:&, line]
-
-    result
-end
-
-def _reduce_741(val, _values, result)
-                      _, arg = val
-                      result = arg
-
-    result
-end
-
-def _reduce_742(val, _values, result)
-                      result = nil
-
-    result
-end
-
-# reduce 743 omitted
-
-def _reduce_744(val, _values, result)
-                      lexer.lex_state = EXPR_BEG
-
-    result
-end
-
-def _reduce_745(val, _values, result)
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-
-    result
-end
-
-def _reduce_746(val, _values, result)
-                      result = s(:array).line lexer.lineno
-
-    result
-end
-
-# reduce 747 omitted
-
-# reduce 748 omitted
-
-def _reduce_749(val, _values, result)
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-
-    result
-end
-
-def _reduce_750(val, _values, result)
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-
-    result
-end
-
-def _reduce_751(val, _values, result)
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_752(val, _values, result)
-                      lit = wrap :lit, val[0]
-                      arg = nil
-
-                      result = s(:array, lit, arg).line lit.line
-
-    result
-end
-
-def _reduce_753(val, _values, result)
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-
-    result
-end
-
-def _reduce_754(val, _values, result)
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-
-    result
-end
-
-# reduce 755 omitted
-
-# reduce 756 omitted
-
-# reduce 757 omitted
-
-# reduce 758 omitted
-
-# reduce 759 omitted
-
-# reduce 760 omitted
-
-# reduce 761 omitted
-
-# reduce 762 omitted
-
-# reduce 763 omitted
-
-# reduce 764 omitted
-
-# reduce 765 omitted
-
-# reduce 766 omitted
-
-# reduce 767 omitted
-
-# reduce 768 omitted
-
-# reduce 769 omitted
-
-# reduce 770 omitted
-
-# reduce 771 omitted
-
-# reduce 772 omitted
-
-# reduce 773 omitted
-
-# reduce 774 omitted
-
-# reduce 775 omitted
-
-def _reduce_776(val, _values, result)
-                      _, close = val
-                      result = [close, lexer.lineno]
-
-    result
-end
-
-def _reduce_777(val, _values, result)
-                      _, close = val
-                      result = [close, lexer.lineno]
-
-    result
-end
-
-# reduce 778 omitted
-
-# reduce 779 omitted
-
-# reduce 780 omitted
-
-def _reduce_781(val, _values, result)
- yyerrok
-    result
-end
-
-# reduce 782 omitted
-
-# reduce 783 omitted
-
-def _reduce_784(val, _values, result)
- yyerrok
-    result
-end
-
-def _reduce_785(val, _values, result)
- result = nil;
-    result
-end
-
-def _reduce_none(val, _values, result)
-  val[0]
-end
-
-end   # class Ruby32Parser
diff -pruN 3.20.0-2/lib/ruby32_parser.y 3.21.1-1/lib/ruby32_parser.y
--- 3.20.0-2/lib/ruby32_parser.y	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby32_parser.y	1970-01-01 00:00:00.000000000 +0000
@@ -1,3493 +0,0 @@
-# -*- racc -*-
-
-class Ruby32Parser
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-      tLONELY
-      tBDOT2 tBDOT3
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 1
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      yyerror "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 2
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 3
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg kRESCUE_MOD stmt
-                    {
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | defn_head f_opt_paren_args tEQL command
-                    {
-                      result = new_endless_defn val
-                    }
-                | defn_head f_opt_paren_args tEQL command kRESCUE_MOD arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defs_head f_opt_paren_args tEQL command
-                    {
-                      result = new_endless_defs val
-                    }
-                | defs_head f_opt_paren_args tEQL command kRESCUE_MOD arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_call kRESCUE_MOD stmt
-                    {
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg tASSOC
-                    {
-                      # value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-                    p_top_expr_body
-                    {
-                      lhs, _, in_kwarg, rhs = val
-
-                      self.env.unextend
-                      self.in_kwarg = in_kwarg
-
-                      rhs = new_in rhs, nil, nil, rhs.line
-                      result = new_case lhs, rhs, rhs.line
-                    }
-                | arg
-                    kIN
-                    {
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-                    p_top_expr_body
-                    {
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-                    }
-                | arg                                   =tLBRACE_ARG
-
-        def_name: fname
-                    {
-                      # TODO: numparam_name(p, fname);
-
-                      (id, line), = val
-                      old_in_def = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      result = [id.to_sym, line, old_in_def]
-                    }
-       defn_head: k_def def_name
-                    {
-                      _, name = val
-                      result = name
-                    }
-       defs_head: k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    def_name
-                    {
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                      self.in_single += 1 # TODO: remove?
-
-                      # self.in_def = true # local_push
-                      # self.env.extend
-                      # lexer.cmdarg.push false
-                      # lexer.cond.push false
-
-                      _, recv, _, _, name = val
-
-                      result = [recv, name]
-                    }
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 4
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 5
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 6
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 7
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 8
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT2
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-                    }
-                | arg tDOT3
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-                    }
-
-                | tBDOT2 arg
-                    {
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-                    }
-                | tBDOT3 arg
-                    {
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-                    }
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, num, _, arg = val
-                      lit = wrap :lit, num
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | defn_head f_opt_paren_args tEQL arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defn_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defs_head f_opt_paren_args tEQL arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | defs_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-                | tLPAREN2 args tCOMMA args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-                | tAMPER
-                    {
-                      (_, line), = val
-                      result = s(:block_pass).line line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 9
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_case expr_value opt_terms p_case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | defn_head f_arglist bodystmt k_end
-                    {
-                      # [               [:f, 1, false], s(:args)...]
-                      # =>
-                      # [[:k_def, 666], [:f, 1], false, s(:args)...]
-                      val.insert 1, val.first.pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | defs_head f_arglist bodystmt k_end
-                    {
-                      # [        [recv, [:name, 1, false]], s(:args...]
-                      # =>
-                      # [         recv, [:name, 1, false],  s(:args...]
-                      # =>
-                      # [         recv, [:name, 1], false,  s(:args...]
-                      # =>
-                      # [ :k_def, recv, [:name, 1], false,  s(:args...]
-
-                      val.prepend(*val.shift)
-                      val.insert 2, val[1].pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
-    f_any_kwrest: f_kwrest
-                | f_no_kwarg
-
-            f_eq: tEQL # TODO: self.in_argdef = false
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_any_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-  excessed_comma: tCOMMA
-                    {
-                      result = s(:WTF_COMMA!)
-                    }
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg excessed_comma
-                    {
-                      arg, _ = val
-                      result = arg << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    bodystmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-######################################################################
-
-     p_case_body: kIN
-                    {
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-                    }
-                    p_top_expr then
-                    {
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-                    }
-                    compstmt
-                    p_cases
-                    {
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-                    }
-
-         p_cases: opt_else
-                | p_case_body
-
-      p_top_expr: p_top_expr_body
-                | p_top_expr_body kIF_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-                    }
-                | p_top_expr_body kUNLESS_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-                    }
-
- p_top_expr_body: p_expr
-                | p_expr tCOMMA
-                    {
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-                    }
-                | p_expr tCOMMA p_args
-                    {
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-                    }
-                | p_find
-                    {
-                      find, = val
-
-                      result = new_find_pattern nil, find
-                    }
-                | p_args_tail
-                    {
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-                    }
-                | p_kwargs
-                    {
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-                    }
-
-          p_expr: p_as
-
-            p_as: p_expr tASSOC p_variable
-                    {
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-                    }
-                | p_alt
-
-           p_alt: p_alt tPIPE p_expr_basic
-                    {
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-                    }
-                | p_expr_basic
-
-        p_lparen: tLPAREN2 { push_pktbl }
-      p_lbracket: tLBRACK2 { push_pktbl }
-
-    p_expr_basic: p_value
-                | p_variable
-                | p_const p_lparen p_args tRPAREN
-                    {
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-                    }
-                | p_const p_lparen p_find tRPAREN
-                    {
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-                    }
-                | p_const p_lparen p_kwargs tRPAREN
-                    {
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-                    }
-                | p_const tLPAREN2 tRPAREN
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | p_const p_lbracket p_args rbracket
-                    {
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-                    }
-                | p_const p_lbracket p_find rbracket
-                    {
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-                    }
-                | p_const p_lbracket p_kwargs rbracket
-                    {
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-                    }
-                | p_const tLBRACK2 rbracket
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | tLBRACK p_args rbracket
-                    {
-                      _, pat, _ = val
-
-                      result = new_array_pattern nil, nil, pat, pat.line
-                    }
-                | tLBRACK p_find rbracket
-                    {
-                      _, find, _ = val
-
-                      result = new_find_pattern nil, find
-                    }
-                | tLBRACK rbracket
-                    {
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-                    }
-                | tLBRACE
-                    {
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-                    }
-                    p_kwargs rbrace
-                    {
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-                    }
-                | tLBRACE rbrace
-                    {
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-                    }
-                | tLPAREN { push_pktbl } p_expr tRPAREN
-                    {
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-                    }
-
-          p_args: p_expr
-                    {
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-                    }
-                | p_args_head
-                    {
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-                    }
-                | p_args_head p_arg
-                    {
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER
-                    {
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER tCOMMA p_args_post
-                    {
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-                    }
-                | p_args_head tSTAR
-                    {
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-                    }
-                | p_args_head tSTAR tCOMMA p_args_post
-                    {
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-                    }
-                | p_args_tail
-
-     p_args_head: p_arg tCOMMA
-                    {
-                      arg, _ = val
-                      result = arg
-                    }
-                | p_args_head p_arg tCOMMA
-                    {
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-                    }
-
-     p_args_tail: p_rest
-                    {
-                      (id, line), = val
-
-                      result = new_array_pattern_tail nil, true, id, nil
-                      result.line line
-                    }
-                | p_rest tCOMMA p_args_post
-                    {
-                      (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id, rhs
-                      result.line line
-                    }
-
-          p_find:  p_rest tCOMMA p_args_post tCOMMA p_rest
-                    {
-                      lhs, _, mid, _, rhs = val
-
-                      result = new_find_pattern_tail lhs, mid, rhs
-                    }
-
-          p_rest: tSTAR tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      result = [id.to_sym, line]
-                    }
-                | tSTAR
-                    {
-                      (_id, line), = val
-
-                      result = [nil, line]
-                    }
-
-     p_args_post: p_arg
-                | p_args_post tCOMMA p_arg
-                    {
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-                    }
-
-           p_arg: p_expr
-                    {
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-                    }
-
-        p_kwargs: p_kwarg tCOMMA p_any_kwrest
-                    {
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-                    }
-                | p_kwarg
-                    {
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_kwarg tCOMMA
-                    {
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_any_kwrest
-                    {
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-                    }
-
-         p_kwarg: p_kw # TODO? rb_ary_new_from_args(1, $1)
-                | p_kwarg tCOMMA p_kw
-                    {
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-                    }
-
-            p_kw: p_kw_label p_expr
-                    {
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-                    }
-                | p_kw_label
-                    {
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 10
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-                    }
-
-      p_kw_label: tLABEL
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | tSTRING_BEG string_contents tLABEL_END
-                    {
-                      # you can't actually get here the way I lex labels
-                      debug 11
-                    }
-
-        p_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-                    }
-                | kwrest_mark
-                    {
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-                    }
-
-      p_kwnorest: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-                    }
-
-    p_any_kwrest: p_kwrest
-                | p_kwnorest
-
-         p_value: p_primitive
-                | p_primitive tDOT2 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT3 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT2
-                    {
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-                    }
-                | p_primitive tDOT3
-                    {
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-                    }
-                | p_var_ref
-                | p_expr_ref
-                | p_const
-                | tBDOT2 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-                    }
-                | tBDOT3 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-                    }
-
-     p_primitive: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qwords
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | symbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qsymbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | keyword_variable
-                    {
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-                    }
-                | lambda
-
-      p_variable: tIDENTIFIER
-                    {
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-                    }
-
-       p_var_ref: tCARET tIDENTIFIER
-                    {
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-                    }
-                | tCARET nonlocal_var
-                    {
-                      _, var = val
-                      result = var
-                    }
-
-      p_expr_ref: tCARET tLPAREN expr_value rparen
-                    {
-                      _, _, expr, _ = val
-                      result = expr # TODO? s(:begin, expr).line expr.line
-                    }
-
-         p_const: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | p_const tCOLON2 cname
-                    {
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-                    }
-                | tCONSTANT
-                    {
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-                    }
-######################################################################
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 12
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 13
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 14
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-    nonlocal_var: tIVAR { result = wrap :ivar, val[0] }
-                | tGVAR { result = wrap :gvar, val[0] }
-                | tCVAR { result = wrap :cvar, val[0] }
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 15
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-f_opt_paren_args: f_paren_args
-                | none
-                    {
-                      result = end_args val
-                    }
-
-    f_paren_args: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-
-       f_arglist: f_paren_args
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_any_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-                | args_forward
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-    args_forward: tBDOT3
-                    {
-                      result = s(:forward_args).line lexer.lineno
-                    }
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-      f_no_kwarg: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-                      result = [:"**nil", line]
-                    }
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn
-                    f_eq
-                    arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-                    }
-
-     f_block_opt: f_arg_asgn
-                    f_eq
-                    primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-                | blkarg_mark
-                    {
-                      (_, line), = val
-
-                      result = [:&, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tLABEL
-                    {
-                      lit = wrap :lit, val[0]
-                      arg = nil
-
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-                | tLONELY # TODO: rename tANDDOT?
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-                    # TODO:
-                    # {
-                    #   _, close = val
-                    #   result = [close, lexer.lineno]
-                    # }
-        rbracket: opt_nl tRBRACK
-                    {
-                      _, close = val
-                      result = [close, lexer.lineno]
-                    }
-          rbrace: opt_nl tRCURLY
-                    {
-                      _, close = val
-                      result = [close, lexer.lineno]
-                    }
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby3_parser.yy 3.21.1-1/lib/ruby3_parser.yy
--- 3.20.0-2/lib/ruby3_parser.yy	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby3_parser.yy	1970-01-01 00:00:00.000000000 +0000
@@ -1,3550 +0,0 @@
-# -*- racc -*-
-
-#if V == 30
-class Ruby30Parser
-#elif V == 31
-class Ruby31Parser
-#elif V == 32
-class Ruby32Parser
-#else
-fail "version not specified or supported on code generation"
-#endif
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-      tRATIONAL tIMAGINARY
-      tLABEL_END
-      tLONELY
-      tBDOT2 tBDOT3
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 1
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      yyerror "else without rescue is useless" unless res
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 2
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 3
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-                | mlhs tEQL mrhs_arg kRESCUE_MOD stmt
-                    {
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-                    }
-                | mlhs tEQL mrhs_arg
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-#if V > 30
-                | defn_head f_opt_paren_args tEQL command
-                    {
-                      result = new_endless_defn val
-                    }
-                | defn_head f_opt_paren_args tEQL command kRESCUE_MOD arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defs_head f_opt_paren_args tEQL command
-                    {
-                      result = new_endless_defs val
-                    }
-                | defs_head f_opt_paren_args tEQL command kRESCUE_MOD arg
-                    {
-                      result = new_endless_defs val
-                    }
-#endif
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-                | command_call kRESCUE_MOD stmt
-                    {
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-                    }
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-                | arg tASSOC
-                    {
-                      # value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-#if V == 30
-                    p_expr
-#else
-                    p_top_expr_body
-#endif
-                    {
-                      lhs, _, in_kwarg, rhs = val
-
-                      self.env.unextend
-                      self.in_kwarg = in_kwarg
-
-                      rhs = new_in rhs, nil, nil, rhs.line
-                      result = new_case lhs, rhs, rhs.line
-                    }
-                | arg
-                    kIN
-                    {
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-#if V == 30
-                    p_expr
-#else
-                    p_top_expr_body
-#endif
-                    {
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-                    }
-                | arg                                   =tLBRACE_ARG
-
-        def_name: fname
-                    {
-                      # TODO: numparam_name(p, fname);
-
-                      (id, line), = val
-                      old_in_def = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      result = [id.to_sym, line, old_in_def]
-                    }
-       defn_head: k_def def_name
-                    {
-                      _, name = val
-                      result = name
-                    }
-       defs_head: k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    def_name
-                    {
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                      self.in_single += 1 # TODO: remove?
-
-                      # self.in_def = true # local_push
-                      # self.env.extend
-                      # lexer.cmdarg.push false
-                      # lexer.cond.push false
-
-                      _, recv, _, _, name = val
-
-                      result = [recv, name]
-                    }
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 4
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 5
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 6
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 7
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 8
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT2
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-                    }
-                | arg tDOT3
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-                    }
-
-                | tBDOT2 arg
-                    {
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-                    }
-                | tBDOT3 arg
-                    {
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-                    }
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-                | tUMINUS_NUM simple_numeric tPOW arg
-                    {
-                      _, num, _, arg = val
-                      lit = wrap :lit, num
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | defn_head f_opt_paren_args tEQL arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defn_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
-                    {
-                      result = new_endless_defn val
-                    }
-                | defs_head f_opt_paren_args tEQL arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | defs_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
-                    {
-                      result = new_endless_defs val
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-                | tLPAREN2 args tCOMMA args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-#if V > 30
-                | tAMPER
-                    {
-                      (_, line), = val
-                      result = s(:block_pass).line line
-                    }
-#endif
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 9
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-                | k_case expr_value opt_terms p_case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-                    }
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | defn_head f_arglist bodystmt k_end
-                    {
-                      # [               [:f, 1, false], s(:args)...]
-                      # =>
-                      # [[:k_def, 666], [:f, 1], false, s(:args)...]
-                      val.insert 1, val.first.pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | defs_head f_arglist bodystmt k_end
-                    {
-                      # [        [recv, [:name, 1, false]], s(:args...]
-                      # =>
-                      # [         recv, [:name, 1, false],  s(:args...]
-                      # =>
-                      # [         recv, [:name, 1], false,  s(:args...]
-                      # =>
-                      # [ :k_def, recv, [:name, 1], false,  s(:args...]
-
-                      val.prepend(*val.shift)
-                      val.insert 2, val[1].pop
-                      val.insert 0, [:k_def, 666]
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
-    f_any_kwrest: f_kwrest
-                | f_no_kwarg
-
-#if V > 30
-            f_eq: tEQL # TODO: self.in_argdef = false
-#endif
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_any_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-  excessed_comma: tCOMMA
-                    {
-                      result = s(:WTF_COMMA!)
-                    }
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg excessed_comma
-                    {
-                      arg, _ = val
-                      result = arg << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-                    bodystmt
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-######################################################################
-
-     p_case_body: kIN
-                    {
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-                    }
-                    p_top_expr then
-                    {
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-                    }
-                    compstmt
-                    p_cases
-                    {
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-                    }
-
-         p_cases: opt_else
-                | p_case_body
-
-      p_top_expr: p_top_expr_body
-                | p_top_expr_body kIF_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-                    }
-                | p_top_expr_body kUNLESS_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-                    }
-
- p_top_expr_body: p_expr
-                | p_expr tCOMMA
-                    {
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-                    }
-                | p_expr tCOMMA p_args
-                    {
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-                    }
-                | p_find
-                    {
-                      find, = val
-
-                      result = new_find_pattern nil, find
-                    }
-                | p_args_tail
-                    {
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-                    }
-                | p_kwargs
-                    {
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-                    }
-
-          p_expr: p_as
-
-            p_as: p_expr tASSOC p_variable
-                    {
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-                    }
-                | p_alt
-
-           p_alt: p_alt tPIPE p_expr_basic
-                    {
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-                    }
-                | p_expr_basic
-
-        p_lparen: tLPAREN2 { push_pktbl }
-      p_lbracket: tLBRACK2 { push_pktbl }
-
-    p_expr_basic: p_value
-#if V > 30
-                | p_variable
-#endif
-                | p_const p_lparen p_args tRPAREN
-                    {
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-                    }
-                | p_const p_lparen p_find tRPAREN
-                    {
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-                    }
-                | p_const p_lparen p_kwargs tRPAREN
-                    {
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-                    }
-                | p_const tLPAREN2 tRPAREN
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | p_const p_lbracket p_args rbracket
-                    {
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-                    }
-                | p_const p_lbracket p_find rbracket
-                    {
-                      const, _, find, _ = val
-
-                      pop_pktbl
-                      result = new_find_pattern(const, find).line const.line
-                    }
-                | p_const p_lbracket p_kwargs rbracket
-                    {
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-                    }
-                | p_const tLBRACK2 rbracket
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | tLBRACK p_args rbracket
-                    {
-                      _, pat, _ = val
-
-                      result = new_array_pattern nil, nil, pat, pat.line
-                    }
-                | tLBRACK p_find rbracket
-                    {
-                      _, find, _ = val
-
-                      result = new_find_pattern nil, find
-                    }
-                | tLBRACK rbracket
-                    {
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-                    }
-                | tLBRACE
-                    {
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-                    }
-                    p_kwargs rbrace
-                    {
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-                    }
-                | tLBRACE rbrace
-                    {
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-                    }
-                | tLPAREN { push_pktbl } p_expr tRPAREN
-                    {
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-                    }
-
-          p_args: p_expr
-                    {
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-                    }
-                | p_args_head
-                    {
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-                    }
-                | p_args_head p_arg
-                    {
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER
-                    {
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER tCOMMA p_args_post
-                    {
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-                    }
-                | p_args_head tSTAR
-                    {
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-                    }
-                | p_args_head tSTAR tCOMMA p_args_post
-                    {
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-                    }
-                | p_args_tail
-
-     p_args_head: p_arg tCOMMA
-                    {
-                      arg, _ = val
-                      result = arg
-                    }
-                | p_args_head p_arg tCOMMA
-                    {
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-                    }
-
-     p_args_tail: p_rest
-                    {
-                      (id, line), = val
-
-                      result = new_array_pattern_tail nil, true, id, nil
-                      result.line line
-                    }
-                | p_rest tCOMMA p_args_post
-                    {
-                      (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id, rhs
-                      result.line line
-                    }
-
-          p_find:  p_rest tCOMMA p_args_post tCOMMA p_rest
-                    {
-                      lhs, _, mid, _, rhs = val
-
-                      result = new_find_pattern_tail lhs, mid, rhs
-                    }
-
-          p_rest: tSTAR tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      result = [id.to_sym, line]
-                    }
-                | tSTAR
-                    {
-                      (_id, line), = val
-
-                      result = [nil, line]
-                    }
-
-     p_args_post: p_arg
-                | p_args_post tCOMMA p_arg
-                    {
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-                    }
-
-           p_arg: p_expr
-                    {
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-                    }
-
-        p_kwargs: p_kwarg tCOMMA p_any_kwrest
-                    {
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-                    }
-                | p_kwarg
-                    {
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_kwarg tCOMMA
-                    {
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_any_kwrest
-                    {
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-                    }
-
-         p_kwarg: p_kw # TODO? rb_ary_new_from_args(1, $1)
-                | p_kwarg tCOMMA p_kw
-                    {
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-                    }
-
-            p_kw: p_kw_label p_expr
-                    {
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-                    }
-                | p_kw_label
-                    {
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 10
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-                    }
-
-      p_kw_label: tLABEL
-                    {
-                      result = wrap :lit, val[0]
-                    }
-#if V > 30
-                | tSTRING_BEG string_contents tLABEL_END
-                    {
-                      # you can't actually get here the way I lex labels
-                      debug 11
-                    }
-#endif
-
-        p_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-                    }
-                | kwrest_mark
-                    {
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-                    }
-
-      p_kwnorest: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-                    }
-
-    p_any_kwrest: p_kwrest
-                | p_kwnorest
-
-         p_value: p_primitive
-                | p_primitive tDOT2 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT3 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT2
-                    {
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-                    }
-                | p_primitive tDOT3
-                    {
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-                    }
-#if V == 30
-                | p_variable
-#endif
-                | p_var_ref
-#if V > 30
-                | p_expr_ref
-#endif
-                | p_const
-                | tBDOT2 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-                    }
-                | tBDOT3 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-                    }
-
-     p_primitive: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qwords
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | symbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qsymbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | keyword_variable
-                    {
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-                    }
-                | lambda
-
-      p_variable: tIDENTIFIER
-                    {
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-                    }
-
-       p_var_ref: tCARET tIDENTIFIER
-                    {
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-                    }
-#if V > 30
-                | tCARET nonlocal_var
-                    {
-                      _, var = val
-                      result = var
-                    }
-#endif
-
-#if V > 30
-      p_expr_ref: tCARET tLPAREN expr_value rparen
-                    {
-                      _, _, expr, _ = val
-                      result = expr # TODO? s(:begin, expr).line expr.line
-                    }
-#endif
-
-         p_const: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | p_const tCOLON2 cname
-                    {
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-                    }
-                | tCONSTANT
-                    {
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-                    }
-######################################################################
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 12
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 13
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 14
-                      end
-                    }
-
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-                    }
-
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-#if V > 30
-    nonlocal_var: tIVAR { result = wrap :ivar, val[0] }
-                | tGVAR { result = wrap :gvar, val[0] }
-                | tCVAR { result = wrap :cvar, val[0] }
-#endif
-
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 15
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-f_opt_paren_args: f_paren_args
-                | none
-                    {
-                      result = end_args val
-                    }
-
-    f_paren_args: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-#if V == 30
-                | tLPAREN2 f_arg tCOMMA args_forward rparen
-                    {
-                      result = end_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      result = end_args val
-                    }
-#endif
-
-       f_arglist: f_paren_args
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_any_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_block_arg
-#if V > 30
-                | args_forward
-#endif
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-    args_forward: tBDOT3
-                    {
-                      result = s(:forward_args).line lexer.lineno
-                    }
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-      f_block_kw: f_label primary_value
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-      f_no_kwarg: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-                      result = [:"**nil", line]
-                    }
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-           f_opt: f_arg_asgn
-#if V > 30
-                    f_eq
-#else
-                    tEQL
-#endif
-                    arg_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-                    }
-
-     f_block_opt: f_arg_asgn
-#if V > 30
-                    f_eq
-#else
-                    tEQL
-#endif
-                    primary_value
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO? p->cur_arg = 0;
-                      # TODO? p->ctxt.in_argdef = 1;
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-                | blkarg_mark
-                    {
-                      (_, line), = val
-
-                      result = [:&, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tLABEL
-                    {
-                      lit = wrap :lit, val[0]
-                      arg = nil
-
-                      result = s(:array, lit, arg).line lit.line
-                    }
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-                | tLONELY # TODO: rename tANDDOT?
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-                    # TODO:
-                    # {
-                    #   _, close = val
-                    #   result = [close, lexer.lineno]
-                    # }
-        rbracket: opt_nl tRBRACK
-                    {
-                      _, close = val
-                      result = [close, lexer.lineno]
-                    }
-          rbrace: opt_nl tRCURLY
-                    {
-                      _, close = val
-                      result = [close, lexer.lineno]
-                    }
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby_lexer.rb 3.21.1-1/lib/ruby_lexer.rb
--- 3.20.0-2/lib/ruby_lexer.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby_lexer.rb	2024-08-22 09:52:50.000000000 +0000
@@ -113,11 +113,12 @@ class RubyLexer
   # Last token read via next_token.
   attr_accessor :token
 
-  attr_writer :comments
+  # Last comment lexed, or nil
+  attr_accessor :comment
 
   def initialize _ = nil
     @lex_state = nil # remove one warning under $DEBUG
-    self.lex_state = EXPR_NONE
+    @lex_state = EXPR_NONE
 
     self.cond   = RubyParserStuff::StackState.new(:cond, $DEBUG)
     self.cmdarg = RubyParserStuff::StackState.new(:cmdarg, $DEBUG)
@@ -134,16 +135,6 @@ class RubyLexer
     is_after_operator? ? EXPR_ARG : EXPR_BEG
   end
 
-  def ignore_body_comments
-    @comments.clear
-  end
-
-  def comments # TODO: remove this... maybe comment_string + attr_accessor
-    c = @comments.join
-    @comments.clear
-    c
-  end
-
   def debug n
     raise "debug #{n}"
   end
@@ -258,19 +249,22 @@ class RubyLexer
   end
 
   def process_begin text
-    @comments << matched
+    self.comment ||= +""
+    self.comment << matched
 
     unless scan(/.*?\n=end( |\t|\f)*[^\n]*(\n|\z)/m) then
-      @comments.clear
+      self.comment = nil
       rb_compile_error("embedded document meets end of file")
     end
 
-    @comments << matched
+    self.comment << matched
     self.lineno += matched.count("\n") # HACK?
 
     nil # TODO
   end
 
+  # TODO: make all tXXXX terminals include lexer.lineno ... enforce it somehow?
+
   def process_brace_close text
     case matched
     when "}" then
@@ -353,8 +347,14 @@ class RubyLexer
     end
   end
 
-  def process_dots text
-    tokens = ruby27plus? && is_beg? ? BTOKENS : TOKENS
+  def process_dots text # parse32.y:10216
+    is_beg = self.is_beg?
+    self.lex_state = EXPR_BEG
+
+    return result EXPR_ENDARG, :tBDOT3, text if
+      parser.in_argdef && text == "..." # TODO: version check?
+
+    tokens = ruby27plus? && is_beg ? BTOKENS : TOKENS
 
     result EXPR_BEG, tokens[text], text
   end
@@ -439,7 +439,8 @@ class RubyLexer
 
       while scan(/\s*\#.*(\n+|\z)/) do
         self.lineno += matched.count "\n"
-        @comments << matched.gsub(/^ +#/, "#").gsub(/^ +$/, "")
+        self.comment ||= +""
+        self.comment << matched.gsub(/^ +#/, "#").gsub(/^ +$/, "")
       end
 
       return nil if end_of_stream?
@@ -687,7 +688,7 @@ class RubyLexer
       return process_token_keyword keyword if keyword
     end
 
-    # matching: compare/parse30.y:9039
+    # matching: compare/parse32.y:9031
     state = if lex_state =~ EXPR_BEG_ANY|EXPR_ARG_ANY|EXPR_DOT then
               cmd_state ? EXPR_CMDARG : EXPR_ARG
             elsif lex_state =~ EXPR_FNAME then
@@ -709,7 +710,7 @@ class RubyLexer
   end
 
   def process_token_keyword keyword
-    # matching MIDDLE of parse_ident in compare/parse23.y:8046
+    # matching MIDDLE of parse_ident in compare/parse32.y:9695
     state = lex_state
 
     return result(EXPR_ENDFN, keyword.id0, token) if lex_state =~ EXPR_FNAME
@@ -718,7 +719,7 @@ class RubyLexer
     self.command_start = true if lex_state =~ EXPR_BEG
 
     case
-    when keyword.id0 == :kDO then # parse26.y line 7591
+    when keyword.id0 == :kDO then # parse32.y line 9712
       case
       when lambda_beginning? then
         self.lpar_beg = nil # lambda_beginning? == FALSE in the body of "-> do ... end"
@@ -760,7 +761,7 @@ class RubyLexer
     self.lineno        = 1
     self.brace_nest    = 0
     self.command_start = true
-    self.comments      = []
+    self.comment       = nil
     self.lex_state     = EXPR_NONE
     self.lex_strterm   = nil
     self.lpar_beg      = nil
@@ -890,7 +891,7 @@ class RubyLexer
     end
 
     def inspect
-      return "Value(0)" if n.zero? # HACK?
+      return "EXPR_NONE" if n.zero? # HACK?
 
       names.map { |v, k| k if self =~ v }.
         compact.
diff -pruN 3.20.0-2/lib/ruby_lexer.rex.rb 3.21.1-1/lib/ruby_lexer.rex.rb
--- 3.20.0-2/lib/ruby_lexer.rex.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby_lexer.rex.rb	2024-08-22 09:52:50.000000000 +0000
@@ -2,7 +2,7 @@
 # encoding: UTF-8
 #--
 # This file is automatically generated. Do not modify it.
-# Generated by: oedipus_lex version 2.6.0.
+# Generated by: oedipus_lex version 2.6.2.
 # Source: lib/ruby_lexer.rex
 #++
 
@@ -91,7 +91,6 @@ class RubyLexer
     old_pos - start_of_current_line_pos
   end
 
-
   ##
   # The current scanner class. Must be overridden in subclasses.
 
diff -pruN 3.20.0-2/lib/ruby_lexer_strings.rb 3.21.1-1/lib/ruby_lexer_strings.rb
--- 3.20.0-2/lib/ruby_lexer_strings.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby_lexer_strings.rb	2024-08-22 09:52:50.000000000 +0000
@@ -56,7 +56,7 @@ class RubyLexer
         return :tSTRING_DVAR, matched
       when scan(/#[{]/) then
         self.command_start = true
-        return :tSTRING_DBEG, matched
+        return :tSTRING_DBEG, [matched, lineno]
       when scan(/#/) then
         string_buffer << "#"
       end
@@ -415,7 +415,7 @@ class RubyLexer
       return :tSTRING_DVAR, matched
     when scan(/#[{]/) then
       self.command_start = true
-      return :tSTRING_DBEG, matched
+      return :tSTRING_DBEG, [matched, lineno]
     when scan(/#/) then
       # do nothing but swallow
     end
diff -pruN 3.20.0-2/lib/ruby_parser.rb 3.21.1-1/lib/ruby_parser.rb
--- 3.20.0-2/lib/ruby_parser.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser.rb	2024-08-22 09:52:50.000000000 +0000
@@ -69,23 +69,25 @@ end
 ##
 # Unfortunately a problem with racc is that it won't let me namespace
 # properly, so instead of RubyParser::V25, I still have to generate
-# the old Ruby25Parser and shove it in as V25.
+# the old RubyParser25 and shove it in as V25.
 
-require "ruby20_parser"
-require "ruby21_parser"
-require "ruby22_parser"
-require "ruby23_parser"
-require "ruby24_parser"
-require "ruby25_parser"
-require "ruby26_parser"
-require "ruby27_parser"
-require "ruby30_parser"
-require "ruby31_parser"
-require "ruby32_parser"
+require "ruby_parser20"
+require "ruby_parser21"
+require "ruby_parser22"
+require "ruby_parser23"
+require "ruby_parser24"
+require "ruby_parser25"
+require "ruby_parser26"
+require "ruby_parser27"
+require "ruby_parser30"
+require "ruby_parser31"
+require "ruby_parser32"
+require "ruby_parser33"
 
 class RubyParser # HACK
   VERSIONS.clear # also a HACK caused by racc namespace issues
 
+  class V33 < ::Ruby33Parser; end
   class V32 < ::Ruby32Parser; end
   class V31 < ::Ruby31Parser; end
   class V30 < ::Ruby30Parser; end
diff -pruN 3.20.0-2/lib/ruby_parser.yy 3.21.1-1/lib/ruby_parser.yy
--- 3.20.0-2/lib/ruby_parser.yy	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser.yy	1970-01-01 00:00:00.000000000 +0000
@@ -1,3477 +0,0 @@
-# -*- racc -*-
-
-#if V==20
-class Ruby20Parser
-#elif V==21
-class Ruby21Parser
-#elif V == 22
-class Ruby22Parser
-#elif V == 23
-class Ruby23Parser
-#elif V == 24
-class Ruby24Parser
-#elif V == 25
-class Ruby25Parser
-#elif V == 26
-class Ruby26Parser
-#elif V == 27
-class Ruby27Parser
-#else
-fail "version not specified or supported on code generation"
-#endif
-
-token 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
-      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
-      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
-#if V >= 21
-      tRATIONAL tIMAGINARY
-#endif
-#if V >= 22
-      tLABEL_END
-#endif
-#if V >= 23
-       tLONELY
-#endif
-#if V >= 26
-       tBDOT2 tBDOT3
-#endif
-
-preclow
-  nonassoc tLOWEST
-  nonassoc tLBRACE_ARG
-  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
-  left     kOR kAND
-  right    kNOT
-  nonassoc kDEFINED
-  right    tEQL tOP_ASGN
-  left     kRESCUE_MOD
-  right    tEH tCOLON
-  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
-  left     tOROP
-  left     tANDOP
-  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
-  left     tGT tGEQ tLT tLEQ
-  left     tPIPE tCARET
-  left     tAMPER2
-  left     tLSHFT tRSHFT
-  left     tPLUS tMINUS
-  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
-  right    tUMINUS_NUM tUMINUS
-  right    tPOW
-  right    tBANG tTILDE tUPLUS
-prechigh
-
-rule
-
-         program:   {
-                      self.lexer.lex_state = EXPR_BEG
-                    }
-                    top_compstmt
-                    {
-                      result = new_compstmt val
-
-                      lexer.cond.pop # local_pop
-                      lexer.cmdarg.pop
-                    }
-
-    top_compstmt: top_stmts opt_terms
-                    {
-                      stmt, _ = val
-                      result = stmt
-                    }
-
-       top_stmts: none
-                | top_stmt
-                | top_stmts terms top_stmt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error top_stmt
-
-        top_stmt: stmt
-                | klBEGIN
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 11
-                        yyerror "BEGIN in method"
-                      end
-                      self.env.extend
-                    }
-                    begin_block
-                    {
-                      (_, lineno), _, iter = val
-                      iter.line lineno
-
-                      (_, preexe,) = iter
-                      preexe.line lineno
-
-                      result = iter
-                    }
-
-     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
-                    {
-                      _, line, stmt, _ = val
-                      result = new_iter s(:preexe).line(line), 0, stmt
-                    }
-
-        bodystmt: compstmt opt_rescue k_else
-                    {
-                      res = _values[-2]
-                      # TODO: move down to main match so I can just use val
-
-#if V >= 26
-                      yyerror "else without rescue is useless" unless res
-#else
-                      warn "else without rescue is useless" unless res
-#endif
-                    }
-                    compstmt
-                    opt_ensure
-                    {
-                      body, resc, _, _, els, ens = val
-
-                      result = new_body [body, resc, els, ens]
-                    }
-                | compstmt opt_rescue opt_ensure
-                    {
-                      body, resc, ens = val
-
-                      result = new_body [body, resc, nil, ens]
-                    }
-
-        compstmt: stmts opt_terms
-                    {
-                      result = new_compstmt val
-                    }
-
-           stmts: none
-                | stmt_or_begin # TODO: newline_node ?
-                | stmts terms stmt_or_begin
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-                | error stmt
-                    {
-                      result = val[1]
-                      debug 12
-                    }
-
-   stmt_or_begin: stmt
-                | klBEGIN
-                    {
-                      yyerror "BEGIN is permitted only at toplevel"
-                    }
-                  begin_block
-                    {
-                      result = val[2] # wtf?
-                    }
-
-            stmt: kALIAS fitem
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      (_, line), lhs, _, rhs = val
-                      result = s(:alias, lhs, rhs).line(line).line line
-                    }
-                | kALIAS tGVAR tGVAR
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
-                    }
-                | kALIAS tGVAR tBACK_REF
-                    {
-                      (_, line), (lhs, _), (rhs, _) = val
-                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
-                    }
-                | kALIAS tGVAR tNTH_REF
-                    {
-                      yyerror "can't make alias for the number variables"
-                    }
-                | kUNDEF undef_list
-                    {
-                      result = val[1]
-                    }
-                | stmt kIF_MOD expr_value
-                    {
-                      t, _, c = val
-                      result = new_if c, t, nil
-                    }
-                | stmt kUNLESS_MOD expr_value
-                    {
-                      f, _, c = val
-                      result = new_if c, nil, f
-                    }
-                | stmt kWHILE_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_while e, c, true
-                    }
-                | stmt kUNTIL_MOD expr_value
-                    {
-                      e, _, c = val
-                      result = new_until e, c, true
-                    }
-                | stmt kRESCUE_MOD stmt
-                    {
-                      body, _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-                      result = new_rescue body, resbody
-                    }
-                | klEND tLCURLY compstmt tRCURLY
-                    {
-                      (_, line), _, stmt, _ = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 13
-                        yyerror "END in method; use at_exit"
-                      end
-
-                      result = new_iter s(:postexe).line(line), 0, stmt
-                    }
-                | command_asgn
-                | mlhs tEQL command_call
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-                | lhs tEQL mrhs
-                    {
-                      lhs, _, rhs = val
-                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
-                    }
-#if V == 20
-                | mlhs tEQL arg_value
-                    {
-                      result = new_masgn val[0], val[2], :wrap
-                    }
-#endif
-#if V >= 27
-                | mlhs tEQL mrhs_arg kRESCUE_MOD stmt
-                    {
-                      # unwraps s(:to_ary, rhs)
-                      lhs, _, (_, rhs), _, resbody = val
-
-                      resbody = new_resbody s(:array).line(resbody.line), resbody
-
-                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
-                    }
-#endif
-#if V == 20
-                | mlhs tEQL mrhs
-#else
-                | mlhs tEQL mrhs_arg
-#endif
-                    {
-                      result = new_masgn val[0], val[2]
-                    }
-                | expr
-
-    command_asgn: lhs tEQL command_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                # | lhs tEQL command_asgn
-                #     {
-                #       result = new_assign val[0], val[2]
-                #     }
-                | var_lhs tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
-                    {
-                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
-
-                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
-                      result.sexp_type = :safe_op_asgn if call_op == '&.'
-                      result.line prim.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
-                    {
-                      lhs1, _, (lhs2, line), (id, _), rhs = val
-
-                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
-                    }
-                | backref tOP_ASGN command_rhs
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-     command_rhs: command_call                =tOP_ASGN
-                    {
-                      expr, = val
-                      result = value_expr expr
-                    }
-#if V >= 24
-                | command_call kRESCUE_MOD stmt
-                    {
-                      expr, (_, line), resbody = val
-
-                      expr = value_expr expr
-                      ary  = s(:array).line line
-                      result = new_rescue(expr, new_resbody(ary, resbody))
-                    }
-#endif
-                | command_asgn
-
-            expr: command_call
-                | expr kAND expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :and, lhs, rhs
-                    }
-                | expr kOR expr
-                    {
-                      lhs, _, rhs = val
-                      result = logical_op :or, lhs, rhs
-                    }
-                | kNOT opt_nl expr
-                    {
-                      (_, line), _, expr = val
-                      result = new_call(expr, :"!").line line
-                      # REFACTOR: call_uni_op
-                    }
-                | tBANG command_call
-                    {
-                      _, cmd = val
-                      result = new_call(cmd, :"!").line cmd.line
-                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
-                      # REFACTOR: call_uni_op -- see parse26.y
-                    }
-#if V >= 27
-                | arg
-                    kIN
-                    {
-                      # TODO? value_expr($1);
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.env.extend
-                    }
-                    p_expr
-                    {
-                      self.env.unextend
-
-                      expr, _, old_kwarg, pat = val
-
-                      expr = value_expr expr
-
-                      self.in_kwarg = old_kwarg
-                      pat_in = new_in pat, nil, nil, expr.line
-                      result = new_case expr, pat_in, expr.line
-                    }
-#endif
-                | arg                                   =tLBRACE_ARG
-
-      expr_value: expr
-                    {
-                      result = value_expr(val[0])
-                    }
-
-   expr_value_do:   {
-                      lexer.cond.push true
-                    }
-                    expr_value do
-                    {
-                      lexer.cond.pop
-                    }
-                    {
-                      _, expr, _, _ = val
-                      result = expr
-                    }
-
-    command_call: command
-                | block_command
-
-   block_command: block_call
-                | block_call call_op2 operation2 command_args
-                    {
-                      blk, _, (msg, _line), args = val
-                      result = new_call(blk, msg.to_sym, args).line blk.line
-                    }
-
- cmd_brace_block: tLBRACE_ARG
-                    {
-                      # self.env.extend(:dynamic)
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      # self.env.unextend
-                    }
-
-           fcall: operation
-                    {
-                      (msg, line), = val
-                      result = new_call(nil, msg.to_sym).line line
-                    }
-
-         command: fcall command_args =tLOWEST
-                    {
-                      call, args = val
-                      result = call.concat args.sexp_body
-                    }
-                | fcall command_args cmd_brace_block
-                    {
-                      call, args, block = val
-
-                      result = call.concat args.sexp_body
-
-                      if block then
-                        block_dup_check result, block
-
-                        result, operation = block, result
-                        result.insert 1, operation
-                      end
-                    }
-                | primary_value call_op operation2 command_args =tLOWEST
-                    {
-                      lhs, callop, (op, _), args = val
-
-                      result = new_call lhs, op.to_sym, args, callop
-                      result.line lhs.line
-                    }
-                | primary_value call_op operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args, val[1]
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | primary_value tCOLON2 operation2 command_args =tLOWEST
-                    {
-                      lhs, _, (id, line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                      result.line line
-                    }
-                | primary_value tCOLON2 operation2 command_args cmd_brace_block
-                    {
-                      recv, _, (msg, _line), args, block = val
-                      call = new_call recv, msg.to_sym, args
-
-                      block_dup_check call, block
-
-                      block.insert 1, call
-                      result = block
-                    }
-                | kSUPER command_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kYIELD command_args
-                    {
-                      (_, line), args = val
-                      result = new_yield args
-                      result.line line # TODO: push to new_yield
-                    }
-                | k_return call_args
-                    {
-                      line = val[0].last
-                      result = s(:return, ret_args(val[1])).line(line)
-                    }
-                | kBREAK call_args
-                    {
-                      (_, line), args = val
-                      result = s(:break, ret_args(args)).line line
-                    }
-                | kNEXT call_args
-                    {
-                      line = val[0].last
-                      result = s(:next, ret_args(val[1])).line(line)
-                    }
-
-            mlhs: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-      mlhs_inner: mlhs_basic
-                | tLPAREN mlhs_inner rparen
-                    {
-                      _, arg, _ = val
-                      l = arg.line
-
-                      result = s(:masgn, s(:array, arg).line(l)).line l
-                    }
-
-      mlhs_basic: mlhs_head
-                    {
-                      head, = val
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head mlhs_item
-                    {
-                      lhs, rhs = val
-                      result = s(:masgn, lhs << rhs.compact).line lhs.line
-                    }
-                | mlhs_head tSTAR mlhs_node
-                    {
-                      head, _, tail = val
-                      head << s(:splat, tail).line(tail.line)
-                      result = s(:masgn, head).line head.line
-                    }
-                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      ary1, _, splat, _, ary2 = val
-
-                      result = list_append ary1, s(:splat, splat).line(splat.line)
-                      result.concat ary2.sexp_body
-                      result = s(:masgn, result).line result.line
-                    }
-                | mlhs_head tSTAR
-                    {
-                      head, _ = val
-                      l = head.line
-                      result = s(:masgn, head << s(:splat).line(l)).line l
-                    }
-                | mlhs_head tSTAR tCOMMA mlhs_post
-                    {
-                      head, _, _, post = val
-                      ary = list_append head, s(:splat).line(head.line)
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR mlhs_node
-                    {
-                      _, node = val
-                      l = node.line
-                      splat  = s(:splat, node).line l
-                      ary    = s(:array, splat).line l
-                      result = s(:masgn, ary).line l
-                    }
-                | tSTAR mlhs_node tCOMMA mlhs_post
-                    {
-                      _, node, _, post = val
-
-                      splat = s(:splat, node).line node.line
-                      ary = s(:array, splat).line splat.line
-                      ary.concat post.sexp_body
-                      result = s(:masgn, ary).line ary.line
-                    }
-                | tSTAR
-                    {
-                      l = lexer.lineno
-                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
-                    }
-                | tSTAR tCOMMA mlhs_post
-                    {
-                      _, _, post = val
-                      l = post.line
-
-                      splat = s(:splat).line l
-                      ary = s(:array, splat, *post.sexp_body).line l
-                      result = s(:masgn, ary).line l
-                    }
-
-       mlhs_item: mlhs_node
-                | tLPAREN mlhs_inner rparen
-                    {
-                      result = val[1]
-                    }
-
-       mlhs_head: mlhs_item tCOMMA
-                    {
-                      lhs, _ = val
-                      result = s(:array, lhs).line lhs.line
-                    }
-                | mlhs_head mlhs_item tCOMMA
-                    {
-                      result = val[0] << val[1].compact
-                    }
-
-       mlhs_post: mlhs_item
-                    {
-                      item, = val
-                      result = s(:array, item).line item.line
-                    }
-                | mlhs_post tCOMMA mlhs_item
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-       mlhs_node: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = self.aryset val[0], val[2]
-                    }
-                | primary_value call_op tIDENTIFIER
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      recv, _, (id, _line) = val
-                      result = new_attrasgn recv, id
-                    }
-                | primary_value call_op tCONSTANT
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 14
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      expr, _, (id, _line) = val
-                      l = expr.line
-
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        debug 15
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      _, (id, l) = val
-
-                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      ref, = val
-
-                      self.backref_assign_error ref
-                    }
-
-             lhs: user_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-                    }
-                | keyword_variable
-                    {
-                      var, = val
-
-                      result = self.assignable var
-
-                      debug 16
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      lhs, _, args, _ = val
-
-                      result = self.aryset lhs, args
-                    }
-                | primary_value call_op tIDENTIFIER # REFACTOR
-                    {
-                      lhs, op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, op
-                    }
-                | primary_value tCOLON2 tIDENTIFIER
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_attrasgn lhs, id
-                    }
-                | primary_value call_op tCONSTANT # REFACTOR?
-                    {
-                      lhs, call_op, (id, _line) = val
-
-                      result = new_attrasgn lhs, id, call_op
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 17
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      l = expr.line
-                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      _, (id, l) = val
-
-                      if (self.in_def || self.in_single > 0) then
-                        debug 18
-                        yyerror "dynamic constant assignment"
-                      end
-
-                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
-                    }
-                | backref
-                    {
-                      self.backref_assign_error val[0]
-                    }
-
-           cname: tIDENTIFIER
-                    {
-                      yyerror "class/module name must be CONSTANT"
-                    }
-                | tCONSTANT
-
-           cpath: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | cname
-                    {
-                      (id, line), = val
-                      result = [id.to_sym, line] # TODO: sexp?
-                    }
-                | primary_value tCOLON2 cname
-                    {
-                      pval, _, (name, _line) = val
-
-                      result = s(:colon2, pval, name.to_sym)
-                      result.line pval.line
-                    }
-
-           fname: tIDENTIFIER | tCONSTANT | tFID
-                | op
-                    {
-                      lexer.lex_state = EXPR_END
-                    }
-
-                | reswords
-
-           fitem: fname
-                    {
-                      result = wrap :lit, val[0]
-                    }
-                | symbol
-
-      undef_list: fitem
-                    {
-                      result = new_undef val[0]
-                    }
-                |
-                    undef_list tCOMMA
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fitem
-                    {
-                      result = new_undef val[0], val[3]
-                    }
-
-                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
-                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
-                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
-                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
-                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
-
-        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
-                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
-                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
-                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
-                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
-                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
-                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
-                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
-                | kUNTIL
-
-             arg: lhs tEQL arg_rhs
-                    {
-                      result = new_assign val[0], val[2]
-                    }
-                | var_lhs tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn val
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn1 val
-                    }
-                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      result = new_op_asgn2 val
-                    }
-                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
-                    {
-                      lhs, _, (id, _line), (op, _), rhs = val
-
-                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
-                    }
-                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      lhs1, _, (lhs2, _line), op, rhs = val
-
-                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
-                    {
-                      _, lhs, op, rhs = val
-
-                      lhs = wrap :colon3, lhs
-                      result = new_const_op_asgn [lhs, op, rhs]
-                    }
-                | backref tOP_ASGN arg_rhs
-                    {
-                      # TODO: lhs = var_field val[0]
-                      asgn = new_op_asgn val
-                      result = self.backref_assign_error asgn
-                    }
-                | arg tDOT2 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
-                      else
-                        result = s(:dot2, v1, v2).line v1.line
-                      end
-                    }
-                | arg tDOT3 arg
-                    {
-                      v1, v2 = val[0], val[2]
-                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
-                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
-                      else
-                        result = s(:dot3, v1, v2).line v1.line
-                      end
-                    }
-#if V >= 26
-                | arg tDOT2
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot2, v1, v2).line v1.line
-                    }
-                | arg tDOT3
-                    {
-                      v1, _ = val
-                      v2 = nil
-
-                      result = s(:dot3, v1, v2).line v1.line
-                    }
-#endif
-
-#if V >= 27
-                | tBDOT2 arg
-                    {
-                      _, v2, = val
-                      v1 = nil
-
-                      result = s(:dot2, v1, v2).line v2.line
-                    }
-                | tBDOT3 arg
-                    {
-                      _, v2 = val
-                      v1 = nil
-
-                      result = s(:dot3, v1, v2).line v2.line
-                    }
-#endif
-
-                | arg tPLUS arg
-                    {
-                      result = new_call val[0], :+, argl(val[2])
-                    }
-                | arg tMINUS arg
-                    {
-                      result = new_call val[0], :-, argl(val[2])
-                    }
-                | arg tSTAR2 arg # TODO: rename
-                    {
-                      result = new_call val[0], :*, argl(val[2])
-                    }
-                | arg tDIVIDE arg
-                    {
-                      result = new_call val[0], :"/", argl(val[2])
-                    }
-                | arg tPERCENT arg
-                    {
-                      result = new_call val[0], :"%", argl(val[2])
-                    }
-                | arg tPOW arg
-                    {
-                      result = new_call val[0], :**, argl(val[2])
-                    }
-#if V == 20
-                | tUMINUS_NUM tINTEGER tPOW arg
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-                    }
-                | tUMINUS_NUM tFLOAT tPOW arg
-#else
-                | tUMINUS_NUM simple_numeric tPOW arg
-#endif
-                    {
-                      _, (num, line), _, arg = val
-                      lit = s(:lit, num).line line
-                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
-
-#if V == 20
-                      ## TODO: why is this 2.0 only?
-                      debug 19
-#endif
-                    }
-                | tUPLUS arg
-                    {
-                      result = new_call val[1], :"+@"
-                    }
-                | tUMINUS arg
-                    {
-                      result = new_call val[1], :"-@"
-                    }
-                | arg tPIPE arg
-                    {
-                      result = new_call val[0], :"|", argl(val[2])
-                    }
-                | arg tCARET arg
-                    {
-                      result = new_call val[0], :"^", argl(val[2])
-                    }
-                | arg tAMPER2 arg
-                    {
-                      result = new_call val[0], :"&", argl(val[2])
-                    }
-                | arg tCMP arg
-                    {
-                      result = new_call val[0], :"<=>", argl(val[2])
-                    }
-                | rel_expr                      =tCMP
-                | arg tEQ arg
-                    {
-                      result = new_call val[0], :"==", argl(val[2])
-                    }
-                | arg tEQQ arg
-                    {
-                      result = new_call val[0], :"===", argl(val[2])
-                    }
-                | arg tNEQ arg
-                    {
-                      result = new_call val[0], :"!=", argl(val[2])
-                    }
-                | arg tMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = new_match lhs, rhs
-                    }
-                | arg tNMATCH arg
-                    {
-                      lhs, _, rhs = val
-                      result = s(:not, new_match(lhs, rhs)).line lhs.line
-                    }
-                | tBANG arg
-                    {
-                      _, arg = val
-                      result = new_call arg, :"!"
-                      result.line arg.line
-                    }
-                | tTILDE arg
-                    {
-                      result = new_call value_expr(val[1]), :"~"
-                    }
-                | arg tLSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :"\<\<", argl(val[2])
-                    }
-                | arg tRSHFT arg
-                    {
-                      val[0] = value_expr val[0]
-                      val[2] = value_expr val[2]
-                      result = new_call val[0], :">>", argl(val[2])
-                    }
-                | arg tANDOP arg
-                    {
-                      result = logical_op :and, val[0], val[2]
-                    }
-                | arg tOROP arg
-                    {
-                      result = logical_op :or, val[0], val[2]
-                    }
-                | kDEFINED opt_nl arg
-                    {
-                      (_, line), _, arg = val
-                      result = s(:defined, arg).line line
-                    }
-                | arg tEH arg opt_nl tCOLON arg
-                    {
-                      c, _, t, _, _, f = val
-                      result = s(:if, c, t, f).line c.line
-                    }
-                | primary
-
-           relop: tGT
-                | tLT
-                | tGEQ
-                | tLEQ
-
-        rel_expr: arg      relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-                | rel_expr relop arg                    =tGT
-                    {
-                      lhs, (op, _), rhs = val
-                      warn "comparison '%s' after comparison", op
-                      result = new_call lhs, op.to_sym, argl(rhs)
-                    }
-
-       arg_value: arg
-                    {
-                      result = value_expr(val[0])
-                    }
-
-       aref_args: none
-                | args trailer
-                    {
-                      result = args [val[0]]
-                    }
-                | args tCOMMA assocs trailer
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs trailer
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-         arg_rhs: arg                   =tOP_ASGN
-                | arg kRESCUE_MOD arg
-                    {
-                      body, (_, line), resbody = val
-                      body    = value_expr body
-                      resbody = remove_begin resbody
-
-                      ary = s(:array).line line
-                      result  = new_rescue(body, new_resbody(ary, resbody))
-                    }
-
-      paren_args: tLPAREN2 opt_call_args rparen
-                    {
-                      _, args, _ = val
-                      result = args
-                    }
-#if V >= 27
-                | tLPAREN2 args tCOMMA args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      yyerror "Unexpected ..." unless
-                        self.lexer.is_local_id(:"*")  &&
-                        self.lexer.is_local_id(:"**") &&
-                        self.lexer.is_local_id(:"&")
-
-                      result = call_args val
-                    }
-#endif
-
-  opt_paren_args: none
-                | paren_args
-
-   opt_call_args: none
-                | call_args
-                | args tCOMMA
-                    {
-                      result = args val
-                    }
-                | args tCOMMA assocs tCOMMA
-                    {
-                      result = args [val[0], array_to_hash(val[2])]
-                    }
-                | assocs tCOMMA
-                    {
-                      result = args [array_to_hash(val[0])]
-                    }
-
-       call_args: command
-                    {
-                      warning "parenthesize argument(s) for future version"
-                      result = call_args val
-                    }
-                | args opt_block_arg
-                    {
-                      result = call_args val
-                    }
-                | assocs opt_block_arg
-                    {
-                      result = call_args [array_to_hash(val[0]), val[1]]
-                    }
-                | args tCOMMA assocs opt_block_arg
-                    {
-                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
-                    }
-                | block_arg
-                    {
-                      result = call_args val
-                    }
-
-    command_args:   {
-                      # parse26.y line 2200
-
-                      # If call_args starts with a open paren '(' or
-                      # '[', look-ahead reading of the letters calls
-                      # CMDARG_PUSH(0), but the push must be done
-                      # after CMDARG_PUSH(1). So this code makes them
-                      # consistent by first cancelling the premature
-                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
-                      # finally redoing CMDARG_PUSH(0).
-
-                      result = yychar = self.last_token_type.first
-                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.push true
-                      lexer.cmdarg.push false if lookahead
-                    }
-                      call_args
-                    {
-                      yychar, args = val
-
-                      # call_args can be followed by tLBRACE_ARG (that
-                      # does CMDARG_PUSH(0) in the lexer) but the push
-                      # must be done after CMDARG_POP() in the parser.
-                      # So this code does CMDARG_POP() to pop 0 pushed
-                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
-                      # by command_args, and CMDARG_PUSH(0) to restore
-                      # back the flag set by tLBRACE_ARG.
-
-                      lookahead = [:tLBRACE_ARG].include?(yychar)
-                      lexer.cmdarg.pop if lookahead
-                      lexer.cmdarg.pop
-                      lexer.cmdarg.push false if lookahead
-                      result = args
-                    }
-
-       block_arg: tAMPER arg_value
-                    {
-                      _, arg = val
-                      result = s(:block_pass, arg).line arg.line
-                    }
-
-   opt_block_arg: tCOMMA block_arg
-                    {
-                      result = val[1]
-                    }
-                | none
-
-            args: arg_value
-                    {
-                      arg, = val
-                      lineno = arg.line || lexer.lineno # HACK
-
-                      result = s(:array, arg).line lineno
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | args tCOMMA arg_value
-                    {
-                      args, _, id = val
-                      result = self.list_append args, id
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: the line number from tSTAR has been dropped
-                      args, _, _, id = val
-                      line = lexer.lineno
-                      result = self.list_append args, s(:splat, id).line(line)
-                    }
-
-#if V >= 21
-        mrhs_arg: mrhs
-                    {
-                      result = new_masgn_arg val[0]
-                    }
-                | arg_value
-                    {
-                      result = new_masgn_arg val[0], :wrap
-                    }
-
-#endif
-            mrhs: args tCOMMA arg_value
-                    {
-                      result = val[0] << val[2]
-                    }
-                | args tCOMMA tSTAR arg_value
-                    {
-                      # TODO: make all tXXXX terminals include lexer.lineno
-                      arg, _, _, splat = val
-                      result = self.arg_concat arg, splat
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-                      result = s(:splat, arg).line arg.line
-                    }
-
-         primary: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                | qwords
-                | symbols
-                | qsymbols
-                | var_ref
-                | backref
-                | tFID
-                    {
-                      (msg, line), = val
-                      result = new_call nil, msg.to_sym
-                      result.line line
-                    }
-                | k_begin
-                    {
-                      lexer.cmdarg.push false
-                      result = self.lexer.lineno
-                    }
-                    bodystmt k_end
-                    {
-                      lexer.cmdarg.pop
-                      result = new_begin val
-                    }
-                | tLPAREN_ARG
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                      result = lexer.lineno
-                    }
-                    rparen
-                    {
-                      _, line, _ = val
-                      result = s(:begin).line line
-                    }
-                | tLPAREN_ARG
-                    stmt
-                    {
-                      lexer.lex_state = EXPR_ENDARG
-                    }
-                    rparen
-                    {
-                      _, stmt, _, _, = val
-                      # warning "(...) interpreted as grouped expression"
-                      result = stmt
-                    }
-                | tLPAREN compstmt tRPAREN
-                    {
-                      _, stmt, _ = val
-                      result = stmt
-                      result ||= s(:nil).line lexer.lineno
-                      result.paren = true
-                    }
-                | primary_value tCOLON2 tCONSTANT
-                    {
-                      expr, _, (id, _line) = val
-
-                      result = s(:colon2, expr, id.to_sym).line expr.line
-                    }
-                | tCOLON3 tCONSTANT
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | tLBRACK { result = lexer.lineno } aref_args tRBRACK
-                    {
-                      _, line, args, _ = val
-                      result = args || s(:array)
-                      result.sexp_type = :array # aref_args is :args
-                      result.line line
-                    }
-                | tLBRACE
-                    {
-                      result = self.lexer.lineno
-                    }
-                    assoc_list tRCURLY
-                    {
-                      result = new_hash val
-                    }
-                | k_return
-                    {
-                      (_, line), = val
-                      result = s(:return).line line
-                    }
-                | kYIELD tLPAREN2 call_args rparen
-                    {
-                      (_, line), _, args, _ = val
-
-                      result = new_yield(args).line line
-                    }
-                | kYIELD tLPAREN2 rparen
-                    {
-                      (_, line), _, _ = val
-
-                      result = new_yield.line line
-                    }
-                | kYIELD
-                    {
-                      (_, line), = val
-
-                      result = new_yield.line line
-                    }
-                | kDEFINED opt_nl tLPAREN2 expr rparen
-                    {
-                      (_, line), _, _, arg, _ = val
-
-                      result = s(:defined, arg).line line
-                    }
-                | kNOT tLPAREN2 expr rparen
-                    {
-                      _, _, lhs, _ = val
-                      result = new_call lhs, :"!"
-                    }
-                | kNOT tLPAREN2 rparen
-                    {
-                      debug 20
-                    }
-                | fcall brace_block
-                    {
-                      call, iter = val
-
-                      iter.insert 1, call
-                      result = iter
-                      # FIX: probably not: call.line = iter.line
-                    }
-                | method_call
-                | method_call brace_block
-                    {
-                      call, iter = val[0], val[1]
-                      block_dup_check call, iter
-                      iter.insert 1, call # FIX
-                      result = iter
-                    }
-                | lambda
-                    {
-                      expr, = val
-                      result = expr
-                    }
-                | k_if expr_value then compstmt if_tail k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, t, f
-                    }
-                | k_unless expr_value then compstmt opt_else k_end
-                    {
-                      _, c, _, t, f, _ = val
-                      result = new_if c, f, t
-                    }
-                | k_while expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_while body, cond, true
-                    }
-                | k_until expr_value_do compstmt k_end
-                    {
-                      _, cond, body, _ = val
-                      result = new_until body, cond, true
-                    }
-                | k_case expr_value opt_terms case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-                      result = new_case expr, body, line
-                    }
-                | k_case            opt_terms case_body k_end
-                    {
-                      (_, line), _, body, _ = val
-                      result = new_case nil, body, line
-                    }
-#if V >= 27
-                | k_case expr_value opt_terms p_case_body k_end
-                    {
-                      (_, line), expr, _, body, _ = val
-
-                      result = new_case expr, body, line
-                    }
-#endif
-                | k_for for_var kIN expr_value_do compstmt k_end
-                    {
-                      _, var, _, iter, body, _ = val
-                      result = new_for iter, var, body
-                    }
-                | k_class
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath superclass
-                    {
-                      if (self.in_def || self.in_single > 0) then
-                        yyerror "class definition in method body"
-                      end
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_class val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_class tLSHFT
-                    {
-                      result = self.lexer.lineno
-                    }
-                    expr
-                    {
-                      result = self.in_def
-                      self.in_def = false
-                    }
-                    term
-                    {
-                      result = self.in_single
-                      self.in_single = 0
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_sclass val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_module
-                    {
-                      result = self.lexer.lineno
-                    }
-                    cpath
-                    {
-                      yyerror "module definition in method body" if
-                        self.in_def or self.in_single > 0
-
-                      self.env.extend
-                    }
-                    bodystmt k_end
-                    {
-                      result = new_module val
-                      self.env.unextend
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def fname
-                    {
-                      result = self.in_def
-
-                      self.in_def = true # group = local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-                    }
-                    f_arglist bodystmt k_end
-                    {
-                      result, in_def = new_defn val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.lexer.ignore_body_comments
-                    }
-                | k_def singleton dot_or_colon
-                    {
-                      lexer.lex_state = EXPR_FNAME
-                    }
-                    fname
-                    {
-                      result = self.in_def
-
-                      self.in_single += 1 # TODO: remove?
-
-                      self.in_def = true # local_push
-                      self.env.extend
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
-                    }
-                    f_arglist bodystmt k_end
-                    {
-
-                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
-                      # =>
-                      # [kdef, recv, (name, line), in_def, args, body, kend]
-
-                      val.delete_at 3
-                      val.delete_at 2
-
-                      result, in_def = new_defs val
-
-                      lexer.cond.pop # group = local_pop
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                      self.in_def = in_def
-
-                      self.in_single -= 1
-
-                      # TODO: restore cur_arg ? what's cur_arg?
-
-                      self.lexer.ignore_body_comments
-                    }
-                | kBREAK
-                    {
-                      (_, line), = val
-                      result = s(:break).line line
-                    }
-                | kNEXT
-                    {
-                      (_, line), = val
-                      result = s(:next).line line
-                    }
-                | kREDO
-                    {
-                      (_, line), = val
-                      result = s(:redo).line line
-                    }
-                | kRETRY
-                    {
-                      (_, line), = val
-                      result = s(:retry).line line
-                    }
-
-   primary_value: primary
-                    {
-                      result = value_expr(val[0])
-                    }
-
-                    # These are really stupid
-         k_begin: kBEGIN
-            k_if: kIF
-        k_unless: kUNLESS
-         k_while: kWHILE
-         k_until: kUNTIL
-          k_case: kCASE
-           k_for: kFOR
-         k_class: kCLASS
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-        k_module: kMODULE
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-           k_def: kDEF
-                    {
-                      self.comments.push self.lexer.comments
-                    }
-            k_do: kDO
-      k_do_block: kDO_BLOCK
-        k_rescue: kRESCUE
-        k_ensure: kENSURE
-          k_when: kWHEN
-          k_else: kELSE
-         k_elsif: kELSIF
-           k_end: kEND
-        k_return: kRETURN
-
-            then: term
-                | kTHEN
-                | term kTHEN
-
-              do: term
-                | kDO_COND
-
-         if_tail: opt_else
-                | k_elsif expr_value then compstmt if_tail
-                    {
-                      (_, line), c, _, t, rest = val
-
-                      result = s(:if, c, t, rest).line line
-                    }
-
-        opt_else: none
-                | kELSE compstmt
-                    {
-                      result = val[1]
-                    }
-
-         for_var: lhs
-                | mlhs
-                    {
-                      val[0].delete_at 1 if val[0][1].nil? # HACK
-                    }
-
-          f_marg: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      result = val[1]
-                    }
-
-     f_marg_list: f_marg
-                    {
-                      sym, = val
-
-                      result = s(:array, sym).line lexer.lineno
-                    }
-                | f_marg_list tCOMMA f_marg
-                    {
-                      result = list_append val[0], val[2]
-                    }
-
-         f_margs: f_marg_list
-                    {
-                      args, = val
-
-                      result = block_var args
-                    }
-                | f_marg_list tCOMMA f_rest_marg
-                    {
-                      args, _, rest = val
-
-                      result = block_var args, rest
-                    }
-                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
-                    {
-                      lhs, _, splat, _, rhs = val
-
-                      result = block_var lhs, splat, rhs
-                    }
-                | f_rest_marg
-                    {
-                      rest, = val
-
-                      result = block_var rest
-                    }
-                | f_rest_marg tCOMMA f_marg_list
-                    {
-                      splat, _, rest = val
-
-                      result = block_var splat, rest
-                    }
-
-     f_rest_marg: tSTAR f_norm_arg
-                    {
-                      _, (id, line) = val
-
-                      result = args ["*#{id}".to_sym]
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      result = args [:*]
-                      result.line lexer.lineno # FIX: tSTAR -> line
-                    }
-
- block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_block_kwarg opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = call_args val
-                    }
-#if V >= 27
-                | f_no_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-#endif
-                | f_block_arg
-                    {
-                      (id, line), = val
-                      result = call_args [id]
-                      result.line line
-                    }
-
-opt_block_args_tail: tCOMMA block_args_tail
-                    {
-                      result = args val
-                    }
-                | none
-
-     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA
-                    {
-                      result = args(val) << nil
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_block_optarg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | f_rest_arg tCOMMA f_arg opt_block_args_tail
-                    {
-                      result = args val
-                    }
-                | block_args_tail
-                    {
-                      result = args val
-                    }
-
- opt_block_param: none { result = 0 }
-                | block_param_def
-                    {
-                      self.lexer.command_start = true
-                    }
-
- block_param_def: tPIPE opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-                | tOROP
-                    {
-                      result = s(:args).line lexer.lineno
-                    }
-                | tPIPE block_param opt_bv_decl tPIPE
-                    {
-                      # TODO: current_arg = 0
-                      result = args val
-                    }
-
-     opt_bv_decl: opt_nl
-                | opt_nl tSEMI bv_decls opt_nl
-                    {
-                      result = args val
-                    }
-
-        bv_decls: bvar
-                    {
-                      result = args val
-                    }
-                | bv_decls tCOMMA bvar
-                    {
-                      result = args val
-                    }
-
-            bvar: tIDENTIFIER
-                    {
-                      result = wrap :shadow, val[0]
-                    }
-                | f_bad_arg
-
-          lambda: tLAMBDA
-                    {
-                      self.env.extend :dynamic
-                      result = [lexer.lineno, lexer.lpar_beg]
-                      lexer.paren_nest += 1
-                      lexer.lpar_beg = lexer.paren_nest
-                    }
-                    f_larglist
-                    {
-                      lexer.cmdarg.push false
-                    }
-                    lambda_body
-                    {
-                      _, (line, lpar), args, _cmdarg, body = val
-                      lexer.lpar_beg = lpar
-
-                      lexer.cmdarg.pop
-
-                      call = s(:lambda).line line
-                      result = new_iter call, args, body
-                      result.line line
-                      self.env.unextend # TODO: dynapush & dynapop
-                    }
-
-     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
-                    {
-                      result = args val
-                    }
-                | f_args
-                    {
-                      result = val[0]
-                      result = 0 if result == s(:args)
-                    }
-
-     lambda_body: tLAMBEG compstmt tRCURLY
-                    {
-                      result = val[1]
-                    }
-                | kDO_LAMBDA bodystmt kEND
-                    {
-                      result = val[1]
-                    }
-
-        do_block: k_do_block do_body kEND
-                    {
-                      (_, line), iter, _ = val
-                      result = iter.line line
-                    }
-
-      block_call: command do_block
-                    {
-                      # TODO:
-                      ## if (nd_type($1) == NODE_YIELD) {
-                      ##     compile_error(PARSER_ARG "block given to yield");
-
-                      cmd, blk = val
-
-                      syntax_error "Both block arg and actual block given." if
-                        cmd.block_pass?
-
-                      if inverted? val then
-                        val = invert_block_call val
-                        cmd, blk = val
-                      end
-
-                      result = blk
-                      result.insert 1, cmd
-                    }
-                | block_call call_op2 operation2 opt_paren_args
-                    {
-                      lhs, _, (id, _line), args = val
-
-                      result = new_call lhs, id.to_sym, args
-                    }
-                | block_call call_op2 operation2 opt_paren_args brace_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-                | block_call call_op2 operation2 command_args do_block
-                    {
-                      iter1, _, (name, _line), args, iter2 = val
-
-                      call = new_call iter1, name.to_sym, args
-                      iter2.insert 1, call
-
-                      result = iter2
-                    }
-
-     method_call: fcall paren_args
-                    {
-                      call, args = val
-
-                      result = call.concat args.sexp_body if args
-                    }
-                | primary_value call_op operation2 opt_paren_args
-                    {
-                      recv, call_op, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args, call_op
-                    }
-                | primary_value tCOLON2 operation2 paren_args
-                    {
-                      recv, _, (op, _line), args = val
-
-                      result = new_call recv, op.to_sym, args
-                    }
-                | primary_value tCOLON2 operation3
-                    {
-                      lhs, _, (id, _line) = val
-
-                      result = new_call lhs, id.to_sym
-                    }
-                | primary_value call_op paren_args
-                    {
-                      result = new_call val[0], :call, val[2], val[1]
-                    }
-                | primary_value tCOLON2 paren_args
-                    {
-                      result = new_call val[0], :call, val[2]
-                    }
-                | kSUPER paren_args
-                    {
-                      result = new_super val[1]
-                    }
-                | kSUPER
-                    {
-                      result = s(:zsuper).line lexer.lineno
-                    }
-                | primary_value tLBRACK2 opt_call_args rbracket
-                    {
-                      result = new_aref val
-                    }
-
-     brace_block: tLCURLY
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    brace_body tRCURLY
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-                | k_do
-                    {
-                      self.env.extend :dynamic
-                      result = self.lexer.lineno
-                    }
-                    do_body kEND
-                    {
-                      _, line, body, _ = val
-
-                      result = body
-                      result.line line
-
-                      self.env.unextend
-                    }
-
-      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { result = lexer.cmdarg.store(false) }
-                    opt_block_param compstmt
-                    {
-                      line, cmdarg, param, cmpstmt = val
-
-                      result = new_brace_body param, cmpstmt, line
-                      self.env.unextend
-                      lexer.cmdarg.restore cmdarg
-                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
-                    }
-
-         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
-                    { lexer.cmdarg.push false }
-                    opt_block_param
-#if V >= 25
-                    bodystmt
-#else
-                    compstmt
-#endif
-                    {
-                      line, _cmdarg, param, cmpstmt = val
-
-                      result = new_do_body param, cmpstmt, line
-                      lexer.cmdarg.pop
-                      self.env.unextend
-                    }
-
-       case_args: arg_value
-                    {
-                      arg, = val
-
-                      result = s(:array, arg).line arg.line
-                    }
-                | tSTAR arg_value
-                    {
-                      _, arg = val
-
-                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
-                    }
-                | case_args tCOMMA arg_value
-                    {
-                      args, _, id = val
-
-                      result = self.list_append args, id
-                    }
-                | case_args tCOMMA tSTAR arg_value
-                    {
-                      args, _, _, id = val
-
-                      result = self.list_append args, s(:splat, id).line(id.line)
-                    }
-
-       case_body: k_when
-                    {
-                      result = self.lexer.lineno
-                    }
-                    case_args then compstmt cases
-                    {
-                      result = new_when(val[2], val[4])
-                      result.line val[1]
-                      result << val[5] if val[5]
-                    }
-
-           cases: opt_else | case_body
-#if V >= 27
-######################################################################
-
-     p_case_body: kIN
-                    {
-                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
-                      self.lexer.command_start = false
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      push_pvtbl
-                      push_pktbl
-                    }
-                    p_top_expr then
-                    {
-                      pop_pktbl
-                      pop_pvtbl
-                      old_kwargs = _values[-3]
-                      self.in_kwarg = old_kwargs
-                    }
-                    compstmt
-                    p_cases
-                    {
-                      (_, line), _, pat, _, _, body, cases = val
-
-                      result = new_in pat, body, cases, line
-                    }
-
-         p_cases: opt_else
-                | p_case_body
-
-      p_top_expr: p_top_expr_body
-                | p_top_expr_body kIF_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, body, nil).line body.line
-                    }
-                | p_top_expr_body kUNLESS_MOD expr_value
-                    {
-                      body, _, cond = val
-                      body = remove_begin body
-
-                      result = s(:if, cond, nil, body).line body.line
-                    }
-
- p_top_expr_body: p_expr
-                | p_expr tCOMMA
-                    {
-                      expr, _ = val
-
-                      tail = new_array_pattern_tail nil, true, nil, nil
-                      result = new_array_pattern nil, expr, tail, expr.line
-                    }
-                | p_expr tCOMMA p_args
-                    {
-                      expr, _, args = val
-
-                      result = new_array_pattern nil, expr, args, expr.line
-                    }
-                | p_args_tail
-                    {
-                      args, = val
-                      result = new_array_pattern nil, nil, args, args.line
-                    }
-                | p_kwargs
-                    {
-                      kwargs, = val
-                      result = new_hash_pattern nil, kwargs, kwargs.line
-                    }
-
-          p_expr: p_as
-
-            p_as: p_expr tASSOC p_variable
-                    {
-                      # NODE *n = NEW_LIST($1, &@$);
-                      # n = list_append(p, n, $3);
-                      # $$ = new_hash(p, n, &@$);
-
-                      expr, _, var = val
-
-                      id = var.last
-
-                      self.env[id] = :lvar # HACK: need to extend env
-                      lhs = s(:lasgn, id).line var.line
-
-                      result = new_assign lhs, expr
-                    }
-                | p_alt
-
-           p_alt: p_alt tPIPE p_expr_basic
-                    {
-                      lhs, _, rhs = val
-
-                      result = s(:or, lhs, rhs).line lhs.line
-                    }
-                | p_expr_basic
-
-        p_lparen: tLPAREN2 { push_pktbl }
-      p_lbracket: tLBRACK2 { push_pktbl }
-
-    p_expr_basic: p_value
-                | p_const p_lparen p_args tRPAREN
-                    {
-                      lhs, _, args, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern(lhs, nil, args, lhs.line)
-                    }
-                | p_const p_lparen p_kwargs tRPAREN
-                    {
-                      lhs, _, kwargs, _ = val
-
-                      pop_pktbl
-                      result = new_hash_pattern(lhs, kwargs, lhs.line)
-                    }
-                | p_const tLPAREN2 tRPAREN
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | p_const p_lbracket p_args rbracket
-                    {
-                      const, _, pre_arg, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern const, nil, pre_arg, const.line
-                    }
-                | p_const p_lbracket p_kwargs rbracket
-                    {
-                      const, _, kwargs, _ = val
-
-                      result = new_hash_pattern const, kwargs, const.line
-                    }
-                | p_const tLBRACK2 rbracket
-                    {
-                      const, _, _ = val
-
-                      tail = new_array_pattern_tail nil, nil, nil, nil
-                      result = new_array_pattern const, nil, tail, const.line
-                    }
-                | tLBRACK { push_pktbl } p_args rbracket
-                    {
-                      _, _, pat, _ = val
-
-                      pop_pktbl
-                      result = new_array_pattern nil, nil, pat, pat.line
-                    }
-                | tLBRACK rbracket
-                    {
-                      (_, line), _ = val
-
-                      result = s(:array_pat).line line
-                    }
-                | tLBRACE
-                    {
-                      push_pktbl
-                      result = self.in_kwarg
-                      self.in_kwarg = false
-                    }
-                    p_kwargs rbrace
-                    {
-                      _, in_kwarg, kwargs, _ = val
-
-                      pop_pktbl
-                      self.in_kwarg = in_kwarg
-
-                      result = new_hash_pattern(nil, kwargs, kwargs.line)
-                    }
-                | tLBRACE rbrace
-                    {
-                      (_, line), _ = val
-
-                      tail = new_hash_pattern_tail nil, nil, line
-                      result = new_hash_pattern nil, tail, line
-                    }
-                | tLPAREN { push_pktbl } p_expr tRPAREN
-                    {
-                      _, _, expr, _ = val
-
-                      pop_pktbl
-                      result = expr
-                    }
-
-          p_args: p_expr
-                    {
-                      expr, = val
-
-                      ary = s(:array_TAIL, expr).line expr.line
-                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
-                    }
-                | p_args_head
-                    {
-                      head, = val
-
-                      result = new_array_pattern_tail head, true, nil, nil
-                    }
-                | p_args_head p_arg
-                    {
-                      head, tail = val
-
-                      both = array_pat_concat head, tail
-
-                      result = new_array_pattern_tail both, nil, nil, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER
-                    {
-                      head, _, (id, _line) = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, nil
-                      result.line head.line
-                    }
-                | p_args_head tSTAR tIDENTIFIER tCOMMA p_args_post
-                    {
-                      head, _, (id, _line), _, post = val
-
-                      result = new_array_pattern_tail head, true, id.to_sym, post
-                      result.line head.line
-                    }
-                | p_args_head tSTAR
-                    {
-                      expr, _ = val
-
-                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
-                    }
-                | p_args_head tSTAR tCOMMA p_args_post
-                    {
-                      head, _, _, post = val
-
-                      result = new_array_pattern_tail(head, true, nil, post).line head.line
-                    }
-                | p_args_tail
-
-     p_args_head: p_arg tCOMMA
-                    {
-                      arg, _ = val
-                      result = arg
-                    }
-                | p_args_head p_arg tCOMMA
-                    {
-                      head, tail, _ = val
-
-                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
-                      result.line head.line
-                    }
-
-     p_args_tail: tSTAR tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      result = new_array_pattern_tail nil, true, id.to_sym, nil
-                      result.line line
-                    }
-                | tSTAR tIDENTIFIER tCOMMA p_args_post
-                    {
-                      _, (id, line), _, rhs = val
-
-                      result = new_array_pattern_tail nil, true, id.to_sym, rhs
-                      result.line line
-                    }
-                | tSTAR
-                    {
-                      (_, line), = val
-
-                      result = new_array_pattern_tail nil, true, nil, nil
-                      result.line line
-                    }
-                | tSTAR tCOMMA p_args_post
-                    {
-                      (_, line), _, args = val
-
-                      result = new_array_pattern_tail nil, true, nil, args
-                      result.line line
-                    }
-
-     p_args_post: p_arg
-                | p_args_post tCOMMA p_arg
-                    {
-                      lhs, _, rhs = val
-
-                      result = array_pat_concat lhs, rhs
-                    }
-
-           p_arg: p_expr
-                    {
-                      expr, = val
-                      expr = s(:array_TAIL, expr).line expr.line unless
-                        expr.sexp_type == :array_TAIL
-                      result = expr
-                    }
-
-        p_kwargs: p_kwarg tCOMMA p_kwrest
-                    {
-                      kw_arg, _, rest = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
-                    }
-                | p_kwarg
-                    {
-                      kwarg, = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_kwarg tCOMMA
-                    {
-                      kwarg, _ = val
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
-                    }
-                | p_kwrest
-                    {
-                      rest, = val
-
-                      result = new_hash_pattern_tail nil, rest, rest.line
-                    }
-                | p_kwarg tCOMMA p_kwnorest
-                    {
-                      kwarg, _, norest = val
-
-                      # TODO? new_unique_key_hash(p, $1, &@$)
-                      result = new_hash_pattern_tail kwarg, norest, kwarg.line
-                    }
-                | p_kwnorest
-                    {
-                      norest, = val
-
-                      result = new_hash_pattern_tail nil, norest, norest.line
-                    }
-
-         p_kwarg: p_kw # TODO? rb_ary_new_from_args(1, $1)
-                | p_kwarg tCOMMA p_kw
-                    {
-                      kwarg, _, kw = val
-                      kwarg.concat kw.sexp_body
-                      result = kwarg
-                    }
-
-            p_kw: p_kw_label p_expr
-                    {
-                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
-                      lhs, rhs = val
-
-                      result = s(:PAIR, lhs, rhs).line lhs.line
-                    }
-                | p_kw_label
-                    {
-                      lhs, = val
-
-                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
-
-                      # TODO: if ($1 && !is_local_id(get_id($1))) {
-                      #     yyerror1(&@1, "key must be valid as local variables");
-                      # }
-
-                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
-                      #                     assignable(p, $1, 0, &@$));
-
-
-                      case lhs.sexp_type
-                      when :lit then
-                        assignable [lhs.value, lhs.line]
-                      else
-                        # TODO or done?
-                        debug 666
-                      end
-
-                      # TODO PAIR -> LIST ?
-                      result = s(:PAIR, lhs, nil).line lhs.line
-                    }
-
-      p_kw_label: tLABEL
-                    {
-                      result = wrap :lit, val[0]
-                    }
-
-        p_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = s(:kwrest, :"**#{name}").line line
-                    }
-                | kwrest_mark
-                    {
-                      (_, line), = val
-
-                      result = s(:kwrest, :"**").line line
-                    }
-
-      p_kwnorest: kwrest_mark kNIL
-                    {
-                      (_, line), _ = val
-
-                      # TODO: or s(:norest)? s(:**nil)?
-                      result = s(:kwrest, :"**nil").line line
-                    }
-
-         p_value: p_primitive
-                | p_primitive tDOT2 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot2, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT3 p_primitive
-                    {
-                      lhs, _, rhs = val
-
-                      lhs = value_expr lhs
-                      rhs = value_expr rhs
-
-                      result = s(:dot3, lhs, rhs).line lhs.line
-                    }
-                | p_primitive tDOT2
-                    {
-                      v1, _ = val
-
-                      result = s(:dot2, v1, nil).line v1.line
-                    }
-                | p_primitive tDOT3
-                    {
-                      v1, _ = val
-
-                      result = s(:dot3, v1, nil).line v1.line
-                    }
-                | p_variable
-                | p_var_ref
-                | p_const
-                | tBDOT2 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot2, nil, v1).line v1.line
-                    }
-                | tBDOT3 p_primitive
-                    {
-                      _, v1 = val
-
-                      result = s(:dot3, nil, v1).line v1.line
-                    }
-
-     p_primitive: literal
-                | strings
-                | xstring
-                | regexp
-                | words
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qwords
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | symbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | qsymbols
-                    {
-                      result = ary_to_pat val[0]
-                    }
-                | keyword_variable
-                    {
-                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
-                      var, = val
-
-                      result = var
-                    }
-                | lambda
-
-      p_variable: tIDENTIFIER
-                    {
-                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
-                      # TODO: assignable(p, $1, 0, &@$);
-                      result = wrap :lasgn, val[0]
-                    }
-
-       p_var_ref: tCARET tIDENTIFIER
-                    {
-                      # TODO: check id against env for lvar or dvar
-                      result = wrap :lvar, val[1]
-                    }
-
-         p_const: tCOLON3 cname
-                    {
-                      result = wrap :colon3, val[1]
-                    }
-                | p_const tCOLON2 cname
-                    {
-                      lhs, _, (id, _line) = val
-
-                      l = lhs.line
-                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
-                    }
-                | tCONSTANT
-                    {
-                      # TODO $$ = gettable(p, $1, &@$);
-                      result = wrap :const, val[0]
-                    }
-######################################################################
-#endif
-
-      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
-                    {
-                      (_, line), klasses, var, _, body, rest = val
-
-                      klasses ||= s(:array)
-                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
-                      klasses.line line
-
-                      result = new_resbody(klasses, body)
-                      result << rest if rest # UGH, rewritten above
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-        exc_list: arg_value
-                    {
-                      arg, = val
-                      result = s(:array, arg).line arg.line
-                    }
-                | mrhs
-                | none
-
-         exc_var: tASSOC lhs
-                    {
-                      result = val[1]
-                    }
-                | none
-
-      opt_ensure: k_ensure compstmt
-                    {
-                      (_, line), body = val
-
-                      result = body || s(:nil).line(line)
-                    }
-                | none
-
-         literal: numeric
-                    {
-                      (lit, line), = val
-                      result = s(:lit, lit).line line
-                    }
-                | symbol
-
-         strings: string
-                    {
-                      str, = val
-                      str = s(:dstr, str.value) if str.sexp_type == :evstr
-                      result = str
-                    }
-
-          string: tCHAR
-                    {
-                      debug 37
-                    }
-                | string1
-                | string string1
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         string1: tSTRING_BEG string_contents tSTRING_END
-                    {
-                      (_, line), str, (_, func) = val
-
-                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
-
-                      result = str.line line
-                    }
-                | tSTRING
-                    {
-                      result = new_string val
-                    }
-
-         xstring: tXSTRING_BEG xstring_contents tSTRING_END
-                    {
-                      result = new_xstring val
-                      # TODO: dedent?!?! SERIOUSLY?!?
-                    }
-
-          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
-                    {
-                      result = new_regexp val
-                    }
-
-           words: tWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tWORDS_BEG word_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-       word_list: none
-                    {
-                      result = new_word_list
-                    }
-                | word_list word tSPACE
-                    {
-                      result = val[0].dup << new_word_list_entry(val)
-                    }
-
-            word: string_content
-                | word string_content
-                    {
-                      result = self.literal_concat val[0], val[1]
-                    }
-
-         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tSYMBOLS_BEG symbol_list tSTRING_END
-                    {
-                      (_, line), list, _, = val
-                      list.line line
-                      result = list
-                    }
-
-     symbol_list: none
-                    {
-                      result = new_symbol_list
-                    }
-                | symbol_list word tSPACE
-                    {
-                      list, * = val
-                      result = list.dup << new_symbol_list_entry(val)
-                    }
-
-          qwords: tQWORDS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQWORDS_BEG qword_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
-                    {
-                      (_, line), _, _ = val
-
-                      result = s(:array).line line
-                    }
-                | tQSYMBOLS_BEG qsym_list tSTRING_END
-                    {
-                      (_, line), list, _ = val
-
-                      result = list.line line
-                    }
-
-      qword_list: none
-                    {
-                      result = new_qword_list
-                    }
-                | qword_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qword_list_entry(val)
-                    }
-
-       qsym_list: none
-                    {
-                      result = new_qsym_list
-                    }
-                | qsym_list tSTRING_CONTENT tSPACE
-                    {
-                      result = val[0].dup << new_qsym_list_entry(val)
-                    }
-
- string_contents: none
-                    {
-                      line = prev_value_to_lineno _values.last
-                      result = s(:str, +"").line line
-                    }
-                | string_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-xstring_contents: none
-                    {
-                      result = nil
-                    }
-                | xstring_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-regexp_contents: none
-                    {
-                      result = nil
-                    }
-                | regexp_contents string_content
-                    {
-                      v1, v2 = val
-                      result = literal_concat v1, v2
-                    }
-
-  string_content: tSTRING_CONTENT
-                    {
-                      result = new_string val
-                    }
-                | tSTRING_DVAR
-                    {
-                      result = lexer.lex_strterm
-
-                      lexer.lex_strterm = nil
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    string_dvar
-                    {
-                      _, strterm, str = val
-                      lexer.lex_strterm = strterm
-                      result = s(:evstr, str).line str.line
-                    }
-                | tSTRING_DBEG
-                    {
-                      result = [lexer.lex_strterm,
-                                lexer.brace_nest,
-                                lexer.string_nest, # TODO: remove
-                                lexer.lex_state,
-                                lexer.lineno,
-                               ]
-
-                      lexer.cmdarg.push false
-                      lexer.cond.push false
-
-                      lexer.lex_strterm = nil
-                      lexer.brace_nest  = 0
-                      lexer.string_nest = 0
-
-                      lexer.lex_state   = EXPR_BEG
-                    }
-                    compstmt
-                    tSTRING_DEND
-                    {
-                      _, memo, stmt, _ = val
-
-                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
-                      # TODO: heredoc_indent
-
-                      lexer.lex_strterm = lex_strterm
-                      lexer.brace_nest  = brace_nest
-                      lexer.string_nest = string_nest
-
-                      lexer.cond.pop
-                      lexer.cmdarg.pop
-
-                      lexer.lex_state = oldlex_state
-
-                      case stmt
-                      when Sexp then
-                        case stmt.sexp_type
-                        when :str, :dstr, :evstr then
-                          result = stmt
-                        else
-                          result = s(:evstr, stmt).line line
-                        end
-                      when nil then
-                        result = s(:evstr).line line
-                      else
-                        debug 38
-                        raise "unknown string body: #{stmt.inspect}"
-                      end
-                    }
-
-     string_dvar: tGVAR
-                    {
-                      result = wrap :gvar, val[0]
-                    }
-                | tIVAR
-                    {
-                      result = wrap :ivar, val[0]
-                    }
-                | tCVAR
-                    {
-                      result = wrap :cvar, val[0]
-                    }
-                | backref
-
-          symbol: ssym
-                | dsym
-
-            ssym: tSYMBEG sym
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[1]
-                    }
-                | tSYMBOL
-                    {
-                      lexer.lex_state = EXPR_END
-                      result = wrap :lit, val[0]
-                    }
-
-             sym: fname | tIVAR | tGVAR | tCVAR
-
-            dsym: tSYMBEG string_contents tSTRING_END
-                    {
-                      _, result, _ = val
-
-                      lexer.lex_state = EXPR_END
-
-                      result ||= s(:str, "").line lexer.lineno
-
-                      case result.sexp_type
-                      when :dstr then
-                        result.sexp_type = :dsym
-                      when :str then
-                        result = s(:lit, result.last.to_sym).line result.line
-                      when :evstr then
-                        result = s(:dsym, "", result).line result.line
-                      else
-                        debug 39
-                      end
-                    }
-
-#if V == 20
-         numeric: tINTEGER
-                | tFLOAT
-                | tUMINUS_NUM tINTEGER =tLOWEST
-#else
-         numeric: simple_numeric
-                | tUMINUS_NUM simple_numeric            =tLOWEST
-#endif
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-#if V == 20
-                    }
-                | tUMINUS_NUM tFLOAT   =tLOWEST
-                    {
-                      _, (num, line) = val
-                      result = [-num, line]
-#endif
-                    }
-
-#if V >= 21
-  simple_numeric: tINTEGER
-                | tFLOAT
-                | tRATIONAL
-                | tIMAGINARY
-
-#endif
-   user_variable: tIDENTIFIER
-                | tIVAR
-                | tGVAR
-                | tCONSTANT
-                | tCVAR
-
-keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
-                | kSELF     { result = s(:self).line lexer.lineno }
-                | kTRUE     { result = s(:true).line lexer.lineno }
-                | kFALSE    { result = s(:false).line lexer.lineno }
-                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
-                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
-                | k__ENCODING__
-                    {
-                      l = lexer.lineno
-                      result =
-                        if defined? Encoding then
-                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
-                        else
-                          s(:str, "Unsupported!").line l
-                        end
-                    }
-
-         var_ref: user_variable
-                    {
-                      raise "NO: #{val.inspect}" if Sexp === val.first
-                      (var, line), = val
-                      result = Sexp === var ? var : self.gettable(var)
-                      result.line line
-                    }
-                | keyword_variable
-                    {
-                      var = val[0]
-                      result = Sexp === var ? var : self.gettable(var)
-                    }
-
-         var_lhs: user_variable
-                    {
-                      result = self.assignable val[0]
-                    }
-                | keyword_variable
-                    {
-                      result = self.assignable val[0]
-                      debug 40
-                    }
-
-         backref: tNTH_REF
-                    {
-                      (ref, line), = val
-                      result = s(:nth_ref, ref).line line
-                    }
-                | tBACK_REF
-                    {
-                      (ref, line), = val
-                      result = s(:back_ref, ref).line line
-                    }
-
-      superclass: tLT
-                    {
-                      lexer.lex_state = EXPR_BEG
-                      lexer.command_start = true
-                    }
-                    expr_value term
-                    {
-                      result = val[2]
-                    }
-                | none
-                    {
-                      result = nil
-                    }
-
-       f_arglist: tLPAREN2 f_args rparen
-                    {
-                      result = end_args val
-                    }
-#if V == 27
-                | tLPAREN2 f_arg tCOMMA args_forward rparen
-                    {
-                      result = end_args val
-                    }
-                | tLPAREN2 args_forward rparen
-                    {
-                      result = end_args val
-                    }
-#endif
-                |   {
-                      result = self.in_kwarg
-                      self.in_kwarg = true
-                      self.lexer.lex_state |= EXPR_LABEL
-                    }
-                    f_args term
-                    {
-                      result = end_args val
-                    }
-
-       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-                | f_kwrest opt_f_block_arg
-                    {
-                      result = args val
-                    }
-#if V >= 27
-                | f_no_kwarg opt_f_block_arg
-                    {
-                      result = args val
-                    }
-#endif
-                | f_block_arg
-
-   opt_args_tail: tCOMMA args_tail
-                    {
-                      result = val[1]
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg              opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA            f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_arg                             opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg tCOMMA f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_optarg                opt_args_tail
-                    {
-                      result = args val
-                    }
-                | f_optarg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                        f_rest_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |           f_rest_arg tCOMMA f_arg opt_args_tail
-                    {
-                      result = args val
-                    }
-                |                                       args_tail
-                    {
-                      result = args val
-                    }
-                |
-                    {
-                      result = args val
-                      # result.line lexer.lineno
-                    }
-
-#if V >= 27
-    args_forward: tBDOT3
-                    {
-                      result = s(:forward_args).line lexer.lineno
-                    }
-#endif
-
-       f_bad_arg: tCONSTANT
-                    {
-                      yyerror "formal argument cannot be a constant"
-                    }
-                | tIVAR
-                    {
-                      yyerror "formal argument cannot be an instance variable"
-                    }
-                | tGVAR
-                    {
-                      yyerror "formal argument cannot be a global variable"
-                    }
-                | tCVAR
-                    {
-                      yyerror "formal argument cannot be a class variable"
-                    }
-
-      f_norm_arg: f_bad_arg
-                | tIDENTIFIER
-                    {
-                      (id, line), = val
-                      identifier = id.to_sym
-                      self.env[identifier] = :lvar
-
-                      result = [identifier, line]
-                    }
-
-#if V >= 22
-      f_arg_asgn: f_norm_arg
-
-      f_arg_item: f_arg_asgn
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-#else
-      f_arg_item: f_norm_arg
-                | tLPAREN f_margs rparen
-                    {
-                      _, margs, _ = val
-
-                      result = margs
-                    }
-#endif
-
-           f_arg: f_arg_item
-                    {
-                      result = new_arg val
-                    }
-                | f_arg tCOMMA f_arg_item
-                    {
-                      list, _, item = val
-
-                      if list.sexp_type == :args then
-                        result = list
-                      else
-                        result = s(:args, list).line list.line
-                      end
-
-                      result << (Sexp === item ? item : item.first)
-                    }
-
-#if V == 20
-            f_kw: tLABEL arg_value
-#else
-         f_label: tLABEL
-
-            f_kw: f_label arg_value
-#endif
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), arg = val
-
-                      identifier = label.to_sym
-                      self.env[identifier] = :lvar
-
-                      kwarg  = s(:kwarg, identifier, arg).line line
-                      result = s(:array, kwarg).line line
-                    }
-#if V >= 21
-                | f_label
-                    {
-                      (label, line), = val
-
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-#endif
-
-#if V == 20
-      f_block_kw: tLABEL primary_value
-#else
-      f_block_kw: f_label primary_value
-#endif
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), expr = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
-                    }
-#if V >= 21
-                | f_label
-                    {
-                      # TODO: new_kw_arg
-                      (label, line), = val
-                      id = label.to_sym
-                      self.env[id] = :lvar
-
-                      result = s(:array, s(:kwarg, id).line(line)).line line
-                    }
-#endif
-
-   f_block_kwarg: f_block_kw
-                | f_block_kwarg tCOMMA f_block_kw
-                    {
-                      list, _, item = val
-                      result = list << item.last
-                    }
-
-         f_kwarg: f_kw
-                | f_kwarg tCOMMA f_kw
-                    {
-                      result = args val
-                    }
-
-     kwrest_mark: tPOW
-                | tDSTAR
-
-#if V >= 27
-      f_no_kwarg: kwrest_mark kNIL
-                    {
-                      result = :"**nil"
-                    }
-#endif
-
-        f_kwrest: kwrest_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"**#{name}", line]
-                    }
-                | kwrest_mark
-                    {
-                      id = :"**"
-                      self.env[id] = :lvar # TODO: needed?!?
-                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
-                    }
-
-#if V == 20
-           f_opt: tIDENTIFIER tEQL arg_value
-#elif V == 21
-           f_opt: f_norm_arg tEQL arg_value
-#else
-           f_opt: f_arg_asgn tEQL arg_value
-#endif
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                      # TODO: detect duplicate names
-                    }
-
-#if V == 20
-     f_block_opt: tIDENTIFIER tEQL primary_value
-#elif V == 21
-     f_block_opt: f_norm_arg tEQL primary_value
-#else
-     f_block_opt: f_arg_asgn tEQL primary_value
-#endif
-                    {
-                      lhs, _, rhs = val
-                      result = self.assignable lhs, rhs
-                    }
-
-  f_block_optarg: f_block_opt
-                    {
-                      optblk, = val
-                      result = s(:block, optblk).line optblk.line
-                    }
-                | f_block_optarg tCOMMA f_block_opt
-                    {
-                      optarg, _, optblk = val
-                      result = optarg
-                      result << optblk
-                    }
-
-        f_optarg: f_opt
-                    {
-                      opt, = val
-                      result = s(:block, opt).line opt.line
-                    }
-                | f_optarg tCOMMA f_opt
-                    {
-                      result = self.block_append val[0], val[2]
-                    }
-
-    restarg_mark: tSTAR2 | tSTAR
-
-      f_rest_arg: restarg_mark tIDENTIFIER
-                    {
-                      # TODO: differs from parse.y - needs tests
-                      _, (id, line) = val
-                      name = id.to_sym
-                      self.assignable [name, line]
-                      result = [:"*#{name}", line]
-                    }
-                | restarg_mark
-                    {
-                      name = :"*"
-                      self.env[name] = :lvar
-                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
-                    }
-
-     blkarg_mark: tAMPER2 | tAMPER
-
-     f_block_arg: blkarg_mark tIDENTIFIER
-                    {
-                      _, (id, line) = val
-                      identifier = id.to_sym
-
-                      self.env[identifier] = :lvar
-                      result = ["&#{identifier}".to_sym, line]
-                    }
-
- opt_f_block_arg: tCOMMA f_block_arg
-                    {
-                      _, arg = val
-                      result = arg
-                    }
-                |
-                    {
-                      result = nil
-                    }
-
-       singleton: var_ref
-                | tLPAREN2
-                    {
-                      lexer.lex_state = EXPR_BEG
-                    }
-                    expr rparen
-                    {
-                      result = val[2]
-                      yyerror "Can't define single method for literals." if
-                        result.sexp_type == :lit
-                    }
-
-      assoc_list: none
-                    {
-                      result = s(:array).line lexer.lineno
-                    }
-                | assocs trailer
-
-          assocs: assoc
-                | assocs tCOMMA assoc
-                    {
-                      list = val[0].dup
-                      more = val[2].sexp_body
-                      list.push(*more) unless more.empty?
-                      result = list
-                      result.sexp_type = :hash
-                    }
-
-           assoc: arg_value tASSOC arg_value
-                    {
-                      v1, _, v2 = val
-                      result = s(:array, v1, v2).line v1.line
-                    }
-                | tLABEL arg_value
-                    {
-                      label, arg = val
-
-                      lit = wrap :lit, label
-                      result = s(:array, lit, arg).line lit.line
-                    }
-#if V >= 22
-                | tSTRING_BEG string_contents tLABEL_END arg_value
-                    {
-                      (_, line), sym, _, value = val
-
-                      sym.sexp_type = :dsym
-
-                      result = s(:array, sym, value).line line
-                    }
-#endif
-                | tDSTAR arg_value
-                    {
-                      _, arg = val
-                      line = arg.line
-                      result = s(:array, s(:kwsplat, arg).line(line)).line line
-                    }
-
-       operation: tIDENTIFIER | tCONSTANT | tFID
-      operation2: tIDENTIFIER | tCONSTANT | tFID | op
-      operation3: tIDENTIFIER | tFID | op
-    dot_or_colon: tDOT | tCOLON2
-         call_op: tDOT
-#if V >= 23
-                | tLONELY # TODO: rename tANDDOT?
-#endif
-
-        call_op2: call_op
-                | tCOLON2
-
-       opt_terms:  | terms
-          opt_nl:  | tNL
-          rparen: opt_nl tRPAREN
-        rbracket: opt_nl tRBRACK
-#if V >= 27
-          rbrace: opt_nl tRCURLY
-#endif
-         trailer:  | tNL | tCOMMA
-
-            term: tSEMI { yyerrok }
-                | tNL
-
-           terms: term
-                | terms tSEMI { yyerrok }
-
-            none: { result = nil; }
-end
-
----- inner
-
-require "ruby_lexer"
-require "ruby_parser_extras"
-include RubyLexer::State::Values
-
-# :stopdoc:
-
-# Local Variables: **
-# racc-token-length-max:14 **
-# End: **
diff -pruN 3.20.0-2/lib/ruby_parser2.yy 3.21.1-1/lib/ruby_parser2.yy
--- 3.20.0-2/lib/ruby_parser2.yy	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser2.yy	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,3494 @@
+# -*- racc -*-
+
+#if V==20
+class Ruby20Parser
+#elif V==21
+class Ruby21Parser
+#elif V == 22
+class Ruby22Parser
+#elif V == 23
+class Ruby23Parser
+#elif V == 24
+class Ruby24Parser
+#elif V == 25
+class Ruby25Parser
+#elif V == 26
+class Ruby26Parser
+#elif V == 27
+class Ruby27Parser
+#else
+fail "version not specified or supported on code generation"
+#endif
+
+token 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
+      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
+      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
+#if V >= 21
+      tRATIONAL tIMAGINARY
+#endif
+#if V >= 22
+      tLABEL_END
+#endif
+#if V >= 23
+       tLONELY
+#endif
+#if V >= 26
+       tBDOT2 tBDOT3
+#endif
+
+preclow
+  nonassoc tLOWEST
+  nonassoc tLBRACE_ARG
+  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
+  left     kOR kAND
+  right    kNOT
+  nonassoc kDEFINED
+  right    tEQL tOP_ASGN
+  left     kRESCUE_MOD
+  right    tEH tCOLON
+  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
+  left     tOROP
+  left     tANDOP
+  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
+  left     tGT tGEQ tLT tLEQ
+  left     tPIPE tCARET
+  left     tAMPER2
+  left     tLSHFT tRSHFT
+  left     tPLUS tMINUS
+  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
+  right    tUMINUS_NUM tUMINUS
+  right    tPOW
+  right    tBANG tTILDE tUPLUS
+prechigh
+
+rule
+
+         program:   {
+                      self.lexer.lex_state = EXPR_BEG
+                    }
+                    top_compstmt
+                    {
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+                    }
+
+    top_compstmt: top_stmts opt_terms
+                    {
+                      stmt, _ = val
+                      result = stmt
+                    }
+
+       top_stmts: none
+                | top_stmt
+                | top_stmts terms top_stmt
+                    {
+                      result = self.block_append val[0], val[2]
+                    }
+                | error top_stmt
+
+        top_stmt: stmt
+                | klBEGIN
+                    {
+                      if (self.in_def || self.in_single > 0) then
+                        debug 11
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+                    }
+                    begin_block
+                    {
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+                    }
+
+     begin_block: tLCURLY { result = lexer.lineno } top_compstmt tRCURLY
+                    {
+                      _, line, stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+                    }
+
+        bodystmt: compstmt opt_rescue k_else
+                    {
+                      res = _values[-2]
+                      # TODO: move down to main match so I can just use val
+
+#if V >= 26
+                      yyerror "else without rescue is useless" unless res
+#else
+                      warn "else without rescue is useless" unless res
+#endif
+                    }
+                    compstmt
+                    opt_ensure
+                    {
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+                    }
+                | compstmt opt_rescue opt_ensure
+                    {
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+                    }
+
+        compstmt: stmts opt_terms
+                    {
+                      result = new_compstmt val
+                    }
+
+           stmts: none
+                | stmt_or_begin # TODO: newline_node ?
+                | stmts terms stmt_or_begin
+                    {
+                      result = self.block_append val[0], val[2]
+                    }
+                | error stmt
+                    {
+                      result = val[1]
+                      debug 12
+                    }
+
+   stmt_or_begin: stmt
+                | klBEGIN
+                    {
+                      yyerror "BEGIN is permitted only at toplevel"
+                    }
+                  begin_block
+                    {
+                      result = val[2] # wtf?
+                    }
+
+            stmt: kALIAS fitem
+                    {
+                      lexer.lex_state = EXPR_FNAME
+                    }
+                    fitem
+                    {
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+                    }
+                | kALIAS tGVAR tGVAR
+                    {
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+                    }
+                | kALIAS tGVAR tBACK_REF
+                    {
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+                    }
+                | kALIAS tGVAR tNTH_REF
+                    {
+                      yyerror "can't make alias for the number variables"
+                    }
+                | kUNDEF undef_list
+                    {
+                      result = val[1]
+                    }
+                | stmt kIF_MOD expr_value
+                    {
+                      t, _, c = val
+                      result = new_if c, t, nil
+                    }
+                | stmt kUNLESS_MOD expr_value
+                    {
+                      f, _, c = val
+                      result = new_if c, nil, f
+                    }
+                | stmt kWHILE_MOD expr_value
+                    {
+                      e, _, c = val
+                      result = new_while e, c, true
+                    }
+                | stmt kUNTIL_MOD expr_value
+                    {
+                      e, _, c = val
+                      result = new_until e, c, true
+                    }
+                | stmt kRESCUE_MOD stmt
+                    {
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+                    }
+                | klEND tLCURLY compstmt tRCURLY
+                    {
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 13
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+                    }
+                | command_asgn
+                | mlhs tEQL command_call
+                    {
+                      result = new_masgn val[0], val[2], :wrap
+                    }
+                | lhs tEQL mrhs
+                    {
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+                    }
+#if V == 20
+                | mlhs tEQL arg_value
+                    {
+                      result = new_masgn val[0], val[2], :wrap
+                    }
+#endif
+#if V >= 27
+                | mlhs tEQL mrhs_arg kRESCUE_MOD stmt
+                    {
+                      # unwraps s(:to_ary, rhs)
+                      lhs, _, (_, rhs), _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+
+                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
+                    }
+#endif
+#if V == 20
+                | mlhs tEQL mrhs
+#else
+                | mlhs tEQL mrhs_arg
+#endif
+                    {
+                      result = new_masgn val[0], val[2]
+                    }
+                | expr
+
+    command_asgn: lhs tEQL command_rhs
+                    {
+                      result = new_assign val[0], val[2]
+                    }
+                # | lhs tEQL command_asgn
+                #     {
+                #       result = new_assign val[0], val[2]
+                #     }
+                | var_lhs tOP_ASGN command_rhs
+                    {
+                      result = new_op_asgn val
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
+                    {
+                      result = new_op_asgn1 val
+                    }
+                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
+                    {
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+                    }
+                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
+                    {
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+                    }
+                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
+                    {
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+                    }
+                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
+                    {
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+                    }
+                | backref tOP_ASGN command_rhs
+                    {
+                      self.backref_assign_error val[0]
+                    }
+
+     command_rhs: command_call                =tOP_ASGN
+                    {
+                      expr, = val
+                      result = value_expr expr
+                    }
+#if V >= 24
+                | command_call kRESCUE_MOD stmt
+                    {
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+                    }
+#endif
+                | command_asgn
+
+            expr: command_call
+                | expr kAND expr
+                    {
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+                    }
+                | expr kOR expr
+                    {
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+                    }
+                | kNOT opt_nl expr
+                    {
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+                    }
+                | tBANG command_call
+                    {
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+                    }
+#if V >= 27
+                | arg
+                    kIN
+                    {
+                      # TODO? value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+                    }
+                    p_expr
+                    {
+                      self.env.unextend
+
+                      expr, _, old_kwarg, pat = val
+
+                      expr = value_expr expr
+
+                      self.in_kwarg = old_kwarg
+                      pat_in = new_in pat, nil, nil, expr.line
+                      result = new_case expr, pat_in, expr.line
+                    }
+#endif
+                | arg                                   =tLBRACE_ARG
+
+      expr_value: expr
+                    {
+                      result = value_expr(val[0])
+                    }
+
+   expr_value_do:   {
+                      lexer.cond.push true
+                    }
+                    expr_value do
+                    {
+                      lexer.cond.pop
+                    }
+                    {
+                      _, expr, _, _ = val
+                      result = expr
+                    }
+
+    command_call: command
+                | block_command
+
+   block_command: block_call
+                | block_call call_op2 operation2 command_args
+                    {
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+                    }
+
+ cmd_brace_block: tLBRACE_ARG
+                    {
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+                    }
+                    brace_body tRCURLY
+                    {
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+                    }
+
+           fcall: operation
+                    {
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+                    }
+
+         command: fcall command_args =tLOWEST
+                    {
+                      call, args = val
+                      result = call.concat args.sexp_body
+                    }
+                | fcall command_args cmd_brace_block
+                    {
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+                    }
+                | primary_value call_op operation2 command_args =tLOWEST
+                    {
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+                    }
+                | primary_value call_op operation2 command_args cmd_brace_block
+                    {
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+                    }
+                | primary_value tCOLON2 operation2 command_args =tLOWEST
+                    {
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+                    }
+                | primary_value tCOLON2 operation2 command_args cmd_brace_block
+                    {
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+                    }
+                | kSUPER command_args
+                    {
+                      result = new_super val[1]
+                    }
+                | kYIELD command_args
+                    {
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+                    }
+                | k_return call_args
+                    {
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+                    }
+                | kBREAK call_args
+                    {
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+                    }
+                | kNEXT call_args
+                    {
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+                    }
+
+            mlhs: mlhs_basic
+                | tLPAREN mlhs_inner rparen
+                    {
+                      result = val[1]
+                    }
+
+      mlhs_inner: mlhs_basic
+                | tLPAREN mlhs_inner rparen
+                    {
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+                    }
+
+      mlhs_basic: mlhs_head
+                    {
+                      head, = val
+                      result = s(:masgn, head).line head.line
+                    }
+                | mlhs_head mlhs_item
+                    {
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+                    }
+                | mlhs_head tSTAR mlhs_node
+                    {
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+                    }
+                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
+                    {
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+                    }
+                | mlhs_head tSTAR
+                    {
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+                    }
+                | mlhs_head tSTAR tCOMMA mlhs_post
+                    {
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+                    }
+                | tSTAR mlhs_node
+                    {
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+                    }
+                | tSTAR mlhs_node tCOMMA mlhs_post
+                    {
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+                    }
+                | tSTAR
+                    {
+                      l = lexer.lineno
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+                    }
+                | tSTAR tCOMMA mlhs_post
+                    {
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+                    }
+
+       mlhs_item: mlhs_node
+                | tLPAREN mlhs_inner rparen
+                    {
+                      result = val[1]
+                    }
+
+       mlhs_head: mlhs_item tCOMMA
+                    {
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+                    }
+                | mlhs_head mlhs_item tCOMMA
+                    {
+                      result = val[0] << val[1].compact
+                    }
+
+       mlhs_post: mlhs_item
+                    {
+                      item, = val
+                      result = s(:array, item).line item.line
+                    }
+                | mlhs_post tCOMMA mlhs_item
+                    {
+                      result = list_append val[0], val[2]
+                    }
+
+       mlhs_node: user_variable
+                    {
+                      result = self.assignable val[0]
+                    }
+                | keyword_variable
+                    {
+                      result = self.assignable val[0]
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket
+                    {
+                      result = self.aryset val[0], val[2]
+                    }
+                | primary_value call_op tIDENTIFIER
+                    {
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+                    }
+                | primary_value tCOLON2 tIDENTIFIER
+                    {
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+                    }
+                | primary_value call_op tCONSTANT
+                    {
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+                    }
+                | primary_value tCOLON2 tCONSTANT
+                    {
+                      if (self.in_def || self.in_single > 0) then
+                        debug 14
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+                    }
+                | tCOLON3 tCONSTANT
+                    {
+                      if (self.in_def || self.in_single > 0) then
+                        debug 15
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+                    }
+                | backref
+                    {
+                      ref, = val
+
+                      self.backref_assign_error ref
+                    }
+
+             lhs: user_variable
+                    {
+                      var, = val
+
+                      result = self.assignable var
+                    }
+                | keyword_variable
+                    {
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 16
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket
+                    {
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+                    }
+                | primary_value call_op tIDENTIFIER # REFACTOR
+                    {
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+                    }
+                | primary_value tCOLON2 tIDENTIFIER
+                    {
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+                    }
+                | primary_value call_op tCONSTANT # REFACTOR?
+                    {
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+                    }
+                | primary_value tCOLON2 tCONSTANT
+                    {
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 17
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+                    }
+                | tCOLON3 tCONSTANT
+                    {
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 18
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+                    }
+                | backref
+                    {
+                      self.backref_assign_error val[0]
+                    }
+
+           cname: tIDENTIFIER
+                    {
+                      yyerror "class/module name must be CONSTANT"
+                    }
+                | tCONSTANT
+
+           cpath: tCOLON3 cname
+                    {
+                      result = wrap :colon3, val[1]
+                    }
+                | cname
+                    {
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+                    }
+                | primary_value tCOLON2 cname
+                    {
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+                    }
+
+           fname: tIDENTIFIER | tCONSTANT | tFID
+                | op
+                    {
+                      lexer.lex_state = EXPR_END
+                    }
+
+                | reswords
+
+           fitem: fname
+                    {
+                      result = wrap :lit, val[0]
+                    }
+                | symbol
+
+      undef_list: fitem
+                    {
+                      result = new_undef val[0]
+                    }
+                |
+                    undef_list tCOMMA
+                    {
+                      lexer.lex_state = EXPR_FNAME
+                    }
+                    fitem
+                    {
+                      result = new_undef val[0], val[3]
+                    }
+
+                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
+                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
+                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
+                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
+                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
+
+        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
+                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
+                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
+                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
+                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
+                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
+                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
+                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
+                | kUNTIL
+
+             arg: lhs tEQL arg_rhs
+                    {
+                      result = new_assign val[0], val[2]
+                    }
+                | var_lhs tOP_ASGN arg_rhs
+                    {
+                      result = new_op_asgn val
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
+                    {
+                      result = new_op_asgn1 val
+                    }
+                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
+                    {
+                      result = new_op_asgn2 val
+                    }
+                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
+                    {
+                      result = new_op_asgn2 val
+                    }
+                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
+                    {
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+                    }
+                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
+                    {
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+                    }
+                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
+                    {
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+                    }
+                | backref tOP_ASGN arg_rhs
+                    {
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+                    }
+                | arg tDOT2 arg
+                    {
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+                    }
+                | arg tDOT3 arg
+                    {
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+                    }
+#if V >= 26
+                | arg tDOT2
+                    {
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot2, v1, v2).line v1.line
+                    }
+                | arg tDOT3
+                    {
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot3, v1, v2).line v1.line
+                    }
+#endif
+
+#if V >= 27
+                | tBDOT2 arg
+                    {
+                      _, v2, = val
+                      v1 = nil
+
+                      result = s(:dot2, v1, v2).line v2.line
+                    }
+                | tBDOT3 arg
+                    {
+                      _, v2 = val
+                      v1 = nil
+
+                      result = s(:dot3, v1, v2).line v2.line
+                    }
+#endif
+
+                | arg tPLUS arg
+                    {
+                      result = new_call val[0], :+, argl(val[2])
+                    }
+                | arg tMINUS arg
+                    {
+                      result = new_call val[0], :-, argl(val[2])
+                    }
+                | arg tSTAR2 arg # TODO: rename
+                    {
+                      result = new_call val[0], :*, argl(val[2])
+                    }
+                | arg tDIVIDE arg
+                    {
+                      result = new_call val[0], :"/", argl(val[2])
+                    }
+                | arg tPERCENT arg
+                    {
+                      result = new_call val[0], :"%", argl(val[2])
+                    }
+                | arg tPOW arg
+                    {
+                      result = new_call val[0], :**, argl(val[2])
+                    }
+#if V == 20
+                | tUMINUS_NUM tINTEGER tPOW arg
+                    {
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+                    }
+                | tUMINUS_NUM tFLOAT tPOW arg
+#else
+                | tUMINUS_NUM simple_numeric tPOW arg
+#endif
+                    {
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+#if V == 20
+                      ## TODO: why is this 2.0 only?
+                      debug 19
+#endif
+                    }
+                | tUPLUS arg
+                    {
+                      result = new_call val[1], :"+@"
+                    }
+                | tUMINUS arg
+                    {
+                      result = new_call val[1], :"-@"
+                    }
+                | arg tPIPE arg
+                    {
+                      result = new_call val[0], :"|", argl(val[2])
+                    }
+                | arg tCARET arg
+                    {
+                      result = new_call val[0], :"^", argl(val[2])
+                    }
+                | arg tAMPER2 arg
+                    {
+                      result = new_call val[0], :"&", argl(val[2])
+                    }
+                | arg tCMP arg
+                    {
+                      result = new_call val[0], :"<=>", argl(val[2])
+                    }
+                | rel_expr                      =tCMP
+                | arg tEQ arg
+                    {
+                      result = new_call val[0], :"==", argl(val[2])
+                    }
+                | arg tEQQ arg
+                    {
+                      result = new_call val[0], :"===", argl(val[2])
+                    }
+                | arg tNEQ arg
+                    {
+                      result = new_call val[0], :"!=", argl(val[2])
+                    }
+                | arg tMATCH arg
+                    {
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+                    }
+                | arg tNMATCH arg
+                    {
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+                    }
+                | tBANG arg
+                    {
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+                    }
+                | tTILDE arg
+                    {
+                      result = new_call value_expr(val[1]), :"~"
+                    }
+                | arg tLSHFT arg
+                    {
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+                    }
+                | arg tRSHFT arg
+                    {
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+                    }
+                | arg tANDOP arg
+                    {
+                      result = logical_op :and, val[0], val[2]
+                    }
+                | arg tOROP arg
+                    {
+                      result = logical_op :or, val[0], val[2]
+                    }
+                | kDEFINED opt_nl arg
+                    {
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+                    }
+                | arg tEH arg opt_nl tCOLON arg
+                    {
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+                    }
+                | primary
+
+           relop: tGT
+                | tLT
+                | tGEQ
+                | tLEQ
+
+        rel_expr: arg      relop arg                    =tGT
+                    {
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+                    }
+                | rel_expr relop arg                    =tGT
+                    {
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+                    }
+
+       arg_value: arg
+                    {
+                      result = value_expr(val[0])
+                    }
+
+       aref_args: none
+                | args trailer
+                    {
+                      result = args [val[0]]
+                    }
+                | args tCOMMA assocs trailer
+                    {
+                      result = args [val[0], array_to_hash(val[2])]
+                    }
+                | assocs trailer
+                    {
+                      result = args [array_to_hash(val[0])]
+                    }
+
+         arg_rhs: arg                   =tOP_ASGN
+                | arg kRESCUE_MOD arg
+                    {
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+                    }
+
+      paren_args: tLPAREN2 opt_call_args rparen
+                    {
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+                    }
+#if V >= 27
+                | tLPAREN2 args tCOMMA args_forward rparen
+                    {
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+                    }
+                | tLPAREN2 args_forward rparen
+                    {
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+                    }
+#endif
+
+  opt_paren_args: none
+                | paren_args
+
+   opt_call_args: none
+                | call_args
+                | args tCOMMA
+                    {
+                      result = args val
+                    }
+                | args tCOMMA assocs tCOMMA
+                    {
+                      result = args [val[0], array_to_hash(val[2])]
+                    }
+                | assocs tCOMMA
+                    {
+                      result = args [array_to_hash(val[0])]
+                    }
+
+       call_args: command
+                    {
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+                    }
+                | args opt_block_arg
+                    {
+                      result = call_args val
+                    }
+                | assocs opt_block_arg
+                    {
+                      result = call_args [array_to_hash(val[0]), val[1]]
+                    }
+                | args tCOMMA assocs opt_block_arg
+                    {
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+                    }
+                | block_arg
+                    {
+                      result = call_args val
+                    }
+
+    command_args:   {
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+                    }
+                      call_args
+                    {
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+                    }
+
+       block_arg: tAMPER arg_value
+                    {
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+                    }
+
+   opt_block_arg: tCOMMA block_arg
+                    {
+                      result = val[1]
+                    }
+                | none
+
+            args: arg_value
+                    {
+                      arg, = val
+                      lineno = arg.line || lexer.lineno # HACK
+
+                      result = s(:array, arg).line lineno
+                    }
+                | tSTAR arg_value
+                    {
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+                    }
+                | args tCOMMA arg_value
+                    {
+                      args, _, id = val
+                      result = self.list_append args, id
+                    }
+                | args tCOMMA tSTAR arg_value
+                    {
+                      # TODO: the line number from tSTAR has been dropped
+                      args, _, _, id = val
+                      line = lexer.lineno
+                      result = self.list_append args, s(:splat, id).line(line)
+                    }
+
+#if V >= 21
+        mrhs_arg: mrhs
+                    {
+                      result = new_masgn_arg val[0]
+                    }
+                | arg_value
+                    {
+                      result = new_masgn_arg val[0], :wrap
+                    }
+
+#endif
+            mrhs: args tCOMMA arg_value
+                    {
+                      result = val[0] << val[2]
+                    }
+                | args tCOMMA tSTAR arg_value
+                    {
+                      # TODO: make all tXXXX terminals include lexer.lineno
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+                    }
+                | tSTAR arg_value
+                    {
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+                    }
+
+         primary: literal
+                | strings
+                | xstring
+                | regexp
+                | words
+                | qwords
+                | symbols
+                | qsymbols
+                | var_ref
+                | backref
+                | tFID
+                    {
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+                    }
+                | k_begin
+                    {
+                      lexer.cmdarg.push false
+                    }
+                    bodystmt k_end
+                    {
+                      lexer.cmdarg.pop
+                      result = new_begin val
+                    }
+                | tLPAREN_ARG
+                    {
+                      lexer.lex_state = EXPR_ENDARG
+                      result = lexer.lineno
+                    }
+                    rparen
+                    {
+                      _, line, _ = val
+                      result = s(:begin).line line
+                    }
+                | tLPAREN_ARG
+                    stmt
+                    {
+                      lexer.lex_state = EXPR_ENDARG
+                    }
+                    rparen
+                    {
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+                    }
+                | tLPAREN compstmt tRPAREN
+                    {
+                      _, stmt, _ = val
+                      result = stmt
+                      result ||= s(:nil).line lexer.lineno
+                      result.paren = true
+                    }
+                | primary_value tCOLON2 tCONSTANT
+                    {
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+                    }
+                | tCOLON3 tCONSTANT
+                    {
+                      result = wrap :colon3, val[1]
+                    }
+                | tLBRACK { result = lexer.lineno } aref_args rbracket
+                    {
+                      _, line, args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+                    }
+                | tLBRACE
+                    {
+                      result = self.lexer.lineno
+                    }
+                    assoc_list tRCURLY
+                    {
+                      result = new_hash val
+                    }
+                | k_return
+                    {
+                      (_, line), = val
+                      result = s(:return).line line
+                    }
+                | kYIELD tLPAREN2 call_args rparen
+                    {
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+                    }
+                | kYIELD tLPAREN2 rparen
+                    {
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+                    }
+                | kYIELD
+                    {
+                      (_, line), = val
+
+                      result = new_yield.line line
+                    }
+                | kDEFINED opt_nl tLPAREN2 expr rparen
+                    {
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+                    }
+                | kNOT tLPAREN2 expr rparen
+                    {
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+                    }
+                | kNOT tLPAREN2 rparen
+                    {
+                      debug 20
+                    }
+                | fcall brace_block
+                    {
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+                    }
+                | method_call
+                | method_call brace_block
+                    {
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+                    }
+                | lambda
+                    {
+                      expr, = val
+                      result = expr
+                    }
+                | k_if expr_value then compstmt if_tail k_end
+                    {
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+                    }
+                | k_unless expr_value then compstmt opt_else k_end
+                    {
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+                    }
+                | k_while expr_value_do compstmt k_end
+                    {
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+                    }
+                | k_until expr_value_do compstmt k_end
+                    {
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+                    }
+                | k_case expr_value opt_terms case_body k_end
+                    {
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+                    }
+                | k_case            opt_terms case_body k_end
+                    {
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+                    }
+#if V >= 27
+                | k_case expr_value opt_terms p_case_body k_end
+                    {
+                      (_, line), expr, _, body, _ = val
+
+                      result = new_case expr, body, line
+                    }
+#endif
+                | k_for for_var kIN expr_value_do compstmt k_end
+                    {
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+                    }
+                | k_class
+                    cpath superclass
+                    {
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+                    }
+                    bodystmt k_end
+                    {
+                      result = new_class val
+                      self.env.unextend
+                    }
+                | k_class tLSHFT
+                    expr
+                    {
+                      result = self.in_def
+                      self.in_def = false
+                    }
+                    term
+                    {
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+                    }
+                    bodystmt k_end
+                    {
+                      result = new_sclass val
+                      self.env.unextend
+                    }
+                | k_module
+                    cpath
+                    {
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+                    }
+                    bodystmt k_end
+                    {
+                      result = new_module val
+                      self.env.unextend
+                    }
+                | k_def fname
+                    {
+                      result = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+                    }
+                    f_arglist bodystmt k_end
+                    {
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+                    }
+                | k_def singleton dot_or_colon
+                    {
+                      lexer.lex_state = EXPR_FNAME
+                    }
+                    fname
+                    {
+                      result = self.in_def
+
+                      self.in_single += 1 # TODO: remove?
+
+                      self.in_def = true # local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+                    }
+                    f_arglist bodystmt k_end
+                    {
+
+                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
+                      # =>
+                      # [kdef, recv, (name, line), in_def, args, body, kend]
+
+                      val.delete_at 3
+                      val.delete_at 2
+
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+                    }
+                | kBREAK
+                    {
+                      (_, line), = val
+                      result = s(:break).line line
+                    }
+                | kNEXT
+                    {
+                      (_, line), = val
+                      result = s(:next).line line
+                    }
+                | kREDO
+                    {
+                      (_, line), = val
+                      result = s(:redo).line line
+                    }
+                | kRETRY
+                    {
+                      (_, line), = val
+                      result = s(:retry).line line
+                    }
+
+   primary_value: primary
+                    {
+                      result = value_expr(val[0])
+                    }
+
+                    # These are really stupid
+         k_begin: kBEGIN
+            k_if: kIF
+        k_unless: kUNLESS
+         k_while: kWHILE
+         k_until: kUNTIL
+          k_case: kCASE
+           k_for: kFOR
+         k_class: kCLASS
+                    {
+                      result << self.lexer.comment
+                    }
+        k_module: kMODULE
+                    {
+                      result << self.lexer.comment
+                    }
+           k_def: kDEF
+                    {
+                      result << self.lexer.comment
+                    }
+            k_do: kDO
+      k_do_block: kDO_BLOCK
+        k_rescue: kRESCUE
+        k_ensure: kENSURE
+          k_when: kWHEN
+          k_else: kELSE
+         k_elsif: kELSIF
+           k_end: kEND
+        k_return: kRETURN
+
+            then: term
+                | kTHEN
+                | term kTHEN
+
+              do: term
+                | kDO_COND
+
+         if_tail: opt_else
+                | k_elsif expr_value then compstmt if_tail
+                    {
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+                    }
+
+        opt_else: none
+                | kELSE compstmt
+                    {
+                      result = val[1]
+                    }
+
+         for_var: lhs
+                | mlhs
+                    {
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+                    }
+
+          f_marg: f_norm_arg
+                | tLPAREN f_margs rparen
+                    {
+                      result = val[1]
+                    }
+
+     f_marg_list: f_marg
+                    {
+                      sym, = val
+
+                      result = s(:array, sym).line lexer.lineno
+                    }
+                | f_marg_list tCOMMA f_marg
+                    {
+                      result = list_append val[0], val[2]
+                    }
+
+         f_margs: f_marg_list
+                    {
+                      args, = val
+
+                      result = block_var args
+                    }
+                | f_marg_list tCOMMA f_rest_marg
+                    {
+                      args, _, rest = val
+
+                      result = block_var args, rest
+                    }
+                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
+                    {
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+                    }
+                | f_rest_marg
+                    {
+                      rest, = val
+
+                      result = block_var rest
+                    }
+                | f_rest_marg tCOMMA f_marg_list
+                    {
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+                    }
+
+     f_rest_marg: tSTAR f_norm_arg
+                    {
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+                    }
+                | tSTAR
+                    {
+                      result = args [:*]
+                      result.line lexer.lineno # FIX: tSTAR -> line
+                    }
+
+ block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
+                    {
+                      result = call_args val
+                    }
+                | f_block_kwarg opt_f_block_arg
+                    {
+                      result = call_args val
+                    }
+                | f_kwrest opt_f_block_arg
+                    {
+                      result = call_args val
+                    }
+#if V >= 27
+                | f_no_kwarg opt_f_block_arg
+                    {
+                      result = args val
+                    }
+#endif
+                | f_block_arg
+                    {
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+                    }
+
+opt_block_args_tail: tCOMMA block_args_tail
+                    {
+                      result = args val
+                    }
+                | none
+
+     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_block_optarg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_rest_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA
+                    {
+                      result = args(val) << nil
+                    }
+                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_block_optarg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_block_optarg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_rest_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_rest_arg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | block_args_tail
+                    {
+                      result = args val
+                    }
+
+ opt_block_param: none { result = 0 }
+                | block_param_def
+                    {
+                      self.lexer.command_start = true
+                    }
+
+ block_param_def: tPIPE opt_bv_decl tPIPE
+                    {
+                      # TODO: current_arg = 0
+                      result = args val
+                    }
+                | tOROP
+                    {
+                      result = s(:args).line lexer.lineno
+                    }
+                | tPIPE block_param opt_bv_decl tPIPE
+                    {
+                      # TODO: current_arg = 0
+                      result = args val
+                    }
+
+     opt_bv_decl: opt_nl
+                | opt_nl tSEMI bv_decls opt_nl
+                    {
+                      result = args val
+                    }
+
+        bv_decls: bvar
+                    {
+                      result = args val
+                    }
+                | bv_decls tCOMMA bvar
+                    {
+                      result = args val
+                    }
+
+            bvar: tIDENTIFIER
+                    {
+                      result = wrap :shadow, val[0]
+                    }
+                | f_bad_arg
+
+          lambda: tLAMBDA
+                    {
+                      self.env.extend :dynamic
+                      result = [lexer.lineno, lexer.lpar_beg]
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+                    }
+                    f_larglist
+                    {
+                      lexer.cmdarg.push false
+                    }
+                    lambda_body
+                    {
+                      _, (line, lpar), args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+                    }
+
+     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
+                    {
+                      result = args val
+                    }
+                | f_args
+                    {
+                      result = val[0]
+                      result = 0 if result == s(:args)
+                    }
+
+     lambda_body: tLAMBEG compstmt tRCURLY
+                    {
+                      result = val[1]
+                    }
+                | kDO_LAMBDA bodystmt kEND
+                    {
+                      result = val[1]
+                    }
+
+        do_block: k_do_block do_body kEND
+                    {
+                      (_, line), iter, _ = val
+                      result = iter.line line
+                    }
+
+      block_call: command do_block
+                    {
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+                    }
+                | block_call call_op2 operation2 opt_paren_args
+                    {
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                    }
+                | block_call call_op2 operation2 opt_paren_args brace_block
+                    {
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+                    }
+                | block_call call_op2 operation2 command_args do_block
+                    {
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+                    }
+
+     method_call: fcall paren_args
+                    {
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+                    }
+                | primary_value call_op operation2 opt_paren_args
+                    {
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+                    }
+                | primary_value tCOLON2 operation2 paren_args
+                    {
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+                    }
+                | primary_value tCOLON2 operation3
+                    {
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+                    }
+                | primary_value call_op paren_args
+                    {
+                      result = new_call val[0], :call, val[2], val[1]
+                    }
+                | primary_value tCOLON2 paren_args
+                    {
+                      result = new_call val[0], :call, val[2]
+                    }
+                | kSUPER paren_args
+                    {
+                      result = new_super val[1]
+                    }
+                | kSUPER
+                    {
+                      result = s(:zsuper).line lexer.lineno
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket
+                    {
+                      result = new_aref val
+                    }
+
+     brace_block: tLCURLY
+                    {
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+                    }
+                    brace_body tRCURLY
+                    {
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+                    }
+                | k_do
+                    {
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+                    }
+                    do_body kEND
+                    {
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+                    }
+
+      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
+                    { result = lexer.cmdarg.store(false) }
+                    opt_block_param compstmt
+                    {
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+                    }
+
+         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
+                    { lexer.cmdarg.push false }
+                    opt_block_param
+#if V >= 25
+                    bodystmt
+#else
+                    compstmt
+#endif
+                    {
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                    }
+
+       case_args: arg_value
+                    {
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+                    }
+                | tSTAR arg_value
+                    {
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+                    }
+                | case_args tCOMMA arg_value
+                    {
+                      args, _, id = val
+
+                      result = self.list_append args, id
+                    }
+                | case_args tCOMMA tSTAR arg_value
+                    {
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+                    }
+
+       case_body: k_when
+                    {
+                      result = self.lexer.lineno
+                    }
+                    case_args then compstmt cases
+                    {
+                      result = new_when(val[2], val[4])
+                      result.line val[1]
+                      result << val[5] if val[5]
+                    }
+
+           cases: opt_else | case_body
+#if V >= 27
+######################################################################
+
+     p_case_body: kIN
+                    {
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      push_pvtbl
+                      push_pktbl
+                    }
+                    p_top_expr then
+                    {
+                      pop_pktbl
+                      pop_pvtbl
+                      old_kwargs = _values[-3]
+                      self.in_kwarg = old_kwargs
+                    }
+                    compstmt
+                    p_cases
+                    {
+                      (_, line), _, pat, _, _, body, cases = val
+
+                      result = new_in pat, body, cases, line
+                    }
+
+         p_cases: opt_else
+                | p_case_body
+
+      p_top_expr: p_top_expr_body
+                | p_top_expr_body kIF_MOD expr_value
+                    {
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, body, nil).line body.line
+                    }
+                | p_top_expr_body kUNLESS_MOD expr_value
+                    {
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, nil, body).line body.line
+                    }
+
+ p_top_expr_body: p_expr
+                | p_expr tCOMMA
+                    {
+                      expr, _ = val
+
+                      tail = new_array_pattern_tail nil, true, nil, nil
+                      result = new_array_pattern nil, expr, tail, expr.line
+                    }
+                | p_expr tCOMMA p_args
+                    {
+                      expr, _, args = val
+
+                      result = new_array_pattern nil, expr, args, expr.line
+                    }
+                | p_args_tail
+                    {
+                      args, = val
+                      result = new_array_pattern nil, nil, args, args.line
+                    }
+                | p_kwargs
+                    {
+                      kwargs, = val
+                      result = new_hash_pattern nil, kwargs, kwargs.line
+                    }
+
+          p_expr: p_as
+
+            p_as: p_expr tASSOC p_variable
+                    {
+                      # NODE *n = NEW_LIST($1, &@$);
+                      # n = list_append(p, n, $3);
+                      # $$ = new_hash(p, n, &@$);
+
+                      expr, _, var = val
+
+                      id = var.last
+
+                      self.env[id] = :lvar # HACK: need to extend env
+                      lhs = s(:lasgn, id).line var.line
+
+                      result = new_assign lhs, expr
+                    }
+                | p_alt
+
+           p_alt: p_alt tPIPE p_expr_basic
+                    {
+                      lhs, _, rhs = val
+
+                      result = s(:or, lhs, rhs).line lhs.line
+                    }
+                | p_expr_basic
+
+        p_lparen: tLPAREN2 { push_pktbl }
+      p_lbracket: tLBRACK2 { push_pktbl }
+
+    p_expr_basic: p_value
+                | p_const p_lparen p_args tRPAREN
+                    {
+                      lhs, _, args, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern(lhs, nil, args, lhs.line)
+                    }
+                | p_const p_lparen p_kwargs tRPAREN
+                    {
+                      lhs, _, kwargs, _ = val
+
+                      pop_pktbl
+                      result = new_hash_pattern(lhs, kwargs, lhs.line)
+                    }
+                | p_const tLPAREN2 tRPAREN
+                    {
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+                    }
+                | p_const p_lbracket p_args rbracket
+                    {
+                      const, _, pre_arg, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern const, nil, pre_arg, const.line
+                    }
+                | p_const p_lbracket p_kwargs rbracket
+                    {
+                      const, _, kwargs, _ = val
+
+                      result = new_hash_pattern const, kwargs, const.line
+                    }
+                | p_const tLBRACK2 rbracket
+                    {
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+                    }
+                | tLBRACK { push_pktbl } p_args rbracket
+                    {
+                      _, _, pat, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern nil, nil, pat, pat.line
+                    }
+                | tLBRACK rbracket
+                    {
+                      (_, line), _ = val
+
+                      result = s(:array_pat).line line
+                    }
+                | tLBRACE
+                    {
+                      push_pktbl
+                      result = self.in_kwarg
+                      self.in_kwarg = false
+                    }
+                    p_kwargs rbrace
+                    {
+                      _, in_kwarg, kwargs, _ = val
+
+                      pop_pktbl
+                      self.in_kwarg = in_kwarg
+
+                      result = new_hash_pattern(nil, kwargs, kwargs.line)
+                    }
+                | tLBRACE rbrace
+                    {
+                      (_, line), _ = val
+
+                      tail = new_hash_pattern_tail nil, nil, line
+                      result = new_hash_pattern nil, tail, line
+                    }
+                | tLPAREN { push_pktbl } p_expr tRPAREN
+                    {
+                      _, _, expr, _ = val
+
+                      pop_pktbl
+                      result = expr
+                    }
+
+          p_args: p_expr
+                    {
+                      expr, = val
+
+                      ary = s(:array_TAIL, expr).line expr.line
+                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
+                    }
+                | p_args_head
+                    {
+                      head, = val
+
+                      result = new_array_pattern_tail head, true, nil, nil
+                    }
+                | p_args_head p_arg
+                    {
+                      head, tail = val
+
+                      both = array_pat_concat head, tail
+
+                      result = new_array_pattern_tail both, nil, nil, nil
+                      result.line head.line
+                    }
+                | p_args_head tSTAR tIDENTIFIER
+                    {
+                      head, _, (id, _line) = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, nil
+                      result.line head.line
+                    }
+                | p_args_head tSTAR tIDENTIFIER tCOMMA p_args_post
+                    {
+                      head, _, (id, _line), _, post = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, post
+                      result.line head.line
+                    }
+                | p_args_head tSTAR
+                    {
+                      expr, _ = val
+
+                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
+                    }
+                | p_args_head tSTAR tCOMMA p_args_post
+                    {
+                      head, _, _, post = val
+
+                      result = new_array_pattern_tail(head, true, nil, post).line head.line
+                    }
+                | p_args_tail
+
+     p_args_head: p_arg tCOMMA
+                    {
+                      arg, _ = val
+                      result = arg
+                    }
+                | p_args_head p_arg tCOMMA
+                    {
+                      head, tail, _ = val
+
+                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
+                      result.line head.line
+                    }
+
+     p_args_tail: tSTAR tIDENTIFIER
+                    {
+                      _, (id, line) = val
+
+                      result = new_array_pattern_tail nil, true, id.to_sym, nil
+                      result.line line
+                    }
+                | tSTAR tIDENTIFIER tCOMMA p_args_post
+                    {
+                      _, (id, line), _, rhs = val
+
+                      result = new_array_pattern_tail nil, true, id.to_sym, rhs
+                      result.line line
+                    }
+                | tSTAR
+                    {
+                      (_, line), = val
+
+                      result = new_array_pattern_tail nil, true, nil, nil
+                      result.line line
+                    }
+                | tSTAR tCOMMA p_args_post
+                    {
+                      (_, line), _, args = val
+
+                      result = new_array_pattern_tail nil, true, nil, args
+                      result.line line
+                    }
+
+     p_args_post: p_arg
+                | p_args_post tCOMMA p_arg
+                    {
+                      lhs, _, rhs = val
+
+                      result = array_pat_concat lhs, rhs
+                    }
+
+           p_arg: p_expr
+                    {
+                      expr, = val
+                      expr = s(:array_TAIL, expr).line expr.line unless
+                        expr.sexp_type == :array_TAIL
+                      result = expr
+                    }
+
+        p_kwargs: p_kwarg tCOMMA p_kwrest
+                    {
+                      kw_arg, _, rest = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
+                    }
+                | p_kwarg
+                    {
+                      kwarg, = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+                    }
+                | p_kwarg tCOMMA
+                    {
+                      kwarg, _ = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+                    }
+                | p_kwrest
+                    {
+                      rest, = val
+
+                      result = new_hash_pattern_tail nil, rest, rest.line
+                    }
+                | p_kwarg tCOMMA p_kwnorest
+                    {
+                      kwarg, _, norest = val
+
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, norest, kwarg.line
+                    }
+                | p_kwnorest
+                    {
+                      norest, = val
+
+                      result = new_hash_pattern_tail nil, norest, norest.line
+                    }
+
+         p_kwarg: p_kw # TODO? rb_ary_new_from_args(1, $1)
+                | p_kwarg tCOMMA p_kw
+                    {
+                      kwarg, _, kw = val
+                      kwarg.concat kw.sexp_body
+                      result = kwarg
+                    }
+
+            p_kw: p_kw_label p_expr
+                    {
+                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
+                      lhs, rhs = val
+
+                      result = s(:PAIR, lhs, rhs).line lhs.line
+                    }
+                | p_kw_label
+                    {
+                      lhs, = val
+
+                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
+
+                      # TODO: if ($1 && !is_local_id(get_id($1))) {
+                      #     yyerror1(&@1, "key must be valid as local variables");
+                      # }
+
+                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
+                      #                     assignable(p, $1, 0, &@$));
+
+
+                      case lhs.sexp_type
+                      when :lit then
+                        assignable [lhs.value, lhs.line]
+                      else
+                        # TODO or done?
+                        debug 666
+                      end
+
+                      # TODO PAIR -> LIST ?
+                      result = s(:PAIR, lhs, nil).line lhs.line
+                    }
+
+      p_kw_label: tLABEL
+                    {
+                      result = wrap :lit, val[0]
+                    }
+
+        p_kwrest: kwrest_mark tIDENTIFIER
+                    {
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = s(:kwrest, :"**#{name}").line line
+                    }
+                | kwrest_mark
+                    {
+                      (_, line), = val
+
+                      result = s(:kwrest, :"**").line line
+                    }
+
+      p_kwnorest: kwrest_mark kNIL
+                    {
+                      (_, line), _ = val
+
+                      # TODO: or s(:norest)? s(:**nil)?
+                      result = s(:kwrest, :"**nil").line line
+                    }
+
+         p_value: p_primitive
+                | p_primitive tDOT2 p_primitive
+                    {
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot2, lhs, rhs).line lhs.line
+                    }
+                | p_primitive tDOT3 p_primitive
+                    {
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot3, lhs, rhs).line lhs.line
+                    }
+                | p_primitive tDOT2
+                    {
+                      v1, _ = val
+
+                      result = s(:dot2, v1, nil).line v1.line
+                    }
+                | p_primitive tDOT3
+                    {
+                      v1, _ = val
+
+                      result = s(:dot3, v1, nil).line v1.line
+                    }
+                | p_variable
+                | p_var_ref
+                | p_const
+                | tBDOT2 p_primitive
+                    {
+                      _, v1 = val
+
+                      result = s(:dot2, nil, v1).line v1.line
+                    }
+                | tBDOT3 p_primitive
+                    {
+                      _, v1 = val
+
+                      result = s(:dot3, nil, v1).line v1.line
+                    }
+
+     p_primitive: literal
+                | strings
+                | xstring
+                | regexp
+                | words
+                    {
+                      result = ary_to_pat val[0]
+                    }
+                | qwords
+                    {
+                      result = ary_to_pat val[0]
+                    }
+                | symbols
+                    {
+                      result = ary_to_pat val[0]
+                    }
+                | qsymbols
+                    {
+                      result = ary_to_pat val[0]
+                    }
+                | keyword_variable
+                    {
+                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
+                      var, = val
+
+                      result = var
+                    }
+                | lambda
+
+      p_variable: tIDENTIFIER
+                    {
+                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
+                      # TODO: assignable(p, $1, 0, &@$);
+                      result = wrap :lasgn, val[0]
+                    }
+
+       p_var_ref: tCARET tIDENTIFIER
+                    {
+                      # TODO: check id against env for lvar or dvar
+                      result = wrap :lvar, val[1]
+                    }
+
+         p_const: tCOLON3 cname
+                    {
+                      result = wrap :colon3, val[1]
+                    }
+                | p_const tCOLON2 cname
+                    {
+                      lhs, _, (id, _line) = val
+
+                      l = lhs.line
+                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
+                    }
+                | tCONSTANT
+                    {
+                      # TODO $$ = gettable(p, $1, &@$);
+                      result = wrap :const, val[0]
+                    }
+######################################################################
+#endif
+
+      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
+                    {
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+                    }
+                |
+                    {
+                      result = nil
+                    }
+
+        exc_list: arg_value
+                    {
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+                    }
+                | mrhs
+                | none
+
+         exc_var: tASSOC lhs
+                    {
+                      result = val[1]
+                    }
+                | none
+
+      opt_ensure: k_ensure compstmt
+                    {
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+                    }
+                | none
+
+         literal: numeric
+                    {
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+                    }
+                | symbol
+
+         strings: string
+                    {
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+                    }
+
+          string: tCHAR
+                    {
+                      debug 37
+                    }
+                | string1
+                | string string1
+                    {
+                      result = self.literal_concat val[0], val[1]
+                    }
+
+         string1: tSTRING_BEG string_contents tSTRING_END
+                    {
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+                    }
+                | tSTRING
+                    {
+                      result = new_string val
+                    }
+
+         xstring: tXSTRING_BEG xstring_contents tSTRING_END
+                    {
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+                    }
+
+          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
+                    {
+                      result = new_regexp val
+                    }
+
+           words: tWORDS_BEG tSPACE tSTRING_END
+                    {
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+                    }
+                | tWORDS_BEG word_list tSTRING_END
+                    {
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+                    }
+
+       word_list: none
+                    {
+                      result = new_word_list
+                    }
+                | word_list word tSPACE
+                    {
+                      result = val[0].dup << new_word_list_entry(val)
+                    }
+
+            word: string_content
+                | word string_content
+                    {
+                      result = self.literal_concat val[0], val[1]
+                    }
+
+         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
+                    {
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+                    }
+                | tSYMBOLS_BEG symbol_list tSTRING_END
+                    {
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+                    }
+
+     symbol_list: none
+                    {
+                      result = new_symbol_list
+                    }
+                | symbol_list word tSPACE
+                    {
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+                    }
+
+          qwords: tQWORDS_BEG tSPACE tSTRING_END
+                    {
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+                    }
+                | tQWORDS_BEG qword_list tSTRING_END
+                    {
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+                    }
+
+        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
+                    {
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+                    }
+                | tQSYMBOLS_BEG qsym_list tSTRING_END
+                    {
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+                    }
+
+      qword_list: none
+                    {
+                      result = new_qword_list
+                    }
+                | qword_list tSTRING_CONTENT tSPACE
+                    {
+                      result = val[0].dup << new_qword_list_entry(val)
+                    }
+
+       qsym_list: none
+                    {
+                      result = new_qsym_list
+                    }
+                | qsym_list tSTRING_CONTENT tSPACE
+                    {
+                      result = val[0].dup << new_qsym_list_entry(val)
+                    }
+
+ string_contents: none
+                    {
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+                    }
+                | string_contents string_content
+                    {
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+                    }
+
+xstring_contents: none
+                    {
+                      result = nil
+                    }
+                | xstring_contents string_content
+                    {
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+                    }
+
+regexp_contents: none
+                    {
+                      result = nil
+                    }
+                | regexp_contents string_content
+                    {
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+                    }
+
+  string_content: tSTRING_CONTENT
+                    {
+                      result = new_string val
+                    }
+                | tSTRING_DVAR
+                    {
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+                    }
+                    string_dvar
+                    {
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+                    }
+                | tSTRING_DBEG
+                    {
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                                lexer.lineno,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+                    }
+                    compstmt
+                    tSTRING_DEND
+                    {
+                      _, memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 38
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+                    }
+
+     string_dvar: tGVAR
+                    {
+                      result = wrap :gvar, val[0]
+                    }
+                | tIVAR
+                    {
+                      result = wrap :ivar, val[0]
+                    }
+                | tCVAR
+                    {
+                      result = wrap :cvar, val[0]
+                    }
+                | backref
+
+          symbol: ssym
+                | dsym
+
+            ssym: tSYMBEG sym
+                    {
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+                    }
+                | tSYMBOL
+                    {
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+                    }
+
+             sym: fname | tIVAR | tGVAR | tCVAR
+
+            dsym: tSYMBEG string_contents tSTRING_END
+                    {
+                      _, result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line lexer.lineno
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 39
+                      end
+                    }
+
+#if V == 20
+         numeric: tINTEGER
+                | tFLOAT
+                | tUMINUS_NUM tINTEGER =tLOWEST
+#else
+         numeric: simple_numeric
+                | tUMINUS_NUM simple_numeric            =tLOWEST
+#endif
+                    {
+                      _, (num, line) = val
+                      result = [-num, line]
+#if V == 20
+                    }
+                | tUMINUS_NUM tFLOAT   =tLOWEST
+                    {
+                      _, (num, line) = val
+                      result = [-num, line]
+#endif
+                    }
+
+#if V >= 21
+  simple_numeric: tINTEGER
+                | tFLOAT
+                | tRATIONAL
+                | tIMAGINARY
+
+#endif
+   user_variable: tIDENTIFIER
+                | tIVAR
+                | tGVAR
+                | tCONSTANT
+                | tCVAR
+
+keyword_variable: kNIL      { result = s(:nil).line lexer.lineno }
+                | kSELF     { result = s(:self).line lexer.lineno }
+                | kTRUE     { result = s(:true).line lexer.lineno }
+                | kFALSE    { result = s(:false).line lexer.lineno }
+                | k__FILE__ { result = s(:str, self.file).line lexer.lineno }
+                | k__LINE__ { result = s(:lit, lexer.lineno).line lexer.lineno }
+                | k__ENCODING__
+                    {
+                      l = lexer.lineno
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+                    }
+
+         var_ref: user_variable
+                    {
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+                      result.line line
+                    }
+                | keyword_variable
+                    {
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+                    }
+
+         var_lhs: user_variable
+                    {
+                      result = self.assignable val[0]
+                    }
+                | keyword_variable
+                    {
+                      result = self.assignable val[0]
+                      debug 40
+                    }
+
+         backref: tNTH_REF
+                    {
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+                    }
+                | tBACK_REF
+                    {
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+                    }
+
+      superclass: tLT
+                    {
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+                    }
+                    expr_value term
+                    {
+                      result = val[2]
+                    }
+                | none
+                    {
+                      result = nil
+                    }
+
+       f_arglist: tLPAREN2 f_args rparen
+                    {
+                      result = end_args val
+                    }
+#if V == 27
+                | tLPAREN2 f_arg tCOMMA args_forward rparen
+                    {
+                      result = end_args val
+                    }
+                | tLPAREN2 args_forward rparen
+                    {
+                      result = end_args val
+                    }
+#endif
+                |   {
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.lexer.lex_state |= EXPR_LABEL
+                    }
+                    f_args term
+                    {
+                      result = end_args val
+                    }
+
+       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
+                    {
+                      result = args val
+                    }
+                | f_kwarg opt_f_block_arg
+                    {
+                      result = args val
+                    }
+                | f_kwrest opt_f_block_arg
+                    {
+                      result = args val
+                    }
+#if V >= 27
+                | f_no_kwarg opt_f_block_arg
+                    {
+                      result = args val
+                    }
+#endif
+                | f_block_arg
+
+   opt_args_tail: tCOMMA args_tail
+                    {
+                      result = val[1]
+                    }
+                |
+                    {
+                      result = nil
+                    }
+
+          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_optarg              opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA            f_rest_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg                             opt_args_tail
+                    {
+                      result = args val
+                    }
+                |           f_optarg tCOMMA f_rest_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                |           f_optarg                opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_optarg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                |                        f_rest_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                |           f_rest_arg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                |                                       args_tail
+                    {
+                      result = args val
+                    }
+                |
+                    {
+                      result = args val
+                      # result.line lexer.lineno
+                    }
+
+#if V >= 27
+    args_forward: tBDOT3
+                    {
+                      result = s(:forward_args).line lexer.lineno
+                    }
+#endif
+
+       f_bad_arg: tCONSTANT
+                    {
+                      yyerror "formal argument cannot be a constant"
+                    }
+                | tIVAR
+                    {
+                      yyerror "formal argument cannot be an instance variable"
+                    }
+                | tGVAR
+                    {
+                      yyerror "formal argument cannot be a global variable"
+                    }
+                | tCVAR
+                    {
+                      yyerror "formal argument cannot be a class variable"
+                    }
+
+      f_norm_arg: f_bad_arg
+                | tIDENTIFIER
+                    {
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+                    }
+
+#if V >= 22
+      f_arg_asgn: f_norm_arg
+
+      f_arg_item: f_arg_asgn
+                | tLPAREN f_margs rparen
+                    {
+                      _, margs, _ = val
+
+                      result = margs
+                    }
+#else
+      f_arg_item: f_norm_arg
+                | tLPAREN f_margs rparen
+                    {
+                      _, margs, _ = val
+
+                      result = margs
+                    }
+#endif
+
+           f_arg: f_arg_item
+                    {
+                      result = new_arg val
+                    }
+                | f_arg tCOMMA f_arg_item
+                    {
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+                    }
+
+#if V == 20
+            f_kw: tLABEL arg_value
+#else
+         f_label: tLABEL
+
+            f_kw: f_label arg_value
+#endif
+                    {
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+                    }
+#if V >= 21
+                | f_label
+                    {
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+                    }
+#endif
+
+#if V == 20
+      f_block_kw: tLABEL primary_value
+#else
+      f_block_kw: f_label primary_value
+#endif
+                    {
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+                    }
+#if V >= 21
+                | f_label
+                    {
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+                    }
+#endif
+
+   f_block_kwarg: f_block_kw
+                | f_block_kwarg tCOMMA f_block_kw
+                    {
+                      list, _, item = val
+                      result = list << item.last
+                    }
+
+         f_kwarg: f_kw
+                | f_kwarg tCOMMA f_kw
+                    {
+                      result = args val
+                    }
+
+     kwrest_mark: tPOW
+                | tDSTAR
+
+#if V >= 27
+      f_no_kwarg: kwrest_mark kNIL
+                    {
+                      result = :"**nil"
+                    }
+#endif
+
+        f_kwrest: kwrest_mark tIDENTIFIER
+                    {
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+                    }
+                | kwrest_mark
+                    {
+                      id = :"**"
+                      self.env[id] = :lvar # TODO: needed?!?
+                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
+                    }
+
+#if V == 20
+           f_opt: tIDENTIFIER tEQL arg_value
+#elif V == 21
+           f_opt: f_norm_arg tEQL arg_value
+#else
+           f_opt: f_arg_asgn tEQL arg_value
+#endif
+                    {
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+                    }
+
+#if V == 20
+     f_block_opt: tIDENTIFIER tEQL primary_value
+#elif V == 21
+     f_block_opt: f_norm_arg tEQL primary_value
+#else
+     f_block_opt: f_arg_asgn tEQL primary_value
+#endif
+                    {
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                    }
+
+  f_block_optarg: f_block_opt
+                    {
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+                    }
+                | f_block_optarg tCOMMA f_block_opt
+                    {
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+                    }
+
+        f_optarg: f_opt
+                    {
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+                    }
+                | f_optarg tCOMMA f_opt
+                    {
+                      result = self.block_append val[0], val[2]
+                    }
+
+    restarg_mark: tSTAR2 | tSTAR
+
+      f_rest_arg: restarg_mark tIDENTIFIER
+                    {
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+                    }
+                | restarg_mark
+                    {
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
+                    }
+
+     blkarg_mark: tAMPER2 | tAMPER
+
+     f_block_arg: blkarg_mark tIDENTIFIER
+                    {
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+                    }
+
+ opt_f_block_arg: tCOMMA f_block_arg
+                    {
+                      _, arg = val
+                      result = arg
+                    }
+                |
+                    {
+                      result = nil
+                    }
+
+       singleton: var_ref
+                | tLPAREN2
+                    {
+                      lexer.lex_state = EXPR_BEG
+                    }
+                    expr rparen
+                    {
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+                    }
+
+      assoc_list: none
+                    {
+                      result = s(:array).line lexer.lineno
+                    }
+                | assocs trailer
+
+          assocs: assoc
+                | assocs tCOMMA assoc
+                    {
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+                    }
+
+           assoc: arg_value tASSOC arg_value
+                    {
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+                    }
+                | tLABEL arg_value
+                    {
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+                    }
+#if V >= 22
+                | tSTRING_BEG string_contents tLABEL_END arg_value
+                    {
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+                    }
+#endif
+                | tDSTAR arg_value
+                    {
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+                    }
+
+       operation: tIDENTIFIER | tCONSTANT | tFID
+      operation2: tIDENTIFIER | tCONSTANT | tFID | op
+      operation3: tIDENTIFIER | tFID | op
+    dot_or_colon: tDOT | tCOLON2
+         call_op: tDOT
+#if V >= 23
+                | tLONELY # TODO: rename tANDDOT?
+#endif
+
+        call_op2: call_op
+                | tCOLON2
+
+       opt_terms:  | terms
+          opt_nl:  | tNL
+          rparen: opt_nl tRPAREN
+                    {
+                      _, close = val
+                      result = [close, lexer.lineno]
+                    }
+        rbracket: opt_nl tRBRACK
+                    {
+                      _, close = val
+                      result = [close, lexer.lineno]
+                    }
+#if V >= 27
+          rbrace: opt_nl tRCURLY
+#endif
+         trailer:  | tNL | tCOMMA
+
+            term: tSEMI { yyerrok }
+                | tNL
+
+           terms: term
+                | terms tSEMI { yyerrok }
+
+            none: { result = nil; }
+end
+
+---- inner
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
diff -pruN 3.20.0-2/lib/ruby_parser20.rb 3.21.1-1/lib/ruby_parser20.rb
--- 3.20.0-2/lib/ruby_parser20.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser20.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,10953 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby20Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -518,     8,    85,    86,    87,    12,    78,  -518,  -518,  -518,
+    79,    80,  -518,  -518,  -518,    83,  -518,    81,    82,    84,
+    33,    34,    76,    77,  -518,   570,  -518,  -518,  -518,    88,
+    31,    30,   115,   114,   116,   117,  -518,  -518,    22,  -518,
+  -518,  -518,  -518,  -518,    11,    49,    10,    13,   119,   118,
+   120,   109,    60,   111,   110,   112,   830,   113,   121,   122,
+  -109,   107,   108,  -110,    45,    46,    44,  -518,  -518,  -518,
+  -518,  -518,  -518,  -518,  -518,  -518,  -518,  -518,  -518,  -518,
+  -518,   570,  -103,  -518,  -518,  -518,    43,  -518,  -518,    36,
+   829,  -518,    62,    63,  -518,  -518,    64,  -518,    38,  -518,
+     3,  -518,    48,  -518,  -518,  -518,  -518,  -518,  -518,  -518,
+    23,  -518,   281,  -518,   123,   105,    95,    97,    98,    99,
+   101,  -117,  -116,   649,    96,   106,  -518,  -518,  -518,  -518,
+   570,  -518,    89,  -518,  -521,    93,   100,   102,  -518,   127,
+  -518,  -521,  -521,  -521,   126,   570,  -521,  -521,  -521,  -103,
+  -521,   741,   570,  -112,   221,   222,   221,   222,  -521,  -112,
+  -521,  -521,  -521,   221,   222,  -100,  -114,   281,  -101,  -111,
+  -521,  -521,  -113,  -521,  -521,  -521,  -521,  -521,   334,   335,
+   221,   222,   -95,  -532,  -103,  -105,   648,  -103,  -114,  -113,
+   881,  -115,  -111,   -81,   230,   127,   543,   544,  -103,   283,
+   126,  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,
+  -521,  -521,  -521,  -521,  -521,   281,   652,  -521,  -521,  -521,
+   584,  -521,  -521,   218,   585,  -521,  -108,  -107,  -521,  -521,
+   231,  -521,   278,  -521,   281,  -521,  -109,  -521,  -521,  -521,
+  -521,  -521,  -521,  -521,   127,  -521,   231,  -521,   219,   126,
+  -611,   127,  -105,   231,   283,  -611,   126,  -612,  -103,   127,
+  -521,  -521,  -521,  -521,   126,  -521,   127,  -521,  -300,   942,
+   231,   126,  -521,  -112,  -521,  -300,  -300,  -300,  -112,   651,
+  -114,  -300,  -300,  -111,  -300,  -114,  -113,  -105,  -111,   830,
+  -105,  -113,    95,  -105,  -104,   880,  -106,  -102,   220,   278,
+    96,  -105,   283,  -533,  -300,  -300,   227,  -300,  -300,  -300,
+  -300,  -300,   227,   276,   846,   228,   860,   478,   577,   226,
+   847,   283,   633,   829,  -518,   228,   633,   548,   224,   821,
+   223,  -518,   271,  -608,   332,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,   221,
+   222,  -300,  -300,  -300,  -609,   675,  -110,  -108,  -532,  -300,
+   221,   222,  -300,   822,   669,  -615,   633,  -300,  -117,  -300,
+  -117,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -117,  -300,
+  -116,  -300,  -112,   635,   634,   633,  -518,   635,   634,   631,
+  -615,  -434,   793,  -518,  -300,  -300,  -615,  -106,  -608,  -300,
+  -100,   670,  -518,  -615,  -615,  -615,  -300,  -521,  -115,  -615,
+  -615,  -109,  -615,   619,  -521,  -521,  -114,  -112,  -615,  -609,
+  -608,  -615,  -521,  -521,   621,  -615,   333,   635,   634,   636,
+  -611,   633,  -615,  -615,  -615,  -615,  -615,  -615,  -615,  -615,
+   231,  -609,   397,  -615,  -434,   913,   635,   634,   641,   633,
+  -615,  -434,  -615,   808,  -114,  -611,   425,   629,   628,  -615,
+  -434,   427,   426,  -615,  -615,  -615,  -615,  -615,  -615,  -615,
+  -615,  -615,  -615,  -615,  -615,  -615,  -615,  -615,  -434,  -615,
+  -615,  -615,  -528,   676,   400,   730,   633,  -615,   729,  -528,
+  -615,   622,   635,   634,   646,  -615,   403,  -615,  -111,  -615,
+  -615,  -615,  -615,  -615,  -615,  -615,  -111,  -615,  -615,  -615,
+   635,   634,   615,  -340,   612,   611,   610,   619,   613,   795,
+  -340,   633,  -615,  -615,   638,  -104,  -533,  -615,   621,  -340,
+  -615,   856,   860,  -527,  -615,   548,  -113,  -615,  -615,  -615,
+  -527,   925,  -615,  -615,  -615,   406,  -615,   635,   634,   653,
+   617,   601,   621,   629,   628,  -615,  -615,  -615,  -615,   626,
+   625,   629,   628,   856,   860,   423,  -615,  -615,  -101,  -615,
+  -615,  -615,  -615,  -615,  -529,   730,   428,  -107,   732,  -110,
+  -526,  -529,   635,   634,  -523,   629,   628,  -526,  -116,   477,
+   785,  -523,   612,   611,   610,   622,   613,  -615,  -615,  -615,
+  -615,  -615,  -615,  -615,  -615,  -615,  -615,  -615,  -615,  -615,
+  -615,   479,   669,  -615,  -615,  -615,  -524,   823,  -615,   622,
+   480,  -615,   230,  -524,  -615,  -615,   509,  -615,   780,  -615,
+   518,  -615,   670,  -615,  -615,  -615,  -615,  -615,  -615,  -615,
+  -525,  -615,  -615,  -615,   808,   521,   615,  -525,   612,   611,
+   610,   619,   613,   227,  -103,   523,  -615,  -615,  -615,  -615,
+   475,  -615,   621,  -615,  -300,  -112,   -80,   231,  -615,   476,
+  -113,  -300,  -300,  -300,  -105,   533,  -300,  -300,  -300,   534,
+  -300,   541,  -530,   288,   617,  -114,  -102,   231,   251,  -530,
+  -300,  -300,  -300,   626,   625,   629,   628,  -111,  -530,   278,
+  -300,  -300,   597,  -300,  -300,  -300,  -300,  -300,   785,   598,
+   612,   611,   610,   730,   613,   785,   732,   612,   611,   610,
+   248,   613,   545,   127,   250,   249,   246,   247,   126,   622,
+   549,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,   550,   780,  -300,  -300,  -300,
+  -531,   824,  -300,   780,   251,  -300,   231,  -531,  -300,  -300,
+   577,  -300,   784,  -300,   251,  -300,  -531,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,   127,  -300,   416,  -300,   615,   126,
+   612,   611,   610,   619,   613,   582,   583,   591,   268,   269,
+  -300,  -300,  -300,  -300,   621,  -300,   248,  -300,  -300,   640,
+   250,   249,  -300,   127,  -115,  -300,  -300,  -300,   126,   644,
+   647,  -300,  -300,   227,  -300,   785,   617,   612,   611,   610,
+   540,   613,   251,   267,   266,   626,   625,   629,   628,   538,
+   730,   127,   650,   732,  -300,  -300,   126,  -300,  -300,  -300,
+  -300,  -300,   127,   657,  -291,  -275,   785,   126,   612,   611,
+   610,  -291,   613,   780,   248,   659,   660,   231,   250,   249,
+  -291,   622,   784,   667,   668,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,   227,
+   251,  -300,  -300,  -300,   780,   675,   552,   231,   278,  -300,
+  1040,   127,  -300,   784,   680,   476,   126,  -300,   251,  -300,
+   251,  -300,  -300,  -300,  -300,  -300,  -300,  -300,   251,  -300,
+   251,  -300,   248,   687,   227,   227,   250,   249,   246,   247,
+   231,   581,   587,   231,  -300,  -300,  -615,  -300,   423,  -300,
+   579,   589,   231,  -615,  -615,  -615,  -300,   -95,  -115,  -615,
+  -615,   615,  -615,   612,   611,   610,   619,   613,   227,   706,
+   785,  -615,   612,   611,   610,   663,   613,   621,   231,   555,
+   717,   723,  -615,  -615,   661,  -615,  -615,  -615,  -615,  -615,
+   785,  -301,   612,   611,   610,   726,   613,   231,  -301,   617,
+   902,   903,   231,   734,   904,   121,   122,  -301,   626,   625,
+   629,   628,   523,  -615,  -615,  -615,  -615,  -615,  -615,  -615,
+  -615,  -615,  -615,  -615,  -615,  -615,  -615,  -301,   780,  -615,
+  -615,  -615,   227,   676,  -301,   737,   726,  -615,   726,  1024,
+  -615,   577,   726,  -301,   622,  -615,   762,  -615,   589,  -615,
+  -615,  -615,  -615,  -615,  -615,  -615,   768,  -615,  -615,  -615,
+   771,   772,   615,  -530,   612,   611,   610,   619,   613,  -300,
+  -530,   774,  -615,  -615,   776,  -615,  -300,  -615,   621,  -530,
+  -433,  -612,   778,  -300,  -615,  -300,  -113,  -433,  -433,  -433,
+  -300,   788,  -433,  -433,  -433,  -612,  -433,   251,   789,  -300,
+   617,   790,   796,   797,  -276,  -433,  -433,  -433,  -531,   626,
+   625,   629,   628,   261,   262,  -531,  -433,  -433,   809,  -433,
+  -433,  -433,  -433,  -433,  -531,   509,   509,   231,   826,   248,
+   227,   254,   271,   250,   249,   246,   247,  1030,   835,   252,
+   837,   253,   521,   523,   717,   622,  1028,  -433,  -433,  -433,
+  -433,  -433,  -433,  -433,  -433,  -433,  -433,  -433,  -433,  -433,
+  -433,   231,  -291,  -433,  -433,  -433,   227,   278,  -433,  -291,
+   278,  -433,   278,  1024,  -433,  -433,   717,  -433,  -291,  -433,
+   251,  -433,   589,  -433,  -433,  -433,  -433,  -433,  -433,  -433,
+   251,  -433,  -433,  -433,  -301,   860,  1005,   726,   612,   611,
+   610,  -301,   613,   231,   231,   726,  -433,  -433,  -309,  -433,
+  -301,  -433,   231,   897,   898,  -309,  -309,  -309,  -433,   231,
+  -309,  -309,  -309,   615,  -309,   612,   611,   610,   619,   613,
+  -300,   907,  -277,   231,  -309,  -309,   912,  -300,   929,   621,
+   717,  -275,  -612,   934,  -309,  -309,  -300,  -309,  -309,  -309,
+  -309,  -309,  1005,   726,   612,   611,   610,   726,   613,   726,
+   726,   617,   130,   131,   132,   133,   134,   726,   231,   954,
+   626,   625,   629,   628,   231,  -309,  -309,  -309,  -309,  -309,
+  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,   771,
+   957,  -309,  -309,  -309,   959,   961,  -309,   963,   288,  -309,
+   963,   231,  -309,  -309,   970,  -309,   622,  -309,  -278,  -309,
+   971,  -309,  -309,  -309,  -309,  -309,  -309,  -309,   771,  -309,
+   974,  -309,   130,   131,   132,   133,   134,   130,   131,   132,
+   133,   134,   977,   979,  -309,  -309,  -292,  -309,   981,  -309,
+   231,   983,   762,  -292,  -292,  -292,  -309,  1001,  -292,  -292,
+  -292,   785,  -292,   612,   611,   610,   619,   613,  1002,  1011,
+  1012,  1022,  -292,  -292,  -292,  1025,   846,   621,  1031,   726,
+  1041,   963,  -292,  -292,   963,  -292,  -292,  -292,  -292,  -292,
+   130,   131,   132,   133,   134,   963,   771,  1048,  1050,   617,
+  1052,  1054,  1054,   723,   726,  1012,  -612,  -611,   231,   963,
+   629,   628,  1075,  -292,  -292,  -292,  -292,  -292,  -292,  -292,
+  -292,  -292,  -292,  -292,  -292,  -292,  -292,  1054,  1054,  -292,
+  -292,  -292,  1054,  1054,  -292,   nil,   nil,  -292,   nil,   nil,
+  -292,  -292,   nil,  -292,   622,  -292,   nil,  -292,   nil,  -292,
+  -292,  -292,  -292,  -292,  -292,  -292,   nil,  -292,   nil,  -292,
+   924,   nil,   612,   611,   610,   925,   613,   nil,   nil,   nil,
+   nil,   nil,  -292,  -292,  -292,  -292,   621,  -292,  -636,  -292,
+   nil,   nil,   nil,   nil,  -292,  -636,  -636,  -636,   nil,   nil,
+  -636,  -636,  -636,   nil,  -636,   251,   nil,   nil,   617,   nil,
+   nil,   nil,   nil,  -636,  -636,  -636,   nil,   626,   625,   629,
+   628,   261,   262,   nil,  -636,  -636,   nil,  -636,  -636,  -636,
+  -636,  -636,   nil,   nil,   nil,   nil,   nil,   248,   nil,   254,
+   nil,   250,   249,   246,   247,   231,   nil,   252,   nil,   253,
+   nil,   nil,   nil,   622,   nil,  -636,  -636,  -636,  -636,  -636,
+  -636,  -636,  -636,  -636,  -636,  -636,  -636,  -636,  -636,   nil,
+   nil,  -636,  -636,  -636,   nil,   nil,  -636,   nil,   278,  -636,
+   nil,   nil,  -636,  -636,   nil,  -636,   nil,  -636,   nil,  -636,
+   nil,  -636,  -636,  -636,  -636,  -636,  -636,  -636,   nil,  -636,
+  -636,  -636,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  -636,  -636,  -616,  -636,   nil,  -636,
+   nil,   nil,   nil,  -616,  -616,  -616,  -636,   nil,  -616,  -616,
+  -616,   615,  -616,   612,   611,   610,   619,   613,   nil,   nil,
+   nil,  -616,  -616,  -616,  -616,   nil,   nil,   621,   nil,   nil,
+   nil,   nil,  -616,  -616,   nil,  -616,  -616,  -616,  -616,  -616,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   617,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   626,   625,
+   629,   628,   nil,  -616,  -616,  -616,  -616,  -616,  -616,  -616,
+  -616,  -616,  -616,  -616,  -616,  -616,  -616,   nil,   nil,  -616,
+  -616,  -616,   nil,   nil,  -616,   nil,   nil,  -616,   nil,   nil,
+  -616,  -616,   nil,  -616,   622,  -616,   nil,  -616,   nil,  -616,
+  -616,  -616,  -616,  -616,  -616,  -616,   nil,  -616,  -616,  -616,
+   785,   nil,   612,   611,   610,   619,   613,   nil,   nil,   nil,
+   nil,   nil,  -616,  -616,  -616,  -616,   621,  -616,  -617,  -616,
+   nil,   nil,   nil,   nil,  -616,  -617,  -617,  -617,   nil,   nil,
+  -617,  -617,  -617,   nil,  -617,   251,   nil,   nil,   617,   nil,
+   nil,   nil,   nil,  -617,  -617,  -617,  -617,   nil,   nil,   629,
+   628,   261,   262,   nil,  -617,  -617,   nil,  -617,  -617,  -617,
+  -617,  -617,   nil,   nil,   nil,   nil,   nil,   248,   nil,   254,
+   nil,   250,   249,   246,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   nil,  -617,  -617,  -617,  -617,  -617,
+  -617,  -617,  -617,  -617,  -617,  -617,  -617,  -617,  -617,   nil,
+   nil,  -617,  -617,  -617,   nil,   nil,  -617,   nil,   nil,  -617,
+   nil,   nil,  -617,  -617,   nil,  -617,   nil,  -617,   nil,  -617,
+   nil,  -617,  -617,  -617,  -617,  -617,  -617,  -617,   nil,  -617,
+  -617,  -617,   785,   nil,   612,   611,   610,   619,   613,   nil,
+   nil,   nil,   nil,   nil,  -617,  -617,  -617,  -617,   621,  -617,
+  -636,  -617,   nil,   nil,   nil,   nil,  -617,  -636,  -636,  -636,
+   nil,   nil,  -636,  -636,  -636,   nil,  -636,   nil,   nil,   nil,
+   617,   nil,   nil,   nil,   nil,  -636,  -636,   nil,   nil,   nil,
+   nil,   629,   628,   nil,   nil,   nil,  -636,  -636,   nil,  -636,
+  -636,  -636,  -636,  -636,   785,   nil,   612,   611,   610,   619,
+   613,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   621,   nil,   nil,   nil,   nil,   622,   nil,   251,   255,   256,
+   257,   258,   268,   269,   263,   264,   259,   260,  -636,  -637,
+  -637,   nil,   617,   261,   262,  -636,   nil,   nil,   nil,   nil,
+   278,  -636,   nil,   629,   628,   nil,   nil,   nil,   nil,   248,
+   nil,   254,   nil,   250,   249,   246,   247,   267,   266,   252,
+   nil,   253,  -636,  -636,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  -636,   622,   nil,   nil,
+   nil,  -636,   306,    85,    86,    87,    12,    78,  -636,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   115,   114,   116,   117,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   664,    11,    49,   308,    13,   119,
+   118,   120,   109,    60,   111,   110,   112,   nil,   113,   121,
+   122,   nil,   107,   108,   nil,    45,    46,    44,   251,   255,
+   256,   257,   258,   268,   269,   263,   264,   259,   260,   nil,
+   244,   245,   nil,   nil,   261,   262,   nil,    43,   nil,   nil,
+   310,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
+   248,   nil,   254,    48,   250,   249,   246,   247,   267,   266,
+   252,    23,   253,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   265,   nil,
+  -250,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   306,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   664,    11,    49,   308,    13,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   251,   255,   256,   257,   258,
+   268,   269,   263,   264,   259,   260,   nil,   244,   245,   nil,
+   nil,   261,   262,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   248,   nil,   254,
+    48,   250,   249,   246,   247,   267,   266,   252,    23,   253,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   265,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   306,    85,    86,    87,
+    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,
+   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
+    49,   308,    13,   119,   118,   120,   109,    60,   111,   110,
+   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,
+    46,    44,   251,   255,   256,   257,   258,   268,   269,   263,
+   264,   259,   260,   nil,   244,   245,   nil,   nil,   261,   262,
+   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,    38,   248,   nil,   254,    48,   250,   249,
+   246,   247,   267,   266,   252,    23,   253,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   265,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   306,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,    13,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   251,
+   255,   256,   257,   258,   268,   269,   263,   264,   259,   260,
+   nil,   244,   245,   nil,   nil,   261,   262,   nil,    43,   nil,
+   nil,   310,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   248,   nil,   254,    48,   250,   249,   246,   247,   267,
+   266,   252,    23,   253,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   265,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,   120,
+   109,    60,   111,   110,   112,   nil,   113,   121,   122,   nil,
+   107,   108,   nil,    45,    46,    44,   251,   255,   256,   257,
+   258,   268,   269,   263,   264,   259,   260,   nil,   244,   245,
+   nil,   nil,   261,   262,   nil,    43,   nil,   nil,   310,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,    38,   248,   nil,
+   254,    48,   250,   249,   246,   247,   267,   266,   252,    23,
+   253,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   231,   265,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   308,    13,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   251,   255,   256,   257,   258,   268,   269,
+   263,   264,   259,   260,   nil,   244,   245,   nil,   nil,   261,
+   262,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   248,   nil,   254,    48,   250,
+   249,   246,   247,   267,   266,   252,    23,   253,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   265,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   306,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   115,   114,   116,   117,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,
+    13,   119,   118,   120,   109,    60,   111,   110,   112,   nil,
+   113,   121,   122,   nil,   107,   108,   nil,    45,    46,    44,
+   251,   255,   256,   257,   258,   268,   269,   263,   264,   259,
+   260,   nil,   244,   245,   nil,   nil,   261,   262,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   248,   nil,   254,    48,   250,   249,   246,   247,
+   267,   266,   252,    23,   253,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   265,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   251,   255,   256,
+   257,   258,   268,   269,   263,   264,   259,   260,   nil,   244,
+   245,   nil,   nil,   261,   262,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   248,
+   nil,   254,    48,   250,   249,   246,   247,   267,   266,   252,
+    23,   253,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   265,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,
+   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   308,    13,   119,   118,   120,   109,    60,
+   111,   110,   112,   nil,   113,   121,   122,   nil,   107,   108,
+   nil,    45,    46,    44,   251,   255,   256,   257,   258,   268,
+   269,   263,   264,   259,   260,   nil,  -637,  -637,   nil,   nil,
+   261,   262,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   248,   nil,   254,    48,
+   250,   249,   246,   247,   267,   266,   252,    23,   253,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   306,    85,    86,    87,    12,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
+   308,    13,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   251,  -637,  -637,  -637,  -637,   268,   269,   nil,   nil,
+  -637,  -637,   nil,   nil,   nil,   nil,   nil,   261,   262,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,    38,   248,   nil,   254,    48,   250,   249,   246,
+   247,   267,   266,   252,    23,   253,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   306,    85,    86,    87,    12,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   115,   114,   116,   117,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,
+   118,   120,   109,    60,   111,   110,   112,   nil,   113,   121,
+   122,   nil,   107,   108,   nil,    45,    46,    44,   251,  -637,
+  -637,  -637,  -637,   268,   269,   nil,   nil,  -637,  -637,   nil,
+   nil,   nil,   nil,   nil,   261,   262,   nil,    43,   nil,   nil,
+    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
+   248,   nil,   254,    48,   250,   249,   246,   247,   267,   266,
+   252,    23,   253,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,     8,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,    10,    13,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   251,  -637,  -637,  -637,  -637,
+   268,   269,   nil,   nil,  -637,  -637,   nil,   nil,   nil,   nil,
+   nil,   261,   262,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   248,   nil,   254,
+    48,   250,   249,   246,   247,   267,   266,   252,    23,   253,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   306,    85,    86,    87,
+    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,
+   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
+    49,   308,    13,   119,   118,   120,   109,    60,   111,   110,
+   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,
+    46,    44,   251,  -637,  -637,  -637,  -637,   268,   269,   nil,
+   nil,  -637,  -637,   nil,   nil,   nil,   nil,   nil,   261,   262,
+   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,    38,   248,   nil,   254,    48,   250,   249,
+   246,   247,   267,   266,   252,    23,   253,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   306,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,    13,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   251,
+  -637,  -637,  -637,  -637,   268,   269,   nil,   nil,  -637,  -637,
+   nil,   nil,   nil,   nil,   nil,   261,   262,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   248,   nil,   254,    48,   250,   249,   246,   247,   267,
+   266,   252,    23,   253,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,   120,
+   109,    60,   111,   110,   112,   nil,   113,   121,   122,   nil,
+   107,   108,   nil,    45,    46,    44,   251,  -637,  -637,  -637,
+  -637,   268,   269,   nil,   nil,  -637,  -637,   nil,   nil,   nil,
+   nil,   nil,   261,   262,   nil,    43,   nil,   nil,    36,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,    38,   248,   nil,
+   254,    48,   250,   249,   246,   247,   267,   266,   252,    23,
+   253,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   308,    13,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   251,   255,   256,   257,   258,   268,   269,
+   nil,   nil,   259,   260,   nil,   nil,   nil,   nil,   nil,   261,
+   262,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   248,   nil,   254,    48,   250,
+   249,   246,   247,   267,   266,   252,    23,   253,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   306,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   115,   114,   116,   117,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,
+    13,   119,   118,   120,   109,    60,   111,   110,   112,   nil,
+   113,   121,   122,   nil,   107,   108,   nil,    45,    46,    44,
+   251,   255,   256,   257,   258,   268,   269,   263,   nil,   259,
+   260,   nil,   nil,   nil,   nil,   nil,   261,   262,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   248,   nil,   254,    48,   250,   249,   246,   247,
+   267,   266,   252,    23,   253,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   261,   262,   nil,    43,   nil,   nil,    36,
+   nil,   251,    62,    63,   nil,   nil,    64,   nil,    38,   248,
+   nil,   254,    48,   250,   249,   246,   247,   261,   262,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   248,    96,   106,   nil,   250,   249,   246,
+   247,   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,
+   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   308,    13,   119,   118,   120,   109,    60,
+   111,   110,   112,   nil,   113,   121,   122,   nil,   107,   108,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   306,    85,    86,    87,    12,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
+   308,    13,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   306,    85,    86,    87,    12,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   115,   114,   116,   117,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,
+   118,   120,   109,    60,   111,   110,   112,   nil,   113,   121,
+   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
+    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   306,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   308,    13,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   306,    85,    86,    87,
+    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,
+   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
+    49,   308,    13,   119,   118,   120,   109,    60,   111,   110,
+   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   306,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,    13,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,   120,
+   109,    60,   111,   110,   112,   nil,   113,   121,   122,   nil,
+   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   306,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   308,    13,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   306,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   115,   114,   116,   117,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   308,
+    13,   119,   118,   120,   109,    60,   111,   110,   112,   nil,
+   113,   121,   122,   nil,   107,   108,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   306,    85,    86,    87,    12,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    49,   308,    13,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,    10,    13,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   785,    64,   612,
+   611,   610,   925,   613,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   621,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   617,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   629,   628,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   622,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   297,   nil,   295,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   297,   nil,   295,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   299,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   297,   nil,
+   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   300,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,   323,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   319,   nil,   nil,   315,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,   nil,   nil,   329,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   319,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   785,    64,   612,
+   611,   610,   619,   613,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   621,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   331,   nil,   nil,    89,   617,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   629,   628,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   622,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   785,    64,   612,   611,   610,   925,   613,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   621,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   617,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   629,   628,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   622,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   785,
+    64,   612,   611,   610,   925,   613,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   621,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   617,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   629,   628,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   622,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   785,    64,   612,   611,   610,
+   925,   613,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   621,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   617,   nil,    93,   100,   102,    85,    86,
+    87,    12,    78,   nil,   629,   628,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   622,   nil,
+    11,    49,   nil,    13,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   785,    64,   612,
+   611,   610,   925,   613,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   621,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   617,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   629,   628,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
+   622,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   127,   nil,   nil,   nil,   nil,   126,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,    36,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,   323,   nil,   nil,   119,   118,   120,   365,    60,   111,
+   110,   366,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   372,
+   nil,   nil,   367,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,
+   119,   118,   120,   365,    60,   111,   110,   366,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,   nil,   nil,   329,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   367,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,    10,    13,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   416,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   nil,    13,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   433,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   433,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   297,   nil,   295,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   231,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   297,   nil,   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   297,   nil,   295,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   297,   nil,   295,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   231,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,    12,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
+   nil,    13,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   319,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   536,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,   323,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   319,   nil,   nil,   315,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   555,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   297,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   299,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   300,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   297,   nil,   295,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   700,   nil,   295,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   295,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   308,    13,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   416,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,   nil,   nil,   329,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   319,   nil,
+   nil,   315,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   297,   nil,   295,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,   nil,   nil,
+   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   319,   nil,   nil,   315,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   299,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   297,   nil,   295,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   300,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   299,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   297,   nil,
+   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   300,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   801,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   299,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   297,   nil,
+   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   300,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   700,   nil,   295,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   295,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,   nil,   nil,
+   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   319,   nil,   nil,   315,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   319,   nil,   nil,   315,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   433,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   299,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   700,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   300,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   300,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   865,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   115,   114,   116,   117,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   115,   114,   116,   117,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   236,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   299,   113,   121,   122,   nil,   107,   108,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   295,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   300,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   325,   326,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   322,   328,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,   323,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   nil,   113,   121,   122,   nil,   107,
+   108,   nil,   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   985,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   325,   326,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   322,   328,   115,   114,   116,   117,
+   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,   nil,   323,
+   nil,   nil,   119,   118,   120,   109,    60,   111,   110,   112,
+   nil,   113,   121,   122,   nil,   107,   108,   nil,   nil,   nil,
+   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   992,   nil,   nil,   242,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   325,   326,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   322,   328,   115,   114,   116,   117,   nil,   nil,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   119,   118,
+   120,   109,    60,   111,   110,   112,   nil,   113,   121,   122,
+   nil,   107,   108,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   997,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   325,   326,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   322,   328,   115,   114,
+   116,   117,   nil,   nil,   243,   nil,   nil,   nil,   nil,   nil,
+   nil,   323,   nil,   nil,   119,   118,   120,   109,    60,   111,
+   110,   112,   nil,   113,   121,   122,   nil,   107,   108,   nil,
+   nil,   nil,   329,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   985,   nil,   nil,   242,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   325,   326,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   322,   328,   115,   114,   116,   117,   nil,   nil,
+   243,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   119,   118,   120,   109,    60,   111,   110,   112,   nil,   113,
+   121,   122,   nil,   107,   108,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,
+   nil,   242,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   115,   114,   116,   117,   nil,   nil,   243,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   119,   118,   120,   109,
+    60,   111,   110,   112,   299,   113,   121,   122,   nil,   107,
+   108,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   236,   nil,   nil,   242,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   297,   nil,   295,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   241,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   300,    93,   100,   102,   185,   196,   186,   209,
+   182,   202,   192,   191,   212,   213,   207,   190,   189,   184,
+   210,   214,   215,   194,   183,   197,   201,   203,   195,   188,
+   nil,   nil,   nil,   204,   211,   206,   205,   198,   208,   193,
+   181,   200,   199,   nil,   nil,   nil,   nil,   nil,   180,   187,
+   178,   179,   175,   176,   177,   138,   140,   137,   nil,   139,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,
+   nil,   166,   148,   149,   150,   157,   154,   156,   nil,   nil,
+   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,   160,
+   161,   155,   153,   145,   168,   146,   nil,   nil,   174,   105,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   167,   185,
+   196,   186,   209,   182,   202,   192,   191,   212,   213,   207,
+   190,   189,   184,   210,   214,   215,   194,   183,   197,   201,
+   203,   195,   188,   nil,   nil,   nil,   204,   211,   206,   205,
+   198,   208,   193,   181,   200,   199,   nil,   nil,   nil,   nil,
+   nil,   180,   187,   178,   179,   175,   176,   177,   138,   140,
+   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   171,   nil,   166,   148,   149,   150,   157,   154,
+   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,
+   158,   159,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,
+   165,   164,   160,   161,   155,   153,   145,   168,   146,   nil,
+   nil,   174,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   167,   185,   196,   186,   209,   182,   202,   192,   191,
+   212,   213,   207,   190,   189,   184,   210,   214,   215,   194,
+   183,   197,   201,   203,   195,   188,   nil,   nil,   nil,   204,
+   211,   206,   383,   382,   384,   381,   181,   200,   199,   nil,
+   nil,   nil,   nil,   nil,   180,   187,   178,   179,   378,   379,
+   380,   376,   140,   111,   110,   377,   nil,   113,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   171,   nil,   166,   148,   149,
+   150,   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,
+   nil,   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,
+   388,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,
+   nil,   147,   169,   165,   164,   160,   161,   155,   153,   145,
+   168,   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   167,   185,   196,   186,   209,   182,
+   202,   192,   191,   212,   213,   207,   190,   189,   184,   210,
+   214,   215,   194,   183,   197,   201,   203,   195,   188,   nil,
+   nil,   nil,   204,   211,   206,   205,   198,   208,   193,   181,
+   200,   199,   nil,   nil,   nil,   nil,   nil,   180,   187,   178,
+   179,   175,   176,   177,   138,   140,   413,   412,   139,   nil,
+   414,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   nil,
+   166,   148,   149,   150,   157,   154,   156,   nil,   nil,   151,
+   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   163,   162,   nil,   147,   169,   165,   164,   160,   161,
+   155,   153,   145,   168,   146,   nil,   nil,   174,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   167,   185,   196,
+   186,   209,   182,   202,   192,   191,   212,   213,   207,   190,
+   189,   184,   210,   214,   215,   194,   183,   197,   201,   203,
+   195,   188,   nil,   nil,   nil,   204,   211,   206,   205,   198,
+   208,   193,   181,   200,   199,   nil,   nil,   nil,   nil,   nil,
+   180,   187,   178,   179,   175,   176,   177,   138,   140,   nil,
+   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   171,   nil,   166,   148,   149,   150,   157,   154,   156,
+   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,
+   159,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,
+   164,   160,   161,   155,   153,   145,   168,   146,   nil,   nil,
+   174,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   167,   185,   196,   186,   209,   182,   202,   192,   191,   212,
+   213,   207,   190,   189,   184,   210,   214,   215,   194,   183,
+   197,   201,   203,   195,   188,   nil,   nil,   nil,   204,   211,
+   206,   205,   198,   208,   193,   181,   200,   199,   nil,   nil,
+   nil,   nil,   nil,   180,   187,   178,   179,   175,   176,   177,
+   138,   140,   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   171,   nil,   166,   148,   149,   150,
+   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,
+   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,
+   147,   169,   165,   164,   160,   161,   155,   153,   145,   168,
+   146,   nil,   nil,   174,   105,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   167,   185,   196,   186,   209,   182,   202,
+   192,   191,   212,   213,   207,   190,   189,   184,   210,   214,
+   215,   194,   183,   197,   201,   203,   195,   188,   nil,   nil,
+   nil,   204,   211,   206,   205,   198,   208,   193,   181,   200,
+   199,   nil,   nil,   nil,   nil,   nil,   180,   187,   178,   179,
+   175,   176,   177,   138,   140,   nil,   nil,   139,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   nil,   166,
+   148,   149,   150,   157,   154,   156,   nil,   nil,   151,   152,
+   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   163,   162,   nil,   147,   169,   165,   164,   160,   161,   155,
+   153,   145,   168,   146,   nil,   nil,   174,   nil,   nil,   nil,
+   nil,   455,   459,   nil,   nil,   456,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   171,   167,   166,   148,   149,
+   150,   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,
+   nil,   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,
+   nil,   147,   169,   165,   164,   160,   161,   155,   153,   145,
+   168,   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,   462,
+   466,   nil,   nil,   461,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   171,   167,   166,   148,   149,   150,   157,
+   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,
+   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,
+   169,   165,   164,   160,   161,   155,   153,   145,   168,   146,
+   nil,   nil,   174,   nil,   nil,   nil,   nil,   507,   459,   nil,
+   nil,   508,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   171,   167,   166,   148,   149,   150,   157,   154,   156,
+   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,
+   159,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,
+   164,   160,   161,   155,   153,   145,   168,   146,   nil,   nil,
+   174,   nil,   nil,   nil,   nil,   681,   459,   nil,   nil,   682,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,
+   167,   166,   148,   149,   150,   157,   154,   156,   nil,   nil,
+   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,
+   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,   160,
+   161,   155,   153,   145,   168,   146,   nil,   nil,   174,   nil,
+   nil,   nil,   nil,   683,   466,   nil,   nil,   684,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   167,   166,
+   148,   149,   150,   157,   154,   156,   nil,   nil,   151,   152,
+   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,   nil,
+   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   163,   162,   nil,   147,   169,   165,   164,   160,   161,   155,
+   153,   145,   168,   146,   nil,   nil,   174,   nil,   nil,   nil,
+   nil,   710,   459,   nil,   nil,   711,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   171,   167,   166,   148,   149,
+   150,   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,
+   nil,   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,
+   nil,   147,   169,   165,   164,   160,   161,   155,   153,   145,
+   168,   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,   713,
+   466,   nil,   nil,   714,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   171,   167,   166,   148,   149,   150,   157,
+   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,
+   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,
+   169,   165,   164,   160,   161,   155,   153,   145,   168,   146,
+   nil,   nil,   174,   nil,   nil,   nil,   nil,   681,   459,   nil,
+   nil,   682,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   171,   167,   166,   148,   149,   150,   157,   154,   156,
+   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,
+   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,
+   164,   160,   161,   155,   153,   145,   168,   146,   nil,   nil,
+   174,   nil,   nil,   nil,   nil,   683,   466,   nil,   nil,   684,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,
+   167,   166,   148,   149,   150,   157,   154,   156,   nil,   nil,
+   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,
+   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,   160,
+   161,   155,   153,   145,   168,   146,   nil,   nil,   174,   nil,
+   nil,   nil,   nil,   748,   459,   nil,   nil,   749,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   167,   166,
+   148,   149,   150,   157,   154,   156,   nil,   nil,   151,   152,
+   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,   nil,
+   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   163,   162,   nil,   147,   169,   165,   164,   160,   161,   155,
+   153,   145,   168,   146,   nil,   nil,   174,   nil,   nil,   nil,
+   nil,   750,   466,   nil,   nil,   751,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   171,   167,   166,   148,   149,
+   150,   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,
+   nil,   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,
+   nil,   147,   169,   165,   164,   160,   161,   155,   153,   145,
+   168,   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,   753,
+   466,   nil,   nil,   754,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   171,   167,   166,   148,   149,   150,   157,
+   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,
+   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,
+   169,   165,   164,   160,   161,   155,   153,   145,   168,   146,
+   nil,   nil,   174,   nil,   nil,   nil,   nil,   507,   459,   nil,
+   nil,   508,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   171,   167,   166,   148,   149,   150,   157,   154,   156,
+   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,
+   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,
+   164,   160,   161,   155,   153,   145,   168,   146,   nil,   nil,
+   174,   nil,   nil,   nil,   nil,   803,   459,   nil,   nil,   804,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,
+   167,   166,   148,   149,   150,   157,   154,   156,   nil,   nil,
+   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,   nil,
+   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,   160,
+   161,   155,   153,   145,   168,   146,   nil,   nil,   174,   nil,
+   nil,   nil,   nil,   806,   466,   nil,   nil,   805,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   171,   167,   166,
+   148,   149,   150,   157,   154,   156,   nil,   nil,   151,   152,
+   nil,   nil,   nil,   172,   173,   158,   159,   nil,   nil,   nil,
+   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   163,   162,   nil,   147,   169,   165,   164,   160,   161,   155,
+   153,   145,   168,   146,   nil,   924,   174,   612,   611,   610,
+   925,   613,   924,   nil,   612,   611,   610,   925,   613,   nil,
+   nil,   621,   nil,   nil,   nil,   nil,   167,   nil,   621,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   617,   nil,   nil,   nil,   nil,   nil,   nil,
+   617,   nil,   626,   625,   629,   628,   nil,   nil,   nil,   626,
+   625,   629,   628,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1058,   466,   nil,   nil,  1057,   nil,   nil,   nil,   622,   nil,
+   nil,   nil,   nil,   170,   171,   622,   166,   148,   149,   150,
+   157,   154,   156,   nil,   nil,   151,   152,   nil,   nil,   nil,
+   172,   173,   158,   159,   nil,   nil,   nil,   nil,   nil,   278,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,
+   147,   169,   165,   164,   160,   161,   155,   153,   145,   168,
+   146,   nil,   nil,   174,   nil,   nil,   nil,   nil,  1061,   459,
+   nil,   nil,  1062,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   171,   167,   166,   148,   149,   150,   157,   154,
+   156,   nil,   nil,   151,   152,   nil,   nil,   nil,   172,   173,
+   158,   159,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   163,   162,   nil,   147,   169,
+   165,   164,   160,   161,   155,   153,   145,   168,   146,   nil,
+   nil,   174,   nil,   nil,   nil,   nil,  1063,   466,   nil,   nil,
+  1064,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
+   171,   167,   166,   148,   149,   150,   157,   154,   156,   nil,
+   nil,   151,   152,   nil,   nil,   nil,   172,   173,   158,   159,
+   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   163,   162,   nil,   147,   169,   165,   164,
+   160,   161,   155,   153,   145,   168,   146,   nil,   924,   174,
+   612,   611,   610,   925,   613,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,   167,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   617,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   626,   625,   629,   628,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   622 ]
+
+racc_action_check = [
+   109,     2,     2,     2,     2,     2,     2,   109,   109,   109,
+     2,     2,   109,   109,   109,     2,   109,     2,     2,     2,
+     2,     2,     2,     2,   109,   349,   109,   109,   109,     2,
+     2,     2,     2,     2,     2,     2,   109,   109,     2,   109,
+   109,   109,   109,   109,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,   688,     2,     2,     2,
+   357,     2,     2,   358,     2,     2,     2,   109,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   350,   710,   109,   109,   109,     2,   109,   109,     2,
+   688,   109,     2,     2,   109,   109,     2,   109,     2,   109,
+     1,   109,     2,   109,   109,   109,   109,   109,   109,   109,
+     2,   109,    65,   109,     3,     2,     2,     2,     2,     2,
+     2,   361,   582,   404,     2,     2,   109,   109,   109,   109,
+   933,   109,     2,   109,   112,     2,     2,     2,   109,   349,
+   109,   112,   112,   112,   349,   938,   112,   112,   112,   710,
+   112,   572,   866,   748,    17,    17,   471,   471,   112,  1061,
+   112,   112,   112,   721,   721,   357,  1062,    29,   358,  1073,
+   112,   112,  1063,   112,   112,   112,   112,   112,    44,    44,
+   765,   765,   705,   234,   710,   711,   404,   710,   749,   750,
+   766,   751,   867,   705,    22,   350,   329,   329,   710,    65,
+   350,   112,   112,   112,   112,   112,   112,   112,   112,   112,
+   112,   112,   112,   112,   112,   690,   407,   112,   112,   112,
+   367,   112,   112,    13,   367,   112,   361,   582,   112,   112,
+    22,   112,    29,   112,   324,   112,   234,   112,   112,   112,
+   112,   112,   112,   112,   933,   112,   471,   112,    15,   933,
+  1063,   572,   711,   721,    29,   750,   572,   751,   748,   938,
+   112,   112,   112,   112,   938,   112,   866,   112,   461,   866,
+   765,   866,   112,  1061,   112,   461,   461,   461,  1061,   407,
+  1062,   461,   461,  1073,   461,  1062,  1063,   711,  1073,   836,
+   711,  1063,    92,   749,   750,   766,   751,   867,    16,   324,
+    92,   711,   690,   235,   461,   461,    27,   461,   461,   461,
+   461,   461,    19,    27,   722,    20,   998,   237,   998,    19,
+   722,   324,   642,   836,   376,   439,   391,   477,    19,   681,
+    18,   376,    25,   365,    40,   461,   461,   461,   461,   461,
+   461,   461,   461,   461,   461,   461,   461,   461,   461,   348,
+   348,   461,   461,   461,   366,   461,   235,    20,    41,   461,
+   593,   593,   461,   682,   803,   713,   393,   461,    20,   461,
+   237,   461,   461,   461,   461,   461,   461,   461,   439,   461,
+   477,   461,   681,   642,   642,   398,   365,   391,   391,   391,
+   753,   841,   642,   365,   461,   461,   462,   461,   365,   461,
+    41,   804,   365,   462,   462,   462,   461,   366,   461,   462,
+   462,    41,   462,   768,   366,   377,   682,   803,   713,   366,
+   365,   462,   377,   366,   768,   713,    43,   393,   393,   393,
+   713,   401,   462,   462,   713,   462,   462,   462,   462,   462,
+    49,   366,    99,   753,   841,   825,   398,   398,   398,   645,
+   753,   841,   713,   909,   804,   753,   137,   768,   768,   753,
+   841,   137,   137,   462,   462,   462,   462,   462,   462,   462,
+   462,   462,   462,   462,   462,   462,   462,   753,   841,   462,
+   462,   462,   378,   462,   100,   561,   409,   462,   561,   378,
+   462,   768,   401,   401,   401,   462,   101,   462,   825,   462,
+   462,   462,   462,   462,   462,   462,   909,   462,   462,   462,
+   645,   645,   389,    50,   389,   389,   389,   389,   389,   645,
+    50,   395,   462,   462,   395,   462,    42,   462,   389,    50,
+   683,   736,   736,   379,   462,   333,   462,   683,   683,   683,
+   379,   971,   683,   683,   683,   102,   683,   409,   409,   409,
+   389,   389,   971,   771,   771,   683,   683,   683,   683,   389,
+   389,   389,   389,  1032,  1032,   135,   683,   683,    42,   683,
+   683,   683,   683,   683,   380,   562,   216,   333,   562,    42,
+   381,   380,   395,   395,   382,   971,   971,   381,   333,   236,
+   898,   382,   898,   898,   898,   389,   898,   683,   683,   683,
+   683,   683,   683,   683,   683,   683,   683,   683,   683,   683,
+   683,   238,   455,   683,   683,   683,   383,   683,   683,   971,
+   239,   683,   243,   383,   683,   683,   277,   683,   898,   683,
+   292,   683,   456,   683,   683,   683,   683,   683,   683,   683,
+   384,   683,   683,   683,   665,   293,   601,   384,   601,   601,
+   601,   601,   601,   233,   455,   296,   683,   683,   683,   683,
+   233,   683,   601,   683,   684,   455,   309,   311,   683,   233,
+   683,   684,   684,   684,   456,   312,   684,   684,   684,   313,
+   684,   319,   316,   322,   601,   456,   665,   323,   498,   316,
+   684,   684,   684,   601,   601,   601,   601,   665,   316,   328,
+   684,   684,   386,   684,   684,   684,   684,   684,  1011,   386,
+  1011,  1011,  1011,   566,  1011,   617,   566,   617,   617,   617,
+   498,   617,   330,     5,   498,   498,   498,   498,     5,   601,
+   334,   684,   684,   684,   684,   684,   684,   684,   684,   684,
+   684,   684,   684,   684,   684,   335,  1011,   684,   684,   684,
+   317,   684,   684,   617,   338,   684,   344,   317,   684,   684,
+   355,   684,   617,   684,   483,   684,   317,   684,   684,   684,
+   684,   684,   684,   684,   303,   684,   356,   684,   762,   303,
+   762,   762,   762,   762,   762,   360,   362,   371,    47,    47,
+   684,   684,   684,   684,   762,   684,   483,   684,   805,   397,
+   483,   483,   684,   354,   684,   805,   805,   805,   354,   400,
+   403,   805,   805,   318,   805,   780,   762,   780,   780,   780,
+   318,   780,   484,    47,    47,   762,   762,   762,   762,   318,
+   854,   759,   406,   854,   805,   805,   759,   805,   805,   805,
+   805,   805,   871,   429,   320,   431,   897,   871,   897,   897,
+   897,   320,   897,   780,   484,   434,   436,   450,   484,   484,
+   320,   762,   780,   453,   454,   805,   805,   805,   805,   805,
+   805,   805,   805,   805,   805,   805,   805,   805,   805,   336,
+   499,   805,   805,   805,   897,   805,   336,  1003,   463,   805,
+  1003,   876,   805,   897,   473,   336,   876,   805,   485,   805,
+   486,   805,   805,   805,   805,   805,   805,   805,   487,   805,
+   488,   805,   499,   504,   359,   369,   499,   499,   499,   499,
+   511,   359,   369,   515,   805,   805,   806,   805,   530,   805,
+   359,   369,   531,   806,   806,   806,   805,   532,   805,   806,
+   806,   763,   806,   763,   763,   763,   763,   763,   438,   535,
+   784,   806,   784,   784,   784,   438,   784,   763,   537,   542,
+   546,   556,   806,   806,   438,   806,   806,   806,   806,   806,
+  1012,   541,  1012,  1012,  1012,   557,  1012,   558,   541,   763,
+   791,   791,   563,   564,   791,   791,   791,   541,   763,   763,
+   763,   763,   567,   806,   806,   806,   806,   806,   806,   806,
+   806,   806,   806,   806,   806,   806,   806,   585,  1012,   806,
+   806,   806,   984,   806,   585,   569,   573,   806,   574,   984,
+   806,   575,   576,   585,   763,   806,   595,   806,   984,   806,
+   806,   806,   806,   806,   806,   806,   603,   806,   806,   806,
+   604,   606,   772,   989,   772,   772,   772,   772,   772,   714,
+   989,   607,   806,   806,   608,   806,   714,   806,   772,   989,
+    30,   714,   615,   754,   806,   714,   806,    30,    30,    30,
+   754,   623,    30,    30,    30,   754,    30,   503,   627,   754,
+   772,   630,   649,   652,   658,    30,    30,    30,   990,   772,
+   772,   772,   772,   503,   503,   990,    30,    30,   666,    30,
+    30,    30,    30,    30,   990,   671,   677,   685,   686,   503,
+   991,   503,   689,   503,   503,   503,   503,   991,   693,   503,
+   695,   503,   697,   699,   707,   772,   991,    30,    30,    30,
+    30,    30,    30,    30,    30,    30,    30,    30,    30,    30,
+    30,   709,   993,    30,    30,    30,  1023,   712,    30,   993,
+    30,    30,   715,  1023,    30,    30,   716,    30,   993,    30,
+   719,    30,  1023,    30,    30,    30,    30,    30,    30,    30,
+   720,    30,    30,    30,  1031,   738,   954,   744,   954,   954,
+   954,  1031,   954,   747,   756,   760,    30,    30,    31,    30,
+  1031,    30,   767,   782,   783,    31,    31,    31,    30,   786,
+    31,    31,    31,   774,    31,   774,   774,   774,   774,   774,
+  1064,   798,   800,   802,    31,    31,   810,  1064,   834,   774,
+   840,   850,  1064,   851,    31,    31,  1064,    31,    31,    31,
+    31,    31,  1040,   855,  1040,  1040,  1040,   861,  1040,   868,
+   870,   774,     9,     9,     9,     9,     9,   874,   875,   882,
+   774,   774,   774,   774,   883,    31,    31,    31,    31,    31,
+    31,    31,    31,    31,    31,    31,    31,    31,    31,   884,
+   888,    31,    31,    31,   889,   891,    31,   892,    31,    31,
+   894,   896,    31,    31,   906,    31,   774,    31,   908,    31,
+   915,    31,    31,    31,    31,    31,    31,    31,   916,    31,
+   918,    31,   307,   307,   307,   307,   307,   343,   343,   343,
+   343,   343,   919,   920,    31,    31,    60,    31,   922,    31,
+   923,   924,   951,    60,    60,    60,    31,   952,    60,    60,
+    60,   776,    60,   776,   776,   776,   776,   776,   953,   968,
+   969,   982,    60,    60,    60,   985,   987,   776,   992,   999,
+  1007,  1008,    60,    60,  1009,    60,    60,    60,    60,    60,
+   529,   529,   529,   529,   529,  1010,  1013,  1016,  1017,   776,
+  1018,  1019,  1021,  1027,  1038,  1046,  1057,  1058,  1060,  1068,
+   776,   776,  1069,    60,    60,    60,    60,    60,    60,    60,
+    60,    60,    60,    60,    60,    60,    60,  1070,  1071,    60,
+    60,    60,  1072,  1080,    60,   nil,   nil,    60,   nil,   nil,
+    60,    60,   nil,    60,   776,    60,   nil,    60,   nil,    60,
+    60,    60,    60,    60,    60,    60,   nil,    60,   nil,    60,
+   829,   nil,   829,   829,   829,   829,   829,   nil,   nil,   nil,
+   nil,   nil,    60,    60,    60,    60,   829,    60,   457,    60,
+   nil,   nil,   nil,   nil,    60,   457,   457,   457,   nil,   nil,
+   457,   457,   457,   nil,   457,   553,   nil,   nil,   829,   nil,
+   nil,   nil,   nil,   457,   457,   457,   nil,   829,   829,   829,
+   829,   553,   553,   nil,   457,   457,   nil,   457,   457,   457,
+   457,   457,   nil,   nil,   nil,   nil,   nil,   553,   nil,   553,
+   nil,   553,   553,   553,   553,   829,   nil,   553,   nil,   553,
+   nil,   nil,   nil,   829,   nil,   457,   457,   457,   457,   457,
+   457,   457,   457,   457,   457,   457,   457,   457,   457,   nil,
+   nil,   457,   457,   457,   nil,   nil,   457,   nil,   457,   457,
+   nil,   nil,   457,   457,   nil,   457,   nil,   457,   nil,   457,
+   nil,   457,   457,   457,   457,   457,   457,   457,   nil,   457,
+   457,   457,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   457,   457,   466,   457,   nil,   457,
+   nil,   nil,   nil,   466,   466,   466,   457,   nil,   466,   466,
+   466,   957,   466,   957,   957,   957,   957,   957,   nil,   nil,
+   nil,   466,   466,   466,   466,   nil,   nil,   957,   nil,   nil,
+   nil,   nil,   466,   466,   nil,   466,   466,   466,   466,   466,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   957,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   957,   957,
+   957,   957,   nil,   466,   466,   466,   466,   466,   466,   466,
+   466,   466,   466,   466,   466,   466,   466,   nil,   nil,   466,
+   466,   466,   nil,   nil,   466,   nil,   nil,   466,   nil,   nil,
+   466,   466,   nil,   466,   957,   466,   nil,   466,   nil,   466,
+   466,   466,   466,   466,   466,   466,   nil,   466,   466,   466,
+   959,   nil,   959,   959,   959,   959,   959,   nil,   nil,   nil,
+   nil,   nil,   466,   466,   466,   466,   959,   466,   467,   466,
+   nil,   nil,   nil,   nil,   466,   467,   467,   467,   nil,   nil,
+   467,   467,   467,   nil,   467,   489,   nil,   nil,   959,   nil,
+   nil,   nil,   nil,   467,   467,   467,   467,   nil,   nil,   959,
+   959,   489,   489,   nil,   467,   467,   nil,   467,   467,   467,
+   467,   467,   nil,   nil,   nil,   nil,   nil,   489,   nil,   489,
+   nil,   489,   489,   489,   489,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   959,   nil,   467,   467,   467,   467,   467,
+   467,   467,   467,   467,   467,   467,   467,   467,   467,   nil,
+   nil,   467,   467,   467,   nil,   nil,   467,   nil,   nil,   467,
+   nil,   nil,   467,   467,   nil,   467,   nil,   467,   nil,   467,
+   nil,   467,   467,   467,   467,   467,   467,   467,   nil,   467,
+   467,   467,   961,   nil,   961,   961,   961,   961,   961,   nil,
+   nil,   nil,   nil,   nil,   467,   467,   467,   467,   961,   467,
+   506,   467,   nil,   nil,   nil,   nil,   467,   506,   506,   506,
+   nil,   nil,   506,   506,   506,   nil,   506,   nil,   nil,   nil,
+   961,   nil,   nil,   nil,   nil,   506,   506,   nil,   nil,   nil,
+   nil,   961,   961,   nil,   nil,   nil,   506,   506,   nil,   506,
+   506,   506,   506,   506,   963,   nil,   963,   963,   963,   963,
+   963,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   963,   nil,   nil,   nil,   nil,   961,   nil,   481,   481,   481,
+   481,   481,   481,   481,   481,   481,   481,   481,   506,   481,
+   481,   nil,   963,   481,   481,   506,   nil,   nil,   nil,   nil,
+   506,   506,   nil,   963,   963,   nil,   nil,   nil,   nil,   481,
+   nil,   481,   nil,   481,   481,   481,   481,   481,   481,   481,
+   nil,   481,   506,   506,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   506,   963,   nil,   nil,
+   nil,   506,    36,    36,    36,    36,    36,    36,   506,   nil,
+   nil,    36,    36,   nil,   nil,   nil,    36,   nil,    36,    36,
+    36,    36,    36,    36,    36,   nil,   nil,   nil,   nil,   nil,
+    36,    36,    36,    36,    36,    36,    36,   nil,   nil,    36,
+   nil,   nil,   nil,   nil,   443,    36,    36,    36,    36,    36,
+    36,    36,    36,    36,    36,    36,    36,   nil,    36,    36,
+    36,   nil,    36,    36,   nil,    36,    36,    36,   443,   443,
+   443,   443,   443,   443,   443,   443,   443,   443,   443,   nil,
+   443,   443,   nil,   nil,   443,   443,   nil,    36,   nil,   nil,
+    36,   nil,   nil,    36,    36,   nil,   nil,    36,   nil,    36,
+   443,   nil,   443,    36,   443,   443,   443,   443,   443,   443,
+   443,    36,   443,   nil,   nil,   nil,    36,    36,    36,    36,
+    36,    36,   nil,   nil,   nil,    36,    36,   nil,   443,   nil,
+   443,   nil,   nil,    36,   nil,   nil,    36,    36,    36,   218,
+   218,   218,   218,   218,   218,   nil,   nil,   nil,   218,   218,
+   nil,   nil,   nil,   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,   449,   218,   218,   218,   218,   218,   218,   218,   218,
+   218,   218,   218,   218,   nil,   218,   218,   218,   nil,   218,
+   218,   nil,   218,   218,   218,   449,   449,   449,   449,   449,
+   449,   449,   449,   449,   449,   449,   nil,   449,   449,   nil,
+   nil,   449,   449,   nil,   218,   nil,   nil,   218,   nil,   nil,
+   218,   218,   nil,   nil,   218,   nil,   218,   449,   nil,   449,
+   218,   449,   449,   449,   449,   449,   449,   449,   218,   449,
+   nil,   nil,   nil,   218,   218,   218,   218,   218,   218,   nil,
+   nil,   nil,   218,   218,   nil,   449,   nil,   nil,   nil,   nil,
+   218,   nil,   nil,   218,   218,   218,   242,   242,   242,   242,
+   242,   242,   nil,   nil,   nil,   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,   242,
+   242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
+   242,   nil,   242,   242,   242,   nil,   242,   242,   nil,   242,
+   242,   242,    24,    24,    24,    24,    24,    24,    24,    24,
+    24,    24,    24,   nil,    24,    24,   nil,   nil,    24,    24,
+   nil,   242,   nil,   nil,   242,   nil,   nil,   242,   242,   nil,
+   nil,   242,   nil,   242,    24,   nil,    24,   242,    24,    24,
+    24,    24,    24,    24,    24,   242,    24,   nil,   nil,   nil,
+   242,   242,   242,   242,   242,   242,   nil,   nil,   nil,   242,
+   242,   nil,    24,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   242,   242,   242,   310,   310,   310,   310,   310,   310,   nil,
+   nil,   nil,   310,   310,   nil,   nil,   nil,   310,   nil,   310,
+   310,   310,   310,   310,   310,   310,   nil,   nil,   nil,   nil,
+   nil,   310,   310,   310,   310,   310,   310,   310,   nil,   nil,
+   310,   nil,   nil,   nil,   nil,   nil,   310,   310,   310,   310,
+   310,   310,   310,   310,   310,   310,   310,   310,   nil,   310,
+   310,   310,   nil,   310,   310,   nil,   310,   310,   310,   290,
+   290,   290,   290,   290,   290,   290,   290,   290,   290,   290,
+   nil,   290,   290,   nil,   nil,   290,   290,   nil,   310,   nil,
+   nil,   310,   nil,   nil,   310,   310,   nil,   nil,   310,   nil,
+   310,   290,   nil,   290,   310,   290,   290,   290,   290,   290,
+   290,   290,   310,   290,   nil,   nil,   nil,   310,   310,   310,
+   310,   310,   310,   nil,   nil,   nil,   310,   310,   nil,   290,
+   nil,   nil,   nil,   nil,   310,   nil,   nil,   310,   310,   310,
+   315,   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,
+   315,   nil,   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,   315,   315,   315,   315,   315,   315,   315,
+   315,   315,   315,   315,   315,   nil,   315,   315,   315,   nil,
+   315,   315,   nil,   315,   315,   315,   502,   502,   502,   502,
+   502,   502,   502,   502,   502,   502,   502,   nil,   502,   502,
+   nil,   nil,   502,   502,   nil,   315,   nil,   nil,   315,   nil,
+   nil,   315,   315,   nil,   nil,   315,   nil,   315,   502,   nil,
+   502,   315,   502,   502,   502,   502,   502,   502,   502,   315,
+   502,   nil,   nil,   nil,   315,   315,   315,   315,   315,   315,
+   nil,   nil,   nil,   315,   315,   502,   502,   nil,   nil,   nil,
+   nil,   315,   nil,   nil,   315,   315,   315,   342,   342,   342,
+   342,   342,   342,   nil,   nil,   nil,   342,   342,   nil,   nil,
+   nil,   342,   nil,   342,   342,   342,   342,   342,   342,   342,
+   nil,   nil,   nil,   nil,   nil,   342,   342,   342,   342,   342,
+   342,   342,   nil,   nil,   342,   nil,   nil,   nil,   nil,   nil,
+   342,   342,   342,   342,   342,   342,   342,   342,   342,   342,
+   342,   342,   nil,   342,   342,   342,   nil,   342,   342,   nil,
+   342,   342,   342,   554,   554,   554,   554,   554,   554,   554,
+   554,   554,   554,   554,   nil,   554,   554,   nil,   nil,   554,
+   554,   nil,   342,   nil,   nil,   342,   nil,   nil,   342,   342,
+   nil,   nil,   342,   nil,   342,   554,   nil,   554,   342,   554,
+   554,   554,   554,   554,   554,   554,   342,   554,   nil,   nil,
+   nil,   342,   342,   342,   342,   342,   342,   nil,   nil,   nil,
+   342,   342,   nil,   554,   nil,   nil,   nil,   nil,   342,   nil,
+   nil,   342,   342,   342,   352,   352,   352,   352,   352,   352,
+   nil,   nil,   nil,   352,   352,   nil,   nil,   nil,   352,   nil,
+   352,   352,   352,   352,   352,   352,   352,   nil,   nil,   nil,
+   nil,   nil,   352,   352,   352,   352,   352,   352,   352,   nil,
+   nil,   352,   nil,   nil,   nil,   nil,   nil,   352,   352,   352,
+   352,   352,   352,   352,   352,   352,   352,   352,   352,   nil,
+   352,   352,   352,   nil,   352,   352,   nil,   352,   352,   352,
+   807,   807,   807,   807,   807,   807,   807,   807,   807,   807,
+   807,   nil,   807,   807,   nil,   nil,   807,   807,   nil,   352,
+   nil,   nil,   352,   nil,   nil,   352,   352,   nil,   nil,   352,
+   nil,   352,   807,   nil,   807,   352,   807,   807,   807,   807,
+   807,   807,   807,   352,   807,   nil,   nil,   nil,   352,   352,
+   352,   352,   352,   352,   nil,   nil,   nil,   352,   352,   nil,
+   807,   nil,   nil,   nil,   nil,   352,   nil,   nil,   352,   352,
+   352,   353,   353,   353,   353,   353,   353,   nil,   nil,   nil,
+   353,   353,   nil,   nil,   nil,   353,   nil,   353,   353,   353,
+   353,   353,   353,   353,   nil,   nil,   nil,   nil,   nil,   353,
+   353,   353,   353,   353,   353,   353,   nil,   nil,   353,   nil,
+   nil,   nil,   nil,   nil,   353,   353,   353,   353,   353,   353,
+   353,   353,   353,   353,   353,   353,   nil,   353,   353,   353,
+   nil,   353,   353,   nil,   353,   353,   353,   914,   914,   914,
+   914,   914,   914,   914,   914,   914,   914,   914,   nil,   914,
+   914,   nil,   nil,   914,   914,   nil,   353,   nil,   nil,   353,
+   nil,   nil,   353,   353,   nil,   nil,   353,   nil,   353,   914,
+   nil,   914,   353,   914,   914,   914,   914,   914,   914,   914,
+   353,   914,   nil,   nil,   nil,   353,   353,   353,   353,   353,
+   353,   nil,   nil,   nil,   353,   353,   nil,   914,   nil,   nil,
+   nil,   nil,   353,   nil,   nil,   353,   353,   353,   568,   568,
+   568,   568,   568,   568,   nil,   nil,   nil,   568,   568,   nil,
+   nil,   nil,   568,   nil,   568,   568,   568,   568,   568,   568,
+   568,   nil,   nil,   nil,   nil,   nil,   568,   568,   568,   568,
+   568,   568,   568,   nil,   nil,   568,   nil,   nil,   nil,   nil,
+   nil,   568,   568,   568,   568,   568,   568,   568,   568,   568,
+   568,   568,   568,   nil,   568,   568,   568,   nil,   568,   568,
+   nil,   568,   568,   568,   482,   482,   482,   482,   482,   482,
+   482,   482,   482,   482,   482,   nil,   482,   482,   nil,   nil,
+   482,   482,   nil,   568,   nil,   nil,   568,   nil,   nil,   568,
+   568,   nil,   nil,   568,   nil,   568,   482,   nil,   482,   568,
+   482,   482,   482,   482,   482,   482,   482,   568,   482,   nil,
+   nil,   nil,   568,   568,   568,   568,   568,   568,   nil,   nil,
+   nil,   568,   568,   nil,   nil,   nil,   nil,   nil,   nil,   568,
+   nil,   nil,   568,   568,   568,   571,   571,   571,   571,   571,
+   571,   nil,   nil,   nil,   571,   571,   nil,   nil,   nil,   571,
+   nil,   571,   571,   571,   571,   571,   571,   571,   nil,   nil,
+   nil,   nil,   nil,   571,   571,   571,   571,   571,   571,   571,
+   nil,   nil,   571,   nil,   nil,   nil,   nil,   nil,   571,   571,
+   571,   571,   571,   571,   571,   571,   571,   571,   571,   571,
+   nil,   571,   571,   571,   nil,   571,   571,   nil,   571,   571,
+   571,   492,   492,   492,   492,   492,   492,   492,   nil,   nil,
+   492,   492,   nil,   nil,   nil,   nil,   nil,   492,   492,   nil,
+   571,   nil,   nil,   571,   nil,   nil,   571,   571,   nil,   nil,
+   571,   nil,   571,   492,   nil,   492,   571,   492,   492,   492,
+   492,   492,   492,   492,   571,   492,   nil,   nil,   nil,   571,
+   571,   571,   571,   571,   571,   nil,   nil,   nil,   571,   571,
+   nil,   nil,   nil,   nil,   nil,   nil,   571,   nil,   nil,   571,
+   571,   571,   594,   594,   594,   594,   594,   594,   nil,   nil,
+   nil,   594,   594,   nil,   nil,   nil,   594,   nil,   594,   594,
+   594,   594,   594,   594,   594,   nil,   nil,   nil,   nil,   nil,
+   594,   594,   594,   594,   594,   594,   594,   nil,   nil,   594,
+   nil,   nil,   nil,   nil,   nil,   594,   594,   594,   594,   594,
+   594,   594,   594,   594,   594,   594,   594,   nil,   594,   594,
+   594,   nil,   594,   594,   nil,   594,   594,   594,   493,   493,
+   493,   493,   493,   493,   493,   nil,   nil,   493,   493,   nil,
+   nil,   nil,   nil,   nil,   493,   493,   nil,   594,   nil,   nil,
+   594,   nil,   nil,   594,   594,   nil,   nil,   594,   nil,   594,
+   493,   nil,   493,   594,   493,   493,   493,   493,   493,   493,
+   493,   594,   493,   nil,   nil,   nil,   594,   594,   594,   594,
+   594,   594,   nil,   nil,   nil,   594,   594,   nil,   nil,   nil,
+   nil,   nil,   nil,   594,   nil,   nil,   594,   594,   594,   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,   494,   494,   494,   494,   494,
+   494,   494,   nil,   nil,   494,   494,   nil,   nil,   nil,   nil,
+   nil,   494,   494,   nil,   654,   nil,   nil,   654,   nil,   nil,
+   654,   654,   nil,   nil,   654,   nil,   654,   494,   nil,   494,
+   654,   494,   494,   494,   494,   494,   494,   494,   654,   494,
+   nil,   nil,   nil,   654,   654,   654,   654,   654,   654,   nil,
+   nil,   nil,   654,   654,   nil,   nil,   nil,   nil,   nil,   nil,
+   654,   nil,   nil,   654,   654,   654,   752,   752,   752,   752,
+   752,   752,   nil,   nil,   nil,   752,   752,   nil,   nil,   nil,
+   752,   nil,   752,   752,   752,   752,   752,   752,   752,   nil,
+   nil,   nil,   nil,   nil,   752,   752,   752,   752,   752,   752,
+   752,   nil,   nil,   752,   nil,   nil,   nil,   nil,   nil,   752,
+   752,   752,   752,   752,   752,   752,   752,   752,   752,   752,
+   752,   nil,   752,   752,   752,   nil,   752,   752,   nil,   752,
+   752,   752,   495,   495,   495,   495,   495,   495,   495,   nil,
+   nil,   495,   495,   nil,   nil,   nil,   nil,   nil,   495,   495,
+   nil,   752,   nil,   nil,   752,   nil,   nil,   752,   752,   nil,
+   nil,   752,   nil,   752,   495,   nil,   495,   752,   495,   495,
+   495,   495,   495,   495,   495,   752,   495,   nil,   nil,   nil,
+   752,   752,   752,   752,   752,   752,   nil,   nil,   nil,   752,
+   752,   nil,   nil,   nil,   nil,   nil,   nil,   752,   nil,   nil,
+   752,   752,   752,   757,   757,   757,   757,   757,   757,   nil,
+   nil,   nil,   757,   757,   nil,   nil,   nil,   757,   nil,   757,
+   757,   757,   757,   757,   757,   757,   nil,   nil,   nil,   nil,
+   nil,   757,   757,   757,   757,   757,   757,   757,   nil,   nil,
+   757,   nil,   nil,   nil,   nil,   nil,   757,   757,   757,   757,
+   757,   757,   757,   757,   757,   757,   757,   757,   nil,   757,
+   757,   757,   nil,   757,   757,   nil,   757,   757,   757,   496,
+   496,   496,   496,   496,   496,   496,   nil,   nil,   496,   496,
+   nil,   nil,   nil,   nil,   nil,   496,   496,   nil,   757,   nil,
+   nil,   757,   nil,   nil,   757,   757,   nil,   nil,   757,   nil,
+   757,   496,   nil,   496,   757,   496,   496,   496,   496,   496,
+   496,   496,   757,   496,   nil,   nil,   nil,   757,   757,   757,
+   757,   757,   757,   nil,   nil,   nil,   757,   757,   nil,   nil,
+   nil,   nil,   nil,   nil,   757,   nil,   nil,   757,   757,   757,
+   761,   761,   761,   761,   761,   761,   nil,   nil,   nil,   761,
+   761,   nil,   nil,   nil,   761,   nil,   761,   761,   761,   761,
+   761,   761,   761,   nil,   nil,   nil,   nil,   nil,   761,   761,
+   761,   761,   761,   761,   761,   nil,   nil,   761,   nil,   nil,
+   nil,   nil,   nil,   761,   761,   761,   761,   761,   761,   761,
+   761,   761,   761,   761,   761,   nil,   761,   761,   761,   nil,
+   761,   761,   nil,   761,   761,   761,   497,   497,   497,   497,
+   497,   497,   497,   nil,   nil,   497,   497,   nil,   nil,   nil,
+   nil,   nil,   497,   497,   nil,   761,   nil,   nil,   761,   nil,
+   nil,   761,   761,   nil,   nil,   761,   nil,   761,   497,   nil,
+   497,   761,   497,   497,   497,   497,   497,   497,   497,   761,
+   497,   nil,   nil,   nil,   761,   761,   761,   761,   761,   761,
+   nil,   nil,   nil,   761,   761,   nil,   nil,   nil,   nil,   nil,
+   nil,   761,   nil,   nil,   761,   761,   761,   792,   792,   792,
+   792,   792,   792,   nil,   nil,   nil,   792,   792,   nil,   nil,
+   nil,   792,   nil,   792,   792,   792,   792,   792,   792,   792,
+   nil,   nil,   nil,   nil,   nil,   792,   792,   792,   792,   792,
+   792,   792,   nil,   nil,   792,   nil,   nil,   nil,   nil,   nil,
+   792,   792,   792,   792,   792,   792,   792,   792,   792,   792,
+   792,   792,   nil,   792,   792,   792,   nil,   792,   792,   nil,
+   792,   792,   792,   500,   500,   500,   500,   500,   500,   500,
+   nil,   nil,   500,   500,   nil,   nil,   nil,   nil,   nil,   500,
+   500,   nil,   792,   nil,   nil,   792,   nil,   nil,   792,   792,
+   nil,   nil,   792,   nil,   792,   500,   nil,   500,   792,   500,
+   500,   500,   500,   500,   500,   500,   792,   500,   nil,   nil,
+   nil,   792,   792,   792,   792,   792,   792,   nil,   nil,   nil,
+   792,   792,   nil,   nil,   nil,   nil,   nil,   nil,   792,   nil,
+   nil,   792,   792,   792,   831,   831,   831,   831,   831,   831,
+   nil,   nil,   nil,   831,   831,   nil,   nil,   nil,   831,   nil,
+   831,   831,   831,   831,   831,   831,   831,   nil,   nil,   nil,
+   nil,   nil,   831,   831,   831,   831,   831,   831,   831,   nil,
+   nil,   831,   nil,   nil,   nil,   nil,   nil,   831,   831,   831,
+   831,   831,   831,   831,   831,   831,   831,   831,   831,   nil,
+   831,   831,   831,   nil,   831,   831,   nil,   831,   831,   831,
+   501,   501,   501,   501,   501,   501,   501,   501,   nil,   501,
+   501,   nil,   nil,   nil,   nil,   nil,   501,   501,   nil,   831,
+   nil,   nil,   831,   nil,   nil,   831,   831,   nil,   nil,   831,
+   nil,   831,   501,   nil,   501,   831,   501,   501,   501,   501,
+   501,   501,   501,   831,   501,   nil,   nil,   nil,   831,   831,
+   831,   831,   831,   831,   nil,   nil,   nil,   831,   831,   nil,
+   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   831,   831,
+   831,   848,   848,   848,   848,   848,   848,   nil,   nil,   nil,
+   848,   848,   nil,   nil,   nil,   848,   nil,   848,   848,   848,
+   848,   848,   848,   848,   nil,   nil,   nil,   nil,   nil,   848,
+   848,   848,   848,   848,   848,   848,   nil,   nil,   848,   nil,
+   nil,   nil,   nil,   nil,   848,   848,   848,   848,   848,   848,
+   848,   848,   848,   848,   848,   848,   nil,   848,   848,   848,
+   nil,   848,   848,   nil,   848,   848,   848,   490,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   490,   490,   nil,   848,   nil,   nil,   848,
+   nil,   491,   848,   848,   nil,   nil,   848,   nil,   848,   490,
+   nil,   490,   848,   490,   490,   490,   490,   491,   491,   nil,
+   848,   nil,   nil,   nil,   nil,   848,   848,   848,   848,   848,
+   848,   nil,   nil,   491,   848,   848,   nil,   491,   491,   491,
+   491,   nil,   848,   nil,   nil,   848,   848,   848,   860,   860,
+   860,   860,   860,   860,   nil,   nil,   nil,   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,   860,   860,   860,   860,   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,   860,   nil,   nil,   nil,   860,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   860,   nil,   nil,
+   nil,   nil,   860,   860,   860,   860,   860,   860,   nil,   nil,
+   nil,   860,   860,   nil,   nil,   nil,   nil,   nil,   nil,   860,
+   nil,   nil,   860,   860,   860,   880,   880,   880,   880,   880,
+   880,   nil,   nil,   nil,   880,   880,   nil,   nil,   nil,   880,
+   nil,   880,   880,   880,   880,   880,   880,   880,   nil,   nil,
+   nil,   nil,   nil,   880,   880,   880,   880,   880,   880,   880,
+   nil,   nil,   880,   nil,   nil,   nil,   nil,   nil,   880,   880,
+   880,   880,   880,   880,   880,   880,   880,   880,   880,   880,
+   nil,   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,   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   880,   nil,   nil,   880,
+   880,   880,   881,   881,   881,   881,   881,   881,   nil,   nil,
+   nil,   881,   881,   nil,   nil,   nil,   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,   881,   881,   881,   881,   881,
+   881,   881,   881,   881,   881,   881,   881,   nil,   881,   881,
+   881,   nil,   881,   881,   nil,   881,   881,   881,   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,   881,   nil,   nil,   881,   nil,   881,
+   nil,   nil,   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,   881,   881,   930,
+   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,   930,   930,   930,   930,   930,   930,
+   930,   930,   930,   930,   nil,   930,   930,   930,   nil,   930,
+   930,   nil,   930,   930,   930,   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,   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,   930,   930,   931,   931,   931,   931,
+   931,   931,   nil,   nil,   nil,   931,   931,   nil,   nil,   nil,
+   931,   nil,   931,   931,   931,   931,   931,   931,   931,   nil,
+   nil,   nil,   nil,   nil,   931,   931,   931,   931,   931,   931,
+   931,   nil,   nil,   931,   nil,   nil,   nil,   nil,   nil,   931,
+   931,   931,   931,   931,   931,   931,   931,   931,   931,   931,
+   931,   nil,   931,   931,   931,   nil,   931,   931,   nil,   931,
+   931,   931,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   931,   nil,   nil,   931,   nil,   nil,   931,   931,   nil,
+   nil,   931,   nil,   931,   nil,   nil,   nil,   931,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   931,   nil,   nil,   nil,   nil,
+   931,   931,   931,   931,   931,   931,   nil,   nil,   nil,   931,
+   931,   nil,   nil,   nil,   nil,   nil,   nil,   931,   nil,   nil,
+   931,   931,   931,   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,   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,   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,   nil,   nil,   nil,   943,   nil,   nil,   943,   943,   943,
+   947,   947,   947,   947,   947,   947,   nil,   nil,   nil,   947,
+   947,   nil,   nil,   nil,   947,   nil,   947,   947,   947,   947,
+   947,   947,   947,   nil,   nil,   nil,   nil,   nil,   947,   947,
+   947,   947,   947,   947,   947,   nil,   nil,   947,   nil,   nil,
+   nil,   nil,   nil,   947,   947,   947,   947,   947,   947,   947,
+   947,   947,   947,   947,   947,   nil,   947,   947,   947,   nil,
+   947,   947,   nil,   947,   947,   947,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   947,   nil,   nil,   947,   nil,
+   nil,   947,   947,   nil,   nil,   947,   nil,   947,   nil,   nil,
+   nil,   947,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   947,
+   nil,   nil,   nil,   nil,   947,   947,   947,   947,   947,   947,
+   nil,   nil,   nil,   947,   947,   nil,   nil,   nil,   nil,   nil,
+   nil,   947,   nil,   nil,   947,   947,   947,   988,   988,   988,
+   988,   988,   988,   nil,   nil,   nil,   988,   988,   nil,   nil,
+   nil,   988,   nil,   988,   988,   988,   988,   988,   988,   988,
+   nil,   nil,   nil,   nil,   nil,   988,   988,   988,   988,   988,
+   988,   988,   nil,   nil,   988,   nil,   nil,   nil,   nil,   nil,
+   988,   988,   988,   988,   988,   988,   988,   988,   988,   988,
+   988,   988,   nil,   988,   988,   988,   nil,   988,   988,   nil,
+   988,   988,   988,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   988,   nil,   nil,   988,   nil,   nil,   988,   988,
+   nil,   nil,   988,   nil,   988,   nil,   nil,   nil,   988,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   988,   nil,   nil,   nil,
+   nil,   988,   988,   988,   988,   988,   988,   nil,   nil,   nil,
+   988,   988,   nil,   nil,   nil,   nil,   nil,   nil,   988,   nil,
+   nil,   988,   988,   988,   995,   995,   995,   995,   995,   995,
+   nil,   nil,   nil,   995,   995,   nil,   nil,   nil,   995,   nil,
+   995,   995,   995,   995,   995,   995,   995,   nil,   nil,   nil,
+   nil,   nil,   995,   995,   995,   995,   995,   995,   995,   nil,
+   nil,   995,   nil,   nil,   nil,   nil,   nil,   995,   995,   995,
+   995,   995,   995,   995,   995,   995,   995,   995,   995,   nil,
+   995,   995,   995,   nil,   995,   995,   nil,   995,   995,   995,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   995,
+   nil,   nil,   995,   nil,   nil,   995,   995,   nil,   nil,   995,
+   nil,   995,   nil,   nil,   nil,   995,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   995,   nil,   nil,   nil,   nil,   995,   995,
+   995,   995,   995,   995,   nil,   nil,   nil,   995,   995,   nil,
+   nil,   nil,   nil,   nil,   nil,   995,   nil,   nil,   995,   995,
+   995,  1000,  1000,  1000,  1000,  1000,  1000,   nil,   nil,   nil,
+  1000,  1000,   nil,   nil,   nil,  1000,   nil,  1000,  1000,  1000,
+  1000,  1000,  1000,  1000,   nil,   nil,   nil,   nil,   nil,  1000,
+  1000,  1000,  1000,  1000,  1000,  1000,   nil,   nil,  1000,   nil,
+   nil,   nil,   nil,   nil,  1000,  1000,  1000,  1000,  1000,  1000,
+  1000,  1000,  1000,  1000,  1000,  1000,   nil,  1000,  1000,  1000,
+   nil,  1000,  1000,   nil,  1000,  1000,  1000,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1000,   nil,   nil,  1000,
+   nil,   nil,  1000,  1000,   nil,   nil,  1000,   nil,  1000,   nil,
+   nil,   nil,  1000,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1000,   nil,   nil,   nil,   nil,  1000,  1000,  1000,  1000,  1000,
+  1000,   nil,   nil,   nil,  1000,  1000,   nil,   nil,   nil,   nil,
+   nil,   nil,  1000,   nil,   nil,  1000,  1000,  1000,     8,     8,
+     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,   nil,
+   nil,     8,   nil,     8,     8,     8,     8,     8,     8,     8,
+   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,     8,
+     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,   nil,
+     8,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,     8,   nil,     8,     8,     8,   nil,     8,     8,   nil,
+     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,     8,
+   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,   nil,
+     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,
+   nil,     8,     8,     8,    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,
+   nil,    23,    23,    23,    23,    23,    23,    23,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+    23,    23,    23,    23,    23,    23,    23,    23,   nil,    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,   979,    23,   979,
+   979,   979,   979,   979,    23,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   979,   nil,   nil,   nil,    23,    23,    23,
+    23,    23,    23,   nil,   nil,   nil,    23,    23,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   979,   nil,    23,    23,    23,
+    32,    32,    32,   nil,    32,   nil,   979,   979,    32,    32,
+   nil,   nil,   nil,    32,   nil,    32,    32,    32,    32,    32,
+    32,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,    32,
+    32,    32,    32,    32,   nil,   nil,    32,   nil,   nil,   nil,
+   979,   nil,   nil,    32,   nil,   nil,    32,    32,    32,    32,
+    32,    32,    32,    32,    32,    32,    32,    32,   nil,    32,
+    32,   nil,    32,    32,    32,   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,
+    32,    32,   nil,   nil,    32,   nil,    32,   nil,    32,   nil,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,   nil,
+   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+    32,   nil,    32,    32,    32,    32,    33,    33,    33,   nil,
+    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,
+   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
+   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
+   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,
+   nil,   nil,    33,    33,    33,    33,    33,    33,    33,    33,
+    33,    33,    33,    33,   nil,    33,    33,   nil,    33,    33,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,
+    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
+    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,
+   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,
+    33,    33,    34,    34,    34,   nil,    34,   nil,   nil,   nil,
+    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,    34,    34,    34,    34,
+   nil,    34,    34,   nil,    34,    34,    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,
+    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,    34,    34,    34,    34,    34,
+    34,   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,    34,   nil,    34,    34,    34,    34,    37,    37,
+    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,   nil,
+   nil,    37,   nil,    37,    37,    37,    37,    37,    37,    37,
+   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
+    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,
+   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,    37,
+    37,    37,   nil,    37,    37,    37,   nil,    37,    37,   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,    37,   nil,   nil,    37,    37,
+   nil,   nil,    37,   nil,    37,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,
+    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
+   nil,    37,    37,    37,    38,    38,    38,   nil,    38,   nil,
+   nil,   nil,    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,   nil,
+    38,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,
+    38,    38,    38,    38,    38,    38,    38,    38,   nil,    38,
+    38,    38,   nil,    38,    38,   nil,   nil,   nil,    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,  1041,    38,  1041,
+  1041,  1041,  1041,  1041,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1041,   nil,   nil,   nil,    38,    38,    38,
+    38,    38,    38,   nil,   nil,   nil,    38,    38,   nil,   nil,
+   nil,    38,   nil,   nil,    38,  1041,   nil,    38,    38,    38,
+    45,    45,    45,   nil,    45,   nil,  1041,  1041,    45,    45,
+   nil,   nil,   nil,    45,   nil,    45,    45,    45,    45,    45,
+    45,    45,   nil,   nil,   nil,   nil,   nil,    45,    45,    45,
+    45,    45,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
+  1041,   nil,   nil,    45,   nil,   nil,    45,    45,    45,    45,
+    45,    45,    45,    45,   nil,    45,    45,    45,   nil,    45,
+    45,   nil,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,   nil,   nil,
+    45,    45,   nil,  1050,    45,  1050,  1050,  1050,  1050,  1050,
+    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,  1050,
+   nil,   nil,   nil,    45,    45,    45,    45,    45,    45,   nil,
+   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,   nil,   nil,
+    45,  1050,   nil,    45,    45,    45,    46,    46,    46,   nil,
+    46,   nil,  1050,  1050,    46,    46,   nil,   nil,   nil,    46,
+   nil,    46,    46,    46,    46,    46,    46,    46,   nil,   nil,
+   nil,   nil,   nil,    46,    46,    46,    46,    46,    46,    46,
+   nil,   nil,    46,   nil,   nil,   nil,  1050,   nil,   nil,    46,
+   nil,   nil,    46,    46,    46,    46,    46,    46,    46,    46,
+   nil,    46,    46,    46,   nil,    46,    46,   nil,    46,    46,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    46,   nil,   nil,    46,   nil,   nil,    46,    46,   nil,  1052,
+    46,  1052,  1052,  1052,  1052,  1052,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    46,  1052,   nil,   nil,   nil,    46,
+    46,    46,    46,    46,    46,   nil,   nil,   nil,    46,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,    46,  1052,   nil,    46,
+    46,    46,    48,    48,    48,   nil,    48,   nil,  1052,  1052,
+    48,    48,   nil,   nil,   nil,    48,   nil,    48,    48,    48,
+    48,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,    48,
+    48,    48,    48,    48,    48,    48,   nil,   nil,    48,   nil,
+   nil,   nil,  1052,   nil,   nil,    48,   nil,   nil,    48,    48,
+    48,    48,    48,    48,    48,    48,   nil,    48,    48,    48,
+   nil,    48,    48,   nil,    48,    48,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,
+   nil,   nil,    48,    48,   nil,  1054,    48,  1054,  1054,  1054,
+  1054,  1054,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    48,  1054,   nil,   nil,   nil,    48,    48,    48,    48,    48,
+    48,   nil,   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,    48,  1054,   nil,    48,    48,    48,    62,    62,
+    62,    62,    62,   nil,  1054,  1054,    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,  1054,   nil,
+    62,    62,   nil,    62,    62,    62,    62,    62,    62,    62,
+    62,    62,   nil,    62,    62,    62,   nil,    62,    62,   nil,
+    62,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    62,   nil,   nil,    62,   nil,   nil,    62,    62,
+   nil,   nil,    62,   nil,    62,   nil,   nil,   nil,    62,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,   nil,
+   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,   nil,
+    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,
+   nil,    62,    62,    62,    67,    67,    67,   nil,    67,   nil,
+   nil,   nil,    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,  1075,    67,  1075,
+  1075,  1075,  1075,  1075,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,  1075,   nil,   nil,   nil,    67,    67,    67,
+    67,    67,    67,   nil,   nil,   nil,    67,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,  1075,   nil,    67,    67,    67,
+    68,    68,    68,   nil,    68,   nil,  1075,  1075,    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,
+  1075,   nil,   nil,    68,   nil,   nil,    68,    68,    68,    68,
+    68,    68,    68,    68,   nil,    68,    68,    68,   nil,    68,
+    68,   nil,    68,    68,    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,   nil,   nil,   nil,   nil,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,
+   nil,   nil,   nil,    68,    68,    68,    68,    68,    68,   nil,
+   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,   nil,   nil,
+    68,   nil,   nil,    68,    68,    68,    71,    71,    71,   nil,
+    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
+   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
+   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
+   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
+   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
+   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
+    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
+    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
+    71,    71,    72,    72,    72,   nil,    72,   nil,   nil,   nil,
+    72,    72,   nil,   nil,   nil,    72,   nil,    72,    72,    72,
+    72,    72,    72,    72,   nil,   nil,   nil,   nil,   nil,    72,
+    72,    72,    72,    72,    72,    72,   nil,   nil,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
+    72,    72,    72,    72,    72,    72,   nil,    72,    72,    72,
+   nil,    72,    72,   nil,   nil,   nil,    72,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,
+   nil,   nil,    72,    72,   nil,   nil,    72,   nil,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,    72,
+    72,   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,   nil,
+   nil,   nil,    72,   nil,   nil,    72,    72,    72,    73,    73,
+    73,   nil,    73,   nil,   nil,   nil,    73,    73,   nil,   nil,
+   nil,    73,   nil,    73,    73,    73,    73,    73,    73,    73,
+   nil,   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,
+    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,    73,    73,    73,    73,    73,    73,
+    73,    73,   nil,    73,    73,    73,   nil,    73,    73,   nil,
+   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    73,
+   nil,   nil,    73,   nil,   nil,    73,   nil,   nil,    73,    73,
+   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    73,    73,    73,    73,    73,    73,   nil,   nil,   nil,
+    73,    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,
+   nil,    73,    73,    73,    74,    74,    74,   nil,    74,   nil,
+   nil,   nil,    74,    74,   nil,   nil,   nil,    74,   nil,    74,
+    74,    74,    74,    74,    74,    74,   nil,   nil,   nil,   nil,
+   nil,    74,    74,    74,    74,    74,    74,    74,   nil,   nil,
+    74,   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,   nil,
+    74,    74,    74,    74,    74,    74,    74,    74,   nil,    74,
+    74,    74,   nil,    74,    74,   nil,   nil,   nil,    74,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,
+   nil,    74,   nil,   nil,    74,    74,   nil,   nil,    74,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    74,    74,    74,
+    74,    74,    74,   nil,   nil,   nil,    74,    74,   nil,   nil,
+   nil,   nil,   nil,   nil,    74,   nil,   nil,    74,    74,    74,
+   125,   125,   125,   125,   125,   nil,   nil,   nil,   125,   125,
+   nil,   nil,   nil,   125,   nil,   125,   125,   125,   125,   125,
+   125,   125,   nil,   nil,   nil,   nil,   nil,   125,   125,   125,
+   125,   125,   125,   125,   nil,   nil,   125,   nil,   nil,   nil,
+   nil,   nil,   125,   125,   125,   125,   125,   125,   125,   125,
+   125,   125,   125,   125,   nil,   125,   125,   125,   nil,   125,
+   125,   nil,   125,   125,   125,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   125,   nil,   nil,   125,   nil,   nil,
+   125,   125,   nil,   nil,   125,   nil,   125,   nil,   nil,   nil,
+   125,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   125,   nil,
+   nil,   nil,   nil,   125,   125,   125,   125,   125,   125,   nil,
+   nil,   nil,   125,   125,   nil,   nil,   nil,   nil,   nil,   125,
+   125,   nil,   nil,   125,   125,   125,   130,   130,   130,   nil,
+   130,   nil,   nil,   nil,   130,   130,   nil,   nil,   nil,   130,
+   nil,   130,   130,   130,   130,   130,   130,   130,   nil,   nil,
+   nil,   nil,   nil,   130,   130,   130,   130,   130,   130,   130,
+   nil,   nil,   130,   nil,   nil,   nil,   nil,   nil,   nil,   130,
+   nil,   nil,   130,   130,   130,   130,   130,   130,   130,   130,
+   nil,   130,   130,   130,   nil,   130,   130,   nil,   130,   130,
+   130,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   130,   nil,   nil,   130,   nil,   nil,   130,   130,   nil,   nil,
+   130,   nil,   nil,   nil,   nil,   nil,   130,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   130,   nil,   nil,   nil,   nil,   130,
+   130,   130,   130,   130,   130,   nil,   nil,   nil,   130,   130,
+   nil,   nil,   nil,   nil,   nil,   nil,   130,   nil,   nil,   130,
+   130,   130,   131,   131,   131,   nil,   131,   nil,   nil,   nil,
+   131,   131,   nil,   nil,   nil,   131,   nil,   131,   131,   131,
+   131,   131,   131,   131,   nil,   nil,   nil,   nil,   nil,   131,
+   131,   131,   131,   131,   131,   131,   nil,   nil,   131,   nil,
+   nil,   nil,   nil,   nil,   nil,   131,   nil,   nil,   131,   131,
+   131,   131,   131,   131,   131,   131,   nil,   131,   131,   131,
+   nil,   131,   131,   nil,   131,   131,   131,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   131,   nil,   nil,   131,
+   nil,   nil,   131,   131,   nil,   nil,   131,   nil,   nil,   nil,
+   nil,   nil,   131,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   131,   nil,   nil,   nil,   nil,   131,   131,   131,   131,   131,
+   131,   nil,   nil,   nil,   131,   131,   nil,   nil,   nil,   nil,
+   nil,   nil,   131,   nil,   nil,   131,   131,   131,   132,   132,
+   132,   nil,   132,   nil,   nil,   nil,   132,   132,   nil,   nil,
+   nil,   132,   nil,   132,   132,   132,   132,   132,   132,   132,
+   nil,   nil,   nil,   nil,   nil,   132,   132,   132,   132,   132,
+   132,   132,   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,
+   nil,   132,   nil,   nil,   132,   132,   132,   132,   132,   132,
+   132,   132,   nil,   132,   132,   132,   nil,   132,   132,   nil,
+   132,   132,   132,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   132,   nil,   nil,   132,   nil,   nil,   132,   132,
+   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,   132,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   132,   nil,   nil,   nil,
+   nil,   132,   132,   132,   132,   132,   132,   nil,   nil,   nil,
+   132,   132,   nil,   nil,   nil,   nil,   nil,   nil,   132,   nil,
+   nil,   132,   132,   132,   133,   133,   133,   nil,   133,   nil,
+   nil,   nil,   133,   133,   nil,   nil,   nil,   133,   nil,   133,
+   133,   133,   133,   133,   133,   133,   nil,   nil,   nil,   nil,
+   nil,   133,   133,   133,   133,   133,   133,   133,   nil,   nil,
+   133,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,
+   133,   133,   133,   133,   133,   133,   133,   133,   nil,   133,
+   133,   133,   nil,   133,   133,   nil,   133,   133,   133,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,
+   nil,   133,   nil,   nil,   133,   133,   nil,   nil,   133,   nil,
+   nil,   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   133,   nil,   nil,   nil,   nil,   133,   133,   133,
+   133,   133,   133,   nil,   nil,   nil,   133,   133,   nil,   nil,
+   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,
+   134,   134,   134,   134,   134,   nil,   nil,   nil,   134,   134,
+   nil,   nil,   nil,   134,   nil,   134,   134,   134,   134,   134,
+   134,   134,   nil,   nil,   nil,   nil,   nil,   134,   134,   134,
+   134,   134,   134,   134,   nil,   nil,   134,   nil,   nil,   nil,
+   nil,   nil,   134,   134,   nil,   134,   134,   134,   134,   134,
+   134,   134,   134,   134,   nil,   134,   134,   134,   nil,   134,
+   134,   nil,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   nil,   nil,
+   134,   134,   nil,   nil,   134,   nil,   134,   nil,   nil,   nil,
+   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,
+   nil,   nil,   nil,   134,   134,   134,   134,   134,   134,   nil,
+   nil,   nil,   134,   134,   nil,   nil,   nil,   nil,   nil,   nil,
+   134,   nil,   nil,   134,   134,   134,   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,   nil,   219,   219,   219,   219,   219,   219,   219,
+   nil,   nil,   219,   nil,   nil,   nil,   nil,   nil,   nil,   219,
+   nil,   nil,   219,   219,   219,   219,   219,   219,   219,   219,
+   nil,   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,   219,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   219,   nil,   nil,   219,
+   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,   nil,   220,
+   220,   220,   220,   220,   220,   220,   nil,   nil,   220,   nil,
+   nil,   nil,   nil,   nil,   nil,   220,   nil,   nil,   220,   220,
+   220,   220,   220,   220,   220,   220,   nil,   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,   220,   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,   nil,
+   nil,   nil,   220,   nil,   nil,   220,   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,   nil,   221,   221,   221,   221,   221,
+   221,   221,   nil,   nil,   221,   nil,   nil,   nil,   nil,   nil,
+   nil,   221,   nil,   nil,   221,   221,   221,   221,   221,   221,
+   221,   221,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   221,   nil,
+   nil,   221,   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,
+   nil,   222,   222,   222,   222,   222,   222,   222,   nil,   nil,
+   222,   nil,   nil,   nil,   nil,   nil,   nil,   222,   nil,   nil,
+   222,   222,   222,   222,   222,   222,   222,   222,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   222,   nil,   nil,   222,   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,   nil,   223,   223,   223,
+   223,   223,   223,   223,   nil,   nil,   223,   nil,   nil,   nil,
+   nil,   nil,   nil,   223,   nil,   nil,   223,   223,   223,   223,
+   223,   223,   223,   223,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   223,   nil,   nil,   223,   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,   nil,   224,   224,   224,   224,   224,   224,   224,
+   nil,   nil,   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,
+   nil,   nil,   224,   224,   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,   224,   nil,   224,   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,   nil,   nil,   nil,   224,   nil,   224,   224,
+   224,   224,   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,   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,
+   228,   nil,   nil,   nil,   nil,   228,   228,   228,   228,   228,
+   228,   nil,   nil,   nil,   228,   228,   nil,   nil,   nil,   nil,
+   nil,   nil,   228,   nil,   nil,   228,   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,   nil,   229,   229,   229,   229,   229,
+   229,   229,   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,
+   nil,   229,   nil,   nil,   229,   229,   229,   229,   229,   229,
+   229,   229,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   229,   nil,
+   nil,   229,   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,
+   nil,   230,   230,   230,   230,   230,   230,   230,   nil,   nil,
+   230,   nil,   nil,   nil,   nil,   nil,   nil,   230,   nil,   nil,
+   230,   230,   230,   230,   230,   230,   230,   230,   nil,   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,   230,   nil,
+   nil,   nil,   nil,   nil,   230,   nil,   nil,   230,   230,   230,
+   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,   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,   241,   nil,
+   nil,   nil,   nil,   241,   241,   241,   241,   241,   241,   nil,
+   nil,   nil,   241,   241,   nil,   nil,   nil,   nil,   nil,   nil,
+   241,   nil,   nil,   241,   241,   241,   244,   244,   244,   nil,
+   244,   nil,   nil,   nil,   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,   244,   nil,   nil,   nil,   nil,   244,
+   244,   244,   244,   244,   244,   nil,   nil,   nil,   244,   244,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   244,
+   244,   244,   245,   245,   245,   nil,   245,   nil,   nil,   nil,
+   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,
+   245,   nil,   nil,   nil,   nil,   245,   245,   245,   245,   245,
+   245,   nil,   nil,   nil,   245,   245,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   245,   245,   245,   246,   246,
+   246,   nil,   246,   nil,   nil,   nil,   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,   246,   nil,   nil,   nil,
+   nil,   246,   246,   246,   246,   246,   246,   nil,   nil,   nil,
+   246,   246,   nil,   nil,   nil,   nil,   nil,   nil,   246,   nil,
+   nil,   246,   246,   246,   247,   247,   247,   nil,   247,   nil,
+   nil,   nil,   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,   247,   nil,   nil,   nil,   nil,   247,   247,   247,
+   247,   247,   247,   nil,   nil,   nil,   247,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   247,   247,   247,
+   248,   248,   248,   nil,   248,   nil,   nil,   nil,   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,   248,   nil,
+   nil,   nil,   nil,   248,   248,   248,   248,   248,   248,   nil,
+   nil,   nil,   248,   248,   nil,   nil,   nil,   nil,   nil,   nil,
+   248,   nil,   nil,   248,   248,   248,   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,   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,   249,   nil,   nil,   nil,   nil,   249,
+   249,   249,   249,   249,   249,   nil,   nil,   nil,   249,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   249,
+   249,   249,   250,   250,   250,   nil,   250,   nil,   nil,   nil,
+   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,
+   250,   nil,   nil,   nil,   nil,   250,   250,   250,   250,   250,
+   250,   nil,   nil,   nil,   250,   250,   nil,   nil,   nil,   nil,
+   nil,   nil,   250,   nil,   nil,   250,   250,   250,   251,   251,
+   251,   nil,   251,   nil,   nil,   nil,   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,   251,   nil,   nil,   nil,
+   nil,   251,   251,   251,   251,   251,   251,   nil,   nil,   nil,
+   251,   251,   nil,   nil,   nil,   nil,   nil,   nil,   251,   nil,
+   nil,   251,   251,   251,   252,   252,   252,   nil,   252,   nil,
+   nil,   nil,   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,   252,   nil,   nil,   nil,   nil,   252,   252,   252,
+   252,   252,   252,   nil,   nil,   nil,   252,   252,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   252,   252,   252,
+   253,   253,   253,   nil,   253,   nil,   nil,   nil,   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,   253,   nil,
+   nil,   nil,   nil,   253,   253,   253,   253,   253,   253,   nil,
+   nil,   nil,   253,   253,   nil,   nil,   nil,   nil,   nil,   nil,
+   253,   nil,   nil,   253,   253,   253,   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,   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,   254,   nil,   nil,   nil,   nil,   254,
+   254,   254,   254,   254,   254,   nil,   nil,   nil,   254,   254,
+   nil,   nil,   nil,   nil,   nil,   nil,   254,   nil,   nil,   254,
+   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,   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,
+   255,   nil,   nil,   nil,   nil,   255,   255,   255,   255,   255,
+   255,   nil,   nil,   nil,   255,   255,   nil,   nil,   nil,   nil,
+   nil,   nil,   255,   nil,   nil,   255,   255,   255,   256,   256,
+   256,   nil,   256,   nil,   nil,   nil,   256,   256,   nil,   nil,
+   nil,   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,   256,   256,   256,   256,
+   256,   256,   nil,   256,   256,   256,   nil,   256,   256,   nil,
+   256,   256,   256,   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,   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,   nil,   nil,   nil,   256,   nil,
+   nil,   256,   256,   256,   257,   257,   257,   nil,   257,   nil,
+   nil,   nil,   257,   257,   nil,   nil,   nil,   257,   nil,   257,
+   257,   257,   257,   257,   257,   257,   nil,   nil,   nil,   nil,
+   nil,   257,   257,   257,   257,   257,   257,   257,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   257,   257,   257,   257,   257,   257,   257,   257,   nil,   257,
+   257,   257,   nil,   257,   257,   nil,   257,   257,   257,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   257,   nil,   nil,   257,   257,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   257,   257,   257,
+   257,   257,   257,   nil,   nil,   nil,   257,   257,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   257,   257,
+   258,   258,   258,   nil,   258,   nil,   nil,   nil,   258,   258,
+   nil,   nil,   nil,   258,   nil,   258,   258,   258,   258,   258,
+   258,   258,   nil,   nil,   nil,   nil,   nil,   258,   258,   258,
+   258,   258,   258,   258,   nil,   nil,   258,   nil,   nil,   nil,
+   nil,   nil,   nil,   258,   nil,   nil,   258,   258,   258,   258,
+   258,   258,   258,   258,   nil,   258,   258,   258,   nil,   258,
+   258,   nil,   258,   258,   258,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,   nil,   nil,
+   258,   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,
+   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
+   nil,   nil,   nil,   258,   258,   258,   258,   258,   258,   nil,
+   nil,   nil,   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,
+   258,   nil,   nil,   258,   258,   258,   259,   259,   259,   nil,
+   259,   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,   259,
+   nil,   259,   259,   259,   259,   259,   259,   259,   nil,   nil,
+   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,   259,
+   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,
+   nil,   nil,   259,   259,   259,   259,   259,   259,   259,   259,
+   nil,   259,   259,   259,   nil,   259,   259,   nil,   259,   259,
+   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   259,   nil,   nil,   259,   nil,   nil,   259,   259,   nil,   nil,
+   259,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,   259,
+   259,   259,   259,   259,   259,   nil,   nil,   nil,   259,   259,
+   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,
+   259,   259,   260,   260,   260,   nil,   260,   nil,   nil,   nil,
+   260,   260,   nil,   nil,   nil,   260,   nil,   260,   260,   260,
+   260,   260,   260,   260,   nil,   nil,   nil,   nil,   nil,   260,
+   260,   260,   260,   260,   260,   260,   nil,   nil,   260,   nil,
+   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,   260,
+   260,   260,   260,   260,   260,   260,   nil,   260,   260,   260,
+   nil,   260,   260,   nil,   260,   260,   260,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,
+   nil,   nil,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,
+   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   260,   nil,   nil,   nil,   nil,   260,   260,   260,   260,   260,
+   260,   nil,   nil,   nil,   260,   260,   nil,   nil,   nil,   nil,
+   nil,   nil,   260,   nil,   nil,   260,   260,   260,   261,   261,
+   261,   nil,   261,   nil,   nil,   nil,   261,   261,   nil,   nil,
+   nil,   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,   261,   261,   261,   261,
+   261,   261,   nil,   261,   261,   261,   nil,   261,   261,   nil,
+   261,   261,   261,   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,   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,   nil,   nil,   nil,   261,   nil,
+   nil,   261,   261,   261,   262,   262,   262,   nil,   262,   nil,
+   nil,   nil,   262,   262,   nil,   nil,   nil,   262,   nil,   262,
+   262,   262,   262,   262,   262,   262,   nil,   nil,   nil,   nil,
+   nil,   262,   262,   262,   262,   262,   262,   262,   nil,   nil,
+   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,
+   262,   262,   262,   262,   262,   262,   262,   262,   nil,   262,
+   262,   262,   nil,   262,   262,   nil,   262,   262,   262,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,
+   nil,   262,   nil,   nil,   262,   262,   nil,   nil,   262,   nil,
+   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,   262,   262,
+   262,   262,   262,   nil,   nil,   nil,   262,   262,   nil,   nil,
+   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,   262,
+   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,   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,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   263,   nil,   nil,   263,   263,   263,   264,   264,   264,   nil,
+   264,   nil,   nil,   nil,   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,
+   nil,   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,   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   264,
+   264,   264,   264,   264,   264,   nil,   nil,   nil,   264,   264,
+   nil,   nil,   nil,   nil,   nil,   nil,   264,   nil,   nil,   264,
+   264,   264,   265,   265,   265,   nil,   265,   nil,   nil,   nil,
+   265,   265,   nil,   nil,   nil,   265,   nil,   265,   265,   265,
+   265,   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   265,
+   265,   265,   265,   265,   265,   265,   nil,   nil,   265,   nil,
+   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,
+   265,   265,   265,   265,   265,   265,   nil,   265,   265,   265,
+   nil,   265,   265,   nil,   265,   265,   265,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,
+   nil,   nil,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   265,   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,
+   265,   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   265,   265,   265,   270,   270,
+   270,   nil,   270,   nil,   nil,   nil,   270,   270,   nil,   nil,
+   nil,   270,   nil,   270,   270,   270,   270,   270,   270,   270,
+   nil,   nil,   nil,   nil,   nil,   270,   270,   270,   270,   270,
+   270,   270,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,
+   nil,   270,   nil,   nil,   270,   270,   270,   270,   270,   270,
+   270,   270,   nil,   270,   270,   270,   nil,   270,   270,   nil,
+   270,   270,   270,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   270,   nil,   nil,   270,   nil,   nil,   270,   270,
+   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,   270,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,   nil,
+   nil,   270,   270,   270,   270,   270,   270,   nil,   nil,   nil,
+   270,   270,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,
+   nil,   270,   270,   270,   278,   278,   278,   nil,   278,   nil,
+   nil,   nil,   278,   278,   nil,   nil,   nil,   278,   nil,   278,
+   278,   278,   278,   278,   278,   278,   nil,   nil,   nil,   nil,
+   nil,   278,   278,   278,   278,   278,   278,   278,   nil,   nil,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
+   278,   278,   278,   278,   278,   278,   278,   278,   278,   278,
+   278,   278,   nil,   278,   278,   nil,   278,   278,   278,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,
+   nil,   278,   nil,   nil,   278,   278,   nil,   nil,   278,   nil,
+   278,   nil,   278,   nil,   278,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   278,   nil,   nil,   nil,   nil,   278,   278,   278,
+   278,   278,   278,   nil,   nil,   nil,   278,   278,   nil,   nil,
+   nil,   nil,   nil,   nil,   278,   nil,   278,   278,   278,   278,
+   279,   279,   279,   nil,   279,   nil,   nil,   nil,   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,   279,   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,   279,   nil,   279,   nil,
+   279,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   279,   nil,
+   nil,   nil,   nil,   279,   279,   279,   279,   279,   279,   nil,
+   nil,   nil,   279,   279,   nil,   nil,   nil,   nil,   nil,   nil,
+   279,   nil,   279,   279,   279,   279,   288,   288,   288,   nil,
+   288,   nil,   nil,   nil,   288,   288,   nil,   nil,   nil,   288,
+   nil,   288,   288,   288,   288,   288,   288,   288,   nil,   nil,
+   nil,   nil,   nil,   288,   288,   288,   288,   288,   288,   288,
+   nil,   nil,   288,   nil,   nil,   nil,   nil,   nil,   nil,   288,
+   nil,   nil,   288,   288,   288,   288,   288,   288,   288,   288,
+   288,   288,   288,   288,   nil,   288,   288,   nil,   288,   288,
+   288,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   288,   nil,   nil,   288,   nil,   nil,   288,   288,   nil,   nil,
+   288,   nil,   288,   nil,   288,   nil,   288,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   288,   nil,   nil,   nil,   nil,   288,
+   288,   288,   288,   288,   288,   nil,   nil,   nil,   288,   288,
+   288,   nil,   nil,   nil,   nil,   nil,   288,   nil,   288,   288,
+   288,   288,   295,   295,   295,   nil,   295,   nil,   nil,   nil,
+   295,   295,   nil,   nil,   nil,   295,   nil,   295,   295,   295,
+   295,   295,   295,   295,   nil,   nil,   nil,   nil,   nil,   295,
+   295,   295,   295,   295,   295,   295,   nil,   nil,   295,   nil,
+   nil,   nil,   nil,   nil,   nil,   295,   nil,   nil,   295,   295,
+   295,   295,   295,   295,   295,   295,   nil,   295,   295,   295,
+   nil,   295,   295,   nil,   295,   295,   295,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   295,   nil,   nil,   295,
+   nil,   nil,   295,   295,   nil,   nil,   295,   nil,   nil,   nil,
+   nil,   nil,   295,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   295,   nil,   nil,   nil,   nil,   295,   295,   295,   295,   295,
+   295,   nil,   nil,   nil,   295,   295,   nil,   nil,   nil,   nil,
+   nil,   nil,   295,   nil,   nil,   295,   295,   295,   297,   297,
+   297,   nil,   297,   nil,   nil,   nil,   297,   297,   nil,   nil,
+   nil,   297,   nil,   297,   297,   297,   297,   297,   297,   297,
+   nil,   nil,   nil,   nil,   nil,   297,   297,   297,   297,   297,
+   297,   297,   nil,   nil,   297,   nil,   nil,   nil,   nil,   nil,
+   nil,   297,   nil,   nil,   297,   297,   297,   297,   297,   297,
+   297,   297,   nil,   297,   297,   297,   nil,   297,   297,   nil,
+   297,   297,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   297,   nil,   nil,   297,   nil,   nil,   297,   297,
+   nil,   nil,   297,   nil,   nil,   nil,   nil,   nil,   297,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,
+   nil,   297,   297,   297,   297,   297,   297,   nil,   nil,   nil,
+   297,   297,   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,
+   nil,   297,   297,   297,   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,
+   nil,   299,   299,   299,   299,   299,   299,   299,   nil,   nil,
+   299,   nil,   nil,   nil,   nil,   nil,   nil,   299,   nil,   nil,
+   299,   299,   299,   299,   299,   299,   299,   299,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   299,   nil,   nil,   299,   299,   299,
+   300,   300,   300,   nil,   300,   nil,   nil,   nil,   300,   300,
+   nil,   nil,   nil,   300,   nil,   300,   300,   300,   300,   300,
+   300,   300,   nil,   nil,   nil,   nil,   nil,   300,   300,   300,
+   300,   300,   300,   300,   nil,   nil,   300,   nil,   nil,   nil,
+   nil,   nil,   nil,   300,   nil,   nil,   300,   300,   300,   300,
+   300,   300,   300,   300,   nil,   300,   300,   300,   nil,   300,
+   300,   nil,   300,   300,   300,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   300,   nil,   nil,   300,   nil,   nil,
+   300,   300,   nil,   nil,   300,   nil,   nil,   nil,   nil,   nil,
+   300,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   300,   nil,
+   nil,   nil,   nil,   300,   300,   300,   300,   300,   300,   nil,
+   nil,   nil,   300,   300,   nil,   nil,   nil,   nil,   nil,   nil,
+   300,   nil,   nil,   300,   300,   300,   306,   306,   306,   306,
+   306,   nil,   nil,   nil,   306,   306,   nil,   nil,   nil,   306,
+   nil,   306,   306,   306,   306,   306,   306,   306,   nil,   nil,
+   nil,   nil,   nil,   306,   306,   306,   306,   306,   306,   306,
+   nil,   nil,   306,   nil,   nil,   nil,   nil,   nil,   306,   306,
+   nil,   306,   306,   306,   306,   306,   306,   306,   306,   306,
+   nil,   306,   306,   306,   nil,   306,   306,   nil,   306,   306,
+   306,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   306,   nil,   nil,   306,   nil,   nil,   306,   306,   nil,   nil,
+   306,   nil,   306,   nil,   nil,   nil,   306,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   306,   nil,   nil,   nil,   nil,   306,
+   306,   306,   306,   306,   306,   nil,   nil,   nil,   306,   306,
+   nil,   nil,   nil,   nil,   nil,   nil,   306,   nil,   nil,   306,
+   306,   306,   314,   314,   314,   nil,   314,   nil,   nil,   nil,
+   314,   314,   nil,   nil,   nil,   314,   nil,   314,   314,   314,
+   314,   314,   314,   314,   nil,   nil,   nil,   nil,   nil,   314,
+   314,   314,   314,   314,   314,   314,   nil,   nil,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,   314,
+   314,   314,   314,   314,   314,   314,   nil,   314,   314,   314,
+   nil,   314,   314,   nil,   nil,   nil,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,
+   nil,   nil,   314,   314,   nil,   nil,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   314,   314,   314,   314,   314,
+   314,   nil,   nil,   nil,   314,   314,   nil,   nil,   nil,   314,
+   nil,   nil,   314,   nil,   nil,   314,   314,   314,   331,   331,
+   331,   nil,   331,   nil,   nil,   nil,   331,   331,   nil,   nil,
+   nil,   331,   nil,   331,   331,   331,   331,   331,   331,   331,
+   nil,   nil,   nil,   nil,   nil,   331,   331,   331,   331,   331,
+   331,   331,   nil,   nil,   331,   nil,   nil,   nil,   nil,   nil,
+   nil,   331,   nil,   nil,   331,   331,   331,   331,   331,   331,
+   331,   331,   nil,   331,   331,   331,   nil,   331,   331,   nil,
+   nil,   nil,   331,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   331,   nil,   nil,   331,   nil,   nil,   331,   331,
+   nil,   nil,   331,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   331,   331,   331,   331,   331,   331,   nil,   nil,   nil,
+   331,   331,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,
+   nil,   331,   331,   331,   339,   339,   339,   nil,   339,   nil,
+   nil,   nil,   339,   339,   nil,   nil,   nil,   339,   nil,   339,
+   339,   339,   339,   339,   339,   339,   nil,   nil,   nil,   nil,
+   nil,   339,   339,   339,   339,   339,   339,   339,   nil,   nil,
+   339,   nil,   nil,   nil,   nil,   nil,   nil,   339,   nil,   nil,
+   339,   339,   339,   339,   339,   339,   339,   339,   nil,   339,
+   339,   339,   nil,   339,   339,   nil,   339,   339,   339,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   339,   nil,
+   nil,   339,   nil,   nil,   339,   339,   nil,   nil,   339,   nil,
+   nil,   nil,   nil,   nil,   339,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   339,   nil,   nil,   nil,   nil,   339,   339,   339,
+   339,   339,   339,   nil,   nil,   nil,   339,   339,   nil,   nil,
+   nil,   nil,   nil,   nil,   339,   nil,   nil,   339,   339,   339,
+   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,   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,   341,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   341,   nil,   nil,   341,   341,   341,   345,   345,   345,   nil,
+   345,   nil,   nil,   nil,   345,   345,   nil,   nil,   nil,   345,
+   nil,   345,   345,   345,   345,   345,   345,   345,   nil,   nil,
+   nil,   nil,   nil,   345,   345,   345,   345,   345,   345,   345,
+   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,   nil,   345,
+   nil,   nil,   345,   345,   345,   345,   345,   345,   345,   345,
+   345,   345,   345,   345,   nil,   345,   345,   nil,   345,   345,
+   345,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   345,   nil,   nil,   345,   nil,   nil,   345,   345,   nil,   nil,
+   345,   nil,   345,   nil,   nil,   nil,   345,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   345,   nil,   nil,   nil,   nil,   345,
+   345,   345,   345,   345,   345,   nil,   nil,   nil,   345,   345,
+   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   345,   345,
+   345,   345,   346,   346,   346,   nil,   346,   nil,   nil,   nil,
+   346,   346,   nil,   nil,   nil,   346,   nil,   346,   346,   346,
+   346,   346,   346,   346,   nil,   nil,   nil,   nil,   nil,   346,
+   346,   346,   346,   346,   346,   346,   nil,   nil,   346,   nil,
+   nil,   nil,   nil,   nil,   nil,   346,   nil,   nil,   346,   346,
+   346,   346,   346,   346,   346,   346,   346,   346,   346,   346,
+   nil,   346,   346,   nil,   346,   346,   346,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   346,   nil,   nil,   346,
+   nil,   nil,   346,   346,   nil,   nil,   346,   nil,   nil,   nil,
+   nil,   nil,   346,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   346,   nil,   nil,   nil,   nil,   346,   346,   346,   346,   346,
+   346,   nil,   nil,   nil,   346,   346,   nil,   nil,   nil,   nil,
+   nil,   nil,   346,   nil,   346,   346,   346,   346,   351,   351,
+   351,   nil,   351,   nil,   nil,   nil,   351,   351,   nil,   nil,
+   nil,   351,   nil,   351,   351,   351,   351,   351,   351,   351,
+   nil,   nil,   nil,   nil,   nil,   351,   351,   351,   351,   351,
+   351,   351,   nil,   nil,   351,   nil,   nil,   nil,   nil,   nil,
+   nil,   351,   nil,   nil,   351,   351,   351,   351,   351,   351,
+   351,   351,   nil,   351,   351,   351,   nil,   351,   351,   nil,
+   351,   351,   351,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   351,   nil,   nil,   351,   nil,   nil,   351,   351,
+   nil,   nil,   351,   nil,   nil,   nil,   nil,   nil,   351,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   351,   nil,   nil,   nil,
+   nil,   351,   351,   351,   351,   351,   351,   nil,   nil,   nil,
+   351,   351,   nil,   nil,   nil,   nil,   nil,   nil,   351,   nil,
+   nil,   351,   351,   351,   372,   372,   372,   nil,   372,   nil,
+   nil,   nil,   372,   372,   nil,   nil,   nil,   372,   nil,   372,
+   372,   372,   372,   372,   372,   372,   nil,   nil,   nil,   nil,
+   nil,   372,   372,   372,   372,   372,   372,   372,   nil,   nil,
+   372,   nil,   nil,   nil,   nil,   nil,   nil,   372,   nil,   nil,
+   372,   372,   372,   372,   372,   372,   372,   372,   nil,   372,
+   372,   372,   nil,   372,   372,   nil,   372,   372,   372,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   372,   nil,
+   nil,   372,   nil,   nil,   372,   372,   nil,   nil,   372,   nil,
+   nil,   nil,   nil,   nil,   372,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   372,   nil,   nil,   nil,   nil,   372,   372,   372,
+   372,   372,   372,   nil,   nil,   nil,   372,   372,   nil,   nil,
+   nil,   nil,   nil,   nil,   372,   nil,   nil,   372,   372,   372,
+   433,   433,   433,   nil,   433,   nil,   nil,   nil,   433,   433,
+   nil,   nil,   nil,   433,   nil,   433,   433,   433,   433,   433,
+   433,   433,   nil,   nil,   nil,   nil,   nil,   433,   433,   433,
+   433,   433,   433,   433,   nil,   nil,   433,   nil,   nil,   nil,
+   nil,   nil,   nil,   433,   nil,   nil,   433,   433,   433,   433,
+   433,   433,   433,   433,   nil,   433,   433,   433,   nil,   433,
+   433,   nil,   433,   433,   433,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   433,   nil,   nil,   433,   nil,   nil,
+   433,   433,   nil,   nil,   433,   nil,   nil,   nil,   nil,   nil,
+   433,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   433,   nil,
+   nil,   nil,   nil,   433,   433,   433,   433,   433,   433,   nil,
+   nil,   nil,   433,   433,   nil,   nil,   nil,   nil,   nil,   nil,
+   433,   nil,   nil,   433,   433,   433,   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,   nil,   476,   476,   476,   476,   476,   476,   476,
+   nil,   nil,   476,   nil,   nil,   nil,   nil,   nil,   nil,   476,
+   nil,   nil,   476,   476,   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,   476,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   476,   nil,   476,   476,
+   476,   476,   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,   nil,   478,
+   478,   478,   478,   478,   478,   478,   nil,   nil,   478,   nil,
+   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,   478,   478,
+   478,   478,   478,   478,   478,   478,   nil,   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,
+   nil,   nil,   478,   478,   nil,   nil,   478,   nil,   nil,   nil,
+   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   478,   nil,   nil,   478,   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,   nil,   479,   479,   479,   479,   479,
+   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,   nil,
+   nil,   479,   nil,   nil,   479,   479,   479,   479,   479,   479,
+   479,   479,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   479,   nil,
+   nil,   479,   479,   479,   480,   480,   480,   nil,   480,   nil,
+   nil,   nil,   480,   480,   nil,   nil,   nil,   480,   nil,   480,
+   480,   480,   480,   480,   480,   480,   nil,   nil,   nil,   nil,
+   nil,   480,   480,   480,   480,   480,   480,   480,   nil,   nil,
+   480,   nil,   nil,   nil,   nil,   nil,   nil,   480,   nil,   nil,
+   480,   480,   480,   480,   480,   480,   480,   480,   nil,   480,
+   480,   480,   nil,   480,   480,   nil,   480,   480,   480,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   480,   nil,
+   nil,   480,   nil,   nil,   480,   480,   nil,   nil,   480,   nil,
+   nil,   nil,   nil,   nil,   480,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   480,   nil,   nil,   nil,   nil,   480,   480,   480,
+   480,   480,   480,   nil,   nil,   nil,   480,   480,   nil,   nil,
+   nil,   nil,   nil,   nil,   480,   nil,   nil,   480,   480,   480,
+   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,   518,   518,
+   518,   518,   518,   518,   518,   518,   518,   518,   nil,   518,
+   518,   nil,   518,   518,   518,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   518,   nil,   nil,   518,   nil,   nil,
+   518,   518,   nil,   nil,   518,   nil,   518,   nil,   518,   nil,
+   518,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   518,   nil,
+   nil,   nil,   nil,   518,   518,   518,   518,   518,   518,   nil,
+   nil,   nil,   518,   518,   nil,   nil,   nil,   nil,   nil,   nil,
+   518,   nil,   518,   518,   518,   518,   521,   521,   521,   nil,
+   521,   nil,   nil,   nil,   521,   521,   nil,   nil,   nil,   521,
+   nil,   521,   521,   521,   521,   521,   521,   521,   nil,   nil,
+   nil,   nil,   nil,   521,   521,   521,   521,   521,   521,   521,
+   nil,   nil,   521,   nil,   nil,   nil,   nil,   nil,   nil,   521,
+   nil,   nil,   521,   521,   521,   521,   521,   521,   521,   521,
+   521,   521,   521,   521,   nil,   521,   521,   nil,   521,   521,
+   521,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   521,   nil,   nil,   521,   nil,   nil,   521,   521,   nil,   nil,
+   521,   nil,   nil,   nil,   521,   nil,   521,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   521,   nil,   nil,   nil,   nil,   521,
+   521,   521,   521,   521,   521,   nil,   nil,   nil,   521,   521,
+   nil,   nil,   nil,   nil,   nil,   nil,   521,   nil,   521,   521,
+   521,   521,   523,   523,   523,   nil,   523,   nil,   nil,   nil,
+   523,   523,   nil,   nil,   nil,   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,
+   523,   523,   523,   523,   523,   523,   nil,   523,   523,   523,
+   nil,   523,   523,   nil,   523,   523,   523,   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,   523,   nil,   nil,   523,   nil,   nil,   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,   nil,
+   nil,   nil,   523,   nil,   nil,   523,   523,   523,   528,   528,
+   528,   528,   528,   nil,   nil,   nil,   528,   528,   nil,   nil,
+   nil,   528,   nil,   528,   528,   528,   528,   528,   528,   528,
+   nil,   nil,   nil,   nil,   nil,   528,   528,   528,   528,   528,
+   528,   528,   nil,   nil,   528,   nil,   nil,   nil,   nil,   nil,
+   528,   528,   528,   528,   528,   528,   528,   528,   528,   528,
+   528,   528,   nil,   528,   528,   528,   nil,   528,   528,   nil,
+   528,   528,   528,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   528,   nil,   nil,   528,   nil,   nil,   528,   528,
+   nil,   nil,   528,   nil,   528,   nil,   nil,   nil,   528,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,   nil,   nil,
+   nil,   528,   528,   528,   528,   528,   528,   nil,   nil,   nil,
+   528,   528,   nil,   nil,   nil,   nil,   nil,   528,   528,   nil,
+   nil,   528,   528,   528,   536,   536,   536,   nil,   536,   nil,
+   nil,   nil,   536,   536,   nil,   nil,   nil,   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,   536,   536,   536,   536,   536,   536,   nil,   536,
+   536,   536,   nil,   536,   536,   nil,   nil,   nil,   536,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   536,   nil,
+   nil,   536,   nil,   nil,   536,   536,   nil,   nil,   536,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   536,   536,   536,
+   536,   536,   536,   nil,   nil,   nil,   536,   536,   nil,   nil,
+   nil,   nil,   nil,   nil,   536,   nil,   nil,   536,   536,   536,
+   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,   nil,   538,   538,   538,
+   538,   538,   538,   538,   nil,   nil,   538,   nil,   nil,   nil,
+   nil,   nil,   nil,   538,   nil,   nil,   538,   538,   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,   538,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   538,   nil,   538,   538,   538,   538,   545,   545,   545,   nil,
+   545,   nil,   nil,   nil,   545,   545,   nil,   nil,   nil,   545,
+   nil,   545,   545,   545,   545,   545,   545,   545,   nil,   nil,
+   nil,   nil,   nil,   545,   545,   545,   545,   545,   545,   545,
+   nil,   nil,   545,   nil,   nil,   nil,   nil,   nil,   nil,   545,
+   nil,   nil,   545,   545,   545,   545,   545,   545,   545,   545,
+   nil,   545,   545,   545,   nil,   545,   545,   nil,   nil,   nil,
+   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   545,   nil,   nil,   545,   nil,   nil,   545,   545,   nil,   nil,
+   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   545,
+   545,   545,   545,   545,   545,   nil,   nil,   nil,   545,   545,
+   nil,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   545,
+   545,   545,   548,   548,   548,   nil,   548,   nil,   nil,   nil,
+   548,   548,   nil,   nil,   nil,   548,   nil,   548,   548,   548,
+   548,   548,   548,   548,   nil,   nil,   nil,   nil,   nil,   548,
+   548,   548,   548,   548,   548,   548,   nil,   nil,   548,   nil,
+   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   548,   548,
+   548,   548,   548,   548,   548,   548,   nil,   548,   548,   548,
+   nil,   548,   548,   nil,   548,   548,   548,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   548,
+   nil,   nil,   548,   548,   nil,   nil,   548,   nil,   nil,   nil,
+   nil,   nil,   548,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   548,   nil,   nil,   nil,   nil,   548,   548,   548,   548,   548,
+   548,   nil,   nil,   nil,   548,   548,   nil,   nil,   nil,   nil,
+   nil,   nil,   548,   nil,   nil,   548,   548,   548,   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,   nil,   549,   549,   549,   549,   549,
+   549,   549,   nil,   nil,   549,   nil,   nil,   nil,   nil,   nil,
+   nil,   549,   nil,   nil,   549,   549,   549,   549,   549,   549,
+   549,   549,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   549,   nil,
+   nil,   549,   549,   549,   550,   550,   550,   nil,   550,   nil,
+   nil,   nil,   550,   550,   nil,   nil,   nil,   550,   nil,   550,
+   550,   550,   550,   550,   550,   550,   nil,   nil,   nil,   nil,
+   nil,   550,   550,   550,   550,   550,   550,   550,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,
+   550,   550,   550,   550,   550,   550,   550,   550,   nil,   550,
+   550,   550,   nil,   550,   550,   nil,   550,   550,   550,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,
+   nil,   550,   nil,   nil,   550,   550,   nil,   nil,   550,   nil,
+   nil,   nil,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   550,   nil,   nil,   nil,   nil,   550,   550,   550,
+   550,   550,   550,   nil,   nil,   nil,   550,   550,   nil,   nil,
+   nil,   nil,   nil,   nil,   550,   nil,   nil,   550,   550,   550,
+   555,   555,   555,   nil,   555,   nil,   nil,   nil,   555,   555,
+   nil,   nil,   nil,   555,   nil,   555,   555,   555,   555,   555,
+   555,   555,   nil,   nil,   nil,   nil,   nil,   555,   555,   555,
+   555,   555,   555,   555,   nil,   nil,   555,   nil,   nil,   nil,
+   nil,   nil,   nil,   555,   nil,   nil,   555,   555,   555,   555,
+   555,   555,   555,   555,   nil,   555,   555,   555,   nil,   555,
+   555,   nil,   555,   555,   555,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   555,   nil,   nil,   555,   nil,   nil,
+   555,   555,   nil,   nil,   555,   nil,   nil,   nil,   nil,   nil,
+   555,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   555,   nil,
+   nil,   nil,   nil,   555,   555,   555,   555,   555,   555,   nil,
+   nil,   nil,   555,   555,   nil,   nil,   nil,   nil,   nil,   nil,
+   555,   nil,   nil,   555,   555,   555,   579,   579,   579,   nil,
+   579,   nil,   nil,   nil,   579,   579,   nil,   nil,   nil,   579,
+   nil,   579,   579,   579,   579,   579,   579,   579,   nil,   nil,
+   nil,   nil,   nil,   579,   579,   579,   579,   579,   579,   579,
+   nil,   nil,   579,   nil,   nil,   nil,   nil,   nil,   nil,   579,
+   nil,   nil,   579,   579,   579,   579,   579,   579,   579,   579,
+   579,   579,   579,   579,   nil,   579,   579,   nil,   579,   579,
+   579,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   579,   nil,   nil,   579,   nil,   nil,   579,   579,   nil,   nil,
+   579,   nil,   579,   nil,   579,   nil,   579,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   579,   nil,   nil,   nil,   nil,   579,
+   579,   579,   579,   579,   579,   nil,   nil,   nil,   579,   579,
+   nil,   nil,   nil,   nil,   nil,   nil,   579,   nil,   579,   579,
+   579,   579,   589,   589,   589,   nil,   589,   nil,   nil,   nil,
+   589,   589,   nil,   nil,   nil,   589,   nil,   589,   589,   589,
+   589,   589,   589,   589,   nil,   nil,   nil,   nil,   nil,   589,
+   589,   589,   589,   589,   589,   589,   nil,   nil,   589,   nil,
+   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   589,
+   589,   589,   589,   589,   589,   589,   589,   589,   589,   589,
+   nil,   589,   589,   nil,   589,   589,   589,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,
+   nil,   nil,   589,   589,   nil,   nil,   589,   nil,   589,   nil,
+   589,   nil,   589,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   589,   nil,   nil,   nil,   nil,   589,   589,   589,   589,   589,
+   589,   nil,   nil,   nil,   589,   589,   nil,   nil,   nil,   nil,
+   nil,   nil,   589,   nil,   589,   589,   589,   589,   599,   599,
+   599,   nil,   599,   nil,   nil,   nil,   599,   599,   nil,   nil,
+   nil,   599,   nil,   599,   599,   599,   599,   599,   599,   599,
+   nil,   nil,   nil,   nil,   nil,   599,   599,   599,   599,   599,
+   599,   599,   nil,   nil,   599,   nil,   nil,   nil,   nil,   nil,
+   nil,   599,   nil,   nil,   599,   599,   599,   599,   599,   599,
+   599,   599,   nil,   599,   599,   599,   nil,   599,   599,   nil,
+   599,   599,   599,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   599,   nil,   nil,   599,   nil,   nil,   599,   599,
+   nil,   nil,   599,   nil,   nil,   nil,   nil,   nil,   599,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   599,   nil,   nil,   nil,
+   nil,   599,   599,   599,   599,   599,   599,   nil,   nil,   nil,
+   599,   599,   nil,   nil,   nil,   nil,   nil,   nil,   599,   nil,
+   nil,   599,   599,   599,   619,   619,   619,   nil,   619,   nil,
+   nil,   nil,   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,
+   nil,   nil,   nil,   nil,   619,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   619,   nil,   nil,   nil,   nil,   619,   619,   619,
+   619,   619,   619,   nil,   nil,   nil,   619,   619,   nil,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   nil,   619,   619,   619,
+   659,   659,   659,   nil,   659,   nil,   nil,   nil,   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,   659,   nil,   nil,   nil,
+   659,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   659,   nil,
+   nil,   nil,   nil,   659,   659,   659,   659,   659,   659,   nil,
+   nil,   nil,   659,   659,   nil,   nil,   nil,   nil,   nil,   nil,
+   659,   nil,   nil,   659,   659,   659,   660,   660,   660,   nil,
+   660,   nil,   nil,   nil,   660,   660,   nil,   nil,   nil,   660,
+   nil,   660,   660,   660,   660,   660,   660,   660,   nil,   nil,
+   nil,   nil,   nil,   660,   660,   660,   660,   660,   660,   660,
+   nil,   nil,   660,   nil,   nil,   nil,   nil,   nil,   nil,   660,
+   nil,   nil,   660,   660,   660,   660,   660,   660,   660,   660,
+   nil,   660,   660,   660,   nil,   660,   660,   nil,   660,   660,
+   660,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   660,   nil,   nil,   660,   nil,   nil,   660,   660,   nil,   nil,
+   660,   nil,   nil,   nil,   nil,   nil,   660,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   660,   nil,   nil,   nil,   nil,   660,
+   660,   660,   660,   660,   660,   nil,   nil,   nil,   660,   660,
+   nil,   nil,   nil,   nil,   nil,   nil,   660,   nil,   nil,   660,
+   660,   660,   661,   661,   661,   nil,   661,   nil,   nil,   nil,
+   661,   661,   nil,   nil,   nil,   661,   nil,   661,   661,   661,
+   661,   661,   661,   661,   nil,   nil,   nil,   nil,   nil,   661,
+   661,   661,   661,   661,   661,   661,   nil,   nil,   661,   nil,
+   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,   661,   661,
+   661,   661,   661,   661,   661,   661,   661,   661,   661,   661,
+   nil,   661,   661,   nil,   661,   661,   661,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,   661,
+   nil,   nil,   661,   661,   nil,   nil,   661,   nil,   661,   nil,
+   661,   nil,   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   661,   nil,   nil,   nil,   nil,   661,   661,   661,   661,   661,
+   661,   nil,   nil,   nil,   661,   661,   nil,   nil,   nil,   nil,
+   nil,   nil,   661,   nil,   661,   661,   661,   661,   664,   664,
+   664,   nil,   664,   nil,   nil,   nil,   664,   664,   nil,   nil,
+   nil,   664,   nil,   664,   664,   664,   664,   664,   664,   664,
+   nil,   nil,   nil,   nil,   nil,   664,   664,   664,   664,   664,
+   664,   664,   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,
+   nil,   664,   nil,   nil,   664,   664,   664,   664,   664,   664,
+   664,   664,   nil,   664,   664,   664,   nil,   664,   664,   nil,
+   664,   664,   664,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   664,   nil,   nil,   664,   nil,   nil,   664,   664,
+   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,   664,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   664,   nil,   nil,   nil,
+   nil,   664,   664,   664,   664,   664,   664,   nil,   nil,   nil,
+   664,   664,   nil,   nil,   nil,   nil,   nil,   nil,   664,   nil,
+   nil,   664,   664,   664,   667,   667,   667,   nil,   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,   nil,   667,   nil,   nil,
+   667,   667,   667,   667,   667,   667,   667,   667,   667,   667,
+   667,   667,   nil,   667,   667,   nil,   667,   667,   667,   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,   667,   nil,   nil,   667,   nil,
+   667,   nil,   667,   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,   nil,   nil,   nil,   667,   nil,   667,   667,   667,   667,
+   668,   668,   668,   nil,   668,   nil,   nil,   nil,   668,   668,
+   nil,   nil,   nil,   668,   nil,   668,   668,   668,   668,   668,
+   668,   668,   nil,   nil,   nil,   nil,   nil,   668,   668,   668,
+   668,   668,   668,   668,   nil,   nil,   668,   nil,   nil,   nil,
+   nil,   nil,   nil,   668,   nil,   nil,   668,   668,   668,   668,
+   668,   668,   668,   668,   668,   668,   668,   668,   nil,   668,
+   668,   nil,   668,   668,   668,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   668,   nil,   nil,   668,   nil,   nil,
+   668,   668,   nil,   nil,   668,   nil,   nil,   nil,   668,   nil,
+   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   668,   nil,
+   nil,   nil,   nil,   668,   668,   668,   668,   668,   668,   nil,
+   nil,   nil,   668,   668,   nil,   nil,   nil,   nil,   nil,   nil,
+   668,   nil,   668,   668,   668,   668,   669,   669,   669,   nil,
+   669,   nil,   nil,   nil,   669,   669,   nil,   nil,   nil,   669,
+   nil,   669,   669,   669,   669,   669,   669,   669,   nil,   nil,
+   nil,   nil,   nil,   669,   669,   669,   669,   669,   669,   669,
+   nil,   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,   669,
+   nil,   nil,   669,   669,   669,   669,   669,   669,   669,   669,
+   nil,   669,   669,   669,   nil,   669,   669,   nil,   669,   669,
+   669,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   669,   nil,   nil,   669,   nil,   nil,   669,   669,   nil,   nil,
+   669,   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   669,   nil,   nil,   nil,   nil,   669,
+   669,   669,   669,   669,   669,   nil,   nil,   nil,   669,   669,
+   nil,   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,
+   669,   669,   670,   670,   670,   nil,   670,   nil,   nil,   nil,
+   670,   670,   nil,   nil,   nil,   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,
+   670,   670,   670,   670,   670,   670,   nil,   670,   670,   670,
+   nil,   670,   670,   nil,   670,   670,   670,   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,   670,   nil,   nil,   670,   nil,   nil,   nil,
+   nil,   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,   nil,
+   nil,   nil,   670,   nil,   nil,   670,   670,   670,   675,   675,
+   675,   nil,   675,   nil,   nil,   nil,   675,   675,   nil,   nil,
+   nil,   675,   nil,   675,   675,   675,   675,   675,   675,   675,
+   nil,   nil,   nil,   nil,   nil,   675,   675,   675,   675,   675,
+   675,   675,   nil,   nil,   675,   nil,   nil,   nil,   nil,   nil,
+   nil,   675,   nil,   nil,   675,   675,   675,   675,   675,   675,
+   675,   675,   nil,   675,   675,   675,   nil,   675,   675,   nil,
+   675,   675,   675,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   675,   nil,   nil,   675,   nil,   nil,   675,   675,
+   nil,   nil,   675,   nil,   nil,   nil,   nil,   nil,   675,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   nil,
+   nil,   675,   675,   675,   675,   675,   675,   nil,   nil,   nil,
+   675,   675,   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,
+   nil,   675,   675,   675,   676,   676,   676,   nil,   676,   nil,
+   nil,   nil,   676,   676,   nil,   nil,   nil,   676,   nil,   676,
+   676,   676,   676,   676,   676,   676,   nil,   nil,   nil,   nil,
+   nil,   676,   676,   676,   676,   676,   676,   676,   nil,   nil,
+   676,   nil,   nil,   nil,   nil,   nil,   nil,   676,   nil,   nil,
+   676,   676,   676,   676,   676,   676,   676,   676,   nil,   676,
+   676,   676,   nil,   676,   676,   nil,   676,   676,   676,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   676,   nil,
+   nil,   676,   nil,   nil,   676,   676,   nil,   nil,   676,   nil,
+   nil,   nil,   nil,   nil,   676,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   676,   nil,   nil,   nil,   nil,   676,   676,   676,
+   676,   676,   676,   nil,   nil,   nil,   676,   676,   nil,   nil,
+   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   676,   676,
+   700,   700,   700,   nil,   700,   nil,   nil,   nil,   700,   700,
+   nil,   nil,   nil,   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,   700,   700,
+   700,   700,   700,   700,   nil,   700,   700,   700,   nil,   700,
+   700,   nil,   700,   700,   700,   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,   700,   nil,   nil,   700,   nil,   nil,   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,   nil,   nil,   nil,
+   700,   nil,   nil,   700,   700,   700,   706,   706,   706,   nil,
+   706,   nil,   nil,   nil,   706,   706,   nil,   nil,   nil,   706,
+   nil,   706,   706,   706,   706,   706,   706,   706,   nil,   nil,
+   nil,   nil,   nil,   706,   706,   706,   706,   706,   706,   706,
+   nil,   nil,   706,   nil,   nil,   nil,   nil,   nil,   nil,   706,
+   nil,   nil,   706,   706,   706,   706,   706,   706,   706,   706,
+   nil,   706,   706,   706,   nil,   706,   706,   nil,   nil,   nil,
+   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,
+   706,   706,   706,   706,   706,   nil,   nil,   nil,   706,   706,
+   nil,   nil,   nil,   nil,   nil,   nil,   706,   nil,   nil,   706,
+   706,   706,   717,   717,   717,   nil,   717,   nil,   nil,   nil,
+   717,   717,   nil,   nil,   nil,   717,   nil,   717,   717,   717,
+   717,   717,   717,   717,   nil,   nil,   nil,   nil,   nil,   717,
+   717,   717,   717,   717,   717,   717,   nil,   nil,   717,   nil,
+   nil,   nil,   nil,   nil,   nil,   717,   nil,   nil,   717,   717,
+   717,   717,   717,   717,   717,   717,   nil,   717,   717,   717,
+   nil,   717,   717,   nil,   nil,   nil,   717,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   717,   nil,   nil,   717,
+   nil,   nil,   717,   717,   nil,   nil,   717,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   717,   717,   717,   717,   717,
+   717,   nil,   nil,   nil,   717,   717,   nil,   nil,   nil,   nil,
+   nil,   nil,   717,   nil,   nil,   717,   717,   717,   724,   724,
+   724,   nil,   724,   nil,   nil,   nil,   724,   724,   nil,   nil,
+   nil,   724,   nil,   724,   724,   724,   724,   724,   724,   724,
+   nil,   nil,   nil,   nil,   nil,   724,   724,   724,   724,   724,
+   724,   724,   nil,   nil,   724,   nil,   nil,   nil,   nil,   nil,
+   nil,   724,   nil,   nil,   724,   724,   724,   724,   724,   724,
+   724,   724,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   724,   nil,
+   nil,   724,   724,   724,   729,   729,   729,   nil,   729,   nil,
+   nil,   nil,   729,   729,   nil,   nil,   nil,   729,   nil,   729,
+   729,   729,   729,   729,   729,   729,   nil,   nil,   nil,   nil,
+   nil,   729,   729,   729,   729,   729,   729,   729,   nil,   nil,
+   729,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,   nil,
+   729,   729,   729,   729,   729,   729,   729,   729,   729,   729,
+   729,   729,   nil,   729,   729,   nil,   729,   729,   729,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,
+   nil,   729,   nil,   nil,   729,   729,   nil,   nil,   729,   nil,
+   729,   nil,   nil,   nil,   729,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   729,   nil,   nil,   nil,   nil,   729,   729,   729,
+   729,   729,   729,   nil,   nil,   nil,   729,   729,   nil,   nil,
+   nil,   nil,   nil,   nil,   729,   nil,   729,   729,   729,   729,
+   732,   732,   732,   nil,   732,   nil,   nil,   nil,   732,   732,
+   nil,   nil,   nil,   732,   nil,   732,   732,   732,   732,   732,
+   732,   732,   nil,   nil,   nil,   nil,   nil,   732,   732,   732,
+   732,   732,   732,   732,   nil,   nil,   732,   nil,   nil,   nil,
+   nil,   nil,   nil,   732,   nil,   nil,   732,   732,   732,   732,
+   732,   732,   732,   732,   732,   732,   732,   732,   nil,   732,
+   732,   nil,   732,   732,   732,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   732,   nil,   nil,   732,   nil,   nil,
+   732,   732,   nil,   nil,   732,   nil,   nil,   nil,   nil,   nil,
+   732,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   732,   nil,
+   nil,   nil,   nil,   732,   732,   732,   732,   732,   732,   nil,
+   nil,   nil,   732,   732,   nil,   nil,   nil,   nil,   nil,   nil,
+   732,   nil,   732,   732,   732,   732,   746,   746,   746,   nil,
+   746,   nil,   nil,   nil,   746,   746,   nil,   nil,   nil,   746,
+   nil,   746,   746,   746,   746,   746,   746,   746,   nil,   nil,
+   nil,   nil,   nil,   746,   746,   746,   746,   746,   746,   746,
+   nil,   nil,   746,   nil,   nil,   nil,   nil,   nil,   nil,   746,
+   nil,   nil,   746,   746,   746,   746,   746,   746,   746,   746,
+   nil,   746,   746,   746,   nil,   746,   746,   nil,   746,   746,
+   746,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   746,   nil,   nil,   746,   nil,   nil,   746,   746,   nil,   nil,
+   746,   nil,   746,   nil,   nil,   nil,   746,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   746,   nil,   nil,   nil,   nil,   746,
+   746,   746,   746,   746,   746,   nil,   nil,   nil,   746,   746,
+   nil,   nil,   nil,   nil,   nil,   nil,   746,   nil,   nil,   746,
+   746,   746,   758,   758,   758,   nil,   758,   nil,   nil,   nil,
+   758,   758,   nil,   nil,   nil,   758,   nil,   758,   758,   758,
+   758,   758,   758,   758,   nil,   nil,   nil,   nil,   nil,   758,
+   758,   758,   758,   758,   758,   758,   nil,   nil,   758,   nil,
+   nil,   nil,   nil,   nil,   nil,   758,   nil,   nil,   758,   758,
+   758,   758,   758,   758,   758,   758,   nil,   758,   758,   758,
+   nil,   758,   758,   nil,   758,   758,   758,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   758,   nil,   nil,   758,
+   nil,   nil,   758,   758,   nil,   nil,   758,   nil,   nil,   nil,
+   nil,   nil,   758,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   758,   nil,   nil,   nil,   nil,   758,   758,   758,   758,   758,
+   758,   nil,   nil,   nil,   758,   758,   nil,   nil,   nil,   nil,
+   nil,   nil,   758,   nil,   nil,   758,   758,   758,   778,   778,
+   778,   nil,   778,   nil,   nil,   nil,   778,   778,   nil,   nil,
+   nil,   778,   nil,   778,   778,   778,   778,   778,   778,   778,
+   nil,   nil,   nil,   nil,   nil,   778,   778,   778,   778,   778,
+   778,   778,   nil,   nil,   778,   nil,   nil,   nil,   nil,   nil,
+   nil,   778,   nil,   nil,   778,   778,   778,   778,   778,   778,
+   778,   778,   nil,   778,   778,   778,   nil,   778,   778,   nil,
+   778,   778,   778,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   778,   nil,   nil,   778,   nil,   nil,   778,   778,
+   nil,   nil,   778,   nil,   nil,   nil,   nil,   nil,   778,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   778,   nil,   nil,   nil,
+   nil,   778,   778,   778,   778,   778,   778,   nil,   nil,   nil,
+   778,   778,   nil,   nil,   nil,   nil,   nil,   nil,   778,   nil,
+   nil,   778,   778,   778,   801,   801,   801,   nil,   801,   nil,
+   nil,   nil,   801,   801,   nil,   nil,   nil,   801,   nil,   801,
+   801,   801,   801,   801,   801,   801,   nil,   nil,   nil,   nil,
+   nil,   801,   801,   801,   801,   801,   801,   801,   nil,   nil,
+   801,   nil,   nil,   nil,   nil,   nil,   nil,   801,   nil,   nil,
+   801,   801,   801,   801,   801,   801,   801,   801,   nil,   801,
+   801,   801,   nil,   801,   801,   nil,   801,   801,   801,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   801,   nil,
+   nil,   801,   nil,   nil,   801,   801,   nil,   nil,   801,   nil,
+   nil,   nil,   nil,   nil,   801,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   801,   nil,   nil,   nil,   nil,   801,   801,   801,
+   801,   801,   801,   nil,   nil,   nil,   801,   801,   nil,   nil,
+   nil,   nil,   nil,   nil,   801,   nil,   nil,   801,   801,   801,
+   808,   808,   808,   nil,   808,   nil,   nil,   nil,   808,   808,
+   nil,   nil,   nil,   808,   nil,   808,   808,   808,   808,   808,
+   808,   808,   nil,   nil,   nil,   nil,   nil,   808,   808,   808,
+   808,   808,   808,   808,   nil,   nil,   808,   nil,   nil,   nil,
+   nil,   nil,   nil,   808,   nil,   nil,   808,   808,   808,   808,
+   808,   808,   808,   808,   nil,   808,   808,   808,   nil,   808,
+   808,   nil,   808,   808,   808,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   808,   nil,   nil,   808,   nil,   nil,
+   808,   808,   nil,   nil,   808,   nil,   nil,   nil,   nil,   nil,
+   808,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   808,   nil,
+   nil,   nil,   nil,   808,   808,   808,   808,   808,   808,   nil,
+   nil,   nil,   808,   808,   nil,   nil,   nil,   nil,   nil,   nil,
+   808,   nil,   nil,   808,   808,   808,   821,   821,   821,   nil,
+   821,   nil,   nil,   nil,   821,   821,   nil,   nil,   nil,   821,
+   nil,   821,   821,   821,   821,   821,   821,   821,   nil,   nil,
+   nil,   nil,   nil,   821,   821,   821,   821,   821,   821,   821,
+   nil,   nil,   821,   nil,   nil,   nil,   nil,   nil,   nil,   821,
+   nil,   nil,   821,   821,   821,   821,   821,   821,   821,   821,
+   nil,   821,   821,   821,   nil,   821,   821,   nil,   821,   821,
+   821,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   821,   nil,   nil,   821,   nil,   nil,   821,   821,   nil,   nil,
+   821,   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   821,   nil,   nil,   nil,   nil,   821,
+   821,   821,   821,   821,   821,   nil,   nil,   nil,   821,   821,
+   nil,   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,   821,
+   821,   821,   822,   822,   822,   nil,   822,   nil,   nil,   nil,
+   822,   822,   nil,   nil,   nil,   822,   nil,   822,   822,   822,
+   822,   822,   822,   822,   nil,   nil,   nil,   nil,   nil,   822,
+   822,   822,   822,   822,   822,   822,   nil,   nil,   822,   nil,
+   nil,   nil,   nil,   nil,   nil,   822,   nil,   nil,   822,   822,
+   822,   822,   822,   822,   822,   822,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   822,   nil,   nil,   822,   822,   822,   823,   823,
+   823,   nil,   823,   nil,   nil,   nil,   823,   823,   nil,   nil,
+   nil,   823,   nil,   823,   823,   823,   823,   823,   823,   823,
+   nil,   nil,   nil,   nil,   nil,   823,   823,   823,   823,   823,
+   823,   823,   nil,   nil,   823,   nil,   nil,   nil,   nil,   nil,
+   nil,   823,   nil,   nil,   823,   823,   823,   823,   823,   823,
+   823,   823,   nil,   823,   823,   823,   nil,   823,   823,   nil,
+   823,   823,   823,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   823,   nil,   nil,   823,   nil,   nil,   823,   823,
+   nil,   nil,   823,   nil,   nil,   nil,   nil,   nil,   823,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,   nil,
+   nil,   823,   823,   823,   823,   823,   823,   nil,   nil,   nil,
+   823,   823,   nil,   nil,   nil,   nil,   nil,   nil,   823,   nil,
+   nil,   823,   823,   823,   824,   824,   824,   nil,   824,   nil,
+   nil,   nil,   824,   824,   nil,   nil,   nil,   824,   nil,   824,
+   824,   824,   824,   824,   824,   824,   nil,   nil,   nil,   nil,
+   nil,   824,   824,   824,   824,   824,   824,   824,   nil,   nil,
+   824,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,
+   824,   824,   824,   824,   824,   824,   824,   824,   nil,   824,
+   824,   824,   nil,   824,   824,   nil,   824,   824,   824,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,
+   nil,   824,   nil,   nil,   824,   824,   nil,   nil,   824,   nil,
+   nil,   nil,   nil,   nil,   824,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   824,   nil,   nil,   nil,   nil,   824,   824,   824,
+   824,   824,   824,   nil,   nil,   nil,   824,   824,   nil,   nil,
+   nil,   nil,   nil,   nil,   824,   nil,   nil,   824,   824,   824,
+   826,   826,   826,   nil,   826,   nil,   nil,   nil,   826,   826,
+   nil,   nil,   nil,   826,   nil,   826,   826,   826,   826,   826,
+   826,   826,   nil,   nil,   nil,   nil,   nil,   826,   826,   826,
+   826,   826,   826,   826,   nil,   nil,   826,   nil,   nil,   nil,
+   nil,   nil,   nil,   826,   nil,   nil,   826,   826,   826,   826,
+   826,   826,   826,   826,   nil,   826,   826,   826,   nil,   826,
+   826,   nil,   826,   826,   826,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   826,   nil,   nil,   826,   nil,   nil,
+   826,   826,   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,
+   826,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,
+   nil,   nil,   nil,   826,   826,   826,   826,   826,   826,   nil,
+   nil,   nil,   826,   826,   nil,   nil,   nil,   nil,   nil,   nil,
+   826,   nil,   nil,   826,   826,   826,   858,   858,   858,   nil,
+   858,   nil,   nil,   nil,   858,   858,   nil,   nil,   nil,   858,
+   nil,   858,   858,   858,   858,   858,   858,   858,   nil,   nil,
+   nil,   nil,   nil,   858,   858,   858,   858,   858,   858,   858,
+   nil,   nil,   858,   nil,   nil,   nil,   nil,   nil,   nil,   858,
+   nil,   nil,   858,   858,   858,   858,   858,   858,   858,   858,
+   nil,   858,   858,   858,   nil,   858,   858,   nil,   858,   858,
+   858,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   858,   nil,   nil,   858,   nil,   nil,   858,   858,   nil,   nil,
+   858,   nil,   nil,   nil,   nil,   nil,   858,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   858,   nil,   nil,   nil,   nil,   858,
+   858,   858,   858,   858,   858,   nil,   nil,   nil,   858,   858,
+   nil,   nil,   nil,   nil,   nil,   nil,   858,   nil,   nil,   858,
+   858,   858,   865,   865,   865,   nil,   865,   nil,   nil,   nil,
+   865,   865,   nil,   nil,   nil,   865,   nil,   865,   865,   865,
+   865,   865,   865,   865,   nil,   nil,   nil,   nil,   nil,   865,
+   865,   865,   865,   865,   865,   865,   nil,   nil,   865,   nil,
+   nil,   nil,   nil,   nil,   nil,   865,   nil,   nil,   865,   865,
+   865,   865,   865,   865,   865,   865,   nil,   865,   865,   865,
+   nil,   865,   865,   nil,   865,   865,   865,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   865,   nil,   nil,   865,
+   nil,   nil,   865,   865,   nil,   nil,   865,   nil,   nil,   nil,
+   nil,   nil,   865,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   865,   nil,   nil,   nil,   nil,   865,   865,   865,   865,   865,
+   865,   nil,   nil,   nil,   865,   865,   nil,   nil,   nil,   nil,
+   nil,   nil,   865,   nil,   nil,   865,   865,   865,   912,   912,
+   912,   nil,   912,   nil,   nil,   nil,   912,   912,   nil,   nil,
+   nil,   912,   nil,   912,   912,   912,   912,   912,   912,   912,
+   nil,   nil,   nil,   nil,   nil,   912,   912,   912,   912,   912,
+   912,   912,   nil,   nil,   912,   nil,   nil,   nil,   nil,   nil,
+   nil,   912,   nil,   nil,   912,   912,   912,   912,   912,   912,
+   912,   912,   912,   912,   912,   912,   nil,   912,   912,   nil,
+   912,   912,   912,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   912,   nil,   nil,   912,   nil,   nil,   912,   912,
+   nil,   nil,   912,   nil,   nil,   nil,   912,   nil,   912,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   912,   nil,   nil,   nil,
+   nil,   912,   912,   912,   912,   912,   912,   nil,   nil,   nil,
+   912,   912,   nil,   nil,   nil,   nil,   nil,   nil,   912,   nil,
+   912,   912,   912,   912,   913,   913,   913,   nil,   913,   nil,
+   nil,   nil,   913,   913,   nil,   nil,   nil,   913,   nil,   913,
+   913,   913,   913,   913,   913,   913,   nil,   nil,   nil,   nil,
+   nil,   913,   913,   913,   913,   913,   913,   913,   nil,   nil,
+   913,   nil,   nil,   nil,   nil,   nil,   nil,   913,   nil,   nil,
+   913,   913,   913,   913,   913,   913,   913,   913,   nil,   913,
+   913,   913,   nil,   913,   913,   nil,   913,   913,   913,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   913,   nil,
+   nil,   913,   nil,   nil,   913,   913,   nil,   nil,   913,   nil,
+   nil,   nil,   nil,   nil,   913,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   913,   nil,   nil,   nil,   nil,   913,   913,   913,
+   913,   913,   913,   nil,   nil,   nil,   913,   913,   nil,   nil,
+   nil,   nil,   nil,   nil,   913,   nil,   nil,   913,   913,   913,
+   925,   925,   925,   nil,   925,   nil,   nil,   nil,   925,   925,
+   nil,   nil,   nil,   925,   nil,   925,   925,   925,   925,   925,
+   925,   925,   nil,   nil,   nil,   nil,   nil,   925,   925,   925,
+   925,   925,   925,   925,   nil,   nil,   925,   nil,   nil,   nil,
+   nil,   nil,   nil,   925,   nil,   nil,   925,   925,   925,   925,
+   925,   925,   925,   925,   nil,   925,   925,   925,   nil,   925,
+   925,   nil,   nil,   nil,   925,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   925,   nil,   nil,   925,   nil,   nil,
+   925,   925,   nil,   nil,   925,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   925,   925,   925,   925,   925,   925,   nil,
+   nil,   nil,   925,   925,   nil,   nil,   nil,   nil,   nil,   nil,
+   925,   nil,   nil,   925,   925,   925,   934,   934,   934,   nil,
+   934,   nil,   nil,   nil,   934,   934,   nil,   nil,   nil,   934,
+   nil,   934,   934,   934,   934,   934,   934,   934,   nil,   nil,
+   nil,   nil,   nil,   934,   934,   934,   934,   934,   934,   934,
+   nil,   nil,   934,   nil,   nil,   nil,   nil,   nil,   nil,   934,
+   nil,   nil,   934,   934,   934,   934,   934,   934,   934,   934,
+   nil,   934,   934,   934,   nil,   934,   934,   nil,   nil,   nil,
+   934,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   934,   nil,   nil,   934,   nil,   nil,   934,   934,   nil,   nil,
+   934,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   934,
+   934,   934,   934,   934,   934,   nil,   nil,   nil,   934,   934,
+   nil,   nil,   nil,   nil,   nil,   nil,   934,   nil,   nil,   934,
+   934,   934,   942,   942,   942,   nil,   942,   nil,   nil,   nil,
+   942,   942,   nil,   nil,   nil,   942,   nil,   942,   942,   942,
+   942,   942,   942,   942,   nil,   nil,   nil,   nil,   nil,   942,
+   942,   942,   942,   942,   942,   942,   nil,   nil,   942,   nil,
+   nil,   nil,   nil,   nil,   nil,   942,   nil,   nil,   942,   942,
+   942,   942,   942,   942,   942,   942,   nil,   942,   942,   942,
+   nil,   942,   942,   nil,   942,   942,   942,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   942,   nil,   nil,   942,
+   nil,   nil,   942,   942,   nil,   nil,   942,   nil,   942,   nil,
+   nil,   nil,   942,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   942,   nil,   nil,   nil,   nil,   942,   942,   942,   942,   942,
+   942,   nil,   nil,   nil,   942,   942,   nil,   nil,   nil,   nil,
+   nil,   nil,   942,   nil,   nil,   942,   942,   942,   983,   983,
+   983,   nil,   983,   nil,   nil,   nil,   983,   983,   nil,   nil,
+   nil,   983,   nil,   983,   983,   983,   983,   983,   983,   983,
+   nil,   nil,   nil,   nil,   nil,   983,   983,   983,   983,   983,
+   983,   983,   nil,   nil,   983,   nil,   nil,   nil,   nil,   nil,
+   nil,   983,   nil,   nil,   983,   983,   983,   983,   983,   983,
+   983,   983,   nil,   983,   983,   983,   nil,   983,   983,   nil,
+   nil,   nil,   983,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   983,   nil,   nil,   983,   nil,   nil,   983,   983,
+   nil,   nil,   983,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   983,   983,   983,   983,   983,   983,   nil,   nil,   nil,
+   983,   983,   nil,   nil,   nil,   nil,   nil,   nil,   983,   nil,
+   nil,   983,   983,   983,   997,   997,   997,   nil,   997,   nil,
+   nil,   nil,   997,   997,   nil,   nil,   nil,   997,   nil,   997,
+   997,   997,   997,   997,   997,   997,   nil,   nil,   nil,   nil,
+   nil,   997,   997,   997,   997,   997,   997,   997,   nil,   nil,
+   997,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,   nil,
+   997,   997,   997,   997,   997,   997,   997,   997,   nil,   997,
+   997,   997,   nil,   997,   997,   nil,   997,   997,   997,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,
+   nil,   997,   nil,   nil,   997,   997,   nil,   nil,   997,   nil,
+   nil,   nil,   nil,   nil,   997,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   997,   nil,   nil,   nil,   nil,   997,   997,   997,
+   997,   997,   997,   nil,   nil,   nil,   997,   997,   nil,   nil,
+   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,   997,   997,
+  1028,  1028,  1028,   nil,  1028,   nil,   nil,   nil,  1028,  1028,
+   nil,   nil,   nil,  1028,   nil,  1028,  1028,  1028,  1028,  1028,
+  1028,  1028,   nil,   nil,   nil,   nil,   nil,  1028,  1028,  1028,
+  1028,  1028,  1028,  1028,   nil,   nil,  1028,   nil,   nil,   nil,
+   nil,   nil,   nil,  1028,   nil,   nil,  1028,  1028,  1028,  1028,
+  1028,  1028,  1028,  1028,  1028,  1028,  1028,  1028,   nil,  1028,
+  1028,   nil,  1028,  1028,  1028,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1028,   nil,   nil,  1028,   nil,   nil,
+  1028,  1028,   nil,   nil,  1028,   nil,  1028,   nil,  1028,   nil,
+  1028,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1028,   nil,
+   nil,   nil,   nil,  1028,  1028,  1028,  1028,  1028,  1028,   nil,
+   nil,   nil,  1028,  1028,   nil,   nil,   nil,   nil,   nil,   nil,
+  1028,   nil,  1028,  1028,  1028,  1028,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,   nil,   nil,   nil,   nil,   nil,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,   nil,    11,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
+   nil,    11,    11,    11,    11,    11,    11,    11,   nil,   nil,
+    11,    11,   nil,   nil,   nil,    11,    11,    11,    11,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,   nil,   nil,    11,    11,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,   nil,   nil,   nil,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,   nil,
+   nil,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
+    12,   nil,   nil,    12,    12,   nil,   nil,   nil,    12,    12,
+    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
+   nil,    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    12,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,   nil,   nil,   nil,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,   nil,
+   nil,   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,   nil,    75,   nil,   nil,
+   nil,   nil,   nil,   nil,    75,    75,   nil,    75,    75,    75,
+    75,    75,    75,    75,   nil,   nil,    75,    75,   nil,   nil,
+   nil,    75,    75,    75,    75,   nil,   nil,   nil,   nil,   nil,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,
+   nil,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    75,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
+   nil,   nil,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   nil,   nil,   nil,   nil,   nil,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
+   105,   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,
+   105,   105,   105,   105,   105,   105,   105,   nil,   nil,   105,
+   105,   nil,   nil,   nil,   105,   105,   105,   105,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,   105,   nil,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   nil,   nil,   105,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,   424,   424,
+   424,   424,   424,   424,   424,   424,   424,   424,   424,   424,
+   424,   424,   424,   424,   424,   424,   424,   424,   424,   424,
+   424,   424,   nil,   nil,   nil,   424,   424,   424,   424,   424,
+   424,   424,   424,   424,   424,   nil,   nil,   nil,   nil,   nil,
+   424,   424,   424,   424,   424,   424,   424,   424,   424,   nil,
+   nil,   424,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   424,   424,   nil,   424,   424,   424,   424,   424,   424,   424,
+   nil,   nil,   424,   424,   nil,   nil,   nil,   424,   424,   424,
+   424,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   424,   424,   nil,   424,   424,   424,
+   424,   424,   424,   424,   424,   424,   424,   424,   nil,   nil,
+   424,   424,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   424,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   424,   656,   656,   656,   656,   656,   656,   656,   656,   656,
+   656,   656,   656,   656,   656,   656,   656,   656,   656,   656,
+   656,   656,   656,   656,   656,   nil,   nil,   nil,   656,   656,
+   656,   656,   656,   656,   656,   656,   656,   656,   nil,   nil,
+   nil,   nil,   nil,   656,   656,   656,   656,   656,   656,   656,
+   656,   656,   nil,   nil,   656,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   656,   656,   nil,   656,   656,   656,   656,
+   656,   656,   656,   nil,   nil,   656,   656,   nil,   nil,   nil,
+   656,   656,   656,   656,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   656,   656,   nil,
+   656,   656,   656,   656,   656,   656,   656,   656,   656,   656,
+   656,   nil,   nil,   656,   656,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   656,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   656,   764,   764,   764,   764,   764,   764,
+   764,   764,   764,   764,   764,   764,   764,   764,   764,   764,
+   764,   764,   764,   764,   764,   764,   764,   764,   nil,   nil,
+   nil,   764,   764,   764,   764,   764,   764,   764,   764,   764,
+   764,   nil,   nil,   nil,   nil,   nil,   764,   764,   764,   764,
+   764,   764,   764,   764,   764,   nil,   nil,   764,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   764,   764,   nil,   764,
+   764,   764,   764,   764,   764,   764,   nil,   nil,   764,   764,
+   nil,   nil,   nil,   764,   764,   764,   764,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   764,   764,   nil,   764,   764,   764,   764,   764,   764,   764,
+   764,   764,   764,   764,   nil,   nil,   764,   nil,   nil,   nil,
+   nil,   225,   225,   nil,   nil,   225,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   225,   225,   764,   225,   225,   225,
+   225,   225,   225,   225,   nil,   nil,   225,   225,   nil,   nil,
+   nil,   225,   225,   225,   225,   nil,   nil,   nil,   nil,   nil,
+   225,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   225,   225,
+   nil,   225,   225,   225,   225,   225,   225,   225,   225,   225,
+   225,   225,   nil,   nil,   225,   nil,   nil,   nil,   nil,   226,
+   226,   nil,   nil,   226,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   226,   226,   225,   226,   226,   226,   226,   226,
+   226,   226,   nil,   nil,   226,   226,   nil,   nil,   nil,   226,
+   226,   226,   226,   nil,   nil,   nil,   nil,   nil,   226,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   226,   226,   nil,   226,
+   226,   226,   226,   226,   226,   226,   226,   226,   226,   226,
+   nil,   nil,   226,   nil,   nil,   nil,   nil,   274,   274,   nil,
+   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   274,   274,   226,   274,   274,   274,   274,   274,   274,   274,
+   nil,   nil,   274,   274,   nil,   nil,   nil,   274,   274,   274,
+   274,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   274,   274,   nil,   274,   274,   274,
+   274,   274,   274,   274,   274,   274,   274,   274,   nil,   nil,
+   274,   nil,   nil,   nil,   nil,   474,   474,   nil,   nil,   474,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   474,   474,
+   274,   474,   474,   474,   474,   474,   474,   474,   nil,   nil,
+   474,   474,   nil,   nil,   nil,   474,   474,   474,   474,   nil,
+   nil,   nil,   nil,   nil,   474,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   474,   474,   nil,   474,   474,   474,   474,   474,
+   474,   474,   474,   474,   474,   474,   nil,   nil,   474,   nil,
+   nil,   nil,   nil,   475,   475,   nil,   nil,   475,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   475,   475,   474,   475,
+   475,   475,   475,   475,   475,   475,   nil,   nil,   475,   475,
+   nil,   nil,   nil,   475,   475,   475,   475,   nil,   nil,   nil,
+   nil,   nil,   475,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   475,   475,   nil,   475,   475,   475,   475,   475,   475,   475,
+   475,   475,   475,   475,   nil,   nil,   475,   nil,   nil,   nil,
+   nil,   539,   539,   nil,   nil,   539,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   539,   539,   475,   539,   539,   539,
+   539,   539,   539,   539,   nil,   nil,   539,   539,   nil,   nil,
+   nil,   539,   539,   539,   539,   nil,   nil,   nil,   nil,   nil,
+   539,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   539,   539,
+   nil,   539,   539,   539,   539,   539,   539,   539,   539,   539,
+   539,   539,   nil,   nil,   539,   nil,   nil,   nil,   nil,   540,
+   540,   nil,   nil,   540,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   540,   540,   539,   540,   540,   540,   540,   540,
+   540,   540,   nil,   nil,   540,   540,   nil,   nil,   nil,   540,
+   540,   540,   540,   nil,   nil,   nil,   nil,   nil,   540,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   540,   540,   nil,   540,
+   540,   540,   540,   540,   540,   540,   540,   540,   540,   540,
+   nil,   nil,   540,   nil,   nil,   nil,   nil,   551,   551,   nil,
+   nil,   551,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   551,   551,   540,   551,   551,   551,   551,   551,   551,   551,
+   nil,   nil,   551,   551,   nil,   nil,   nil,   551,   551,   551,
+   551,   nil,   nil,   nil,   nil,   nil,   551,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   551,   551,   nil,   551,   551,   551,
+   551,   551,   551,   551,   551,   551,   551,   551,   nil,   nil,
+   551,   nil,   nil,   nil,   nil,   552,   552,   nil,   nil,   552,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   552,   552,
+   551,   552,   552,   552,   552,   552,   552,   552,   nil,   nil,
+   552,   552,   nil,   nil,   nil,   552,   552,   552,   552,   nil,
+   nil,   nil,   nil,   nil,   552,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   552,   552,   nil,   552,   552,   552,   552,   552,
+   552,   552,   552,   552,   552,   552,   nil,   nil,   552,   nil,
+   nil,   nil,   nil,   580,   580,   nil,   nil,   580,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   580,   580,   552,   580,
+   580,   580,   580,   580,   580,   580,   nil,   nil,   580,   580,
+   nil,   nil,   nil,   580,   580,   580,   580,   nil,   nil,   nil,
+   nil,   nil,   580,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   580,   580,   nil,   580,   580,   580,   580,   580,   580,   580,
+   580,   580,   580,   580,   nil,   nil,   580,   nil,   nil,   nil,
+   nil,   581,   581,   nil,   nil,   581,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   581,   581,   580,   581,   581,   581,
+   581,   581,   581,   581,   nil,   nil,   581,   581,   nil,   nil,
+   nil,   581,   581,   581,   581,   nil,   nil,   nil,   nil,   nil,
+   581,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   581,   581,
+   nil,   581,   581,   581,   581,   581,   581,   581,   581,   581,
+   581,   581,   nil,   nil,   581,   nil,   nil,   nil,   nil,   587,
+   587,   nil,   nil,   587,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   587,   587,   581,   587,   587,   587,   587,   587,
+   587,   587,   nil,   nil,   587,   587,   nil,   nil,   nil,   587,
+   587,   587,   587,   nil,   nil,   nil,   nil,   nil,   587,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   587,   587,   nil,   587,
+   587,   587,   587,   587,   587,   587,   587,   587,   587,   587,
+   nil,   nil,   587,   nil,   nil,   nil,   nil,   588,   588,   nil,
+   nil,   588,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   588,   588,   587,   588,   588,   588,   588,   588,   588,   588,
+   nil,   nil,   588,   588,   nil,   nil,   nil,   588,   588,   588,
+   588,   nil,   nil,   nil,   nil,   nil,   588,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   588,   588,   nil,   588,   588,   588,
+   588,   588,   588,   588,   588,   588,   588,   588,   nil,   nil,
+   588,   nil,   nil,   nil,   nil,   662,   662,   nil,   nil,   662,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   662,
+   588,   662,   662,   662,   662,   662,   662,   662,   nil,   nil,
+   662,   662,   nil,   nil,   nil,   662,   662,   662,   662,   nil,
+   nil,   nil,   nil,   nil,   662,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   662,   662,   nil,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   nil,   nil,   662,   nil,
+   nil,   nil,   nil,   663,   663,   nil,   nil,   663,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   663,   663,   662,   663,
+   663,   663,   663,   663,   663,   663,   nil,   nil,   663,   663,
+   nil,   nil,   nil,   663,   663,   663,   663,   nil,   nil,   nil,
+   nil,   nil,   663,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   663,   663,   nil,   663,   663,   663,   663,   663,   663,   663,
+   663,   663,   663,   663,   nil,   974,   663,   974,   974,   974,
+   974,   974,   977,   nil,   977,   977,   977,   977,   977,   nil,
+   nil,   974,   nil,   nil,   nil,   nil,   663,   nil,   977,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   974,   nil,   nil,   nil,   nil,   nil,   nil,
+   977,   nil,   974,   974,   974,   974,   nil,   nil,   nil,   977,
+   977,   977,   977,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1024,  1024,   nil,   nil,  1024,   nil,   nil,   nil,   974,   nil,
+   nil,   nil,   nil,  1024,  1024,   977,  1024,  1024,  1024,  1024,
+  1024,  1024,  1024,   nil,   nil,  1024,  1024,   nil,   nil,   nil,
+  1024,  1024,  1024,  1024,   nil,   nil,   nil,   nil,   nil,  1024,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1024,  1024,   nil,
+  1024,  1024,  1024,  1024,  1024,  1024,  1024,  1024,  1024,  1024,
+  1024,   nil,   nil,  1024,   nil,   nil,   nil,   nil,  1029,  1029,
+   nil,   nil,  1029,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1029,  1029,  1024,  1029,  1029,  1029,  1029,  1029,  1029,
+  1029,   nil,   nil,  1029,  1029,   nil,   nil,   nil,  1029,  1029,
+  1029,  1029,   nil,   nil,   nil,   nil,   nil,  1029,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1029,  1029,   nil,  1029,  1029,
+  1029,  1029,  1029,  1029,  1029,  1029,  1029,  1029,  1029,   nil,
+   nil,  1029,   nil,   nil,   nil,   nil,  1030,  1030,   nil,   nil,
+  1030,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1030,
+  1030,  1029,  1030,  1030,  1030,  1030,  1030,  1030,  1030,   nil,
+   nil,  1030,  1030,   nil,   nil,   nil,  1030,  1030,  1030,  1030,
+   nil,   nil,   nil,   nil,   nil,  1030,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1030,  1030,   nil,  1030,  1030,  1030,  1030,
+  1030,  1030,  1030,  1030,  1030,  1030,  1030,   nil,  1048,  1030,
+  1048,  1048,  1048,  1048,  1048,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1048,   nil,   nil,   nil,   nil,  1030,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1048,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1048,  1048,  1048,  1048,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1048 ]
+
+racc_action_pointer = [
+   nil,   100,     0,   114,   nil,   597,   nil,   nil,  5806,  1203,
+   nil, 23214, 23347,   111,   nil,   108,   158,   118,   243,   234,
+   228,   nil,   104,  5942,  2245,   305,   nil,   228,   nil,   142,
+  1060,  1188,  6078,  6214,  6350,   nil,  1971,  6486,  6622,   nil,
+   205,   271,   439,   371,   117,  6758,  6894,   716,  7030,   314,
+   435,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1316,   nil,  7166,   nil,   nil,    87,   nil,  7302,  7438,   nil,
+   nil,  7574,  7710,  7846,  7982, 23480,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   176,   nil,   nil,   nil,   nil,   nil,   nil,   312,
+   354,   366,   415,   nil,   nil, 23613,   nil,   nil,   nil,     0,
+   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  8118,   nil,   nil,   nil,   nil,
+  8254,  8390,  8526,  8662,  8798,   453,   nil,   403,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   447,   nil,  2108,  8934,
+  9070,  9206,  9342,  9478,  9614, 24080, 24148,   nil,  9750,  9886,
+ 10022,   nil,   nil,   575,    96,   216,   534,   230,   471,   533,
+   nil, 10158,  2245,   532, 10294, 10430, 10566, 10702, 10838, 10974,
+ 11110, 11246, 11382, 11518, 11654, 11790, 11926, 12062, 12198, 12334,
+ 12470, 12606, 12742, 12878, 13014, 13150,   nil,   nil,   nil,   nil,
+ 13286,   nil,   nil,   nil, 24216,   nil,   nil,   529, 13422, 13558,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 13694,   nil,
+  2382,   nil,   501,   516,   nil, 13830,   567, 13966,   nil, 14102,
+ 14238,   nil,   nil,   648,   nil,   nil, 14374,  1263,   nil,   526,
+  2382,   541,   584,   550, 14510,  2519,   604,   672,   735,   626,
+   766,   nil,   593,   561,   209,   nil,   nil,   nil,   609,   135,
+   593, 14646,   nil,   448,   663,   678,   801,   nil,   687, 14782,
+   nil, 14918,  2656,  1268,   630, 15054, 15190,   nil,   313,    13,
+    69, 15326,  2793,  2930,   677,   744,   645,    36,    39,   836,
+   730,    97,   762,   nil,   nil,   308,   329,   169,   nil,   837,
+   nil,   680, 15462,   nil,   nil,   nil,   246,   337,   404,   455,
+   496,   502,   506,   538,   562,   nil,   624,   nil,   nil,   461,
+   nil,   266,   nil,   306,   nil,   461,   nil,   676,   325,   nil,
+   686,   371,   nil,   687,    63,   nil,   709,   156,   nil,   426,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil, 23746,   nil,   nil,   nil,   nil,   730,
+   nil,   716,   nil, 15598,   726,   nil,   716,   nil,   870,   238,
+   nil,   nil,   nil,  1971,   nil,   nil,   nil,   nil,   nil,  2108,
+   731,   nil,   nil,   734,   735,   525,   545,  1448,   nil,   nil,
+   nil,   268,   396,   798,   nil,   nil,  1576,  1708,   nil,   nil,
+   nil,   120,   nil,   803, 24284, 24352, 15734,   240, 15870, 16006,
+ 16142,  1840,  3067,   697,   755,   831,   833,   841,   843,  1658,
+  4300,  4324,  3204,  3341,  3478,  3615,  3752,  3889,   621,   813,
+  4026,  4163,  2519,  1010,   904,   nil,  1840,   nil,   nil,   nil,
+   nil,   794,   nil,   nil,   nil,   797,   nil,   nil, 16278,   nil,
+   nil, 16414,   nil, 16550,   nil,   nil,   nil,   nil, 16686,  1321,
+   816,   806,   808,   nil,   nil,   820, 16822,   832, 16958, 24420,
+ 24488,   893,   869,   nil,   nil, 17094,   831,   nil, 17230, 17366,
+ 17502, 24556, 24624,  1398,  2656, 17638,   954,   966,   851,   nil,
+   nil,   359,   449,   856,   870,   nil,   587,   904,  3067,  1003,
+   nil,  3204,   125,  1007,  1009,  1005,  1013,   nil,   nil, 17774,
+ 24692, 24760,    98,   nil,   nil,   929,   nil, 24828, 24896, 17910,
+   nil,   nil,   nil,   324,  3341,   936,   nil,   nil,   nil, 18046,
+   nil,   595,   nil,   907,   911,   nil,   912,   922,   925,   nil,
+   nil,   nil,   nil,   nil,   nil,   922,   nil,   664,   nil, 18182,
+   nil,   nil,   nil,  1020,   nil,   nil,   nil,  1027,   nil,   nil,
+  1030,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   389,   nil,   nil,   nil,   952,
+   nil,   nil,   953,   nil,  3478,   nil, 23879,   nil,   955, 18318,
+ 18454, 18590, 24964, 25032, 18726,   557,  1003, 18862, 18998, 19134,
+ 19270,  1008,   nil,   nil,   nil, 19406, 19542,  1009,   nil,   nil,
+   nil,   242,   276,   530,   664,   981,   980,   nil,   -19,  1085,
+   190,   nil,   nil,  1005,   nil,  1111,   nil,   993,   nil,  1035,
+ 19678,   nil,   nil,   nil,   nil,    53, 19814,   995,   nil,  1015,
+    58,   161,  1057,   340,   971,  1062,  1027, 19950,   nil,  1093,
+  1103,   127,   306,   nil, 20086,   nil,   nil,   nil,   nil, 20222,
+   nil,   nil, 20358,   nil,   nil,   nil,   518,   nil,  1161,   nil,
+   nil,   nil,   nil,   nil,  1168,   nil, 20494,  1057,   129,   164,
+   165,   167,  3615,   365,   985,   nil,  1058,  3752, 20630,   705,
+  1176,  3889,   727,   890, 24012,   144,   162,  1066,   357,   nil,
+   nil,   453,   991,   nil,  1152,   nil,  1280,   nil, 20766,   nil,
+   764,   nil,  1064,  1065,   899,   nil,  1073,   nil,   nil,   nil,
+   nil,   927,  4026,   nil,   nil,   nil,   nil,   nil,  1098,   nil,
+  1083, 20902,  1087,   277,   314,   798,   926,  2793, 21038,   nil,
+  1087,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil, 21174, 21310, 21446, 21582,   358, 21718,   nil,   nil,  1379,
+   nil,  4163,   nil,   nil,  1105,   nil,   214,   nil,   nil,   nil,
+  1091,   366,   nil,   nil,   nil,   nil,   nil,   nil,  4300,   nil,
+  1092,  1135,   nil,   nil,   704,  1224,   nil,   nil, 21854,   nil,
+  4437,  1228,   nil,   nil,   nil, 21990,   140,   168,  1230,   nil,
+  1231,   716,   nil,   nil,  1238,  1122,   765,   nil,   nil,   nil,
+  4574,  4711,  1118,  1128,  1140,   nil,   nil,   nil,  1141,  1145,
+   nil,  1146,  1148,   nil,  1151,   nil,  1155,   795,   539,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1146,   nil,  1159,   366,
+   nil,   nil, 22126, 22262,  2930,  1161,  1169,   nil,  1171,  1183,
+  1184,   nil,  1209,  1194,  1181, 22398,   nil,   nil,   nil,   nil,
+  4848,  4985,   nil,   118, 22534,   nil,   nil,   nil,   133,   nil,
+   nil,   nil, 22670,  5122,   nil,   nil,   nil,  5259,   nil,   nil,
+   nil,  1232,  1214,  1329,  1125,   nil,   nil,  1540,   nil,  1639,
+   nil,  1771,   nil,  1833,   nil,   nil,   nil,   nil,  1210,  1211,
+   nil,   485,   nil,   nil, 25094,   nil,   nil, 25101,   nil,  5986,
+   nil,   nil,  1232, 22806,   934,  1290,   nil,  1338,  5396,   965,
+  1010,  1032,  1293,  1064,   nil,  5533,   nil, 22942,   302,  1340,
+  5670,   nil,   nil,   761,   nil,   nil,   nil,  1221,  1222,  1225,
+  1236,   657,   919,  1237,   nil,   nil,  1238,  1239,  1241,  1242,
+   nil,  1243,   nil,  1068, 25169,   nil,   nil,  1366, 23078, 25237,
+ 25305,  1096,   550,   nil,   nil,   nil,   nil,   nil,  1365,   nil,
+  1181,  6666,   nil,   nil,   nil,   nil,  1246,   nil, 25367,   nil,
+  6802,   nil,  6938,   nil,  7074,   nil,   nil,  1286,  1287,   nil,
+  1252,   147,   154,   160,  1132,   nil,   nil,   nil,  1250,  1253,
+  1268,  1269,  1273,   157,   nil,  7346,   nil,   nil,   nil,   nil,
+  1274,   nil ]
+
+racc_action_default = [
+    -1,  -637,  -636,  -637,    -2,  -623,    -4,    -5,  -637,    -8,
+    -9,  -637,  -637,  -637,   -36,  -637,  -637,   -41,  -637,  -637,
+  -291,   -52,  -625,  -637,   -57,   -62,   -63,   -64,   -68,  -270,
+  -270,  -270,  -306,  -336,  -337,   -80,  -636,   -84,   -92,   -94,
+  -637,  -530,  -531,  -637,  -637,  -637,  -637,  -229,  -637,  -625,
+  -243,  -282,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,
+  -610,  -293,  -295,  -302,  -304,  -314,  -316,  -637,  -637,   -59,
+   -59,  -623,  -637,  -637,  -637,  -637,  -338,  -339,  -341,  -342,
+  -343,  -344,  -345,  -346,  -347,  -348,  -349,  -350,  -359,  -414,
+  -462,  -463,  -464,  -465,  -466,  -636,  -469,  -636,  -636,  -636,
+  -636,  -636,  -636,  -505,  -506,  -636,  -508,  -514,  -515,  -608,
+  -519,  -520,  -609,  -522,  -523,  -524,  -525,  -526,  -527,  -528,
+  -529,  -534,  -535,  1082,    -3,  -624,  -632,  -633,  -634,    -7,
+  -637,  -637,  -637,  -637,  -637,  -637,   -24,  -637,  -123,  -124,
+  -125,  -126,  -127,  -128,  -129,  -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,  -194,  -195,  -196,  -197,
+  -198,  -199,  -200,  -201,  -202,  -203,   -29,  -130,  -636,  -637,
+  -637,  -637,  -637,  -637,  -636,  -637,  -637,  -620,  -637,  -637,
+  -625,  -626,   -56,  -637,  -530,  -531,  -637,  -291,  -637,  -637,
+  -235,  -637,  -636,  -637,  -637,  -637,  -637,  -637,  -637,  -637,
+  -637,  -637,  -637,  -637,  -637,  -637,  -637,  -637,  -637,  -637,
+  -637,  -637,  -637,  -637,  -637,  -637,  -244,  -245,  -246,  -247,
+  -637,  -352,  -442,  -422,  -637,  -621,  -622,   -69,  -636,  -637,
+  -313,  -351,  -426,  -435,  -437,   -75,  -432,   -76,  -625,   -77,
+  -250,  -265,  -636,  -636,  -269,  -637,  -275,  -637,  -603,  -637,
+  -637,   -78,   -79,  -623,   -17,   -18,  -637,   -21,   -22,   -82,
+  -636,  -625,  -637,   -85,   -88,  -636,  -100,  -101,  -637,  -637,
+  -108,  -306,  -309,  -625,  -637,  -336,  -337,  -340,  -433,  -637,
+   -90,  -637,   -96,  -301,  -516,  -517,  -637,  -223,  -224,  -637,
+  -236,  -637,  -636,  -297,  -625,  -636,  -636,  -315,   -58,  -637,
+  -637,  -637,  -636,  -636,  -623,  -637,  -624,  -530,  -531,  -637,
+  -637,  -291,  -637,  -369,  -370,  -118,  -119,  -637,  -121,  -637,
+  -291,  -636,  -637,  -530,  -531,  -329,  -123,  -124,  -163,  -164,
+  -165,  -181,  -186,  -193,  -196,  -331,  -637,  -598,  -599,  -562,
+  -467,  -637,  -490,  -637,  -492,  -637,  -494,  -637,  -637,  -474,
+  -637,  -637,  -480,  -637,  -637,  -486,  -637,  -637,  -488,  -637,
+  -507,  -509,  -510,  -511,  -512,    -6,  -635,   -30,   -31,   -32,
+   -33,   -34,   -10,   -11,  -637,   -26,   -27,   -28,  -131,  -637,
+   -37,   -39,   -40,  -637,  -637,   -38,  -637,   -42,  -637,  -291,
+   -50,   -51,  -204,  -255,  -275,   -53,   -54,   -43,  -205,  -255,
+  -625,  -260,  -261,  -636,  -636,  -611,  -612,  -270,  -430,  -613,
+  -614,  -612,  -611,  -270,  -429,  -431,  -613,  -614,   -49,  -212,
+   -55,  -625,  -312,  -637,  -637,  -637,  -636,  -301,  -637,  -637,
+  -637,  -213,  -214,  -215,  -216,  -217,  -218,  -219,  -220,  -225,
+  -226,  -227,  -228,  -230,  -231,  -232,  -233,  -234,  -237,  -238,
+  -239,  -240,  -625,  -248,  -637,  -443,  -270,  -611,  -612,   -66,
+   -70,  -625,  -271,  -439,  -442,  -625,  -308,  -266,  -637,  -274,
+  -267,  -637,  -272,  -637,  -276,  -606,  -607,   -16,  -624,   -20,
+  -637,  -625,   -81,  -299,   -97,   -86,  -637,  -625,  -636,  -637,
+  -637,  -107,  -637,  -516,  -517,  -637,   -93,   -98,  -637,  -637,
+  -637,  -637,  -637,  -249,  -241,  -637,  -454,  -637,  -625,  -296,
+  -251,  -629,  -629,  -625,  -637,  -601,  -629,  -637,  -636,  -360,
+  -361,  -636,  -637,  -637,  -637,  -637,  -637,  -355,  -449,  -636,
+  -637,  -637,  -301,   -59,  -118,  -119,  -120,  -637,  -637,  -636,
+  -324,  -536,  -538,  -326,  -636,  -540,  -333,  -618,  -619,  -637,
+  -415,  -562,  -418,  -597,  -597,  -545,  -547,  -547,  -547,  -561,
+  -563,  -564,  -565,  -566,  -567,  -568,  -569,  -637,  -571,  -637,
+  -577,  -579,  -580,  -582,  -587,  -589,  -590,  -592,  -593,  -594,
+  -637,  -468,  -491,  -496,  -497,  -499,  -470,  -493,  -471,  -495,
+  -472,  -473,  -637,  -476,  -478,  -637,  -479,  -482,  -483,  -637,
+  -484,  -485,  -637,  -513,  -636,   -25,  -637,   -35,  -281,  -637,
+  -637,  -636,  -637,  -637,  -637,  -434,  -637,  -262,  -264,  -637,
+  -637,   -71,  -258,  -259,  -427,  -637,  -637,   -73,  -428,  -311,
+  -627,  -611,  -612,  -611,  -612,  -625,  -637,  -421,  -636,   -65,
+  -423,  -439,  -257,  -637,  -440,  -637,  -307,  -636,  -273,  -277,
+  -637,  -604,  -605,   -19,   -23,   -83,  -637,   -89,   -95,  -625,
+  -611,  -612,  -636,  -104,  -106,  -637,   -91,  -637,  -211,  -221,
+  -222,  -625,  -636,  -353,  -636,  -294,  -358,  -298,  -252,  -631,
+  -630,  -254,  -631,  -303,  -305,  -602,  -636,  -362,  -636,   -60,
+  -363,  -364,  -319,  -320,  -637,  -322,  -637,  -625,  -611,  -612,
+  -615,  -300,  -636,  -118,  -119,  -122,  -625,  -636,  -637,  -637,
+  -637,  -636,  -562,  -562,  -637,  -625,  -637,  -625,  -637,  -543,
+  -544,  -637,  -637,  -554,  -637,  -557,  -637,  -559,  -637,  -371,
+  -637,  -373,  -375,  -378,  -381,  -568,  -625,  -573,  -581,  -591,
+  -595,  -637,  -636,  -475,  -477,  -481,  -487,  -489,  -637,  -132,
+  -279,  -637,  -625,  -611,  -612,  -612,  -611,  -256,  -637,  -628,
+  -636,   -45,  -207,   -46,  -208,   -72,   -47,  -210,   -48,  -209,
+   -74,  -637,  -637,  -637,  -637,  -434,  -637,  -403,  -404,  -625,
+  -406,  -636,  -425,  -424,  -637,  -436,  -636,  -438,  -268,  -278,
+   -87,  -102,   -99,  -310,   -13,   -15,  -354,  -356,  -636,  -461,
+  -455,  -636,  -456,  -457,  -629,  -637,  -357,  -365,  -637,  -367,
+  -636,  -637,   -61,  -321,  -445,  -637,  -637,  -434,  -637,  -434,
+  -637,  -637,  -327,  -330,  -637,  -625,  -637,  -334,  -600,  -416,
+  -636,  -636,  -408,  -625,  -597,  -578,  -596,  -546,  -547,  -547,
+  -572,  -547,  -547,  -588,  -547,  -583,  -625,  -637,  -637,  -380,
+  -570,  -498,  -501,  -502,  -503,  -504,  -637,   -12,  -280,  -434,
+   -44,  -206,  -263,  -637,  -242,  -597,  -597,  -385,  -636,  -636,
+  -636,  -402,  -637,  -625,  -568,  -637,  -575,  -585,  -444,   -67,
+  -636,  -636,  -460,  -637,  -637,  -459,  -253,  -317,  -637,  -368,
+  -318,  -446,  -637,  -636,  -323,  -325,  -537,  -636,  -332,  -539,
+  -541,  -540,  -637,  -637,  -637,  -417,  -542,  -637,  -550,  -637,
+  -552,  -637,  -555,  -637,  -558,  -560,  -372,  -374,  -376,  -379,
+  -500,  -637,  -383,  -384,  -393,  -387,  -395,  -637,  -398,  -637,
+  -400,  -405,  -637,  -637,  -574,  -637,  -441,  -636,  -636,  -109,
+  -110,  -637,  -637,  -117,  -458,  -636,  -447,  -637,  -636,  -637,
+  -636,  -419,  -420,  -625,  -410,  -412,  -413,  -547,  -547,  -547,
+  -547,  -637,  -637,  -597,  -576,  -386,  -636,  -636,  -636,  -636,
+  -586,  -636,  -407,  -584,  -637,  -301,   -14,  -454,  -636,  -637,
+  -637,  -116,  -636,  -448,  -450,  -451,  -452,  -328,  -637,  -409,
+  -637,  -637,  -548,  -551,  -553,  -556,  -377,  -382,  -637,  -390,
+  -637,  -392,  -637,  -396,  -637,  -399,  -401,  -300,  -615,  -453,
+  -625,  -611,  -612,  -615,  -115,  -366,  -335,  -411,  -547,  -636,
+  -636,  -636,  -636,  -434,  -549,  -637,  -388,  -391,  -394,  -397,
+  -636,  -389 ]
+
+racc_goto_table = [
+     6,   225,   450,   229,   385,   273,     4,   128,   576,   275,
+   448,   347,   422,   282,   286,   469,   141,   141,   349,   350,
+   352,   353,   354,   701,   291,   291,   291,   232,   457,   463,
+   341,   520,   327,   327,   411,   722,   568,   571,   292,   292,
+   292,   447,     9,   510,   313,   557,   468,   761,     9,   125,
+   348,   348,   698,   855,   348,   698,   511,   136,   217,   144,
+   144,   432,   435,   293,   293,   293,   309,   327,   327,   327,
+   546,   845,   330,   128,   277,   285,   287,   506,   665,   861,
+   141,   417,   418,   419,   420,   728,   731,   769,   770,   124,
+   735,   504,   786,   392,   693,   394,   396,   399,   402,   405,
+   408,   779,   343,   392,   890,   602,   311,   883,   609,   893,
+   141,   586,   831,   348,   348,   348,   348,   919,   129,  1020,
+   969,   967,  1004,     1,  1006,   472,   391,   642,   371,   375,
+   645,     2,   289,   301,   302,   135,   409,   654,   844,   931,
+   637,   703,   639,   530,   216,   643,   364,   424,   643,   739,
+   862,   274,   691,   656,   339,   355,   563,   690,   387,   564,
+   362,   590,   386,   441,   596,     9,   441,   342,   344,   922,
+   701,   441,   558,   345,   421,   346,   757,   759,   947,   594,
+   595,   764,   951,   516,   968,   921,   923,  1003,   600,   879,
+  1020,   733,   520,   389,   766,   513,   514,   836,   866,   688,
+  1034,   698,   698,   746,   445,   446,   532,   851,  1067,   458,
+  1006,   933,   470,   471,   390,   474,   291,   393,   395,   398,
+   401,   404,   451,   430,   440,   434,   434,   440,   744,   407,
+   901,   467,   440,  1046,   701,   415,   967,   791,   792,   559,
+   410,   758,   888,   885,  1014,   599,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   685,   896,   nil,   nil,   nil,   nil,
+   930,   nil,  1016,   982,   779,   469,   nil,   448,   899,   nil,
+   291,   291,   834,   nil,   nil,   707,   451,   457,   463,   nil,
+   291,   nil,   nil,   nil,   716,   292,   nil,   nil,   nil,   nil,
+   519,   519,   893,    19,   292,   890,   nil,   760,   nil,    19,
+   539,   nil,   572,   nil,   542,   128,   890,   nil,   282,   327,
+   293,   nil,   286,   825,   233,   nil,   709,   767,   551,   293,
+   609,   nil,   nil,   233,   233,   233,   327,    19,   318,   318,
+   nil,   755,   nil,   695,   348,   718,  1026,   841,   547,  1035,
+   309,   580,   712,   560,   565,   309,   529,   528,   535,  1065,
+   nil,   561,   nil,    19,   712,   593,   128,   747,   233,   233,
+   nil,   nil,   233,   359,   369,   369,   679,   756,   956,   592,
+   nil,   889,   nil,   891,   nil,   867,   562,   566,   936,   512,
+   531,   779,   779,   712,   869,   537,   890,   527,   515,   794,
+   nil,   712,   794,   nil,   nil,   nil,   nil,   nil,   nil,   972,
+   973,   nil,   nil,  1000,   nil,   nil,   692,   704,   nil,   nil,
+   696,   nil,   nil,   nil,   701,   nil,    19,   nil,   nil,   nil,
+   662,   233,   233,   233,   233,    19,   705,   nil,   920,   141,
+   909,   666,   708,   nil,   nil,   838,   nil,   815,   575,   802,
+   nil,   673,   nil,   820,   nil,   840,   698,   678,   nil,   nil,
+   nil,   519,   519,   727,   nil,   672,   812,   814,   458,   312,
+   870,   nil,   817,   819,   874,   457,   463,   nil,   291,   nil,
+   655,   nil,   144,   nil,   451,   nil,   nil,   nil,   875,   876,
+   467,   609,   609,   686,   725,   nil,   nil,   811,   813,   nil,
+   673,   nil,   nil,   816,   818,   779,   779,  1047,   nil,   nil,
+   742,   743,   671,   745,   672,   nil,  1059,   nil,   677,    19,
+   233,   438,   233,   233,   438,   233,   nil,   nil,   nil,   438,
+   233,   233,   nil,   458,   nil,   nil,   nil,   nil,   nil,   nil,
+   291,   327,   nil,    19,   752,   458,   451,   nil,   721,   nil,
+   327,   nil,   nil,   547,   666,   467,   nil,   nil,   838,   697,
+   nil,   689,   547,   943,   nil,   nil,  1007,   467,   nil,   nil,
+   nil,   nil,   nil,   nil,   458,   nil,   852,   nil,   884,   233,
+   233,   291,   458,  1017,   740,   nil,  1018,   451,   nil,   233,
+   nil,   291,   765,   nil,   953,   nil,   467,   451,   nil,   nil,
+   nil,   nil,   467,   nil,   nil,   911,   nil,    19,   nil,   nil,
+   nil,    19,   nil,   441,   nil,   318,    19,   nil,   812,   814,
+   819,   817,   441,   441,   886,   nil,   843,   886,   441,   441,
+   988,   nil,   318,   nil,   nil,   995,   910,   nil,   nil,   916,
+   nil,   nil,   nil,    19,   nil,   nil,   833,   nil,   nil,   nil,
+   nil,   429,   233,    19,    19,   nil,   458,  1069,   nil,   nil,
+   999,  1036,     6,   291,   nil,   nil,   nil,   nil,   798,   451,
+   878,   141,   nil,   233,   440,   312,   666,   nil,   467,   832,
+   nil,   863,   nil,   440,   440,   917,   nil,   nil,   nil,   440,
+   440,   900,   nil,   nil,   nil,   nil,   827,   873,  1073,   nil,
+   666,   nil,   nil,   877,     9,   519,   673,   nil,   810,   678,
+   911,   327,   799,  1038,   144,   nil,   nil,   nil,   nil,   871,
+   672,   nil,   327,   547,   nil,   nil,   773,   775,   777,   nil,
+   849,   nil,   853,   nil,   842,   nil,   nil,   nil,   666,   nil,
+   434,   nil,   nil,   312,   859,   nil,   859,   666,   312,   nil,
+   nil,   348,   nil,   nil,   nil,   nil,   nil,   nil,   882,   nil,
+   nil,   441,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   854,   872,   nil,   nil,   nil,   nil,   nil,   233,   nil,   141,
+   949,  1013,   nil,   nil,   916,   573,   574,   916,   955,   916,
+   nil,   nil,   937,   666,   nil,   nil,   nil,   892,   940,   894,
+   nil,   966,   nil,   nil,   nil,   944,   nil,   945,   nil,   nil,
+   nil,   948,   nil,   nil,   nil,   nil,  1060,   nil,   519,   938,
+   882,   nil,   440,   nil,   nil,   nil,   nil,   886,   nil,    19,
+   917,   nil,   nil,   917,   nil,   917,   nil,   318,   nil,   233,
+   nil,   nil,   712,   nil,   827,   nil,   318,   nil,   nil,   nil,
+   nil,   348,   918,   nil,   nil,   nil,   233,   nil,   916,   935,
+   916,   nil,   916,   nil,   916,   nil,   nil,   nil,   nil,    19,
+   nil,   nil,    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   233,   nil,   nil,   946,   nil,   916,   nil,   nil,   950,   nil,
+   233,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,
+   233,   nil,   nil,   nil,   917,   nil,   917,   nil,   917,   nil,
+   917,   nil,   nil,   nil,   882,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   975,   975,   975,    16,
+   327,   917,   nil,   nil,   nil,    16,  1037,   nil,   nil,   327,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,
+   nil,   438,   233,    16,   nil,   nil,   nil,   nil,   nil,   nil,
+   438,   438,   nil,   nil,   nil,  1066,   438,   438,   nil,   nil,
+  1008,   nil,  1009,  1029,  1010,   nil,   nil,   nil,   327,    16,
+   nil,   nil,   nil,   nil,  1039,   849,   nil,   nil,   nil,   363,
+  1019,   736,  1021,   nil,   738,   nil,   859,   318,   958,   960,
+   nil,   962,   964,   nil,   965,   nil,   nil,   nil,   318,   nil,
+   nil,   nil,   nil,   458,   975,   975,   975,   975,   nil,   975,
+   291,   nil,   nil,   nil,   nil,    29,   451,   nil,   nil,   467,
+   859,    29,   nil,   nil,   nil,   467,   nil,   nil,   nil,   nil,
+   nil,   666,    16,    19,   nil,   nil,    29,   nil,    19,   233,
+   nil,    16,    19,   nil,  1068,    29,    29,    29,   nil,    29,
+   nil,  1070,   nil,  1071,   nil,  1072,   nil,   975,   975,   975,
+   975,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   975,   nil,
+   nil,   nil,   nil,    19,   nil,    29,   nil,   nil,  1080,   nil,
+    29,    29,   nil,   nil,    29,   nil,   nil,   nil,   nil,   438,
+   nil,   nil,   nil,   nil,   976,   978,   980,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1042,  1043,  1044,
+  1045,   nil,    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    16,   nil,   436,   nil,    19,
+   436,   nil,   nil,   nil,   nil,   436,   nil,   nil,    29,   233,
+   nil,    19,   nil,    29,    29,    29,    29,    29,   nil,    16,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    19,    19,   nil,   nil,   868,   nil,   nil,  1074,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1049,  1051,  1053,  1055,   nil,  1056,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   906,   984,   nil,   nil,   nil,
+   nil,    19,    19,    16,   nil,   991,   nil,    16,   nil,   nil,
+   nil,   nil,    16,   nil,    19,   nil,   nil,   nil,    19,   nil,
+   nil,    29,    29,    29,    29,    29,    29,    29,   nil,   nil,
+   nil,    29,    29,    29,   928,  1076,  1077,  1078,  1079,    16,
+   nil,   nil,   nil,   nil,   nil,    29,  1081,   nil,   nil,    16,
+    16,   932,   nil,   nil,  1023,   nil,    32,   nil,   nil,    19,
+   nil,   nil,    32,   939,   nil,   nil,    19,   nil,   nil,   nil,
+   nil,    19,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,    29,    29,   952,   nil,   nil,    32,    32,    32,   nil,
+    32,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   233,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   nil,   nil,   nil,    29,   nil,   nil,    32,   nil,    29,   nil,
+   nil,    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   986,   987,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    29,   998,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    29,    29,    29,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,   nil,
+   nil,  1027,   nil,   nil,   nil,   nil,   nil,   nil,  1032,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,    16,   nil,
+   nil,   nil,    32,    32,    32,    32,    32,    32,    32,    29,
+   nil,   nil,    32,    32,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,    16,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   431,   444,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    16,   nil,   nil,   nil,   nil,   nil,   436,    29,   nil,
+    32,   nil,   nil,   nil,    32,   nil,   436,   436,   nil,    32,
+   nil,    29,   436,   436,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   522,
+   nil,   524,    29,   525,   526,   nil,    32,    29,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,    32,    32,    32,   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,
+   567,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
+   nil,   nil,   nil,   nil,    16,   nil,   nil,    29,    16,   nil,
+   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,    29,    29,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   436,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   658,    16,   nil,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    29,   nil,    16,   nil,   nil,
+    29,    29,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+   nil,    29,   699,   nil,   nil,   567,   nil,   702,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,    32,   nil,    16,    16,   nil,
+   nil,   994,   nil,    32,    29,   nil,   nil,   nil,   nil,   nil,
+    16,   nil,   nil,    32,    16,   nil,   nil,   nil,    32,   nil,
+   nil,    29,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    29,    29,    16,   nil,   nil,   nil,   nil,
+   nil,   nil,    16,   nil,   nil,   nil,   nil,    16,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,   787,    32,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,    32,
+    32,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
+    29,   nil,   nil,   800,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   699,   567,   nil,   nil,   nil,   nil,   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,   nil,   839,   nil,   nil,   nil,    29,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,    32,    32,   nil,   nil,    32,   nil,   nil,   850,   nil,
+   nil,   nil,   nil,   699,   nil,   nil,   567,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   240,   nil,   nil,   nil,   nil,   nil,
+   864,   nil,   nil,   290,   290,   290,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   337,   338,   nil,   340,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   895,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   908,   nil,    18,   nil,   nil,
+   nil,   nil,    32,    18,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    20,    18,   nil,   941,
+   nil,   nil,    20,   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,   nil,   nil,
+    20,   320,   320,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   567,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,   361,   370,   370,    18,
+   290,   443,   nil,   nil,   449,   290,   996,   nil,   nil,   449,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+   nil,   nil,   240,   nil,    32,   481,   482,   483,   484,   485,
+   486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
+   496,   497,   498,   499,   500,   501,   502,   nil,   nil,    20,
+   nil,   503,    32,   nil,   nil,   nil,   nil,   nil,    20,   290,
+   290,  1033,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   290,
+   nil,   nil,   nil,   nil,   nil,   nil,   290,   nil,   290,   nil,
+   290,   290,   nil,    18,   nil,    18,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,    18,   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,
+   553,   nil,   554,   nil,   nil,   nil,   290,   290,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,   nil,   439,   nil,   nil,   439,   nil,   nil,
+   nil,   nil,   439,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,   nil,   nil,   nil,   290,   nil,   nil,    18,    18,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    20,   nil,   nil,   nil,    20,   nil,   nil,   nil,   320,    20,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   320,   nil,   290,   nil,   449,
+   449,   449,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    20,    20,   nil,    41,
+   316,   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   290,
+   nil,   nil,   290,   nil,   290,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   357,   373,   373,   373,   290,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   449,
+   719,   720,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   290,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   290,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    42,   317,   317,   nil,   nil,
+   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,
+   290,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   358,   374,   374,   374,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    18,   nil,   nil,    18,   nil,   nil,   nil,
+   290,   449,   290,   nil,   nil,   807,   nil,   nil,   290,   290,
+   449,   449,    20,   nil,   nil,   nil,   449,   449,   nil,    18,
+   320,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   320,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,   290,   nil,    42,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   290,   nil,   nil,   nil,   nil,
+   290,   nil,   nil,   290,   nil,   nil,   nil,   nil,    20,    18,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   290,   nil,   nil,
+   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,   nil,   nil,
+    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,    41,   nil,   nil,   nil,   316,    41,   290,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,   nil,   nil,   316,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,   290,   nil,   439,    41,   nil,   nil,   nil,   449,
+   nil,    42,   nil,   439,   439,    41,    41,   nil,   nil,   439,
+   439,   nil,   449,   449,   449,   449,   nil,   914,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,   nil,    18,   nil,   nil,   nil,    18,   nil,   nil,   nil,
+   320,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   320,   nil,   nil,   nil,   nil,   290,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    42,   nil,    18,   nil,    42,
+   nil,   nil,   nil,   317,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    18,   nil,   nil,    20,   nil,   nil,   nil,
+   317,    20,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,   290,   449,   nil,    18,   nil,   nil,   nil,
+   nil,    42,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    18,   nil,   905,    20,   nil,   nil,   nil,
+   nil,   nil,   nil,   290,   nil,    18,   nil,   nil,   nil,   nil,
+   nil,   nil,   439,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,    20,   nil,   nil,   nil,   nil,   nil,   290,   316,
+   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   316,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,    20,   nil,   nil,    18,   290,
+   nil,    41,    18,   nil,    41,   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,   370,
+   nil,   nil,   nil,    18,    20,    20,   nil,   nil,   993,   nil,
+    18,   nil,   nil,   nil,   nil,    18,   nil,    20,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   317,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   317,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   370,   nil,   nil,
+   nil,   nil,    20,   nil,   nil,   nil,   nil,    42,   nil,    20,
+    42,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   316,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,    42,    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,   nil,
+   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,   317,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   317,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   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,    42,   nil,    41,   nil,   nil,    42,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    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,   nil,   373,   nil,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   989,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   373,   nil,   nil,    42,
+    42,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   374,   nil,   nil,   nil,   nil,    42,
+    42,   nil,   nil,   990,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   374,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,    42 ]
+
+racc_goto_check = [
+     6,    38,    36,    40,    70,   166,     2,   116,   111,    38,
+    75,   100,    10,    83,    83,    75,    71,    71,    24,    24,
+    42,    42,    24,   213,    46,    46,    46,    27,    50,    50,
+    40,    85,    77,    77,    70,    15,   104,   104,    80,    80,
+    80,    33,     9,    52,    63,    12,    33,   119,     9,     8,
+    31,    31,    86,   105,    31,    86,    36,    22,    22,    73,
+    73,    29,    29,    82,    82,    82,    59,    77,    77,    77,
+    65,    17,    64,   116,    51,    51,    51,    50,    37,   107,
+    71,    24,    24,    24,    24,    81,    81,   148,   148,     5,
+    81,   167,   142,     6,    53,     6,     6,     6,     6,     6,
+     6,   141,     9,     6,   204,   165,    60,   157,   199,   208,
+    71,    68,   155,    31,    31,    31,    31,   153,     7,   209,
+   143,   140,   159,     1,   160,    61,   183,   187,    69,    69,
+   187,     3,    58,    58,    58,    11,   183,    13,    16,    18,
+   188,    20,   188,    21,    23,   188,    26,    32,   188,    43,
+    45,    49,    55,    74,    78,     5,    79,    84,    96,    99,
+   113,   115,   120,    25,   121,     9,    25,   122,   123,   157,
+   213,    25,   124,   125,     9,   126,   127,   128,   129,   130,
+   131,   132,   133,    61,   144,   145,   151,   158,   161,   162,
+   209,    37,    85,   163,   164,   169,   170,   172,   173,   175,
+   176,    86,    86,   177,    31,    31,    61,   178,   159,    83,
+   160,   179,    31,    31,   182,    38,    46,   184,   185,   186,
+   189,   190,     6,    27,    27,    80,    80,    27,   111,   191,
+   192,    71,    27,   143,   213,     7,   140,   193,   194,    61,
+   197,   198,   203,   205,   206,   212,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    36,   142,   nil,   nil,   nil,   nil,
+   155,   nil,   153,   157,   141,    75,   nil,    75,   141,   nil,
+    46,    46,    53,   nil,   nil,    65,     6,    50,    50,   nil,
+    46,   nil,   nil,   nil,    65,    80,   nil,   nil,   nil,   nil,
+     6,     6,   208,    35,    80,   204,   nil,    12,   nil,    35,
+    38,   nil,    24,   nil,    40,   116,   204,   nil,    83,    77,
+    82,   nil,    83,    37,    35,   nil,    36,   165,    38,    82,
+   199,   nil,   nil,    35,    35,    35,    77,    35,    35,    35,
+   nil,    68,   nil,   167,    31,    75,    17,    37,    63,   107,
+    59,    38,    50,     6,     6,    59,     9,     8,    64,   105,
+   nil,    80,   nil,    35,    50,    31,   116,    36,    35,    35,
+   nil,   nil,    35,    35,    35,    35,    61,    36,   148,     6,
+   nil,   154,   nil,   154,   nil,    37,    82,    82,    81,    58,
+    60,   141,   141,    50,    37,    60,   204,     5,    58,   188,
+   nil,    50,   188,   nil,   nil,   nil,   nil,   nil,   nil,   148,
+   148,   nil,   nil,   119,   nil,   nil,    61,    10,   nil,   nil,
+    61,   nil,   nil,   nil,   213,   nil,    35,   nil,   nil,   nil,
+    38,    35,    35,    35,    35,    35,    61,   nil,   154,    71,
+    37,    40,    61,   nil,   nil,    85,   nil,    52,     5,    36,
+   nil,    83,   nil,    52,   nil,    65,    86,    83,   nil,   nil,
+   nil,     6,     6,    61,   nil,     6,    75,    75,    83,    14,
+    12,   nil,    75,    75,    12,    50,    50,   nil,    46,   nil,
+    22,   nil,    73,   nil,     6,   nil,   nil,   nil,   165,   165,
+    71,   199,   199,    40,    98,   nil,   nil,    33,    33,   nil,
+    83,   nil,   nil,    33,    33,   141,   141,   148,   nil,   nil,
+    98,    98,    51,    98,     6,   nil,    15,   nil,    51,    35,
+    35,    35,    35,    35,    35,    35,   nil,   nil,   nil,    35,
+    35,    35,   nil,    83,   nil,   nil,   nil,   nil,   nil,   nil,
+    46,    77,   nil,    35,    42,    83,     6,   nil,    31,   nil,
+    77,   nil,   nil,    63,    40,    71,   nil,   nil,    85,    82,
+   nil,    51,    63,   104,   nil,   nil,   154,    71,   nil,   nil,
+   nil,   nil,   nil,   nil,    83,   nil,    29,   nil,   147,    35,
+    35,    46,    83,   154,   116,   nil,   154,     6,   nil,    35,
+   nil,    46,    31,   nil,    12,   nil,    71,     6,   nil,   nil,
+   nil,   nil,    71,   nil,   nil,    75,   nil,    35,   nil,   nil,
+   nil,    35,   nil,    25,   nil,    35,    35,   nil,    75,    75,
+    75,    75,    25,    25,   149,   nil,    61,   149,    25,    25,
+   104,   nil,    35,   nil,   nil,   104,    33,   nil,   nil,   147,
+   nil,   nil,   nil,    35,   nil,   nil,   100,   nil,   nil,   nil,
+   nil,    14,    35,    35,    35,   nil,    83,   154,   nil,   nil,
+    12,   111,     6,    46,   nil,   nil,   nil,   nil,     2,     6,
+    61,    71,   nil,    35,    27,    14,    40,   nil,    71,   166,
+   nil,    98,   nil,    27,    27,   149,   nil,   nil,   nil,    27,
+    27,    61,   nil,   nil,   nil,   nil,     6,    98,    37,   nil,
+    40,   nil,   nil,    70,     9,     6,    83,   nil,    82,    83,
+    75,    77,    22,    12,    73,   nil,   nil,   nil,   nil,    24,
+     6,   nil,    77,    63,   nil,   nil,   202,   202,   202,   nil,
+     6,   nil,     6,   nil,    63,   nil,   nil,   nil,    40,   nil,
+    80,   nil,   nil,    14,     6,   nil,     6,    40,    14,   nil,
+   nil,    31,   nil,   nil,   nil,   nil,   nil,   nil,    40,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    82,   116,   nil,   nil,   nil,   nil,   nil,    35,   nil,    71,
+    61,   147,   nil,   nil,   147,    14,    14,   147,    61,   147,
+   nil,   nil,    98,    40,   nil,   nil,   nil,   152,    98,   152,
+   nil,    61,   nil,   nil,   nil,    98,   nil,    98,   nil,   nil,
+   nil,    98,   nil,   nil,   nil,   nil,    36,   nil,     6,    24,
+    40,   nil,    27,   nil,   nil,   nil,   nil,   149,   nil,    35,
+   149,   nil,   nil,   149,   nil,   149,   nil,    35,   nil,    35,
+   nil,   nil,    50,   nil,     6,   nil,    35,   nil,   nil,   nil,
+   nil,    31,   152,   nil,   nil,   nil,    35,   nil,   147,     6,
+   147,   nil,   147,   nil,   147,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   116,   nil,   147,   nil,   nil,   116,   nil,
+    35,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   149,   nil,   149,   nil,   149,   nil,
+   149,   nil,   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,     6,     6,     6,    28,
+    77,   149,   nil,   nil,   nil,    28,    98,   nil,   nil,    77,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
+   nil,    35,    35,    28,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,    35,   nil,   nil,   nil,    98,    35,    35,   nil,   nil,
+   152,   nil,   152,    38,   152,   nil,   nil,   nil,    77,    28,
+   nil,   nil,   nil,   nil,    40,     6,   nil,   nil,   nil,    28,
+   152,    14,   152,   nil,    14,   nil,     6,    35,   202,   202,
+   nil,   202,   202,   nil,   202,   nil,   nil,   nil,    35,   nil,
+   nil,   nil,   nil,    83,     6,     6,     6,     6,   nil,     6,
+    46,   nil,   nil,   nil,   nil,    54,     6,   nil,   nil,    71,
+     6,    54,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,
+   nil,    40,    28,    35,   nil,   nil,    54,   nil,    35,    35,
+   nil,    28,    35,   nil,   152,    54,    54,    54,   nil,    54,
+   nil,   152,   nil,   152,   nil,   152,   nil,     6,     6,     6,
+     6,   nil,   nil,   nil,   nil,   nil,   nil,   nil,     6,   nil,
+   nil,   nil,   nil,    35,   nil,    54,   nil,   nil,   152,   nil,
+    54,    54,   nil,   nil,    54,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,   150,   150,   150,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   202,   202,   202,
+   202,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    28,   nil,    28,   nil,    35,
+    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,    54,    35,
+   nil,    35,   nil,    54,    54,    54,    54,    54,   nil,    28,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    35,    35,   nil,   nil,    14,   nil,   nil,   202,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   150,   150,   150,   150,   nil,   150,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    14,    35,   nil,   nil,   nil,
+   nil,    35,    35,    28,   nil,    35,   nil,    28,   nil,   nil,
+   nil,   nil,    28,   nil,    35,   nil,   nil,   nil,    35,   nil,
+   nil,    54,    54,    54,    54,    54,    54,    54,   nil,   nil,
+   nil,    54,    54,    54,    14,   150,   150,   150,   150,    28,
+   nil,   nil,   nil,   nil,   nil,    54,   150,   nil,   nil,    28,
+    28,    14,   nil,   nil,    35,   nil,    57,   nil,   nil,    35,
+   nil,   nil,    57,    14,   nil,   nil,    35,   nil,   nil,   nil,
+   nil,    35,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
+   nil,    54,    54,    14,   nil,   nil,    57,    57,    57,   nil,
+    57,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   nil,    54,   nil,   nil,    57,   nil,    54,   nil,
+   nil,    57,    57,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    14,    14,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,    14,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,    54,    54,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,    57,    57,    57,    57,    57,   nil,
+   nil,    14,   nil,   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,    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,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,    28,   nil,
+   nil,   nil,    57,    57,    57,    57,    57,    57,    57,    54,
+   nil,   nil,    57,    57,    57,   nil,   nil,   nil,   nil,   nil,
+   nil,    28,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    30,    30,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    28,   nil,   nil,   nil,   nil,   nil,    28,    54,   nil,
+    57,   nil,   nil,   nil,    57,   nil,    28,    28,   nil,    57,
+   nil,    54,    28,    28,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,    30,
+   nil,    30,    54,    30,    30,   nil,    57,    54,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,    57,    57,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,
+   nil,   nil,   nil,   nil,    28,   nil,   nil,    54,    28,   nil,
+   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,    54,    54,
+   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,    28,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    30,    28,   nil,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,    28,   nil,   nil,
+    54,    54,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+   nil,    54,    30,   nil,   nil,    30,   nil,    30,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,    57,   nil,    28,    28,   nil,
+   nil,    28,   nil,    57,    54,   nil,   nil,   nil,   nil,   nil,
+    28,   nil,   nil,    57,    28,   nil,   nil,   nil,    57,   nil,
+   nil,    54,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,    54,    28,   nil,   nil,   nil,   nil,
+   nil,   nil,    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,    30,    57,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,    57,
+    57,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
+    54,   nil,   nil,    30,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    30,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,    30,   nil,   nil,   nil,    54,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,    57,    57,   nil,   nil,    57,   nil,   nil,    30,   nil,
+   nil,   nil,   nil,    30,   nil,   nil,    30,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+    30,   nil,   nil,    41,    41,    41,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,    41,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    30,   nil,    34,   nil,   nil,
+   nil,   nil,    57,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    39,    34,   nil,    30,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,
+    39,    39,    39,   nil,   nil,   nil,   nil,    57,   nil,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,    39,    39,    39,    34,
+    41,    41,   nil,   nil,    41,    41,    30,   nil,   nil,    41,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+   nil,   nil,    41,   nil,    57,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,   nil,   nil,    39,
+   nil,    41,    57,   nil,   nil,   nil,   nil,   nil,    39,    41,
+    41,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,   nil,
+    41,    41,   nil,    34,   nil,    34,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,    41,   nil,   nil,   nil,    41,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,    39,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,    34,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    39,   nil,   nil,   nil,    39,   nil,   nil,   nil,    39,    39,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,    39,   nil,    41,   nil,    41,
+    41,    41,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    39,    39,   nil,    66,
+    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,    41,   nil,    41,    66,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,    66,    66,    66,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,    67,    67,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,    67,    67,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,   nil,    34,   nil,   nil,   nil,
+    41,    41,    41,   nil,   nil,    41,   nil,   nil,    41,    41,
+    41,    41,    39,   nil,   nil,   nil,    41,    41,   nil,    34,
+    39,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,    67,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,    41,   nil,   nil,   nil,   nil,    39,    34,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,
+    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
+   nil,   nil,   nil,    66,   nil,   nil,   nil,    66,    66,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,    41,   nil,    39,    66,   nil,   nil,   nil,    41,
+   nil,    67,   nil,    39,    39,    66,    66,   nil,   nil,    39,
+    39,   nil,    41,    41,    41,    41,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,    34,   nil,   nil,   nil,    34,   nil,   nil,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,   nil,    34,   nil,    67,
+   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,   nil,    39,   nil,   nil,   nil,
+    67,    39,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,    41,    41,   nil,    34,   nil,   nil,   nil,
+   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,    39,    39,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,    39,   nil,   nil,   nil,   nil,   nil,    41,    66,
+   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,    39,   nil,   nil,    34,    41,
+   nil,    66,    34,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,    34,    39,    39,   nil,   nil,    39,   nil,
+    34,   nil,   nil,   nil,   nil,    34,   nil,    39,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,    67,   nil,    39,
+    67,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+    66,   nil,   nil,    67,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,    66,   nil,   nil,    67,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,    66,    66,   nil,   nil,    66,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,    67,
+    67,    66,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,    67,
+    67,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,    67 ]
+
+racc_goto_pointer = [
+   nil,   123,     4,   131,   nil,    84,    -2,   110,    44,    40,
+  -123,   125,  -297,  -286,   423,  -521,  -584,  -651,  -705,   nil,
+  -387,  -165,    46,   132,   -49,   -57,    74,     4,   917,  -158,
+  1314,   -17,    11,  -182,  2115,   291,  -222,  -372,   -18,  2174,
+   -19,  2031,   -49,  -423,   nil,  -589,    -8,   nil,   nil,   124,
+  -197,    45,  -234,  -419,  1023,  -357,   nil,  1274,   100,    30,
+    70,  -105,   nil,     7,    34,  -261,  2493,  2599,  -256,    55,
+   -71,     5,   nil,    48,  -275,  -213,   nil,    -5,   107,  -189,
+     6,  -476,    31,   -16,  -349,  -262,  -466,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    83,   nil,   -73,  -187,
+   -54,   nil,   nil,   nil,  -313,  -683,   nil,  -659,   nil,   nil,
+   nil,  -347,   nil,    88,   nil,  -210,     2,   nil,   nil,  -548,
+    87,  -222,   106,   106,  -171,   110,   111,  -414,  -416,  -694,
+  -196,  -205,  -415,  -695,   nil,   nil,   nil,   nil,   nil,   nil,
+  -776,  -516,  -525,  -778,  -713,  -644,   nil,  -200,  -516,  -154,
+   186,  -643,    13,  -712,  -401,  -576,   nil,  -660,  -767,  -832,
+  -830,  -201,  -577,   104,  -406,  -284,   -20,  -181,   nil,   -88,
+   -88,   nil,  -497,  -548,   nil,  -306,  -798,  -375,  -517,  -640,
+   nil,   nil,   122,    31,   120,   120,   120,  -271,  -253,   120,
+   120,   127,  -561,  -397,  -397,   nil,   nil,   135,  -350,  -281,
+   nil,   nil,   110,  -530,  -668,  -525,  -727,   nil,  -665,  -858,
+   nil,   nil,  -143,  -498 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   304,     7,   356,   307,
+   nil,   nil,   nil,   nil,   556,   nil,   nil,   nil,   nil,   303,
+   305,   nil,   nil,   nil,   nil,    14,    15,    21,   238,   nil,
+   296,    17,   nil,   437,   239,   336,   nil,   nil,   588,   237,
+   473,    24,   nil,   nil,   351,   nil,    25,    26,    27,   nil,
+   715,   nil,   nil,   nil,   324,   nil,    28,   321,   452,    35,
+   nil,   nil,    37,    40,    39,   nil,   234,   235,   368,   nil,
+   143,   460,   142,    91,   nil,   442,    47,    50,   270,   nil,
+   453,   nil,   454,   465,   674,   517,   294,   279,    51,    52,
+    53,    54,    55,    56,    57,    58,    59,    61,   nil,   nil,
+   280,    65,    66,    67,   nil,   nil,    68,   857,    69,    70,
+    71,   nil,    72,   nil,    73,   nil,   569,    74,    75,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   284,   272,   724,   848,   578,   858,
+   781,   616,   nil,   782,   783,  1015,   915,   604,   nil,   605,
+   nil,   nil,   606,   nil,   608,   nil,   828,   nil,   nil,   nil,
+   614,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   464,   nil,
+   nil,   694,   nil,   nil,   505,   nil,   nil,   nil,   nil,   nil,
+    90,    92,    94,   nil,   nil,   nil,   nil,   nil,   632,   nil,
+   nil,   nil,   nil,   nil,   nil,   103,   104,   nil,   nil,   887,
+   763,   603,   nil,   607,   618,   620,   926,   623,   624,   927,
+   627,   630,   nil,   298 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 146, :_reduce_1,
+  2, 144, :_reduce_2,
+  2, 145, :_reduce_3,
+  1, 147, :_reduce_none,
+  1, 147, :_reduce_none,
+  3, 147, :_reduce_6,
+  2, 147, :_reduce_none,
+  1, 150, :_reduce_none,
+  0, 154, :_reduce_9,
+  3, 150, :_reduce_10,
+  0, 156, :_reduce_11,
+  4, 153, :_reduce_12,
+  0, 161, :_reduce_13,
+  6, 155, :_reduce_14,
+  3, 155, :_reduce_15,
+  2, 157, :_reduce_16,
+  1, 162, :_reduce_none,
+  1, 162, :_reduce_none,
+  3, 162, :_reduce_19,
+  2, 162, :_reduce_20,
+  1, 163, :_reduce_none,
+  0, 164, :_reduce_22,
+  3, 163, :_reduce_23,
+  0, 175, :_reduce_24,
+  4, 152, :_reduce_25,
+  3, 152, :_reduce_26,
+  3, 152, :_reduce_27,
+  3, 152, :_reduce_28,
+  2, 152, :_reduce_29,
+  3, 152, :_reduce_30,
+  3, 152, :_reduce_31,
+  3, 152, :_reduce_32,
+  3, 152, :_reduce_33,
+  3, 152, :_reduce_34,
+  4, 152, :_reduce_35,
+  1, 152, :_reduce_none,
+  3, 152, :_reduce_37,
+  3, 152, :_reduce_38,
+  3, 152, :_reduce_39,
+  3, 152, :_reduce_40,
+  1, 152, :_reduce_none,
+  3, 168, :_reduce_42,
+  3, 168, :_reduce_43,
+  6, 168, :_reduce_44,
+  5, 168, :_reduce_45,
+  5, 168, :_reduce_46,
+  5, 168, :_reduce_47,
+  5, 168, :_reduce_48,
+  3, 168, :_reduce_49,
+  1, 176, :_reduce_50,
+  1, 176, :_reduce_none,
+  1, 174, :_reduce_none,
+  3, 174, :_reduce_53,
+  3, 174, :_reduce_54,
+  3, 174, :_reduce_55,
+  2, 174, :_reduce_56,
+  1, 174, :_reduce_none,
+  1, 167, :_reduce_58,
+  0, 187, :_reduce_59,
+  0, 188, :_reduce_60,
+  4, 185, :_reduce_61,
+  1, 170, :_reduce_none,
+  1, 170, :_reduce_none,
+  1, 190, :_reduce_none,
+  4, 190, :_reduce_65,
+  0, 198, :_reduce_66,
+  4, 195, :_reduce_67,
+  1, 197, :_reduce_68,
+  2, 189, :_reduce_69,
+  3, 189, :_reduce_70,
+  4, 189, :_reduce_71,
+  5, 189, :_reduce_72,
+  4, 189, :_reduce_73,
+  5, 189, :_reduce_74,
+  2, 189, :_reduce_75,
+  2, 189, :_reduce_76,
+  2, 189, :_reduce_77,
+  2, 189, :_reduce_78,
+  2, 189, :_reduce_79,
+  1, 169, :_reduce_none,
+  3, 169, :_reduce_81,
+  1, 203, :_reduce_none,
+  3, 203, :_reduce_83,
+  1, 202, :_reduce_84,
+  2, 202, :_reduce_85,
+  3, 202, :_reduce_86,
+  5, 202, :_reduce_87,
+  2, 202, :_reduce_88,
+  4, 202, :_reduce_89,
+  2, 202, :_reduce_90,
+  4, 202, :_reduce_91,
+  1, 202, :_reduce_92,
+  3, 202, :_reduce_93,
+  1, 206, :_reduce_none,
+  3, 206, :_reduce_95,
+  2, 205, :_reduce_96,
+  3, 205, :_reduce_97,
+  1, 208, :_reduce_98,
+  3, 208, :_reduce_99,
+  1, 207, :_reduce_100,
+  1, 207, :_reduce_101,
+  4, 207, :_reduce_102,
+  3, 207, :_reduce_103,
+  3, 207, :_reduce_104,
+  3, 207, :_reduce_105,
+  3, 207, :_reduce_106,
+  2, 207, :_reduce_107,
+  1, 207, :_reduce_108,
+  1, 171, :_reduce_109,
+  1, 171, :_reduce_110,
+  4, 171, :_reduce_111,
+  3, 171, :_reduce_112,
+  3, 171, :_reduce_113,
+  3, 171, :_reduce_114,
+  3, 171, :_reduce_115,
+  2, 171, :_reduce_116,
+  1, 171, :_reduce_117,
+  1, 211, :_reduce_118,
+  1, 211, :_reduce_none,
+  2, 212, :_reduce_120,
+  1, 212, :_reduce_121,
+  3, 212, :_reduce_122,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_126,
+  1, 213, :_reduce_none,
+  1, 165, :_reduce_128,
+  1, 165, :_reduce_none,
+  1, 166, :_reduce_130,
+  0, 217, :_reduce_131,
+  4, 166, :_reduce_132,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  3, 184, :_reduce_204,
+  3, 184, :_reduce_205,
+  6, 184, :_reduce_206,
+  5, 184, :_reduce_207,
+  5, 184, :_reduce_208,
+  5, 184, :_reduce_209,
+  5, 184, :_reduce_210,
+  4, 184, :_reduce_211,
+  3, 184, :_reduce_212,
+  3, 184, :_reduce_213,
+  3, 184, :_reduce_214,
+  3, 184, :_reduce_215,
+  3, 184, :_reduce_216,
+  3, 184, :_reduce_217,
+  3, 184, :_reduce_218,
+  3, 184, :_reduce_219,
+  3, 184, :_reduce_220,
+  4, 184, :_reduce_221,
+  4, 184, :_reduce_222,
+  2, 184, :_reduce_223,
+  2, 184, :_reduce_224,
+  3, 184, :_reduce_225,
+  3, 184, :_reduce_226,
+  3, 184, :_reduce_227,
+  3, 184, :_reduce_228,
+  1, 184, :_reduce_none,
+  3, 184, :_reduce_230,
+  3, 184, :_reduce_231,
+  3, 184, :_reduce_232,
+  3, 184, :_reduce_233,
+  3, 184, :_reduce_234,
+  2, 184, :_reduce_235,
+  2, 184, :_reduce_236,
+  3, 184, :_reduce_237,
+  3, 184, :_reduce_238,
+  3, 184, :_reduce_239,
+  3, 184, :_reduce_240,
+  3, 184, :_reduce_241,
+  6, 184, :_reduce_242,
+  1, 184, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  3, 219, :_reduce_248,
+  3, 219, :_reduce_249,
+  1, 173, :_reduce_250,
+  1, 222, :_reduce_none,
+  2, 222, :_reduce_252,
+  4, 222, :_reduce_253,
+  2, 222, :_reduce_254,
+  1, 218, :_reduce_none,
+  3, 218, :_reduce_256,
+  3, 226, :_reduce_257,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 179, :_reduce_none,
+  1, 179, :_reduce_none,
+  2, 179, :_reduce_262,
+  4, 179, :_reduce_263,
+  2, 179, :_reduce_264,
+  1, 201, :_reduce_265,
+  2, 201, :_reduce_266,
+  2, 201, :_reduce_267,
+  4, 201, :_reduce_268,
+  1, 201, :_reduce_269,
+  0, 230, :_reduce_270,
+  2, 194, :_reduce_271,
+  2, 229, :_reduce_272,
+  2, 228, :_reduce_273,
+  1, 228, :_reduce_none,
+  1, 223, :_reduce_275,
+  2, 223, :_reduce_276,
+  3, 223, :_reduce_277,
+  4, 223, :_reduce_278,
+  3, 172, :_reduce_279,
+  4, 172, :_reduce_280,
+  2, 172, :_reduce_281,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_292,
+  0, 265, :_reduce_293,
+  4, 220, :_reduce_294,
+  0, 266, :_reduce_295,
+  3, 220, :_reduce_296,
+  0, 267, :_reduce_297,
+  4, 220, :_reduce_298,
+  3, 220, :_reduce_299,
+  3, 220, :_reduce_300,
+  2, 220, :_reduce_301,
+  0, 268, :_reduce_302,
+  4, 220, :_reduce_303,
+  0, 269, :_reduce_304,
+  4, 220, :_reduce_305,
+  1, 220, :_reduce_306,
+  4, 220, :_reduce_307,
+  3, 220, :_reduce_308,
+  1, 220, :_reduce_309,
+  5, 220, :_reduce_310,
+  4, 220, :_reduce_311,
+  3, 220, :_reduce_312,
+  2, 220, :_reduce_313,
+  1, 220, :_reduce_none,
+  2, 220, :_reduce_315,
+  1, 220, :_reduce_316,
+  6, 220, :_reduce_317,
+  6, 220, :_reduce_318,
+  4, 220, :_reduce_319,
+  4, 220, :_reduce_320,
+  5, 220, :_reduce_321,
+  4, 220, :_reduce_322,
+  6, 220, :_reduce_323,
+  0, 270, :_reduce_324,
+  6, 220, :_reduce_325,
+  0, 271, :_reduce_326,
+  0, 272, :_reduce_327,
+  8, 220, :_reduce_328,
+  0, 273, :_reduce_329,
+  5, 220, :_reduce_330,
+  0, 274, :_reduce_331,
+  6, 220, :_reduce_332,
+  0, 275, :_reduce_333,
+  0, 276, :_reduce_334,
+  9, 220, :_reduce_335,
+  1, 220, :_reduce_336,
+  1, 220, :_reduce_337,
+  1, 220, :_reduce_338,
+  1, 220, :_reduce_339,
+  1, 178, :_reduce_340,
+  1, 240, :_reduce_none,
+  1, 246, :_reduce_none,
+  1, 249, :_reduce_none,
+  1, 251, :_reduce_none,
+  1, 252, :_reduce_none,
+  1, 253, :_reduce_none,
+  1, 255, :_reduce_none,
+  1, 257, :_reduce_348,
+  1, 260, :_reduce_349,
+  1, 261, :_reduce_350,
+  1, 277, :_reduce_none,
+  1, 278, :_reduce_none,
+  1, 279, :_reduce_none,
+  1, 280, :_reduce_none,
+  1, 281, :_reduce_none,
+  1, 159, :_reduce_none,
+  1, 282, :_reduce_none,
+  1, 241, :_reduce_none,
+  1, 200, :_reduce_none,
+  1, 247, :_reduce_none,
+  1, 247, :_reduce_none,
+  2, 247, :_reduce_none,
+  1, 186, :_reduce_none,
+  1, 186, :_reduce_none,
+  1, 248, :_reduce_none,
+  5, 248, :_reduce_366,
+  1, 250, :_reduce_none,
+  2, 250, :_reduce_368,
+  1, 256, :_reduce_none,
+  1, 256, :_reduce_370,
+  1, 283, :_reduce_none,
+  3, 283, :_reduce_372,
+  1, 286, :_reduce_373,
+  3, 286, :_reduce_374,
+  1, 285, :_reduce_375,
+  3, 285, :_reduce_376,
+  5, 285, :_reduce_377,
+  1, 285, :_reduce_378,
+  3, 285, :_reduce_379,
+  2, 287, :_reduce_380,
+  1, 287, :_reduce_381,
+  4, 288, :_reduce_382,
+  2, 288, :_reduce_383,
+  2, 288, :_reduce_384,
+  1, 288, :_reduce_385,
+  2, 293, :_reduce_386,
+  1, 293, :_reduce_none,
+  6, 294, :_reduce_388,
+  8, 294, :_reduce_389,
+  4, 294, :_reduce_390,
+  6, 294, :_reduce_391,
+  4, 294, :_reduce_392,
+  2, 294, :_reduce_393,
+  6, 294, :_reduce_394,
+  2, 294, :_reduce_395,
+  4, 294, :_reduce_396,
+  6, 294, :_reduce_397,
+  2, 294, :_reduce_398,
+  4, 294, :_reduce_399,
+  2, 294, :_reduce_400,
+  4, 294, :_reduce_401,
+  1, 294, :_reduce_402,
+  1, 298, :_reduce_403,
+  1, 298, :_reduce_404,
+  3, 299, :_reduce_405,
+  1, 299, :_reduce_406,
+  4, 299, :_reduce_407,
+  1, 300, :_reduce_none,
+  4, 300, :_reduce_409,
+  1, 301, :_reduce_410,
+  3, 301, :_reduce_411,
+  1, 302, :_reduce_412,
+  1, 302, :_reduce_none,
+  0, 306, :_reduce_414,
+  0, 307, :_reduce_415,
+  5, 245, :_reduce_416,
+  4, 304, :_reduce_417,
+  1, 304, :_reduce_418,
+  3, 305, :_reduce_419,
+  3, 305, :_reduce_420,
+  3, 309, :_reduce_421,
+  2, 191, :_reduce_422,
+  4, 191, :_reduce_423,
+  5, 191, :_reduce_424,
+  5, 191, :_reduce_425,
+  2, 244, :_reduce_426,
+  4, 244, :_reduce_427,
+  4, 244, :_reduce_428,
+  3, 244, :_reduce_429,
+  3, 244, :_reduce_430,
+  3, 244, :_reduce_431,
+  2, 244, :_reduce_432,
+  1, 244, :_reduce_433,
+  4, 244, :_reduce_434,
+  0, 312, :_reduce_435,
+  4, 243, :_reduce_436,
+  0, 313, :_reduce_437,
+  4, 243, :_reduce_438,
+  0, 314, :_reduce_439,
+  0, 315, :_reduce_440,
+  4, 196, :_reduce_441,
+  0, 317, :_reduce_442,
+  0, 318, :_reduce_443,
+  4, 310, :_reduce_444,
+  1, 316, :_reduce_445,
+  2, 316, :_reduce_446,
+  3, 316, :_reduce_447,
+  4, 316, :_reduce_448,
+  0, 320, :_reduce_449,
+  6, 254, :_reduce_450,
+  1, 319, :_reduce_none,
+  1, 319, :_reduce_none,
+  6, 158, :_reduce_453,
+  0, 158, :_reduce_454,
+  1, 321, :_reduce_455,
+  1, 321, :_reduce_none,
+  1, 321, :_reduce_none,
+  2, 322, :_reduce_458,
+  1, 322, :_reduce_none,
+  2, 160, :_reduce_460,
+  1, 160, :_reduce_none,
+  1, 231, :_reduce_462,
+  1, 231, :_reduce_none,
+  1, 232, :_reduce_464,
+  1, 324, :_reduce_465,
+  1, 324, :_reduce_none,
+  2, 324, :_reduce_467,
+  3, 325, :_reduce_468,
+  1, 325, :_reduce_469,
+  3, 233, :_reduce_470,
+  3, 234, :_reduce_471,
+  3, 235, :_reduce_472,
+  3, 235, :_reduce_473,
+  1, 329, :_reduce_474,
+  3, 329, :_reduce_475,
+  1, 330, :_reduce_none,
+  2, 330, :_reduce_477,
+  3, 237, :_reduce_478,
+  3, 237, :_reduce_479,
+  1, 332, :_reduce_480,
+  3, 332, :_reduce_481,
+  3, 236, :_reduce_482,
+  3, 236, :_reduce_483,
+  3, 238, :_reduce_484,
+  3, 238, :_reduce_485,
+  1, 333, :_reduce_486,
+  3, 333, :_reduce_487,
+  1, 334, :_reduce_488,
+  3, 334, :_reduce_489,
+  1, 326, :_reduce_490,
+  2, 326, :_reduce_491,
+  1, 327, :_reduce_492,
+  2, 327, :_reduce_493,
+  1, 328, :_reduce_494,
+  2, 328, :_reduce_495,
+  1, 331, :_reduce_496,
+  0, 336, :_reduce_497,
+  3, 331, :_reduce_498,
+  0, 337, :_reduce_499,
+  4, 331, :_reduce_500,
+  1, 335, :_reduce_501,
+  1, 335, :_reduce_502,
+  1, 335, :_reduce_503,
+  1, 335, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  2, 338, :_reduce_507,
+  1, 338, :_reduce_508,
+  1, 340, :_reduce_none,
+  1, 340, :_reduce_none,
+  1, 340, :_reduce_none,
+  1, 340, :_reduce_none,
+  3, 339, :_reduce_513,
+  1, 323, :_reduce_none,
+  1, 323, :_reduce_none,
+  2, 323, :_reduce_516,
+  2, 323, :_reduce_517,
+  1, 209, :_reduce_none,
+  1, 209, :_reduce_none,
+  1, 209, :_reduce_none,
+  1, 209, :_reduce_none,
+  1, 209, :_reduce_none,
+  1, 210, :_reduce_523,
+  1, 210, :_reduce_524,
+  1, 210, :_reduce_525,
+  1, 210, :_reduce_526,
+  1, 210, :_reduce_527,
+  1, 210, :_reduce_528,
+  1, 210, :_reduce_529,
+  1, 239, :_reduce_530,
+  1, 239, :_reduce_531,
+  1, 177, :_reduce_532,
+  1, 177, :_reduce_533,
+  1, 182, :_reduce_534,
+  1, 182, :_reduce_535,
+  0, 341, :_reduce_536,
+  4, 258, :_reduce_537,
+  1, 258, :_reduce_538,
+  3, 262, :_reduce_539,
+  0, 343, :_reduce_540,
+  3, 262, :_reduce_541,
+  4, 342, :_reduce_542,
+  2, 342, :_reduce_543,
+  2, 342, :_reduce_544,
+  1, 342, :_reduce_none,
+  2, 345, :_reduce_546,
+  0, 345, :_reduce_547,
+  6, 308, :_reduce_548,
+  8, 308, :_reduce_549,
+  4, 308, :_reduce_550,
+  6, 308, :_reduce_551,
+  4, 308, :_reduce_552,
+  6, 308, :_reduce_553,
+  2, 308, :_reduce_554,
+  4, 308, :_reduce_555,
+  6, 308, :_reduce_556,
+  2, 308, :_reduce_557,
+  4, 308, :_reduce_558,
+  2, 308, :_reduce_559,
+  4, 308, :_reduce_560,
+  1, 308, :_reduce_561,
+  0, 308, :_reduce_562,
+  1, 303, :_reduce_563,
+  1, 303, :_reduce_564,
+  1, 303, :_reduce_565,
+  1, 303, :_reduce_566,
+  1, 284, :_reduce_none,
+  1, 284, :_reduce_568,
+  1, 347, :_reduce_none,
+  3, 347, :_reduce_570,
+  1, 295, :_reduce_571,
+  3, 295, :_reduce_572,
+  2, 348, :_reduce_573,
+  2, 349, :_reduce_574,
+  1, 289, :_reduce_none,
+  3, 289, :_reduce_576,
+  1, 344, :_reduce_none,
+  3, 344, :_reduce_578,
+  1, 350, :_reduce_none,
+  1, 350, :_reduce_none,
+  2, 290, :_reduce_581,
+  1, 290, :_reduce_582,
+  3, 351, :_reduce_583,
+  3, 352, :_reduce_584,
+  1, 296, :_reduce_585,
+  3, 296, :_reduce_586,
+  1, 346, :_reduce_587,
+  3, 346, :_reduce_588,
+  1, 353, :_reduce_none,
+  1, 353, :_reduce_none,
+  2, 297, :_reduce_591,
+  1, 297, :_reduce_592,
+  1, 354, :_reduce_none,
+  1, 354, :_reduce_none,
+  2, 292, :_reduce_595,
+  2, 291, :_reduce_596,
+  0, 291, :_reduce_597,
+  1, 263, :_reduce_none,
+  0, 355, :_reduce_599,
+  4, 263, :_reduce_600,
+  1, 242, :_reduce_601,
+  2, 242, :_reduce_none,
+  1, 225, :_reduce_none,
+  3, 225, :_reduce_604,
+  3, 356, :_reduce_605,
+  2, 356, :_reduce_606,
+  2, 356, :_reduce_607,
+  1, 199, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 193, :_reduce_none,
+  1, 193, :_reduce_none,
+  1, 193, :_reduce_none,
+  1, 193, :_reduce_none,
+  1, 311, :_reduce_none,
+  1, 311, :_reduce_none,
+  1, 311, :_reduce_none,
+  1, 264, :_reduce_none,
+  1, 264, :_reduce_none,
+  1, 181, :_reduce_none,
+  1, 192, :_reduce_none,
+  1, 192, :_reduce_none,
+  0, 148, :_reduce_none,
+  1, 148, :_reduce_none,
+  0, 183, :_reduce_none,
+  1, 183, :_reduce_none,
+  2, 204, :_reduce_627,
+  2, 180, :_reduce_628,
+  0, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 259, :_reduce_632,
+  1, 259, :_reduce_none,
+  1, 151, :_reduce_none,
+  2, 151, :_reduce_635,
+  0, 149, :_reduce_636 ]
+
+racc_reduce_n = 637
+
+racc_shift_n = 1082
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tLOWEST => 139,
+  :tEQL => 140,
+  :tBDOT2 => 141,
+  :tBDOT3 => 142 }
+
+racc_nt_base = 143
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tLOWEST",
+  "tEQL",
+  "tBDOT2",
+  "tBDOT3",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "@3",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@4",
+  "stmts",
+  "stmt_or_begin",
+  "@5",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "arg_value",
+  "expr",
+  "@6",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "backref",
+  "opt_nl",
+  "arg",
+  "expr_value_do",
+  "do",
+  "@7",
+  "@8",
+  "command",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@9",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "fname",
+  "op",
+  "reswords",
+  "symbol",
+  "@10",
+  "arg_rhs",
+  "rel_expr",
+  "primary",
+  "relop",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@11",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "k_def",
+  "f_arglist",
+  "singleton",
+  "dot_or_colon",
+  "@12",
+  "@13",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "@22",
+  "@23",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "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",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@24",
+  "@25",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@26",
+  "@27",
+  "@28",
+  "@29",
+  "case_args",
+  "@30",
+  "@31",
+  "cases",
+  "@32",
+  "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",
+  "@33",
+  "@34",
+  "ssym",
+  "dsym",
+  "sym",
+  "@35",
+  "args_tail",
+  "@36",
+  "f_kwarg",
+  "opt_args_tail",
+  "f_optarg",
+  "f_arg_item",
+  "f_kw",
+  "f_block_kw",
+  "kwrest_mark",
+  "f_opt",
+  "f_block_opt",
+  "restarg_mark",
+  "blkarg_mark",
+  "@37",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 11
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      _, line, stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      res = _values[-2]
+                      # TODO: move down to main match so I can just use val
+
+                      warn "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_16(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 17 omitted
+
+# reduce 18 omitted
+
+def _reduce_19(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_20(val, _values, result)
+                      result = val[1]
+                      debug 12
+
+    result
+end
+
+# reduce 21 omitted
+
+def _reduce_22(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_35(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 13
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 36 omitted
+
+def _reduce_37(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_40(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 41 omitted
+
+def _reduce_42(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_50(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+# reduce 51 omitted
+
+# reduce 52 omitted
+
+def _reduce_53(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_55(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_56(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+# reduce 57 omitted
+
+def _reduce_58(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_61(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 62 omitted
+
+# reduce 63 omitted
+
+# reduce 64 omitted
+
+def _reduce_65(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_66(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_74(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_75(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_76(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_77(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_79(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 80 omitted
+
+def _reduce_81(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 82 omitted
+
+def _reduce_83(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_92(val, _values, result)
+                      l = lexer.lineno
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_93(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 94 omitted
+
+def _reduce_95(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_106(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 14
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_107(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 15
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 16
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 17
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 18
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_118(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 119 omitted
+
+def _reduce_120(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_122(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 123 omitted
+
+# reduce 124 omitted
+
+# reduce 125 omitted
+
+def _reduce_126(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 127 omitted
+
+def _reduce_128(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 129 omitted
+
+def _reduce_130(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_131(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_132(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+# reduce 203 omitted
+
+def _reduce_204(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_205(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_206(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_207(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_208(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_209(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_210(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_211(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_212(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_213(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_214(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_215(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_216(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+                      ## TODO: why is this 2.0 only?
+                      debug 19
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_227(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_228(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 229 omitted
+
+def _reduce_230(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_241(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_242(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+# reduce 243 omitted
+
+# reduce 244 omitted
+
+# reduce 245 omitted
+
+# reduce 246 omitted
+
+# reduce 247 omitted
+
+def _reduce_248(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_249(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_250(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 251 omitted
+
+def _reduce_252(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_253(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_254(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 255 omitted
+
+def _reduce_256(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_257(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+# reduce 258 omitted
+
+# reduce 259 omitted
+
+# reduce 260 omitted
+
+# reduce 261 omitted
+
+def _reduce_262(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_263(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_264(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_265(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_266(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_267(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_270(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_271(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_272(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_273(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 274 omitted
+
+def _reduce_275(val, _values, result)
+                      arg, = val
+                      lineno = arg.line || lexer.lineno # HACK
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      # TODO: the line number from tSTAR has been dropped
+                      args, _, _, id = val
+                      line = lexer.lineno
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_279(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_280(val, _values, result)
+                      # TODO: make all tXXXX terminals include lexer.lineno
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_281(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 282 omitted
+
+# reduce 283 omitted
+
+# reduce 284 omitted
+
+# reduce 285 omitted
+
+# reduce 286 omitted
+
+# reduce 287 omitted
+
+# reduce 288 omitted
+
+# reduce 289 omitted
+
+# reduce 290 omitted
+
+# reduce 291 omitted
+
+def _reduce_292(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_293(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+                      result = lexer.lineno
+
+    result
+end
+
+def _reduce_296(val, _values, result)
+                      _, line, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_297(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      _, stmt, _ = val
+                      result = stmt
+                      result ||= s(:nil).line lexer.lineno
+                      result.paren = true
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_303(val, _values, result)
+                      _, line, args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_308(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_309(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_310(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_311(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_312(val, _values, result)
+                      debug 20
+
+    result
+end
+
+def _reduce_313(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 314 omitted
+
+def _reduce_315(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_316(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_317(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_318(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      result = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      result = self.in_def
+
+                      self.in_single += 1 # TODO: remove?
+
+                      self.in_def = true # local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
+                      # =>
+                      # [kdef, recv, (name, line), in_def, args, body, kend]
+
+                      val.delete_at 3
+                      val.delete_at 2
+
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 341 omitted
+
+# reduce 342 omitted
+
+# reduce 343 omitted
+
+# reduce 344 omitted
+
+# reduce 345 omitted
+
+# reduce 346 omitted
+
+# reduce 347 omitted
+
+def _reduce_348(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_349(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 351 omitted
+
+# reduce 352 omitted
+
+# reduce 353 omitted
+
+# reduce 354 omitted
+
+# reduce 355 omitted
+
+# reduce 356 omitted
+
+# reduce 357 omitted
+
+# reduce 358 omitted
+
+# reduce 359 omitted
+
+# reduce 360 omitted
+
+# reduce 361 omitted
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+def _reduce_366(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 367 omitted
+
+def _reduce_368(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 369 omitted
+
+def _reduce_370(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+# reduce 371 omitted
+
+def _reduce_372(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_373(val, _values, result)
+                      sym, = val
+
+                      result = s(:array, sym).line lexer.lineno
+
+    result
+end
+
+def _reduce_374(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_375(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_376(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_377(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_378(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_379(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_380(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_381(val, _values, result)
+                      result = args [:*]
+                      result.line lexer.lineno # FIX: tSTAR -> line
+
+    result
+end
+
+def _reduce_382(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_383(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_384(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_385(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_386(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 387 omitted
+
+def _reduce_388(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_389(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_390(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_391(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      result = args(val) << nil
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_404(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_405(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+def _reduce_406(val, _values, result)
+                      result = s(:args).line lexer.lineno
+
+    result
+end
+
+def _reduce_407(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+# reduce 408 omitted
+
+def _reduce_409(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 413 omitted
+
+def _reduce_414(val, _values, result)
+                      self.env.extend :dynamic
+                      result = [lexer.lineno, lexer.lpar_beg]
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_415(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      _, (line, lpar), args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      result = s(:zsuper).line lexer.lineno
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_440(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_441(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_442(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_443(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      result = new_when(val[2], val[4])
+                      result.line val[1]
+                      result << val[5] if val[5]
+
+    result
+end
+
+# reduce 451 omitted
+
+# reduce 452 omitted
+
+def _reduce_453(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_454(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 456 omitted
+
+# reduce 457 omitted
+
+def _reduce_458(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 459 omitted
+
+def _reduce_460(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 461 omitted
+
+def _reduce_462(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 463 omitted
+
+def _reduce_464(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_465(val, _values, result)
+                      debug 37
+
+    result
+end
+
+# reduce 466 omitted
+
+def _reduce_467(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_468(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_469(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_470(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_471(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 476 omitted
+
+def _reduce_477(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_478(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_479(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_480(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_483(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_484(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_485(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_486(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_488(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_489(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_494(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_495(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_496(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_497(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_498(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_499(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                                lexer.lineno,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_500(val, _values, result)
+                      _, memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 38
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_501(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 504 omitted
+
+# reduce 505 omitted
+
+# reduce 506 omitted
+
+def _reduce_507(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_508(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 509 omitted
+
+# reduce 510 omitted
+
+# reduce 511 omitted
+
+# reduce 512 omitted
+
+def _reduce_513(val, _values, result)
+                      _, result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line lexer.lineno
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 39
+                      end
+
+    result
+end
+
+# reduce 514 omitted
+
+# reduce 515 omitted
+
+def _reduce_516(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+def _reduce_517(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 518 omitted
+
+# reduce 519 omitted
+
+# reduce 520 omitted
+
+# reduce 521 omitted
+
+# reduce 522 omitted
+
+def _reduce_523(val, _values, result)
+ result = s(:nil).line lexer.lineno
+    result
+end
+
+def _reduce_524(val, _values, result)
+ result = s(:self).line lexer.lineno
+    result
+end
+
+def _reduce_525(val, _values, result)
+ result = s(:true).line lexer.lineno
+    result
+end
+
+def _reduce_526(val, _values, result)
+ result = s(:false).line lexer.lineno
+    result
+end
+
+def _reduce_527(val, _values, result)
+ result = s(:str, self.file).line lexer.lineno
+    result
+end
+
+def _reduce_528(val, _values, result)
+ result = s(:lit, lexer.lineno).line lexer.lineno
+    result
+end
+
+def _reduce_529(val, _values, result)
+                      l = lexer.lineno
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_530(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+                      result.line line
+
+    result
+end
+
+def _reduce_531(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_532(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_533(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 40
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_539(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_540(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 545 omitted
+
+def _reduce_546(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_547(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_548(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_549(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_550(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_551(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_555(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_556(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_557(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_558(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_560(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_561(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_562(val, _values, result)
+                      result = args val
+                      # result.line lexer.lineno
+
+    result
+end
+
+def _reduce_563(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_564(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 567 omitted
+
+def _reduce_568(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 569 omitted
+
+def _reduce_570(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_571(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_572(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_573(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_574(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+# reduce 575 omitted
+
+def _reduce_576(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 577 omitted
+
+def _reduce_578(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 579 omitted
+
+# reduce 580 omitted
+
+def _reduce_581(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_582(val, _values, result)
+                      id = :"**"
+                      self.env[id] = :lvar # TODO: needed?!?
+                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
+
+    result
+end
+
+def _reduce_583(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+
+    result
+end
+
+def _reduce_584(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+
+    result
+end
+
+def _reduce_585(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_586(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_587(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_588(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 589 omitted
+
+# reduce 590 omitted
+
+def _reduce_591(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
+
+    result
+end
+
+# reduce 593 omitted
+
+# reduce 594 omitted
+
+def _reduce_595(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_596(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_597(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 598 omitted
+
+def _reduce_599(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_600(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_601(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 602 omitted
+
+# reduce 603 omitted
+
+def _reduce_604(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_605(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_607(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 608 omitted
+
+# reduce 609 omitted
+
+# reduce 610 omitted
+
+# reduce 611 omitted
+
+# reduce 612 omitted
+
+# reduce 613 omitted
+
+# reduce 614 omitted
+
+# reduce 615 omitted
+
+# reduce 616 omitted
+
+# reduce 617 omitted
+
+# reduce 618 omitted
+
+# reduce 619 omitted
+
+# reduce 620 omitted
+
+# reduce 621 omitted
+
+# reduce 622 omitted
+
+# reduce 623 omitted
+
+# reduce 624 omitted
+
+# reduce 625 omitted
+
+# reduce 626 omitted
+
+def _reduce_627(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_628(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+# reduce 631 omitted
+
+def _reduce_632(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 633 omitted
+
+# reduce 634 omitted
+
+def _reduce_635(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_636(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby20Parser
diff -pruN 3.20.0-2/lib/ruby_parser21.rb 3.21.1-1/lib/ruby_parser21.rb
--- 3.20.0-2/lib/ruby_parser21.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser21.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,10978 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby21Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -520,   571,   571,   284,   571,   571,  -534,  -520,  -520,  -520,
+   233,   571,  -520,  -520,  -520,     3,  -520,   254,   651,   654,
+   224,   225,   224,   225,  -520,   -94,  -520,  -520,  -520,  -108,
+  -109,  -116,  -115,  -111,   126,  -113,  -520,  -520,   -80,  -520,
+  -520,  -520,  -520,  -520,   230,   221,   234,  -110,  -111,   251,
+   742,   279,  -113,   253,   252,   249,   250,   222,   881,  -110,
+   616,  -108,   613,   612,   611,  -112,   614,  -520,  -520,  -520,
+  -520,  -520,  -520,  -520,  -520,  -520,  -520,  -520,  -520,  -520,
+  -520,   650,   653,  -520,  -520,  -520,   223,  -520,  -520,   284,
+   286,  -520,   224,   225,  -520,  -520,   226,  -520,   781,  -520,
+   284,  -520,   284,  -520,  -520,  -520,  -520,  -520,  -520,  -520,
+   234,  -520,   234,  -520,   274,   130,   130,  -112,   130,   130,
+   129,   129,   943,   129,   129,   130,  -520,  -520,  -520,  -520,
+   129,  -520,  -523,  -520,   -99,  -100,  -107,  -106,  -520,  -523,
+  -523,  -523,  -520,  -616,  -523,  -523,  -523,  -111,  -523,  -113,
+   130,  -102,  -111,  -102,  -113,   129,  -523,  -104,  -523,  -523,
+  -523,  -110,  -114,   880,  -101,   281,  -110,   281,  -523,  -523,
+  -535,  -523,  -523,  -523,  -523,  -523,   286,  -104,   230,  -112,
+   830,  -520,   234,  -616,  -112,   229,   846,   286,  -520,   286,
+   830,  -523,   847,   635,   227,   335,   640,  -613,  -523,  -523,
+  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
+  -523,  -523,  -523,    95,   829,  -523,  -523,  -523,  -102,  -523,
+  -523,    96,  -103,  -523,   829,  -109,  -523,  -523,  -617,  -523,
+  -434,  -523,   635,  -523,   231,  -523,  -523,  -523,  -523,  -523,
+  -523,  -523,   481,  -523,  -104,  -523,   108,   109,   108,   109,
+  -520,   635,   336,  -102,   637,   636,  -102,  -520,  -523,  -523,
+  -523,  -523,  -613,  -523,  -300,  -523,  -520,  -105,  -534,  -102,
+  -523,  -300,  -300,  -300,  -523,   620,  -107,  -300,  -300,  -104,
+  -300,  -530,  -104,  -434,  -613,   860,   623,   578,  -530,  -116,
+  -434,  -529,  -614,   637,   636,  -104,   234,  -116,  -529,  -434,
+  -300,  -300,   793,  -300,  -300,  -300,  -300,  -300,  -531,   231,
+   -99,  -528,   637,   636,   399,  -531,   402,  -434,  -528,   631,
+   630,   795,   635,  -108,   110,   111,   110,   111,   405,  -620,
+   408,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,  -523,  -535,  -300,  -300,  -300,
+   425,   677,  -523,   624,  -620,  -300,   550,  -614,  -300,   430,
+   821,  -523,   822,  -300,  -116,  -300,   635,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,   585,  -300,   550,  -300,   586,  -614,
+  -525,   620,  -620,   637,   636,   633,   635,  -525,  -100,  -620,
+  -300,  -300,   623,  -105,  -616,  -300,  -620,   671,  -620,   635,
+   671,  -109,  -300,  -620,  -620,  -620,  -114,  -620,   254,  -620,
+  -620,  -115,  -620,  -526,  -620,  -111,  -620,  -113,  -106,  -616,
+  -526,  -620,   480,  -620,   482,   631,   630,   637,   636,   638,
+   635,  -115,  -620,  -620,   672,  -620,  -620,  -620,  -620,  -620,
+   251,  -620,  -102,   672,   253,   252,  -527,   637,   636,   643,
+   598,   914,  -111,  -527,   483,  -111,   808,   599,   233,   624,
+   637,   636,   648,  -620,  -620,  -620,  -620,  -620,  -620,  -620,
+  -620,  -620,  -620,  -620,  -620,  -620,  -620,   808,   512,  -620,
+  -620,  -620,   521,   678,   524,  -104,   526,  -620,   -79,  -113,
+  -620,   637,   636,   655,   234,  -620,   536,  -620,  -113,  -620,
+  -620,  -620,  -620,  -620,  -620,  -620,  -110,  -620,  -620,  -620,
+   616,  -110,   613,   612,   611,   620,   614,  -340,   731,  -101,
+   537,   730,  -620,  -620,  -340,  -103,   623,  -620,  -620,   224,
+   225,   544,  -110,  -340,  -620,  -620,  -620,  -620,  -112,   291,
+  -620,  -620,  -620,   731,  -620,   427,   733,   234,   618,   602,
+   429,   428,   254,  -620,  -620,  -620,  -620,   628,   627,   631,
+   630,   130,   224,   225,  -620,  -620,   129,  -620,  -620,  -620,
+  -620,  -620,   616,   281,   613,   612,   611,   731,   614,   616,
+   733,   613,   612,   611,   251,   614,   547,   130,   253,   252,
+   249,   250,   129,   624,   551,  -620,  -620,  -620,  -620,  -620,
+  -620,  -620,  -620,  -620,  -620,  -620,  -620,  -620,  -620,   254,
+   781,  -620,  -620,  -620,   230,   823,  -620,   781,   234,  -620,
+   578,   478,  -620,  -620,   418,  -620,   785,  -620,   583,  -620,
+   479,  -620,  -620,  -620,  -620,  -620,  -620,  -620,   130,  -620,
+  -620,  -620,   616,   129,   613,   612,   611,   620,   614,   271,
+   272,   224,   225,   584,  -620,  -620,  -620,  -620,   623,  -620,
+  -300,  -620,   731,   856,   860,   733,  -620,  -300,  -300,  -300,
+  -112,   592,  -300,  -300,  -300,   616,  -300,   613,   612,   611,
+   618,   614,   631,   630,   270,   269,  -300,  -300,  -300,   628,
+   627,   631,   630,   856,   860,   642,  -300,  -300,  -532,  -300,
+  -300,  -300,  -300,  -300,   616,  -532,   613,   612,   611,   234,
+   614,   130,  1041,   781,  -532,   616,   129,   613,   612,   611,
+   646,   614,   785,   649,   652,   624,   659,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,   130,   781,  -300,  -300,  -300,   129,   824,  -300,  -273,
+   661,  -300,   662,   781,  -300,  -300,   234,  -300,   669,  -300,
+   670,  -300,   785,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+   130,  -300,   281,  -300,   616,   129,   613,   612,   611,   620,
+   614,   254,   682,   254,   254,   254,  -300,  -300,  -300,  -300,
+   623,  -300,  -300,  -300,   254,   689,   234,   234,  -300,  -300,
+  -300,  -300,  -114,  -533,   230,  -300,  -300,   425,  -300,   254,
+  -533,   543,   618,   251,   234,   -94,   708,   253,   252,  -533,
+   541,   628,   627,   631,   630,   264,   265,   234,  -300,  -300,
+   556,  -300,  -300,  -300,  -300,  -300,   133,   134,   135,   136,
+   137,   251,  -291,   257,   719,   253,   252,   249,   250,  -291,
+   724,   255,   727,   256,   234,   234,   735,   624,  -291,  -300,
+  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,   230,   230,  -300,  -300,  -300,   230,   677,
+   553,   582,   526,  -300,   738,   588,  -300,   727,   727,   479,
+   580,  -300,   578,  -300,   590,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,   727,  -300,   616,  -300,   613,   612,   611,   620,
+   614,   616,   763,   613,   612,   611,   769,   614,  -300,  -300,
+   623,  -300,   772,  -300,  -620,   773,   775,   777,   230,  -301,
+  -300,  -620,  -620,  -620,  -114,   665,  -301,  -620,  -620,   254,
+  -620,  -301,   618,   230,   663,  -301,   779,   788,  -301,  -620,
+  1025,   628,   627,   631,   630,   264,   265,  -301,   789,   590,
+  -620,  -620,   790,  -620,  -620,  -620,  -620,  -620,   796,   797,
+  -274,   251,  -300,   257,   809,   253,   252,   249,   250,  -300,
+   512,   255,   512,   256,  -617,   234,   826,   624,  -300,   274,
+   835,  -620,  -620,  -620,  -620,  -620,  -620,  -620,  -620,  -620,
+  -620,  -620,  -620,  -620,  -620,  -300,   837,  -620,  -620,  -620,
+   524,   678,  -300,   526,   719,  -620,   234,  -617,  -620,   281,
+   281,  -300,   254,  -620,   719,  -620,   254,  -620,  -620,  -620,
+  -620,  -620,  -620,  -620,   860,  -620,  -620,  -620,   264,   265,
+  1006,  -532,   613,   612,   611,   727,   614,   234,  -532,   234,
+  -620,  -620,   727,  -620,   251,  -620,   257,  -532,   253,   252,
+   249,   250,  -620,   234,   898,   899,  -112,     8,    85,    86,
+    87,    12,    78,   234,   908,  -533,    79,    80,  -275,   234,
+   913,    83,  -533,    81,    82,    84,    33,    34,    76,    77,
+   930,  -533,   719,  -273,   935,    88,    31,    30,   118,   117,
+   119,   120,   903,   904,    22,   727,   905,   124,   125,   666,
+    11,    49,    10,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   727,   116,   124,   125,   727,   108,   109,   727,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,   230,   247,   248,  -291,   727,   264,
+   265,  1031,    43,   234,  -291,    36,   955,   234,    62,    63,
+  1029,   772,    64,  -291,    38,   251,   958,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   960,   962,
+   230,   105,    95,    97,    98,    99,   101,  1025,   964,   964,
+    96,   106,   234,   268,   971,  -248,   590,  -301,    89,  -276,
+   972,    93,   100,   102,  -301,   110,   111,   309,    85,    86,
+    87,    12,    78,  -301,   772,   975,    79,    80,   978,   980,
+   982,    83,   234,    81,    82,    84,    33,    34,    76,    77,
+   133,   134,   135,   136,   137,    88,    31,    30,   118,   117,
+   119,   120,   984,   763,    22,  1002,  1003,  1012,  1013,   666,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,  1023,   116,   124,   125,  1026,   108,   109,   846,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,  -300,   247,   248,  1032,   727,   264,
+   265,  -300,    43,  1042,   964,   313,  -617,   964,    62,    63,
+  -300,   964,    64,   772,    38,   251,  1049,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,  1051,  1053,
+  1055,   105,    95,    97,    98,    99,   101,  1055,   724,   727,
+    96,   106,  1013,   268,  -617,  -616,   234,   964,    89,  1076,
+  1055,    93,   100,   102,  1055,   110,   111,   309,    85,    86,
+    87,    12,    78,  1055,  1055,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   133,   134,   135,   136,   137,    88,    31,    30,   118,   117,
+   119,   120,   nil,  1006,    22,   613,   612,   611,   nil,   614,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   133,   134,   135,   136,   137,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,   313,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   234,   268,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,   313,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,   nil,   247,   248,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   268,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,   nil,  -642,  -642,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   267,   262,   263,   nil,  -642,  -642,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,  -642,  -642,  -642,  -642,   271,   272,
+   nil,   nil,  -642,  -642,   nil,   nil,   nil,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,  -642,  -642,  -642,  -642,   271,   272,
+   nil,   nil,  -642,  -642,   nil,   nil,   nil,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,     8,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,    10,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,  -642,  -642,  -642,  -642,   271,   272,
+   nil,   nil,  -642,  -642,   nil,   nil,   nil,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,  -642,  -642,  -642,  -642,   271,   272,
+   nil,   nil,  -642,  -642,   nil,   nil,   nil,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,  -642,  -642,  -642,  -642,   271,   272,
+   nil,   nil,  -642,  -642,   nil,   nil,   nil,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,  -642,  -642,  -642,  -642,   271,   272,
+   nil,   nil,  -642,  -642,   nil,   nil,   nil,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   nil,   nil,   262,   263,   nil,   nil,   nil,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   258,   259,   260,   261,   271,   272,
+   266,   nil,   262,   263,   nil,   nil,   nil,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   270,   269,   255,    23,   256,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   254,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   264,
+   265,   nil,    43,   nil,   nil,    36,   nil,   254,    62,    63,
+   nil,   nil,    64,   nil,    38,   251,   nil,   257,    48,   253,
+   252,   249,   250,   264,   265,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   251,
+    96,   106,   nil,   253,   252,   249,   250,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,   309,    85,    86,
+    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    49,   311,    13,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
+    49,    10,    13,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   616,
+    64,   613,   612,   611,   620,   614,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   623,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   618,  -433,    93,
+   100,   102,   nil,   110,   111,  -433,  -433,  -433,   631,   630,
+  -433,  -433,  -433,   616,  -433,   613,   612,   611,   620,   614,
+   nil,   nil,   nil,  -433,  -433,  -433,   nil,   nil,   nil,   623,
+   nil,   nil,   nil,   nil,  -433,  -433,   nil,  -433,  -433,  -433,
+  -433,  -433,   624,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   628,   627,   631,   630,   nil,  -433,  -433,  -433,  -433,  -433,
+  -433,  -433,  -433,  -433,  -433,  -433,  -433,  -433,  -433,   nil,
+   nil,  -433,  -433,  -433,   nil,   nil,  -433,   nil,   281,  -433,
+   nil,   nil,  -433,  -433,   nil,  -433,   624,  -433,   nil,  -433,
+   nil,  -433,  -433,  -433,  -433,  -433,  -433,  -433,   nil,  -433,
+  -433,  -433,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  -433,  -433,  -309,  -433,   nil,  -433,
+   nil,   nil,   nil,  -309,  -309,  -309,  -433,   nil,  -309,  -309,
+  -309,   616,  -309,   613,   612,   611,   620,   614,   nil,   nil,
+   nil,   nil,  -309,  -309,   nil,   nil,   nil,   623,   nil,   nil,
+   nil,   nil,  -309,  -309,   nil,  -309,  -309,  -309,  -309,  -309,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   618,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628,   627,
+   631,   630,   nil,  -309,  -309,  -309,  -309,  -309,  -309,  -309,
+  -309,  -309,  -309,  -309,  -309,  -309,  -309,   nil,   nil,  -309,
+  -309,  -309,   nil,   nil,  -309,   nil,   291,  -309,   nil,   nil,
+  -309,  -309,   nil,  -309,   624,  -309,   nil,  -309,   nil,  -309,
+  -309,  -309,  -309,  -309,  -309,  -309,   nil,  -309,   nil,  -309,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  -309,  -309,   nil,  -309,   nil,  -309,    85,    86,
+    87,   nil,    78,   nil,  -309,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   302,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   303,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   302,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   332,
+   nil,   nil,   nil,   nil,   nil,   616,   nil,   613,   612,   611,
+   620,   614,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,
+   nil,   623,   318,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   317,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   631,   630,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   624,    81,
+    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   332,   nil,
+   nil,   nil,   nil,   nil,   616,   nil,   613,   612,   611,   620,
+   614,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,
+   623,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   618,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   631,   630,   nil,    96,   106,   nil,   nil,
+   nil,   334,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   624,    81,    82,
+    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
+   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
+   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   616,    64,   613,   612,   611,   620,
+   614,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   623,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   618,  -292,    93,   100,   102,   nil,   110,   111,
+  -292,  -292,  -292,   631,   630,  -292,  -292,  -292,   616,  -292,
+   613,   612,   611,   620,   614,   nil,   nil,   nil,   nil,  -292,
+  -292,  -292,   nil,   nil,   623,   nil,   nil,   nil,   nil,  -292,
+  -292,   nil,  -292,  -292,  -292,  -292,  -292,   624,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   618,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   628,   627,   631,   630,   nil,
+  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,
+  -292,  -292,  -292,  -292,   nil,   nil,  -292,  -292,  -292,   nil,
+   nil,  -292,   nil,   234,  -292,   nil,   nil,  -292,  -292,   nil,
+  -292,   624,  -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,   nil,  -292,   nil,  -292,   nil,   nil,   nil,
+  -641,  -292,    85,    86,    87,    12,    78,  -641,  -641,  -641,
+    79,    80,  -641,  -641,  -641,    83,  -641,    81,    82,    84,
+    33,    34,    76,    77,   nil,  -641,  -641,  -641,   nil,    88,
+    31,    30,   118,   117,   119,   120,  -641,  -641,    22,  -641,
+  -641,  -641,  -641,  -641,    11,    49,   nil,    13,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,  -641,  -641,  -641,
+  -641,  -641,  -641,  -641,  -641,  -641,  -641,  -641,  -641,  -641,
+  -641,   nil,   nil,  -641,  -641,  -641,    43,   nil,  -641,    36,
+   281,  -641,    62,    63,  -641,  -641,    64,  -641,    38,  -641,
+   nil,  -641,    48,  -641,  -641,  -641,  -641,  -641,  -641,  -641,
+    23,  -641,  -641,  -641,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,  -641,  -641,   nil,  -641,
+   nil,  -641,    89,   nil,   nil,    93,   100,   102,  -641,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   130,   nil,   nil,   nil,   nil,   129,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,   326,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   332,   nil,   nil,   nil,   nil,   nil,   616,   nil,
+   613,   612,   611,   620,   614,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   362,   nil,   623,    36,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   618,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   631,   630,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   624,    81,    82,    84,   328,   329,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   nil,   nil,   122,   121,   123,   367,    60,   114,   113,
+   368,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
+   nil,   332,   nil,   nil,   nil,   nil,   nil,   616,   nil,   613,
+   612,   611,   620,   614,   nil,   nil,   nil,   nil,   374,   nil,
+   nil,   369,   nil,   623,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   631,   630,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   624,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   122,   121,   123,   367,    60,   114,   113,   368,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
+   332,   nil,   nil,   nil,   nil,   nil,   616,   nil,   613,   612,
+   611,   620,   614,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   369,   nil,   623,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   631,   630,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   624,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   418,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   nil,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   435,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   435,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   302,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   303,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   234,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
+   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
+   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
+   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
+   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   302,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   302,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   234,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   303,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
+   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
+   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,   326,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   332,   nil,   nil,   nil,   nil,   nil,   616,   nil,
+   613,   612,   611,   620,   614,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   322,   nil,   623,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   618,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   631,   630,   nil,
+    96,   106,   nil,   nil,   nil,   539,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   624,    81,    82,    84,   328,   329,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
+   nil,   332,   nil,   nil,   nil,   nil,   nil,   616,   nil,   613,
+   612,   611,   620,   614,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   322,   nil,   623,   318,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   631,   630,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   624,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   556,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   302,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   300,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   303,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   302,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   303,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   616,    64,   613,   612,   611,   620,   614,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   623,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   618,  -621,    93,   100,   102,   nil,   110,   111,  -621,
+  -621,  -621,   631,   630,  -621,  -621,  -621,   616,  -621,   613,
+   612,   611,   620,   614,   nil,   nil,   nil,  -621,  -621,  -621,
+  -621,   nil,   nil,   623,   nil,   nil,   nil,   nil,  -621,  -621,
+   nil,  -621,  -621,  -621,  -621,  -621,   624,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   628,   627,   631,   630,   nil,  -621,
+  -621,  -621,  -621,  -621,  -621,  -621,  -621,  -621,  -621,  -621,
+  -621,  -621,  -621,   nil,   nil,  -621,  -621,  -621,   nil,   nil,
+  -621,   nil,   nil,  -621,   nil,   nil,  -621,  -621,   nil,  -621,
+   624,  -621,   nil,  -621,   nil,  -621,  -621,  -621,  -621,  -621,
+  -621,  -621,   nil,  -621,  -621,  -621,   616,   nil,   613,   612,
+   611,   620,   614,   nil,   nil,   nil,   nil,   nil,  -621,  -621,
+  -621,  -621,   623,  -621,  -622,  -621,   nil,   nil,   nil,   nil,
+  -621,  -622,  -622,  -622,   nil,   nil,  -622,  -622,  -622,   nil,
+  -622,   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,  -622,
+  -622,  -622,  -622,   628,   627,   631,   630,   nil,   nil,   nil,
+  -622,  -622,   nil,  -622,  -622,  -622,  -622,  -622,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   624,
+   nil,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,
+  -622,  -622,  -622,  -622,  -622,   nil,   nil,  -622,  -622,  -622,
+   nil,   nil,  -622,   nil,   nil,  -622,   nil,   nil,  -622,  -622,
+   nil,  -622,   nil,  -622,   nil,  -622,   nil,  -622,  -622,  -622,
+  -622,  -622,  -622,  -622,   nil,  -622,  -622,  -622,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  -622,  -622,  -622,  -622,   nil,  -622,   nil,  -622,   nil,    85,
+    86,    87,  -622,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   302,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   300,   nil,   298,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   303,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,  -641,    93,
+   100,   102,   nil,   110,   111,  -641,  -641,  -641,   nil,   nil,
+  -641,  -641,  -641,   nil,  -641,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  -641,  -641,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  -641,  -641,   nil,  -641,  -641,  -641,
+  -641,  -641,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   510,
+   462,   nil,   nil,   511,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,  -641,   nil,   nil,   175,
+   176,   161,   162,  -641,   nil,   nil,   nil,   nil,   281,  -641,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+  -641,  -641,   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  -641,   nil,    85,    86,    87,  -641,
+    78,   nil,   170,   nil,    79,    80,  -641,   nil,   nil,    83,
+   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   702,   nil,   298,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   302,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,    12,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,    11,    49,   311,    13,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
+    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   418,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   318,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   302,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   300,   nil,   298,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   303,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,   326,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   322,   nil,   nil,   318,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   302,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   302,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   801,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   302,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   300,   nil,   298,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   303,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   302,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   702,   nil,   298,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   303,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   302,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   298,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
+   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
+   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   318,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,   326,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   322,   nil,   nil,   318,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   435,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   302,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   702,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   303,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   302,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   328,   329,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   865,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
+   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
+   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   328,   329,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   325,   331,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   325,   331,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   302,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   303,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   325,   331,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   328,   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   325,   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,
+   329,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,
+   331,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,   326,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   993,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   998,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   328,   329,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,   326,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,   nil,   nil,   332,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   986,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   328,   329,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   325,   331,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   302,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   303,
+    93,   100,   102,   nil,   110,   111,   188,   199,   189,   212,
+   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
+   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
+   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,   196,
+   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
+   181,   182,   178,   179,   180,   141,   143,   140,   nil,   142,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   105,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
+   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
+   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
+   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
+   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
+   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
+   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
+   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
+   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
+   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
+   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   188,   199,   189,   212,   185,   205,   195,   194,
+   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
+   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
+   214,   209,   385,   384,   386,   383,   184,   203,   202,   nil,
+   nil,   nil,   nil,   nil,   183,   190,   181,   182,   380,   381,
+   382,   378,   143,   114,   113,   379,   nil,   116,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   390,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,
+   205,   195,   194,   215,   216,   210,   193,   192,   187,   213,
+   217,   218,   197,   186,   200,   204,   206,   198,   191,   nil,
+   nil,   nil,   207,   214,   209,   208,   201,   211,   196,   184,
+   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,
+   182,   178,   179,   180,   141,   143,   415,   414,   142,   nil,
+   416,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,
+   189,   212,   185,   205,   195,   194,   215,   216,   210,   193,
+   192,   187,   213,   217,   218,   197,   186,   200,   204,   206,
+   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,
+   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,
+   183,   190,   181,   182,   178,   179,   180,   141,   143,   nil,
+   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   188,   199,   189,   212,   185,   205,   195,   194,   215,
+   216,   210,   193,   192,   187,   213,   217,   218,   197,   186,
+   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,
+   209,   208,   201,   211,   196,   184,   203,   202,   nil,   nil,
+   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,   180,
+   141,   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,
+   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
+   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
+   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
+   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,   205,
+   195,   194,   215,   216,   210,   193,   192,   187,   213,   217,
+   218,   197,   186,   200,   204,   206,   198,   191,   nil,   nil,
+   nil,   207,   214,   209,   208,   201,   211,   196,   184,   203,
+   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,
+   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   458,   462,   nil,   nil,   459,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   465,
+   469,   nil,   nil,   464,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   683,   462,   nil,
+   nil,   684,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   685,   469,   nil,   nil,   686,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   712,   462,   nil,   nil,   713,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   715,   469,   nil,   nil,   716,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   683,
+   462,   nil,   nil,   684,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   685,   469,   nil,
+   nil,   686,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   749,   462,   nil,   nil,   750,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   751,   469,   nil,   nil,   752,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   754,   469,   nil,   nil,   755,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   510,
+   462,   nil,   nil,   511,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   803,   462,   nil,
+   nil,   804,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   806,   469,   nil,   nil,   805,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   616,   177,   613,
+   612,   611,   620,   614,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   623,   nil,   nil,   nil,   nil,   170,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   618,  1059,   469,   nil,   nil,
+  1058,   nil,   nil,   nil,   628,   627,   631,   630,   nil,   173,
+   174,   nil,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,
+   624,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
+   nil,   nil,   nil,   nil,  1062,   462,   nil,   nil,  1063,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
+   nil,   nil,  1064,   469,   nil,   nil,  1065,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   616,   177,   613,   612,   611,   620,
+   614,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   623,   nil,   nil,   nil,   nil,   170,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   628,   627,   631,   630,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   624 ]
+
+racc_action_check = [
+   112,   351,   352,    65,   934,   866,   237,   112,   112,   112,
+    22,   939,   112,   112,   112,     1,   112,   501,   406,   409,
+   474,   474,   722,   722,   112,   707,   112,   112,   112,   359,
+   360,   363,   583,  1062,     3,  1063,   112,   112,   707,   112,
+   112,   112,   112,   112,    27,    13,    22,  1074,   749,   501,
+   573,    27,   750,   501,   501,   501,   501,    15,   767,   867,
+   899,   237,   899,   899,   899,  1064,   899,   112,   112,   112,
+   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
+   112,   406,   409,   112,   112,   112,    16,   112,   112,   692,
+    65,   112,   766,   766,   112,   112,    18,   112,   899,   112,
+    29,   112,   327,   112,   112,   112,   112,   112,   112,   112,
+   474,   112,   722,   112,    25,   351,   352,   751,   934,   866,
+   351,   352,   866,   934,   866,   939,   112,   112,   112,   112,
+   939,   112,   115,   112,   359,   360,   363,   583,   112,   115,
+   115,   115,   112,  1064,   115,   115,   115,  1062,   115,  1063,
+   573,   712,  1062,   749,  1063,   573,   115,   750,   115,   115,
+   115,  1074,   752,   767,   867,    29,  1074,   327,   115,   115,
+   238,   115,   115,   115,   115,   115,   692,   713,    19,  1064,
+   690,   378,   766,   751,  1064,    19,   723,    29,   378,   327,
+   836,   379,   723,   397,    19,    40,   397,   367,   379,   115,
+   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
+   115,   115,   115,    92,   690,   115,   115,   115,   712,   115,
+   115,    92,   751,   115,   836,   238,   115,   115,   752,   115,
+   841,   115,   644,   115,    20,   115,   115,   115,   115,   115,
+   115,   115,   240,   115,   713,   115,    44,    44,   332,   332,
+   367,   647,    43,   712,   397,   397,   712,   367,   115,   115,
+   115,   115,   367,   115,   464,   115,   367,   752,    41,   712,
+   115,   464,   464,   464,   115,   769,    20,   464,   464,   713,
+   464,   380,   713,   841,   367,   999,   769,   999,   380,    20,
+   841,   381,   368,   644,   644,   713,    49,   240,   381,   841,
+   464,   464,   644,   464,   464,   464,   464,   464,   382,   442,
+    41,   383,   647,   647,    99,   382,   100,   841,   383,   769,
+   769,   647,   393,    41,    44,    44,   332,   332,   101,   715,
+   102,   464,   464,   464,   464,   464,   464,   464,   464,   464,
+   464,   464,   464,   464,   464,   368,    42,   464,   464,   464,
+   138,   464,   368,   769,   754,   464,   480,   368,   464,   219,
+   683,   368,   684,   464,   442,   464,   395,   464,   464,   464,
+   464,   464,   464,   464,   369,   464,   336,   464,   369,   368,
+   384,   972,   715,   393,   393,   393,   400,   384,    42,   715,
+   464,   464,   972,   464,   715,   464,   465,   803,   715,   403,
+   458,    42,   464,   465,   465,   465,   464,   754,   486,   465,
+   465,   480,   465,   385,   754,   683,   715,   684,   336,   754,
+   385,   465,   239,   754,   241,   972,   972,   395,   395,   395,
+   411,   336,   465,   465,   804,   465,   465,   465,   465,   465,
+   486,   754,   458,   459,   486,   486,   386,   400,   400,   400,
+   388,   825,   803,   386,   242,   458,   910,   388,   246,   972,
+   403,   403,   403,   465,   465,   465,   465,   465,   465,   465,
+   465,   465,   465,   465,   465,   465,   465,   667,   280,   465,
+   465,   465,   295,   465,   296,   459,   299,   465,   312,   804,
+   465,   411,   411,   411,   314,   465,   315,   465,   459,   465,
+   465,   465,   465,   465,   465,   465,   825,   465,   465,   465,
+   391,   910,   391,   391,   391,   391,   391,    50,   562,   667,
+   316,   562,   465,   465,    50,   465,   391,   465,   685,    17,
+    17,   322,   667,    50,   465,   685,   685,   685,   465,   325,
+   685,   685,   685,   563,   685,   140,   563,   326,   391,   391,
+   140,   140,   502,   685,   685,   685,   685,   391,   391,   391,
+   391,     5,   350,   350,   685,   685,     5,   685,   685,   685,
+   685,   685,  1012,   331,  1012,  1012,  1012,   567,  1012,   618,
+   567,   618,   618,   618,   502,   618,   333,   306,   502,   502,
+   502,   502,   306,   391,   337,   685,   685,   685,   685,   685,
+   685,   685,   685,   685,   685,   685,   685,   685,   685,   340,
+  1012,   685,   685,   685,   236,   685,   685,   618,   346,   685,
+   357,   236,   685,   685,   358,   685,   618,   685,   362,   685,
+   236,   685,   685,   685,   685,   685,   685,   685,   356,   685,
+   685,   685,   602,   356,   602,   602,   602,   602,   602,    47,
+    47,   594,   594,   364,   685,   685,   685,   685,   602,   685,
+   686,   685,   854,   737,   737,   854,   685,   686,   686,   686,
+   685,   373,   686,   686,   686,   781,   686,   781,   781,   781,
+   602,   781,   772,   772,    47,    47,   686,   686,   686,   602,
+   602,   602,   602,  1033,  1033,   399,   686,   686,   319,   686,
+   686,   686,   686,   686,  1013,   319,  1013,  1013,  1013,  1004,
+  1013,   760,  1004,   781,   319,   898,   760,   898,   898,   898,
+   402,   898,   781,   405,   408,   602,   431,   686,   686,   686,
+   686,   686,   686,   686,   686,   686,   686,   686,   686,   686,
+   686,   871,  1013,   686,   686,   686,   871,   686,   686,   434,
+   436,   686,   439,   898,   686,   686,   453,   686,   456,   686,
+   457,   686,   898,   686,   686,   686,   686,   686,   686,   686,
+   876,   686,   466,   686,   763,   876,   763,   763,   763,   763,
+   763,   487,   476,   488,   489,   490,   686,   686,   686,   686,
+   763,   686,   805,   686,   491,   507,   514,   518,   686,   805,
+   805,   805,   686,   320,   321,   805,   805,   533,   805,   506,
+   320,   321,   763,   487,   534,   535,   538,   487,   487,   320,
+   321,   763,   763,   763,   763,   506,   506,   540,   805,   805,
+   545,   805,   805,   805,   805,   805,     9,     9,     9,     9,
+     9,   506,   323,   506,   548,   506,   506,   506,   506,   323,
+   557,   506,   558,   506,   559,   564,   565,   763,   323,   805,
+   805,   805,   805,   805,   805,   805,   805,   805,   805,   805,
+   805,   805,   805,   338,   361,   805,   805,   805,   371,   805,
+   338,   361,   568,   805,   570,   371,   805,   574,   575,   338,
+   361,   805,   576,   805,   371,   805,   805,   805,   805,   805,
+   805,   805,   577,   805,   764,   805,   764,   764,   764,   764,
+   764,   785,   596,   785,   785,   785,   604,   785,   805,   805,
+   764,   805,   605,   805,   806,   607,   608,   609,   441,   544,
+   805,   806,   806,   806,   805,   441,   544,   806,   806,   554,
+   806,   586,   764,   985,   441,   544,   617,   625,   586,   806,
+   985,   764,   764,   764,   764,   554,   554,   586,   629,   985,
+   806,   806,   632,   806,   806,   806,   806,   806,   651,   654,
+   660,   554,   716,   554,   668,   554,   554,   554,   554,   716,
+   673,   554,   679,   554,   716,   687,   688,   764,   716,   691,
+   695,   806,   806,   806,   806,   806,   806,   806,   806,   806,
+   806,   806,   806,   806,   806,   755,   697,   806,   806,   806,
+   699,   806,   755,   701,   709,   806,   711,   755,   806,   714,
+   717,   755,   492,   806,   718,   806,   721,   806,   806,   806,
+   806,   806,   806,   806,   739,   806,   806,   806,   492,   492,
+   955,   990,   955,   955,   955,   745,   955,   748,   990,   757,
+   806,   806,   761,   806,   492,   806,   492,   990,   492,   492,
+   492,   492,   806,   768,   783,   784,   806,     2,     2,     2,
+     2,     2,     2,   786,   798,   991,     2,     2,   800,   802,
+   810,     2,   991,     2,     2,     2,     2,     2,     2,     2,
+   834,   991,   840,   850,   851,     2,     2,     2,     2,     2,
+     2,     2,   791,   791,     2,   855,   791,   791,   791,   446,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,   861,     2,     2,     2,   868,     2,     2,   870,
+     2,     2,     2,   446,   446,   446,   446,   446,   446,   446,
+   446,   446,   446,   446,   992,   446,   446,   994,   874,   446,
+   446,   992,     2,   875,   994,     2,   882,   883,     2,     2,
+   992,   884,     2,   994,     2,   446,   888,   446,     2,   446,
+   446,   446,   446,   446,   446,   446,     2,   446,   889,   891,
+  1024,     2,     2,     2,     2,     2,     2,  1024,   892,   894,
+     2,     2,   897,   446,   907,   446,  1024,  1032,     2,   909,
+   916,     2,     2,     2,  1032,     2,     2,    36,    36,    36,
+    36,    36,    36,  1032,   917,   919,    36,    36,   920,   921,
+   923,    36,   924,    36,    36,    36,    36,    36,    36,    36,
+   310,   310,   310,   310,   310,    36,    36,    36,    36,    36,
+    36,    36,   925,   952,    36,   953,   954,   969,   970,   452,
+    36,    36,    36,    36,    36,    36,    36,    36,    36,    36,
+    36,    36,   983,    36,    36,    36,   986,    36,    36,   988,
+    36,    36,    36,   452,   452,   452,   452,   452,   452,   452,
+   452,   452,   452,   452,  1065,   452,   452,   993,  1000,   452,
+   452,  1065,    36,  1008,  1009,    36,  1065,  1010,    36,    36,
+  1065,  1011,    36,  1014,    36,   452,  1017,   452,    36,   452,
+   452,   452,   452,   452,   452,   452,    36,   452,  1018,  1019,
+  1020,    36,    36,    36,    36,    36,    36,  1022,  1028,  1039,
+    36,    36,  1047,   452,  1058,  1059,  1061,  1069,    36,  1070,
+  1071,    36,    36,    36,  1072,    36,    36,   221,   221,   221,
+   221,   221,   221,  1073,  1081,   nil,   221,   221,   nil,   nil,
+   nil,   221,   nil,   221,   221,   221,   221,   221,   221,   221,
+   345,   345,   345,   345,   345,   221,   221,   221,   221,   221,
+   221,   221,   nil,  1041,   221,  1041,  1041,  1041,   nil,  1041,
+   221,   221,   221,   221,   221,   221,   221,   221,   221,   221,
+   221,   221,   nil,   221,   221,   221,   nil,   221,   221,   nil,
+   221,   221,   221,    24,    24,    24,    24,    24,    24,    24,
+    24,    24,    24,    24,   nil,    24,    24,   nil,   nil,    24,
+    24,   nil,   221,   nil,   nil,   221,   nil,   nil,   221,   221,
+   nil,   nil,   221,   nil,   221,    24,   nil,    24,   221,    24,
+    24,    24,    24,    24,    24,    24,   221,    24,   nil,   nil,
+   nil,   221,   221,   221,   221,   221,   221,   nil,   nil,   nil,
+   221,   221,   nil,    24,   nil,   nil,   nil,   nil,   221,   nil,
+   nil,   221,   221,   221,   nil,   221,   221,   245,   245,   245,
+   245,   245,   245,   nil,   nil,   nil,   245,   245,   nil,   nil,
+   nil,   245,   nil,   245,   245,   245,   245,   245,   245,   245,
+   532,   532,   532,   532,   532,   245,   245,   245,   245,   245,
+   245,   245,   nil,   nil,   245,   nil,   nil,   nil,   nil,   nil,
+   245,   245,   245,   245,   245,   245,   245,   245,   245,   245,
+   245,   245,   nil,   245,   245,   245,   nil,   245,   245,   nil,
+   245,   245,   245,   293,   293,   293,   293,   293,   293,   293,
+   293,   293,   293,   293,   nil,   293,   293,   nil,   nil,   293,
+   293,   nil,   245,   nil,   nil,   245,   nil,   nil,   245,   245,
+   nil,   nil,   245,   nil,   245,   293,   nil,   293,   245,   293,
+   293,   293,   293,   293,   293,   293,   245,   293,   nil,   nil,
+   nil,   245,   245,   245,   245,   245,   245,   nil,   nil,   nil,
+   245,   245,   nil,   293,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   245,   245,   245,   nil,   245,   245,   313,   313,   313,
+   313,   313,   313,   nil,   nil,   nil,   313,   313,   nil,   nil,
+   nil,   313,   nil,   313,   313,   313,   313,   313,   313,   313,
+   nil,   nil,   nil,   nil,   nil,   313,   313,   313,   313,   313,
+   313,   313,   nil,   nil,   313,   nil,   nil,   nil,   nil,   nil,
+   313,   313,   313,   313,   313,   313,   313,   313,   313,   313,
+   313,   313,   nil,   313,   313,   313,   nil,   313,   313,   nil,
+   313,   313,   313,   505,   505,   505,   505,   505,   505,   505,
+   505,   505,   505,   505,   nil,   505,   505,   nil,   nil,   505,
+   505,   nil,   313,   nil,   nil,   313,   nil,   nil,   313,   313,
+   nil,   nil,   313,   nil,   313,   505,   nil,   505,   313,   505,
+   505,   505,   505,   505,   505,   505,   313,   505,   nil,   nil,
+   nil,   313,   313,   313,   313,   313,   313,   nil,   nil,   nil,
+   313,   313,   505,   505,   nil,   nil,   nil,   nil,   313,   nil,
+   nil,   313,   313,   313,   nil,   313,   313,   318,   318,   318,
+   318,   318,   318,   nil,   nil,   nil,   318,   318,   nil,   nil,
+   nil,   318,   nil,   318,   318,   318,   318,   318,   318,   318,
+   nil,   nil,   nil,   nil,   nil,   318,   318,   318,   318,   318,
+   318,   318,   nil,   nil,   318,   nil,   nil,   nil,   nil,   nil,
+   318,   318,   318,   318,   318,   318,   318,   318,   318,   318,
+   318,   318,   nil,   318,   318,   318,   nil,   318,   318,   nil,
+   318,   318,   318,   555,   555,   555,   555,   555,   555,   555,
+   555,   555,   555,   555,   nil,   555,   555,   nil,   nil,   555,
+   555,   nil,   318,   nil,   nil,   318,   nil,   nil,   318,   318,
+   nil,   nil,   318,   nil,   318,   555,   nil,   555,   318,   555,
+   555,   555,   555,   555,   555,   555,   318,   555,   nil,   nil,
+   nil,   318,   318,   318,   318,   318,   318,   nil,   nil,   nil,
+   318,   318,   nil,   555,   nil,   nil,   nil,   nil,   318,   nil,
+   nil,   318,   318,   318,   nil,   318,   318,   344,   344,   344,
+   344,   344,   344,   nil,   nil,   nil,   344,   344,   nil,   nil,
+   nil,   344,   nil,   344,   344,   344,   344,   344,   344,   344,
+   nil,   nil,   nil,   nil,   nil,   344,   344,   344,   344,   344,
+   344,   344,   nil,   nil,   344,   nil,   nil,   nil,   nil,   nil,
+   344,   344,   344,   344,   344,   344,   344,   344,   344,   344,
+   344,   344,   nil,   344,   344,   344,   nil,   344,   344,   nil,
+   344,   344,   344,   807,   807,   807,   807,   807,   807,   807,
+   807,   807,   807,   807,   nil,   807,   807,   nil,   nil,   807,
+   807,   nil,   344,   nil,   nil,   344,   nil,   nil,   344,   344,
+   nil,   nil,   344,   nil,   344,   807,   nil,   807,   344,   807,
+   807,   807,   807,   807,   807,   807,   344,   807,   nil,   nil,
+   nil,   344,   344,   344,   344,   344,   344,   nil,   nil,   nil,
+   344,   344,   nil,   807,   nil,   nil,   nil,   nil,   344,   nil,
+   nil,   344,   344,   344,   nil,   344,   344,   354,   354,   354,
+   354,   354,   354,   nil,   nil,   nil,   354,   354,   nil,   nil,
+   nil,   354,   nil,   354,   354,   354,   354,   354,   354,   354,
+   nil,   nil,   nil,   nil,   nil,   354,   354,   354,   354,   354,
+   354,   354,   nil,   nil,   354,   nil,   nil,   nil,   nil,   nil,
+   354,   354,   354,   354,   354,   354,   354,   354,   354,   354,
+   354,   354,   nil,   354,   354,   354,   nil,   354,   354,   nil,
+   354,   354,   354,   915,   915,   915,   915,   915,   915,   915,
+   915,   915,   915,   915,   nil,   915,   915,   nil,   nil,   915,
+   915,   nil,   354,   nil,   nil,   354,   nil,   nil,   354,   354,
+   nil,   nil,   354,   nil,   354,   915,   nil,   915,   354,   915,
+   915,   915,   915,   915,   915,   915,   354,   915,   nil,   nil,
+   nil,   354,   354,   354,   354,   354,   354,   nil,   nil,   nil,
+   354,   354,   nil,   915,   nil,   nil,   nil,   nil,   354,   nil,
+   nil,   354,   354,   354,   nil,   354,   354,   355,   355,   355,
+   355,   355,   355,   nil,   nil,   nil,   355,   355,   nil,   nil,
+   nil,   355,   nil,   355,   355,   355,   355,   355,   355,   355,
+   nil,   nil,   nil,   nil,   nil,   355,   355,   355,   355,   355,
+   355,   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,   nil,
+   355,   355,   355,   355,   355,   355,   355,   355,   355,   355,
+   355,   355,   nil,   355,   355,   355,   nil,   355,   355,   nil,
+   355,   355,   355,   484,   484,   484,   484,   484,   484,   484,
+   484,   484,   484,   484,   nil,   484,   484,   nil,   nil,   484,
+   484,   nil,   355,   nil,   nil,   355,   nil,   nil,   355,   355,
+   nil,   nil,   355,   nil,   355,   484,   nil,   484,   355,   484,
+   484,   484,   484,   484,   484,   484,   355,   484,   nil,   nil,
+   nil,   355,   355,   355,   355,   355,   355,   nil,   nil,   nil,
+   355,   355,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,
+   nil,   355,   355,   355,   nil,   355,   355,   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,   485,   485,   485,   485,   485,   485,   485,
+   485,   485,   485,   485,   nil,   485,   485,   nil,   nil,   485,
+   485,   nil,   569,   nil,   nil,   569,   nil,   nil,   569,   569,
+   nil,   nil,   569,   nil,   569,   485,   nil,   485,   569,   485,
+   485,   485,   485,   485,   485,   485,   569,   485,   nil,   nil,
+   nil,   569,   569,   569,   569,   569,   569,   nil,   nil,   nil,
+   569,   569,   nil,   nil,   nil,   nil,   nil,   nil,   569,   nil,
+   nil,   569,   569,   569,   nil,   569,   569,   572,   572,   572,
+   572,   572,   572,   nil,   nil,   nil,   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,   572,   572,   572,   572,   572,   572,   572,   572,
+   572,   572,   nil,   572,   572,   572,   nil,   572,   572,   nil,
+   572,   572,   572,   495,   495,   495,   495,   495,   495,   495,
+   nil,   nil,   495,   495,   nil,   nil,   nil,   nil,   nil,   495,
+   495,   nil,   572,   nil,   nil,   572,   nil,   nil,   572,   572,
+   nil,   nil,   572,   nil,   572,   495,   nil,   495,   572,   495,
+   495,   495,   495,   495,   495,   495,   572,   495,   nil,   nil,
+   nil,   572,   572,   572,   572,   572,   572,   nil,   nil,   nil,
+   572,   572,   nil,   nil,   nil,   nil,   nil,   nil,   572,   nil,
+   nil,   572,   572,   572,   nil,   572,   572,   595,   595,   595,
+   595,   595,   595,   nil,   nil,   nil,   595,   595,   nil,   nil,
+   nil,   595,   nil,   595,   595,   595,   595,   595,   595,   595,
+   nil,   nil,   nil,   nil,   nil,   595,   595,   595,   595,   595,
+   595,   595,   nil,   nil,   595,   nil,   nil,   nil,   nil,   nil,
+   595,   595,   595,   595,   595,   595,   595,   595,   595,   595,
+   595,   595,   nil,   595,   595,   595,   nil,   595,   595,   nil,
+   595,   595,   595,   496,   496,   496,   496,   496,   496,   496,
+   nil,   nil,   496,   496,   nil,   nil,   nil,   nil,   nil,   496,
+   496,   nil,   595,   nil,   nil,   595,   nil,   nil,   595,   595,
+   nil,   nil,   595,   nil,   595,   496,   nil,   496,   595,   496,
+   496,   496,   496,   496,   496,   496,   595,   496,   nil,   nil,
+   nil,   595,   595,   595,   595,   595,   595,   nil,   nil,   nil,
+   595,   595,   nil,   nil,   nil,   nil,   nil,   nil,   595,   nil,
+   nil,   595,   595,   595,   nil,   595,   595,   656,   656,   656,
+   656,   656,   656,   nil,   nil,   nil,   656,   656,   nil,   nil,
+   nil,   656,   nil,   656,   656,   656,   656,   656,   656,   656,
+   nil,   nil,   nil,   nil,   nil,   656,   656,   656,   656,   656,
+   656,   656,   nil,   nil,   656,   nil,   nil,   nil,   nil,   nil,
+   656,   656,   656,   656,   656,   656,   656,   656,   656,   656,
+   656,   656,   nil,   656,   656,   656,   nil,   656,   656,   nil,
+   656,   656,   656,   497,   497,   497,   497,   497,   497,   497,
+   nil,   nil,   497,   497,   nil,   nil,   nil,   nil,   nil,   497,
+   497,   nil,   656,   nil,   nil,   656,   nil,   nil,   656,   656,
+   nil,   nil,   656,   nil,   656,   497,   nil,   497,   656,   497,
+   497,   497,   497,   497,   497,   497,   656,   497,   nil,   nil,
+   nil,   656,   656,   656,   656,   656,   656,   nil,   nil,   nil,
+   656,   656,   nil,   nil,   nil,   nil,   nil,   nil,   656,   nil,
+   nil,   656,   656,   656,   nil,   656,   656,   753,   753,   753,
+   753,   753,   753,   nil,   nil,   nil,   753,   753,   nil,   nil,
+   nil,   753,   nil,   753,   753,   753,   753,   753,   753,   753,
+   nil,   nil,   nil,   nil,   nil,   753,   753,   753,   753,   753,
+   753,   753,   nil,   nil,   753,   nil,   nil,   nil,   nil,   nil,
+   753,   753,   753,   753,   753,   753,   753,   753,   753,   753,
+   753,   753,   nil,   753,   753,   753,   nil,   753,   753,   nil,
+   753,   753,   753,   498,   498,   498,   498,   498,   498,   498,
+   nil,   nil,   498,   498,   nil,   nil,   nil,   nil,   nil,   498,
+   498,   nil,   753,   nil,   nil,   753,   nil,   nil,   753,   753,
+   nil,   nil,   753,   nil,   753,   498,   nil,   498,   753,   498,
+   498,   498,   498,   498,   498,   498,   753,   498,   nil,   nil,
+   nil,   753,   753,   753,   753,   753,   753,   nil,   nil,   nil,
+   753,   753,   nil,   nil,   nil,   nil,   nil,   nil,   753,   nil,
+   nil,   753,   753,   753,   nil,   753,   753,   758,   758,   758,
+   758,   758,   758,   nil,   nil,   nil,   758,   758,   nil,   nil,
+   nil,   758,   nil,   758,   758,   758,   758,   758,   758,   758,
+   nil,   nil,   nil,   nil,   nil,   758,   758,   758,   758,   758,
+   758,   758,   nil,   nil,   758,   nil,   nil,   nil,   nil,   nil,
+   758,   758,   758,   758,   758,   758,   758,   758,   758,   758,
+   758,   758,   nil,   758,   758,   758,   nil,   758,   758,   nil,
+   758,   758,   758,   499,   499,   499,   499,   499,   499,   499,
+   nil,   nil,   499,   499,   nil,   nil,   nil,   nil,   nil,   499,
+   499,   nil,   758,   nil,   nil,   758,   nil,   nil,   758,   758,
+   nil,   nil,   758,   nil,   758,   499,   nil,   499,   758,   499,
+   499,   499,   499,   499,   499,   499,   758,   499,   nil,   nil,
+   nil,   758,   758,   758,   758,   758,   758,   nil,   nil,   nil,
+   758,   758,   nil,   nil,   nil,   nil,   nil,   nil,   758,   nil,
+   nil,   758,   758,   758,   nil,   758,   758,   762,   762,   762,
+   762,   762,   762,   nil,   nil,   nil,   762,   762,   nil,   nil,
+   nil,   762,   nil,   762,   762,   762,   762,   762,   762,   762,
+   nil,   nil,   nil,   nil,   nil,   762,   762,   762,   762,   762,
+   762,   762,   nil,   nil,   762,   nil,   nil,   nil,   nil,   nil,
+   762,   762,   762,   762,   762,   762,   762,   762,   762,   762,
+   762,   762,   nil,   762,   762,   762,   nil,   762,   762,   nil,
+   762,   762,   762,   500,   500,   500,   500,   500,   500,   500,
+   nil,   nil,   500,   500,   nil,   nil,   nil,   nil,   nil,   500,
+   500,   nil,   762,   nil,   nil,   762,   nil,   nil,   762,   762,
+   nil,   nil,   762,   nil,   762,   500,   nil,   500,   762,   500,
+   500,   500,   500,   500,   500,   500,   762,   500,   nil,   nil,
+   nil,   762,   762,   762,   762,   762,   762,   nil,   nil,   nil,
+   762,   762,   nil,   nil,   nil,   nil,   nil,   nil,   762,   nil,
+   nil,   762,   762,   762,   nil,   762,   762,   792,   792,   792,
+   792,   792,   792,   nil,   nil,   nil,   792,   792,   nil,   nil,
+   nil,   792,   nil,   792,   792,   792,   792,   792,   792,   792,
+   nil,   nil,   nil,   nil,   nil,   792,   792,   792,   792,   792,
+   792,   792,   nil,   nil,   792,   nil,   nil,   nil,   nil,   nil,
+   792,   792,   792,   792,   792,   792,   792,   792,   792,   792,
+   792,   792,   nil,   792,   792,   792,   nil,   792,   792,   nil,
+   792,   792,   792,   503,   503,   503,   503,   503,   503,   503,
+   nil,   nil,   503,   503,   nil,   nil,   nil,   nil,   nil,   503,
+   503,   nil,   792,   nil,   nil,   792,   nil,   nil,   792,   792,
+   nil,   nil,   792,   nil,   792,   503,   nil,   503,   792,   503,
+   503,   503,   503,   503,   503,   503,   792,   503,   nil,   nil,
+   nil,   792,   792,   792,   792,   792,   792,   nil,   nil,   nil,
+   792,   792,   nil,   nil,   nil,   nil,   nil,   nil,   792,   nil,
+   nil,   792,   792,   792,   nil,   792,   792,   831,   831,   831,
+   831,   831,   831,   nil,   nil,   nil,   831,   831,   nil,   nil,
+   nil,   831,   nil,   831,   831,   831,   831,   831,   831,   831,
+   nil,   nil,   nil,   nil,   nil,   831,   831,   831,   831,   831,
+   831,   831,   nil,   nil,   831,   nil,   nil,   nil,   nil,   nil,
+   831,   831,   831,   831,   831,   831,   831,   831,   831,   831,
+   831,   831,   nil,   831,   831,   831,   nil,   831,   831,   nil,
+   831,   831,   831,   504,   504,   504,   504,   504,   504,   504,
+   504,   nil,   504,   504,   nil,   nil,   nil,   nil,   nil,   504,
+   504,   nil,   831,   nil,   nil,   831,   nil,   nil,   831,   831,
+   nil,   nil,   831,   nil,   831,   504,   nil,   504,   831,   504,
+   504,   504,   504,   504,   504,   504,   831,   504,   nil,   nil,
+   nil,   831,   831,   831,   831,   831,   831,   nil,   nil,   nil,
+   831,   831,   nil,   nil,   nil,   nil,   nil,   nil,   831,   nil,
+   nil,   831,   831,   831,   nil,   831,   831,   848,   848,   848,
+   848,   848,   848,   nil,   nil,   nil,   848,   848,   nil,   nil,
+   nil,   848,   nil,   848,   848,   848,   848,   848,   848,   848,
+   nil,   nil,   nil,   nil,   nil,   848,   848,   848,   848,   848,
+   848,   848,   nil,   nil,   848,   nil,   nil,   nil,   nil,   nil,
+   848,   848,   848,   848,   848,   848,   848,   848,   848,   848,
+   848,   848,   nil,   848,   848,   848,   nil,   848,   848,   nil,
+   848,   848,   848,   493,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   493,
+   493,   nil,   848,   nil,   nil,   848,   nil,   494,   848,   848,
+   nil,   nil,   848,   nil,   848,   493,   nil,   493,   848,   493,
+   493,   493,   493,   494,   494,   nil,   848,   nil,   nil,   nil,
+   nil,   848,   848,   848,   848,   848,   848,   nil,   nil,   494,
+   848,   848,   nil,   494,   494,   494,   494,   nil,   848,   nil,
+   nil,   848,   848,   848,   nil,   848,   848,   860,   860,   860,
+   860,   860,   860,   nil,   nil,   nil,   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,
+   860,   860,   860,   860,   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,   860,   nil,   nil,   nil,   860,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   860,   nil,   nil,   nil,
+   nil,   860,   860,   860,   860,   860,   860,   nil,   nil,   nil,
+   860,   860,   nil,   nil,   nil,   nil,   nil,   nil,   860,   nil,
+   nil,   860,   860,   860,   nil,   860,   860,   880,   880,   880,
+   880,   880,   880,   nil,   nil,   nil,   880,   880,   nil,   nil,
+   nil,   880,   nil,   880,   880,   880,   880,   880,   880,   880,
+   nil,   nil,   nil,   nil,   nil,   880,   880,   880,   880,   880,
+   880,   880,   nil,   nil,   880,   nil,   nil,   nil,   nil,   nil,
+   880,   880,   880,   880,   880,   880,   880,   880,   880,   880,
+   880,   880,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   880,   nil,
+   nil,   880,   880,   880,   nil,   880,   880,   881,   881,   881,
+   881,   881,   881,   nil,   nil,   nil,   881,   881,   nil,   nil,
+   nil,   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,
+   881,   881,   881,   881,   881,   881,   881,   881,   881,   881,
+   881,   881,   nil,   881,   881,   881,   nil,   881,   881,   nil,
+   881,   881,   881,   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,   881,
+   nil,   nil,   881,   nil,   881,   nil,   nil,   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,   881,   881,   nil,   881,   881,   931,   931,   931,
+   931,   931,   931,   nil,   nil,   nil,   931,   931,   nil,   nil,
+   nil,   931,   nil,   931,   931,   931,   931,   931,   931,   931,
+   nil,   nil,   nil,   nil,   nil,   931,   931,   931,   931,   931,
+   931,   931,   nil,   nil,   931,   nil,   nil,   nil,   nil,   nil,
+   931,   931,   931,   931,   931,   931,   931,   931,   931,   931,
+   931,   931,   nil,   931,   931,   931,   nil,   931,   931,   nil,
+   931,   931,   931,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   931,   nil,   nil,   931,   nil,   nil,   931,   931,
+   nil,   nil,   931,   nil,   931,   nil,   nil,   nil,   931,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   931,   nil,   nil,   nil,
+   nil,   931,   931,   931,   931,   931,   931,   nil,   nil,   nil,
+   931,   931,   nil,   nil,   nil,   nil,   nil,   nil,   931,   nil,
+   nil,   931,   931,   931,   nil,   931,   931,   932,   932,   932,
+   932,   932,   932,   nil,   nil,   nil,   932,   932,   nil,   nil,
+   nil,   932,   nil,   932,   932,   932,   932,   932,   932,   932,
+   nil,   nil,   nil,   nil,   nil,   932,   932,   932,   932,   932,
+   932,   932,   nil,   nil,   932,   nil,   nil,   nil,   nil,   nil,
+   932,   932,   932,   932,   932,   932,   932,   932,   932,   932,
+   932,   932,   nil,   932,   932,   932,   nil,   932,   932,   nil,
+   932,   932,   932,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   932,   nil,   nil,   932,   nil,   nil,   932,   932,
+   nil,   nil,   932,   nil,   932,   nil,   nil,   nil,   932,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   932,   nil,   nil,   nil,
+   nil,   932,   932,   932,   932,   932,   932,   nil,   nil,   nil,
+   932,   932,   nil,   nil,   nil,   nil,   nil,   nil,   932,   nil,
+   nil,   932,   932,   932,   nil,   932,   932,   944,   944,   944,
+   944,   944,   944,   nil,   nil,   nil,   944,   944,   nil,   nil,
+   nil,   944,   nil,   944,   944,   944,   944,   944,   944,   944,
+   nil,   nil,   nil,   nil,   nil,   944,   944,   944,   944,   944,
+   944,   944,   nil,   nil,   944,   nil,   nil,   nil,   nil,   nil,
+   944,   944,   944,   944,   944,   944,   944,   944,   944,   944,
+   944,   944,   nil,   944,   944,   944,   nil,   944,   944,   nil,
+   944,   944,   944,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   944,   nil,   nil,   944,   nil,   nil,   944,   944,
+   nil,   nil,   944,   nil,   944,   nil,   nil,   nil,   944,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   944,   nil,   nil,   nil,
+   nil,   944,   944,   944,   944,   944,   944,   nil,   nil,   nil,
+   944,   944,   nil,   nil,   nil,   nil,   nil,   nil,   944,   nil,
+   nil,   944,   944,   944,   nil,   944,   944,   948,   948,   948,
+   948,   948,   948,   nil,   nil,   nil,   948,   948,   nil,   nil,
+   nil,   948,   nil,   948,   948,   948,   948,   948,   948,   948,
+   nil,   nil,   nil,   nil,   nil,   948,   948,   948,   948,   948,
+   948,   948,   nil,   nil,   948,   nil,   nil,   nil,   nil,   nil,
+   948,   948,   948,   948,   948,   948,   948,   948,   948,   948,
+   948,   948,   nil,   948,   948,   948,   nil,   948,   948,   nil,
+   948,   948,   948,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   948,   nil,   nil,   948,   nil,   nil,   948,   948,
+   nil,   nil,   948,   nil,   948,   nil,   nil,   nil,   948,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   948,   nil,   nil,   nil,
+   nil,   948,   948,   948,   948,   948,   948,   nil,   nil,   nil,
+   948,   948,   nil,   nil,   nil,   nil,   nil,   nil,   948,   nil,
+   nil,   948,   948,   948,   nil,   948,   948,   989,   989,   989,
+   989,   989,   989,   nil,   nil,   nil,   989,   989,   nil,   nil,
+   nil,   989,   nil,   989,   989,   989,   989,   989,   989,   989,
+   nil,   nil,   nil,   nil,   nil,   989,   989,   989,   989,   989,
+   989,   989,   nil,   nil,   989,   nil,   nil,   nil,   nil,   nil,
+   989,   989,   989,   989,   989,   989,   989,   989,   989,   989,
+   989,   989,   nil,   989,   989,   989,   nil,   989,   989,   nil,
+   989,   989,   989,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   989,   nil,   nil,   989,   nil,   nil,   989,   989,
+   nil,   nil,   989,   nil,   989,   nil,   nil,   nil,   989,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   989,   nil,   nil,   nil,
+   nil,   989,   989,   989,   989,   989,   989,   nil,   nil,   nil,
+   989,   989,   nil,   nil,   nil,   nil,   nil,   nil,   989,   nil,
+   nil,   989,   989,   989,   nil,   989,   989,   996,   996,   996,
+   996,   996,   996,   nil,   nil,   nil,   996,   996,   nil,   nil,
+   nil,   996,   nil,   996,   996,   996,   996,   996,   996,   996,
+   nil,   nil,   nil,   nil,   nil,   996,   996,   996,   996,   996,
+   996,   996,   nil,   nil,   996,   nil,   nil,   nil,   nil,   nil,
+   996,   996,   996,   996,   996,   996,   996,   996,   996,   996,
+   996,   996,   nil,   996,   996,   996,   nil,   996,   996,   nil,
+   996,   996,   996,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   996,   nil,   nil,   996,   nil,   nil,   996,   996,
+   nil,   nil,   996,   nil,   996,   nil,   nil,   nil,   996,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   996,   nil,   nil,   nil,
+   nil,   996,   996,   996,   996,   996,   996,   nil,   nil,   nil,
+   996,   996,   nil,   nil,   nil,   nil,   nil,   nil,   996,   nil,
+   nil,   996,   996,   996,   nil,   996,   996,  1001,  1001,  1001,
+  1001,  1001,  1001,   nil,   nil,   nil,  1001,  1001,   nil,   nil,
+   nil,  1001,   nil,  1001,  1001,  1001,  1001,  1001,  1001,  1001,
+   nil,   nil,   nil,   nil,   nil,  1001,  1001,  1001,  1001,  1001,
+  1001,  1001,   nil,   nil,  1001,   nil,   nil,   nil,   nil,   nil,
+  1001,  1001,  1001,  1001,  1001,  1001,  1001,  1001,  1001,  1001,
+  1001,  1001,   nil,  1001,  1001,  1001,   nil,  1001,  1001,   nil,
+  1001,  1001,  1001,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1001,   nil,   nil,  1001,   nil,   nil,  1001,  1001,
+   nil,   nil,  1001,   nil,  1001,   nil,   nil,   nil,  1001,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1001,   nil,   nil,   nil,
+   nil,  1001,  1001,  1001,  1001,  1001,  1001,   nil,   nil,   nil,
+  1001,  1001,   nil,   nil,   nil,   nil,   nil,   nil,  1001,   nil,
+   nil,  1001,  1001,  1001,   nil,  1001,  1001,     8,     8,     8,
+     8,     8,   nil,   nil,   nil,     8,     8,   nil,   nil,   nil,
+     8,   nil,     8,     8,     8,     8,     8,     8,     8,   nil,
+   nil,   nil,   nil,   nil,     8,     8,     8,     8,     8,     8,
+     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,   nil,     8,
+     8,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,   nil,     8,     8,     8,   nil,     8,     8,   nil,     8,
+     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,     8,   nil,   nil,     8,   nil,   nil,     8,     8,   nil,
+   nil,     8,   nil,     8,   nil,   nil,   nil,     8,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,   nil,   nil,
+     8,     8,     8,     8,     8,     8,   nil,   nil,   nil,     8,
+     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
+     8,     8,     8,   nil,     8,     8,    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,   nil,    23,    23,    23,    23,    23,    23,    23,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,    23,    23,    23,    23,    23,    23,    23,    23,
+   nil,    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,   777,
+    23,   777,   777,   777,   777,   777,    23,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   777,   nil,   nil,   nil,    23,
+    23,    23,    23,    23,    23,   nil,   nil,   nil,    23,    23,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   777,    30,    23,
+    23,    23,   nil,    23,    23,    30,    30,    30,   777,   777,
+    30,    30,    30,   773,    30,   773,   773,   773,   773,   773,
+   nil,   nil,   nil,    30,    30,    30,   nil,   nil,   nil,   773,
+   nil,   nil,   nil,   nil,    30,    30,   nil,    30,    30,    30,
+    30,    30,   777,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   773,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   773,   773,   773,   773,   nil,    30,    30,    30,    30,    30,
+    30,    30,    30,    30,    30,    30,    30,    30,    30,   nil,
+   nil,    30,    30,    30,   nil,   nil,    30,   nil,    30,    30,
+   nil,   nil,    30,    30,   nil,    30,   773,    30,   nil,    30,
+   nil,    30,    30,    30,    30,    30,    30,    30,   nil,    30,
+    30,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    30,    30,    31,    30,   nil,    30,
+   nil,   nil,   nil,    31,    31,    31,    30,   nil,    31,    31,
+    31,   775,    31,   775,   775,   775,   775,   775,   nil,   nil,
+   nil,   nil,    31,    31,   nil,   nil,   nil,   775,   nil,   nil,
+   nil,   nil,    31,    31,   nil,    31,    31,    31,    31,    31,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   775,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   775,   775,
+   775,   775,   nil,    31,    31,    31,    31,    31,    31,    31,
+    31,    31,    31,    31,    31,    31,    31,   nil,   nil,    31,
+    31,    31,   nil,   nil,    31,   nil,    31,    31,   nil,   nil,
+    31,    31,   nil,    31,   775,    31,   nil,    31,   nil,    31,
+    31,    31,    31,    31,    31,    31,   nil,    31,   nil,    31,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    31,    31,   nil,    31,   nil,    31,    32,    32,
+    32,   nil,    32,   nil,    31,   nil,    32,    32,   nil,   nil,
+   nil,    32,   nil,    32,    32,    32,    32,    32,    32,    32,
+   nil,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
+    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,    32,   nil,   nil,    32,    32,    32,    32,    32,    32,
+    32,    32,    32,    32,    32,    32,   nil,    32,    32,   nil,
+    32,    32,    32,   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,    32,    32,
+   nil,   nil,    32,   nil,    32,   nil,    32,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,
+    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
+    32,    32,    32,    32,   nil,    32,    32,    33,    33,    33,
+   nil,    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,
+    33,   nil,    33,    33,    33,    33,    33,    33,    33,   nil,
+   nil,   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,
+    33,   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
+    33,    33,    33,    33,    33,   nil,    33,    33,   nil,    33,
+    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,
+   nil,    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,
+    33,    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,
+    33,    33,    33,   nil,    33,    33,    34,    34,    34,   nil,
+    34,   nil,   nil,   nil,    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,
+    34,    34,    34,    34,   nil,    34,    34,   nil,    34,    34,
+    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,    34,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,
+    34,    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,
+    34,    34,   nil,    34,    34,    37,    37,    37,   nil,    37,
+   nil,   nil,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,
+    37,    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,
+   nil,   nil,    37,    37,    37,    37,    37,    37,    37,   nil,
+   nil,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
+   nil,    37,    37,    37,    37,    37,    37,    37,    37,   nil,
+    37,    37,    37,   nil,    37,    37,   nil,   nil,   nil,    37,
+   nil,   nil,   nil,   nil,   nil,   960,   nil,   960,   960,   960,
+   960,   960,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    37,
+   nil,   960,    37,   nil,   nil,    37,    37,   nil,   nil,    37,
+   nil,    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   960,   nil,   nil,   nil,   nil,    37,    37,
+    37,    37,    37,    37,   960,   960,   nil,    37,    37,   nil,
+   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,
+    37,   nil,    37,    37,    38,    38,    38,   nil,    38,   nil,
+   nil,   nil,    38,    38,   nil,   nil,   nil,    38,   960,    38,
+    38,    38,    38,    38,    38,    38,   nil,   nil,   nil,   nil,
+   nil,    38,    38,    38,    38,    38,    38,    38,   nil,   nil,
+    38,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,
+    38,    38,    38,    38,    38,    38,    38,    38,   nil,    38,
+    38,    38,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,
+   nil,   nil,   nil,   nil,   962,   nil,   962,   962,   962,   962,
+   962,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,
+   962,    38,   nil,   nil,    38,    38,   nil,   nil,    38,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   962,   nil,   nil,   nil,   nil,    38,    38,    38,
+    38,    38,    38,   962,   962,   nil,    38,    38,   nil,   nil,
+   nil,    38,   nil,   nil,    38,   nil,   nil,    38,    38,    38,
+   nil,    38,    38,    45,    45,    45,   nil,    45,   nil,   nil,
+   nil,    45,    45,   nil,   nil,   nil,    45,   962,    45,    45,
+    45,    45,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,
+    45,    45,    45,    45,    45,    45,    45,   nil,   nil,    45,
+   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
+    45,    45,    45,    45,    45,    45,    45,   nil,    45,    45,
+    45,   nil,    45,    45,   nil,    45,    45,    45,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,
+    45,   nil,   nil,    45,    45,   nil,   nil,    45,   nil,   nil,
+   nil,   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    45,   nil,   nil,   nil,   nil,    45,    45,    45,    45,
+    45,    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,
+   nil,   nil,   nil,    45,   nil,   nil,    45,    45,    45,   nil,
+    45,    45,    46,    46,    46,   nil,    46,   nil,   nil,   nil,
+    46,    46,   nil,   nil,   nil,    46,   nil,    46,    46,    46,
+    46,    46,    46,    46,   nil,   nil,   nil,   nil,   nil,    46,
+    46,    46,    46,    46,    46,    46,   nil,   nil,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,
+    46,    46,    46,    46,    46,    46,   nil,    46,    46,    46,
+   nil,    46,    46,   nil,    46,    46,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,
+   nil,   nil,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,
+   nil,   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    46,   nil,   nil,   nil,   nil,    46,    46,    46,    46,    46,
+    46,   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,    46,   nil,   nil,    46,    46,    46,   nil,    46,
+    46,    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,
+    48,   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,
+    48,    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,
+    48,    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,
+    48,    48,    48,    48,    48,   nil,    48,    48,    48,   nil,
+    48,    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,
+   nil,    48,    48,   nil,   964,    48,   964,   964,   964,   964,
+   964,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,
+   964,   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,
+   nil,   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,    48,   964,    60,    48,    48,    48,   nil,    48,    48,
+    60,    60,    60,   964,   964,    60,    60,    60,   829,    60,
+   829,   829,   829,   829,   829,   nil,   nil,   nil,   nil,    60,
+    60,    60,   nil,   nil,   829,   nil,   nil,   nil,   nil,    60,
+    60,   nil,    60,    60,    60,    60,    60,   964,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   829,   829,   829,   829,   nil,
+    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,
+    60,    60,    60,    60,   nil,   nil,    60,    60,    60,   nil,
+   nil,    60,   nil,   829,    60,   nil,   nil,    60,    60,   nil,
+    60,   829,    60,   nil,    60,   nil,    60,    60,    60,    60,
+    60,    60,    60,   nil,    60,   nil,    60,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    60,
+    60,    60,    60,   nil,    60,   nil,    60,   nil,   nil,   nil,
+   460,    60,    62,    62,    62,    62,    62,   460,   460,   460,
+    62,    62,   460,   460,   460,    62,   460,    62,    62,    62,
+    62,    62,    62,    62,   nil,   460,   460,   460,   nil,    62,
+    62,    62,    62,    62,    62,    62,   460,   460,    62,   460,
+   460,   460,   460,   460,    62,    62,   nil,    62,    62,    62,
+    62,    62,    62,    62,    62,    62,   nil,    62,    62,    62,
+   nil,    62,    62,   nil,    62,    62,    62,   460,   460,   460,
+   460,   460,   460,   460,   460,   460,   460,   460,   460,   460,
+   460,   nil,   nil,   460,   460,   460,    62,   nil,   460,    62,
+   460,   460,    62,    62,   460,   460,    62,   460,    62,   460,
+   nil,   460,    62,   460,   460,   460,   460,   460,   460,   460,
+    62,   460,   460,   460,   nil,    62,    62,    62,    62,    62,
+    62,   nil,   nil,   nil,    62,    62,   460,   460,   nil,   460,
+   nil,   460,    62,   nil,   nil,    62,    62,    62,   460,    62,
+    62,    67,    67,    67,   nil,    67,   nil,   nil,   nil,    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,    67,
+   nil,   nil,   nil,   nil,    67,    67,    67,    67,    67,    67,
+   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,   nil,    67,    67,    67,   nil,    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,    68,    68,    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,   nil,   nil,   nil,   nil,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,
+   nil,   nil,   nil,    68,    68,    68,    68,    68,    68,   nil,
+   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,   nil,   nil,
+    68,   nil,   nil,    68,    68,    68,   nil,    68,    68,    71,
+    71,    71,   nil,    71,   nil,   nil,   nil,    71,    71,   nil,
+   nil,   nil,    71,   nil,    71,    71,    71,    71,    71,    71,
+    71,   nil,   nil,   nil,   nil,   nil,    71,    71,    71,    71,
+    71,    71,    71,   nil,   nil,    71,   nil,   nil,   nil,   nil,
+   nil,   nil,    71,   nil,   nil,    71,    71,    71,    71,    71,
+    71,    71,    71,   nil,    71,    71,    71,   nil,    71,    71,
+   nil,    71,    71,    71,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    71,   nil,   nil,    71,   nil,   nil,    71,
+    71,   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,    71,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,
+   nil,   nil,    71,    71,    71,    71,    71,    71,   nil,   nil,
+   nil,    71,    71,    71,   nil,   nil,   nil,   nil,    71,    71,
+   nil,   nil,    71,    71,    71,   nil,    71,    71,    72,    72,
+    72,   nil,    72,   nil,   nil,   nil,    72,    72,   nil,   nil,
+   nil,    72,   nil,    72,    72,    72,    72,    72,    72,    72,
+   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,    72,
+    72,    72,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,
+   nil,    72,   nil,   nil,    72,    72,    72,    72,    72,    72,
+    72,    72,   nil,    72,    72,    72,   nil,    72,    72,   nil,
+   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,   980,   nil,
+   980,   980,   980,   980,   980,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    72,   nil,   980,    72,   nil,   nil,    72,    72,
+   nil,   nil,    72,   nil,    72,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   980,   nil,   nil,   nil,
+   nil,    72,    72,    72,    72,    72,    72,   980,   980,   nil,
+    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,    72,    72,    72,   nil,    72,    72,    73,    73,    73,
+   nil,    73,   nil,   nil,   nil,    73,    73,   nil,   nil,   nil,
+    73,   980,    73,    73,    73,    73,    73,    73,    73,   nil,
+   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,    73,
+    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,
+    73,   nil,   nil,    73,    73,    73,    73,    73,    73,    73,
+    73,   nil,    73,    73,    73,   nil,    73,    73,   nil,   nil,
+   nil,    73,   nil,   nil,   nil,   nil,   nil,  1042,   nil,  1042,
+  1042,  1042,  1042,  1042,   nil,   nil,   nil,   nil,    73,   nil,
+   nil,    73,   nil,  1042,    73,   nil,   nil,    73,    73,   nil,
+   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1042,   nil,   nil,   nil,   nil,
+    73,    73,    73,    73,    73,    73,  1042,  1042,   nil,    73,
+    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,
+    73,    73,    73,   nil,    73,    73,    74,    74,    74,   nil,
+    74,   nil,   nil,   nil,    74,    74,   nil,   nil,   nil,    74,
+  1042,    74,    74,    74,    74,    74,    74,    74,   nil,   nil,
+   nil,   nil,   nil,    74,    74,    74,    74,    74,    74,    74,
+   nil,   nil,    74,   nil,   nil,   nil,   nil,   nil,   nil,    74,
+   nil,   nil,    74,    74,    74,    74,    74,    74,    74,    74,
+   nil,    74,    74,    74,   nil,    74,    74,   nil,   nil,   nil,
+    74,   nil,   nil,   nil,   nil,   nil,  1051,   nil,  1051,  1051,
+  1051,  1051,  1051,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    74,   nil,  1051,    74,   nil,   nil,    74,    74,   nil,   nil,
+    74,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1051,   nil,   nil,   nil,   nil,    74,
+    74,    74,    74,    74,    74,  1051,  1051,   nil,    74,    74,
+   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,   nil,    74,
+    74,    74,   nil,    74,    74,   128,   128,   128,   128,   128,
+   nil,   nil,   nil,   128,   128,   nil,   nil,   nil,   128,  1051,
+   128,   128,   128,   128,   128,   128,   128,   nil,   nil,   nil,
+   nil,   nil,   128,   128,   128,   128,   128,   128,   128,   nil,
+   nil,   128,   nil,   nil,   nil,   nil,   nil,   128,   128,   128,
+   128,   128,   128,   128,   128,   128,   128,   128,   128,   nil,
+   128,   128,   128,   nil,   128,   128,   nil,   128,   128,   128,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   128,
+   nil,   nil,   128,   nil,   nil,   128,   128,   nil,   nil,   128,
+   nil,   128,   nil,   nil,   nil,   128,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   128,   nil,   nil,   nil,   nil,   128,   128,
+   128,   128,   128,   128,   nil,   nil,   nil,   128,   128,   nil,
+   nil,   nil,   nil,   nil,   128,   128,   nil,   nil,   128,   128,
+   128,   nil,   128,   128,   133,   133,   133,   nil,   133,   nil,
+   nil,   nil,   133,   133,   nil,   nil,   nil,   133,   nil,   133,
+   133,   133,   133,   133,   133,   133,   nil,   nil,   nil,   nil,
+   nil,   133,   133,   133,   133,   133,   133,   133,   nil,   nil,
+   133,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,
+   133,   133,   133,   133,   133,   133,   133,   133,   nil,   133,
+   133,   133,   nil,   133,   133,   nil,   133,   133,   133,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,
+   nil,   133,   nil,   nil,   133,   133,   nil,   nil,   133,   nil,
+   nil,   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   133,   nil,   nil,   nil,   nil,   133,   133,   133,
+   133,   133,   133,   nil,   nil,   nil,   133,   133,   nil,   nil,
+   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,
+   nil,   133,   133,   134,   134,   134,   nil,   134,   nil,   nil,
+   nil,   134,   134,   nil,   nil,   nil,   134,   nil,   134,   134,
+   134,   134,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,
+   134,   134,   134,   134,   134,   134,   134,   nil,   nil,   134,
+   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,
+   134,   134,   134,   134,   134,   134,   134,   nil,   134,   134,
+   134,   nil,   134,   134,   nil,   134,   134,   134,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,
+   134,   nil,   nil,   134,   134,   nil,   nil,   134,   nil,   nil,
+   nil,   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   134,   nil,   nil,   nil,   nil,   134,   134,   134,   134,
+   134,   134,   nil,   nil,   nil,   134,   134,   nil,   nil,   nil,
+   nil,   nil,   nil,   134,   nil,   nil,   134,   134,   134,   nil,
+   134,   134,   135,   135,   135,   nil,   135,   nil,   nil,   nil,
+   135,   135,   nil,   nil,   nil,   135,   nil,   135,   135,   135,
+   135,   135,   135,   135,   nil,   nil,   nil,   nil,   nil,   135,
+   135,   135,   135,   135,   135,   135,   nil,   nil,   135,   nil,
+   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,   135,
+   135,   135,   135,   135,   135,   135,   nil,   135,   135,   135,
+   nil,   135,   135,   nil,   135,   135,   135,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,
+   nil,   nil,   135,   135,   nil,   nil,   135,   nil,   nil,   nil,
+   nil,   nil,   135,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   135,   nil,   nil,   nil,   nil,   135,   135,   135,   135,   135,
+   135,   nil,   nil,   nil,   135,   135,   nil,   nil,   nil,   nil,
+   nil,   nil,   135,   nil,   nil,   135,   135,   135,   nil,   135,
+   135,   136,   136,   136,   nil,   136,   nil,   nil,   nil,   136,
+   136,   nil,   nil,   nil,   136,   nil,   136,   136,   136,   136,
+   136,   136,   136,   nil,   nil,   nil,   nil,   nil,   136,   136,
+   136,   136,   136,   136,   136,   nil,   nil,   136,   nil,   nil,
+   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   136,   136,
+   136,   136,   136,   136,   136,   nil,   136,   136,   136,   nil,
+   136,   136,   nil,   136,   136,   136,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   nil,
+   nil,   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,
+   nil,   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   136,
+   nil,   nil,   nil,   nil,   136,   136,   136,   136,   136,   136,
+   nil,   nil,   nil,   136,   136,   nil,   nil,   nil,   nil,   nil,
+   nil,   136,   nil,   nil,   136,   136,   136,   nil,   136,   136,
+   137,   137,   137,   137,   137,   nil,   nil,   nil,   137,   137,
+   nil,   nil,   nil,   137,   nil,   137,   137,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   nil,   nil,   137,   137,   137,
+   137,   137,   137,   137,   nil,   nil,   137,   nil,   nil,   nil,
+   nil,   nil,   137,   137,   nil,   137,   137,   137,   137,   137,
+   137,   137,   137,   137,   nil,   137,   137,   137,   nil,   137,
+   137,   nil,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,   nil,
+   137,   137,   nil,   nil,   137,   nil,   137,   nil,   nil,   nil,
+   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,
+   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,   nil,
+   nil,   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,
+   137,   nil,   nil,   137,   137,   137,   nil,   137,   137,   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,   nil,   222,   222,   222,   222,
+   222,   222,   222,   nil,   nil,   222,   nil,   nil,   nil,   nil,
+   nil,   nil,   222,   nil,   nil,   222,   222,   222,   222,   222,
+   222,   222,   222,   nil,   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,   222,   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,   nil,   nil,   nil,   222,
+   nil,   nil,   222,   222,   222,   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,   nil,   223,   223,   223,   223,   223,
+   223,   223,   nil,   nil,   223,   nil,   nil,   nil,   nil,   nil,
+   nil,   223,   nil,   nil,   223,   223,   223,   223,   223,   223,
+   223,   223,   nil,   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,   223,   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,   nil,   nil,   nil,   223,   nil,
+   nil,   223,   223,   223,   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,   nil,   224,   224,   224,   224,   224,   224,
+   224,   nil,   nil,   224,   nil,   nil,   nil,   nil,   nil,   nil,
+   224,   nil,   nil,   224,   224,   224,   224,   224,   224,   224,
+   224,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,
+   224,   224,   224,   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,   nil,   225,   225,   225,   225,   225,   225,   225,
+   nil,   nil,   225,   nil,   nil,   nil,   nil,   nil,   nil,   225,
+   nil,   nil,   225,   225,   225,   225,   225,   225,   225,   225,
+   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,   225,
+   225,   225,   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,   nil,   226,   226,   226,   226,   226,   226,   226,   nil,
+   nil,   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,
+   nil,   226,   226,   226,   226,   226,   226,   226,   226,   nil,
+   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
+   226,   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,
+   nil,   227,   227,   227,   227,   227,   227,   227,   nil,   nil,
+   227,   nil,   nil,   nil,   nil,   nil,   nil,   227,   nil,   nil,
+   227,   227,   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,
+   227,   nil,   227,   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,   nil,   nil,   nil,   227,   nil,   227,   227,   227,   227,
+   nil,   227,   227,   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,   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,   231,   nil,   nil,   nil,   nil,   231,   231,   231,   231,
+   231,   231,   nil,   nil,   nil,   231,   231,   nil,   nil,   nil,
+   nil,   nil,   nil,   231,   nil,   nil,   231,   231,   231,   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,   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,
+   232,   nil,   nil,   nil,   nil,   232,   232,   232,   232,   232,
+   232,   nil,   nil,   nil,   232,   232,   nil,   nil,   nil,   nil,
+   nil,   nil,   232,   nil,   nil,   232,   232,   232,   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,   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,   233,
+   nil,   nil,   nil,   nil,   233,   233,   233,   233,   233,   233,
+   nil,   nil,   nil,   233,   233,   233,   nil,   nil,   nil,   nil,
+   nil,   233,   nil,   nil,   233,   233,   233,   nil,   233,   233,
+   244,   244,   244,   nil,   244,   nil,   nil,   nil,   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,   244,   nil,
+   nil,   nil,   nil,   244,   244,   244,   244,   244,   244,   nil,
+   nil,   nil,   244,   244,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   244,   244,   244,   nil,   244,   244,   247,
+   247,   247,   nil,   247,   nil,   nil,   nil,   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,   247,   nil,   nil,
+   nil,   nil,   247,   247,   247,   247,   247,   247,   nil,   nil,
+   nil,   247,   247,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   247,   247,   247,   nil,   247,   247,   248,   248,
+   248,   nil,   248,   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,
+   nil,   248,   248,   248,   248,   248,   248,   nil,   nil,   nil,
+   248,   248,   nil,   nil,   nil,   nil,   nil,   nil,   248,   nil,
+   nil,   248,   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,   nil,   nil,
+   249,   249,   249,   249,   249,   249,   nil,   nil,   nil,   249,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   249,   249,   249,   nil,   249,   249,   250,   250,   250,   nil,
+   250,   nil,   nil,   nil,   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,   250,   nil,   nil,   nil,   nil,   250,
+   250,   250,   250,   250,   250,   nil,   nil,   nil,   250,   250,
+   nil,   nil,   nil,   nil,   nil,   nil,   250,   nil,   nil,   250,
+   250,   250,   nil,   250,   250,   251,   251,   251,   nil,   251,
+   nil,   nil,   nil,   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,   251,   nil,   nil,   nil,   nil,   251,   251,
+   251,   251,   251,   251,   nil,   nil,   nil,   251,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,   251,   nil,   nil,   251,   251,
+   251,   nil,   251,   251,   252,   252,   252,   nil,   252,   nil,
+   nil,   nil,   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,   252,   nil,   nil,   nil,   nil,   252,   252,   252,
+   252,   252,   252,   nil,   nil,   nil,   252,   252,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   252,   252,   252,
+   nil,   252,   252,   253,   253,   253,   nil,   253,   nil,   nil,
+   nil,   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,   253,   nil,   nil,   nil,   nil,   253,   253,   253,   253,
+   253,   253,   nil,   nil,   nil,   253,   253,   nil,   nil,   nil,
+   nil,   nil,   nil,   253,   nil,   nil,   253,   253,   253,   nil,
+   253,   253,   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,   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,
+   254,   nil,   nil,   nil,   nil,   254,   254,   254,   254,   254,
+   254,   nil,   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,
+   nil,   nil,   254,   nil,   nil,   254,   254,   254,   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,   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,   255,
+   nil,   nil,   nil,   nil,   255,   255,   255,   255,   255,   255,
+   nil,   nil,   nil,   255,   255,   nil,   nil,   nil,   nil,   nil,
+   nil,   255,   nil,   nil,   255,   255,   255,   nil,   255,   255,
+   256,   256,   256,   nil,   256,   nil,   nil,   nil,   256,   256,
+   nil,   nil,   nil,   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,   256,   256,
+   256,   256,   256,   256,   nil,   256,   256,   256,   nil,   256,
+   256,   nil,   256,   256,   256,   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,   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,   nil,   nil,   nil,
+   256,   nil,   nil,   256,   256,   256,   nil,   256,   256,   257,
+   257,   257,   nil,   257,   nil,   nil,   nil,   257,   257,   nil,
+   nil,   nil,   257,   nil,   257,   257,   257,   257,   257,   257,
+   257,   nil,   nil,   nil,   nil,   nil,   257,   257,   257,   257,
+   257,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   257,   257,   257,   257,   257,
+   257,   257,   257,   nil,   257,   257,   257,   nil,   257,   257,
+   nil,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,   nil,   257,
+   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   257,   257,   257,   257,   257,   257,   nil,   nil,
+   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   257,   257,   257,   nil,   257,   257,   258,   258,
+   258,   nil,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,
+   nil,   258,   nil,   258,   258,   258,   258,   258,   258,   258,
+   nil,   nil,   nil,   nil,   nil,   258,   258,   258,   258,   258,
+   258,   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,
+   nil,   258,   nil,   nil,   258,   258,   258,   258,   258,   258,
+   258,   258,   nil,   258,   258,   258,   nil,   258,   258,   nil,
+   258,   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   258,   nil,   nil,   258,   nil,   nil,   258,   258,
+   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,
+   nil,   258,   258,   258,   258,   258,   258,   nil,   nil,   nil,
+   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
+   nil,   258,   258,   258,   nil,   258,   258,   259,   259,   259,
+   nil,   259,   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,
+   259,   nil,   259,   259,   259,   259,   259,   259,   259,   nil,
+   nil,   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,
+   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,
+   259,   nil,   nil,   259,   259,   259,   259,   259,   259,   259,
+   259,   nil,   259,   259,   259,   nil,   259,   259,   nil,   259,
+   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   259,   nil,   nil,   259,   nil,   nil,   259,   259,   nil,
+   nil,   259,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,
+   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,   259,
+   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
+   259,   259,   259,   nil,   259,   259,   260,   260,   260,   nil,
+   260,   nil,   nil,   nil,   260,   260,   nil,   nil,   nil,   260,
+   nil,   260,   260,   260,   260,   260,   260,   260,   nil,   nil,
+   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   260,
+   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,
+   nil,   nil,   260,   260,   260,   260,   260,   260,   260,   260,
+   nil,   260,   260,   260,   nil,   260,   260,   nil,   260,   260,
+   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   260,   nil,   nil,   260,   nil,   nil,   260,   260,   nil,   nil,
+   260,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   260,
+   260,   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,
+   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,
+   260,   260,   nil,   260,   260,   261,   261,   261,   nil,   261,
+   nil,   nil,   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,   nil,
+   261,   261,   261,   nil,   261,   261,   nil,   261,   261,   261,
+   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,   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,   nil,   nil,   nil,   261,   nil,   nil,   261,   261,
+   261,   nil,   261,   261,   262,   262,   262,   nil,   262,   nil,
+   nil,   nil,   262,   262,   nil,   nil,   nil,   262,   nil,   262,
+   262,   262,   262,   262,   262,   262,   nil,   nil,   nil,   nil,
+   nil,   262,   262,   262,   262,   262,   262,   262,   nil,   nil,
+   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,
+   262,   262,   262,   262,   262,   262,   262,   262,   nil,   262,
+   262,   262,   nil,   262,   262,   nil,   262,   262,   262,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,
+   nil,   262,   nil,   nil,   262,   262,   nil,   nil,   262,   nil,
+   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,   262,   262,
+   262,   262,   262,   nil,   nil,   nil,   262,   262,   nil,   nil,
+   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,   262,
+   nil,   262,   262,   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,   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,   nil,   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,   nil,
+   nil,   nil,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   263,   nil,   nil,   263,   263,   263,   nil,
+   263,   263,   264,   264,   264,   nil,   264,   nil,   nil,   nil,
+   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,   nil,   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,   nil,   nil,
+   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   264,   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,
+   264,   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,
+   nil,   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,
+   264,   265,   265,   265,   nil,   265,   nil,   nil,   nil,   265,
+   265,   nil,   nil,   nil,   265,   nil,   265,   265,   265,   265,
+   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   265,   265,
+   265,   265,   265,   265,   265,   nil,   nil,   265,   nil,   nil,
+   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,
+   265,   265,   265,   265,   265,   nil,   265,   265,   265,   nil,
+   265,   265,   nil,   265,   265,   265,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   nil,
+   nil,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,
+   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,
+   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,   265,
+   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,   nil,   nil,
+   nil,   265,   nil,   nil,   265,   265,   265,   nil,   265,   265,
+   266,   266,   266,   nil,   266,   nil,   nil,   nil,   266,   266,
+   nil,   nil,   nil,   266,   nil,   266,   266,   266,   266,   266,
+   266,   266,   nil,   nil,   nil,   nil,   nil,   266,   266,   266,
+   266,   266,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,
+   nil,   nil,   nil,   266,   nil,   nil,   266,   266,   266,   266,
+   266,   266,   266,   266,   nil,   266,   266,   266,   nil,   266,
+   266,   nil,   266,   266,   266,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,
+   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
+   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
+   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,   nil,
+   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,
+   266,   nil,   nil,   266,   266,   266,   nil,   266,   266,   267,
+   267,   267,   nil,   267,   nil,   nil,   nil,   267,   267,   nil,
+   nil,   nil,   267,   nil,   267,   267,   267,   267,   267,   267,
+   267,   nil,   nil,   nil,   nil,   nil,   267,   267,   267,   267,
+   267,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,
+   nil,   nil,   267,   nil,   nil,   267,   267,   267,   267,   267,
+   267,   267,   267,   nil,   267,   267,   267,   nil,   267,   267,
+   nil,   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,   nil,   267,
+   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   267,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   nil,   nil,   267,   267,   267,   267,   267,   267,   nil,   nil,
+   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,
+   nil,   nil,   267,   267,   267,   nil,   267,   267,   268,   268,
+   268,   nil,   268,   nil,   nil,   nil,   268,   268,   nil,   nil,
+   nil,   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,   268,   268,   268,   268,
+   268,   268,   nil,   268,   268,   268,   nil,   268,   268,   nil,
+   268,   268,   268,   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,   268,
+   nil,   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,
+   nil,   268,   268,   268,   nil,   268,   268,   273,   273,   273,
+   nil,   273,   nil,   nil,   nil,   273,   273,   nil,   nil,   nil,
+   273,   nil,   273,   273,   273,   273,   273,   273,   273,   nil,
+   nil,   nil,   nil,   nil,   273,   273,   273,   273,   273,   273,
+   273,   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   nil,
+   273,   nil,   nil,   273,   273,   273,   273,   273,   273,   273,
+   273,   nil,   273,   273,   273,   nil,   273,   273,   nil,   273,
+   273,   273,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   273,   nil,   nil,   273,   nil,   nil,   273,   273,   nil,
+   nil,   273,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   nil,   nil,
+   273,   273,   273,   273,   273,   273,   nil,   nil,   nil,   273,
+   273,   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,
+   273,   273,   273,   nil,   273,   273,   281,   281,   281,   nil,
+   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,   nil,   281,
+   nil,   nil,   281,   281,   281,   281,   281,   281,   281,   281,
+   281,   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,   281,   nil,   281,   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,   nil,   nil,   nil,   281,   nil,   281,   281,
+   281,   281,   nil,   281,   281,   282,   282,   282,   nil,   282,
+   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,   282,   nil,
+   282,   282,   282,   282,   282,   282,   282,   nil,   nil,   nil,
+   nil,   nil,   282,   282,   282,   282,   282,   282,   282,   nil,
+   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   282,   282,   282,   282,   282,   282,   282,   282,   282,
+   282,   282,   282,   nil,   282,   282,   nil,   282,   282,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   282,   nil,   nil,   282,   282,   nil,   nil,   282,
+   nil,   282,   nil,   282,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   282,   282,
+   282,   282,   282,   282,   nil,   nil,   nil,   282,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   282,   nil,   282,   282,   282,
+   282,   nil,   282,   282,   291,   291,   291,   nil,   291,   nil,
+   nil,   nil,   291,   291,   nil,   nil,   nil,   291,   nil,   291,
+   291,   291,   291,   291,   291,   291,   nil,   nil,   nil,   nil,
+   nil,   291,   291,   291,   291,   291,   291,   291,   nil,   nil,
+   291,   nil,   nil,   nil,   nil,   nil,   nil,   291,   nil,   nil,
+   291,   291,   291,   291,   291,   291,   291,   291,   291,   291,
+   291,   291,   nil,   291,   291,   nil,   291,   291,   291,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   291,   nil,
+   nil,   291,   nil,   nil,   291,   291,   nil,   nil,   291,   nil,
+   291,   nil,   291,   nil,   291,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   291,   nil,   nil,   nil,   nil,   291,   291,   291,
+   291,   291,   291,   nil,   nil,   nil,   291,   291,   291,   nil,
+   nil,   nil,   nil,   nil,   291,   nil,   291,   291,   291,   291,
+   nil,   291,   291,   298,   298,   298,   nil,   298,   nil,   nil,
+   nil,   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,   298,   298,   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,   nil,
+   nil,   nil,   nil,   298,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   298,   nil,   nil,   nil,   nil,   298,   298,   298,   298,
+   298,   298,   nil,   nil,   nil,   298,   298,   nil,   nil,   nil,
+   nil,   nil,   nil,   298,   nil,   nil,   298,   298,   298,   nil,
+   298,   298,   300,   300,   300,   nil,   300,   nil,   nil,   nil,
+   300,   300,   nil,   nil,   nil,   300,   nil,   300,   300,   300,
+   300,   300,   300,   300,   nil,   nil,   nil,   nil,   nil,   300,
+   300,   300,   300,   300,   300,   300,   nil,   nil,   300,   nil,
+   nil,   nil,   nil,   nil,   nil,   300,   nil,   nil,   300,   300,
+   300,   300,   300,   300,   300,   300,   nil,   300,   300,   300,
+   nil,   300,   300,   nil,   300,   300,   300,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   300,   nil,   nil,   300,
+   nil,   nil,   300,   300,   nil,   nil,   300,   nil,   nil,   nil,
+   nil,   nil,   300,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   300,   nil,   nil,   nil,   nil,   300,   300,   300,   300,   300,
+   300,   nil,   nil,   nil,   300,   300,   nil,   nil,   nil,   nil,
+   nil,   nil,   300,   nil,   nil,   300,   300,   300,   nil,   300,
+   300,   302,   302,   302,   nil,   302,   nil,   nil,   nil,   302,
+   302,   nil,   nil,   nil,   302,   nil,   302,   302,   302,   302,
+   302,   302,   302,   nil,   nil,   nil,   nil,   nil,   302,   302,
+   302,   302,   302,   302,   302,   nil,   nil,   302,   nil,   nil,
+   nil,   nil,   nil,   nil,   302,   nil,   nil,   302,   302,   302,
+   302,   302,   302,   302,   302,   nil,   302,   302,   302,   nil,
+   302,   302,   nil,   302,   302,   302,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   302,   nil,   nil,   302,   nil,
+   nil,   302,   302,   nil,   nil,   302,   nil,   nil,   nil,   nil,
+   nil,   302,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   302,
+   nil,   nil,   nil,   nil,   302,   302,   302,   302,   302,   302,
+   nil,   nil,   nil,   302,   302,   nil,   nil,   nil,   nil,   nil,
+   nil,   302,   nil,   nil,   302,   302,   302,   nil,   302,   302,
+   303,   303,   303,   nil,   303,   nil,   nil,   nil,   303,   303,
+   nil,   nil,   nil,   303,   nil,   303,   303,   303,   303,   303,
+   303,   303,   nil,   nil,   nil,   nil,   nil,   303,   303,   303,
+   303,   303,   303,   303,   nil,   nil,   303,   nil,   nil,   nil,
+   nil,   nil,   nil,   303,   nil,   nil,   303,   303,   303,   303,
+   303,   303,   303,   303,   nil,   303,   303,   303,   nil,   303,
+   303,   nil,   303,   303,   303,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   303,   nil,   nil,   303,   nil,   nil,
+   303,   303,   nil,   nil,   303,   nil,   nil,   nil,   nil,   nil,
+   303,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   303,   nil,
+   nil,   nil,   nil,   303,   303,   303,   303,   303,   303,   nil,
+   nil,   nil,   303,   303,   nil,   nil,   nil,   nil,   nil,   nil,
+   303,   nil,   nil,   303,   303,   303,   nil,   303,   303,   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,   309,   309,   309,
+   309,   309,   309,   nil,   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,   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,   nil,   nil,   nil,   309,
+   nil,   nil,   309,   309,   309,   nil,   309,   309,   317,   317,
+   317,   nil,   317,   nil,   nil,   nil,   317,   317,   nil,   nil,
+   nil,   317,   nil,   317,   317,   317,   317,   317,   317,   317,
+   nil,   nil,   nil,   nil,   nil,   317,   317,   317,   317,   317,
+   317,   317,   nil,   nil,   317,   nil,   nil,   nil,   nil,   nil,
+   nil,   317,   nil,   nil,   317,   317,   317,   317,   317,   317,
+   317,   317,   nil,   317,   317,   317,   nil,   317,   317,   nil,
+   nil,   nil,   317,   nil,   nil,   nil,   nil,   nil,  1053,   nil,
+  1053,  1053,  1053,  1053,  1053,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   317,   nil,  1053,   317,   nil,   nil,   317,   317,
+   nil,   nil,   317,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1053,   nil,   nil,   nil,
+   nil,   317,   317,   317,   317,   317,   317,  1053,  1053,   nil,
+   317,   317,   nil,   nil,   nil,   317,   nil,   nil,   317,   nil,
+   nil,   317,   317,   317,   nil,   317,   317,   334,   334,   334,
+   nil,   334,   nil,   nil,   nil,   334,   334,   nil,   nil,   nil,
+   334,  1053,   334,   334,   334,   334,   334,   334,   334,   nil,
+   nil,   nil,   nil,   nil,   334,   334,   334,   334,   334,   334,
+   334,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,
+   334,   nil,   nil,   334,   334,   334,   334,   334,   334,   334,
+   334,   nil,   334,   334,   334,   nil,   334,   334,   nil,   nil,
+   nil,   334,   nil,   nil,   nil,   nil,   nil,  1055,   nil,  1055,
+  1055,  1055,  1055,  1055,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   334,   nil,  1055,   334,   nil,   nil,   334,   334,   nil,
+   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1055,   nil,   nil,   nil,   nil,
+   334,   334,   334,   334,   334,   334,  1055,  1055,   nil,   334,
+   334,   nil,   nil,   nil,   nil,   nil,   nil,   334,   nil,   nil,
+   334,   334,   334,   nil,   334,   334,   341,   341,   341,   nil,
+   341,   nil,   nil,   nil,   341,   341,   nil,   nil,   nil,   341,
+  1055,   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,   341,   nil,   nil,   nil,   nil,   341,
+   341,   341,   341,   341,   341,   nil,   nil,   nil,   341,   341,
+   nil,   nil,   nil,   nil,   nil,   nil,   341,   nil,   nil,   341,
+   341,   341,   nil,   341,   341,   343,   343,   343,   nil,   343,
+   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,   343,   nil,
+   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   nil,
+   nil,   nil,   343,   343,   343,   343,   343,   343,   343,   nil,
+   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,
+   nil,   343,   343,   343,   343,   343,   343,   343,   343,   nil,
+   343,   343,   343,   nil,   343,   343,   nil,   343,   343,   343,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,
+   nil,   nil,   343,   343,   nil,   343,   343,   nil,   nil,   343,
+   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   343,   343,
+   343,   343,   343,   343,   nil,   nil,   nil,   343,   343,   nil,
+   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,   343,
+   343,   nil,   343,   343,   347,   347,   347,   nil,   347,   nil,
+   nil,   nil,   347,   347,   nil,   nil,   nil,   347,   nil,   347,
+   347,   347,   347,   347,   347,   347,   nil,   nil,   nil,   nil,
+   nil,   347,   347,   347,   347,   347,   347,   347,   nil,   nil,
+   347,   nil,   nil,   nil,   nil,   nil,   nil,   347,   nil,   nil,
+   347,   347,   347,   347,   347,   347,   347,   347,   347,   347,
+   347,   347,   nil,   347,   347,   nil,   347,   347,   347,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   347,   nil,
+   nil,   347,   nil,   nil,   347,   347,   nil,   nil,   347,   nil,
+   347,   nil,   nil,   nil,   347,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   347,   nil,   nil,   nil,   nil,   347,   347,   347,
+   347,   347,   347,   nil,   nil,   nil,   347,   347,   nil,   nil,
+   nil,   nil,   nil,   nil,   347,   nil,   347,   347,   347,   347,
+   nil,   347,   347,   348,   348,   348,   nil,   348,   nil,   nil,
+   nil,   348,   348,   nil,   nil,   nil,   348,   nil,   348,   348,
+   348,   348,   348,   348,   348,   nil,   nil,   nil,   nil,   nil,
+   348,   348,   348,   348,   348,   348,   348,   nil,   nil,   348,
+   nil,   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,   348,
+   348,   348,   348,   348,   348,   348,   348,   348,   348,   348,
+   348,   nil,   348,   348,   nil,   348,   348,   348,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,
+   348,   nil,   nil,   348,   348,   nil,   nil,   348,   nil,   nil,
+   nil,   nil,   nil,   348,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   348,   nil,   nil,   nil,   nil,   348,   348,   348,   348,
+   348,   348,   nil,   nil,   nil,   348,   348,   nil,   nil,   nil,
+   nil,   nil,   nil,   348,   nil,   348,   348,   348,   348,   nil,
+   348,   348,   353,   353,   353,   nil,   353,   nil,   nil,   nil,
+   353,   353,   nil,   nil,   nil,   353,   nil,   353,   353,   353,
+   353,   353,   353,   353,   nil,   nil,   nil,   nil,   nil,   353,
+   353,   353,   353,   353,   353,   353,   nil,   nil,   353,   nil,
+   nil,   nil,   nil,   nil,   nil,   353,   nil,   nil,   353,   353,
+   353,   353,   353,   353,   353,   353,   nil,   353,   353,   353,
+   nil,   353,   353,   nil,   353,   353,   353,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   353,   nil,   nil,   353,
+   nil,   nil,   353,   353,   nil,   nil,   353,   nil,   nil,   nil,
+   nil,   nil,   353,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   353,   nil,   nil,   nil,   nil,   353,   353,   353,   353,   353,
+   353,   nil,   nil,   nil,   353,   353,   nil,   nil,   nil,   nil,
+   nil,   nil,   353,   nil,   nil,   353,   353,   353,   nil,   353,
+   353,   374,   374,   374,   nil,   374,   nil,   nil,   nil,   374,
+   374,   nil,   nil,   nil,   374,   nil,   374,   374,   374,   374,
+   374,   374,   374,   nil,   nil,   nil,   nil,   nil,   374,   374,
+   374,   374,   374,   374,   374,   nil,   nil,   374,   nil,   nil,
+   nil,   nil,   nil,   nil,   374,   nil,   nil,   374,   374,   374,
+   374,   374,   374,   374,   374,   nil,   374,   374,   374,   nil,
+   374,   374,   nil,   374,   374,   374,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   374,   nil,   nil,   374,   nil,
+   nil,   374,   374,   nil,   nil,   374,   nil,   nil,   nil,   nil,
+   nil,   374,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   374,
+   nil,   nil,   nil,   nil,   374,   374,   374,   374,   374,   374,
+   nil,   nil,   nil,   374,   374,   nil,   nil,   nil,   nil,   nil,
+   nil,   374,   nil,   nil,   374,   374,   374,   nil,   374,   374,
+   435,   435,   435,   nil,   435,   nil,   nil,   nil,   435,   435,
+   nil,   nil,   nil,   435,   nil,   435,   435,   435,   435,   435,
+   435,   435,   nil,   nil,   nil,   nil,   nil,   435,   435,   435,
+   435,   435,   435,   435,   nil,   nil,   435,   nil,   nil,   nil,
+   nil,   nil,   nil,   435,   nil,   nil,   435,   435,   435,   435,
+   435,   435,   435,   435,   nil,   435,   435,   435,   nil,   435,
+   435,   nil,   435,   435,   435,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   435,   nil,   nil,   435,   nil,   nil,
+   435,   435,   nil,  1076,   435,  1076,  1076,  1076,  1076,  1076,
+   435,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   435,  1076,
+   nil,   nil,   nil,   435,   435,   435,   435,   435,   435,   nil,
+   nil,   nil,   435,   435,   nil,   nil,   nil,   nil,   nil,   nil,
+   435,  1076,   469,   435,   435,   435,   nil,   435,   435,   469,
+   469,   469,  1076,  1076,   469,   469,   469,   958,   469,   958,
+   958,   958,   958,   958,   nil,   nil,   nil,   469,   469,   469,
+   469,   nil,   nil,   958,   nil,   nil,   nil,   nil,   469,   469,
+   nil,   469,   469,   469,   469,   469,  1076,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   958,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   958,   958,   958,   958,   nil,   469,
+   469,   469,   469,   469,   469,   469,   469,   469,   469,   469,
+   469,   469,   469,   nil,   nil,   469,   469,   469,   nil,   nil,
+   469,   nil,   nil,   469,   nil,   nil,   469,   469,   nil,   469,
+   958,   469,   nil,   469,   nil,   469,   469,   469,   469,   469,
+   469,   469,   nil,   469,   469,   469,   975,   nil,   975,   975,
+   975,   975,   975,   nil,   nil,   nil,   nil,   nil,   469,   469,
+   469,   469,   975,   469,   470,   469,   nil,   nil,   nil,   nil,
+   469,   470,   470,   470,   nil,   nil,   470,   470,   470,   nil,
+   470,   nil,   nil,   nil,   975,   nil,   nil,   nil,   nil,   470,
+   470,   470,   470,   975,   975,   975,   975,   nil,   nil,   nil,
+   470,   470,   nil,   470,   470,   470,   470,   470,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   975,
+   nil,   470,   470,   470,   470,   470,   470,   470,   470,   470,
+   470,   470,   470,   470,   470,   nil,   nil,   470,   470,   470,
+   nil,   nil,   470,   nil,   nil,   470,   nil,   nil,   470,   470,
+   nil,   470,   nil,   470,   nil,   470,   nil,   470,   470,   470,
+   470,   470,   470,   470,   nil,   470,   470,   470,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   470,   470,   470,   470,   nil,   470,   nil,   470,   nil,   479,
+   479,   479,   470,   479,   nil,   nil,   nil,   479,   479,   nil,
+   nil,   nil,   479,   nil,   479,   479,   479,   479,   479,   479,
+   479,   nil,   nil,   nil,   nil,   nil,   479,   479,   479,   479,
+   479,   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,
+   nil,   nil,   479,   nil,   nil,   479,   479,   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,   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,   nil,   nil,   nil,   nil,   nil,   nil,   479,
+   nil,   479,   479,   479,   479,   nil,   479,   479,   481,   481,
+   481,   nil,   481,   nil,   nil,   nil,   481,   481,   nil,   nil,
+   nil,   481,   nil,   481,   481,   481,   481,   481,   481,   481,
+   nil,   nil,   nil,   nil,   nil,   481,   481,   481,   481,   481,
+   481,   481,   nil,   nil,   481,   nil,   nil,   nil,   nil,   nil,
+   nil,   481,   nil,   nil,   481,   481,   481,   481,   481,   481,
+   481,   481,   nil,   481,   481,   481,   nil,   481,   481,   nil,
+   481,   481,   481,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   481,   nil,   nil,   481,   nil,   nil,   481,   481,
+   nil,   nil,   481,   nil,   nil,   nil,   nil,   nil,   481,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   481,   nil,   nil,   nil,
+   nil,   481,   481,   481,   481,   481,   481,   nil,   nil,   nil,
+   481,   481,   nil,   nil,   nil,   nil,   nil,   nil,   481,   nil,
+   nil,   481,   481,   481,   nil,   481,   481,   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,   nil,   482,   482,   482,   482,   482,   482,
+   482,   nil,   nil,   482,   nil,   nil,   nil,   nil,   nil,   nil,
+   482,   nil,   nil,   482,   482,   482,   482,   482,   482,   482,
+   482,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   482,   nil,   nil,
+   482,   482,   482,   nil,   482,   482,   483,   483,   483,   nil,
+   483,   nil,   nil,   nil,   483,   483,   nil,   nil,   nil,   483,
+   nil,   483,   483,   483,   483,   483,   483,   483,   nil,   nil,
+   nil,   nil,   nil,   483,   483,   483,   483,   483,   483,   483,
+   nil,   nil,   483,   nil,   nil,   nil,   nil,   nil,   nil,   483,
+   nil,   nil,   483,   483,   483,   483,   483,   483,   483,   483,
+   nil,   483,   483,   483,   nil,   483,   483,   nil,   483,   483,
+   483,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   483,   nil,   nil,   483,   nil,   nil,   483,   483,   nil,   nil,
+   483,   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   483,   nil,   nil,   nil,   nil,   483,
+   483,   483,   483,   483,   483,   nil,   nil,   nil,   483,   483,
+   nil,   nil,   nil,   nil,   nil,   nil,   483,   nil,   509,   483,
+   483,   483,   nil,   483,   483,   509,   509,   509,   nil,   nil,
+   509,   509,   509,   nil,   509,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   509,   509,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   509,   509,   nil,   509,   509,   509,
+   509,   509,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   277,
+   277,   nil,   nil,   277,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   277,   277,   nil,   277,   277,   277,   277,   277,
+   277,   277,   nil,   nil,   277,   277,   509,   nil,   nil,   277,
+   277,   277,   277,   509,   nil,   nil,   nil,   nil,   509,   509,
+   nil,   nil,   nil,   nil,   nil,   nil,   277,   277,   nil,   277,
+   277,   277,   277,   277,   277,   277,   277,   277,   277,   277,
+   509,   509,   277,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   509,   nil,   521,   521,   521,   509,
+   521,   nil,   277,   nil,   521,   521,   509,   nil,   nil,   521,
+   nil,   521,   521,   521,   521,   521,   521,   521,   nil,   nil,
+   nil,   nil,   nil,   521,   521,   521,   521,   521,   521,   521,
+   nil,   nil,   521,   nil,   nil,   nil,   nil,   nil,   nil,   521,
+   nil,   nil,   521,   521,   521,   521,   521,   521,   521,   521,
+   521,   521,   521,   521,   nil,   521,   521,   nil,   521,   521,
+   521,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   521,   nil,   nil,   521,   nil,   nil,   521,   521,   nil,   nil,
+   521,   nil,   521,   nil,   521,   nil,   521,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   521,   nil,   nil,   nil,   nil,   521,
+   521,   521,   521,   521,   521,   nil,   nil,   nil,   521,   521,
+   nil,   nil,   nil,   nil,   nil,   nil,   521,   nil,   521,   521,
+   521,   521,   nil,   521,   521,   524,   524,   524,   nil,   524,
+   nil,   nil,   nil,   524,   524,   nil,   nil,   nil,   524,   nil,
+   524,   524,   524,   524,   524,   524,   524,   nil,   nil,   nil,
+   nil,   nil,   524,   524,   524,   524,   524,   524,   524,   nil,
+   nil,   524,   nil,   nil,   nil,   nil,   nil,   nil,   524,   nil,
+   nil,   524,   524,   524,   524,   524,   524,   524,   524,   524,
+   524,   524,   524,   nil,   524,   524,   nil,   524,   524,   524,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   524,
+   nil,   nil,   524,   nil,   nil,   524,   524,   nil,   nil,   524,
+   nil,   nil,   nil,   524,   nil,   524,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   524,   nil,   nil,   nil,   nil,   524,   524,
+   524,   524,   524,   524,   nil,   nil,   nil,   524,   524,   nil,
+   nil,   nil,   nil,   nil,   nil,   524,   nil,   524,   524,   524,
+   524,   nil,   524,   524,   526,   526,   526,   nil,   526,   nil,
+   nil,   nil,   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,   nil,   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,
+   nil,   nil,   nil,   nil,   526,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   526,   nil,   nil,   nil,   nil,   526,   526,   526,
+   526,   526,   526,   nil,   nil,   nil,   526,   526,   nil,   nil,
+   nil,   nil,   nil,   nil,   526,   nil,   nil,   526,   526,   526,
+   nil,   526,   526,   531,   531,   531,   531,   531,   nil,   nil,
+   nil,   531,   531,   nil,   nil,   nil,   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,   531,   531,   531,   531,   531,
+   531,   531,   531,   531,   531,   531,   531,   nil,   531,   531,
+   531,   nil,   531,   531,   nil,   531,   531,   531,   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,   531,   nil,   nil,   531,   nil,   531,
+   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,
+   nil,   nil,   531,   531,   nil,   nil,   531,   531,   531,   nil,
+   531,   531,   539,   539,   539,   nil,   539,   nil,   nil,   nil,
+   539,   539,   nil,   nil,   nil,   539,   nil,   539,   539,   539,
+   539,   539,   539,   539,   nil,   nil,   nil,   nil,   nil,   539,
+   539,   539,   539,   539,   539,   539,   nil,   nil,   539,   nil,
+   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,   539,   539,
+   539,   539,   539,   539,   539,   539,   nil,   539,   539,   539,
+   nil,   539,   539,   nil,   nil,   nil,   539,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   539,   nil,   nil,   539,
+   nil,   nil,   539,   539,   nil,   nil,   539,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   539,   539,   539,   539,   539,
+   539,   nil,   nil,   nil,   539,   539,   nil,   nil,   nil,   nil,
+   nil,   nil,   539,   nil,   nil,   539,   539,   539,   nil,   539,
+   539,   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,   nil,   541,   541,
+   541,   541,   541,   541,   541,   nil,   nil,   541,   nil,   nil,
+   nil,   nil,   nil,   nil,   541,   nil,   nil,   541,   541,   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,   541,   nil,   541,
+   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   541,   nil,   541,   541,   541,   541,   nil,   541,   541,
+   547,   547,   547,   nil,   547,   nil,   nil,   nil,   547,   547,
+   nil,   nil,   nil,   547,   nil,   547,   547,   547,   547,   547,
+   547,   547,   nil,   nil,   nil,   nil,   nil,   547,   547,   547,
+   547,   547,   547,   547,   nil,   nil,   547,   nil,   nil,   nil,
+   nil,   nil,   nil,   547,   nil,   nil,   547,   547,   547,   547,
+   547,   547,   547,   547,   nil,   547,   547,   547,   nil,   547,
+   547,   nil,   nil,   nil,   547,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   547,   nil,   nil,   547,   nil,   nil,
+   547,   547,   nil,   nil,   547,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   547,   547,   547,   547,   547,   547,   nil,
+   nil,   nil,   547,   547,   nil,   nil,   nil,   nil,   nil,   nil,
+   547,   nil,   nil,   547,   547,   547,   nil,   547,   547,   550,
+   550,   550,   nil,   550,   nil,   nil,   nil,   550,   550,   nil,
+   nil,   nil,   550,   nil,   550,   550,   550,   550,   550,   550,
+   550,   nil,   nil,   nil,   nil,   nil,   550,   550,   550,   550,
+   550,   550,   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,
+   nil,   nil,   550,   nil,   nil,   550,   550,   550,   550,   550,
+   550,   550,   550,   nil,   550,   550,   550,   nil,   550,   550,
+   nil,   550,   550,   550,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   550,   nil,   nil,   550,   nil,   nil,   550,
+   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,   550,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,
+   nil,   nil,   550,   550,   550,   550,   550,   550,   nil,   nil,
+   nil,   550,   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,
+   nil,   nil,   550,   550,   550,   nil,   550,   550,   551,   551,
+   551,   nil,   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,
+   nil,   551,   nil,   nil,   551,   551,   551,   551,   551,   551,
+   551,   551,   nil,   551,   551,   551,   nil,   551,   551,   nil,
+   551,   551,   551,   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,   551,
+   nil,   nil,   551,   nil,   nil,   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,   551,   551,   nil,   551,   551,   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,   nil,   556,   556,   556,   556,   556,   556,
+   556,   nil,   nil,   556,   nil,   nil,   nil,   nil,   nil,   nil,
+   556,   nil,   nil,   556,   556,   556,   556,   556,   556,   556,
+   556,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   556,   nil,   nil,
+   556,   556,   556,   nil,   556,   556,   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,   nil,   580,   580,   580,   580,   580,   580,   580,
+   nil,   nil,   580,   nil,   nil,   nil,   nil,   nil,   nil,   580,
+   nil,   nil,   580,   580,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   580,   nil,   580,   580,
+   580,   580,   nil,   580,   580,   590,   590,   590,   nil,   590,
+   nil,   nil,   nil,   590,   590,   nil,   nil,   nil,   590,   nil,
+   590,   590,   590,   590,   590,   590,   590,   nil,   nil,   nil,
+   nil,   nil,   590,   590,   590,   590,   590,   590,   590,   nil,
+   nil,   590,   nil,   nil,   nil,   nil,   nil,   nil,   590,   nil,
+   nil,   590,   590,   590,   590,   590,   590,   590,   590,   590,
+   590,   590,   590,   nil,   590,   590,   nil,   590,   590,   590,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   590,
+   nil,   nil,   590,   nil,   nil,   590,   590,   nil,   nil,   590,
+   nil,   590,   nil,   590,   nil,   590,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   590,   nil,   nil,   nil,   nil,   590,   590,
+   590,   590,   590,   590,   nil,   nil,   nil,   590,   590,   nil,
+   nil,   nil,   nil,   nil,   nil,   590,   nil,   590,   590,   590,
+   590,   nil,   590,   590,   600,   600,   600,   nil,   600,   nil,
+   nil,   nil,   600,   600,   nil,   nil,   nil,   600,   nil,   600,
+   600,   600,   600,   600,   600,   600,   nil,   nil,   nil,   nil,
+   nil,   600,   600,   600,   600,   600,   600,   600,   nil,   nil,
+   600,   nil,   nil,   nil,   nil,   nil,   nil,   600,   nil,   nil,
+   600,   600,   600,   600,   600,   600,   600,   600,   nil,   600,
+   600,   600,   nil,   600,   600,   nil,   600,   600,   600,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   600,   nil,
+   nil,   600,   nil,   nil,   600,   600,   nil,   nil,   600,   nil,
+   nil,   nil,   nil,   nil,   600,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   600,   nil,   nil,   nil,   nil,   600,   600,   600,
+   600,   600,   600,   nil,   nil,   nil,   600,   600,   nil,   nil,
+   nil,   nil,   nil,   nil,   600,   nil,   nil,   600,   600,   600,
+   nil,   600,   600,   621,   621,   621,   nil,   621,   nil,   nil,
+   nil,   621,   621,   nil,   nil,   nil,   621,   nil,   621,   621,
+   621,   621,   621,   621,   621,   nil,   nil,   nil,   nil,   nil,
+   621,   621,   621,   621,   621,   621,   621,   nil,   nil,   621,
+   nil,   nil,   nil,   nil,   nil,   nil,   621,   nil,   nil,   621,
+   621,   621,   621,   621,   621,   621,   621,   nil,   621,   621,
+   621,   nil,   621,   621,   nil,   621,   621,   621,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   621,   nil,   nil,
+   621,   nil,   nil,   621,   621,   nil,   nil,   621,   nil,   nil,
+   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   621,   nil,   nil,   nil,   nil,   621,   621,   621,   621,
+   621,   621,   nil,   nil,   nil,   621,   621,   nil,   nil,   nil,
+   nil,   nil,   nil,   621,   nil,   nil,   621,   621,   621,   nil,
+   621,   621,   661,   661,   661,   nil,   661,   nil,   nil,   nil,
+   661,   661,   nil,   nil,   nil,   661,   nil,   661,   661,   661,
+   661,   661,   661,   661,   nil,   nil,   nil,   nil,   nil,   661,
+   661,   661,   661,   661,   661,   661,   nil,   nil,   661,   nil,
+   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,   661,   661,
+   661,   661,   661,   661,   661,   661,   nil,   661,   661,   661,
+   nil,   661,   661,   nil,   661,   661,   661,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,   661,
+   nil,   nil,   661,   661,   nil,   nil,   661,   nil,   661,   nil,
+   nil,   nil,   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   661,   nil,   nil,   nil,   nil,   661,   661,   661,   661,   661,
+   661,   nil,   nil,   nil,   661,   661,   nil,   nil,   nil,   nil,
+   nil,   nil,   661,   nil,   nil,   661,   661,   661,   nil,   661,
+   661,   662,   662,   662,   nil,   662,   nil,   nil,   nil,   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,   662,
+   nil,   nil,   nil,   nil,   662,   662,   662,   662,   662,   662,
+   nil,   nil,   nil,   662,   662,   nil,   nil,   nil,   nil,   nil,
+   nil,   662,   nil,   nil,   662,   662,   662,   nil,   662,   662,
+   663,   663,   663,   nil,   663,   nil,   nil,   nil,   663,   663,
+   nil,   nil,   nil,   663,   nil,   663,   663,   663,   663,   663,
+   663,   663,   nil,   nil,   nil,   nil,   nil,   663,   663,   663,
+   663,   663,   663,   663,   nil,   nil,   663,   nil,   nil,   nil,
+   nil,   nil,   nil,   663,   nil,   nil,   663,   663,   663,   663,
+   663,   663,   663,   663,   663,   663,   663,   663,   nil,   663,
+   663,   nil,   663,   663,   663,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   663,   nil,   nil,   663,   nil,   nil,
+   663,   663,   nil,   nil,   663,   nil,   663,   nil,   663,   nil,
+   663,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   663,   nil,
+   nil,   nil,   nil,   663,   663,   663,   663,   663,   663,   nil,
+   nil,   nil,   663,   663,   nil,   nil,   nil,   nil,   nil,   nil,
+   663,   nil,   663,   663,   663,   663,   nil,   663,   663,   666,
+   666,   666,   nil,   666,   nil,   nil,   nil,   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,   666,   666,   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,   666,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,
+   nil,   nil,   666,   666,   666,   666,   666,   666,   nil,   nil,
+   nil,   666,   666,   nil,   nil,   nil,   nil,   nil,   nil,   666,
+   nil,   nil,   666,   666,   666,   nil,   666,   666,   669,   669,
+   669,   nil,   669,   nil,   nil,   nil,   669,   669,   nil,   nil,
+   nil,   669,   nil,   669,   669,   669,   669,   669,   669,   669,
+   nil,   nil,   nil,   nil,   nil,   669,   669,   669,   669,   669,
+   669,   669,   nil,   nil,   669,   nil,   nil,   nil,   nil,   nil,
+   nil,   669,   nil,   nil,   669,   669,   669,   669,   669,   669,
+   669,   669,   669,   669,   669,   669,   nil,   669,   669,   nil,
+   669,   669,   669,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   669,   nil,   nil,   669,   nil,   nil,   669,   669,
+   nil,   nil,   669,   nil,   669,   nil,   669,   nil,   669,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   nil,
+   nil,   669,   669,   669,   669,   669,   669,   nil,   nil,   nil,
+   669,   669,   nil,   nil,   nil,   nil,   nil,   nil,   669,   nil,
+   669,   669,   669,   669,   nil,   669,   669,   670,   670,   670,
+   nil,   670,   nil,   nil,   nil,   670,   670,   nil,   nil,   nil,
+   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,   670,   670,   670,   670,   670,
+   670,   670,   670,   670,   670,   nil,   670,   670,   nil,   670,
+   670,   670,   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,   670,   nil,
+   nil,   670,   nil,   nil,   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,   nil,   nil,   nil,   670,   nil,   670,
+   670,   670,   670,   nil,   670,   670,   671,   671,   671,   nil,
+   671,   nil,   nil,   nil,   671,   671,   nil,   nil,   nil,   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,   671,   671,   671,   671,   671,   671,
+   nil,   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,   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   671,   nil,   nil,   671,
+   671,   671,   nil,   671,   671,   672,   672,   672,   nil,   672,
+   nil,   nil,   nil,   672,   672,   nil,   nil,   nil,   672,   nil,
+   672,   672,   672,   672,   672,   672,   672,   nil,   nil,   nil,
+   nil,   nil,   672,   672,   672,   672,   672,   672,   672,   nil,
+   nil,   672,   nil,   nil,   nil,   nil,   nil,   nil,   672,   nil,
+   nil,   672,   672,   672,   672,   672,   672,   672,   672,   nil,
+   672,   672,   672,   nil,   672,   672,   nil,   672,   672,   672,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   672,
+   nil,   nil,   672,   nil,   nil,   672,   672,   nil,   nil,   672,
+   nil,   nil,   nil,   nil,   nil,   672,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   672,   nil,   nil,   nil,   nil,   672,   672,
+   672,   672,   672,   672,   nil,   nil,   nil,   672,   672,   nil,
+   nil,   nil,   nil,   nil,   nil,   672,   nil,   nil,   672,   672,
+   672,   nil,   672,   672,   677,   677,   677,   nil,   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,   nil,   677,   nil,   nil,
+   677,   677,   677,   677,   677,   677,   677,   677,   nil,   677,
+   677,   677,   nil,   677,   677,   nil,   677,   677,   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,   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,   677,   677,
+   nil,   677,   677,   678,   678,   678,   nil,   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,   nil,   678,   nil,   nil,   678,
+   678,   678,   678,   678,   678,   678,   678,   nil,   678,   678,
+   678,   nil,   678,   678,   nil,   678,   678,   678,   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,   678,   nil,   nil,   678,   nil,   nil,
+   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,
+   nil,   nil,   nil,   678,   nil,   nil,   678,   678,   678,   nil,
+   678,   678,   702,   702,   702,   nil,   702,   nil,   nil,   nil,
+   702,   702,   nil,   nil,   nil,   702,   nil,   702,   702,   702,
+   702,   702,   702,   702,   nil,   nil,   nil,   nil,   nil,   702,
+   702,   702,   702,   702,   702,   702,   nil,   nil,   702,   nil,
+   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,   702,   702,
+   702,   702,   702,   702,   702,   702,   nil,   702,   702,   702,
+   nil,   702,   702,   nil,   702,   702,   702,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   702,   nil,   nil,   702,
+   nil,   nil,   702,   702,   nil,   nil,   702,   nil,   nil,   nil,
+   nil,   nil,   702,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   702,   nil,   nil,   nil,   nil,   702,   702,   702,   702,   702,
+   702,   nil,   nil,   nil,   702,   702,   nil,   nil,   nil,   nil,
+   nil,   nil,   702,   nil,   nil,   702,   702,   702,   nil,   702,
+   702,   708,   708,   708,   nil,   708,   nil,   nil,   nil,   708,
+   708,   nil,   nil,   nil,   708,   nil,   708,   708,   708,   708,
+   708,   708,   708,   nil,   nil,   nil,   nil,   nil,   708,   708,
+   708,   708,   708,   708,   708,   nil,   nil,   708,   nil,   nil,
+   nil,   nil,   nil,   nil,   708,   nil,   nil,   708,   708,   708,
+   708,   708,   708,   708,   708,   nil,   708,   708,   708,   nil,
+   708,   708,   nil,   nil,   nil,   708,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   708,   nil,   nil,   708,   nil,
+   nil,   708,   708,   nil,   nil,   708,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   708,   708,   708,   708,   708,   708,
+   nil,   nil,   nil,   708,   708,   nil,   nil,   nil,   nil,   nil,
+   nil,   708,   nil,   nil,   708,   708,   708,   nil,   708,   708,
+   719,   719,   719,   nil,   719,   nil,   nil,   nil,   719,   719,
+   nil,   nil,   nil,   719,   nil,   719,   719,   719,   719,   719,
+   719,   719,   nil,   nil,   nil,   nil,   nil,   719,   719,   719,
+   719,   719,   719,   719,   nil,   nil,   719,   nil,   nil,   nil,
+   nil,   nil,   nil,   719,   nil,   nil,   719,   719,   719,   719,
+   719,   719,   719,   719,   nil,   719,   719,   719,   nil,   719,
+   719,   nil,   nil,   nil,   719,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   719,   nil,   nil,   719,   nil,   nil,
+   719,   719,   nil,   nil,   719,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   719,   719,   719,   719,   719,   719,   nil,
+   nil,   nil,   719,   719,   nil,   nil,   nil,   nil,   nil,   nil,
+   719,   nil,   nil,   719,   719,   719,   nil,   719,   719,   725,
+   725,   725,   nil,   725,   nil,   nil,   nil,   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,   725,   nil,   nil,   nil,   725,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   725,   nil,   nil,
+   nil,   nil,   725,   725,   725,   725,   725,   725,   nil,   nil,
+   nil,   725,   725,   nil,   nil,   nil,   nil,   nil,   nil,   725,
+   nil,   nil,   725,   725,   725,   nil,   725,   725,   730,   730,
+   730,   nil,   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,
+   nil,   730,   nil,   nil,   730,   730,   730,   730,   730,   730,
+   730,   730,   730,   730,   730,   730,   nil,   730,   730,   nil,
+   730,   730,   730,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   730,   nil,   nil,   730,   nil,   nil,   730,   730,
+   nil,   nil,   730,   nil,   730,   nil,   nil,   nil,   730,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   730,   nil,   nil,   nil,
+   nil,   730,   730,   730,   730,   730,   730,   nil,   nil,   nil,
+   730,   730,   nil,   nil,   nil,   nil,   nil,   nil,   730,   nil,
+   730,   730,   730,   730,   nil,   730,   730,   733,   733,   733,
+   nil,   733,   nil,   nil,   nil,   733,   733,   nil,   nil,   nil,
+   733,   nil,   733,   733,   733,   733,   733,   733,   733,   nil,
+   nil,   nil,   nil,   nil,   733,   733,   733,   733,   733,   733,
+   733,   nil,   nil,   733,   nil,   nil,   nil,   nil,   nil,   nil,
+   733,   nil,   nil,   733,   733,   733,   733,   733,   733,   733,
+   733,   733,   733,   733,   733,   nil,   733,   733,   nil,   733,
+   733,   733,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   733,   nil,   nil,   733,   nil,   nil,   733,   733,   nil,
+   nil,   733,   nil,   nil,   nil,   nil,   nil,   733,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   733,   nil,   nil,   nil,   nil,
+   733,   733,   733,   733,   733,   733,   nil,   nil,   nil,   733,
+   733,   nil,   nil,   nil,   nil,   nil,   nil,   733,   nil,   733,
+   733,   733,   733,   nil,   733,   733,   747,   747,   747,   nil,
+   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,   nil,   747,
+   nil,   nil,   747,   747,   747,   747,   747,   747,   747,   747,
+   nil,   747,   747,   747,   nil,   747,   747,   nil,   747,   747,
+   747,   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,   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,
+   747,   747,   nil,   747,   747,   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,   nil,   759,   759,   759,   759,   759,   759,   759,   nil,
+   nil,   759,   nil,   nil,   nil,   nil,   nil,   nil,   759,   nil,
+   nil,   759,   759,   759,   759,   759,   759,   759,   759,   nil,
+   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   759,   nil,   nil,   759,   759,
+   759,   nil,   759,   759,   779,   779,   779,   nil,   779,   nil,
+   nil,   nil,   779,   779,   nil,   nil,   nil,   779,   nil,   779,
+   779,   779,   779,   779,   779,   779,   nil,   nil,   nil,   nil,
+   nil,   779,   779,   779,   779,   779,   779,   779,   nil,   nil,
+   779,   nil,   nil,   nil,   nil,   nil,   nil,   779,   nil,   nil,
+   779,   779,   779,   779,   779,   779,   779,   779,   nil,   779,
+   779,   779,   nil,   779,   779,   nil,   779,   779,   779,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   779,   nil,
+   nil,   779,   nil,   nil,   779,   779,   nil,   nil,   779,   nil,
+   nil,   nil,   nil,   nil,   779,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   779,   nil,   nil,   nil,   nil,   779,   779,   779,
+   779,   779,   779,   nil,   nil,   nil,   779,   779,   nil,   nil,
+   nil,   nil,   nil,   nil,   779,   nil,   nil,   779,   779,   779,
+   nil,   779,   779,   801,   801,   801,   nil,   801,   nil,   nil,
+   nil,   801,   801,   nil,   nil,   nil,   801,   nil,   801,   801,
+   801,   801,   801,   801,   801,   nil,   nil,   nil,   nil,   nil,
+   801,   801,   801,   801,   801,   801,   801,   nil,   nil,   801,
+   nil,   nil,   nil,   nil,   nil,   nil,   801,   nil,   nil,   801,
+   801,   801,   801,   801,   801,   801,   801,   nil,   801,   801,
+   801,   nil,   801,   801,   nil,   801,   801,   801,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   801,   nil,   nil,
+   801,   nil,   nil,   801,   801,   nil,   nil,   801,   nil,   nil,
+   nil,   nil,   nil,   801,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   801,   nil,   nil,   nil,   nil,   801,   801,   801,   801,
+   801,   801,   nil,   nil,   nil,   801,   801,   nil,   nil,   nil,
+   nil,   nil,   nil,   801,   nil,   nil,   801,   801,   801,   nil,
+   801,   801,   808,   808,   808,   nil,   808,   nil,   nil,   nil,
+   808,   808,   nil,   nil,   nil,   808,   nil,   808,   808,   808,
+   808,   808,   808,   808,   nil,   nil,   nil,   nil,   nil,   808,
+   808,   808,   808,   808,   808,   808,   nil,   nil,   808,   nil,
+   nil,   nil,   nil,   nil,   nil,   808,   nil,   nil,   808,   808,
+   808,   808,   808,   808,   808,   808,   nil,   808,   808,   808,
+   nil,   808,   808,   nil,   808,   808,   808,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   808,   nil,   nil,   808,
+   nil,   nil,   808,   808,   nil,   nil,   808,   nil,   nil,   nil,
+   nil,   nil,   808,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   808,   nil,   nil,   nil,   nil,   808,   808,   808,   808,   808,
+   808,   nil,   nil,   nil,   808,   808,   nil,   nil,   nil,   nil,
+   nil,   nil,   808,   nil,   nil,   808,   808,   808,   nil,   808,
+   808,   821,   821,   821,   nil,   821,   nil,   nil,   nil,   821,
+   821,   nil,   nil,   nil,   821,   nil,   821,   821,   821,   821,
+   821,   821,   821,   nil,   nil,   nil,   nil,   nil,   821,   821,
+   821,   821,   821,   821,   821,   nil,   nil,   821,   nil,   nil,
+   nil,   nil,   nil,   nil,   821,   nil,   nil,   821,   821,   821,
+   821,   821,   821,   821,   821,   nil,   821,   821,   821,   nil,
+   821,   821,   nil,   821,   821,   821,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,   821,   nil,
+   nil,   821,   821,   nil,   nil,   821,   nil,   nil,   nil,   nil,
+   nil,   821,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   821,
+   nil,   nil,   nil,   nil,   821,   821,   821,   821,   821,   821,
+   nil,   nil,   nil,   821,   821,   nil,   nil,   nil,   nil,   nil,
+   nil,   821,   nil,   nil,   821,   821,   821,   nil,   821,   821,
+   822,   822,   822,   nil,   822,   nil,   nil,   nil,   822,   822,
+   nil,   nil,   nil,   822,   nil,   822,   822,   822,   822,   822,
+   822,   822,   nil,   nil,   nil,   nil,   nil,   822,   822,   822,
+   822,   822,   822,   822,   nil,   nil,   822,   nil,   nil,   nil,
+   nil,   nil,   nil,   822,   nil,   nil,   822,   822,   822,   822,
+   822,   822,   822,   822,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   822,   nil,   nil,   822,   822,   822,   nil,   822,   822,   823,
+   823,   823,   nil,   823,   nil,   nil,   nil,   823,   823,   nil,
+   nil,   nil,   823,   nil,   823,   823,   823,   823,   823,   823,
+   823,   nil,   nil,   nil,   nil,   nil,   823,   823,   823,   823,
+   823,   823,   823,   nil,   nil,   823,   nil,   nil,   nil,   nil,
+   nil,   nil,   823,   nil,   nil,   823,   823,   823,   823,   823,
+   823,   823,   823,   nil,   823,   823,   823,   nil,   823,   823,
+   nil,   823,   823,   823,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   823,   nil,   nil,   823,   nil,   nil,   823,
+   823,   nil,   nil,   823,   nil,   nil,   nil,   nil,   nil,   823,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   823,   nil,   nil,
+   nil,   nil,   823,   823,   823,   823,   823,   823,   nil,   nil,
+   nil,   823,   823,   nil,   nil,   nil,   nil,   nil,   nil,   823,
+   nil,   nil,   823,   823,   823,   nil,   823,   823,   824,   824,
+   824,   nil,   824,   nil,   nil,   nil,   824,   824,   nil,   nil,
+   nil,   824,   nil,   824,   824,   824,   824,   824,   824,   824,
+   nil,   nil,   nil,   nil,   nil,   824,   824,   824,   824,   824,
+   824,   824,   nil,   nil,   824,   nil,   nil,   nil,   nil,   nil,
+   nil,   824,   nil,   nil,   824,   824,   824,   824,   824,   824,
+   824,   824,   nil,   824,   824,   824,   nil,   824,   824,   nil,
+   824,   824,   824,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   824,   nil,   nil,   824,   nil,   nil,   824,   824,
+   nil,   nil,   824,   nil,   nil,   nil,   nil,   nil,   824,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,   nil,   nil,
+   nil,   824,   824,   824,   824,   824,   824,   nil,   nil,   nil,
+   824,   824,   nil,   nil,   nil,   nil,   nil,   nil,   824,   nil,
+   nil,   824,   824,   824,   nil,   824,   824,   826,   826,   826,
+   nil,   826,   nil,   nil,   nil,   826,   826,   nil,   nil,   nil,
+   826,   nil,   826,   826,   826,   826,   826,   826,   826,   nil,
+   nil,   nil,   nil,   nil,   826,   826,   826,   826,   826,   826,
+   826,   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,   nil,
+   826,   nil,   nil,   826,   826,   826,   826,   826,   826,   826,
+   826,   nil,   826,   826,   826,   nil,   826,   826,   nil,   826,
+   826,   826,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   826,   nil,   nil,   826,   nil,   nil,   826,   826,   nil,
+   nil,   826,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,   nil,   nil,
+   826,   826,   826,   826,   826,   826,   nil,   nil,   nil,   826,
+   826,   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,
+   826,   826,   826,   nil,   826,   826,   858,   858,   858,   nil,
+   858,   nil,   nil,   nil,   858,   858,   nil,   nil,   nil,   858,
+   nil,   858,   858,   858,   858,   858,   858,   858,   nil,   nil,
+   nil,   nil,   nil,   858,   858,   858,   858,   858,   858,   858,
+   nil,   nil,   858,   nil,   nil,   nil,   nil,   nil,   nil,   858,
+   nil,   nil,   858,   858,   858,   858,   858,   858,   858,   858,
+   nil,   858,   858,   858,   nil,   858,   858,   nil,   858,   858,
+   858,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   858,   nil,   nil,   858,   nil,   nil,   858,   858,   nil,   nil,
+   858,   nil,   nil,   nil,   nil,   nil,   858,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   858,   nil,   nil,   nil,   nil,   858,
+   858,   858,   858,   858,   858,   nil,   nil,   nil,   858,   858,
+   nil,   nil,   nil,   nil,   nil,   nil,   858,   nil,   nil,   858,
+   858,   858,   nil,   858,   858,   865,   865,   865,   nil,   865,
+   nil,   nil,   nil,   865,   865,   nil,   nil,   nil,   865,   nil,
+   865,   865,   865,   865,   865,   865,   865,   nil,   nil,   nil,
+   nil,   nil,   865,   865,   865,   865,   865,   865,   865,   nil,
+   nil,   865,   nil,   nil,   nil,   nil,   nil,   nil,   865,   nil,
+   nil,   865,   865,   865,   865,   865,   865,   865,   865,   nil,
+   865,   865,   865,   nil,   865,   865,   nil,   865,   865,   865,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   865,
+   nil,   nil,   865,   nil,   nil,   865,   865,   nil,   nil,   865,
+   nil,   nil,   nil,   nil,   nil,   865,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   865,   nil,   nil,   nil,   nil,   865,   865,
+   865,   865,   865,   865,   nil,   nil,   nil,   865,   865,   nil,
+   nil,   nil,   nil,   nil,   nil,   865,   nil,   nil,   865,   865,
+   865,   nil,   865,   865,   913,   913,   913,   nil,   913,   nil,
+   nil,   nil,   913,   913,   nil,   nil,   nil,   913,   nil,   913,
+   913,   913,   913,   913,   913,   913,   nil,   nil,   nil,   nil,
+   nil,   913,   913,   913,   913,   913,   913,   913,   nil,   nil,
+   913,   nil,   nil,   nil,   nil,   nil,   nil,   913,   nil,   nil,
+   913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
+   913,   913,   nil,   913,   913,   nil,   913,   913,   913,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   913,   nil,
+   nil,   913,   nil,   nil,   913,   913,   nil,   nil,   913,   nil,
+   nil,   nil,   913,   nil,   913,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   913,   nil,   nil,   nil,   nil,   913,   913,   913,
+   913,   913,   913,   nil,   nil,   nil,   913,   913,   nil,   nil,
+   nil,   nil,   nil,   nil,   913,   nil,   913,   913,   913,   913,
+   nil,   913,   913,   914,   914,   914,   nil,   914,   nil,   nil,
+   nil,   914,   914,   nil,   nil,   nil,   914,   nil,   914,   914,
+   914,   914,   914,   914,   914,   nil,   nil,   nil,   nil,   nil,
+   914,   914,   914,   914,   914,   914,   914,   nil,   nil,   914,
+   nil,   nil,   nil,   nil,   nil,   nil,   914,   nil,   nil,   914,
+   914,   914,   914,   914,   914,   914,   914,   nil,   914,   914,
+   914,   nil,   914,   914,   nil,   914,   914,   914,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   914,   nil,   nil,
+   914,   nil,   nil,   914,   914,   nil,   nil,   914,   nil,   nil,
+   nil,   nil,   nil,   914,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   914,   nil,   nil,   nil,   nil,   914,   914,   914,   914,
+   914,   914,   nil,   nil,   nil,   914,   914,   nil,   nil,   nil,
+   nil,   nil,   nil,   914,   nil,   nil,   914,   914,   914,   nil,
+   914,   914,   926,   926,   926,   nil,   926,   nil,   nil,   nil,
+   926,   926,   nil,   nil,   nil,   926,   nil,   926,   926,   926,
+   926,   926,   926,   926,   nil,   nil,   nil,   nil,   nil,   926,
+   926,   926,   926,   926,   926,   926,   nil,   nil,   926,   nil,
+   nil,   nil,   nil,   nil,   nil,   926,   nil,   nil,   926,   926,
+   926,   926,   926,   926,   926,   926,   nil,   926,   926,   926,
+   nil,   926,   926,   nil,   nil,   nil,   926,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   926,   nil,   nil,   926,
+   nil,   nil,   926,   926,   nil,   nil,   926,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   926,   926,   926,   926,   926,
+   926,   nil,   nil,   nil,   926,   926,   nil,   nil,   nil,   nil,
+   nil,   nil,   926,   nil,   nil,   926,   926,   926,   nil,   926,
+   926,   935,   935,   935,   nil,   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,   nil,   935,   nil,   nil,   935,   935,   935,
+   935,   935,   935,   935,   935,   nil,   935,   935,   935,   nil,
+   935,   935,   nil,   nil,   nil,   935,   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,   935,   nil,   nil,   935,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   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,   935,   935,   nil,   935,   935,
+   943,   943,   943,   nil,   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,   nil,   943,   nil,   nil,   943,   943,   943,   943,
+   943,   943,   943,   943,   nil,   943,   943,   943,   nil,   943,
+   943,   nil,   943,   943,   943,   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,   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,   nil,   nil,   nil,
+   943,   nil,   nil,   943,   943,   943,   nil,   943,   943,   984,
+   984,   984,   nil,   984,   nil,   nil,   nil,   984,   984,   nil,
+   nil,   nil,   984,   nil,   984,   984,   984,   984,   984,   984,
+   984,   nil,   nil,   nil,   nil,   nil,   984,   984,   984,   984,
+   984,   984,   984,   nil,   nil,   984,   nil,   nil,   nil,   nil,
+   nil,   nil,   984,   nil,   nil,   984,   984,   984,   984,   984,
+   984,   984,   984,   nil,   984,   984,   984,   nil,   984,   984,
+   nil,   nil,   nil,   984,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   984,   nil,   nil,   984,   nil,   nil,   984,
+   984,   nil,   nil,   984,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   984,   984,   984,   984,   984,   984,   nil,   nil,
+   nil,   984,   984,   nil,   nil,   nil,   nil,   nil,   nil,   984,
+   nil,   nil,   984,   984,   984,   nil,   984,   984,   998,   998,
+   998,   nil,   998,   nil,   nil,   nil,   998,   998,   nil,   nil,
+   nil,   998,   nil,   998,   998,   998,   998,   998,   998,   998,
+   nil,   nil,   nil,   nil,   nil,   998,   998,   998,   998,   998,
+   998,   998,   nil,   nil,   998,   nil,   nil,   nil,   nil,   nil,
+   nil,   998,   nil,   nil,   998,   998,   998,   998,   998,   998,
+   998,   998,   nil,   998,   998,   998,   nil,   998,   998,   nil,
+   998,   998,   998,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   998,   nil,   nil,   998,   nil,   nil,   998,   998,
+   nil,   nil,   998,   nil,   nil,   nil,   nil,   nil,   998,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   998,   nil,   nil,   nil,
+   nil,   998,   998,   998,   998,   998,   998,   nil,   nil,   nil,
+   998,   998,   nil,   nil,   nil,   nil,   nil,   nil,   998,   nil,
+   nil,   998,   998,   998,   nil,   998,   998,  1029,  1029,  1029,
+   nil,  1029,   nil,   nil,   nil,  1029,  1029,   nil,   nil,   nil,
+  1029,   nil,  1029,  1029,  1029,  1029,  1029,  1029,  1029,   nil,
+   nil,   nil,   nil,   nil,  1029,  1029,  1029,  1029,  1029,  1029,
+  1029,   nil,   nil,  1029,   nil,   nil,   nil,   nil,   nil,   nil,
+  1029,   nil,   nil,  1029,  1029,  1029,  1029,  1029,  1029,  1029,
+  1029,  1029,  1029,  1029,  1029,   nil,  1029,  1029,   nil,  1029,
+  1029,  1029,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1029,   nil,   nil,  1029,   nil,   nil,  1029,  1029,   nil,
+   nil,  1029,   nil,  1029,   nil,  1029,   nil,  1029,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1029,   nil,   nil,   nil,   nil,
+  1029,  1029,  1029,  1029,  1029,  1029,   nil,   nil,   nil,  1029,
+  1029,   nil,   nil,   nil,   nil,   nil,   nil,  1029,   nil,  1029,
+  1029,  1029,  1029,   nil,  1029,  1029,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,   nil,   nil,   nil,   nil,   nil,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,   nil,    11,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
+   nil,    11,    11,    11,    11,    11,    11,    11,   nil,   nil,
+    11,    11,   nil,   nil,   nil,    11,    11,    11,    11,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,   nil,   nil,    11,    11,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,   nil,   nil,   nil,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,   nil,
+   nil,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
+    12,   nil,   nil,    12,    12,   nil,   nil,   nil,    12,    12,
+    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
+   nil,    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    12,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,   nil,   nil,   nil,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,   nil,
+   nil,   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,   nil,    75,   nil,   nil,
+   nil,   nil,   nil,   nil,    75,    75,   nil,    75,    75,    75,
+    75,    75,    75,    75,   nil,   nil,    75,    75,   nil,   nil,
+   nil,    75,    75,    75,    75,   nil,   nil,   nil,   nil,   nil,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,
+   nil,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    75,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
+   nil,   nil,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   nil,   nil,   nil,   nil,   nil,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
+   105,   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,
+   105,   105,   105,   105,   105,   105,   105,   nil,   nil,   105,
+   105,   nil,   nil,   nil,   105,   105,   105,   105,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,   105,   nil,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   nil,   nil,   105,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,   426,   426,
+   426,   426,   426,   426,   426,   426,   426,   426,   426,   426,
+   426,   426,   426,   426,   426,   426,   426,   426,   426,   426,
+   426,   426,   nil,   nil,   nil,   426,   426,   426,   426,   426,
+   426,   426,   426,   426,   426,   nil,   nil,   nil,   nil,   nil,
+   426,   426,   426,   426,   426,   426,   426,   426,   426,   nil,
+   nil,   426,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   426,   426,   nil,   426,   426,   426,   426,   426,   426,   426,
+   nil,   nil,   426,   426,   nil,   nil,   nil,   426,   426,   426,
+   426,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   426,   426,   nil,   426,   426,   426,
+   426,   426,   426,   426,   426,   426,   426,   426,   nil,   nil,
+   426,   426,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   426,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   426,   658,   658,   658,   658,   658,   658,   658,   658,   658,
+   658,   658,   658,   658,   658,   658,   658,   658,   658,   658,
+   658,   658,   658,   658,   658,   nil,   nil,   nil,   658,   658,
+   658,   658,   658,   658,   658,   658,   658,   658,   nil,   nil,
+   nil,   nil,   nil,   658,   658,   658,   658,   658,   658,   658,
+   658,   658,   nil,   nil,   658,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   658,   658,   nil,   658,   658,   658,   658,
+   658,   658,   658,   nil,   nil,   658,   658,   nil,   nil,   nil,
+   658,   658,   658,   658,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   658,   658,   nil,
+   658,   658,   658,   658,   658,   658,   658,   658,   658,   658,
+   658,   nil,   nil,   658,   658,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   658,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   658,   765,   765,   765,   765,   765,   765,
+   765,   765,   765,   765,   765,   765,   765,   765,   765,   765,
+   765,   765,   765,   765,   765,   765,   765,   765,   nil,   nil,
+   nil,   765,   765,   765,   765,   765,   765,   765,   765,   765,
+   765,   nil,   nil,   nil,   nil,   nil,   765,   765,   765,   765,
+   765,   765,   765,   765,   765,   nil,   nil,   765,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   765,   765,   nil,   765,
+   765,   765,   765,   765,   765,   765,   nil,   nil,   765,   765,
+   nil,   nil,   nil,   765,   765,   765,   765,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   765,   765,   nil,   765,   765,   765,   765,   765,   765,   765,
+   765,   765,   765,   765,   nil,   nil,   765,   nil,   nil,   nil,
+   nil,   228,   228,   nil,   nil,   228,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   228,   228,   765,   228,   228,   228,
+   228,   228,   228,   228,   nil,   nil,   228,   228,   nil,   nil,
+   nil,   228,   228,   228,   228,   nil,   nil,   nil,   nil,   nil,
+   228,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   228,   228,
+   nil,   228,   228,   228,   228,   228,   228,   228,   228,   228,
+   228,   228,   nil,   nil,   228,   nil,   nil,   nil,   nil,   229,
+   229,   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   229,   229,   228,   229,   229,   229,   229,   229,
+   229,   229,   nil,   nil,   229,   229,   nil,   nil,   nil,   229,
+   229,   229,   229,   nil,   nil,   nil,   nil,   nil,   229,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,   nil,   229,
+   229,   229,   229,   229,   229,   229,   229,   229,   229,   229,
+   nil,   nil,   229,   nil,   nil,   nil,   nil,   477,   477,   nil,
+   nil,   477,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   477,   477,   229,   477,   477,   477,   477,   477,   477,   477,
+   nil,   nil,   477,   477,   nil,   nil,   nil,   477,   477,   477,
+   477,   nil,   nil,   nil,   nil,   nil,   477,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   477,   477,   nil,   477,   477,   477,
+   477,   477,   477,   477,   477,   477,   477,   477,   nil,   nil,
+   477,   nil,   nil,   nil,   nil,   478,   478,   nil,   nil,   478,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   478,   478,
+   477,   478,   478,   478,   478,   478,   478,   478,   nil,   nil,
+   478,   478,   nil,   nil,   nil,   478,   478,   478,   478,   nil,
+   nil,   nil,   nil,   nil,   478,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   478,   478,   nil,   478,   478,   478,   478,   478,
+   478,   478,   478,   478,   478,   478,   nil,   nil,   478,   nil,
+   nil,   nil,   nil,   542,   542,   nil,   nil,   542,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   542,   542,   478,   542,
+   542,   542,   542,   542,   542,   542,   nil,   nil,   542,   542,
+   nil,   nil,   nil,   542,   542,   542,   542,   nil,   nil,   nil,
+   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   542,   542,   nil,   542,   542,   542,   542,   542,   542,   542,
+   542,   542,   542,   542,   nil,   nil,   542,   nil,   nil,   nil,
+   nil,   543,   543,   nil,   nil,   543,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   543,   543,   542,   543,   543,   543,
+   543,   543,   543,   543,   nil,   nil,   543,   543,   nil,   nil,
+   nil,   543,   543,   543,   543,   nil,   nil,   nil,   nil,   nil,
+   543,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   543,   543,
+   nil,   543,   543,   543,   543,   543,   543,   543,   543,   543,
+   543,   543,   nil,   nil,   543,   nil,   nil,   nil,   nil,   552,
+   552,   nil,   nil,   552,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   552,   552,   543,   552,   552,   552,   552,   552,
+   552,   552,   nil,   nil,   552,   552,   nil,   nil,   nil,   552,
+   552,   552,   552,   nil,   nil,   nil,   nil,   nil,   552,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   552,   552,   nil,   552,
+   552,   552,   552,   552,   552,   552,   552,   552,   552,   552,
+   nil,   nil,   552,   nil,   nil,   nil,   nil,   553,   553,   nil,
+   nil,   553,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   553,   553,   552,   553,   553,   553,   553,   553,   553,   553,
+   nil,   nil,   553,   553,   nil,   nil,   nil,   553,   553,   553,
+   553,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   553,   553,   nil,   553,   553,   553,
+   553,   553,   553,   553,   553,   553,   553,   553,   nil,   nil,
+   553,   nil,   nil,   nil,   nil,   581,   581,   nil,   nil,   581,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   581,   581,
+   553,   581,   581,   581,   581,   581,   581,   581,   nil,   nil,
+   581,   581,   nil,   nil,   nil,   581,   581,   581,   581,   nil,
+   nil,   nil,   nil,   nil,   581,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   581,   581,   nil,   581,   581,   581,   581,   581,
+   581,   581,   581,   581,   581,   581,   nil,   nil,   581,   nil,
+   nil,   nil,   nil,   582,   582,   nil,   nil,   582,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   582,   582,   581,   582,
+   582,   582,   582,   582,   582,   582,   nil,   nil,   582,   582,
+   nil,   nil,   nil,   582,   582,   582,   582,   nil,   nil,   nil,
+   nil,   nil,   582,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   582,   582,   nil,   582,   582,   582,   582,   582,   582,   582,
+   582,   582,   582,   582,   nil,   nil,   582,   nil,   nil,   nil,
+   nil,   588,   588,   nil,   nil,   588,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   588,   588,   582,   588,   588,   588,
+   588,   588,   588,   588,   nil,   nil,   588,   588,   nil,   nil,
+   nil,   588,   588,   588,   588,   nil,   nil,   nil,   nil,   nil,
+   588,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   588,   588,
+   nil,   588,   588,   588,   588,   588,   588,   588,   588,   588,
+   588,   588,   nil,   nil,   588,   nil,   nil,   nil,   nil,   589,
+   589,   nil,   nil,   589,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   589,   589,   588,   589,   589,   589,   589,   589,
+   589,   589,   nil,   nil,   589,   589,   nil,   nil,   nil,   589,
+   589,   589,   589,   nil,   nil,   nil,   nil,   nil,   589,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   589,   589,   nil,   589,
+   589,   589,   589,   589,   589,   589,   589,   589,   589,   589,
+   nil,   nil,   589,   nil,   nil,   nil,   nil,   664,   664,   nil,
+   nil,   664,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   664,   664,   589,   664,   664,   664,   664,   664,   664,   664,
+   nil,   nil,   664,   664,   nil,   nil,   nil,   664,   664,   664,
+   664,   nil,   nil,   nil,   nil,   nil,   664,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   664,   664,   nil,   664,   664,   664,
+   664,   664,   664,   664,   664,   664,   664,   664,   nil,   nil,
+   664,   nil,   nil,   nil,   nil,   665,   665,   nil,   nil,   665,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   665,   665,
+   664,   665,   665,   665,   665,   665,   665,   665,   nil,   nil,
+   665,   665,   nil,   nil,   nil,   665,   665,   665,   665,   nil,
+   nil,   nil,   nil,   nil,   665,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   665,   665,   nil,   665,   665,   665,   665,   665,
+   665,   665,   665,   665,   665,   665,   nil,   978,   665,   978,
+   978,   978,   978,   978,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   978,   nil,   nil,   nil,   nil,   665,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   978,  1025,  1025,   nil,   nil,
+  1025,   nil,   nil,   nil,   978,   978,   978,   978,   nil,  1025,
+  1025,   nil,  1025,  1025,  1025,  1025,  1025,  1025,  1025,   nil,
+   nil,  1025,  1025,   nil,   nil,   nil,  1025,  1025,  1025,  1025,
+   nil,   nil,   nil,   nil,   nil,  1025,   nil,   nil,   nil,   nil,
+   978,   nil,   nil,  1025,  1025,   nil,  1025,  1025,  1025,  1025,
+  1025,  1025,  1025,  1025,  1025,  1025,  1025,   nil,   nil,  1025,
+   nil,   nil,   nil,   nil,  1030,  1030,   nil,   nil,  1030,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1030,  1030,  1025,
+  1030,  1030,  1030,  1030,  1030,  1030,  1030,   nil,   nil,  1030,
+  1030,   nil,   nil,   nil,  1030,  1030,  1030,  1030,   nil,   nil,
+   nil,   nil,   nil,  1030,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1030,  1030,   nil,  1030,  1030,  1030,  1030,  1030,  1030,
+  1030,  1030,  1030,  1030,  1030,   nil,   nil,  1030,   nil,   nil,
+   nil,   nil,  1031,  1031,   nil,   nil,  1031,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1031,  1031,  1030,  1031,  1031,
+  1031,  1031,  1031,  1031,  1031,   nil,   nil,  1031,  1031,   nil,
+   nil,   nil,  1031,  1031,  1031,  1031,   nil,   nil,   nil,   nil,
+   nil,  1031,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1031,
+  1031,   nil,  1031,  1031,  1031,  1031,  1031,  1031,  1031,  1031,
+  1031,  1031,  1031,   nil,  1049,  1031,  1049,  1049,  1049,  1049,
+  1049,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1049,   nil,   nil,   nil,   nil,  1031,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1049,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1049,  1049,  1049,  1049,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1049 ]
+
+racc_action_pointer = [
+   nil,    15,  1066,    34,   nil,   435,   nil,   nil,  5125,   797,
+   nil, 23544, 23677,   -67,   nil,   -85,   -56,   493,     9,   100,
+   147,   nil,   -80,  5264,  1346,    87,   nil,   -34,   nil,    75,
+  5398,  5526,  5656,  5795,  5934,   nil,  1206,  6073,  6212,   nil,
+    66,   181,   259,   197,   185,  6351,  6490,   577,  6629,   170,
+   439,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  6763,   nil,  6900,   nil,   nil,   -22,   nil,  7039,  7178,   nil,
+   nil,  7317,  7456,  7595,  7734, 23810,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    97,   nil,   nil,   nil,   nil,   nil,   nil,   184,
+   186,   198,   200,   nil,   nil, 23943,   nil,   nil,   nil,   nil,
+   nil,   nil,     0,   nil,   nil,   132,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  7873,   nil,
+   nil,   nil,   nil,  8012,  8151,  8290,  8429,  8568,   238,   nil,
+   492,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   230,
+   nil,  1346,  8707,  8846,  8985,  9124,  9263,  9402, 24410, 24478,
+   nil,  9541,  9680,  9819,   nil,   nil,   536,   -81,    83,   367,
+   155,   282,   367,   nil,  9958,  1486,   368, 10097, 10236, 10375,
+ 10514, 10653, 10792, 10931, 11070, 11209, 11348, 11487, 11626, 11765,
+ 11904, 12043, 12182, 12321, 12460, 12599, 12738, 12877, 13016,   nil,
+   nil,   nil,   nil, 13155,   nil,   nil,   nil, 16468,   nil,   nil,
+   381, 13294, 13433,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil, 13572,   nil,  1486,   nil,   353,   355,   nil, 13711,   398,
+ 13850,   nil, 13989, 14128,   nil,   nil,   461,   nil,   nil, 14267,
+  1191,   nil,   346,  1626,   368,   405,   391, 14406,  1766,   620,
+   725,   726,   476,   764,   nil,   449,   421,    77,   nil,   nil,
+   nil,   483,   187,   457, 14545,   nil,   289,   527,   795,   nil,
+   542, 14684,   nil, 14823,  1906,  1331,   492, 14962, 15101,   nil,
+   526,   -11,   -10, 15240,  2046,  2186,   512,   604,   493,     5,
+     6,   796,   573,     7,   629,   nil,   nil,   172,   267,   323,
+   nil,   800,   nil,   564, 15379,   nil,   nil,   nil,   103,   113,
+   203,   213,   230,   233,   302,   335,   368,   nil,   372,   nil,
+   nil,   459,   nil,   262,   nil,   306,   nil,   133,   nil,   572,
+   326,   nil,   597,   339,   nil,   600,   -42,   nil,   601,   -41,
+   nil,   370,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil, 24076,   nil,   nil,   nil,
+   nil,   613,   nil,   nil,   620, 15518,   621,   nil,   nil,   610,
+   nil,   850,   222,   nil,   nil,   nil,  1066,   nil,   nil,   nil,
+   nil,   nil,  1206,   630,   nil,   nil,   629,   631,   313,   356,
+  6900,   nil,   nil,   nil,   264,   396,   682,   nil,   nil, 15652,
+ 15784,   nil,   nil,   nil,   -16,   nil,   691, 24546, 24614, 15917,
+   269, 16056, 16195, 16334,  2186,  2326,   341,   714,   716,   717,
+   718,   727,   955,  3586,  3610,  2466,  2606,  2746,  2886,  3026,
+  3166,   -50,   485,  3306,  3446,  1626,   742,   786,   nil, 16468,
+   nil,   nil,   nil,   nil,   670,   nil,   nil,   nil,   671,   nil,
+   nil, 16594,   nil,   nil, 16733,   nil, 16872,   nil,   nil,   nil,
+   nil, 17011,  1471,   695,   688,   686,   nil,   nil,   687, 17150,
+   701, 17289, 24682, 24750,   851,   740,   nil, 17428,   715,   nil,
+ 17567, 17706, 24818, 24886,   872,  1766, 17845,   843,   843,   728,
+   nil,   nil,   392,   417,   729,   743,   nil,   451,   794,  2326,
+   872,   nil,  2466,    24,   878,   879,   876,   893,   nil,   nil,
+ 17984, 24954, 25022,     8,   nil,   nil,   863,   nil, 25090, 25158,
+ 18123,   nil,   nil,   nil,   615,  2606,   822,   nil,   nil,   nil,
+ 18262,   nil,   591,   nil,   787,   793,   nil,   796,   797,   798,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,   528,   nil,
+   nil, 18401,   nil,   nil,   nil,   896,   nil,   nil,   nil,   907,
+   nil,   nil,   911,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   172,   nil,   nil,   191,   nil,   nil,
+   nil,   838,   nil,   nil,   839,   nil,  2746,   nil, 24209,   nil,
+   841, 18540, 18679, 18818, 25226, 25294, 18957,   390,   879, 19096,
+ 19235, 19374, 19513,   883,   nil,   nil,   nil, 19652, 19791,   885,
+   nil,   nil,   nil,   273,   275,   528,   660,   859,   858,   nil,
+   105,   962,    64,   nil,   nil,   877,   nil,   997,   nil,   881,
+   nil,   925, 19930,   nil,   nil,   nil,   nil,  -104, 20069,   885,
+   nil,   890,   127,   153,   929,   304,   894,   930,   895, 20208,
+   nil,   959,   -14,   178,   nil, 20347,   nil,   nil,   nil,   nil,
+ 20486,   nil,   nil, 20625,   nil,   nil,   nil,   650,   nil,  1020,
+   nil,   nil,   nil,   nil,   nil,  1036,   nil, 20764,   921,    24,
+    28,    93,   138,  2886,   329,   927,   nil,   923,  3026, 20903,
+   585,  1043,  3166,   723,   853, 24342,    56,    30,   937,   219,
+   nil,   nil,   582,  5362,   nil,  5490,   nil,  5308,   nil, 21042,
+   nil,   624,   nil,   935,   936,   860,   947,   nil,   nil,   nil,
+   nil,  1049,  3306,   nil,   nil,   nil,   nil,   nil,   961,   nil,
+   949, 21181,   953,   310,   347,   792,   924,  1906, 21320,   nil,
+   951,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil, 21459, 21598, 21737, 21876,   364, 22015,   nil,   nil,  6727,
+   nil,  3446,   nil,   nil,   977,   nil,   115,   nil,   nil,   nil,
+   963,   205,   nil,   nil,   nil,   nil,   nil,   nil,  3586,   nil,
+   964,  1006,   nil,   nil,   536,  1096,   nil,   nil, 22154,   nil,
+  3726,  1113,   nil,   nil,   nil, 22293,    -7,    35,  1117,   nil,
+  1120,   615,   nil,   nil,  1139,  1027,   644,   nil,   nil,   nil,
+  3866,  4006,  1025,  1031,  1032,   nil,   nil,   nil,  1037,  1049,
+   nil,  1050,  1059,   nil,  1060,   nil,   nil,  1066,   664,     9,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1056,   nil,  1070,
+   369,   nil,   nil, 22432, 22571,  2046,  1071,  1085,   nil,  1086,
+  1089,  1090,   nil,  1111,  1096,  1100, 22710,   nil,   nil,   nil,
+   nil,  4146,  4286,   nil,    -8, 22849,   nil,   nil,   nil,    -1,
+   nil,   nil,   nil, 22988,  4426,   nil,   nil,   nil,  4566,   nil,
+   nil,   nil,  1153,  1132,  1237,   989,   nil,   nil, 15616,   nil,
+  6094,   nil,  6233,   nil,  6673,   nil,   nil,   nil,   nil,  1118,
+  1119,   nil,   325,   nil,   nil, 15715,   nil,   nil, 25356,   nil,
+  7477,   nil,   nil,  1153, 23127,   865,  1211,   nil,  1261,  4706,
+   963,   997,  1066,  1232,  1069,   nil,  4846,   nil, 23266,   271,
+  1279,  4986,   nil,   nil,   583,   nil,   nil,   nil,  1164,  1165,
+  1168,  1172,   521,   653,  1174,   nil,   nil,  1177,  1189,  1190,
+  1191,   nil,  1198,   nil,  1102, 25395,   nil,   nil,  1321, 23405,
+ 25463, 25531,  1119,   680,   nil,   nil,   nil,   nil,   nil,  1320,
+   nil,  1332,  7616,   nil,   nil,   nil,   nil,  1203,   nil, 25593,
+   nil,  7755,   nil, 14427,   nil, 14566,   nil,   nil,  1244,  1245,
+   nil,  1210,    21,    23,    53,  1206,   nil,   nil,   nil,  1208,
+  1210,  1211,  1215,  1224,    35,   nil, 15562,   nil,   nil,   nil,
+   nil,  1225,   nil ]
+
+racc_action_default = [
+    -1,  -642,  -641,  -642,    -2,  -628,    -4,    -5,  -642,    -8,
+    -9,  -642,  -642,  -642,   -36,  -642,  -642,   -40,  -642,  -642,
+  -291,   -51,  -630,  -642,   -56,   -61,   -62,   -63,   -67,  -268,
+  -268,  -268,  -306,  -336,  -337,   -79,  -641,   -83,   -91,   -93,
+  -642,  -532,  -533,  -642,  -642,  -642,  -642,  -227,  -642,  -630,
+  -241,  -282,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,
+  -615,  -293,  -295,  -302,  -304,  -314,  -316,  -642,  -642,   -58,
+   -58,  -628,  -642,  -642,  -642,  -642,  -338,  -339,  -341,  -342,
+  -343,  -344,  -345,  -346,  -347,  -348,  -349,  -350,  -359,  -414,
+  -462,  -463,  -464,  -465,  -466,  -641,  -469,  -641,  -641,  -641,
+  -641,  -641,  -641,  -505,  -506,  -641,  -508,  -514,  -516,  -517,
+  -518,  -519,  -613,  -521,  -522,  -614,  -524,  -525,  -526,  -527,
+  -528,  -529,  -530,  -531,  -536,  -537,  1083,    -3,  -629,  -637,
+  -638,  -639,    -7,  -642,  -642,  -642,  -642,  -642,  -642,   -24,
+  -642,  -122,  -123,  -124,  -125,  -126,  -127,  -128,  -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,
+  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,   -29,
+  -129,  -641,  -642,  -642,  -642,  -642,  -642,  -641,  -642,  -642,
+  -625,  -642,  -642,  -630,  -631,   -55,  -642,  -532,  -533,  -642,
+  -291,  -642,  -642,  -233,  -642,  -641,  -642,  -642,  -642,  -642,
+  -642,  -642,  -642,  -642,  -642,  -642,  -642,  -642,  -642,  -642,
+  -642,  -642,  -642,  -642,  -642,  -642,  -642,  -642,  -642,  -242,
+  -243,  -244,  -245,  -642,  -352,  -442,  -422,  -642,  -626,  -627,
+   -68,  -641,  -642,  -313,  -351,  -426,  -435,  -437,   -74,  -432,
+   -75,  -630,   -76,  -248,  -263,  -641,  -641,  -267,  -642,  -273,
+  -642,  -608,  -642,  -642,   -77,   -78,  -628,   -17,   -18,  -642,
+   -21,   -22,   -81,  -641,  -630,  -642,   -84,   -87,  -641,   -99,
+  -100,  -642,  -642,  -107,  -306,  -309,  -630,  -642,  -336,  -337,
+  -340,  -433,  -642,   -89,  -642,   -95,  -301,  -515,  -642,  -221,
+  -222,  -642,  -234,  -642,  -641,  -297,  -630,  -641,  -641,  -315,
+   -57,  -642,  -642,  -642,  -641,  -641,  -628,  -642,  -629,  -532,
+  -533,  -642,  -642,  -291,  -642,  -369,  -370,  -117,  -118,  -642,
+  -120,  -642,  -291,  -641,  -642,  -532,  -533,  -329,  -122,  -123,
+  -162,  -163,  -164,  -180,  -185,  -192,  -195,  -331,  -642,  -603,
+  -604,  -564,  -467,  -642,  -490,  -642,  -492,  -642,  -494,  -642,
+  -642,  -474,  -642,  -642,  -480,  -642,  -642,  -486,  -642,  -642,
+  -488,  -642,  -507,  -509,  -510,  -511,  -512,    -6,  -640,   -30,
+   -31,   -32,   -33,   -34,   -10,   -11,  -642,   -26,   -27,   -28,
+  -130,  -642,   -37,   -39,  -278,  -642,  -642,  -277,   -38,  -642,
+   -41,  -642,  -291,   -49,   -50,  -203,  -253,  -273,   -52,   -53,
+   -42,  -204,  -253,  -630,  -258,  -259,  -641,  -641,  -616,  -617,
+  -268,  -430,  -618,  -619,  -617,  -616,  -268,  -429,  -431,  -618,
+  -619,   -48,  -211,   -54,  -630,  -312,  -642,  -642,  -642,  -641,
+  -301,  -642,  -642,  -642,  -212,  -213,  -214,  -215,  -216,  -217,
+  -218,  -219,  -223,  -224,  -225,  -226,  -228,  -229,  -230,  -231,
+  -232,  -235,  -236,  -237,  -238,  -630,  -246,  -642,  -443,  -268,
+  -616,  -617,   -65,   -69,  -630,  -269,  -439,  -442,  -630,  -308,
+  -264,  -642,  -272,  -265,  -642,  -270,  -642,  -274,  -611,  -612,
+   -16,  -629,   -20,  -642,  -630,   -80,  -299,   -96,   -85,  -642,
+  -630,  -641,  -642,  -642,  -106,  -642,  -515,  -642,   -92,   -97,
+  -642,  -642,  -642,  -642,  -247,  -239,  -642,  -454,  -642,  -630,
+  -296,  -249,  -634,  -634,  -630,  -642,  -606,  -634,  -642,  -641,
+  -360,  -361,  -641,  -642,  -642,  -642,  -642,  -642,  -355,  -449,
+  -641,  -642,  -642,  -301,   -58,  -117,  -118,  -119,  -642,  -642,
+  -641,  -324,  -538,  -540,  -326,  -641,  -542,  -333,  -623,  -624,
+  -642,  -415,  -564,  -418,  -602,  -602,  -547,  -549,  -549,  -549,
+  -563,  -565,  -566,  -567,  -568,  -569,  -570,  -571,  -642,  -573,
+  -575,  -577,  -582,  -584,  -585,  -587,  -592,  -594,  -595,  -597,
+  -598,  -599,  -642,  -468,  -491,  -496,  -497,  -499,  -470,  -493,
+  -471,  -495,  -472,  -473,  -642,  -476,  -478,  -642,  -479,  -482,
+  -483,  -642,  -484,  -485,  -642,  -513,  -641,   -25,  -642,   -35,
+  -281,  -642,  -642,  -641,  -642,  -642,  -642,  -434,  -642,  -260,
+  -262,  -642,  -642,   -70,  -256,  -257,  -427,  -642,  -642,   -72,
+  -428,  -311,  -632,  -616,  -617,  -616,  -617,  -630,  -642,  -421,
+  -641,   -64,  -423,  -439,  -255,  -642,  -440,  -642,  -307,  -641,
+  -271,  -275,  -642,  -609,  -610,   -19,   -23,   -82,  -642,   -88,
+   -94,  -630,  -616,  -617,  -641,  -103,  -105,  -642,   -90,  -642,
+  -210,  -220,  -630,  -641,  -353,  -641,  -294,  -358,  -298,  -250,
+  -636,  -635,  -252,  -636,  -303,  -305,  -607,  -641,  -362,  -641,
+   -59,  -363,  -364,  -319,  -320,  -642,  -322,  -642,  -630,  -616,
+  -617,  -620,  -300,  -641,  -117,  -118,  -121,  -630,  -641,  -642,
+  -642,  -642,  -641,  -564,  -564,  -642,  -630,  -642,  -630,  -642,
+  -545,  -546,  -642,  -642,  -556,  -642,  -559,  -642,  -561,  -642,
+  -371,  -642,  -373,  -375,  -378,  -381,  -630,  -576,  -586,  -596,
+  -600,  -642,  -641,  -475,  -477,  -481,  -487,  -489,  -642,  -131,
+  -279,  -642,  -630,  -616,  -617,  -617,  -616,  -254,  -642,  -633,
+  -641,   -44,  -206,   -45,  -207,   -71,   -46,  -209,   -47,  -208,
+   -73,  -642,  -642,  -642,  -642,  -434,  -642,  -403,  -404,  -630,
+  -406,  -641,  -425,  -424,  -642,  -436,  -641,  -438,  -266,  -276,
+   -86,  -101,   -98,  -310,   -13,   -15,  -354,  -356,  -641,  -461,
+  -455,  -641,  -456,  -457,  -634,  -642,  -357,  -365,  -642,  -367,
+  -641,  -642,   -60,  -321,  -445,  -642,  -642,  -434,  -642,  -434,
+  -642,  -642,  -327,  -330,  -642,  -630,  -642,  -334,  -605,  -416,
+  -641,  -641,  -408,  -630,  -602,  -583,  -601,  -548,  -549,  -549,
+  -574,  -549,  -549,  -593,  -549,  -571,  -588,  -630,  -642,  -642,
+  -380,  -572,  -498,  -501,  -502,  -503,  -504,  -642,   -12,  -280,
+  -434,   -43,  -205,  -261,  -642,  -240,  -602,  -602,  -385,  -641,
+  -641,  -641,  -402,  -642,  -630,  -571,  -579,  -580,  -590,  -444,
+   -66,  -641,  -641,  -460,  -642,  -642,  -459,  -251,  -317,  -642,
+  -368,  -318,  -446,  -642,  -641,  -323,  -325,  -539,  -641,  -332,
+  -541,  -543,  -542,  -642,  -642,  -642,  -417,  -544,  -642,  -552,
+  -642,  -554,  -642,  -557,  -642,  -560,  -562,  -372,  -374,  -376,
+  -379,  -500,  -642,  -383,  -384,  -393,  -387,  -395,  -642,  -398,
+  -642,  -400,  -405,  -642,  -642,  -578,  -642,  -441,  -641,  -641,
+  -108,  -109,  -642,  -642,  -116,  -458,  -641,  -447,  -642,  -641,
+  -642,  -641,  -419,  -420,  -630,  -410,  -412,  -413,  -549,  -549,
+  -549,  -549,  -642,  -642,  -602,  -581,  -386,  -641,  -641,  -641,
+  -641,  -591,  -641,  -407,  -589,  -642,  -301,   -14,  -454,  -641,
+  -642,  -642,  -115,  -641,  -448,  -450,  -451,  -452,  -328,  -642,
+  -409,  -642,  -642,  -550,  -553,  -555,  -558,  -377,  -382,  -642,
+  -390,  -642,  -392,  -642,  -396,  -642,  -399,  -401,  -300,  -620,
+  -453,  -630,  -616,  -617,  -620,  -114,  -366,  -335,  -411,  -549,
+  -641,  -641,  -641,  -641,  -434,  -551,  -642,  -388,  -391,  -394,
+  -397,  -641,  -389 ]
+
+racc_goto_table = [
+     6,   387,     4,   232,   349,   453,   276,   577,   523,   294,
+   294,   294,   144,   144,   131,   228,   460,   466,   351,   352,
+   513,   235,   356,   278,   295,   295,   295,   296,   296,   296,
+   343,   413,   330,   330,   139,   220,   316,   569,   572,   703,
+   354,   355,   147,   147,   424,   450,   762,   437,   438,   558,
+   471,   285,   289,   723,   587,   855,   337,     9,   603,   514,
+   507,   893,   548,     9,   695,   509,   127,   330,   330,   330,
+   845,   280,   288,   290,   770,   771,   144,   128,   729,   732,
+   131,   861,   883,   736,   419,   420,   421,   422,   350,   350,
+   890,   920,   350,   394,   667,   396,   398,   401,   404,   407,
+   410,   434,   447,   394,   333,   831,   144,   786,   312,   970,
+  1005,   314,   700,   132,   315,   700,   968,   345,  1021,   393,
+   610,  1007,   373,   377,     1,   774,   776,   778,   644,   411,
+     2,   647,   357,   138,   656,   844,   932,   705,   533,   219,
+   366,   433,   426,   923,   740,   444,   862,   277,   444,   292,
+   304,   305,   693,   444,   350,   350,   350,   350,   658,   341,
+   564,   692,   389,   565,   364,   591,   639,   388,   641,   523,
+   597,   645,   344,   346,   645,   559,   347,   525,   348,   527,
+   758,   528,   529,     9,   760,   703,   948,   595,   596,  1021,
+   765,   952,   423,   451,   969,   922,  1068,   924,   472,   889,
+  1004,   891,   601,   879,   294,   734,   391,  1007,   767,   516,
+   517,   836,   866,   690,   436,   436,  1035,   747,   851,   934,
+   432,   443,  1047,   392,   443,   454,   745,   568,   395,   443,
+   470,   968,   477,   417,   397,   400,   403,  1017,   983,   406,
+   409,   834,   902,   791,   893,   448,   449,   792,   703,   412,
+   461,   931,   759,   473,   474,   921,   888,   687,   294,   294,
+   700,   700,   885,  1015,   600,   460,   466,   709,   294,   768,
+   897,   nil,   nil,   756,   295,   718,   nil,   296,   nil,   454,
+   nil,   890,   nil,   295,   nil,   nil,   296,   nil,   nil,   nil,
+    19,   nil,   890,   522,   522,   nil,    19,   nil,   nil,   431,
+   761,   nil,   697,   nil,   573,   nil,   nil,   545,   nil,   nil,
+   nil,   236,   330,   nil,   660,   131,   nil,   542,   nil,   711,
+   236,   236,   236,   315,    19,   321,   321,   nil,   825,   330,
+   714,   610,   nil,   549,   552,  1027,   nil,   nil,   nil,   562,
+   714,  1036,   563,   567,   546,   561,   566,   nil,   nil,   285,
+    19,  1066,   841,   289,   957,   236,   236,   581,   748,   236,
+   361,   371,   371,   nil,   532,   131,   nil,   530,   757,   714,
+   937,   593,   890,   nil,   350,   nil,   nil,   714,   531,   nil,
+   nil,   nil,   nil,   538,  1008,   312,   973,   974,   534,   867,
+   312,   315,   nil,   540,   nil,   594,   315,   nil,   869,   515,
+   701,  1018,  1001,   568,  1019,   704,   959,   961,   518,   963,
+   965,   838,   966,   815,   nil,   794,    19,   576,   794,   820,
+   nil,   236,   236,   236,   236,    19,   nil,   144,   703,   nil,
+   875,   876,   574,   575,   668,   nil,   840,   664,   nil,   706,
+   nil,   802,   nil,   910,   nil,   nil,   nil,   nil,   472,   657,
+   451,   nil,   460,   466,   522,   522,   294,   147,   674,   nil,
+   nil,   nil,   nil,   870,   nil,   nil,   nil,   874,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1070,   nil,   454,   nil,   470,
+   nil,   nil,   675,   nil,  1048,   nil,   688,   nil,   680,   nil,
+   811,   813,   610,   610,   nil,   nil,   816,   818,   nil,   461,
+   787,   nil,   673,   nil,   700,   nil,   nil,   674,   679,    19,
+   236,   441,   236,   236,   441,   236,   699,   720,   294,   441,
+   236,   236,   838,   nil,  1060,   nil,  1043,  1044,  1045,  1046,
+   nil,   675,   nil,    19,   330,   nil,   nil,   nil,   549,   454,
+   800,   nil,   330,   nil,   470,   668,   549,   nil,   701,   568,
+   852,   691,   944,   nil,   470,   753,   nil,   294,   nil,   884,
+   nil,   nil,   nil,   nil,   461,   nil,   nil,   294,   886,   236,
+   236,   886,   nil,   926,   461,   nil,   nil,   722,   454,   236,
+   nil,   839,   741,   470,   444,   nil,   954,  1075,   454,   470,
+   nil,   nil,   nil,   444,   444,   nil,   nil,    19,   nil,   444,
+   444,    19,   nil,   461,   850,   321,    19,   nil,   nil,   701,
+   nil,   461,   568,   nil,   nil,   nil,   nil,   nil,   nil,   917,
+   989,   766,   321,   nil,   nil,   996,   864,   911,   918,   nil,
+   nil,   833,    19,   nil,   nil,   nil,   nil,   nil,   812,   814,
+   294,   236,    19,    19,   817,   819,   475,   737,   nil,  1037,
+   739,   nil,   nil,  1000,     6,   nil,   798,   nil,   896,   144,
+   443,   454,   236,   nil,   810,   nil,   470,   nil,   668,   443,
+   443,   nil,   832,   nil,   nil,   443,   443,   nil,   nil,   nil,
+   909,   799,   nil,   nil,   nil,   nil,   461,   nil,   827,   147,
+   nil,   877,   668,   nil,   nil,   nil,   nil,   522,   nil,   nil,
+   nil,   nil,  1074,   330,   519,   nil,  1039,   549,   nil,   nil,
+   871,     9,   674,   nil,   330,   nil,   926,   436,   842,   926,
+   nil,   849,   926,   853,   926,   854,   nil,   535,   nil,   668,
+   444,   nil,   nil,   nil,   nil,   859,   675,   859,   668,   680,
+   nil,   nil,   nil,   nil,   942,   nil,   nil,   nil,   nil,   882,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   560,
+   nil,   nil,  1014,   nil,   nil,   917,   144,   236,   917,   872,
+   917,   886,   nil,   nil,   918,   912,   nil,   918,   nil,   918,
+   350,   nil,   nil,   668,   nil,   nil,   nil,   nil,   812,   814,
+   819,   817,   568,   926,   nil,   926,   nil,   926,   nil,   926,
+   nil,   nil,   nil,   nil,   nil,   nil,   443,  1061,   522,   939,
+   882,   nil,   nil,   617,   nil,   nil,   nil,   nil,   714,    19,
+   926,   nil,   997,   nil,   nil,   nil,   nil,   321,   nil,   236,
+   nil,   868,   nil,   nil,   827,   321,   nil,   nil,   nil,   917,
+   nil,   917,   nil,   917,   236,   917,   nil,   nil,   918,   936,
+   918,   nil,   918,   nil,   918,   nil,   nil,    19,   nil,   nil,
+    19,   nil,   nil,   nil,   nil,   nil,   917,   nil,   236,   nil,
+   907,   nil,   nil,   nil,   nil,   918,   nil,  1034,   236,   350,
+   947,   912,   nil,    19,   nil,   951,   nil,   681,   236,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   882,   nil,   nil,    29,   929,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   976,   976,   976,
+   nil,   330,   nil,    29,   nil,   nil,   933,   694,   nil,   nil,
+   330,   698,    29,    29,    29,   nil,    29,   nil,   940,   nil,
+   nil,   nil,   nil,   nil,    19,   nil,   nil,   707,   nil,   nil,
+   441,   236,   nil,   710,   nil,   nil,   nil,   nil,   953,   441,
+   441,   nil,    29,   nil,   nil,   441,   441,    29,    29,   nil,
+   nil,    29,   728,   nil,   nil,   nil,   nil,   nil,   nil,   330,
+   nil,   nil,   nil,   nil,   nil,  1040,   849,   nil,  1030,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   321,   859,   nil,   977,
+   979,   981,   nil,   nil,   nil,   nil,   294,   321,   nil,   987,
+   988,   nil,   nil,   nil,   nil,   976,   976,   976,   976,   nil,
+   976,   nil,   999,   892,   617,   894,   470,   454,    29,   nil,
+   nil,   859,   470,    29,    29,    29,    29,    29,   nil,   nil,
+   780,    19,   668,   726,   nil,   nil,    19,   236,   nil,   nil,
+    19,   nil,   461,   nil,   nil,   nil,   nil,   nil,   nil,   743,
+   744,   nil,   746,   nil,   nil,   nil,   nil,  1028,   976,   976,
+   976,   976,   nil,   nil,  1033,   nil,   nil,   919,   nil,   976,
+    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   441,  1050,  1052,  1054,
+  1056,   nil,  1057,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,    19,
+   nil,    29,    29,    29,    29,    29,    29,    29,    32,   nil,
+   nil,    29,    29,    29,   nil,   843,    19,    32,    32,    32,
+   nil,    32,   nil,   nil,   nil,    29,   236,   nil,    19,   nil,
+  1077,  1078,  1079,  1080,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1082,   nil,   nil,   nil,   nil,   nil,    32,    19,    19,
+   nil,   nil,    32,    32,   nil,   nil,    32,   nil,   nil,   878,
+   nil,    29,    29,   nil,   nil,   617,   617,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   617,   nil,   617,   nil,   901,
+   nil,   nil,   nil,   780,   nil,   nil,  1009,   900,  1010,    29,
+  1011,   nil,   nil,    29,   985,   nil,   nil,   nil,    29,    19,
+    19,   nil,   nil,   992,   nil,   nil,  1020,   nil,  1022,   nil,
+   863,   nil,    19,    32,   nil,   nil,    19,   nil,    32,    32,
+    32,    32,    32,   nil,    29,   nil,   873,   nil,   nil,   nil,
+   nil,   925,   nil,    29,    29,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1024,   nil,    29,   nil,   nil,    19,   nil,   nil,
+   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,   950,    19,
+  1069,   nil,   nil,   nil,   nil,   nil,   956,  1071,   nil,  1072,
+   nil,  1073,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   967,   nil,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,
+   780,   780,   nil,   nil,  1081,   nil,    32,    32,    32,    32,
+    32,    32,    32,   nil,   nil,   nil,    32,    32,    32,   nil,
+   938,   nil,   nil,   nil,   nil,   nil,   941,   nil,   nil,   nil,
+    32,   nil,   nil,   945,   nil,   946,   nil,   nil,   nil,   949,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   617,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   925,   nil,   nil,
+   925,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   780,   780,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,    32,    32,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   nil,   925,    29,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+    29,   nil,   nil,   nil,   nil,  1038,   nil,   nil,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1067,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   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,   nil,   nil,
+   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,
+   243,    29,    29,   nil,   nil,   nil,   nil,    29,    29,   293,
+   293,   293,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   339,   340,   nil,   342,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   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,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,    29,
+   nil,    32,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    32,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,    18,    29,   nil,   nil,    32,   nil,    18,   nil,   nil,
+    32,   nil,   nil,   nil,   nil,    32,   nil,   nil,    29,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
+    29,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,   293,
+   446,   nil,   nil,   452,   293,   nil,    32,    32,   452,   nil,
+    29,    29,    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   243,   nil,   nil,   484,   485,   486,   487,   488,   489,
+   490,   491,   492,   493,   494,   495,   496,   497,   498,   499,
+   500,   501,   502,   503,   504,   505,   nil,    18,   nil,   nil,
+   506,   nil,   nil,   nil,   nil,   nil,    18,   nil,   293,   293,
+   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,   293,   nil,
+   nil,   nil,   nil,   nil,    29,   293,    16,   293,    29,   293,
+   293,   nil,    16,   nil,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,    32,    32,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   554,    29,
+   555,   nil,   nil,   nil,   293,   293,    29,    32,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,
+    18,   nil,    18,    32,   nil,    18,   365,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   nil,   nil,   nil,   nil,    18,   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,    32,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    16,   293,   nil,   nil,    32,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,
+   nil,   nil,    18,   nil,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   293,   nil,   452,   452,
+   452,   nil,   nil,    18,   nil,   nil,    32,    32,   nil,   nil,
+   nil,   nil,   nil,    18,    18,   nil,   nil,   nil,   nil,    32,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    16,   nil,   439,   293,   nil,
+   439,   293,   nil,   293,   nil,   439,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   293,    16,
+   nil,   nil,   nil,   nil,    32,   nil,   nil,   452,   721,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   323,   323,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   293,   nil,   nil,
+   nil,   nil,   nil,   nil,    32,   nil,   nil,   293,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,
+   372,   372,   nil,    16,   nil,   nil,   nil,    16,   nil,   nil,
+   nil,   nil,    16,   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,    16,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,
+   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   293,   452,
+   293,   nil,   nil,   807,    20,   nil,   293,   293,   452,   452,
+    18,   nil,   nil,   nil,   452,   452,   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,    18,   nil,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   293,   nil,   nil,   nil,   nil,   293,   nil,   nil,
+   293,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   293,   nil,   nil,   nil,    20,   nil,
+   442,   nil,   nil,   442,   nil,   nil,   nil,   nil,   442,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,   nil,   nil,   nil,   293,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,    42,   293,   nil,
+   nil,    18,   nil,    42,   nil,   452,   nil,   nil,   nil,   nil,
+    18,    18,    41,   319,   319,   nil,    18,    18,   452,   452,
+   452,   452,   nil,   915,   nil,    16,   nil,   nil,   nil,   nil,
+   nil,    42,   320,   320,   nil,   nil,    20,   nil,    41,   nil,
+    20,   nil,   nil,   nil,   323,    20,   nil,   nil,   359,   375,
+   375,   375,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   323,   293,    16,   nil,   nil,    16,   360,   376,   376,
+   376,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,   nil,    16,
+   nil,   nil,    18,   nil,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,    18,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   293,   452,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   293,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,
+    16,   nil,   nil,   nil,   nil,   nil,   439,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   439,   439,   nil,   nil,   nil,
+    18,   439,   439,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   293,   nil,    41,   nil,    18,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,    18,
+    18,    41,   nil,   nil,   nil,   nil,   293,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
+   nil,   nil,    16,   nil,   nil,   nil,    16,   nil,    20,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,   nil,
+    18,    18,   nil,   nil,   323,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    18,   nil,    41,    16,    18,   nil,    41,
+   nil,   nil,   nil,   319,    41,   nil,    20,   nil,   nil,    20,
+   nil,   nil,   439,   nil,    42,   nil,   nil,   nil,    42,   nil,
+   319,   nil,   320,    42,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,    20,   nil,   nil,    16,   nil,   nil,    18,   320,
+    41,    41,   nil,   nil,   nil,    18,   nil,   nil,   nil,    42,
+    18,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+    42,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    16,    16,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   442,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   442,   442,
+   nil,   nil,   nil,   nil,   442,   442,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,   nil,   995,
+   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,    16,   nil,
+   nil,   nil,    16,   nil,   nil,   nil,   323,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,    16,   nil,    20,   nil,   nil,   nil,    20,
+    16,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   319,   nil,   nil,   906,    20,
+   nil,   nil,   nil,   319,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   320,   442,   nil,   nil,   nil,   nil,
+   nil,   nil,   320,   nil,   nil,    41,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,    42,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,    20,   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,   nil,   nil,   nil,
+   nil,    42,   nil,   372,   nil,   nil,   nil,   nil,    20,    20,
+   nil,   nil,   994,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   319,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   319,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   320,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   372,   nil,   nil,   320,   nil,    20,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,    20,    41,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,    42,   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,   nil,   nil,   nil,   nil,    42,   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,   nil,   nil,    41,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    42,    41,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    42,    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,   375,   nil,   nil,   nil,   nil,    41,    41,   nil,
+   nil,   990,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   376,   nil,   nil,    41,   nil,    42,    42,   nil,   nil,
+   991,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   375,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,    41,   nil,   376,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,   nil,   nil,   nil,    42 ]
+
+racc_goto_check = [
+     6,    70,     2,    40,   102,    36,   168,   113,    87,    46,
+    46,    46,    71,    71,   118,    38,    50,    50,    24,    24,
+    52,    27,    24,    38,    82,    82,    82,    84,    84,    84,
+    40,    70,    78,    78,    22,    22,    63,   106,   106,   216,
+    42,    42,    73,    73,    10,    33,   121,    29,    29,    12,
+    33,    85,    85,    15,    68,   107,    76,     9,   167,    36,
+   169,   211,    65,     9,    53,    50,     5,    78,    78,    78,
+    17,    51,    51,    51,   150,   150,    71,     8,    83,    83,
+   118,   109,   159,    83,    24,    24,    24,    24,    31,    31,
+   206,   155,    31,     6,    37,     6,     6,     6,     6,     6,
+     6,    80,    80,     6,    64,   157,    71,   144,    59,   145,
+   161,    60,    88,     7,    14,    88,   142,     9,   212,   185,
+   201,   162,    69,    69,     1,   204,   204,   204,   189,   185,
+     3,   189,     5,    11,    13,    16,    18,    20,    21,    23,
+    26,    30,    32,   159,    43,    25,    45,    49,    25,    58,
+    58,    58,    55,    25,    31,    31,    31,    31,    74,    79,
+    81,    86,    98,   101,   115,   117,   190,   122,   190,    87,
+   123,   190,   124,   125,   190,   126,   127,    80,   128,    80,
+   129,    80,    80,     9,   130,   216,   131,   132,   133,   212,
+   134,   135,     9,    75,   146,   147,   161,   153,    75,   156,
+   160,   156,   163,   164,    46,    37,   165,   162,   166,   171,
+   172,   174,   175,   177,    82,    82,   178,   179,   180,   181,
+    27,    27,   145,   184,    27,     6,   113,    80,   186,    27,
+    71,   142,    38,     7,   187,   188,   191,   155,   159,   192,
+   193,    53,   194,   195,   211,    31,    31,   196,   216,   199,
+    85,   157,   200,    31,    31,   156,   205,    36,    46,    46,
+    88,    88,   208,   209,   215,    50,    50,    65,    46,   167,
+   144,   nil,   nil,    68,    82,    65,   nil,    84,   nil,     6,
+   nil,   206,   nil,    82,   nil,   nil,    84,   nil,   nil,   nil,
+    35,   nil,   206,     6,     6,   nil,    35,   nil,   nil,    14,
+    12,   nil,   169,   nil,    24,   nil,   nil,    40,   nil,   nil,
+   nil,    35,    78,   nil,    80,   118,   nil,    38,   nil,    36,
+    35,    35,    35,    14,    35,    35,    35,   nil,    37,    78,
+    50,   201,   nil,    63,    38,    17,   nil,   nil,   nil,    82,
+    50,   109,    84,    84,    76,     6,     6,   nil,   nil,    85,
+    35,   107,    37,    85,   150,    35,    35,    38,    36,    35,
+    35,    35,    35,   nil,     9,   118,   nil,     5,    36,    50,
+    83,     6,   206,   nil,    31,   nil,   nil,    50,     8,   nil,
+   nil,   nil,   nil,    64,   156,    59,   150,   150,    60,    37,
+    59,    14,   nil,    60,   nil,    31,    14,   nil,    37,    58,
+    80,   156,   121,    80,   156,    80,   204,   204,    58,   204,
+   204,    87,   204,    52,   nil,   190,    35,     5,   190,    52,
+   nil,    35,    35,    35,    35,    35,   nil,    71,   216,   nil,
+   167,   167,    14,    14,    40,   nil,    65,    38,   nil,    10,
+   nil,    36,   nil,    37,   nil,   nil,   nil,   nil,    75,    22,
+    75,   nil,    50,    50,     6,     6,    46,    73,     6,   nil,
+   nil,   nil,   nil,    12,   nil,   nil,   nil,    12,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   156,   nil,     6,   nil,    71,
+   nil,   nil,    85,   nil,   150,   nil,    40,   nil,    85,   nil,
+    33,    33,   201,   201,   nil,   nil,    33,    33,   nil,    85,
+    80,   nil,    51,   nil,    88,   nil,   nil,     6,    51,    35,
+    35,    35,    35,    35,    35,    35,    84,    75,    46,    35,
+    35,    35,    87,   nil,    15,   nil,   204,   204,   204,   204,
+   nil,    85,   nil,    35,    78,   nil,   nil,   nil,    63,     6,
+    80,   nil,    78,   nil,    71,    40,    63,   nil,    80,    80,
+    29,    51,   106,   nil,    71,    42,   nil,    46,   nil,   149,
+   nil,   nil,   nil,   nil,    85,   nil,   nil,    46,   151,    35,
+    35,   151,   nil,   207,    85,   nil,   nil,    31,     6,    35,
+   nil,    80,   118,    71,    25,   nil,    12,   204,     6,    71,
+   nil,   nil,   nil,    25,    25,   nil,   nil,    35,   nil,    25,
+    25,    35,   nil,    85,    80,    35,    35,   nil,   nil,    80,
+   nil,    85,    80,   nil,   nil,   nil,   nil,   nil,   nil,   149,
+   106,    31,    35,   nil,   nil,   106,    80,    33,   151,   nil,
+   nil,   102,    35,   nil,   nil,   nil,   nil,   nil,    75,    75,
+    46,    35,    35,    35,    75,    75,    61,    14,   nil,   113,
+    14,   nil,   nil,    12,     6,   nil,     2,   nil,    80,    71,
+    27,     6,    35,   nil,    84,   nil,    71,   nil,    40,    27,
+    27,   nil,   168,   nil,   nil,    27,    27,   nil,   nil,   nil,
+    80,    22,   nil,   nil,   nil,   nil,    85,   nil,     6,    73,
+   nil,    70,    40,   nil,   nil,   nil,   nil,     6,   nil,   nil,
+   nil,   nil,    37,    78,    61,   nil,    12,    63,   nil,   nil,
+    24,     9,     6,   nil,    78,   nil,   207,    82,    63,   207,
+   nil,     6,   207,     6,   207,    84,   nil,    61,   nil,    40,
+    25,   nil,   nil,   nil,   nil,     6,    85,     6,    40,    85,
+   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,    40,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    61,
+   nil,   nil,   149,   nil,   nil,   149,    71,    35,   149,   118,
+   149,   151,   nil,   nil,   151,    75,   nil,   151,   nil,   151,
+    31,   nil,   nil,    40,   nil,   nil,   nil,   nil,    75,    75,
+    75,    75,    80,   207,   nil,   207,   nil,   207,   nil,   207,
+   nil,   nil,   nil,   nil,   nil,   nil,    27,    36,     6,    24,
+    40,   nil,   nil,   143,   nil,   nil,   nil,   nil,    50,    35,
+   207,   nil,    80,   nil,   nil,   nil,   nil,    35,   nil,    35,
+   nil,    14,   nil,   nil,     6,    35,   nil,   nil,   nil,   149,
+   nil,   149,   nil,   149,    35,   149,   nil,   nil,   151,     6,
+   151,   nil,   151,   nil,   151,   nil,   nil,    35,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,   nil,   149,   nil,    35,   nil,
+    14,   nil,   nil,   nil,   nil,   151,   nil,    80,    35,    31,
+   118,    75,   nil,    35,   nil,   118,   nil,    61,    35,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,    40,   nil,   nil,    54,    14,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,     6,     6,     6,
+   nil,    78,   nil,    54,   nil,   nil,    14,    61,   nil,   nil,
+    78,    61,    54,    54,    54,   nil,    54,   nil,    14,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,   nil,    61,   nil,   nil,
+    35,    35,   nil,    61,   nil,   nil,   nil,   nil,    14,    35,
+    35,   nil,    54,   nil,   nil,    35,    35,    54,    54,   nil,
+   nil,    54,    61,   nil,   nil,   nil,   nil,   nil,   nil,    78,
+   nil,   nil,   nil,   nil,   nil,    40,     6,   nil,    38,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    35,     6,   nil,   152,
+   152,   152,   nil,   nil,   nil,   nil,    46,    35,   nil,    14,
+    14,   nil,   nil,   nil,   nil,     6,     6,     6,     6,   nil,
+     6,   nil,    14,   154,   143,   154,    71,     6,    54,   nil,
+   nil,     6,    71,    54,    54,    54,    54,    54,   nil,   nil,
+   143,    35,    40,   100,   nil,   nil,    35,    35,   nil,   nil,
+    35,   nil,    85,   nil,   nil,   nil,   nil,   nil,   nil,   100,
+   100,   nil,   100,   nil,   nil,   nil,   nil,    14,     6,     6,
+     6,     6,   nil,   nil,    14,   nil,   nil,   154,   nil,     6,
+    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    35,   152,   152,   152,
+   152,   nil,   152,   nil,   nil,   nil,   nil,    57,   nil,   nil,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,    35,
+   nil,    54,    54,    54,    54,    54,    54,    54,    57,   nil,
+   nil,    54,    54,    54,   nil,    61,    35,    57,    57,    57,
+   nil,    57,   nil,   nil,   nil,    54,    35,   nil,    35,   nil,
+   152,   152,   152,   152,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   152,   nil,   nil,   nil,   nil,   nil,    57,    35,    35,
+   nil,   nil,    57,    57,   nil,   nil,    57,   nil,   nil,    61,
+   nil,    54,    54,   nil,   nil,   143,   143,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   143,   nil,   143,   nil,    61,
+   nil,   nil,   nil,   143,   nil,   nil,   154,   143,   154,    54,
+   154,   nil,   nil,    54,    35,   nil,   nil,   nil,    54,    35,
+    35,   nil,   nil,    35,   nil,   nil,   154,   nil,   154,   nil,
+   100,   nil,    35,    57,   nil,   nil,    35,   nil,    57,    57,
+    57,    57,    57,   nil,    54,   nil,   100,   nil,   nil,   nil,
+   nil,   143,   nil,    54,    54,    54,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,    54,   nil,   nil,    35,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,    61,    35,
+   154,   nil,   nil,   nil,   nil,   nil,    61,   154,   nil,   154,
+   nil,   154,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    61,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,
+   143,   143,   nil,   nil,   154,   nil,    57,    57,    57,    57,
+    57,    57,    57,   nil,   nil,   nil,    57,    57,    57,   nil,
+   100,   nil,   nil,   nil,   nil,   nil,   100,   nil,   nil,   nil,
+    57,   nil,   nil,   100,   nil,   100,   nil,   nil,   nil,   100,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   143,   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   143,   nil,   nil,
+   143,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   143,   143,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,    57,    57,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   143,    54,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+    54,   nil,   nil,   nil,   nil,   100,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   100,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
+   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,    54,    54,   nil,   nil,   nil,   nil,    54,    54,    41,
+    41,    41,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,    41,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,    54,
+   nil,    57,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    57,   nil,   nil,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,    34,    54,   nil,   nil,    57,   nil,    34,   nil,   nil,
+    57,   nil,   nil,   nil,   nil,    57,   nil,   nil,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+    54,    57,   nil,   nil,   nil,   nil,   nil,    57,    57,    41,
+    41,   nil,   nil,    41,    41,   nil,    57,    57,    41,   nil,
+    54,    54,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,   nil,    34,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,    34,   nil,    41,    41,
+   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,    54,    41,    28,    41,    54,    41,
+    41,   nil,    28,   nil,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,    57,    57,   nil,   nil,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    54,
+    41,   nil,   nil,   nil,    41,    41,    54,    57,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,
+    34,   nil,    34,    57,   nil,    34,    28,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   nil,   nil,    34,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    57,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    28,    41,   nil,   nil,    57,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
+   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,    41,
+    41,   nil,   nil,    34,   nil,   nil,    57,    57,   nil,   nil,
+   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,    57,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    28,   nil,    28,    41,   nil,
+    28,    41,   nil,    41,   nil,    28,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,    41,    28,
+   nil,   nil,   nil,   nil,    57,   nil,   nil,    41,    41,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,    39,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,    57,   nil,   nil,    41,   nil,    39,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+    39,    39,   nil,    28,   nil,   nil,   nil,    28,   nil,   nil,
+   nil,   nil,    28,   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,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,
+   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,    41,    41,
+    41,   nil,   nil,    41,    39,   nil,    41,    41,    41,    41,
+    34,   nil,   nil,   nil,    41,    41,   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,    34,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+    41,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,    39,   nil,
+    39,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,    41,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,    67,    41,   nil,
+   nil,    34,   nil,    67,   nil,    41,   nil,   nil,   nil,   nil,
+    34,    34,    66,    66,    66,   nil,    34,    34,    41,    41,
+    41,    41,   nil,    41,   nil,    28,   nil,   nil,   nil,   nil,
+   nil,    67,    67,    67,   nil,   nil,    39,   nil,    66,   nil,
+    39,   nil,   nil,   nil,    39,    39,   nil,   nil,    66,    66,
+    66,    66,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,    39,    41,    28,   nil,   nil,    28,    67,    67,    67,
+    67,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,   nil,    28,
+   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,    34,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    41,    41,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+    28,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,
+    34,    28,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    66,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,    34,
+    34,    66,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
+   nil,   nil,    28,   nil,   nil,   nil,    28,   nil,    39,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
+    34,    34,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,    66,    28,    34,   nil,    66,
+   nil,   nil,   nil,    66,    66,   nil,    39,   nil,   nil,    39,
+   nil,   nil,    28,   nil,    67,   nil,   nil,   nil,    67,   nil,
+    66,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+    66,   nil,    39,   nil,   nil,    28,   nil,   nil,    34,    67,
+    66,    66,   nil,   nil,   nil,    34,   nil,   nil,   nil,    67,
+    34,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+    67,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,    39,
+   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,    28,    28,   nil,   nil,    28,
+   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,    28,   nil,
+   nil,   nil,    28,   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,
+    39,   nil,   nil,    28,   nil,    39,   nil,   nil,   nil,    39,
+    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,    39,    39,
+   nil,   nil,   nil,    66,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,    66,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,    67,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   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,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,    39,   nil,   nil,   nil,   nil,    39,    39,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,    67,   nil,    39,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,    66,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,    66,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,    66,    66,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    66,    67,   nil,   nil,    66,   nil,    67,    67,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,    66,   nil,    67,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,    67 ]
+
+racc_goto_pointer = [
+   nil,   124,     0,   130,   nil,    61,    -2,   105,    72,    55,
+   -94,   123,  -295,  -291,    78,  -504,  -588,  -653,  -708,   nil,
+  -394,  -173,    23,   127,   -49,   -78,    68,    -2,  1844,  -175,
+   -81,    21,     3,  -181,  1689,   288,  -222,  -359,    -4,  2077,
+   -19,  1547,   -29,  -429,   nil,  -594,   -23,   nil,   nil,   120,
+  -212,    42,  -260,  -452,   900,  -360,   nil,  1105,   117,    72,
+    75,   413,   nil,    -1,    66,  -272,  2326,  2345,  -315,    49,
+   -74,     1,   nil,    31,  -272,   -33,    12,   nil,    -5,   112,
+  -121,  -187,    -8,  -484,    -5,    22,  -348,  -288,  -409,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    87,   nil,
+   485,  -185,   -61,   nil,   nil,   nil,  -314,  -682,   nil,  -658,
+   nil,   nil,   nil,  -350,   nil,    92,   nil,  -208,     9,   nil,
+   nil,  -550,    92,  -218,   111,   111,  -170,   113,   114,  -411,
+  -410,  -686,  -190,  -199,  -407,  -686,   nil,   nil,   nil,   nil,
+   nil,   nil,  -782,   422,  -511,  -790,  -704,  -634,   nil,  -210,
+  -530,  -201,    80,  -632,   248,  -738,  -574,  -585,   nil,  -686,
+  -755,  -845,  -834,  -189,  -564,   117,  -393,  -333,   -19,  -215,
+   nil,   -77,   -77,   nil,  -485,  -535,   nil,  -295,  -783,  -362,
+  -507,  -632,   nil,   nil,   131,    24,   131,   136,   136,  -272,
+  -229,   136,   138,   138,  -549,  -393,  -390,   nil,   nil,   144,
+  -340,  -271,   nil,   nil,  -482,  -517,  -683,  -256,  -507,  -709,
+   nil,  -714,  -860,   nil,   nil,  -126,  -485 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   307,     7,   358,   310,
+   nil,   nil,   nil,   nil,   557,   nil,   nil,   nil,   nil,   306,
+   308,   nil,   nil,   nil,   nil,    14,    15,    21,   241,   nil,
+   nil,    17,   nil,   440,   242,   338,   nil,   nil,   589,   240,
+   476,    24,   nil,   nil,   353,   nil,    25,    26,    27,   nil,
+   717,   nil,   nil,   nil,   327,   nil,    28,   324,   455,    35,
+   nil,   nil,    37,    40,    39,   nil,   237,   238,   370,   nil,
+   146,   463,   145,    91,   nil,   445,   107,    47,    50,   273,
+   299,   nil,   456,   nil,   457,   468,   676,   520,   297,   282,
+    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
+   nil,   nil,   283,    65,    66,    67,   nil,   nil,    68,   857,
+    69,    70,    71,   nil,    72,   nil,    73,   nil,   570,    74,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   287,   275,   725,   848,
+   579,   858,   782,   895,   nil,   783,   784,  1016,   916,   605,
+   nil,   606,   nil,   nil,   607,   nil,   609,   nil,   828,   nil,
+   nil,   nil,   615,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   467,   nil,   nil,   696,   nil,   nil,   508,   nil,   nil,   nil,
+   nil,   nil,    90,    92,    94,   nil,   nil,   nil,   nil,   nil,
+   634,   nil,   nil,   nil,   nil,   nil,   nil,   103,   104,   nil,
+   nil,   887,   764,   604,   nil,   608,   619,   621,   622,   927,
+   625,   626,   928,   629,   632,   nil,   301 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 148, :_reduce_1,
+  2, 146, :_reduce_2,
+  2, 147, :_reduce_3,
+  1, 149, :_reduce_none,
+  1, 149, :_reduce_none,
+  3, 149, :_reduce_6,
+  2, 149, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 156, :_reduce_9,
+  3, 152, :_reduce_10,
+  0, 158, :_reduce_11,
+  4, 155, :_reduce_12,
+  0, 163, :_reduce_13,
+  6, 157, :_reduce_14,
+  3, 157, :_reduce_15,
+  2, 159, :_reduce_16,
+  1, 164, :_reduce_none,
+  1, 164, :_reduce_none,
+  3, 164, :_reduce_19,
+  2, 164, :_reduce_20,
+  1, 165, :_reduce_none,
+  0, 166, :_reduce_22,
+  3, 165, :_reduce_23,
+  0, 177, :_reduce_24,
+  4, 154, :_reduce_25,
+  3, 154, :_reduce_26,
+  3, 154, :_reduce_27,
+  3, 154, :_reduce_28,
+  2, 154, :_reduce_29,
+  3, 154, :_reduce_30,
+  3, 154, :_reduce_31,
+  3, 154, :_reduce_32,
+  3, 154, :_reduce_33,
+  3, 154, :_reduce_34,
+  4, 154, :_reduce_35,
+  1, 154, :_reduce_none,
+  3, 154, :_reduce_37,
+  3, 154, :_reduce_38,
+  3, 154, :_reduce_39,
+  1, 154, :_reduce_none,
+  3, 170, :_reduce_41,
+  3, 170, :_reduce_42,
+  6, 170, :_reduce_43,
+  5, 170, :_reduce_44,
+  5, 170, :_reduce_45,
+  5, 170, :_reduce_46,
+  5, 170, :_reduce_47,
+  3, 170, :_reduce_48,
+  1, 178, :_reduce_49,
+  1, 178, :_reduce_none,
+  1, 176, :_reduce_none,
+  3, 176, :_reduce_52,
+  3, 176, :_reduce_53,
+  3, 176, :_reduce_54,
+  2, 176, :_reduce_55,
+  1, 176, :_reduce_none,
+  1, 169, :_reduce_57,
+  0, 189, :_reduce_58,
+  0, 190, :_reduce_59,
+  4, 187, :_reduce_60,
+  1, 172, :_reduce_none,
+  1, 172, :_reduce_none,
+  1, 192, :_reduce_none,
+  4, 192, :_reduce_64,
+  0, 200, :_reduce_65,
+  4, 197, :_reduce_66,
+  1, 199, :_reduce_67,
+  2, 191, :_reduce_68,
+  3, 191, :_reduce_69,
+  4, 191, :_reduce_70,
+  5, 191, :_reduce_71,
+  4, 191, :_reduce_72,
+  5, 191, :_reduce_73,
+  2, 191, :_reduce_74,
+  2, 191, :_reduce_75,
+  2, 191, :_reduce_76,
+  2, 191, :_reduce_77,
+  2, 191, :_reduce_78,
+  1, 171, :_reduce_none,
+  3, 171, :_reduce_80,
+  1, 205, :_reduce_none,
+  3, 205, :_reduce_82,
+  1, 204, :_reduce_83,
+  2, 204, :_reduce_84,
+  3, 204, :_reduce_85,
+  5, 204, :_reduce_86,
+  2, 204, :_reduce_87,
+  4, 204, :_reduce_88,
+  2, 204, :_reduce_89,
+  4, 204, :_reduce_90,
+  1, 204, :_reduce_91,
+  3, 204, :_reduce_92,
+  1, 208, :_reduce_none,
+  3, 208, :_reduce_94,
+  2, 207, :_reduce_95,
+  3, 207, :_reduce_96,
+  1, 210, :_reduce_97,
+  3, 210, :_reduce_98,
+  1, 209, :_reduce_99,
+  1, 209, :_reduce_100,
+  4, 209, :_reduce_101,
+  3, 209, :_reduce_102,
+  3, 209, :_reduce_103,
+  3, 209, :_reduce_104,
+  3, 209, :_reduce_105,
+  2, 209, :_reduce_106,
+  1, 209, :_reduce_107,
+  1, 173, :_reduce_108,
+  1, 173, :_reduce_109,
+  4, 173, :_reduce_110,
+  3, 173, :_reduce_111,
+  3, 173, :_reduce_112,
+  3, 173, :_reduce_113,
+  3, 173, :_reduce_114,
+  2, 173, :_reduce_115,
+  1, 173, :_reduce_116,
+  1, 213, :_reduce_117,
+  1, 213, :_reduce_none,
+  2, 214, :_reduce_119,
+  1, 214, :_reduce_120,
+  3, 214, :_reduce_121,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_125,
+  1, 215, :_reduce_none,
+  1, 167, :_reduce_127,
+  1, 167, :_reduce_none,
+  1, 168, :_reduce_129,
+  0, 219, :_reduce_130,
+  4, 168, :_reduce_131,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  3, 186, :_reduce_203,
+  3, 186, :_reduce_204,
+  6, 186, :_reduce_205,
+  5, 186, :_reduce_206,
+  5, 186, :_reduce_207,
+  5, 186, :_reduce_208,
+  5, 186, :_reduce_209,
+  4, 186, :_reduce_210,
+  3, 186, :_reduce_211,
+  3, 186, :_reduce_212,
+  3, 186, :_reduce_213,
+  3, 186, :_reduce_214,
+  3, 186, :_reduce_215,
+  3, 186, :_reduce_216,
+  3, 186, :_reduce_217,
+  3, 186, :_reduce_218,
+  3, 186, :_reduce_219,
+  4, 186, :_reduce_220,
+  2, 186, :_reduce_221,
+  2, 186, :_reduce_222,
+  3, 186, :_reduce_223,
+  3, 186, :_reduce_224,
+  3, 186, :_reduce_225,
+  3, 186, :_reduce_226,
+  1, 186, :_reduce_none,
+  3, 186, :_reduce_228,
+  3, 186, :_reduce_229,
+  3, 186, :_reduce_230,
+  3, 186, :_reduce_231,
+  3, 186, :_reduce_232,
+  2, 186, :_reduce_233,
+  2, 186, :_reduce_234,
+  3, 186, :_reduce_235,
+  3, 186, :_reduce_236,
+  3, 186, :_reduce_237,
+  3, 186, :_reduce_238,
+  3, 186, :_reduce_239,
+  6, 186, :_reduce_240,
+  1, 186, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  3, 222, :_reduce_246,
+  3, 222, :_reduce_247,
+  1, 225, :_reduce_248,
+  1, 226, :_reduce_none,
+  2, 226, :_reduce_250,
+  4, 226, :_reduce_251,
+  2, 226, :_reduce_252,
+  1, 220, :_reduce_none,
+  3, 220, :_reduce_254,
+  3, 230, :_reduce_255,
+  1, 231, :_reduce_none,
+  1, 231, :_reduce_none,
+  1, 181, :_reduce_none,
+  1, 181, :_reduce_none,
+  2, 181, :_reduce_260,
+  4, 181, :_reduce_261,
+  2, 181, :_reduce_262,
+  1, 203, :_reduce_263,
+  2, 203, :_reduce_264,
+  2, 203, :_reduce_265,
+  4, 203, :_reduce_266,
+  1, 203, :_reduce_267,
+  0, 234, :_reduce_268,
+  2, 196, :_reduce_269,
+  2, 233, :_reduce_270,
+  2, 232, :_reduce_271,
+  1, 232, :_reduce_none,
+  1, 227, :_reduce_273,
+  2, 227, :_reduce_274,
+  3, 227, :_reduce_275,
+  4, 227, :_reduce_276,
+  1, 175, :_reduce_277,
+  1, 175, :_reduce_278,
+  3, 174, :_reduce_279,
+  4, 174, :_reduce_280,
+  2, 174, :_reduce_281,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_292,
+  0, 269, :_reduce_293,
+  4, 223, :_reduce_294,
+  0, 270, :_reduce_295,
+  3, 223, :_reduce_296,
+  0, 271, :_reduce_297,
+  4, 223, :_reduce_298,
+  3, 223, :_reduce_299,
+  3, 223, :_reduce_300,
+  2, 223, :_reduce_301,
+  0, 272, :_reduce_302,
+  4, 223, :_reduce_303,
+  0, 273, :_reduce_304,
+  4, 223, :_reduce_305,
+  1, 223, :_reduce_306,
+  4, 223, :_reduce_307,
+  3, 223, :_reduce_308,
+  1, 223, :_reduce_309,
+  5, 223, :_reduce_310,
+  4, 223, :_reduce_311,
+  3, 223, :_reduce_312,
+  2, 223, :_reduce_313,
+  1, 223, :_reduce_none,
+  2, 223, :_reduce_315,
+  1, 223, :_reduce_316,
+  6, 223, :_reduce_317,
+  6, 223, :_reduce_318,
+  4, 223, :_reduce_319,
+  4, 223, :_reduce_320,
+  5, 223, :_reduce_321,
+  4, 223, :_reduce_322,
+  6, 223, :_reduce_323,
+  0, 274, :_reduce_324,
+  6, 223, :_reduce_325,
+  0, 275, :_reduce_326,
+  0, 276, :_reduce_327,
+  8, 223, :_reduce_328,
+  0, 277, :_reduce_329,
+  5, 223, :_reduce_330,
+  0, 278, :_reduce_331,
+  6, 223, :_reduce_332,
+  0, 279, :_reduce_333,
+  0, 280, :_reduce_334,
+  9, 223, :_reduce_335,
+  1, 223, :_reduce_336,
+  1, 223, :_reduce_337,
+  1, 223, :_reduce_338,
+  1, 223, :_reduce_339,
+  1, 180, :_reduce_340,
+  1, 244, :_reduce_none,
+  1, 250, :_reduce_none,
+  1, 253, :_reduce_none,
+  1, 255, :_reduce_none,
+  1, 256, :_reduce_none,
+  1, 257, :_reduce_none,
+  1, 259, :_reduce_none,
+  1, 261, :_reduce_348,
+  1, 264, :_reduce_349,
+  1, 265, :_reduce_350,
+  1, 281, :_reduce_none,
+  1, 282, :_reduce_none,
+  1, 283, :_reduce_none,
+  1, 284, :_reduce_none,
+  1, 285, :_reduce_none,
+  1, 161, :_reduce_none,
+  1, 286, :_reduce_none,
+  1, 245, :_reduce_none,
+  1, 202, :_reduce_none,
+  1, 251, :_reduce_none,
+  1, 251, :_reduce_none,
+  2, 251, :_reduce_none,
+  1, 188, :_reduce_none,
+  1, 188, :_reduce_none,
+  1, 252, :_reduce_none,
+  5, 252, :_reduce_366,
+  1, 254, :_reduce_none,
+  2, 254, :_reduce_368,
+  1, 260, :_reduce_none,
+  1, 260, :_reduce_370,
+  1, 287, :_reduce_none,
+  3, 287, :_reduce_372,
+  1, 290, :_reduce_373,
+  3, 290, :_reduce_374,
+  1, 289, :_reduce_375,
+  3, 289, :_reduce_376,
+  5, 289, :_reduce_377,
+  1, 289, :_reduce_378,
+  3, 289, :_reduce_379,
+  2, 291, :_reduce_380,
+  1, 291, :_reduce_381,
+  4, 292, :_reduce_382,
+  2, 292, :_reduce_383,
+  2, 292, :_reduce_384,
+  1, 292, :_reduce_385,
+  2, 297, :_reduce_386,
+  1, 297, :_reduce_none,
+  6, 298, :_reduce_388,
+  8, 298, :_reduce_389,
+  4, 298, :_reduce_390,
+  6, 298, :_reduce_391,
+  4, 298, :_reduce_392,
+  2, 298, :_reduce_393,
+  6, 298, :_reduce_394,
+  2, 298, :_reduce_395,
+  4, 298, :_reduce_396,
+  6, 298, :_reduce_397,
+  2, 298, :_reduce_398,
+  4, 298, :_reduce_399,
+  2, 298, :_reduce_400,
+  4, 298, :_reduce_401,
+  1, 298, :_reduce_402,
+  1, 302, :_reduce_403,
+  1, 302, :_reduce_404,
+  3, 303, :_reduce_405,
+  1, 303, :_reduce_406,
+  4, 303, :_reduce_407,
+  1, 304, :_reduce_none,
+  4, 304, :_reduce_409,
+  1, 305, :_reduce_410,
+  3, 305, :_reduce_411,
+  1, 306, :_reduce_412,
+  1, 306, :_reduce_none,
+  0, 310, :_reduce_414,
+  0, 311, :_reduce_415,
+  5, 249, :_reduce_416,
+  4, 308, :_reduce_417,
+  1, 308, :_reduce_418,
+  3, 309, :_reduce_419,
+  3, 309, :_reduce_420,
+  3, 313, :_reduce_421,
+  2, 193, :_reduce_422,
+  4, 193, :_reduce_423,
+  5, 193, :_reduce_424,
+  5, 193, :_reduce_425,
+  2, 248, :_reduce_426,
+  4, 248, :_reduce_427,
+  4, 248, :_reduce_428,
+  3, 248, :_reduce_429,
+  3, 248, :_reduce_430,
+  3, 248, :_reduce_431,
+  2, 248, :_reduce_432,
+  1, 248, :_reduce_433,
+  4, 248, :_reduce_434,
+  0, 316, :_reduce_435,
+  4, 247, :_reduce_436,
+  0, 317, :_reduce_437,
+  4, 247, :_reduce_438,
+  0, 318, :_reduce_439,
+  0, 319, :_reduce_440,
+  4, 198, :_reduce_441,
+  0, 321, :_reduce_442,
+  0, 322, :_reduce_443,
+  4, 314, :_reduce_444,
+  1, 320, :_reduce_445,
+  2, 320, :_reduce_446,
+  3, 320, :_reduce_447,
+  4, 320, :_reduce_448,
+  0, 324, :_reduce_449,
+  6, 258, :_reduce_450,
+  1, 323, :_reduce_none,
+  1, 323, :_reduce_none,
+  6, 160, :_reduce_453,
+  0, 160, :_reduce_454,
+  1, 325, :_reduce_455,
+  1, 325, :_reduce_none,
+  1, 325, :_reduce_none,
+  2, 326, :_reduce_458,
+  1, 326, :_reduce_none,
+  2, 162, :_reduce_460,
+  1, 162, :_reduce_none,
+  1, 235, :_reduce_462,
+  1, 235, :_reduce_none,
+  1, 236, :_reduce_464,
+  1, 328, :_reduce_465,
+  1, 328, :_reduce_none,
+  2, 328, :_reduce_467,
+  3, 329, :_reduce_468,
+  1, 329, :_reduce_469,
+  3, 237, :_reduce_470,
+  3, 238, :_reduce_471,
+  3, 239, :_reduce_472,
+  3, 239, :_reduce_473,
+  1, 333, :_reduce_474,
+  3, 333, :_reduce_475,
+  1, 334, :_reduce_none,
+  2, 334, :_reduce_477,
+  3, 241, :_reduce_478,
+  3, 241, :_reduce_479,
+  1, 336, :_reduce_480,
+  3, 336, :_reduce_481,
+  3, 240, :_reduce_482,
+  3, 240, :_reduce_483,
+  3, 242, :_reduce_484,
+  3, 242, :_reduce_485,
+  1, 337, :_reduce_486,
+  3, 337, :_reduce_487,
+  1, 338, :_reduce_488,
+  3, 338, :_reduce_489,
+  1, 330, :_reduce_490,
+  2, 330, :_reduce_491,
+  1, 331, :_reduce_492,
+  2, 331, :_reduce_493,
+  1, 332, :_reduce_494,
+  2, 332, :_reduce_495,
+  1, 335, :_reduce_496,
+  0, 340, :_reduce_497,
+  3, 335, :_reduce_498,
+  0, 341, :_reduce_499,
+  4, 335, :_reduce_500,
+  1, 339, :_reduce_501,
+  1, 339, :_reduce_502,
+  1, 339, :_reduce_503,
+  1, 339, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  2, 342, :_reduce_507,
+  1, 342, :_reduce_508,
+  1, 344, :_reduce_none,
+  1, 344, :_reduce_none,
+  1, 344, :_reduce_none,
+  1, 344, :_reduce_none,
+  3, 343, :_reduce_513,
+  1, 327, :_reduce_none,
+  2, 327, :_reduce_515,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 211, :_reduce_none,
+  1, 211, :_reduce_none,
+  1, 211, :_reduce_none,
+  1, 211, :_reduce_none,
+  1, 211, :_reduce_none,
+  1, 212, :_reduce_525,
+  1, 212, :_reduce_526,
+  1, 212, :_reduce_527,
+  1, 212, :_reduce_528,
+  1, 212, :_reduce_529,
+  1, 212, :_reduce_530,
+  1, 212, :_reduce_531,
+  1, 243, :_reduce_532,
+  1, 243, :_reduce_533,
+  1, 179, :_reduce_534,
+  1, 179, :_reduce_535,
+  1, 184, :_reduce_536,
+  1, 184, :_reduce_537,
+  0, 345, :_reduce_538,
+  4, 262, :_reduce_539,
+  1, 262, :_reduce_540,
+  3, 266, :_reduce_541,
+  0, 347, :_reduce_542,
+  3, 266, :_reduce_543,
+  4, 346, :_reduce_544,
+  2, 346, :_reduce_545,
+  2, 346, :_reduce_546,
+  1, 346, :_reduce_none,
+  2, 349, :_reduce_548,
+  0, 349, :_reduce_549,
+  6, 312, :_reduce_550,
+  8, 312, :_reduce_551,
+  4, 312, :_reduce_552,
+  6, 312, :_reduce_553,
+  4, 312, :_reduce_554,
+  6, 312, :_reduce_555,
+  2, 312, :_reduce_556,
+  4, 312, :_reduce_557,
+  6, 312, :_reduce_558,
+  2, 312, :_reduce_559,
+  4, 312, :_reduce_560,
+  2, 312, :_reduce_561,
+  4, 312, :_reduce_562,
+  1, 312, :_reduce_563,
+  0, 312, :_reduce_564,
+  1, 307, :_reduce_565,
+  1, 307, :_reduce_566,
+  1, 307, :_reduce_567,
+  1, 307, :_reduce_568,
+  1, 288, :_reduce_none,
+  1, 288, :_reduce_570,
+  1, 351, :_reduce_none,
+  3, 351, :_reduce_572,
+  1, 299, :_reduce_573,
+  3, 299, :_reduce_574,
+  1, 352, :_reduce_none,
+  2, 353, :_reduce_576,
+  1, 353, :_reduce_577,
+  2, 354, :_reduce_578,
+  1, 354, :_reduce_579,
+  1, 293, :_reduce_none,
+  3, 293, :_reduce_581,
+  1, 348, :_reduce_none,
+  3, 348, :_reduce_583,
+  1, 355, :_reduce_none,
+  1, 355, :_reduce_none,
+  2, 294, :_reduce_586,
+  1, 294, :_reduce_587,
+  3, 356, :_reduce_588,
+  3, 357, :_reduce_589,
+  1, 300, :_reduce_590,
+  3, 300, :_reduce_591,
+  1, 350, :_reduce_592,
+  3, 350, :_reduce_593,
+  1, 358, :_reduce_none,
+  1, 358, :_reduce_none,
+  2, 301, :_reduce_596,
+  1, 301, :_reduce_597,
+  1, 359, :_reduce_none,
+  1, 359, :_reduce_none,
+  2, 296, :_reduce_600,
+  2, 295, :_reduce_601,
+  0, 295, :_reduce_602,
+  1, 267, :_reduce_none,
+  0, 360, :_reduce_604,
+  4, 267, :_reduce_605,
+  1, 246, :_reduce_606,
+  2, 246, :_reduce_none,
+  1, 229, :_reduce_none,
+  3, 229, :_reduce_609,
+  3, 361, :_reduce_610,
+  2, 361, :_reduce_611,
+  2, 361, :_reduce_612,
+  1, 201, :_reduce_none,
+  1, 201, :_reduce_none,
+  1, 201, :_reduce_none,
+  1, 195, :_reduce_none,
+  1, 195, :_reduce_none,
+  1, 195, :_reduce_none,
+  1, 195, :_reduce_none,
+  1, 315, :_reduce_none,
+  1, 315, :_reduce_none,
+  1, 315, :_reduce_none,
+  1, 268, :_reduce_none,
+  1, 268, :_reduce_none,
+  1, 183, :_reduce_none,
+  1, 194, :_reduce_none,
+  1, 194, :_reduce_none,
+  0, 150, :_reduce_none,
+  1, 150, :_reduce_none,
+  0, 185, :_reduce_none,
+  1, 185, :_reduce_none,
+  2, 206, :_reduce_632,
+  2, 182, :_reduce_633,
+  0, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 263, :_reduce_637,
+  1, 263, :_reduce_none,
+  1, 153, :_reduce_none,
+  2, 153, :_reduce_640,
+  0, 151, :_reduce_641 ]
+
+racc_reduce_n = 642
+
+racc_shift_n = 1083
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLOWEST => 141,
+  :tEQL => 142,
+  :tBDOT2 => 143,
+  :tBDOT3 => 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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLOWEST",
+  "tEQL",
+  "tBDOT2",
+  "tBDOT3",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "@3",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@4",
+  "stmts",
+  "stmt_or_begin",
+  "@5",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@6",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "backref",
+  "opt_nl",
+  "arg",
+  "expr_value_do",
+  "do",
+  "@7",
+  "@8",
+  "command",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@9",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "fname",
+  "op",
+  "reswords",
+  "symbol",
+  "@10",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@11",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "k_def",
+  "f_arglist",
+  "singleton",
+  "dot_or_colon",
+  "@12",
+  "@13",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "@22",
+  "@23",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "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",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@24",
+  "@25",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@26",
+  "@27",
+  "@28",
+  "@29",
+  "case_args",
+  "@30",
+  "@31",
+  "cases",
+  "@32",
+  "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",
+  "@33",
+  "@34",
+  "ssym",
+  "dsym",
+  "sym",
+  "@35",
+  "args_tail",
+  "@36",
+  "f_kwarg",
+  "opt_args_tail",
+  "f_optarg",
+  "f_arg_item",
+  "f_label",
+  "f_kw",
+  "f_block_kw",
+  "kwrest_mark",
+  "f_opt",
+  "f_block_opt",
+  "restarg_mark",
+  "blkarg_mark",
+  "@37",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 11
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      _, line, stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      res = _values[-2]
+                      # TODO: move down to main match so I can just use val
+
+                      warn "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_16(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 17 omitted
+
+# reduce 18 omitted
+
+def _reduce_19(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_20(val, _values, result)
+                      result = val[1]
+                      debug 12
+
+    result
+end
+
+# reduce 21 omitted
+
+def _reduce_22(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_35(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 13
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 36 omitted
+
+def _reduce_37(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+# reduce 50 omitted
+
+# reduce 51 omitted
+
+def _reduce_52(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_53(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_55(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+# reduce 56 omitted
+
+def _reduce_57(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_58(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 61 omitted
+
+# reduce 62 omitted
+
+# reduce 63 omitted
+
+def _reduce_64(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_65(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_66(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_74(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_75(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_76(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_77(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 79 omitted
+
+def _reduce_80(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 81 omitted
+
+def _reduce_82(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_83(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      l = lexer.lineno
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_92(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 93 omitted
+
+def _reduce_94(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_95(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 14
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_106(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 15
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_107(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 16
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 17
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 18
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 118 omitted
+
+def _reduce_119(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_120(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 122 omitted
+
+# reduce 123 omitted
+
+# reduce 124 omitted
+
+def _reduce_125(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 126 omitted
+
+def _reduce_127(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 128 omitted
+
+def _reduce_129(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_130(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_131(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+def _reduce_203(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_204(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_205(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_206(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_207(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_208(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_209(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_210(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_211(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_212(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_213(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_214(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_215(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_216(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 227 omitted
+
+def _reduce_228(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_229(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+# reduce 241 omitted
+
+# reduce 242 omitted
+
+# reduce 243 omitted
+
+# reduce 244 omitted
+
+# reduce 245 omitted
+
+def _reduce_246(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_247(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 249 omitted
+
+def _reduce_250(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_251(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_252(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 253 omitted
+
+def _reduce_254(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_255(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+# reduce 256 omitted
+
+# reduce 257 omitted
+
+# reduce 258 omitted
+
+# reduce 259 omitted
+
+def _reduce_260(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_261(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_262(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_263(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_264(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_265(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_266(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_267(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_270(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_271(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 272 omitted
+
+def _reduce_273(val, _values, result)
+                      arg, = val
+                      lineno = arg.line || lexer.lineno # HACK
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_274(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_275(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      # TODO: the line number from tSTAR has been dropped
+                      args, _, _, id = val
+                      line = lexer.lineno
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_279(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_280(val, _values, result)
+                      # TODO: make all tXXXX terminals include lexer.lineno
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_281(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 282 omitted
+
+# reduce 283 omitted
+
+# reduce 284 omitted
+
+# reduce 285 omitted
+
+# reduce 286 omitted
+
+# reduce 287 omitted
+
+# reduce 288 omitted
+
+# reduce 289 omitted
+
+# reduce 290 omitted
+
+# reduce 291 omitted
+
+def _reduce_292(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_293(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+                      result = lexer.lineno
+
+    result
+end
+
+def _reduce_296(val, _values, result)
+                      _, line, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_297(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      _, stmt, _ = val
+                      result = stmt
+                      result ||= s(:nil).line lexer.lineno
+                      result.paren = true
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_303(val, _values, result)
+                      _, line, args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_308(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_309(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_310(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_311(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_312(val, _values, result)
+                      debug 20
+
+    result
+end
+
+def _reduce_313(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 314 omitted
+
+def _reduce_315(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_316(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_317(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_318(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      result = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      result = self.in_def
+
+                      self.in_single += 1 # TODO: remove?
+
+                      self.in_def = true # local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
+                      # =>
+                      # [kdef, recv, (name, line), in_def, args, body, kend]
+
+                      val.delete_at 3
+                      val.delete_at 2
+
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 341 omitted
+
+# reduce 342 omitted
+
+# reduce 343 omitted
+
+# reduce 344 omitted
+
+# reduce 345 omitted
+
+# reduce 346 omitted
+
+# reduce 347 omitted
+
+def _reduce_348(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_349(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 351 omitted
+
+# reduce 352 omitted
+
+# reduce 353 omitted
+
+# reduce 354 omitted
+
+# reduce 355 omitted
+
+# reduce 356 omitted
+
+# reduce 357 omitted
+
+# reduce 358 omitted
+
+# reduce 359 omitted
+
+# reduce 360 omitted
+
+# reduce 361 omitted
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+def _reduce_366(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 367 omitted
+
+def _reduce_368(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 369 omitted
+
+def _reduce_370(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+# reduce 371 omitted
+
+def _reduce_372(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_373(val, _values, result)
+                      sym, = val
+
+                      result = s(:array, sym).line lexer.lineno
+
+    result
+end
+
+def _reduce_374(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_375(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_376(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_377(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_378(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_379(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_380(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_381(val, _values, result)
+                      result = args [:*]
+                      result.line lexer.lineno # FIX: tSTAR -> line
+
+    result
+end
+
+def _reduce_382(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_383(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_384(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_385(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_386(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 387 omitted
+
+def _reduce_388(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_389(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_390(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_391(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      result = args(val) << nil
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_404(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_405(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+def _reduce_406(val, _values, result)
+                      result = s(:args).line lexer.lineno
+
+    result
+end
+
+def _reduce_407(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+# reduce 408 omitted
+
+def _reduce_409(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 413 omitted
+
+def _reduce_414(val, _values, result)
+                      self.env.extend :dynamic
+                      result = [lexer.lineno, lexer.lpar_beg]
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_415(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      _, (line, lpar), args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      result = s(:zsuper).line lexer.lineno
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_440(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_441(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_442(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_443(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      result = new_when(val[2], val[4])
+                      result.line val[1]
+                      result << val[5] if val[5]
+
+    result
+end
+
+# reduce 451 omitted
+
+# reduce 452 omitted
+
+def _reduce_453(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_454(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 456 omitted
+
+# reduce 457 omitted
+
+def _reduce_458(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 459 omitted
+
+def _reduce_460(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 461 omitted
+
+def _reduce_462(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 463 omitted
+
+def _reduce_464(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_465(val, _values, result)
+                      debug 37
+
+    result
+end
+
+# reduce 466 omitted
+
+def _reduce_467(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_468(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_469(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_470(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_471(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 476 omitted
+
+def _reduce_477(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_478(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_479(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_480(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_483(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_484(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_485(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_486(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_488(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_489(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_494(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_495(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_496(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_497(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_498(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_499(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                                lexer.lineno,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_500(val, _values, result)
+                      _, memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 38
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_501(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 504 omitted
+
+# reduce 505 omitted
+
+# reduce 506 omitted
+
+def _reduce_507(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_508(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 509 omitted
+
+# reduce 510 omitted
+
+# reduce 511 omitted
+
+# reduce 512 omitted
+
+def _reduce_513(val, _values, result)
+                      _, result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line lexer.lineno
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 39
+                      end
+
+    result
+end
+
+# reduce 514 omitted
+
+def _reduce_515(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 516 omitted
+
+# reduce 517 omitted
+
+# reduce 518 omitted
+
+# reduce 519 omitted
+
+# reduce 520 omitted
+
+# reduce 521 omitted
+
+# reduce 522 omitted
+
+# reduce 523 omitted
+
+# reduce 524 omitted
+
+def _reduce_525(val, _values, result)
+ result = s(:nil).line lexer.lineno
+    result
+end
+
+def _reduce_526(val, _values, result)
+ result = s(:self).line lexer.lineno
+    result
+end
+
+def _reduce_527(val, _values, result)
+ result = s(:true).line lexer.lineno
+    result
+end
+
+def _reduce_528(val, _values, result)
+ result = s(:false).line lexer.lineno
+    result
+end
+
+def _reduce_529(val, _values, result)
+ result = s(:str, self.file).line lexer.lineno
+    result
+end
+
+def _reduce_530(val, _values, result)
+ result = s(:lit, lexer.lineno).line lexer.lineno
+    result
+end
+
+def _reduce_531(val, _values, result)
+                      l = lexer.lineno
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_532(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+                      result.line line
+
+    result
+end
+
+def _reduce_533(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 40
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_539(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_540(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 547 omitted
+
+def _reduce_548(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_549(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_550(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_551(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_555(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_556(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_557(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_558(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_560(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_561(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_562(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_563(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_564(val, _values, result)
+                      result = args val
+                      # result.line lexer.lineno
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 569 omitted
+
+def _reduce_570(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 571 omitted
+
+def _reduce_572(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_573(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_574(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+# reduce 575 omitted
+
+def _reduce_576(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_577(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_578(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_579(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 580 omitted
+
+def _reduce_581(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 582 omitted
+
+def _reduce_583(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 584 omitted
+
+# reduce 585 omitted
+
+def _reduce_586(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_587(val, _values, result)
+                      id = :"**"
+                      self.env[id] = :lvar # TODO: needed?!?
+                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
+
+    result
+end
+
+def _reduce_588(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+
+    result
+end
+
+def _reduce_589(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+
+    result
+end
+
+def _reduce_590(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_591(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 594 omitted
+
+# reduce 595 omitted
+
+def _reduce_596(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_597(val, _values, result)
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
+
+    result
+end
+
+# reduce 598 omitted
+
+# reduce 599 omitted
+
+def _reduce_600(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_601(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_602(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 603 omitted
+
+def _reduce_604(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_605(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 607 omitted
+
+# reduce 608 omitted
+
+def _reduce_609(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_610(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_611(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_612(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 613 omitted
+
+# reduce 614 omitted
+
+# reduce 615 omitted
+
+# reduce 616 omitted
+
+# reduce 617 omitted
+
+# reduce 618 omitted
+
+# reduce 619 omitted
+
+# reduce 620 omitted
+
+# reduce 621 omitted
+
+# reduce 622 omitted
+
+# reduce 623 omitted
+
+# reduce 624 omitted
+
+# reduce 625 omitted
+
+# reduce 626 omitted
+
+# reduce 627 omitted
+
+# reduce 628 omitted
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+# reduce 631 omitted
+
+def _reduce_632(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_633(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 634 omitted
+
+# reduce 635 omitted
+
+# reduce 636 omitted
+
+def _reduce_637(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 638 omitted
+
+# reduce 639 omitted
+
+def _reduce_640(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_641(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby21Parser
diff -pruN 3.20.0-2/lib/ruby_parser22.rb 3.21.1-1/lib/ruby_parser22.rb
--- 3.20.0-2/lib/ruby_parser22.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser22.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,11119 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby22Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -520,   573,   573,   654,   573,   573,   284,  -520,  -520,  -520,
+     3,   573,  -520,  -520,  -520,   284,  -520,   233,   -94,   657,
+   224,   225,    95,  -111,  -520,   254,  -520,  -520,  -520,  -108,
+    96,  -109,   -80,   130,   224,   225,  -520,  -520,   129,  -520,
+  -520,  -520,  -520,  -520,   231,  -102,  -116,  -104,  -113,  -115,
+  -111,  -110,  -113,   234,   428,   126,   886,   251,  -110,   430,
+   429,   253,   252,   224,   225,   221,   653,  -520,  -520,  -520,
+  -520,  -520,  -520,  -520,  -520,  -520,  -520,  -520,  -520,  -520,
+  -520,   746,   656,  -520,  -520,  -520,  -107,  -520,  -520,   224,
+   225,  -520,   851,   286,  -520,  -520,   222,  -520,   852,  -520,
+  -116,  -520,   286,  -520,  -520,  -520,  -520,  -520,  -520,  -520,
+   234,  -520,  -102,  -520,  -104,   130,   130,  -112,   130,   130,
+   129,   129,   948,   129,   129,   130,  -520,  -520,  -520,  -520,
+   129,  -520,  -523,  -520,   -99,  -112,  -100,  -111,  -520,  -523,
+  -523,  -523,  -111,  -520,  -523,  -523,  -523,  -102,  -523,  -104,
+  -102,  -107,  -104,   234,  -106,  -102,  -523,  -104,  -523,  -523,
+  -523,   885,  -113,  -101,  -102,  -110,  -104,  -113,  -523,  -523,
+  -110,  -523,  -523,  -523,  -523,  -523,  -114,   108,   109,   234,
+   834,   130,   284,  -618,   834,   230,   129,   284,  -534,   108,
+   109,  -520,   279,   735,   224,   225,   734,  -615,  -520,  -523,
+  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
+  -523,  -523,  -523,  -618,   833,  -523,  -523,  -523,   833,  -523,
+  -523,  -523,  -103,  -523,   638,  -530,  -523,  -523,  -523,  -523,
+  -616,  -523,  -530,  -523,   223,  -523,  -523,  -523,  -523,  -523,
+  -523,  -523,  -619,  -523,  -108,  -523,  -534,   281,   638,  -112,
+  -520,   638,   281,   226,  -112,   110,   111,  -520,  -523,  -523,
+  -523,  -523,  -615,  -523,  -300,  -523,  -520,   110,   111,   286,
+  -523,  -300,  -300,  -300,   286,  -523,   623,  -300,  -300,   254,
+  -300,  -105,   230,  -523,  -615,   640,   639,   626,   -99,   229,
+  -523,   130,  -622,  -434,   797,  -616,   129,   274,   227,  -523,
+  -300,  -300,  -108,  -300,  -300,  -300,  -300,  -300,   336,   640,
+   639,   251,   640,   639,   636,   253,   252,  -616,   799,  -529,
+   634,   633,   638,   130,   735,   337,  -529,   737,   129,  -622,
+  -535,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,  -622,  -434,  -300,  -300,  -300,
+   638,   680,  -622,  -434,   627,  -300,   587,  -618,  -300,   482,
+   588,  -622,  -434,  -300,   638,  -300,   234,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,   231,  -300,   623,  -300,   638,  -622,
+  -434,   638,  -622,   640,   639,   636,  -109,   626,   400,  -622,
+  -300,  -300,  -622,  -105,  -618,  -300,  -535,   552,  -622,  -622,
+  -622,  -622,  -300,   708,   130,  -622,  -622,  -114,  -622,   129,
+   403,   640,   639,   641,   406,  -116,  -622,  -622,   825,   638,
+   634,   633,   643,   224,   225,   640,   639,   646,  -622,  -622,
+  -116,  -622,  -622,  -622,  -622,  -622,   552,   409,  -100,   640,
+   639,   651,   640,   639,   658,   735,   674,   865,   737,   580,
+   826,   674,  -109,  -115,   627,   675,   919,   812,   426,  -622,
+  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,
+  -622,  -622,  -622,   431,  -111,  -622,  -622,  -622,  -106,   681,
+   640,   639,   675,  -622,   812,   130,  -622,  -531,  -102,   481,
+   129,  -622,  -115,  -622,  -531,  -622,  -622,  -622,  -622,  -622,
+  -622,  -622,  -111,  -622,  -622,  -622,  -113,  -111,   483,  -340,
+  -528,  -113,  -110,  -110,   271,   272,  -340,  -528,  -622,  -622,
+  -622,  -103,   484,  -622,  -104,  -340,  -101,  -622,  -622,  -622,
+  -622,   233,  -622,  -622,  -622,  -112,  -622,   130,  -113,   513,
+  -110,   522,   129,   525,   254,  -622,  -622,  -622,  -622,   270,
+   269,  -525,   735,   861,   865,   737,  -622,  -622,  -525,  -622,
+  -622,  -622,  -622,  -622,   618,  -526,   615,   614,   613,   527,
+   616,   618,  -526,   615,   614,   613,   251,   616,  -527,   600,
+   253,   252,   249,   250,   -79,  -527,   601,  -622,  -622,  -622,
+  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,
+  -622,   234,   785,  -622,  -622,  -622,   230,   827,  -622,   785,
+   538,  -622,   539,   479,  -622,  -622,   546,  -622,   789,  -622,
+   291,  -622,   480,  -622,  -622,  -622,  -622,  -622,  -622,  -622,
+   234,  -622,  -622,  -622,   618,   281,   615,   614,   613,   623,
+   616,   133,   134,   135,   136,   137,  -622,  -622,  -622,  -622,
+   626,  -622,  -300,  -622,   234,  -532,   549,  1046,  -622,  -300,
+  -300,  -300,  -532,  -112,  -300,  -300,  -300,   553,  -300,   254,
+  -533,  -532,   621,   604,   634,   633,   254,  -533,  -300,  -300,
+  -300,   631,   630,   634,   633,   234,  -533,   580,  -300,  -300,
+   419,  -300,  -300,  -300,  -300,  -300,   618,   585,   615,   614,
+   613,   586,   616,   618,   594,   615,   614,   613,   251,   616,
+   861,   865,   253,   252,   249,   250,   645,   627,   649,  -300,
+  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,   652,   785,  -300,  -300,  -300,   230,   828,
+  -300,   785,   655,  -300,   662,   545,  -300,  -300,  -273,  -300,
+   789,  -300,   664,  -300,   543,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,   665,  -300,   234,  -300,   618,   672,   615,   614,
+   613,   623,   616,   133,   134,   135,   136,   137,  -300,  -300,
+  -300,  -300,   626,  -300,  -300,  -300,   673,   281,   685,   254,
+  -300,  -300,  -300,  -300,   254,  -114,   254,  -300,  -300,   618,
+  -300,   615,   614,   613,   621,   616,   618,   254,   615,   614,
+   613,   692,   616,   631,   630,   634,   633,   234,   234,   426,
+  -300,  -300,  -291,  -300,  -300,  -300,  -300,  -300,   234,  -291,
+   -94,   712,   230,   234,   230,   558,   723,   785,  -291,   555,
+   728,   584,   731,   234,   785,   234,   789,   739,   480,   627,
+   582,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,   230,   230,  -300,  -300,  -300,
+  -301,   680,   590,   668,   527,  -300,   742,  -301,  -300,   731,
+   731,   592,   666,  -300,   580,  -300,  -301,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,   731,  -300,   767,  -300,  -301,   773,
+   230,  -532,  -533,   776,   777,  -301,   779,  1030,  -532,  -533,
+  -300,  -300,  -622,  -300,  -301,  -300,   592,  -532,  -533,  -622,
+  -622,  -622,  -300,   781,   783,  -622,  -622,  -114,  -622,   254,
+  -644,  -644,  -644,  -644,   271,   272,   792,  -622,  -644,  -644,
+   230,   793,   794,  -291,   800,   264,   265,  1036,  -622,  -622,
+  -291,  -622,  -622,  -622,  -622,  -622,  1034,   801,  -274,  -291,
+   813,   251,   513,   257,   513,   253,   252,   249,   250,   270,
+   269,   255,   618,   256,   615,   614,   613,   234,   616,  -622,
+  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,
+  -622,  -622,  -622,  -300,   230,  -622,  -622,  -622,   830,   681,
+  -300,  1030,   274,  -622,   839,  -619,  -622,   841,   525,  -300,
+   592,  -622,   527,  -622,   723,  -622,  -622,  -622,  -622,  -622,
+  -622,  -622,   234,  -622,  -622,  -622,  -301,   281,   281,   723,
+   908,   909,   254,  -301,   910,   124,   125,   865,  -622,  -622,
+   731,  -622,  -301,  -622,     8,    85,    86,    87,    12,    78,
+  -622,   234,   234,    79,    80,  -112,   731,   234,    83,   903,
+    81,    82,    84,    33,    34,    76,    77,   133,   134,   135,
+   136,   137,    88,    31,    30,   118,   117,   119,   120,   904,
+   234,    22,   913,  -275,   234,   918,   669,    11,    49,    10,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   935,
+   116,   124,   125,   723,   108,   109,  -273,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,  -300,   247,   248,   940,   731,   264,   265,  -300,    43,
+   731,   731,    36,  -619,   731,    62,    63,  -300,   731,    64,
+   234,    38,   251,   960,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   234,   776,  -300,   105,    95,
+    97,    98,    99,   101,  -300,   963,   965,    96,   106,  -619,
+   268,   967,  -248,  -300,   969,    89,   969,   234,    93,   100,
+   102,   976,   110,   111,   310,    85,    86,    87,    12,    78,
+  -276,   977,   776,    79,    80,   980,   983,   985,    83,   987,
+    81,    82,    84,    33,    34,    76,    77,   133,   134,   135,
+   136,   137,    88,    31,    30,   118,   117,   119,   120,   234,
+   989,    22,   767,  1007,  1008,  1017,   669,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,  1018,
+   116,   124,   125,  1028,   108,   109,  1031,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,   851,   247,   248,  1037,   731,   264,   265,  1047,    43,
+   969,   969,   314,   969,   776,    62,    63,  1054,  1056,    64,
+  1058,    38,   251,  1060,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,  1060,   728,   731,   105,    95,
+    97,    98,    99,   101,  1018,  -619,  -618,    96,   106,   234,
+   268,   969,  1081,  1060,  1060,    89,  1060,  1060,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+  1011,    22,   615,   614,   613,   nil,   616,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+  1011,    22,   615,   614,   613,   nil,   616,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,   314,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   234,
+   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,   314,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,   nil,   247,   248,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   268,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,   nil,  -644,  -644,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   267,   262,
+   263,   nil,  -644,  -644,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,  -644,  -644,  -644,  -644,   271,   272,   nil,   nil,  -644,
+  -644,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,  -644,  -644,  -644,  -644,   271,   272,   nil,   nil,  -644,
+  -644,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,     8,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,  -644,  -644,  -644,  -644,   271,   272,   nil,   nil,  -644,
+  -644,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,  -644,  -644,  -644,  -644,   271,   272,   nil,   nil,  -644,
+  -644,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,  -644,  -644,  -644,  -644,   271,   272,   nil,   nil,  -644,
+  -644,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   nil,   nil,   262,
+   263,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   258,   259,   260,   261,   271,   272,   266,   nil,   262,
+   263,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   270,   269,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   254,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   264,   265,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   251,    96,   106,   nil,
+   253,   252,   249,   250,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   nil,   nil,   255,    23,   256,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   254,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   264,   265,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   251,   nil,   257,    48,   253,   252,   249,   250,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,   310,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   312,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   618,    64,   615,   614,
+   613,   623,   616,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   626,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   621,  -433,    93,   100,   102,   nil,
+   110,   111,  -433,  -433,  -433,   634,   633,  -433,  -433,  -433,
+   618,  -433,   615,   614,   613,   623,   616,   nil,   nil,   nil,
+  -433,  -433,  -433,   nil,   nil,   nil,   626,   nil,   nil,   nil,
+   nil,  -433,  -433,   nil,  -433,  -433,  -433,  -433,  -433,   627,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   621,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   631,   630,   634,
+   633,   nil,  -433,  -433,  -433,  -433,  -433,  -433,  -433,  -433,
+  -433,  -433,  -433,  -433,  -433,  -433,   nil,   nil,  -433,  -433,
+  -433,   nil,   nil,  -433,   nil,   281,  -433,   nil,   nil,  -433,
+  -433,   nil,  -433,   627,  -433,   nil,  -433,   nil,  -433,  -433,
+  -433,  -433,  -433,  -433,  -433,   nil,  -433,  -433,  -433,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  -433,  -433,  -309,  -433,   nil,  -433,   nil,   nil,   nil,
+  -309,  -309,  -309,  -433,   nil,  -309,  -309,  -309,   618,  -309,
+   615,   614,   613,   623,   616,   nil,   nil,   nil,   nil,  -309,
+  -309,   nil,   nil,   nil,   626,   nil,   nil,   nil,   nil,  -309,
+  -309,   nil,  -309,  -309,  -309,  -309,  -309,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   621,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   631,   630,   634,   633,   nil,
+  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,  -309,
+  -309,  -309,  -309,  -309,   nil,   nil,  -309,  -309,  -309,   nil,
+   nil,  -309,   nil,   291,  -309,   nil,   nil,  -309,  -309,   nil,
+  -309,   627,  -309,   nil,  -309,   nil,  -309,  -309,  -309,  -309,
+  -309,  -309,  -309,   nil,  -309,   nil,  -309,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -309,
+  -309,   nil,  -309,   nil,  -309,    85,    86,    87,   nil,    78,
+   nil,  -309,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   303,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   303,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   300,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,
+   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,   nil,   nil,   333,   nil,   nil,   nil,
+   nil,   nil,   618,   nil,   615,   614,   613,   623,   616,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   323,   nil,   626,   319,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   318,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   621,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   634,   633,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   627,    81,    82,    84,   329,
+   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
+   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,   327,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,
+   nil,   618,   nil,   615,   614,   613,   623,   616,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   323,   nil,   626,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   621,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   634,   633,   nil,    96,   106,   nil,   nil,   nil,   335,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   627,    81,    82,    84,   329,   330,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   618,    64,   615,   614,   613,   623,   616,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   626,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   621,
+  -292,    93,   100,   102,   nil,   110,   111,  -292,  -292,  -292,
+   634,   633,  -292,  -292,  -292,   618,  -292,   615,   614,   613,
+   623,   616,   nil,   nil,   nil,   nil,  -292,  -292,  -292,   nil,
+   nil,   626,   nil,   nil,   nil,   nil,  -292,  -292,   nil,  -292,
+  -292,  -292,  -292,  -292,   627,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   631,   630,   634,   633,   nil,  -292,  -292,  -292,
+  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,
+  -292,   nil,   nil,  -292,  -292,  -292,   nil,   nil,  -292,   nil,
+   nil,  -292,   nil,   nil,  -292,  -292,   nil,  -292,   627,  -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,
+   nil,  -292,   nil,  -292,   nil,   nil,   nil,  -643,  -292,    85,
+    86,    87,    12,    78,  -643,  -643,  -643,    79,    80,  -643,
+  -643,  -643,    83,  -643,    81,    82,    84,    33,    34,    76,
+    77,   nil,  -643,  -643,  -643,   nil,    88,    31,    30,   118,
+   117,   119,   120,  -643,  -643,    22,  -643,  -643,  -643,  -643,
+  -643,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,  -643,  -643,  -643,  -643,  -643,  -643,
+  -643,  -643,  -643,  -643,  -643,  -643,  -643,  -643,   nil,   nil,
+  -643,  -643,  -643,    43,   nil,  -643,    36,   281,  -643,    62,
+    63,  -643,  -643,    64,  -643,    38,  -643,   nil,  -643,    48,
+  -643,  -643,  -643,  -643,  -643,  -643,  -643,    23,  -643,  -643,
+  -643,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,  -643,  -643,   nil,  -643,   nil,  -643,    89,
+   nil,   nil,    93,   100,   102,  -643,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   130,   nil,   nil,   nil,   nil,   129,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   333,
+   nil,   nil,   nil,   nil,   nil,   618,   nil,   615,   614,   613,
+   623,   616,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,
+   nil,   626,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   634,   633,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   627,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,
+   122,   121,   123,   368,    60,   114,   113,   369,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   333,   nil,
+   nil,   nil,   nil,   nil,   618,   nil,   615,   614,   613,   623,
+   616,   nil,   nil,   nil,   nil,   375,   nil,   nil,   370,   nil,
+   626,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   621,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   634,   633,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   627,    81,    82,
+    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,   122,
+   121,   123,   368,    60,   114,   113,   369,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,   nil,   nil,   333,   nil,   nil,
+   nil,   nil,   nil,   618,   nil,   615,   614,   613,   623,   616,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   370,   nil,   626,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   621,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   634,   633,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,    12,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   627,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    49,    10,    13,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   419,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
+    49,   nil,    13,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   436,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   436,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   303,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   300,   nil,   298,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,   301,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   304,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   234,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
+   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
+   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
+   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
+   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,
+   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   303,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,   nil,
+   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   303,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   300,   nil,   298,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,   301,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   234,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   304,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,    12,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
+   nil,    13,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   333,
+   nil,   nil,   nil,   nil,   nil,   618,   nil,   615,   614,   613,
+   623,   616,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   323,
+   nil,   626,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   634,   633,   nil,    96,   106,   nil,
+   nil,   nil,   541,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   627,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   333,   nil,
+   nil,   nil,   nil,   nil,   618,   nil,   615,   614,   613,   623,
+   616,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   323,   nil,
+   626,   319,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   621,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   634,   633,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   627,    81,    82,
+    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   558,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
+   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
+   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   303,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   300,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,   301,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   304,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   303,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,   301,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   304,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   618,    64,   615,   614,   613,   623,   616,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   626,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   621,  -623,
+    93,   100,   102,   nil,   110,   111,  -623,  -623,  -623,   634,
+   633,  -623,  -623,  -623,   618,  -623,   615,   614,   613,   623,
+   616,   nil,   nil,   nil,  -623,  -623,  -623,  -623,   nil,   nil,
+   626,   nil,   nil,   nil,   nil,  -623,  -623,   nil,  -623,  -623,
+  -623,  -623,  -623,   627,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   621,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   631,   630,   634,   633,   nil,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+   nil,   nil,  -623,  -623,  -623,   nil,   nil,  -623,   nil,   nil,
+  -623,   nil,   nil,  -623,  -623,   nil,  -623,   627,  -623,   nil,
+  -623,   nil,  -623,  -623,  -623,  -623,  -623,  -623,  -623,   nil,
+  -623,  -623,  -623,   618,   nil,   615,   614,   613,   623,   616,
+   nil,   nil,   nil,   nil,   nil,  -623,  -623,  -623,  -623,   626,
+  -623,  -624,  -623,   nil,   nil,   nil,   nil,  -623,  -624,  -624,
+  -624,   nil,   nil,  -624,  -624,  -624,   nil,  -624,   nil,   nil,
+   nil,   621,   nil,   nil,   nil,   nil,  -624,  -624,  -624,  -624,
+   631,   630,   634,   633,   nil,   nil,   nil,  -624,  -624,   nil,
+  -624,  -624,  -624,  -624,  -624,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   234,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   627,   nil,  -624,  -624,
+  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,
+  -624,  -624,   nil,   nil,  -624,  -624,  -624,   nil,   nil,  -624,
+   nil,   nil,  -624,   nil,   nil,  -624,  -624,   nil,  -624,   nil,
+  -624,   nil,  -624,   nil,  -624,  -624,  -624,  -624,  -624,  -624,
+  -624,   nil,  -624,  -624,  -624,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -624,  -624,  -624,
+  -624,   nil,  -624,   nil,  -624,   nil,    85,    86,    87,  -624,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   303,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+   301,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,  -643,    93,   100,   102,   nil,
+   110,   111,  -643,  -643,  -643,   nil,   nil,  -643,  -643,  -643,
+   nil,  -643,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  -643,  -643,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  -643,  -643,   nil,  -643,  -643,  -643,  -643,  -643,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   511,   463,   nil,   nil,
+   512,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
+   174,   nil,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,  -643,   nil,   nil,   175,   176,   161,   162,
+  -643,   nil,   nil,   nil,   nil,   281,  -643,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,  -643,  -643,   177,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  -643,   nil,    85,    86,    87,  -643,    78,   nil,   170,
+   nil,    79,    80,  -643,   nil,   nil,    83,   nil,    81,    82,
+    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   705,
+   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   303,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
+   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
+   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   312,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   419,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,   327,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   323,   nil,   nil,   319,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   303,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,   301,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   304,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+   327,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
+   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   323,   nil,   nil,   319,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,
+   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   303,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,   nil,
+   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   805,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   303,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   300,   nil,   298,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,   301,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   303,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   705,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   303,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+   327,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
+   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   323,   nil,   nil,   319,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   327,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
+   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   323,   nil,   nil,   319,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   436,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   303,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   705,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   326,   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   870,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   326,   332,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,
+   330,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,
+   332,   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,
+   118,   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   303,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   298,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   nil,   nil,   105,   301,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   304,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   329,   330,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,
+   117,   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   239,   nil,   nil,   245,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   329,   330,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,
+   119,   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,
+   nil,   327,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   991,   nil,   nil,   245,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   329,   330,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,
+   120,   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,
+   327,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
+   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   998,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   329,   330,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   326,   332,   118,   117,   119,   120,
+   nil,   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,  1003,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   326,   332,   118,   117,   119,   120,   nil,
+   nil,   246,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   333,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   991,
+   nil,   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   329,   330,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   326,   332,   118,   117,   119,   120,   nil,   nil,
+   246,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,
+   nil,   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   246,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   303,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   245,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   300,
+   nil,   298,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   nil,   nil,   105,   301,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   304,    93,   100,   102,   nil,
+   110,   111,   188,   199,   189,   212,   185,   205,   195,   194,
+   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
+   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
+   214,   209,   208,   201,   211,   196,   184,   203,   202,   nil,
+   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,
+   180,   141,   143,   140,   nil,   142,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,
+   205,   195,   194,   215,   216,   210,   193,   192,   187,   213,
+   217,   218,   197,   186,   200,   204,   206,   198,   191,   nil,
+   nil,   nil,   207,   214,   209,   208,   201,   211,   196,   184,
+   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,
+   182,   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,
+   189,   212,   185,   205,   195,   194,   215,   216,   210,   193,
+   192,   187,   213,   217,   218,   197,   186,   200,   204,   206,
+   198,   191,   nil,   nil,   nil,   207,   214,   209,   386,   385,
+   387,   384,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,
+   183,   190,   181,   182,   381,   382,   383,   379,   143,   114,
+   113,   380,   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   391,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   188,   199,   189,   212,   185,   205,   195,   194,   215,
+   216,   210,   193,   192,   187,   213,   217,   218,   197,   186,
+   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,
+   209,   208,   201,   211,   196,   184,   203,   202,   nil,   nil,
+   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,   180,
+   141,   143,   416,   415,   142,   nil,   417,   nil,   nil,   nil,
+   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,
+   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
+   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
+   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
+   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,   205,
+   195,   194,   215,   216,   210,   193,   192,   187,   213,   217,
+   218,   197,   186,   200,   204,   206,   198,   191,   nil,   nil,
+   nil,   207,   214,   209,   208,   201,   211,   196,   184,   203,
+   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,
+   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,
+   212,   185,   205,   195,   194,   215,   216,   210,   193,   192,
+   187,   213,   217,   218,   197,   186,   200,   204,   206,   198,
+   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,
+   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,
+   190,   181,   182,   178,   179,   180,   141,   143,   nil,   nil,
+   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
+   174,   nil,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
+   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
+   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
+   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
+   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
+   208,   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,
+   nil,   nil,   183,   190,   181,   182,   178,   179,   180,   141,
+   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   459,   463,   nil,
+   nil,   460,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   466,   470,   nil,   nil,   465,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   686,   463,   nil,   nil,   687,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   688,   470,   nil,   nil,   689,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   716,
+   463,   nil,   nil,   717,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   719,   470,   nil,
+   nil,   720,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   686,   463,   nil,   nil,   687,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   688,   470,   nil,   nil,   689,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   753,   463,   nil,   nil,   754,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   755,
+   470,   nil,   nil,   756,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   758,   470,   nil,
+   nil,   759,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   511,   463,   nil,   nil,   512,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   807,   463,   nil,   nil,   808,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   810,   470,   nil,   nil,   809,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   618,   177,   615,   614,   613,   623,   616,
+   618,   nil,   615,   614,   613,   623,   616,   nil,   nil,   626,
+   nil,   nil,   nil,   nil,   170,   nil,   626,   618,   nil,   615,
+   614,   613,   623,   616,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   621,   nil,   626,   nil,   nil,   nil,   nil,   621,   nil,
+   631,   630,   634,   633,   nil,   nil,   nil,   631,   630,   634,
+   633,   nil,   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   631,   630,   634,   633,   nil,   nil,
+   nil,  1064,   470,   nil,   nil,  1063,   627,   nil,   nil,   nil,
+   nil,   nil,   nil,   627,   173,   174,   nil,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   627,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   281,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,  1067,
+   463,   nil,   nil,  1068,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,  1069,   470,   nil,
+   nil,  1070,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   618,
+   177,   615,   614,   613,   623,   616,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   626,   nil,   nil,   nil,   nil,
+   170,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   621,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   631,   630,   634,   633,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   627 ]
+
+racc_action_check = [
+   112,   352,   353,   407,   939,   871,    65,   112,   112,   112,
+     1,   944,   112,   112,   112,   695,   112,    22,   711,   410,
+   475,   475,    92,  1067,   112,   487,   112,   112,   112,   360,
+    92,   361,   711,     5,    17,    17,   112,   112,     5,   112,
+   112,   112,   112,   112,    20,   716,   364,   717,  1068,   585,
+   753,  1079,   754,    22,   140,     3,   771,   487,   872,   140,
+   140,   487,   487,   726,   726,    13,   407,   112,   112,   112,
+   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
+   112,   575,   410,   112,   112,   112,    20,   112,   112,   770,
+   770,   112,   727,    65,   112,   112,    15,   112,   727,   112,
+    20,   112,   695,   112,   112,   112,   112,   112,   112,   112,
+   475,   112,   716,   112,   717,   352,   353,   755,   939,   871,
+   352,   353,   871,   939,   871,   944,   112,   112,   112,   112,
+   944,   112,   115,   112,   360,  1069,   361,  1067,   112,   115,
+   115,   115,  1067,   112,   115,   115,   115,   716,   115,   717,
+   716,   364,   717,   726,   585,   753,   115,   754,   115,   115,
+   115,   771,  1068,   872,   716,  1079,   717,  1068,   115,   115,
+  1079,   115,   115,   115,   115,   115,   756,    44,    44,   770,
+   693,   575,    29,   755,   840,    27,   575,   328,   237,   333,
+   333,   379,    27,   564,   351,   351,   564,   368,   379,   115,
+   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
+   115,   115,   115,  1069,   693,   115,   115,   115,   840,   115,
+   115,   380,   755,   115,   647,   381,   115,   115,   380,   115,
+   369,   115,   381,   115,    16,   115,   115,   115,   115,   115,
+   115,   115,   756,   115,   237,   115,    41,    29,   650,  1069,
+   368,   394,   328,    18,  1069,    44,    44,   368,   115,   115,
+   115,   115,   368,   115,   465,   115,   368,   333,   333,    29,
+   115,   465,   465,   465,   328,   115,   773,   465,   465,   488,
+   465,   756,    19,   369,   368,   647,   647,   773,    41,    19,
+   369,   307,   719,   846,   647,   369,   307,    25,    19,   369,
+   465,   465,    41,   465,   465,   465,   465,   465,    40,   650,
+   650,   488,   394,   394,   394,   488,   488,   369,   650,   382,
+   773,   773,   529,   357,   565,    43,   382,   565,   357,   758,
+   238,   465,   465,   465,   465,   465,   465,   465,   465,   465,
+   465,   465,   465,   465,   465,   719,   846,   465,   465,   465,
+   396,   465,   719,   846,   773,   465,   370,   719,   465,   240,
+   370,   719,   846,   465,   401,   465,    49,   465,   465,   465,
+   465,   465,   465,   465,   443,   465,   977,   465,   404,   719,
+   846,   412,   758,   529,   529,   529,   238,   977,    99,   758,
+   465,   465,   466,   465,   758,   465,    42,   481,   758,   466,
+   466,   466,   465,   529,   764,   466,   466,   465,   466,   764,
+   100,   396,   396,   396,   101,   240,   758,   466,   686,   398,
+   977,   977,   398,   596,   596,   401,   401,   401,   466,   466,
+   443,   466,   466,   466,   466,   466,   337,   102,    42,   404,
+   404,   404,   412,   412,   412,   569,   459,  1004,   569,  1004,
+   687,   807,    42,   481,   977,   808,   829,   915,   138,   466,
+   466,   466,   466,   466,   466,   466,   466,   466,   466,   466,
+   466,   466,   466,   219,   686,   466,   466,   466,   337,   466,
+   398,   398,   460,   466,   670,   876,   466,   383,   459,   239,
+   876,   466,   337,   466,   383,   466,   466,   466,   466,   466,
+   466,   466,   459,   466,   466,   466,   687,   807,   241,    50,
+   384,   808,   829,   915,    47,    47,    50,   384,   466,   466,
+   688,   466,   242,   466,   460,    50,   670,   688,   688,   688,
+   466,   246,   688,   688,   688,   466,   688,   881,   460,   280,
+   670,   295,   881,   296,   502,   688,   688,   688,   688,    47,
+    47,   385,   859,   741,   741,   859,   688,   688,   385,   688,
+   688,   688,   688,   688,   904,   386,   904,   904,   904,   299,
+   904,   621,   386,   621,   621,   621,   502,   621,   387,   389,
+   502,   502,   502,   502,   313,   387,   389,   688,   688,   688,
+   688,   688,   688,   688,   688,   688,   688,   688,   688,   688,
+   688,   315,   904,   688,   688,   688,   236,   688,   688,   621,
+   316,   688,   317,   236,   688,   688,   323,   688,   621,   688,
+   326,   688,   236,   688,   688,   688,   688,   688,   688,   688,
+   327,   688,   688,   688,   392,   332,   392,   392,   392,   392,
+   392,     9,     9,     9,     9,     9,   688,   688,   688,   688,
+   392,   688,   689,   688,  1009,   320,   334,  1009,   688,   689,
+   689,   689,   320,   688,   689,   689,   689,   338,   689,   341,
+   321,   320,   392,   392,   776,   776,   503,   321,   689,   689,
+   689,   392,   392,   392,   392,   347,   321,   358,   689,   689,
+   359,   689,   689,   689,   689,   689,  1017,   363,  1017,  1017,
+  1017,   365,  1017,   785,   374,   785,   785,   785,   503,   785,
+  1038,  1038,   503,   503,   503,   503,   400,   392,   403,   689,
+   689,   689,   689,   689,   689,   689,   689,   689,   689,   689,
+   689,   689,   689,   406,  1017,   689,   689,   689,   322,   689,
+   689,   785,   409,   689,   432,   322,   689,   689,   435,   689,
+   785,   689,   437,   689,   322,   689,   689,   689,   689,   689,
+   689,   689,   440,   689,   454,   689,   604,   457,   604,   604,
+   604,   604,   604,   311,   311,   311,   311,   311,   689,   689,
+   689,   689,   604,   689,   809,   689,   458,   467,   477,   489,
+   689,   809,   809,   809,   490,   689,   491,   809,   809,   903,
+   809,   903,   903,   903,   604,   903,  1018,   492,  1018,  1018,
+  1018,   508,  1018,   604,   604,   604,   604,   515,   519,   535,
+   809,   809,   324,   809,   809,   809,   809,   809,   536,   324,
+   537,   540,   339,   542,   362,   547,   550,   903,   324,   339,
+   559,   362,   560,   561,  1018,   566,   903,   567,   339,   604,
+   362,   809,   809,   809,   809,   809,   809,   809,   809,   809,
+   809,   809,   809,   809,   809,   372,   442,   809,   809,   809,
+   546,   809,   372,   442,   570,   809,   572,   546,   809,   576,
+   577,   372,   442,   809,   578,   809,   546,   809,   809,   809,
+   809,   809,   809,   809,   579,   809,   598,   809,   588,   606,
+   990,   995,   996,   607,   609,   588,   610,   990,   995,   996,
+   809,   809,   810,   809,   588,   809,   990,   995,   996,   810,
+   810,   810,   809,   611,   620,   810,   810,   809,   810,   496,
+   496,   496,   496,   496,   496,   496,   628,   810,   496,   496,
+   997,   632,   635,   999,   654,   496,   496,   997,   810,   810,
+   999,   810,   810,   810,   810,   810,   997,   657,   663,   999,
+   671,   496,   676,   496,   682,   496,   496,   496,   496,   496,
+   496,   496,   789,   496,   789,   789,   789,   690,   789,   810,
+   810,   810,   810,   810,   810,   810,   810,   810,   810,   810,
+   810,   810,   810,   720,  1029,   810,   810,   810,   691,   810,
+   720,  1029,   694,   810,   698,   720,   810,   700,   702,   720,
+  1029,   810,   704,   810,   713,   810,   810,   810,   810,   810,
+   810,   810,   715,   810,   810,   810,  1037,   718,   721,   722,
+   795,   795,   725,  1037,   795,   795,   795,   743,   810,   810,
+   749,   810,  1037,   810,     2,     2,     2,     2,     2,     2,
+   810,   752,   761,     2,     2,   810,   765,   772,     2,   787,
+     2,     2,     2,     2,     2,     2,     2,   346,   346,   346,
+   346,   346,     2,     2,     2,     2,     2,     2,     2,   788,
+   790,     2,   802,   804,   806,   814,   447,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,   838,
+     2,     2,     2,   845,     2,     2,   855,     2,     2,     2,
+   447,   447,   447,   447,   447,   447,   447,   447,   447,   447,
+   447,   759,   447,   447,   856,   860,   447,   447,   759,     2,
+   866,   873,     2,   759,   875,     2,     2,   759,   879,     2,
+   880,     2,   447,   887,   447,     2,   447,   447,   447,   447,
+   447,   447,   447,     2,   447,   888,   889,  1070,     2,     2,
+     2,     2,     2,     2,  1070,   893,   894,     2,     2,  1070,
+   447,   896,   447,  1070,   897,     2,   899,   902,     2,     2,
+     2,   912,     2,     2,    36,    36,    36,    36,    36,    36,
+   914,   921,   922,    36,    36,   924,   925,   926,    36,   928,
+    36,    36,    36,    36,    36,    36,    36,   534,   534,   534,
+   534,   534,    36,    36,    36,    36,    36,    36,    36,   929,
+   930,    36,   957,   958,   959,   974,   453,    36,    36,    36,
+    36,    36,    36,    36,    36,    36,    36,    36,    36,   975,
+    36,    36,    36,   988,    36,    36,   991,    36,    36,    36,
+   453,   453,   453,   453,   453,   453,   453,   453,   453,   453,
+   453,   993,   453,   453,   998,  1005,   453,   453,  1013,    36,
+  1014,  1015,    36,  1016,  1019,    36,    36,  1022,  1023,    36,
+  1024,    36,   453,  1025,   453,    36,   453,   453,   453,   453,
+   453,   453,   453,    36,   453,  1027,  1033,  1044,    36,    36,
+    36,    36,    36,    36,  1052,  1063,  1064,    36,    36,  1066,
+   453,  1074,  1075,  1076,  1077,    36,  1078,  1086,    36,    36,
+    36,   nil,    36,    36,   221,   221,   221,   221,   221,   221,
+   nil,   nil,   nil,   221,   221,   nil,   nil,   nil,   221,   nil,
+   221,   221,   221,   221,   221,   221,   221,   nil,   nil,   nil,
+   nil,   nil,   221,   221,   221,   221,   221,   221,   221,   nil,
+   960,   221,   960,   960,   960,   nil,   960,   221,   221,   221,
+   221,   221,   221,   221,   221,   221,   221,   221,   221,   nil,
+   221,   221,   221,   nil,   221,   221,   nil,   221,   221,   221,
+    24,    24,    24,    24,    24,    24,    24,    24,    24,    24,
+    24,   nil,    24,    24,   nil,   nil,    24,    24,   nil,   221,
+   nil,   nil,   221,   nil,   nil,   221,   221,   nil,   nil,   221,
+   nil,   221,    24,   nil,    24,   221,    24,    24,    24,    24,
+    24,    24,    24,   221,    24,   nil,   nil,   nil,   221,   221,
+   221,   221,   221,   221,   nil,   nil,   nil,   221,   221,   nil,
+    24,   nil,   nil,   nil,   nil,   221,   nil,   nil,   221,   221,
+   221,   nil,   221,   221,   245,   245,   245,   245,   245,   245,
+   nil,   nil,   nil,   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,
+  1046,   245,  1046,  1046,  1046,   nil,  1046,   245,   245,   245,
+   245,   245,   245,   245,   245,   245,   245,   245,   245,   nil,
+   245,   245,   245,   nil,   245,   245,   nil,   245,   245,   245,
+   293,   293,   293,   293,   293,   293,   293,   293,   293,   293,
+   293,   nil,   293,   293,   nil,   nil,   293,   293,   nil,   245,
+   nil,   nil,   245,   nil,   nil,   245,   245,   nil,   nil,   245,
+   nil,   245,   293,   nil,   293,   245,   293,   293,   293,   293,
+   293,   293,   293,   245,   293,   nil,   nil,   nil,   245,   245,
+   245,   245,   245,   245,   nil,   nil,   nil,   245,   245,   nil,
+   293,   nil,   nil,   nil,   nil,   245,   nil,   nil,   245,   245,
+   245,   nil,   245,   245,   314,   314,   314,   314,   314,   314,
+   nil,   nil,   nil,   314,   314,   nil,   nil,   nil,   314,   nil,
+   314,   314,   314,   314,   314,   314,   314,   nil,   nil,   nil,
+   nil,   nil,   314,   314,   314,   314,   314,   314,   314,   nil,
+   nil,   314,   nil,   nil,   nil,   nil,   nil,   314,   314,   314,
+   314,   314,   314,   314,   314,   314,   314,   314,   314,   nil,
+   314,   314,   314,   nil,   314,   314,   nil,   314,   314,   314,
+   506,   506,   506,   506,   506,   506,   506,   506,   506,   506,
+   506,   nil,   506,   506,   nil,   nil,   506,   506,   nil,   314,
+   nil,   nil,   314,   nil,   nil,   314,   314,   nil,   nil,   314,
+   nil,   314,   506,   nil,   506,   314,   506,   506,   506,   506,
+   506,   506,   506,   314,   506,   nil,   nil,   nil,   314,   314,
+   314,   314,   314,   314,   nil,   nil,   nil,   314,   314,   506,
+   506,   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,   314,
+   314,   nil,   314,   314,   319,   319,   319,   319,   319,   319,
+   nil,   nil,   nil,   319,   319,   nil,   nil,   nil,   319,   nil,
+   319,   319,   319,   319,   319,   319,   319,   nil,   nil,   nil,
+   nil,   nil,   319,   319,   319,   319,   319,   319,   319,   nil,
+   nil,   319,   nil,   nil,   nil,   nil,   nil,   319,   319,   319,
+   319,   319,   319,   319,   319,   319,   319,   319,   319,   nil,
+   319,   319,   319,   nil,   319,   319,   nil,   319,   319,   319,
+   557,   557,   557,   557,   557,   557,   557,   557,   557,   557,
+   557,   nil,   557,   557,   nil,   nil,   557,   557,   nil,   319,
+   nil,   nil,   319,   nil,   nil,   319,   319,   nil,   nil,   319,
+   nil,   319,   557,   nil,   557,   319,   557,   557,   557,   557,
+   557,   557,   557,   319,   557,   nil,   nil,   nil,   319,   319,
+   319,   319,   319,   319,   nil,   nil,   nil,   319,   319,   nil,
+   557,   nil,   nil,   nil,   nil,   319,   nil,   nil,   319,   319,
+   319,   nil,   319,   319,   345,   345,   345,   345,   345,   345,
+   nil,   nil,   nil,   345,   345,   nil,   nil,   nil,   345,   nil,
+   345,   345,   345,   345,   345,   345,   345,   nil,   nil,   nil,
+   nil,   nil,   345,   345,   345,   345,   345,   345,   345,   nil,
+   nil,   345,   nil,   nil,   nil,   nil,   nil,   345,   345,   345,
+   345,   345,   345,   345,   345,   345,   345,   345,   345,   nil,
+   345,   345,   345,   nil,   345,   345,   nil,   345,   345,   345,
+   811,   811,   811,   811,   811,   811,   811,   811,   811,   811,
+   811,   nil,   811,   811,   nil,   nil,   811,   811,   nil,   345,
+   nil,   nil,   345,   nil,   nil,   345,   345,   nil,   nil,   345,
+   nil,   345,   811,   nil,   811,   345,   811,   811,   811,   811,
+   811,   811,   811,   345,   811,   nil,   nil,   nil,   345,   345,
+   345,   345,   345,   345,   nil,   nil,   nil,   345,   345,   nil,
+   811,   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,   345,
+   345,   nil,   345,   345,   355,   355,   355,   355,   355,   355,
+   nil,   nil,   nil,   355,   355,   nil,   nil,   nil,   355,   nil,
+   355,   355,   355,   355,   355,   355,   355,   nil,   nil,   nil,
+   nil,   nil,   355,   355,   355,   355,   355,   355,   355,   nil,
+   nil,   355,   nil,   nil,   nil,   nil,   nil,   355,   355,   355,
+   355,   355,   355,   355,   355,   355,   355,   355,   355,   nil,
+   355,   355,   355,   nil,   355,   355,   nil,   355,   355,   355,
+   920,   920,   920,   920,   920,   920,   920,   920,   920,   920,
+   920,   nil,   920,   920,   nil,   nil,   920,   920,   nil,   355,
+   nil,   nil,   355,   nil,   nil,   355,   355,   nil,   nil,   355,
+   nil,   355,   920,   nil,   920,   355,   920,   920,   920,   920,
+   920,   920,   920,   355,   920,   nil,   nil,   nil,   355,   355,
+   355,   355,   355,   355,   nil,   nil,   nil,   355,   355,   nil,
+   920,   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,   355,
+   355,   nil,   355,   355,   356,   356,   356,   356,   356,   356,
+   nil,   nil,   nil,   356,   356,   nil,   nil,   nil,   356,   nil,
+   356,   356,   356,   356,   356,   356,   356,   nil,   nil,   nil,
+   nil,   nil,   356,   356,   356,   356,   356,   356,   356,   nil,
+   nil,   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,
+   356,   356,   356,   356,   356,   356,   356,   356,   356,   nil,
+   356,   356,   356,   nil,   356,   356,   nil,   356,   356,   356,
+   485,   485,   485,   485,   485,   485,   485,   485,   485,   485,
+   485,   nil,   485,   485,   nil,   nil,   485,   485,   nil,   356,
+   nil,   nil,   356,   nil,   nil,   356,   356,   nil,   nil,   356,
+   nil,   356,   485,   nil,   485,   356,   485,   485,   485,   485,
+   485,   485,   485,   356,   485,   nil,   nil,   nil,   356,   356,
+   356,   356,   356,   356,   nil,   nil,   nil,   356,   356,   nil,
+   nil,   nil,   nil,   nil,   nil,   356,   nil,   nil,   356,   356,
+   356,   nil,   356,   356,   571,   571,   571,   571,   571,   571,
+   nil,   nil,   nil,   571,   571,   nil,   nil,   nil,   571,   nil,
+   571,   571,   571,   571,   571,   571,   571,   nil,   nil,   nil,
+   nil,   nil,   571,   571,   571,   571,   571,   571,   571,   nil,
+   nil,   571,   nil,   nil,   nil,   nil,   nil,   571,   571,   571,
+   571,   571,   571,   571,   571,   571,   571,   571,   571,   nil,
+   571,   571,   571,   nil,   571,   571,   nil,   571,   571,   571,
+   486,   486,   486,   486,   486,   486,   486,   486,   486,   486,
+   486,   nil,   486,   486,   nil,   nil,   486,   486,   nil,   571,
+   nil,   nil,   571,   nil,   nil,   571,   571,   nil,   nil,   571,
+   nil,   571,   486,   nil,   486,   571,   486,   486,   486,   486,
+   486,   486,   486,   571,   486,   nil,   nil,   nil,   571,   571,
+   571,   571,   571,   571,   nil,   nil,   nil,   571,   571,   nil,
+   nil,   nil,   nil,   nil,   nil,   571,   nil,   nil,   571,   571,
+   571,   nil,   571,   571,   574,   574,   574,   574,   574,   574,
+   nil,   nil,   nil,   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,   574,   574,   574,
+   574,   574,   574,   574,   574,   574,   574,   574,   574,   nil,
+   574,   574,   574,   nil,   574,   574,   nil,   574,   574,   574,
+   497,   497,   497,   497,   497,   497,   497,   nil,   nil,   497,
+   497,   nil,   nil,   nil,   nil,   nil,   497,   497,   nil,   574,
+   nil,   nil,   574,   nil,   nil,   574,   574,   nil,   nil,   574,
+   nil,   574,   497,   nil,   497,   574,   497,   497,   497,   497,
+   497,   497,   497,   574,   497,   nil,   nil,   nil,   574,   574,
+   574,   574,   574,   574,   nil,   nil,   nil,   574,   574,   nil,
+   nil,   nil,   nil,   nil,   nil,   574,   nil,   nil,   574,   574,
+   574,   nil,   574,   574,   597,   597,   597,   597,   597,   597,
+   nil,   nil,   nil,   597,   597,   nil,   nil,   nil,   597,   nil,
+   597,   597,   597,   597,   597,   597,   597,   nil,   nil,   nil,
+   nil,   nil,   597,   597,   597,   597,   597,   597,   597,   nil,
+   nil,   597,   nil,   nil,   nil,   nil,   nil,   597,   597,   597,
+   597,   597,   597,   597,   597,   597,   597,   597,   597,   nil,
+   597,   597,   597,   nil,   597,   597,   nil,   597,   597,   597,
+   498,   498,   498,   498,   498,   498,   498,   nil,   nil,   498,
+   498,   nil,   nil,   nil,   nil,   nil,   498,   498,   nil,   597,
+   nil,   nil,   597,   nil,   nil,   597,   597,   nil,   nil,   597,
+   nil,   597,   498,   nil,   498,   597,   498,   498,   498,   498,
+   498,   498,   498,   597,   498,   nil,   nil,   nil,   597,   597,
+   597,   597,   597,   597,   nil,   nil,   nil,   597,   597,   nil,
+   nil,   nil,   nil,   nil,   nil,   597,   nil,   nil,   597,   597,
+   597,   nil,   597,   597,   659,   659,   659,   659,   659,   659,
+   nil,   nil,   nil,   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,   659,   659,   659,
+   659,   659,   659,   659,   659,   659,   659,   659,   659,   nil,
+   659,   659,   659,   nil,   659,   659,   nil,   659,   659,   659,
+   499,   499,   499,   499,   499,   499,   499,   nil,   nil,   499,
+   499,   nil,   nil,   nil,   nil,   nil,   499,   499,   nil,   659,
+   nil,   nil,   659,   nil,   nil,   659,   659,   nil,   nil,   659,
+   nil,   659,   499,   nil,   499,   659,   499,   499,   499,   499,
+   499,   499,   499,   659,   499,   nil,   nil,   nil,   659,   659,
+   659,   659,   659,   659,   nil,   nil,   nil,   659,   659,   nil,
+   nil,   nil,   nil,   nil,   nil,   659,   nil,   nil,   659,   659,
+   659,   nil,   659,   659,   757,   757,   757,   757,   757,   757,
+   nil,   nil,   nil,   757,   757,   nil,   nil,   nil,   757,   nil,
+   757,   757,   757,   757,   757,   757,   757,   nil,   nil,   nil,
+   nil,   nil,   757,   757,   757,   757,   757,   757,   757,   nil,
+   nil,   757,   nil,   nil,   nil,   nil,   nil,   757,   757,   757,
+   757,   757,   757,   757,   757,   757,   757,   757,   757,   nil,
+   757,   757,   757,   nil,   757,   757,   nil,   757,   757,   757,
+   500,   500,   500,   500,   500,   500,   500,   nil,   nil,   500,
+   500,   nil,   nil,   nil,   nil,   nil,   500,   500,   nil,   757,
+   nil,   nil,   757,   nil,   nil,   757,   757,   nil,   nil,   757,
+   nil,   757,   500,   nil,   500,   757,   500,   500,   500,   500,
+   500,   500,   500,   757,   500,   nil,   nil,   nil,   757,   757,
+   757,   757,   757,   757,   nil,   nil,   nil,   757,   757,   nil,
+   nil,   nil,   nil,   nil,   nil,   757,   nil,   nil,   757,   757,
+   757,   nil,   757,   757,   762,   762,   762,   762,   762,   762,
+   nil,   nil,   nil,   762,   762,   nil,   nil,   nil,   762,   nil,
+   762,   762,   762,   762,   762,   762,   762,   nil,   nil,   nil,
+   nil,   nil,   762,   762,   762,   762,   762,   762,   762,   nil,
+   nil,   762,   nil,   nil,   nil,   nil,   nil,   762,   762,   762,
+   762,   762,   762,   762,   762,   762,   762,   762,   762,   nil,
+   762,   762,   762,   nil,   762,   762,   nil,   762,   762,   762,
+   501,   501,   501,   501,   501,   501,   501,   nil,   nil,   501,
+   501,   nil,   nil,   nil,   nil,   nil,   501,   501,   nil,   762,
+   nil,   nil,   762,   nil,   nil,   762,   762,   nil,   nil,   762,
+   nil,   762,   501,   nil,   501,   762,   501,   501,   501,   501,
+   501,   501,   501,   762,   501,   nil,   nil,   nil,   762,   762,
+   762,   762,   762,   762,   nil,   nil,   nil,   762,   762,   nil,
+   nil,   nil,   nil,   nil,   nil,   762,   nil,   nil,   762,   762,
+   762,   nil,   762,   762,   766,   766,   766,   766,   766,   766,
+   nil,   nil,   nil,   766,   766,   nil,   nil,   nil,   766,   nil,
+   766,   766,   766,   766,   766,   766,   766,   nil,   nil,   nil,
+   nil,   nil,   766,   766,   766,   766,   766,   766,   766,   nil,
+   nil,   766,   nil,   nil,   nil,   nil,   nil,   766,   766,   766,
+   766,   766,   766,   766,   766,   766,   766,   766,   766,   nil,
+   766,   766,   766,   nil,   766,   766,   nil,   766,   766,   766,
+   504,   504,   504,   504,   504,   504,   504,   nil,   nil,   504,
+   504,   nil,   nil,   nil,   nil,   nil,   504,   504,   nil,   766,
+   nil,   nil,   766,   nil,   nil,   766,   766,   nil,   nil,   766,
+   nil,   766,   504,   nil,   504,   766,   504,   504,   504,   504,
+   504,   504,   504,   766,   504,   nil,   nil,   nil,   766,   766,
+   766,   766,   766,   766,   nil,   nil,   nil,   766,   766,   nil,
+   nil,   nil,   nil,   nil,   nil,   766,   nil,   nil,   766,   766,
+   766,   nil,   766,   766,   796,   796,   796,   796,   796,   796,
+   nil,   nil,   nil,   796,   796,   nil,   nil,   nil,   796,   nil,
+   796,   796,   796,   796,   796,   796,   796,   nil,   nil,   nil,
+   nil,   nil,   796,   796,   796,   796,   796,   796,   796,   nil,
+   nil,   796,   nil,   nil,   nil,   nil,   nil,   796,   796,   796,
+   796,   796,   796,   796,   796,   796,   796,   796,   796,   nil,
+   796,   796,   796,   nil,   796,   796,   nil,   796,   796,   796,
+   505,   505,   505,   505,   505,   505,   505,   505,   nil,   505,
+   505,   nil,   nil,   nil,   nil,   nil,   505,   505,   nil,   796,
+   nil,   nil,   796,   nil,   nil,   796,   796,   nil,   nil,   796,
+   nil,   796,   505,   nil,   505,   796,   505,   505,   505,   505,
+   505,   505,   505,   796,   505,   nil,   nil,   nil,   796,   796,
+   796,   796,   796,   796,   nil,   nil,   nil,   796,   796,   nil,
+   nil,   nil,   nil,   nil,   nil,   796,   nil,   nil,   796,   796,
+   796,   nil,   796,   796,   835,   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,   835,
+   835,   835,   835,   835,   835,   835,   835,   835,   835,   nil,
+   835,   835,   835,   nil,   835,   835,   nil,   835,   835,   835,
+   507,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   507,   507,   nil,   835,
+   nil,   nil,   835,   nil,   495,   835,   835,   nil,   nil,   835,
+   nil,   835,   507,   nil,   507,   835,   507,   507,   507,   507,
+   495,   495,   507,   835,   507,   nil,   nil,   nil,   835,   835,
+   835,   835,   835,   835,   nil,   nil,   495,   835,   835,   nil,
+   495,   495,   495,   495,   nil,   835,   nil,   nil,   835,   835,
+   835,   nil,   835,   835,   853,   853,   853,   853,   853,   853,
+   nil,   nil,   nil,   853,   853,   nil,   nil,   nil,   853,   nil,
+   853,   853,   853,   853,   853,   853,   853,   nil,   nil,   nil,
+   nil,   nil,   853,   853,   853,   853,   853,   853,   853,   nil,
+   nil,   853,   nil,   nil,   nil,   nil,   nil,   853,   853,   853,
+   853,   853,   853,   853,   853,   853,   853,   853,   853,   nil,
+   853,   853,   853,   nil,   853,   853,   nil,   853,   853,   853,
+   556,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   556,   556,   nil,   853,
+   nil,   nil,   853,   nil,   nil,   853,   853,   nil,   nil,   853,
+   nil,   853,   556,   nil,   556,   853,   556,   556,   556,   556,
+   nil,   nil,   556,   853,   556,   nil,   nil,   nil,   853,   853,
+   853,   853,   853,   853,   nil,   nil,   nil,   853,   853,   nil,
+   nil,   nil,   nil,   nil,   nil,   853,   nil,   nil,   853,   853,
+   853,   nil,   853,   853,   865,   865,   865,   865,   865,   865,
+   nil,   nil,   nil,   865,   865,   nil,   nil,   nil,   865,   nil,
+   865,   865,   865,   865,   865,   865,   865,   nil,   nil,   nil,
+   nil,   nil,   865,   865,   865,   865,   865,   865,   865,   nil,
+   nil,   865,   nil,   nil,   nil,   nil,   nil,   865,   865,   865,
+   865,   865,   865,   865,   865,   865,   865,   865,   865,   nil,
+   865,   865,   865,   nil,   865,   865,   nil,   865,   865,   865,
+   493,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   493,   493,   nil,   865,
+   nil,   nil,   865,   nil,   nil,   865,   865,   nil,   nil,   865,
+   nil,   865,   493,   nil,   493,   865,   493,   493,   493,   493,
+   nil,   nil,   nil,   865,   nil,   nil,   nil,   nil,   865,   865,
+   865,   865,   865,   865,   nil,   nil,   nil,   865,   865,   nil,
+   nil,   nil,   nil,   nil,   nil,   865,   nil,   nil,   865,   865,
+   865,   nil,   865,   865,   885,   885,   885,   885,   885,   885,
+   nil,   nil,   nil,   885,   885,   nil,   nil,   nil,   885,   nil,
+   885,   885,   885,   885,   885,   885,   885,   nil,   nil,   nil,
+   nil,   nil,   885,   885,   885,   885,   885,   885,   885,   nil,
+   nil,   885,   nil,   nil,   nil,   nil,   nil,   885,   885,   885,
+   885,   885,   885,   885,   885,   885,   885,   885,   885,   nil,
+   885,   885,   885,   nil,   885,   885,   nil,   885,   885,   885,
+   494,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   494,   494,   nil,   885,
+   nil,   nil,   885,   nil,   nil,   885,   885,   nil,   nil,   885,
+   nil,   885,   494,   nil,   494,   885,   494,   494,   494,   494,
+   nil,   nil,   nil,   885,   nil,   nil,   nil,   nil,   885,   885,
+   885,   885,   885,   885,   nil,   nil,   nil,   885,   885,   nil,
+   nil,   nil,   nil,   nil,   nil,   885,   nil,   nil,   885,   885,
+   885,   nil,   885,   885,   886,   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,   886,
+   886,   886,   886,   886,   886,   886,   886,   886,   886,   nil,
+   886,   886,   886,   nil,   886,   886,   nil,   886,   886,   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,   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,   nil,   nil,   nil,   886,   nil,   nil,   886,   886,
+   886,   nil,   886,   886,   936,   936,   936,   936,   936,   936,
+   nil,   nil,   nil,   936,   936,   nil,   nil,   nil,   936,   nil,
+   936,   936,   936,   936,   936,   936,   936,   nil,   nil,   nil,
+   nil,   nil,   936,   936,   936,   936,   936,   936,   936,   nil,
+   nil,   936,   nil,   nil,   nil,   nil,   nil,   936,   936,   936,
+   936,   936,   936,   936,   936,   936,   936,   936,   936,   nil,
+   936,   936,   936,   nil,   936,   936,   nil,   936,   936,   936,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   936,
+   nil,   nil,   936,   nil,   nil,   936,   936,   nil,   nil,   936,
+   nil,   936,   nil,   nil,   nil,   936,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   936,   nil,   nil,   nil,   nil,   936,   936,
+   936,   936,   936,   936,   nil,   nil,   nil,   936,   936,   nil,
+   nil,   nil,   nil,   nil,   nil,   936,   nil,   nil,   936,   936,
+   936,   nil,   936,   936,   937,   937,   937,   937,   937,   937,
+   nil,   nil,   nil,   937,   937,   nil,   nil,   nil,   937,   nil,
+   937,   937,   937,   937,   937,   937,   937,   nil,   nil,   nil,
+   nil,   nil,   937,   937,   937,   937,   937,   937,   937,   nil,
+   nil,   937,   nil,   nil,   nil,   nil,   nil,   937,   937,   937,
+   937,   937,   937,   937,   937,   937,   937,   937,   937,   nil,
+   937,   937,   937,   nil,   937,   937,   nil,   937,   937,   937,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   937,
+   nil,   nil,   937,   nil,   nil,   937,   937,   nil,   nil,   937,
+   nil,   937,   nil,   nil,   nil,   937,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   937,   nil,   nil,   nil,   nil,   937,   937,
+   937,   937,   937,   937,   nil,   nil,   nil,   937,   937,   nil,
+   nil,   nil,   nil,   nil,   nil,   937,   nil,   nil,   937,   937,
+   937,   nil,   937,   937,   949,   949,   949,   949,   949,   949,
+   nil,   nil,   nil,   949,   949,   nil,   nil,   nil,   949,   nil,
+   949,   949,   949,   949,   949,   949,   949,   nil,   nil,   nil,
+   nil,   nil,   949,   949,   949,   949,   949,   949,   949,   nil,
+   nil,   949,   nil,   nil,   nil,   nil,   nil,   949,   949,   949,
+   949,   949,   949,   949,   949,   949,   949,   949,   949,   nil,
+   949,   949,   949,   nil,   949,   949,   nil,   949,   949,   949,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   949,
+   nil,   nil,   949,   nil,   nil,   949,   949,   nil,   nil,   949,
+   nil,   949,   nil,   nil,   nil,   949,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   949,   nil,   nil,   nil,   nil,   949,   949,
+   949,   949,   949,   949,   nil,   nil,   nil,   949,   949,   nil,
+   nil,   nil,   nil,   nil,   nil,   949,   nil,   nil,   949,   949,
+   949,   nil,   949,   949,   953,   953,   953,   953,   953,   953,
+   nil,   nil,   nil,   953,   953,   nil,   nil,   nil,   953,   nil,
+   953,   953,   953,   953,   953,   953,   953,   nil,   nil,   nil,
+   nil,   nil,   953,   953,   953,   953,   953,   953,   953,   nil,
+   nil,   953,   nil,   nil,   nil,   nil,   nil,   953,   953,   953,
+   953,   953,   953,   953,   953,   953,   953,   953,   953,   nil,
+   953,   953,   953,   nil,   953,   953,   nil,   953,   953,   953,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   953,
+   nil,   nil,   953,   nil,   nil,   953,   953,   nil,   nil,   953,
+   nil,   953,   nil,   nil,   nil,   953,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   953,   nil,   nil,   nil,   nil,   953,   953,
+   953,   953,   953,   953,   nil,   nil,   nil,   953,   953,   nil,
+   nil,   nil,   nil,   nil,   nil,   953,   nil,   nil,   953,   953,
+   953,   nil,   953,   953,   994,   994,   994,   994,   994,   994,
+   nil,   nil,   nil,   994,   994,   nil,   nil,   nil,   994,   nil,
+   994,   994,   994,   994,   994,   994,   994,   nil,   nil,   nil,
+   nil,   nil,   994,   994,   994,   994,   994,   994,   994,   nil,
+   nil,   994,   nil,   nil,   nil,   nil,   nil,   994,   994,   994,
+   994,   994,   994,   994,   994,   994,   994,   994,   994,   nil,
+   994,   994,   994,   nil,   994,   994,   nil,   994,   994,   994,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   994,
+   nil,   nil,   994,   nil,   nil,   994,   994,   nil,   nil,   994,
+   nil,   994,   nil,   nil,   nil,   994,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   994,   nil,   nil,   nil,   nil,   994,   994,
+   994,   994,   994,   994,   nil,   nil,   nil,   994,   994,   nil,
+   nil,   nil,   nil,   nil,   nil,   994,   nil,   nil,   994,   994,
+   994,   nil,   994,   994,  1001,  1001,  1001,  1001,  1001,  1001,
+   nil,   nil,   nil,  1001,  1001,   nil,   nil,   nil,  1001,   nil,
+  1001,  1001,  1001,  1001,  1001,  1001,  1001,   nil,   nil,   nil,
+   nil,   nil,  1001,  1001,  1001,  1001,  1001,  1001,  1001,   nil,
+   nil,  1001,   nil,   nil,   nil,   nil,   nil,  1001,  1001,  1001,
+  1001,  1001,  1001,  1001,  1001,  1001,  1001,  1001,  1001,   nil,
+  1001,  1001,  1001,   nil,  1001,  1001,   nil,  1001,  1001,  1001,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1001,
+   nil,   nil,  1001,   nil,   nil,  1001,  1001,   nil,   nil,  1001,
+   nil,  1001,   nil,   nil,   nil,  1001,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1001,   nil,   nil,   nil,   nil,  1001,  1001,
+  1001,  1001,  1001,  1001,   nil,   nil,   nil,  1001,  1001,   nil,
+   nil,   nil,   nil,   nil,   nil,  1001,   nil,   nil,  1001,  1001,
+  1001,   nil,  1001,  1001,  1006,  1006,  1006,  1006,  1006,  1006,
+   nil,   nil,   nil,  1006,  1006,   nil,   nil,   nil,  1006,   nil,
+  1006,  1006,  1006,  1006,  1006,  1006,  1006,   nil,   nil,   nil,
+   nil,   nil,  1006,  1006,  1006,  1006,  1006,  1006,  1006,   nil,
+   nil,  1006,   nil,   nil,   nil,   nil,   nil,  1006,  1006,  1006,
+  1006,  1006,  1006,  1006,  1006,  1006,  1006,  1006,  1006,   nil,
+  1006,  1006,  1006,   nil,  1006,  1006,   nil,  1006,  1006,  1006,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1006,
+   nil,   nil,  1006,   nil,   nil,  1006,  1006,   nil,   nil,  1006,
+   nil,  1006,   nil,   nil,   nil,  1006,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1006,   nil,   nil,   nil,   nil,  1006,  1006,
+  1006,  1006,  1006,  1006,   nil,   nil,   nil,  1006,  1006,   nil,
+   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,  1006,
+  1006,   nil,  1006,  1006,     8,     8,     8,     8,     8,   nil,
+   nil,   nil,     8,     8,   nil,   nil,   nil,     8,   nil,     8,
+     8,     8,     8,     8,     8,     8,   nil,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,     8,   nil,   nil,
+     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,     8,     8,     8,     8,     8,     8,   nil,     8,
+     8,     8,   nil,     8,     8,   nil,     8,     8,     8,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,
+   nil,     8,   nil,   nil,     8,     8,   nil,   nil,     8,   nil,
+     8,   nil,   nil,   nil,     8,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,     8,   nil,   nil,   nil,   nil,     8,     8,     8,
+     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,   nil,
+   nil,   nil,   nil,   nil,     8,   nil,   nil,     8,     8,     8,
+   nil,     8,     8,    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,   nil,
+    23,    23,    23,    23,    23,    23,    23,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,    23,
+    23,    23,    23,    23,    23,    23,    23,   nil,    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,   781,    23,   781,   781,
+   781,   781,   781,    23,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   781,   nil,   nil,   nil,    23,    23,    23,    23,
+    23,    23,   nil,   nil,   nil,    23,    23,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   781,    30,    23,    23,    23,   nil,
+    23,    23,    30,    30,    30,   781,   781,    30,    30,    30,
+   767,    30,   767,   767,   767,   767,   767,   nil,   nil,   nil,
+    30,    30,    30,   nil,   nil,   nil,   767,   nil,   nil,   nil,
+   nil,    30,    30,   nil,    30,    30,    30,    30,    30,   781,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   767,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   767,   767,   767,
+   767,   nil,    30,    30,    30,    30,    30,    30,    30,    30,
+    30,    30,    30,    30,    30,    30,   nil,   nil,    30,    30,
+    30,   nil,   nil,    30,   nil,    30,    30,   nil,   nil,    30,
+    30,   nil,    30,   767,    30,   nil,    30,   nil,    30,    30,
+    30,    30,    30,    30,    30,   nil,    30,    30,    30,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    30,    30,    31,    30,   nil,    30,   nil,   nil,   nil,
+    31,    31,    31,    30,   nil,    31,    31,    31,   768,    31,
+   768,   768,   768,   768,   768,   nil,   nil,   nil,   nil,    31,
+    31,   nil,   nil,   nil,   768,   nil,   nil,   nil,   nil,    31,
+    31,   nil,    31,    31,    31,    31,    31,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   768,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   768,   768,   768,   768,   nil,
+    31,    31,    31,    31,    31,    31,    31,    31,    31,    31,
+    31,    31,    31,    31,   nil,   nil,    31,    31,    31,   nil,
+   nil,    31,   nil,    31,    31,   nil,   nil,    31,    31,   nil,
+    31,   768,    31,   nil,    31,   nil,    31,    31,    31,    31,
+    31,    31,    31,   nil,    31,   nil,    31,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    31,
+    31,   nil,    31,   nil,    31,    32,    32,    32,   nil,    32,
+   nil,    31,   nil,    32,    32,   nil,   nil,   nil,    32,   nil,
+    32,    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,
+   nil,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,    32,    32,    32,    32,    32,    32,    32,    32,    32,
+    32,    32,    32,   nil,    32,    32,   nil,    32,    32,    32,
+   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,    32,    32,   nil,   nil,    32,
+   nil,    32,   nil,    32,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,
+    32,    32,    32,    32,   nil,   nil,   nil,    32,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,    32,    32,
+    32,   nil,    32,    32,    33,    33,    33,   nil,    33,   nil,
+   nil,   nil,    33,    33,   nil,   nil,   nil,    33,   nil,    33,
+    33,    33,    33,    33,    33,    33,   nil,   nil,   nil,   nil,
+   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,
+    33,    33,    33,    33,    33,    33,    33,    33,    33,    33,
+    33,    33,   nil,    33,    33,   nil,    33,    33,    33,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,
+   nil,    33,   nil,   nil,    33,    33,   nil,   nil,    33,   nil,
+    33,   nil,    33,   nil,    33,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,    33,    33,
+    33,    33,    33,   nil,   nil,   nil,    33,    33,   nil,   nil,
+   nil,   nil,   nil,   nil,    33,   nil,    33,    33,    33,    33,
+   nil,    33,    33,    34,    34,    34,   nil,    34,   nil,   nil,
+   nil,    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,    34,    34,    34,
+    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,    34,    34,    34,    34,
+    34,    34,   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,    34,    34,    34,    34,   nil,
+    34,    34,    37,    37,    37,   nil,    37,   nil,   nil,   nil,
+    37,    37,   nil,   nil,   nil,    37,   nil,    37,    37,    37,
+    37,    37,    37,    37,   nil,   nil,   nil,   nil,   nil,    37,
+    37,    37,    37,    37,    37,    37,   nil,   nil,    37,   nil,
+   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,
+    37,    37,    37,    37,    37,    37,   nil,    37,    37,    37,
+   nil,    37,    37,   nil,   nil,   nil,    37,   nil,   nil,   nil,
+   nil,   nil,   965,   nil,   965,   965,   965,   965,   965,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   965,    37,
+   nil,   nil,    37,    37,   nil,   nil,    37,   nil,    37,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   965,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
+    37,   965,   965,   nil,    37,    37,   nil,   nil,   nil,   nil,
+   nil,   nil,    37,   nil,   nil,    37,    37,    37,   nil,    37,
+    37,    38,    38,    38,   nil,    38,   nil,   nil,   nil,    38,
+    38,   nil,   nil,   nil,    38,   965,    38,    38,    38,    38,
+    38,    38,    38,   nil,   nil,   nil,   nil,   nil,    38,    38,
+    38,    38,    38,    38,    38,   nil,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,    38,    38,
+    38,    38,    38,    38,    38,   nil,    38,    38,    38,   nil,
+    38,    38,   nil,   nil,   nil,    38,   nil,   nil,   nil,   nil,
+   nil,   967,   nil,   967,   967,   967,   967,   967,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    38,   nil,   967,    38,   nil,
+   nil,    38,    38,   nil,   nil,    38,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   967,
+   nil,   nil,   nil,   nil,    38,    38,    38,    38,    38,    38,
+   967,   967,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,
+   nil,    38,   nil,   nil,    38,    38,    38,   nil,    38,    38,
+    45,    45,    45,   nil,    45,   nil,   nil,   nil,    45,    45,
+   nil,   nil,   nil,    45,   967,    45,    45,    45,    45,    45,
+    45,    45,   nil,   nil,   nil,   nil,   nil,    45,    45,    45,
+    45,    45,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
+   nil,   nil,   nil,    45,   nil,   nil,    45,    45,    45,    45,
+    45,    45,    45,    45,   nil,    45,    45,    45,   nil,    45,
+    45,   nil,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,   nil,   nil,
+    45,    45,   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,
+    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,
+   nil,   nil,   nil,    45,    45,    45,    45,    45,    45,   nil,
+   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,   nil,   nil,
+    45,   nil,   nil,    45,    45,    45,   nil,    45,    45,    46,
+    46,    46,   nil,    46,   nil,   nil,   nil,    46,    46,   nil,
+   nil,   nil,    46,   nil,    46,    46,    46,    46,    46,    46,
+    46,   nil,   nil,   nil,   nil,   nil,    46,    46,    46,    46,
+    46,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,    46,   nil,   nil,    46,    46,    46,    46,    46,
+    46,    46,    46,   nil,    46,    46,    46,   nil,    46,    46,
+   nil,    46,    46,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    46,   nil,   nil,    46,   nil,   nil,    46,
+    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
+   nil,   nil,    46,    46,    46,    46,    46,    46,   nil,   nil,
+   nil,    46,    46,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,    46,    46,    46,   nil,    46,    46,    48,    48,
+    48,   nil,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,
+   nil,    48,   nil,    48,    48,    48,    48,    48,    48,    48,
+   nil,   nil,   nil,   nil,   nil,    48,    48,    48,    48,    48,
+    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,    48,    48,    48,    48,    48,    48,
+    48,    48,   nil,    48,    48,    48,   nil,    48,    48,   nil,
+    48,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,    48,    48,
+   nil,   969,    48,   969,   969,   969,   969,   969,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    48,   969,   nil,   nil,
+   nil,    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,
+    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   969,
+    60,    48,    48,    48,   nil,    48,    48,    60,    60,    60,
+   969,   969,    60,    60,    60,   777,    60,   777,   777,   777,
+   777,   777,   nil,   nil,   nil,   nil,    60,    60,    60,   nil,
+   nil,   777,   nil,   nil,   nil,   nil,    60,    60,   nil,    60,
+    60,    60,    60,    60,   969,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   777,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   777,   777,   777,   777,   nil,    60,    60,    60,
+    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,
+    60,   nil,   nil,    60,    60,    60,   nil,   nil,    60,   nil,
+   nil,    60,   nil,   nil,    60,    60,   nil,    60,   777,    60,
+   nil,    60,   nil,    60,    60,    60,    60,    60,    60,    60,
+   nil,    60,   nil,    60,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    60,    60,    60,    60,
+   nil,    60,   nil,    60,   nil,   nil,   nil,   461,    60,    62,
+    62,    62,    62,    62,   461,   461,   461,    62,    62,   461,
+   461,   461,    62,   461,    62,    62,    62,    62,    62,    62,
+    62,   nil,   461,   461,   461,   nil,    62,    62,    62,    62,
+    62,    62,    62,   461,   461,    62,   461,   461,   461,   461,
+   461,    62,    62,   nil,    62,    62,    62,    62,    62,    62,
+    62,    62,    62,   nil,    62,    62,    62,   nil,    62,    62,
+   nil,    62,    62,    62,   461,   461,   461,   461,   461,   461,
+   461,   461,   461,   461,   461,   461,   461,   461,   nil,   nil,
+   461,   461,   461,    62,   nil,   461,    62,   461,   461,    62,
+    62,   461,   461,    62,   461,    62,   461,   nil,   461,    62,
+   461,   461,   461,   461,   461,   461,   461,    62,   461,   461,
+   461,   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,
+   nil,    62,    62,   461,   461,   nil,   461,   nil,   461,    62,
+   nil,   nil,    62,    62,    62,   461,    62,    62,    67,    67,
+    67,   nil,    67,   nil,   nil,   nil,    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,    67,   nil,   nil,   nil,
+   nil,    67,    67,    67,    67,    67,    67,   nil,   nil,   nil,
+    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,    67,    67,    67,   nil,    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,    68,
+    68,    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,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,
+    68,    68,    68,    68,    68,    68,   nil,   nil,   nil,    68,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+    68,    68,    68,   nil,    68,    68,    71,    71,    71,   nil,
+    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
+   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
+   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
+   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
+   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
+   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
+    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
+    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
+    71,    71,   nil,    71,    71,    72,    72,    72,   nil,    72,
+   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
+    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
+   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
+    72,    72,    72,   nil,    72,    72,   nil,   nil,   nil,    72,
+   nil,   nil,   nil,   nil,   nil,   985,   nil,   985,   985,   985,
+   985,   985,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
+   nil,   985,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   985,   nil,   nil,   nil,   nil,    72,    72,
+    72,    72,    72,    72,   985,   985,   nil,    72,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
+    72,   nil,    72,    72,    73,    73,    73,   nil,    73,   nil,
+   nil,   nil,    73,    73,   nil,   nil,   nil,    73,   985,    73,
+    73,    73,    73,    73,    73,    73,   nil,   nil,   nil,   nil,
+   nil,    73,    73,    73,    73,    73,    73,    73,   nil,   nil,
+    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,
+    73,    73,    73,    73,    73,    73,    73,    73,   nil,    73,
+    73,    73,   nil,    73,    73,   nil,   nil,   nil,    73,   nil,
+   nil,   nil,   nil,   nil,  1047,   nil,  1047,  1047,  1047,  1047,
+  1047,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
+  1047,    73,   nil,   nil,    73,    73,   nil,   nil,    73,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1047,   nil,   nil,   nil,   nil,    73,    73,    73,
+    73,    73,    73,  1047,  1047,   nil,    73,    73,   nil,   nil,
+   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
+   nil,    73,    73,    74,    74,    74,   nil,    74,   nil,   nil,
+   nil,    74,    74,   nil,   nil,   nil,    74,  1047,    74,    74,
+    74,    74,    74,    74,    74,   nil,   nil,   nil,   nil,   nil,
+    74,    74,    74,    74,    74,    74,    74,   nil,   nil,    74,
+   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,   nil,    74,
+    74,    74,    74,    74,    74,    74,    74,   nil,    74,    74,
+    74,   nil,    74,    74,   nil,   nil,   nil,    74,   nil,   nil,
+   nil,   nil,   nil,  1056,   nil,  1056,  1056,  1056,  1056,  1056,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,  1056,
+    74,   nil,   nil,    74,    74,   nil,   nil,    74,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1056,   nil,   nil,   nil,   nil,    74,    74,    74,    74,
+    74,    74,  1056,  1056,   nil,    74,    74,   nil,   nil,   nil,
+   nil,   nil,   nil,    74,   nil,   nil,    74,    74,    74,   nil,
+    74,    74,   128,   128,   128,   128,   128,   nil,   nil,   nil,
+   128,   128,   nil,   nil,   nil,   128,  1056,   128,   128,   128,
+   128,   128,   128,   128,   nil,   nil,   nil,   nil,   nil,   128,
+   128,   128,   128,   128,   128,   128,   nil,   nil,   128,   nil,
+   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,   128,
+   128,   128,   128,   128,   128,   128,   nil,   128,   128,   128,
+   nil,   128,   128,   nil,   128,   128,   128,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,   nil,   128,
+   nil,   nil,   128,   128,   nil,   nil,   128,   nil,   128,   nil,
+   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   128,   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,
+   128,   nil,   nil,   nil,   128,   128,   nil,   nil,   nil,   nil,
+   nil,   128,   128,   nil,   nil,   128,   128,   128,   nil,   128,
+   128,   133,   133,   133,   nil,   133,   nil,   nil,   nil,   133,
+   133,   nil,   nil,   nil,   133,   nil,   133,   133,   133,   133,
+   133,   133,   133,   nil,   nil,   nil,   nil,   nil,   133,   133,
+   133,   133,   133,   133,   133,   nil,   nil,   133,   nil,   nil,
+   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,
+   133,   133,   133,   133,   133,   nil,   133,   133,   133,   nil,
+   133,   133,   nil,   133,   133,   133,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   nil,
+   nil,   133,   133,   nil,   nil,   133,   nil,   nil,   nil,   nil,
+   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,
+   nil,   nil,   nil,   nil,   133,   133,   133,   133,   133,   133,
+   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,   nil,   nil,
+   nil,   133,   nil,   nil,   133,   133,   133,   nil,   133,   133,
+   134,   134,   134,   nil,   134,   nil,   nil,   nil,   134,   134,
+   nil,   nil,   nil,   134,   nil,   134,   134,   134,   134,   134,
+   134,   134,   nil,   nil,   nil,   nil,   nil,   134,   134,   134,
+   134,   134,   134,   134,   nil,   nil,   134,   nil,   nil,   nil,
+   nil,   nil,   nil,   134,   nil,   nil,   134,   134,   134,   134,
+   134,   134,   134,   134,   nil,   134,   134,   134,   nil,   134,
+   134,   nil,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   nil,   nil,
+   134,   134,   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,
+   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,
+   nil,   nil,   nil,   134,   134,   134,   134,   134,   134,   nil,
+   nil,   nil,   134,   134,   nil,   nil,   nil,   nil,   nil,   nil,
+   134,   nil,   nil,   134,   134,   134,   nil,   134,   134,   135,
+   135,   135,   nil,   135,   nil,   nil,   nil,   135,   135,   nil,
+   nil,   nil,   135,   nil,   135,   135,   135,   135,   135,   135,
+   135,   nil,   nil,   nil,   nil,   nil,   135,   135,   135,   135,
+   135,   135,   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,
+   nil,   nil,   135,   nil,   nil,   135,   135,   135,   135,   135,
+   135,   135,   135,   nil,   135,   135,   135,   nil,   135,   135,
+   nil,   135,   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   135,   nil,   nil,   135,   nil,   nil,   135,
+   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,   nil,   135,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
+   nil,   nil,   135,   135,   135,   135,   135,   135,   nil,   nil,
+   nil,   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,   135,
+   nil,   nil,   135,   135,   135,   nil,   135,   135,   136,   136,
+   136,   nil,   136,   nil,   nil,   nil,   136,   136,   nil,   nil,
+   nil,   136,   nil,   136,   136,   136,   136,   136,   136,   136,
+   nil,   nil,   nil,   nil,   nil,   136,   136,   136,   136,   136,
+   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
+   nil,   136,   nil,   nil,   136,   136,   136,   136,   136,   136,
+   136,   136,   nil,   136,   136,   136,   nil,   136,   136,   nil,
+   136,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,   136,   136,
+   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,   136,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,   nil,
+   nil,   136,   136,   136,   136,   136,   136,   nil,   nil,   nil,
+   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
+   nil,   136,   136,   136,   nil,   136,   136,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
+   137,   nil,   137,   137,   137,   137,   137,   137,   137,   nil,
+   nil,   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,
+   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   137,
+   137,   nil,   137,   137,   137,   137,   137,   137,   137,   137,
+   137,   nil,   137,   137,   137,   nil,   137,   137,   nil,   137,
+   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   137,   nil,   nil,   137,   nil,   nil,   137,   137,   nil,
+   nil,   137,   nil,   137,   nil,   nil,   nil,   137,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,
+   137,   137,   137,   137,   137,   137,   nil,   nil,   nil,   137,
+   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
+   137,   137,   137,   nil,   137,   137,   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,   nil,   222,   222,   222,   222,   222,   222,   222,
+   nil,   nil,   222,   nil,   nil,   nil,   nil,   nil,   nil,   222,
+   nil,   nil,   222,   222,   222,   222,   222,   222,   222,   222,
+   nil,   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,   222,   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,   nil,   nil,   nil,   222,   nil,   nil,   222,
+   222,   222,   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,   nil,   223,   223,   223,   223,   223,   223,   223,   nil,
+   nil,   223,   nil,   nil,   nil,   nil,   nil,   nil,   223,   nil,
+   nil,   223,   223,   223,   223,   223,   223,   223,   223,   nil,
+   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,   223,   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,   nil,   nil,   nil,   223,   nil,   nil,   223,   223,
+   223,   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,
+   nil,   224,   224,   224,   224,   224,   224,   224,   nil,   nil,
+   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,
+   224,   224,   224,   224,   224,   224,   224,   224,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,   224,   224,
+   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,   nil,
+   225,   225,   225,   225,   225,   225,   225,   nil,   nil,   225,
+   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,   225,
+   225,   225,   225,   225,   225,   225,   225,   nil,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   225,   nil,   nil,   225,   225,   225,   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,   nil,   226,
+   226,   226,   226,   226,   226,   226,   nil,   nil,   226,   nil,
+   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
+   226,   226,   226,   226,   226,   226,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   226,   nil,   nil,   226,   226,   226,   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,   nil,   227,   227,
+   227,   227,   227,   227,   227,   nil,   nil,   227,   nil,   nil,
+   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,   227,   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,   227,   nil,   227,
+   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,   nil,   nil,
+   nil,   227,   nil,   227,   227,   227,   227,   nil,   227,   227,
+   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,   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,   231,   nil,
+   nil,   nil,   nil,   231,   231,   231,   231,   231,   231,   nil,
+   nil,   nil,   231,   231,   nil,   nil,   nil,   nil,   nil,   nil,
+   231,   nil,   nil,   231,   231,   231,   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,   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,   232,   nil,   nil,
+   nil,   nil,   232,   232,   232,   232,   232,   232,   nil,   nil,
+   nil,   232,   232,   nil,   nil,   nil,   nil,   nil,   nil,   232,
+   nil,   nil,   232,   232,   232,   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,   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,   233,   nil,   nil,   nil,
+   nil,   233,   233,   233,   233,   233,   233,   nil,   nil,   nil,
+   233,   233,   233,   nil,   nil,   nil,   nil,   nil,   233,   nil,
+   nil,   233,   233,   233,   nil,   233,   233,   244,   244,   244,
+   nil,   244,   nil,   nil,   nil,   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,   244,   nil,   nil,   nil,   nil,
+   244,   244,   244,   244,   244,   244,   nil,   nil,   nil,   244,
+   244,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   244,   244,   244,   nil,   244,   244,   247,   247,   247,   nil,
+   247,   nil,   nil,   nil,   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,   247,   nil,   nil,   nil,   nil,   247,
+   247,   247,   247,   247,   247,   nil,   nil,   nil,   247,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   247,
+   247,   247,   nil,   247,   247,   248,   248,   248,   nil,   248,
+   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,   nil,   248,   248,
+   248,   248,   248,   248,   nil,   nil,   nil,   248,   248,   nil,
+   nil,   nil,   nil,   nil,   nil,   248,   nil,   nil,   248,   248,
+   248,   nil,   248,   248,   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,
+   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,   249,   nil,   nil,   nil,   nil,   249,   249,   249,
+   249,   249,   249,   nil,   nil,   nil,   249,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   249,   249,   249,
+   nil,   249,   249,   250,   250,   250,   nil,   250,   nil,   nil,
+   nil,   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,   250,   nil,   nil,   nil,   nil,   250,   250,   250,   250,
+   250,   250,   nil,   nil,   nil,   250,   250,   nil,   nil,   nil,
+   nil,   nil,   nil,   250,   nil,   nil,   250,   250,   250,   nil,
+   250,   250,   251,   251,   251,   nil,   251,   nil,   nil,   nil,
+   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,
+   251,   nil,   nil,   nil,   nil,   251,   251,   251,   251,   251,
+   251,   nil,   nil,   nil,   251,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,   251,   nil,   nil,   251,   251,   251,   nil,   251,
+   251,   252,   252,   252,   nil,   252,   nil,   nil,   nil,   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,   252,
+   nil,   nil,   nil,   nil,   252,   252,   252,   252,   252,   252,
+   nil,   nil,   nil,   252,   252,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   252,   252,   252,   nil,   252,   252,
+   253,   253,   253,   nil,   253,   nil,   nil,   nil,   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,   253,   nil,
+   nil,   nil,   nil,   253,   253,   253,   253,   253,   253,   nil,
+   nil,   nil,   253,   253,   nil,   nil,   nil,   nil,   nil,   nil,
+   253,   nil,   nil,   253,   253,   253,   nil,   253,   253,   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,   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,   254,   nil,   nil,
+   nil,   nil,   254,   254,   254,   254,   254,   254,   nil,   nil,
+   nil,   254,   254,   nil,   nil,   nil,   nil,   nil,   nil,   254,
+   nil,   nil,   254,   254,   254,   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,   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,   255,   nil,   nil,   nil,
+   nil,   255,   255,   255,   255,   255,   255,   nil,   nil,   nil,
+   255,   255,   nil,   nil,   nil,   nil,   nil,   nil,   255,   nil,
+   nil,   255,   255,   255,   nil,   255,   255,   256,   256,   256,
+   nil,   256,   nil,   nil,   nil,   256,   256,   nil,   nil,   nil,
+   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,   256,   256,   256,   256,   256,
+   256,   nil,   256,   256,   256,   nil,   256,   256,   nil,   256,
+   256,   256,   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,   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,   nil,   nil,   nil,   256,   nil,   nil,
+   256,   256,   256,   nil,   256,   256,   257,   257,   257,   nil,
+   257,   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,   257,
+   nil,   257,   257,   257,   257,   257,   257,   257,   nil,   nil,
+   nil,   nil,   nil,   257,   257,   257,   257,   257,   257,   257,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   257,   257,   257,   257,   257,   257,   257,   257,
+   nil,   257,   257,   257,   nil,   257,   257,   nil,   257,   257,
+   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   257,   nil,   nil,   257,   257,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   257,
+   257,   257,   257,   257,   257,   nil,   nil,   nil,   257,   257,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,
+   257,   257,   nil,   257,   257,   258,   258,   258,   nil,   258,
+   nil,   nil,   nil,   258,   258,   nil,   nil,   nil,   258,   nil,
+   258,   258,   258,   258,   258,   258,   258,   nil,   nil,   nil,
+   nil,   nil,   258,   258,   258,   258,   258,   258,   258,   nil,
+   nil,   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
+   nil,   258,   258,   258,   258,   258,   258,   258,   258,   nil,
+   258,   258,   258,   nil,   258,   258,   nil,   258,   258,   258,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   258,
+   nil,   nil,   258,   nil,   nil,   258,   258,   nil,   nil,   258,
+   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,   258,   258,
+   258,   258,   258,   258,   nil,   nil,   nil,   258,   258,   nil,
+   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,   258,
+   258,   nil,   258,   258,   259,   259,   259,   nil,   259,   nil,
+   nil,   nil,   259,   259,   nil,   nil,   nil,   259,   nil,   259,
+   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,   nil,
+   nil,   259,   259,   259,   259,   259,   259,   259,   nil,   nil,
+   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
+   259,   259,   259,   259,   259,   259,   259,   259,   nil,   259,
+   259,   259,   nil,   259,   259,   nil,   259,   259,   259,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,
+   nil,   259,   nil,   nil,   259,   259,   nil,   nil,   259,   nil,
+   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   259,   nil,   nil,   nil,   nil,   259,   259,   259,
+   259,   259,   259,   nil,   nil,   nil,   259,   259,   nil,   nil,
+   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,   259,   259,
+   nil,   259,   259,   260,   260,   260,   nil,   260,   nil,   nil,
+   nil,   260,   260,   nil,   nil,   nil,   260,   nil,   260,   260,
+   260,   260,   260,   260,   260,   nil,   nil,   nil,   nil,   nil,
+   260,   260,   260,   260,   260,   260,   260,   nil,   nil,   260,
+   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,
+   260,   260,   260,   260,   260,   260,   260,   nil,   260,   260,
+   260,   nil,   260,   260,   nil,   260,   260,   260,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,
+   260,   nil,   nil,   260,   260,   nil,   nil,   260,   nil,   nil,
+   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   260,   nil,   nil,   nil,   nil,   260,   260,   260,   260,
+   260,   260,   nil,   nil,   nil,   260,   260,   nil,   nil,   nil,
+   nil,   nil,   nil,   260,   nil,   nil,   260,   260,   260,   nil,
+   260,   260,   261,   261,   261,   nil,   261,   nil,   nil,   nil,
+   261,   261,   nil,   nil,   nil,   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,
+   261,   261,   261,   261,   261,   261,   nil,   261,   261,   261,
+   nil,   261,   261,   nil,   261,   261,   261,   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,   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,   nil,
+   nil,   nil,   261,   nil,   nil,   261,   261,   261,   nil,   261,
+   261,   262,   262,   262,   nil,   262,   nil,   nil,   nil,   262,
+   262,   nil,   nil,   nil,   262,   nil,   262,   262,   262,   262,
+   262,   262,   262,   nil,   nil,   nil,   nil,   nil,   262,   262,
+   262,   262,   262,   262,   262,   nil,   nil,   262,   nil,   nil,
+   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,   262,
+   262,   262,   262,   262,   262,   nil,   262,   262,   262,   nil,
+   262,   262,   nil,   262,   262,   262,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   nil,
+   nil,   262,   262,   nil,   nil,   262,   nil,   nil,   nil,   nil,
+   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,
+   nil,   nil,   nil,   nil,   262,   262,   262,   262,   262,   262,
+   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   nil,   nil,
+   nil,   262,   nil,   nil,   262,   262,   262,   nil,   262,   262,
+   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,   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,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   263,   nil,   nil,   263,   263,   263,   nil,   263,   263,   264,
+   264,   264,   nil,   264,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   264,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   264,   nil,   nil,
+   nil,   nil,   264,   264,   264,   264,   264,   264,   nil,   nil,
+   nil,   264,   264,   nil,   nil,   nil,   nil,   nil,   nil,   264,
+   nil,   nil,   264,   264,   264,   nil,   264,   264,   265,   265,
+   265,   nil,   265,   nil,   nil,   nil,   265,   265,   nil,   nil,
+   nil,   265,   nil,   265,   265,   265,   265,   265,   265,   265,
+   nil,   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,
+   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,
+   nil,   265,   nil,   nil,   265,   265,   265,   265,   265,   265,
+   265,   265,   nil,   265,   265,   265,   nil,   265,   265,   nil,
+   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,   265,   265,
+   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,
+   nil,   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,
+   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   265,   265,   265,   nil,   265,   265,   266,   266,   266,
+   nil,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,   nil,
+   266,   nil,   266,   266,   266,   266,   266,   266,   266,   nil,
+   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,
+   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   nil,
+   266,   nil,   nil,   266,   266,   266,   266,   266,   266,   266,
+   266,   nil,   266,   266,   266,   nil,   266,   266,   nil,   266,
+   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   266,   nil,   nil,   266,   266,   nil,
+   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,   nil,
+   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,   266,
+   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,
+   266,   266,   266,   nil,   266,   266,   267,   267,   267,   nil,
+   267,   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,   267,
+   nil,   267,   267,   267,   267,   267,   267,   267,   nil,   nil,
+   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,   267,
+   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,
+   nil,   nil,   267,   267,   267,   267,   267,   267,   267,   267,
+   nil,   267,   267,   267,   nil,   267,   267,   nil,   267,   267,
+   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   267,   nil,   nil,   267,   nil,   nil,   267,   267,   nil,   nil,
+   267,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,   nil,   267,
+   267,   267,   267,   267,   267,   nil,   nil,   nil,   267,   267,
+   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,
+   267,   267,   nil,   267,   267,   268,   268,   268,   nil,   268,
+   nil,   nil,   nil,   268,   268,   nil,   nil,   nil,   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,   268,   268,   268,   268,   268,   268,   nil,
+   268,   268,   268,   nil,   268,   268,   nil,   268,   268,   268,
+   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,   268,   nil,   nil,   268,
+   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,   268,   268,
+   268,   nil,   268,   268,   273,   273,   273,   nil,   273,   nil,
+   nil,   nil,   273,   273,   nil,   nil,   nil,   273,   nil,   273,
+   273,   273,   273,   273,   273,   273,   nil,   nil,   nil,   nil,
+   nil,   273,   273,   273,   273,   273,   273,   273,   nil,   nil,
+   273,   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,
+   273,   273,   273,   273,   273,   273,   273,   273,   nil,   273,
+   273,   273,   nil,   273,   273,   nil,   273,   273,   273,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,
+   nil,   273,   nil,   nil,   273,   273,   nil,   nil,   273,   nil,
+   nil,   nil,   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   273,   nil,   nil,   nil,   nil,   273,   273,   273,
+   273,   273,   273,   nil,   nil,   nil,   273,   273,   nil,   nil,
+   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,   273,   273,
+   nil,   273,   273,   281,   281,   281,   nil,   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,   nil,   281,   nil,   nil,   281,
+   281,   281,   281,   281,   281,   281,   281,   281,   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,   281,
+   nil,   281,   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,
+   nil,   nil,   nil,   281,   nil,   281,   281,   281,   281,   nil,
+   281,   281,   282,   282,   282,   nil,   282,   nil,   nil,   nil,
+   282,   282,   nil,   nil,   nil,   282,   nil,   282,   282,   282,
+   282,   282,   282,   282,   nil,   nil,   nil,   nil,   nil,   282,
+   282,   282,   282,   282,   282,   282,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   282,   282,
+   282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
+   nil,   282,   282,   nil,   282,   282,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   282,
+   nil,   nil,   282,   282,   nil,   nil,   282,   nil,   282,   nil,
+   282,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   nil,   nil,   282,   282,   282,   282,   282,
+   282,   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   282,   282,   282,   282,   nil,   282,
+   282,   291,   291,   291,   nil,   291,   nil,   nil,   nil,   291,
+   291,   nil,   nil,   nil,   291,   nil,   291,   291,   291,   291,
+   291,   291,   291,   nil,   nil,   nil,   nil,   nil,   291,   291,
+   291,   291,   291,   291,   291,   nil,   nil,   291,   nil,   nil,
+   nil,   nil,   nil,   nil,   291,   nil,   nil,   291,   291,   291,
+   291,   291,   291,   291,   291,   291,   291,   291,   291,   nil,
+   291,   291,   nil,   291,   291,   291,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   291,   nil,   nil,   291,   nil,
+   nil,   291,   291,   nil,   nil,   291,   nil,   291,   nil,   291,
+   nil,   291,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   291,
+   nil,   nil,   nil,   nil,   291,   291,   291,   291,   291,   291,
+   nil,   nil,   nil,   291,   291,   291,   nil,   nil,   nil,   nil,
+   nil,   291,   nil,   291,   291,   291,   291,   nil,   291,   291,
+   298,   298,   298,   nil,   298,   nil,   nil,   nil,   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,   298,   298,   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,   nil,   nil,   nil,   nil,
+   298,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   298,   nil,
+   nil,   nil,   nil,   298,   298,   298,   298,   298,   298,   nil,
+   nil,   nil,   298,   298,   nil,   nil,   nil,   nil,   nil,   nil,
+   298,   nil,   nil,   298,   298,   298,   nil,   298,   298,   300,
+   300,   300,   nil,   300,   nil,   nil,   nil,   300,   300,   nil,
+   nil,   nil,   300,   nil,   300,   300,   300,   300,   300,   300,
+   300,   nil,   nil,   nil,   nil,   nil,   300,   300,   300,   300,
+   300,   300,   300,   nil,   nil,   300,   nil,   nil,   nil,   nil,
+   nil,   nil,   300,   nil,   nil,   300,   300,   300,   300,   300,
+   300,   300,   300,   nil,   300,   300,   300,   nil,   300,   300,
+   nil,   300,   300,   300,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   300,   nil,   nil,   300,   nil,   nil,   300,
+   300,   nil,   nil,   300,   nil,   nil,   nil,   nil,   nil,   300,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   300,   nil,   nil,
+   nil,   nil,   300,   300,   300,   300,   300,   300,   nil,   nil,
+   nil,   300,   300,   nil,   nil,   nil,   nil,   nil,   nil,   300,
+   nil,   nil,   300,   300,   300,   nil,   300,   300,   303,   303,
+   303,   nil,   303,   nil,   nil,   nil,   303,   303,   nil,   nil,
+   nil,   303,   nil,   303,   303,   303,   303,   303,   303,   303,
+   nil,   nil,   nil,   nil,   nil,   303,   303,   303,   303,   303,
+   303,   303,   nil,   nil,   303,   nil,   nil,   nil,   nil,   nil,
+   nil,   303,   nil,   nil,   303,   303,   303,   303,   303,   303,
+   303,   303,   nil,   303,   303,   303,   nil,   303,   303,   nil,
+   303,   303,   303,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   303,   nil,   nil,   303,   nil,   nil,   303,   303,
+   nil,   nil,   303,   nil,   nil,   nil,   nil,   nil,   303,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   303,   nil,   nil,   nil,
+   nil,   303,   303,   303,   303,   303,   303,   nil,   nil,   nil,
+   303,   303,   nil,   nil,   nil,   nil,   nil,   nil,   303,   nil,
+   nil,   303,   303,   303,   nil,   303,   303,   304,   304,   304,
+   nil,   304,   nil,   nil,   nil,   304,   304,   nil,   nil,   nil,
+   304,   nil,   304,   304,   304,   304,   304,   304,   304,   nil,
+   nil,   nil,   nil,   nil,   304,   304,   304,   304,   304,   304,
+   304,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,
+   304,   nil,   nil,   304,   304,   304,   304,   304,   304,   304,
+   304,   nil,   304,   304,   304,   nil,   304,   304,   nil,   304,
+   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   304,   nil,   nil,   304,   nil,   nil,   304,   304,   nil,
+   nil,   304,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,
+   304,   304,   304,   304,   304,   304,   nil,   nil,   nil,   304,
+   304,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,
+   304,   304,   304,   nil,   304,   304,   310,   310,   310,   310,
+   310,   nil,   nil,   nil,   310,   310,   nil,   nil,   nil,   310,
+   nil,   310,   310,   310,   310,   310,   310,   310,   nil,   nil,
+   nil,   nil,   nil,   310,   310,   310,   310,   310,   310,   310,
+   nil,   nil,   310,   nil,   nil,   nil,   nil,   nil,   310,   310,
+   nil,   310,   310,   310,   310,   310,   310,   310,   310,   310,
+   nil,   310,   310,   310,   nil,   310,   310,   nil,   310,   310,
+   310,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   310,   nil,   nil,   310,   nil,   nil,   310,   310,   nil,   nil,
+   310,   nil,   310,   nil,   nil,   nil,   310,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   310,   nil,   nil,   nil,   nil,   310,
+   310,   310,   310,   310,   310,   nil,   nil,   nil,   310,   310,
+   nil,   nil,   nil,   nil,   nil,   nil,   310,   nil,   nil,   310,
+   310,   310,   nil,   310,   310,   318,   318,   318,   nil,   318,
+   nil,   nil,   nil,   318,   318,   nil,   nil,   nil,   318,   nil,
+   318,   318,   318,   318,   318,   318,   318,   nil,   nil,   nil,
+   nil,   nil,   318,   318,   318,   318,   318,   318,   318,   nil,
+   nil,   318,   nil,   nil,   nil,   nil,   nil,   nil,   318,   nil,
+   nil,   318,   318,   318,   318,   318,   318,   318,   318,   nil,
+   318,   318,   318,   nil,   318,   318,   nil,   nil,   nil,   318,
+   nil,   nil,   nil,   nil,   nil,  1058,   nil,  1058,  1058,  1058,
+  1058,  1058,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   318,
+   nil,  1058,   318,   nil,   nil,   318,   318,   nil,   nil,   318,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1058,   nil,   nil,   nil,   nil,   318,   318,
+   318,   318,   318,   318,  1058,  1058,   nil,   318,   318,   nil,
+   nil,   nil,   318,   nil,   nil,   318,   nil,   nil,   318,   318,
+   318,   nil,   318,   318,   335,   335,   335,   nil,   335,   nil,
+   nil,   nil,   335,   335,   nil,   nil,   nil,   335,  1058,   335,
+   335,   335,   335,   335,   335,   335,   nil,   nil,   nil,   nil,
+   nil,   335,   335,   335,   335,   335,   335,   335,   nil,   nil,
+   335,   nil,   nil,   nil,   nil,   nil,   nil,   335,   nil,   nil,
+   335,   335,   335,   335,   335,   335,   335,   335,   nil,   335,
+   335,   335,   nil,   335,   335,   nil,   nil,   nil,   335,   nil,
+   nil,   nil,   nil,   nil,  1060,   nil,  1060,  1060,  1060,  1060,
+  1060,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   335,   nil,
+  1060,   335,   nil,   nil,   335,   335,   nil,   nil,   335,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1060,   nil,   nil,   nil,   nil,   335,   335,   335,
+   335,   335,   335,  1060,  1060,   nil,   335,   335,   nil,   nil,
+   nil,   nil,   nil,   nil,   335,   nil,   nil,   335,   335,   335,
+   nil,   335,   335,   342,   342,   342,   nil,   342,   nil,   nil,
+   nil,   342,   342,   nil,   nil,   nil,   342,  1060,   342,   342,
+   342,   342,   342,   342,   342,   nil,   nil,   nil,   nil,   nil,
+   342,   342,   342,   342,   342,   342,   342,   nil,   nil,   342,
+   nil,   nil,   nil,   nil,   nil,   nil,   342,   nil,   nil,   342,
+   342,   342,   342,   342,   342,   342,   342,   nil,   342,   342,
+   342,   nil,   342,   342,   nil,   342,   342,   342,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   342,   nil,   nil,
+   342,   nil,   nil,   342,   342,   nil,   nil,   342,   nil,   nil,
+   nil,   nil,   nil,   342,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   342,   nil,   nil,   nil,   nil,   342,   342,   342,   342,
+   342,   342,   nil,   nil,   nil,   342,   342,   nil,   nil,   nil,
+   nil,   nil,   nil,   342,   nil,   nil,   342,   342,   342,   nil,
+   342,   342,   344,   344,   344,   nil,   344,   nil,   nil,   nil,
+   344,   344,   nil,   nil,   nil,   344,   nil,   344,   344,   344,
+   344,   344,   344,   344,   nil,   nil,   nil,   nil,   nil,   344,
+   344,   344,   344,   344,   344,   344,   nil,   nil,   344,   nil,
+   nil,   nil,   nil,   nil,   nil,   344,   nil,   nil,   344,   344,
+   344,   344,   344,   344,   344,   344,   nil,   344,   344,   344,
+   nil,   344,   344,   nil,   344,   344,   344,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   344,   nil,   nil,   344,
+   344,   nil,   344,   344,   nil,   nil,   344,   nil,   nil,   nil,
+   nil,   nil,   344,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   344,   nil,   nil,   nil,   nil,   344,   344,   344,   344,   344,
+   344,   nil,   nil,   nil,   344,   344,   nil,   nil,   nil,   nil,
+   nil,   nil,   344,   nil,   nil,   344,   344,   344,   nil,   344,
+   344,   348,   348,   348,   nil,   348,   nil,   nil,   nil,   348,
+   348,   nil,   nil,   nil,   348,   nil,   348,   348,   348,   348,
+   348,   348,   348,   nil,   nil,   nil,   nil,   nil,   348,   348,
+   348,   348,   348,   348,   348,   nil,   nil,   348,   nil,   nil,
+   nil,   nil,   nil,   nil,   348,   nil,   nil,   348,   348,   348,
+   348,   348,   348,   348,   348,   348,   348,   348,   348,   nil,
+   348,   348,   nil,   348,   348,   348,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,   348,   nil,
+   nil,   348,   348,   nil,   nil,   348,   nil,   348,   nil,   nil,
+   nil,   348,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   348,
+   nil,   nil,   nil,   nil,   348,   348,   348,   348,   348,   348,
+   nil,   nil,   nil,   348,   348,   nil,   nil,   nil,   nil,   nil,
+   nil,   348,   nil,   348,   348,   348,   348,   nil,   348,   348,
+   349,   349,   349,   nil,   349,   nil,   nil,   nil,   349,   349,
+   nil,   nil,   nil,   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,   349,   349,
+   349,   349,   349,   349,   349,   349,   349,   349,   nil,   349,
+   349,   nil,   349,   349,   349,   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,   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,   nil,   nil,   nil,
+   349,   nil,   349,   349,   349,   349,   nil,   349,   349,   354,
+   354,   354,   nil,   354,   nil,   nil,   nil,   354,   354,   nil,
+   nil,   nil,   354,   nil,   354,   354,   354,   354,   354,   354,
+   354,   nil,   nil,   nil,   nil,   nil,   354,   354,   354,   354,
+   354,   354,   354,   nil,   nil,   354,   nil,   nil,   nil,   nil,
+   nil,   nil,   354,   nil,   nil,   354,   354,   354,   354,   354,
+   354,   354,   354,   nil,   354,   354,   354,   nil,   354,   354,
+   nil,   354,   354,   354,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   354,   nil,   nil,   354,   nil,   nil,   354,
+   354,   nil,   nil,   354,   nil,   nil,   nil,   nil,   nil,   354,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   354,   nil,   nil,
+   nil,   nil,   354,   354,   354,   354,   354,   354,   nil,   nil,
+   nil,   354,   354,   nil,   nil,   nil,   nil,   nil,   nil,   354,
+   nil,   nil,   354,   354,   354,   nil,   354,   354,   375,   375,
+   375,   nil,   375,   nil,   nil,   nil,   375,   375,   nil,   nil,
+   nil,   375,   nil,   375,   375,   375,   375,   375,   375,   375,
+   nil,   nil,   nil,   nil,   nil,   375,   375,   375,   375,   375,
+   375,   375,   nil,   nil,   375,   nil,   nil,   nil,   nil,   nil,
+   nil,   375,   nil,   nil,   375,   375,   375,   375,   375,   375,
+   375,   375,   nil,   375,   375,   375,   nil,   375,   375,   nil,
+   375,   375,   375,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   375,   nil,   nil,   375,   nil,   nil,   375,   375,
+   nil,   nil,   375,   nil,   nil,   nil,   nil,   nil,   375,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   375,   nil,   nil,   nil,
+   nil,   375,   375,   375,   375,   375,   375,   nil,   nil,   nil,
+   375,   375,   nil,   nil,   nil,   nil,   nil,   nil,   375,   nil,
+   nil,   375,   375,   375,   nil,   375,   375,   436,   436,   436,
+   nil,   436,   nil,   nil,   nil,   436,   436,   nil,   nil,   nil,
+   436,   nil,   436,   436,   436,   436,   436,   436,   436,   nil,
+   nil,   nil,   nil,   nil,   436,   436,   436,   436,   436,   436,
+   436,   nil,   nil,   436,   nil,   nil,   nil,   nil,   nil,   nil,
+   436,   nil,   nil,   436,   436,   436,   436,   436,   436,   436,
+   436,   nil,   436,   436,   436,   nil,   436,   436,   nil,   436,
+   436,   436,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   436,   nil,   nil,   436,   nil,   nil,   436,   436,   nil,
+  1081,   436,  1081,  1081,  1081,  1081,  1081,   436,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   436,  1081,   nil,   nil,   nil,
+   436,   436,   436,   436,   436,   436,   nil,   nil,   nil,   436,
+   436,   nil,   nil,   nil,   nil,   nil,   nil,   436,  1081,   470,
+   436,   436,   436,   nil,   436,   436,   470,   470,   470,  1081,
+  1081,   470,   470,   470,   779,   470,   779,   779,   779,   779,
+   779,   nil,   nil,   nil,   470,   470,   470,   470,   nil,   nil,
+   779,   nil,   nil,   nil,   nil,   470,   470,   nil,   470,   470,
+   470,   470,   470,  1081,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   779,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   779,   779,   779,   779,   nil,   470,   470,   470,   470,
+   470,   470,   470,   470,   470,   470,   470,   470,   470,   470,
+   nil,   nil,   470,   470,   470,   nil,   nil,   470,   nil,   nil,
+   470,   nil,   nil,   470,   470,   nil,   470,   779,   470,   nil,
+   470,   nil,   470,   470,   470,   470,   470,   470,   470,   nil,
+   470,   470,   470,   833,   nil,   833,   833,   833,   833,   833,
+   nil,   nil,   nil,   nil,   nil,   470,   470,   470,   470,   833,
+   470,   471,   470,   nil,   nil,   nil,   nil,   470,   471,   471,
+   471,   nil,   nil,   471,   471,   471,   nil,   471,   nil,   nil,
+   nil,   833,   nil,   nil,   nil,   nil,   471,   471,   471,   471,
+   833,   833,   833,   833,   nil,   nil,   nil,   471,   471,   nil,
+   471,   471,   471,   471,   471,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   833,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   833,   nil,   471,   471,
+   471,   471,   471,   471,   471,   471,   471,   471,   471,   471,
+   471,   471,   nil,   nil,   471,   471,   471,   nil,   nil,   471,
+   nil,   nil,   471,   nil,   nil,   471,   471,   nil,   471,   nil,
+   471,   nil,   471,   nil,   471,   471,   471,   471,   471,   471,
+   471,   nil,   471,   471,   471,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   471,   471,   471,
+   471,   nil,   471,   nil,   471,   nil,   480,   480,   480,   471,
+   480,   nil,   nil,   nil,   480,   480,   nil,   nil,   nil,   480,
+   nil,   480,   480,   480,   480,   480,   480,   480,   nil,   nil,
+   nil,   nil,   nil,   480,   480,   480,   480,   480,   480,   480,
+   nil,   nil,   480,   nil,   nil,   nil,   nil,   nil,   nil,   480,
+   nil,   nil,   480,   480,   480,   480,   480,   480,   480,   480,
+   480,   480,   480,   480,   nil,   480,   480,   nil,   480,   480,
+   480,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   480,   nil,   nil,   480,   nil,   nil,   480,   480,   nil,   nil,
+   480,   nil,   480,   nil,   480,   nil,   480,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   480,   nil,   nil,   nil,   nil,   480,
+   480,   480,   480,   480,   480,   nil,   nil,   nil,   480,   480,
+   nil,   nil,   nil,   nil,   nil,   nil,   480,   nil,   480,   480,
+   480,   480,   nil,   480,   480,   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,   nil,   482,   482,   482,   482,   482,   482,   482,   nil,
+   nil,   482,   nil,   nil,   nil,   nil,   nil,   nil,   482,   nil,
+   nil,   482,   482,   482,   482,   482,   482,   482,   482,   nil,
+   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   482,   nil,   nil,   482,   482,
+   482,   nil,   482,   482,   483,   483,   483,   nil,   483,   nil,
+   nil,   nil,   483,   483,   nil,   nil,   nil,   483,   nil,   483,
+   483,   483,   483,   483,   483,   483,   nil,   nil,   nil,   nil,
+   nil,   483,   483,   483,   483,   483,   483,   483,   nil,   nil,
+   483,   nil,   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,
+   483,   483,   483,   483,   483,   483,   483,   483,   nil,   483,
+   483,   483,   nil,   483,   483,   nil,   483,   483,   483,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   483,   nil,
+   nil,   483,   nil,   nil,   483,   483,   nil,   nil,   483,   nil,
+   nil,   nil,   nil,   nil,   483,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   483,   nil,   nil,   nil,   nil,   483,   483,   483,
+   483,   483,   483,   nil,   nil,   nil,   483,   483,   nil,   nil,
+   nil,   nil,   nil,   nil,   483,   nil,   nil,   483,   483,   483,
+   nil,   483,   483,   484,   484,   484,   nil,   484,   nil,   nil,
+   nil,   484,   484,   nil,   nil,   nil,   484,   nil,   484,   484,
+   484,   484,   484,   484,   484,   nil,   nil,   nil,   nil,   nil,
+   484,   484,   484,   484,   484,   484,   484,   nil,   nil,   484,
+   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,   nil,   484,
+   484,   484,   484,   484,   484,   484,   484,   nil,   484,   484,
+   484,   nil,   484,   484,   nil,   484,   484,   484,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,   nil,
+   484,   nil,   nil,   484,   484,   nil,   nil,   484,   nil,   nil,
+   nil,   nil,   nil,   484,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   484,   nil,   nil,   nil,   nil,   484,   484,   484,   484,
+   484,   484,   nil,   nil,   nil,   484,   484,   nil,   nil,   nil,
+   nil,   nil,   nil,   484,   nil,   510,   484,   484,   484,   nil,
+   484,   484,   510,   510,   510,   nil,   nil,   510,   510,   510,
+   nil,   510,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   510,   510,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   510,   510,   nil,   510,   510,   510,   510,   510,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   277,   277,   nil,   nil,
+   277,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   277,
+   277,   nil,   277,   277,   277,   277,   277,   277,   277,   nil,
+   nil,   277,   277,   510,   nil,   nil,   277,   277,   277,   277,
+   510,   nil,   nil,   nil,   nil,   510,   510,   nil,   nil,   nil,
+   nil,   nil,   nil,   277,   277,   nil,   277,   277,   277,   277,
+   277,   277,   277,   277,   277,   277,   277,   510,   510,   277,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   510,   nil,   522,   522,   522,   510,   522,   nil,   277,
+   nil,   522,   522,   510,   nil,   nil,   522,   nil,   522,   522,
+   522,   522,   522,   522,   522,   nil,   nil,   nil,   nil,   nil,
+   522,   522,   522,   522,   522,   522,   522,   nil,   nil,   522,
+   nil,   nil,   nil,   nil,   nil,   nil,   522,   nil,   nil,   522,
+   522,   522,   522,   522,   522,   522,   522,   522,   522,   522,
+   522,   nil,   522,   522,   nil,   522,   522,   522,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   522,   nil,   nil,
+   522,   nil,   nil,   522,   522,   nil,   nil,   522,   nil,   522,
+   nil,   522,   nil,   522,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   522,   nil,   nil,   nil,   nil,   522,   522,   522,   522,
+   522,   522,   nil,   nil,   nil,   522,   522,   nil,   nil,   nil,
+   nil,   nil,   nil,   522,   nil,   522,   522,   522,   522,   nil,
+   522,   522,   525,   525,   525,   nil,   525,   nil,   nil,   nil,
+   525,   525,   nil,   nil,   nil,   525,   nil,   525,   525,   525,
+   525,   525,   525,   525,   nil,   nil,   nil,   nil,   nil,   525,
+   525,   525,   525,   525,   525,   525,   nil,   nil,   525,   nil,
+   nil,   nil,   nil,   nil,   nil,   525,   nil,   nil,   525,   525,
+   525,   525,   525,   525,   525,   525,   525,   525,   525,   525,
+   nil,   525,   525,   nil,   525,   525,   525,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   525,   nil,   nil,   525,
+   nil,   nil,   525,   525,   nil,   nil,   525,   nil,   nil,   nil,
+   525,   nil,   525,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   525,   nil,   nil,   nil,   nil,   525,   525,   525,   525,   525,
+   525,   nil,   nil,   nil,   525,   525,   nil,   nil,   nil,   nil,
+   nil,   nil,   525,   nil,   525,   525,   525,   525,   nil,   525,
+   525,   527,   527,   527,   nil,   527,   nil,   nil,   nil,   527,
+   527,   nil,   nil,   nil,   527,   nil,   527,   527,   527,   527,
+   527,   527,   527,   nil,   nil,   nil,   nil,   nil,   527,   527,
+   527,   527,   527,   527,   527,   nil,   nil,   527,   nil,   nil,
+   nil,   nil,   nil,   nil,   527,   nil,   nil,   527,   527,   527,
+   527,   527,   527,   527,   527,   nil,   527,   527,   527,   nil,
+   527,   527,   nil,   527,   527,   527,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   527,   nil,   nil,   527,   nil,
+   nil,   527,   527,   nil,   nil,   527,   nil,   nil,   nil,   nil,
+   nil,   527,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   527,
+   nil,   nil,   nil,   nil,   527,   527,   527,   527,   527,   527,
+   nil,   nil,   nil,   527,   527,   nil,   nil,   nil,   nil,   nil,
+   nil,   527,   nil,   nil,   527,   527,   527,   nil,   527,   527,
+   533,   533,   533,   533,   533,   nil,   nil,   nil,   533,   533,
+   nil,   nil,   nil,   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,   533,   533,   533,   533,   533,   533,   533,   533,
+   533,   533,   533,   533,   nil,   533,   533,   533,   nil,   533,
+   533,   nil,   533,   533,   533,   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,   533,   nil,   nil,   533,   nil,   533,   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,   nil,   nil,   533,
+   533,   nil,   nil,   533,   533,   533,   nil,   533,   533,   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,   nil,   541,   541,   541,   541,
+   541,   541,   541,   nil,   nil,   541,   nil,   nil,   nil,   nil,
+   nil,   nil,   541,   nil,   nil,   541,   541,   541,   541,   541,
+   541,   541,   541,   nil,   541,   541,   541,   nil,   541,   541,
+   nil,   nil,   nil,   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   541,   541,   541,   541,   541,   541,   nil,   nil,
+   nil,   541,   541,   nil,   nil,   nil,   nil,   nil,   nil,   541,
+   nil,   nil,   541,   541,   541,   nil,   541,   541,   543,   543,
+   543,   nil,   543,   nil,   nil,   nil,   543,   543,   nil,   nil,
+   nil,   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,   543,   543,   543,   543,
+   543,   543,   543,   543,   543,   543,   nil,   543,   543,   nil,
+   543,   543,   543,   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,   543,
+   nil,   nil,   543,   nil,   543,   nil,   543,   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,   nil,   nil,   nil,   543,   nil,
+   543,   543,   543,   543,   nil,   543,   543,   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,   nil,   549,   549,   549,   549,   549,   549,
+   549,   nil,   nil,   549,   nil,   nil,   nil,   nil,   nil,   nil,
+   549,   nil,   nil,   549,   549,   549,   549,   549,   549,   549,
+   549,   nil,   549,   549,   549,   nil,   549,   549,   nil,   nil,
+   nil,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   549,   549,   549,   549,   549,   549,   nil,   nil,   nil,   549,
+   549,   nil,   nil,   nil,   nil,   nil,   nil,   549,   nil,   nil,
+   549,   549,   549,   nil,   549,   549,   552,   552,   552,   nil,
+   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,   nil,   552,
+   nil,   nil,   552,   552,   552,   552,   552,   552,   552,   552,
+   nil,   552,   552,   552,   nil,   552,   552,   nil,   552,   552,
+   552,   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,   552,   nil,   nil,
+   552,   nil,   nil,   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,   nil,   nil,   nil,   552,   nil,   nil,   552,
+   552,   552,   nil,   552,   552,   553,   553,   553,   nil,   553,
+   nil,   nil,   nil,   553,   553,   nil,   nil,   nil,   553,   nil,
+   553,   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,
+   nil,   nil,   553,   553,   553,   553,   553,   553,   553,   nil,
+   nil,   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,
+   nil,   553,   553,   553,   553,   553,   553,   553,   553,   nil,
+   553,   553,   553,   nil,   553,   553,   nil,   553,   553,   553,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   553,
+   nil,   nil,   553,   nil,   nil,   553,   553,   nil,   nil,   553,
+   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,   553,   553,
+   553,   553,   553,   553,   nil,   nil,   nil,   553,   553,   nil,
+   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   553,   553,
+   553,   nil,   553,   553,   558,   558,   558,   nil,   558,   nil,
+   nil,   nil,   558,   558,   nil,   nil,   nil,   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,   558,   558,   558,   558,   558,   558,   nil,   558,
+   558,   558,   nil,   558,   558,   nil,   558,   558,   558,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   558,   nil,
+   nil,   558,   nil,   nil,   558,   558,   nil,   nil,   558,   nil,
+   nil,   nil,   nil,   nil,   558,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   558,   nil,   nil,   nil,   nil,   558,   558,   558,
+   558,   558,   558,   nil,   nil,   nil,   558,   558,   nil,   nil,
+   nil,   nil,   nil,   nil,   558,   nil,   nil,   558,   558,   558,
+   nil,   558,   558,   582,   582,   582,   nil,   582,   nil,   nil,
+   nil,   582,   582,   nil,   nil,   nil,   582,   nil,   582,   582,
+   582,   582,   582,   582,   582,   nil,   nil,   nil,   nil,   nil,
+   582,   582,   582,   582,   582,   582,   582,   nil,   nil,   582,
+   nil,   nil,   nil,   nil,   nil,   nil,   582,   nil,   nil,   582,
+   582,   582,   582,   582,   582,   582,   582,   582,   582,   582,
+   582,   nil,   582,   582,   nil,   582,   582,   582,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   582,   nil,   nil,
+   582,   nil,   nil,   582,   582,   nil,   nil,   582,   nil,   582,
+   nil,   582,   nil,   582,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   582,   nil,   nil,   nil,   nil,   582,   582,   582,   582,
+   582,   582,   nil,   nil,   nil,   582,   582,   nil,   nil,   nil,
+   nil,   nil,   nil,   582,   nil,   582,   582,   582,   582,   nil,
+   582,   582,   592,   592,   592,   nil,   592,   nil,   nil,   nil,
+   592,   592,   nil,   nil,   nil,   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,
+   592,   592,   592,   592,   592,   592,   592,   592,   592,   592,
+   nil,   592,   592,   nil,   592,   592,   592,   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,   592,   nil,   nil,   592,   nil,   592,   nil,
+   592,   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,   nil,
+   nil,   nil,   592,   nil,   592,   592,   592,   592,   nil,   592,
+   592,   602,   602,   602,   nil,   602,   nil,   nil,   nil,   602,
+   602,   nil,   nil,   nil,   602,   nil,   602,   602,   602,   602,
+   602,   602,   602,   nil,   nil,   nil,   nil,   nil,   602,   602,
+   602,   602,   602,   602,   602,   nil,   nil,   602,   nil,   nil,
+   nil,   nil,   nil,   nil,   602,   nil,   nil,   602,   602,   602,
+   602,   602,   602,   602,   602,   nil,   602,   602,   602,   nil,
+   602,   602,   nil,   602,   602,   602,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   602,   nil,   nil,   602,   nil,
+   nil,   602,   602,   nil,   nil,   602,   nil,   nil,   nil,   nil,
+   nil,   602,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   602,
+   nil,   nil,   nil,   nil,   602,   602,   602,   602,   602,   602,
+   nil,   nil,   nil,   602,   602,   nil,   nil,   nil,   nil,   nil,
+   nil,   602,   nil,   nil,   602,   602,   602,   nil,   602,   602,
+   624,   624,   624,   nil,   624,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,
+   624,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   624,   nil,
+   nil,   nil,   nil,   624,   624,   624,   624,   624,   624,   nil,
+   nil,   nil,   624,   624,   nil,   nil,   nil,   nil,   nil,   nil,
+   624,   nil,   nil,   624,   624,   624,   nil,   624,   624,   664,
+   664,   664,   nil,   664,   nil,   nil,   nil,   664,   664,   nil,
+   nil,   nil,   664,   nil,   664,   664,   664,   664,   664,   664,
+   664,   nil,   nil,   nil,   nil,   nil,   664,   664,   664,   664,
+   664,   664,   664,   nil,   nil,   664,   nil,   nil,   nil,   nil,
+   nil,   nil,   664,   nil,   nil,   664,   664,   664,   664,   664,
+   664,   664,   664,   nil,   664,   664,   664,   nil,   664,   664,
+   nil,   664,   664,   664,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   664,   nil,   nil,   664,   nil,   nil,   664,
+   664,   nil,   nil,   664,   nil,   664,   nil,   nil,   nil,   664,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   664,   nil,   nil,
+   nil,   nil,   664,   664,   664,   664,   664,   664,   nil,   nil,
+   nil,   664,   664,   nil,   nil,   nil,   nil,   nil,   nil,   664,
+   nil,   nil,   664,   664,   664,   nil,   664,   664,   665,   665,
+   665,   nil,   665,   nil,   nil,   nil,   665,   665,   nil,   nil,
+   nil,   665,   nil,   665,   665,   665,   665,   665,   665,   665,
+   nil,   nil,   nil,   nil,   nil,   665,   665,   665,   665,   665,
+   665,   665,   nil,   nil,   665,   nil,   nil,   nil,   nil,   nil,
+   nil,   665,   nil,   nil,   665,   665,   665,   665,   665,   665,
+   665,   665,   nil,   665,   665,   665,   nil,   665,   665,   nil,
+   665,   665,   665,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   665,   nil,   nil,   665,   nil,   nil,   665,   665,
+   nil,   nil,   665,   nil,   nil,   nil,   nil,   nil,   665,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,   nil,   nil,
+   nil,   665,   665,   665,   665,   665,   665,   nil,   nil,   nil,
+   665,   665,   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,
+   nil,   665,   665,   665,   nil,   665,   665,   666,   666,   666,
+   nil,   666,   nil,   nil,   nil,   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,   666,   666,   666,   666,   nil,   666,   666,   nil,   666,
+   666,   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,   666,   nil,   666,   nil,   666,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,   nil,   nil,
+   666,   666,   666,   666,   666,   666,   nil,   nil,   nil,   666,
+   666,   nil,   nil,   nil,   nil,   nil,   nil,   666,   nil,   666,
+   666,   666,   666,   nil,   666,   666,   669,   669,   669,   nil,
+   669,   nil,   nil,   nil,   669,   669,   nil,   nil,   nil,   669,
+   nil,   669,   669,   669,   669,   669,   669,   669,   nil,   nil,
+   nil,   nil,   nil,   669,   669,   669,   669,   669,   669,   669,
+   nil,   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,   669,
+   nil,   nil,   669,   669,   669,   669,   669,   669,   669,   669,
+   nil,   669,   669,   669,   nil,   669,   669,   nil,   669,   669,
+   669,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   669,   nil,   nil,   669,   nil,   nil,   669,   669,   nil,   nil,
+   669,   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   669,   nil,   nil,   nil,   nil,   669,
+   669,   669,   669,   669,   669,   nil,   nil,   nil,   669,   669,
+   nil,   nil,   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,
+   669,   669,   nil,   669,   669,   672,   672,   672,   nil,   672,
+   nil,   nil,   nil,   672,   672,   nil,   nil,   nil,   672,   nil,
+   672,   672,   672,   672,   672,   672,   672,   nil,   nil,   nil,
+   nil,   nil,   672,   672,   672,   672,   672,   672,   672,   nil,
+   nil,   672,   nil,   nil,   nil,   nil,   nil,   nil,   672,   nil,
+   nil,   672,   672,   672,   672,   672,   672,   672,   672,   672,
+   672,   672,   672,   nil,   672,   672,   nil,   672,   672,   672,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   672,
+   nil,   nil,   672,   nil,   nil,   672,   672,   nil,   nil,   672,
+   nil,   672,   nil,   672,   nil,   672,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   672,   nil,   nil,   nil,   nil,   672,   672,
+   672,   672,   672,   672,   nil,   nil,   nil,   672,   672,   nil,
+   nil,   nil,   nil,   nil,   nil,   672,   nil,   672,   672,   672,
+   672,   nil,   672,   672,   673,   673,   673,   nil,   673,   nil,
+   nil,   nil,   673,   673,   nil,   nil,   nil,   673,   nil,   673,
+   673,   673,   673,   673,   673,   673,   nil,   nil,   nil,   nil,
+   nil,   673,   673,   673,   673,   673,   673,   673,   nil,   nil,
+   673,   nil,   nil,   nil,   nil,   nil,   nil,   673,   nil,   nil,
+   673,   673,   673,   673,   673,   673,   673,   673,   673,   673,
+   673,   673,   nil,   673,   673,   nil,   673,   673,   673,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   673,   nil,
+   nil,   673,   nil,   nil,   673,   673,   nil,   nil,   673,   nil,
+   nil,   nil,   673,   nil,   673,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   673,   nil,   nil,   nil,   nil,   673,   673,   673,
+   673,   673,   673,   nil,   nil,   nil,   673,   673,   nil,   nil,
+   nil,   nil,   nil,   nil,   673,   nil,   673,   673,   673,   673,
+   nil,   673,   673,   674,   674,   674,   nil,   674,   nil,   nil,
+   nil,   674,   674,   nil,   nil,   nil,   674,   nil,   674,   674,
+   674,   674,   674,   674,   674,   nil,   nil,   nil,   nil,   nil,
+   674,   674,   674,   674,   674,   674,   674,   nil,   nil,   674,
+   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,
+   674,   674,   674,   674,   674,   674,   674,   nil,   674,   674,
+   674,   nil,   674,   674,   nil,   674,   674,   674,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,
+   674,   nil,   nil,   674,   674,   nil,   nil,   674,   nil,   nil,
+   nil,   nil,   nil,   674,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   674,   nil,   nil,   nil,   nil,   674,   674,   674,   674,
+   674,   674,   nil,   nil,   nil,   674,   674,   nil,   nil,   nil,
+   nil,   nil,   nil,   674,   nil,   nil,   674,   674,   674,   nil,
+   674,   674,   675,   675,   675,   nil,   675,   nil,   nil,   nil,
+   675,   675,   nil,   nil,   nil,   675,   nil,   675,   675,   675,
+   675,   675,   675,   675,   nil,   nil,   nil,   nil,   nil,   675,
+   675,   675,   675,   675,   675,   675,   nil,   nil,   675,   nil,
+   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   675,   675,
+   675,   675,   675,   675,   675,   675,   nil,   675,   675,   675,
+   nil,   675,   675,   nil,   675,   675,   675,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   675,
+   nil,   nil,   675,   675,   nil,   nil,   675,   nil,   nil,   nil,
+   nil,   nil,   675,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   675,   nil,   nil,   nil,   nil,   675,   675,   675,   675,   675,
+   675,   nil,   nil,   nil,   675,   675,   nil,   nil,   nil,   nil,
+   nil,   nil,   675,   nil,   nil,   675,   675,   675,   nil,   675,
+   675,   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,   nil,   680,   680,
+   680,   680,   680,   680,   680,   nil,   nil,   680,   nil,   nil,
+   nil,   nil,   nil,   nil,   680,   nil,   nil,   680,   680,   680,
+   680,   680,   680,   680,   680,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   680,   nil,   nil,   680,   680,   680,   nil,   680,   680,
+   681,   681,   681,   nil,   681,   nil,   nil,   nil,   681,   681,
+   nil,   nil,   nil,   681,   nil,   681,   681,   681,   681,   681,
+   681,   681,   nil,   nil,   nil,   nil,   nil,   681,   681,   681,
+   681,   681,   681,   681,   nil,   nil,   681,   nil,   nil,   nil,
+   nil,   nil,   nil,   681,   nil,   nil,   681,   681,   681,   681,
+   681,   681,   681,   681,   nil,   681,   681,   681,   nil,   681,
+   681,   nil,   681,   681,   681,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   681,   nil,   nil,   681,   nil,   nil,
+   681,   681,   nil,   nil,   681,   nil,   nil,   nil,   nil,   nil,
+   681,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   681,   nil,
+   nil,   nil,   nil,   681,   681,   681,   681,   681,   681,   nil,
+   nil,   nil,   681,   681,   nil,   nil,   nil,   nil,   nil,   nil,
+   681,   nil,   nil,   681,   681,   681,   nil,   681,   681,   705,
+   705,   705,   nil,   705,   nil,   nil,   nil,   705,   705,   nil,
+   nil,   nil,   705,   nil,   705,   705,   705,   705,   705,   705,
+   705,   nil,   nil,   nil,   nil,   nil,   705,   705,   705,   705,
+   705,   705,   705,   nil,   nil,   705,   nil,   nil,   nil,   nil,
+   nil,   nil,   705,   nil,   nil,   705,   705,   705,   705,   705,
+   705,   705,   705,   nil,   705,   705,   705,   nil,   705,   705,
+   nil,   705,   705,   705,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   705,   nil,   nil,   705,   nil,   nil,   705,
+   705,   nil,   nil,   705,   nil,   nil,   nil,   nil,   nil,   705,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   705,   nil,   nil,
+   nil,   nil,   705,   705,   705,   705,   705,   705,   nil,   nil,
+   nil,   705,   705,   nil,   nil,   nil,   nil,   nil,   nil,   705,
+   nil,   nil,   705,   705,   705,   nil,   705,   705,   708,   708,
+   708,   nil,   708,   nil,   nil,   nil,   708,   708,   nil,   nil,
+   nil,   708,   nil,   708,   708,   708,   708,   708,   708,   708,
+   nil,   nil,   nil,   nil,   nil,   708,   708,   708,   708,   708,
+   708,   708,   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,
+   nil,   708,   nil,   nil,   708,   708,   708,   708,   708,   708,
+   708,   708,   nil,   708,   708,   708,   nil,   708,   708,   nil,
+   708,   708,   708,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   708,   nil,   nil,   708,   nil,   nil,   708,   708,
+   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,   708,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,   nil,   nil,
+   nil,   708,   708,   708,   708,   708,   708,   nil,   nil,   nil,
+   708,   708,   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,
+   nil,   708,   708,   708,   nil,   708,   708,   712,   712,   712,
+   nil,   712,   nil,   nil,   nil,   712,   712,   nil,   nil,   nil,
+   712,   nil,   712,   712,   712,   712,   712,   712,   712,   nil,
+   nil,   nil,   nil,   nil,   712,   712,   712,   712,   712,   712,
+   712,   nil,   nil,   712,   nil,   nil,   nil,   nil,   nil,   nil,
+   712,   nil,   nil,   712,   712,   712,   712,   712,   712,   712,
+   712,   nil,   712,   712,   712,   nil,   712,   712,   nil,   nil,
+   nil,   712,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   712,   nil,   nil,   712,   nil,   nil,   712,   712,   nil,
+   nil,   712,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   712,   712,   712,   712,   712,   712,   nil,   nil,   nil,   712,
+   712,   nil,   nil,   nil,   nil,   nil,   nil,   712,   nil,   nil,
+   712,   712,   712,   nil,   712,   712,   723,   723,   723,   nil,
+   723,   nil,   nil,   nil,   723,   723,   nil,   nil,   nil,   723,
+   nil,   723,   723,   723,   723,   723,   723,   723,   nil,   nil,
+   nil,   nil,   nil,   723,   723,   723,   723,   723,   723,   723,
+   nil,   nil,   723,   nil,   nil,   nil,   nil,   nil,   nil,   723,
+   nil,   nil,   723,   723,   723,   723,   723,   723,   723,   723,
+   nil,   723,   723,   723,   nil,   723,   723,   nil,   nil,   nil,
+   723,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   723,   nil,   nil,   723,   nil,   nil,   723,   723,   nil,   nil,
+   723,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   723,
+   723,   723,   723,   723,   723,   nil,   nil,   nil,   723,   723,
+   nil,   nil,   nil,   nil,   nil,   nil,   723,   nil,   nil,   723,
+   723,   723,   nil,   723,   723,   729,   729,   729,   nil,   729,
+   nil,   nil,   nil,   729,   729,   nil,   nil,   nil,   729,   nil,
+   729,   729,   729,   729,   729,   729,   729,   nil,   nil,   nil,
+   nil,   nil,   729,   729,   729,   729,   729,   729,   729,   nil,
+   nil,   729,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,
+   nil,   729,   729,   729,   729,   729,   729,   729,   729,   nil,
+   729,   729,   729,   nil,   729,   729,   nil,   729,   729,   729,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   729,
+   nil,   nil,   729,   nil,   nil,   729,   729,   nil,   nil,   729,
+   nil,   729,   nil,   nil,   nil,   729,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   729,   nil,   nil,   nil,   nil,   729,   729,
+   729,   729,   729,   729,   nil,   nil,   nil,   729,   729,   nil,
+   nil,   nil,   nil,   nil,   nil,   729,   nil,   nil,   729,   729,
+   729,   nil,   729,   729,   734,   734,   734,   nil,   734,   nil,
+   nil,   nil,   734,   734,   nil,   nil,   nil,   734,   nil,   734,
+   734,   734,   734,   734,   734,   734,   nil,   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,
+   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,
+   734,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   734,   nil,   734,   734,   734,   734,
+   nil,   734,   734,   737,   737,   737,   nil,   737,   nil,   nil,
+   nil,   737,   737,   nil,   nil,   nil,   737,   nil,   737,   737,
+   737,   737,   737,   737,   737,   nil,   nil,   nil,   nil,   nil,
+   737,   737,   737,   737,   737,   737,   737,   nil,   nil,   737,
+   nil,   nil,   nil,   nil,   nil,   nil,   737,   nil,   nil,   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,   nil,
+   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   737,   nil,   737,   737,   737,   737,   nil,
+   737,   737,   751,   751,   751,   nil,   751,   nil,   nil,   nil,
+   751,   751,   nil,   nil,   nil,   751,   nil,   751,   751,   751,
+   751,   751,   751,   751,   nil,   nil,   nil,   nil,   nil,   751,
+   751,   751,   751,   751,   751,   751,   nil,   nil,   751,   nil,
+   nil,   nil,   nil,   nil,   nil,   751,   nil,   nil,   751,   751,
+   751,   751,   751,   751,   751,   751,   nil,   751,   751,   751,
+   nil,   751,   751,   nil,   751,   751,   751,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   751,   nil,   nil,   751,
+   nil,   nil,   751,   751,   nil,   nil,   751,   nil,   751,   nil,
+   nil,   nil,   751,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   751,   nil,   nil,   nil,   nil,   751,   751,   751,   751,   751,
+   751,   nil,   nil,   nil,   751,   751,   nil,   nil,   nil,   nil,
+   nil,   nil,   751,   nil,   nil,   751,   751,   751,   nil,   751,
+   751,   763,   763,   763,   nil,   763,   nil,   nil,   nil,   763,
+   763,   nil,   nil,   nil,   763,   nil,   763,   763,   763,   763,
+   763,   763,   763,   nil,   nil,   nil,   nil,   nil,   763,   763,
+   763,   763,   763,   763,   763,   nil,   nil,   763,   nil,   nil,
+   nil,   nil,   nil,   nil,   763,   nil,   nil,   763,   763,   763,
+   763,   763,   763,   763,   763,   nil,   763,   763,   763,   nil,
+   763,   763,   nil,   763,   763,   763,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   763,   nil,   nil,   763,   nil,
+   nil,   763,   763,   nil,   nil,   763,   nil,   nil,   nil,   nil,
+   nil,   763,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   763,
+   nil,   nil,   nil,   nil,   763,   763,   763,   763,   763,   763,
+   nil,   nil,   nil,   763,   763,   nil,   nil,   nil,   nil,   nil,
+   nil,   763,   nil,   nil,   763,   763,   763,   nil,   763,   763,
+   783,   783,   783,   nil,   783,   nil,   nil,   nil,   783,   783,
+   nil,   nil,   nil,   783,   nil,   783,   783,   783,   783,   783,
+   783,   783,   nil,   nil,   nil,   nil,   nil,   783,   783,   783,
+   783,   783,   783,   783,   nil,   nil,   783,   nil,   nil,   nil,
+   nil,   nil,   nil,   783,   nil,   nil,   783,   783,   783,   783,
+   783,   783,   783,   783,   nil,   783,   783,   783,   nil,   783,
+   783,   nil,   783,   783,   783,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   783,   nil,   nil,   783,   nil,   nil,
+   783,   783,   nil,   nil,   783,   nil,   nil,   nil,   nil,   nil,
+   783,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   783,   nil,
+   nil,   nil,   nil,   783,   783,   783,   783,   783,   783,   nil,
+   nil,   nil,   783,   783,   nil,   nil,   nil,   nil,   nil,   nil,
+   783,   nil,   nil,   783,   783,   783,   nil,   783,   783,   805,
+   805,   805,   nil,   805,   nil,   nil,   nil,   805,   805,   nil,
+   nil,   nil,   805,   nil,   805,   805,   805,   805,   805,   805,
+   805,   nil,   nil,   nil,   nil,   nil,   805,   805,   805,   805,
+   805,   805,   805,   nil,   nil,   805,   nil,   nil,   nil,   nil,
+   nil,   nil,   805,   nil,   nil,   805,   805,   805,   805,   805,
+   805,   805,   805,   nil,   805,   805,   805,   nil,   805,   805,
+   nil,   805,   805,   805,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   805,   nil,   nil,   805,   nil,   nil,   805,
+   805,   nil,   nil,   805,   nil,   nil,   nil,   nil,   nil,   805,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   805,   nil,   nil,
+   nil,   nil,   805,   805,   805,   805,   805,   805,   nil,   nil,
+   nil,   805,   805,   nil,   nil,   nil,   nil,   nil,   nil,   805,
+   nil,   nil,   805,   805,   805,   nil,   805,   805,   812,   812,
+   812,   nil,   812,   nil,   nil,   nil,   812,   812,   nil,   nil,
+   nil,   812,   nil,   812,   812,   812,   812,   812,   812,   812,
+   nil,   nil,   nil,   nil,   nil,   812,   812,   812,   812,   812,
+   812,   812,   nil,   nil,   812,   nil,   nil,   nil,   nil,   nil,
+   nil,   812,   nil,   nil,   812,   812,   812,   812,   812,   812,
+   812,   812,   nil,   812,   812,   812,   nil,   812,   812,   nil,
+   812,   812,   812,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   812,   nil,   nil,   812,   nil,   nil,   812,   812,
+   nil,   nil,   812,   nil,   nil,   nil,   nil,   nil,   812,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   812,   nil,   nil,   nil,
+   nil,   812,   812,   812,   812,   812,   812,   nil,   nil,   nil,
+   812,   812,   nil,   nil,   nil,   nil,   nil,   nil,   812,   nil,
+   nil,   812,   812,   812,   nil,   812,   812,   825,   825,   825,
+   nil,   825,   nil,   nil,   nil,   825,   825,   nil,   nil,   nil,
+   825,   nil,   825,   825,   825,   825,   825,   825,   825,   nil,
+   nil,   nil,   nil,   nil,   825,   825,   825,   825,   825,   825,
+   825,   nil,   nil,   825,   nil,   nil,   nil,   nil,   nil,   nil,
+   825,   nil,   nil,   825,   825,   825,   825,   825,   825,   825,
+   825,   nil,   825,   825,   825,   nil,   825,   825,   nil,   825,
+   825,   825,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   825,   nil,   nil,   825,   nil,   nil,   825,   825,   nil,
+   nil,   825,   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,   nil,   nil,
+   825,   825,   825,   825,   825,   825,   nil,   nil,   nil,   825,
+   825,   nil,   nil,   nil,   nil,   nil,   nil,   825,   nil,   nil,
+   825,   825,   825,   nil,   825,   825,   826,   826,   826,   nil,
+   826,   nil,   nil,   nil,   826,   826,   nil,   nil,   nil,   826,
+   nil,   826,   826,   826,   826,   826,   826,   826,   nil,   nil,
+   nil,   nil,   nil,   826,   826,   826,   826,   826,   826,   826,
+   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,   nil,   826,
+   nil,   nil,   826,   826,   826,   826,   826,   826,   826,   826,
+   nil,   826,   826,   826,   nil,   826,   826,   nil,   826,   826,
+   826,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   826,   nil,   nil,   826,   nil,   nil,   826,   826,   nil,   nil,
+   826,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   826,   nil,   nil,   nil,   nil,   826,
+   826,   826,   826,   826,   826,   nil,   nil,   nil,   826,   826,
+   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,   826,
+   826,   826,   nil,   826,   826,   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,   nil,   827,   827,   827,   827,   827,   827,   827,   nil,
+   nil,   827,   nil,   nil,   nil,   nil,   nil,   nil,   827,   nil,
+   nil,   827,   827,   827,   827,   827,   827,   827,   827,   nil,
+   827,   827,   827,   nil,   827,   827,   nil,   827,   827,   827,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   827,
+   nil,   nil,   827,   nil,   nil,   827,   827,   nil,   nil,   827,
+   nil,   nil,   nil,   nil,   nil,   827,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   827,   nil,   nil,   nil,   nil,   827,   827,
+   827,   827,   827,   827,   nil,   nil,   nil,   827,   827,   nil,
+   nil,   nil,   nil,   nil,   nil,   827,   nil,   nil,   827,   827,
+   827,   nil,   827,   827,   828,   828,   828,   nil,   828,   nil,
+   nil,   nil,   828,   828,   nil,   nil,   nil,   828,   nil,   828,
+   828,   828,   828,   828,   828,   828,   nil,   nil,   nil,   nil,
+   nil,   828,   828,   828,   828,   828,   828,   828,   nil,   nil,
+   828,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,
+   828,   828,   828,   828,   828,   828,   828,   828,   nil,   828,
+   828,   828,   nil,   828,   828,   nil,   828,   828,   828,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,
+   nil,   828,   nil,   nil,   828,   828,   nil,   nil,   828,   nil,
+   nil,   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   828,   nil,   nil,   nil,   nil,   828,   828,   828,
+   828,   828,   828,   nil,   nil,   nil,   828,   828,   nil,   nil,
+   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,   828,   828,
+   nil,   828,   828,   830,   830,   830,   nil,   830,   nil,   nil,
+   nil,   830,   830,   nil,   nil,   nil,   830,   nil,   830,   830,
+   830,   830,   830,   830,   830,   nil,   nil,   nil,   nil,   nil,
+   830,   830,   830,   830,   830,   830,   830,   nil,   nil,   830,
+   nil,   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,   830,
+   830,   830,   830,   830,   830,   830,   830,   nil,   830,   830,
+   830,   nil,   830,   830,   nil,   830,   830,   830,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,
+   830,   nil,   nil,   830,   830,   nil,   nil,   830,   nil,   nil,
+   nil,   nil,   nil,   830,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   830,   nil,   nil,   nil,   nil,   830,   830,   830,   830,
+   830,   830,   nil,   nil,   nil,   830,   830,   nil,   nil,   nil,
+   nil,   nil,   nil,   830,   nil,   nil,   830,   830,   830,   nil,
+   830,   830,   863,   863,   863,   nil,   863,   nil,   nil,   nil,
+   863,   863,   nil,   nil,   nil,   863,   nil,   863,   863,   863,
+   863,   863,   863,   863,   nil,   nil,   nil,   nil,   nil,   863,
+   863,   863,   863,   863,   863,   863,   nil,   nil,   863,   nil,
+   nil,   nil,   nil,   nil,   nil,   863,   nil,   nil,   863,   863,
+   863,   863,   863,   863,   863,   863,   nil,   863,   863,   863,
+   nil,   863,   863,   nil,   863,   863,   863,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   863,   nil,   nil,   863,
+   nil,   nil,   863,   863,   nil,   nil,   863,   nil,   nil,   nil,
+   nil,   nil,   863,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   863,   nil,   nil,   nil,   nil,   863,   863,   863,   863,   863,
+   863,   nil,   nil,   nil,   863,   863,   nil,   nil,   nil,   nil,
+   nil,   nil,   863,   nil,   nil,   863,   863,   863,   nil,   863,
+   863,   870,   870,   870,   nil,   870,   nil,   nil,   nil,   870,
+   870,   nil,   nil,   nil,   870,   nil,   870,   870,   870,   870,
+   870,   870,   870,   nil,   nil,   nil,   nil,   nil,   870,   870,
+   870,   870,   870,   870,   870,   nil,   nil,   870,   nil,   nil,
+   nil,   nil,   nil,   nil,   870,   nil,   nil,   870,   870,   870,
+   870,   870,   870,   870,   870,   nil,   870,   870,   870,   nil,
+   870,   870,   nil,   870,   870,   870,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   870,   nil,   nil,   870,   nil,
+   nil,   870,   870,   nil,   nil,   870,   nil,   nil,   nil,   nil,
+   nil,   870,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   870,
+   nil,   nil,   nil,   nil,   870,   870,   870,   870,   870,   870,
+   nil,   nil,   nil,   870,   870,   nil,   nil,   nil,   nil,   nil,
+   nil,   870,   nil,   nil,   870,   870,   870,   nil,   870,   870,
+   918,   918,   918,   nil,   918,   nil,   nil,   nil,   918,   918,
+   nil,   nil,   nil,   918,   nil,   918,   918,   918,   918,   918,
+   918,   918,   nil,   nil,   nil,   nil,   nil,   918,   918,   918,
+   918,   918,   918,   918,   nil,   nil,   918,   nil,   nil,   nil,
+   nil,   nil,   nil,   918,   nil,   nil,   918,   918,   918,   918,
+   918,   918,   918,   918,   918,   918,   918,   918,   nil,   918,
+   918,   nil,   918,   918,   918,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   918,   nil,   nil,   918,   nil,   nil,
+   918,   918,   nil,   nil,   918,   nil,   nil,   nil,   918,   nil,
+   918,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   918,   nil,
+   nil,   nil,   nil,   918,   918,   918,   918,   918,   918,   nil,
+   nil,   nil,   918,   918,   nil,   nil,   nil,   nil,   nil,   nil,
+   918,   nil,   918,   918,   918,   918,   nil,   918,   918,   919,
+   919,   919,   nil,   919,   nil,   nil,   nil,   919,   919,   nil,
+   nil,   nil,   919,   nil,   919,   919,   919,   919,   919,   919,
+   919,   nil,   nil,   nil,   nil,   nil,   919,   919,   919,   919,
+   919,   919,   919,   nil,   nil,   919,   nil,   nil,   nil,   nil,
+   nil,   nil,   919,   nil,   nil,   919,   919,   919,   919,   919,
+   919,   919,   919,   nil,   919,   919,   919,   nil,   919,   919,
+   nil,   919,   919,   919,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   919,   nil,   nil,   919,   nil,   nil,   919,
+   919,   nil,   nil,   919,   nil,   nil,   nil,   nil,   nil,   919,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   919,   nil,   nil,
+   nil,   nil,   919,   919,   919,   919,   919,   919,   nil,   nil,
+   nil,   919,   919,   nil,   nil,   nil,   nil,   nil,   nil,   919,
+   nil,   nil,   919,   919,   919,   nil,   919,   919,   931,   931,
+   931,   nil,   931,   nil,   nil,   nil,   931,   931,   nil,   nil,
+   nil,   931,   nil,   931,   931,   931,   931,   931,   931,   931,
+   nil,   nil,   nil,   nil,   nil,   931,   931,   931,   931,   931,
+   931,   931,   nil,   nil,   931,   nil,   nil,   nil,   nil,   nil,
+   nil,   931,   nil,   nil,   931,   931,   931,   931,   931,   931,
+   931,   931,   nil,   931,   931,   931,   nil,   931,   931,   nil,
+   nil,   nil,   931,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   931,   nil,   nil,   931,   nil,   nil,   931,   931,
+   nil,   nil,   931,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   931,   931,   931,   931,   931,   931,   nil,   nil,   nil,
+   931,   931,   nil,   nil,   nil,   nil,   nil,   nil,   931,   nil,
+   nil,   931,   931,   931,   nil,   931,   931,   940,   940,   940,
+   nil,   940,   nil,   nil,   nil,   940,   940,   nil,   nil,   nil,
+   940,   nil,   940,   940,   940,   940,   940,   940,   940,   nil,
+   nil,   nil,   nil,   nil,   940,   940,   940,   940,   940,   940,
+   940,   nil,   nil,   940,   nil,   nil,   nil,   nil,   nil,   nil,
+   940,   nil,   nil,   940,   940,   940,   940,   940,   940,   940,
+   940,   nil,   940,   940,   940,   nil,   940,   940,   nil,   nil,
+   nil,   940,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   940,   nil,   nil,   940,   nil,   nil,   940,   940,   nil,
+   nil,   940,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   940,   940,   940,   940,   940,   940,   nil,   nil,   nil,   940,
+   940,   nil,   nil,   nil,   nil,   nil,   nil,   940,   nil,   nil,
+   940,   940,   940,   nil,   940,   940,   948,   948,   948,   nil,
+   948,   nil,   nil,   nil,   948,   948,   nil,   nil,   nil,   948,
+   nil,   948,   948,   948,   948,   948,   948,   948,   nil,   nil,
+   nil,   nil,   nil,   948,   948,   948,   948,   948,   948,   948,
+   nil,   nil,   948,   nil,   nil,   nil,   nil,   nil,   nil,   948,
+   nil,   nil,   948,   948,   948,   948,   948,   948,   948,   948,
+   nil,   948,   948,   948,   nil,   948,   948,   nil,   948,   948,
+   948,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   948,   nil,   nil,   948,   nil,   nil,   948,   948,   nil,   nil,
+   948,   nil,   948,   nil,   nil,   nil,   948,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   948,   nil,   nil,   nil,   nil,   948,
+   948,   948,   948,   948,   948,   nil,   nil,   nil,   948,   948,
+   nil,   nil,   nil,   nil,   nil,   nil,   948,   nil,   nil,   948,
+   948,   948,   nil,   948,   948,   989,   989,   989,   nil,   989,
+   nil,   nil,   nil,   989,   989,   nil,   nil,   nil,   989,   nil,
+   989,   989,   989,   989,   989,   989,   989,   nil,   nil,   nil,
+   nil,   nil,   989,   989,   989,   989,   989,   989,   989,   nil,
+   nil,   989,   nil,   nil,   nil,   nil,   nil,   nil,   989,   nil,
+   nil,   989,   989,   989,   989,   989,   989,   989,   989,   nil,
+   989,   989,   989,   nil,   989,   989,   nil,   nil,   nil,   989,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   989,
+   nil,   nil,   989,   nil,   nil,   989,   989,   nil,   nil,   989,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   989,   989,
+   989,   989,   989,   989,   nil,   nil,   nil,   989,   989,   nil,
+   nil,   nil,   nil,   nil,   nil,   989,   nil,   nil,   989,   989,
+   989,   nil,   989,   989,  1003,  1003,  1003,   nil,  1003,   nil,
+   nil,   nil,  1003,  1003,   nil,   nil,   nil,  1003,   nil,  1003,
+  1003,  1003,  1003,  1003,  1003,  1003,   nil,   nil,   nil,   nil,
+   nil,  1003,  1003,  1003,  1003,  1003,  1003,  1003,   nil,   nil,
+  1003,   nil,   nil,   nil,   nil,   nil,   nil,  1003,   nil,   nil,
+  1003,  1003,  1003,  1003,  1003,  1003,  1003,  1003,   nil,  1003,
+  1003,  1003,   nil,  1003,  1003,   nil,  1003,  1003,  1003,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1003,   nil,
+   nil,  1003,   nil,   nil,  1003,  1003,   nil,   nil,  1003,   nil,
+   nil,   nil,   nil,   nil,  1003,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1003,   nil,   nil,   nil,   nil,  1003,  1003,  1003,
+  1003,  1003,  1003,   nil,   nil,   nil,  1003,  1003,   nil,   nil,
+   nil,   nil,   nil,   nil,  1003,   nil,   nil,  1003,  1003,  1003,
+   nil,  1003,  1003,  1034,  1034,  1034,   nil,  1034,   nil,   nil,
+   nil,  1034,  1034,   nil,   nil,   nil,  1034,   nil,  1034,  1034,
+  1034,  1034,  1034,  1034,  1034,   nil,   nil,   nil,   nil,   nil,
+  1034,  1034,  1034,  1034,  1034,  1034,  1034,   nil,   nil,  1034,
+   nil,   nil,   nil,   nil,   nil,   nil,  1034,   nil,   nil,  1034,
+  1034,  1034,  1034,  1034,  1034,  1034,  1034,  1034,  1034,  1034,
+  1034,   nil,  1034,  1034,   nil,  1034,  1034,  1034,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1034,   nil,   nil,
+  1034,   nil,   nil,  1034,  1034,   nil,   nil,  1034,   nil,  1034,
+   nil,  1034,   nil,  1034,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1034,   nil,   nil,   nil,   nil,  1034,  1034,  1034,  1034,
+  1034,  1034,   nil,   nil,   nil,  1034,  1034,   nil,   nil,   nil,
+   nil,   nil,   nil,  1034,   nil,  1034,  1034,  1034,  1034,   nil,
+  1034,  1034,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
+   nil,   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,   nil,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,
+    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,
+   nil,    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
+   nil,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    11,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
+   nil,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,   nil,   nil,   nil,   nil,   nil,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,   nil,   nil,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,
+    12,    12,    12,    12,    12,    12,    12,   nil,   nil,    12,
+    12,   nil,   nil,   nil,    12,    12,    12,    12,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,   nil,   nil,   nil,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,   nil,   nil,   nil,   nil,   nil,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,
+    75,    75,   nil,    75,    75,    75,    75,    75,    75,    75,
+   nil,   nil,    75,    75,   nil,   nil,   nil,    75,    75,    75,
+    75,   nil,   nil,   nil,   nil,   nil,    75,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    75,    75,   nil,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,   nil,   nil,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    75,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   nil,   nil,   nil,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   nil,   nil,
+   nil,   nil,   nil,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   nil,   105,   nil,   nil,   nil,
+   nil,   nil,   nil,   105,   105,   nil,   105,   105,   105,   105,
+   105,   105,   105,   nil,   nil,   105,   105,   nil,   nil,   nil,
+   105,   105,   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   nil,   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   105,   427,   427,   427,   427,   427,   427,
+   427,   427,   427,   427,   427,   427,   427,   427,   427,   427,
+   427,   427,   427,   427,   427,   427,   427,   427,   nil,   nil,
+   nil,   427,   427,   427,   427,   427,   427,   427,   427,   427,
+   427,   nil,   nil,   nil,   nil,   nil,   427,   427,   427,   427,
+   427,   427,   427,   427,   427,   nil,   nil,   427,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   427,   427,   nil,   427,
+   427,   427,   427,   427,   427,   427,   nil,   nil,   427,   427,
+   nil,   nil,   nil,   427,   427,   427,   427,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   427,   427,   nil,   427,   427,   427,   427,   427,   427,   427,
+   427,   427,   427,   427,   nil,   nil,   427,   427,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   427,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   427,   661,   661,   661,
+   661,   661,   661,   661,   661,   661,   661,   661,   661,   661,
+   661,   661,   661,   661,   661,   661,   661,   661,   661,   661,
+   661,   nil,   nil,   nil,   661,   661,   661,   661,   661,   661,
+   661,   661,   661,   661,   nil,   nil,   nil,   nil,   nil,   661,
+   661,   661,   661,   661,   661,   661,   661,   661,   nil,   nil,
+   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   661,
+   661,   nil,   661,   661,   661,   661,   661,   661,   661,   nil,
+   nil,   661,   661,   nil,   nil,   nil,   661,   661,   661,   661,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   661,   661,   nil,   661,   661,   661,   661,
+   661,   661,   661,   661,   661,   661,   661,   nil,   nil,   661,
+   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   661,
+   769,   769,   769,   769,   769,   769,   769,   769,   769,   769,
+   769,   769,   769,   769,   769,   769,   769,   769,   769,   769,
+   769,   769,   769,   769,   nil,   nil,   nil,   769,   769,   769,
+   769,   769,   769,   769,   769,   769,   769,   nil,   nil,   nil,
+   nil,   nil,   769,   769,   769,   769,   769,   769,   769,   769,
+   769,   nil,   nil,   769,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   769,   769,   nil,   769,   769,   769,   769,   769,
+   769,   769,   nil,   nil,   769,   769,   nil,   nil,   nil,   769,
+   769,   769,   769,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   769,   769,   nil,   769,
+   769,   769,   769,   769,   769,   769,   769,   769,   769,   769,
+   nil,   nil,   769,   nil,   nil,   nil,   nil,   228,   228,   nil,
+   nil,   228,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   228,   228,   769,   228,   228,   228,   228,   228,   228,   228,
+   nil,   nil,   228,   228,   nil,   nil,   nil,   228,   228,   228,
+   228,   nil,   nil,   nil,   nil,   nil,   228,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   228,   228,   nil,   228,   228,   228,
+   228,   228,   228,   228,   228,   228,   228,   228,   nil,   nil,
+   228,   nil,   nil,   nil,   nil,   229,   229,   nil,   nil,   229,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,
+   228,   229,   229,   229,   229,   229,   229,   229,   nil,   nil,
+   229,   229,   nil,   nil,   nil,   229,   229,   229,   229,   nil,
+   nil,   nil,   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   229,   229,   nil,   229,   229,   229,   229,   229,
+   229,   229,   229,   229,   229,   229,   nil,   nil,   229,   nil,
+   nil,   nil,   nil,   478,   478,   nil,   nil,   478,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   478,   478,   229,   478,
+   478,   478,   478,   478,   478,   478,   nil,   nil,   478,   478,
+   nil,   nil,   nil,   478,   478,   478,   478,   nil,   nil,   nil,
+   nil,   nil,   478,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   478,   478,   nil,   478,   478,   478,   478,   478,   478,   478,
+   478,   478,   478,   478,   nil,   nil,   478,   nil,   nil,   nil,
+   nil,   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   479,   479,   478,   479,   479,   479,
+   479,   479,   479,   479,   nil,   nil,   479,   479,   nil,   nil,
+   nil,   479,   479,   479,   479,   nil,   nil,   nil,   nil,   nil,
+   479,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   479,   479,
+   nil,   479,   479,   479,   479,   479,   479,   479,   479,   479,
+   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,   544,
+   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   544,   544,   479,   544,   544,   544,   544,   544,
+   544,   544,   nil,   nil,   544,   544,   nil,   nil,   nil,   544,
+   544,   544,   544,   nil,   nil,   nil,   nil,   nil,   544,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   544,   544,   nil,   544,
+   544,   544,   544,   544,   544,   544,   544,   544,   544,   544,
+   nil,   nil,   544,   nil,   nil,   nil,   nil,   545,   545,   nil,
+   nil,   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   545,   545,   544,   545,   545,   545,   545,   545,   545,   545,
+   nil,   nil,   545,   545,   nil,   nil,   nil,   545,   545,   545,
+   545,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   545,   545,   nil,   545,   545,   545,
+   545,   545,   545,   545,   545,   545,   545,   545,   nil,   nil,
+   545,   nil,   nil,   nil,   nil,   554,   554,   nil,   nil,   554,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   554,   554,
+   545,   554,   554,   554,   554,   554,   554,   554,   nil,   nil,
+   554,   554,   nil,   nil,   nil,   554,   554,   554,   554,   nil,
+   nil,   nil,   nil,   nil,   554,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   554,   554,   nil,   554,   554,   554,   554,   554,
+   554,   554,   554,   554,   554,   554,   nil,   nil,   554,   nil,
+   nil,   nil,   nil,   555,   555,   nil,   nil,   555,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   555,   555,   554,   555,
+   555,   555,   555,   555,   555,   555,   nil,   nil,   555,   555,
+   nil,   nil,   nil,   555,   555,   555,   555,   nil,   nil,   nil,
+   nil,   nil,   555,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   555,   555,   nil,   555,   555,   555,   555,   555,   555,   555,
+   555,   555,   555,   555,   nil,   nil,   555,   nil,   nil,   nil,
+   nil,   583,   583,   nil,   nil,   583,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   583,   583,   555,   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,   nil,   nil,   583,   nil,   nil,   nil,   nil,   584,
+   584,   nil,   nil,   584,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   584,   584,   583,   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,
+   nil,   nil,   584,   nil,   nil,   nil,   nil,   590,   590,   nil,
+   nil,   590,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   590,   590,   584,   590,   590,   590,   590,   590,   590,   590,
+   nil,   nil,   590,   590,   nil,   nil,   nil,   590,   590,   590,
+   590,   nil,   nil,   nil,   nil,   nil,   590,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   590,   590,   nil,   590,   590,   590,
+   590,   590,   590,   590,   590,   590,   590,   590,   nil,   nil,
+   590,   nil,   nil,   nil,   nil,   591,   591,   nil,   nil,   591,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   591,   591,
+   590,   591,   591,   591,   591,   591,   591,   591,   nil,   nil,
+   591,   591,   nil,   nil,   nil,   591,   591,   591,   591,   nil,
+   nil,   nil,   nil,   nil,   591,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   591,   591,   nil,   591,   591,   591,   591,   591,
+   591,   591,   591,   591,   591,   591,   nil,   nil,   591,   nil,
+   nil,   nil,   nil,   667,   667,   nil,   nil,   667,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   667,   667,   591,   667,
+   667,   667,   667,   667,   667,   667,   nil,   nil,   667,   667,
+   nil,   nil,   nil,   667,   667,   667,   667,   nil,   nil,   nil,
+   nil,   nil,   667,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   667,   667,   nil,   667,   667,   667,   667,   667,   667,   667,
+   667,   667,   667,   667,   nil,   nil,   667,   nil,   nil,   nil,
+   nil,   668,   668,   nil,   nil,   668,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   668,   668,   667,   668,   668,   668,
+   668,   668,   668,   668,   nil,   nil,   668,   668,   nil,   nil,
+   nil,   668,   668,   668,   668,   nil,   nil,   nil,   nil,   nil,
+   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   668,   668,
+   nil,   668,   668,   668,   668,   668,   668,   668,   668,   668,
+   668,   668,   nil,   963,   668,   963,   963,   963,   963,   963,
+   980,   nil,   980,   980,   980,   980,   980,   nil,   nil,   963,
+   nil,   nil,   nil,   nil,   668,   nil,   980,   983,   nil,   983,
+   983,   983,   983,   983,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   963,   nil,   983,   nil,   nil,   nil,   nil,   980,   nil,
+   963,   963,   963,   963,   nil,   nil,   nil,   980,   980,   980,
+   980,   nil,   nil,   nil,   nil,   983,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   983,   983,   983,   983,   nil,   nil,
+   nil,  1030,  1030,   nil,   nil,  1030,   963,   nil,   nil,   nil,
+   nil,   nil,   nil,   980,  1030,  1030,   nil,  1030,  1030,  1030,
+  1030,  1030,  1030,  1030,   nil,   nil,  1030,  1030,   nil,   nil,
+   983,  1030,  1030,  1030,  1030,   nil,   nil,   nil,   nil,   nil,
+  1030,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1030,  1030,
+   nil,  1030,  1030,  1030,  1030,  1030,  1030,  1030,  1030,  1030,
+  1030,  1030,   nil,   nil,  1030,   nil,   nil,   nil,   nil,  1035,
+  1035,   nil,   nil,  1035,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1035,  1035,  1030,  1035,  1035,  1035,  1035,  1035,
+  1035,  1035,   nil,   nil,  1035,  1035,   nil,   nil,   nil,  1035,
+  1035,  1035,  1035,   nil,   nil,   nil,   nil,   nil,  1035,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1035,  1035,   nil,  1035,
+  1035,  1035,  1035,  1035,  1035,  1035,  1035,  1035,  1035,  1035,
+   nil,   nil,  1035,   nil,   nil,   nil,   nil,  1036,  1036,   nil,
+   nil,  1036,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1036,  1036,  1035,  1036,  1036,  1036,  1036,  1036,  1036,  1036,
+   nil,   nil,  1036,  1036,   nil,   nil,   nil,  1036,  1036,  1036,
+  1036,   nil,   nil,   nil,   nil,   nil,  1036,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1036,  1036,   nil,  1036,  1036,  1036,
+  1036,  1036,  1036,  1036,  1036,  1036,  1036,  1036,   nil,  1054,
+  1036,  1054,  1054,  1054,  1054,  1054,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1054,   nil,   nil,   nil,   nil,
+  1036,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1054,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1054,  1054,  1054,  1054,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1054 ]
+
+racc_action_pointer = [
+   nil,    10,  1043,    55,   nil,   -93,   nil,   nil,  5102,   602,
+   nil, 23660, 23793,   -47,   nil,   -47,    91,    -2,   166,   204,
+   -43,   nil,   -73,  5241,  1323,   270,   nil,   107,   nil,   157,
+  5375,  5503,  5633,  5772,  5911,   nil,  1183,  6050,  6189,   nil,
+   179,   159,   309,   270,   116,  6328,  6467,   442,  6606,   240,
+   431,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  6740,   nil,  6877,   nil,   nil,   -19,   nil,  7016,  7155,   nil,
+   nil,  7294,  7433,  7572,  7711, 23926,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   -94,   nil,   nil,   nil,   nil,   nil,   nil,   258,
+   280,   284,   307,   nil,   nil, 24059,   nil,   nil,   nil,   nil,
+   nil,   nil,     0,   nil,   nil,   132,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  7850,   nil,
+   nil,   nil,   nil,  7989,  8128,  8267,  8406,  8545,   346,   nil,
+     1,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   344,
+   nil,  1323,  8684,  8823,  8962,  9101,  9240,  9379, 24526, 24594,
+   nil,  9518,  9657,  9796,   nil,   nil,   528,   101,   243,   434,
+   272,   365,   435,   nil,  9935,  1463,   441, 10074, 10213, 10352,
+ 10491, 10630, 10769, 10908, 11047, 11186, 11325, 11464, 11603, 11742,
+ 11881, 12020, 12159, 12298, 12437, 12576, 12715, 12854, 12993,   nil,
+   nil,   nil,   nil, 13132,   nil,   nil,   nil, 16445,   nil,   nil,
+   442, 13271, 13410,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil, 13549,   nil,  1463,   nil,   412,   414,   nil, 13688,   481,
+ 13827,   nil,   nil, 13966, 14105,   nil,   nil,   165,   nil,   nil,
+ 14244,   734,   nil,   441,  1603,   475,   519,   483, 14383,  1743,
+   577,   592,   660,   561,   744,   nil,   530,   504,   162,   nil,
+   nil,   nil,   545,   128,   527, 14522,   nil,   349,   600,   754,
+   nil,   602, 14661,   nil, 14800,  1883,  1028,   559, 14939, 15078,
+   nil,   158,   -11,   -10, 15217,  2023,  2163,   197,   671,   559,
+     5,     7,   756,   642,    22,   677,   nil,   nil,   172,   205,
+   305,   nil,   787,   nil,   597, 15356,   nil,   nil,   nil,   113,
+   143,   147,   241,   409,   432,   473,   487,   500,   nil,   501,
+   nil,   nil,   583,   nil,   191,   nil,   290,   nil,   359,   nil,
+   593,   304,   nil,   595,   318,   nil,   610,   -57,   nil,   619,
+   -41,   nil,   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil, 24192,   nil,   nil,
+   nil,   nil,   631,   nil,   nil,   619, 15495,   623,   nil,   nil,
+   619,   nil,   788,   287,   nil,   nil,   nil,  1043,   nil,   nil,
+   nil,   nil,   nil,  1183,   638,   nil,   nil,   638,   657,   359,
+   395,  6877,   nil,   nil,   nil,   264,   392,   697,   nil,   nil,
+ 15629, 15761,   nil,   nil,   nil,   -16,   nil,   697, 24662, 24730,
+ 15894,   310, 16033, 16172, 16311,  2163,  2303,   -42,   212,   722,
+   727,   729,   740,  3703,  3843,  3447,   862,  2443,  2583,  2723,
+  2863,  3003,   477,   609,  3143,  3283,  1603,  3423,   802,   nil,
+ 16445,   nil,   nil,   nil,   nil,   691,   nil,   nil,   nil,   692,
+   nil,   nil, 16571,   nil,   nil, 16710,   nil, 16849,   nil,   262,
+   nil,   nil,   nil, 16988,  1168,   707,   702,   701,   nil,   nil,
+   702, 17127,   707, 17266, 24798, 24866,   792,   745,   nil, 17405,
+   707,   nil, 17544, 17683, 24934, 25002,  3563,  1743, 17822,   833,
+   833,   717,   nil,   nil,    67,   198,   719,   734,   nil,   319,
+   786,  2303,   864,   nil,  2443,    55,   870,   871,   868,   885,
+   nil,   nil, 17961, 25070, 25138,    25,   nil,   nil,   820,   nil,
+ 25206, 25274, 18100,   nil,   nil,   nil,   387,  2583,   806,   nil,
+   nil,   nil, 18239,   nil,   715,   nil,   770,   774,   nil,   775,
+   777,   794,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   781,   520,   nil,   nil, 18378,   nil,   nil,   nil,   885,   nil,
+   nil,   nil,   890,   nil,   nil,   891,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   164,   nil,   nil,
+   188,   nil,   nil,   nil,   814,   nil,   nil,   827,   nil,  2723,
+   nil, 24325,   nil,   829, 18517, 18656, 18795, 25342, 25410, 18934,
+   397,   865, 19073, 19212, 19351, 19490,   865,   nil,   nil,   nil,
+ 19629, 19768,   867,   nil,   nil,   nil,   331,   363,   520,   652,
+   851,   870,   nil,   105,   975,   -10,   nil,   nil,   891,   nil,
+   998,   nil,   879,   nil,   924, 19907,   nil,   nil, 20046,   nil,
+   nil,  -111, 20185,   885,   nil,   896,    21,    23,   937,   267,
+   915,   938,   900, 20324,   nil,   965,    27,    84,   nil, 20463,
+   nil,   nil,   nil,   nil, 20602,   nil,   nil, 20741,   nil,   nil,
+   nil,   540,   nil,  1023,   nil,   nil,   nil,   nil,   nil,  1031,
+   nil, 20880,   925,    26,    28,    93,   152,  2863,   304,  1043,
+   nil,   926,  3003, 21019,   278,  1047,  3143,  5339,  5467, 24458,
+    53,    28,   931,   220,   nil,   nil,   574,  6704,   nil, 15593,
+   nil,  5285,   nil, 21158,   nil,   652,   nil,   930,   950,   921,
+   954,   nil,   nil,   nil,   nil,   977,  3283,   nil,   nil,   nil,
+   nil,   nil,   969,   nil,   954, 21297,   958,   364,   368,   784,
+   912,  1883, 21436,   nil,   956,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil, 21575, 21714, 21853, 21992,   369,
+ 22131,   nil,   nil, 15692,   nil,  3423,   nil,   nil,   986,   nil,
+   109,   nil,   nil,   nil,   nil,   974,   268,   nil,   nil,   nil,
+   nil,   nil,   nil,  3563,   nil,   977,  1036,   nil,   nil,   426,
+  1116,   nil,   nil, 22270,   nil,  3703,  1121,   nil,   nil,   nil,
+ 22409,    -7,    34,  1122,   nil,  1125,   359,   nil,   nil,  1129,
+  1014,   411,   nil,   nil,   nil,  3843,  3983,  1012,  1029,  1027,
+   nil,   nil,   nil,  1036,  1037,   nil,  1042,  1045,   nil,  1047,
+   nil,   nil,  1051,   748,   513,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1043,   nil,  1061,   370,   nil,   nil, 22548, 22687,
+  2023,  1062,  1063,   nil,  1066,  1067,  1068,   nil,  1090,  1093,
+  1077, 22826,   nil,   nil,   nil,   nil,  4123,  4263,   nil,    -8,
+ 22965,   nil,   nil,   nil,    -1,   nil,   nil,   nil, 23104,  4403,
+   nil,   nil,   nil,  4543,   nil,   nil,   nil,  1132,  1110,  1215,
+  1309,   nil,   nil, 25472,   nil,  6071,   nil,  6210,   nil,  6650,
+   nil,   nil,   nil,   nil,  1096,  1110,   nil,   320,   nil,   nil,
+ 25479,   nil,   nil, 25496,   nil,  7454,   nil,   nil,  1134, 23243,
+   822,  1191,   nil,  1253,  4683,   823,   824,   862,  1209,   865,
+   nil,  4823,   nil, 23382,   433,  1256,  4963,   nil,   nil,   528,
+   nil,   nil,   nil,  1139,  1141,  1142,  1144,   645,   755,  1145,
+   nil,   nil,  1148,  1149,  1151,  1154,   nil,  1166,   nil,   916,
+ 25550,   nil,   nil,  1289, 23521, 25618, 25686,   948,   697,   nil,
+   nil,   nil,   nil,   nil,  1288,   nil,  1449,  7593,   nil,   nil,
+   nil,   nil,  1175,   nil, 25748,   nil,  7732,   nil, 14404,   nil,
+ 14543,   nil,   nil,  1215,  1216,   nil,  1183,    11,    36,   123,
+  1079,   nil,   nil,   nil,  1182,  1183,  1184,  1185,  1187,    39,
+   nil, 15539,   nil,   nil,   nil,   nil,  1188,   nil ]
+
+racc_action_default = [
+    -1,  -644,  -643,  -644,    -2,  -630,    -4,    -5,  -644,    -8,
+    -9,  -644,  -644,  -644,   -36,  -644,  -644,   -40,  -644,  -644,
+  -291,   -51,  -632,  -644,   -56,   -61,   -62,   -63,   -67,  -268,
+  -268,  -268,  -306,  -336,  -337,   -79,  -643,   -83,   -91,   -93,
+  -644,  -532,  -533,  -644,  -644,  -644,  -644,  -227,  -644,  -632,
+  -241,  -282,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,
+  -617,  -293,  -295,  -302,  -304,  -314,  -316,  -644,  -644,   -58,
+   -58,  -630,  -644,  -644,  -644,  -644,  -338,  -339,  -341,  -342,
+  -343,  -344,  -345,  -346,  -347,  -348,  -349,  -350,  -359,  -414,
+  -462,  -463,  -464,  -465,  -466,  -643,  -469,  -643,  -643,  -643,
+  -643,  -643,  -643,  -505,  -506,  -643,  -508,  -514,  -516,  -517,
+  -518,  -519,  -615,  -521,  -522,  -616,  -524,  -525,  -526,  -527,
+  -528,  -529,  -530,  -531,  -536,  -537,  1088,    -3,  -631,  -639,
+  -640,  -641,    -7,  -644,  -644,  -644,  -644,  -644,  -644,   -24,
+  -644,  -122,  -123,  -124,  -125,  -126,  -127,  -128,  -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,
+  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,   -29,
+  -129,  -643,  -644,  -644,  -644,  -644,  -644,  -643,  -644,  -644,
+  -627,  -644,  -644,  -632,  -633,   -55,  -644,  -532,  -533,  -644,
+  -291,  -644,  -644,  -233,  -644,  -643,  -644,  -644,  -644,  -644,
+  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,
+  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -242,
+  -243,  -244,  -245,  -644,  -352,  -442,  -422,  -644,  -628,  -629,
+   -68,  -643,  -644,  -313,  -351,  -426,  -435,  -437,   -74,  -432,
+   -75,  -632,   -76,  -248,  -263,  -643,  -643,  -267,  -644,  -273,
+  -644,  -643,  -609,  -644,  -644,   -77,   -78,  -630,   -17,   -18,
+  -644,   -21,   -22,   -81,  -643,  -632,  -644,   -84,   -87,  -643,
+   -99,  -100,  -644,  -644,  -107,  -306,  -309,  -632,  -644,  -336,
+  -337,  -340,  -433,  -644,   -89,  -644,   -95,  -301,  -515,  -644,
+  -221,  -222,  -644,  -234,  -644,  -643,  -297,  -632,  -643,  -643,
+  -315,   -57,  -644,  -644,  -644,  -643,  -643,  -630,  -644,  -631,
+  -532,  -533,  -644,  -644,  -291,  -644,  -369,  -370,  -117,  -118,
+  -644,  -120,  -644,  -291,  -643,  -644,  -532,  -533,  -329,  -122,
+  -123,  -162,  -163,  -164,  -180,  -185,  -192,  -195,  -331,  -644,
+  -604,  -605,  -564,  -467,  -644,  -490,  -644,  -492,  -644,  -494,
+  -644,  -644,  -474,  -644,  -644,  -480,  -644,  -644,  -486,  -644,
+  -644,  -488,  -644,  -507,  -509,  -510,  -511,  -512,    -6,  -642,
+   -30,   -31,   -32,   -33,   -34,   -10,   -11,  -644,   -26,   -27,
+   -28,  -130,  -644,   -37,   -39,  -278,  -644,  -644,  -277,   -38,
+  -644,   -41,  -644,  -291,   -49,   -50,  -203,  -253,  -273,   -52,
+   -53,   -42,  -204,  -253,  -632,  -258,  -259,  -643,  -643,  -618,
+  -619,  -268,  -430,  -620,  -621,  -619,  -618,  -268,  -429,  -431,
+  -620,  -621,   -48,  -211,   -54,  -632,  -312,  -644,  -644,  -644,
+  -643,  -301,  -644,  -644,  -644,  -212,  -213,  -214,  -215,  -216,
+  -217,  -218,  -219,  -223,  -224,  -225,  -226,  -228,  -229,  -230,
+  -231,  -232,  -235,  -236,  -237,  -238,  -632,  -246,  -644,  -443,
+  -268,  -618,  -619,   -65,   -69,  -632,  -269,  -439,  -442,  -632,
+  -308,  -264,  -644,  -272,  -265,  -644,  -270,  -644,  -274,  -644,
+  -612,  -614,   -16,  -631,   -20,  -644,  -632,   -80,  -299,   -96,
+   -85,  -644,  -632,  -643,  -644,  -644,  -106,  -644,  -515,  -644,
+   -92,   -97,  -644,  -644,  -644,  -644,  -247,  -239,  -644,  -454,
+  -644,  -632,  -296,  -249,  -636,  -636,  -632,  -644,  -607,  -636,
+  -644,  -643,  -360,  -361,  -643,  -644,  -644,  -644,  -644,  -644,
+  -355,  -449,  -643,  -644,  -644,  -301,   -58,  -117,  -118,  -119,
+  -644,  -644,  -643,  -324,  -538,  -540,  -326,  -643,  -542,  -333,
+  -625,  -626,  -644,  -415,  -564,  -418,  -603,  -603,  -547,  -549,
+  -549,  -549,  -563,  -565,  -566,  -567,  -568,  -569,  -570,  -571,
+  -572,  -644,  -574,  -576,  -578,  -583,  -585,  -586,  -588,  -593,
+  -595,  -596,  -598,  -599,  -600,  -644,  -468,  -491,  -496,  -497,
+  -499,  -470,  -493,  -471,  -495,  -472,  -473,  -644,  -476,  -478,
+  -644,  -479,  -482,  -483,  -644,  -484,  -485,  -644,  -513,  -643,
+   -25,  -644,   -35,  -281,  -644,  -644,  -643,  -644,  -644,  -644,
+  -434,  -644,  -260,  -262,  -644,  -644,   -70,  -256,  -257,  -427,
+  -644,  -644,   -72,  -428,  -311,  -634,  -618,  -619,  -618,  -619,
+  -632,  -644,  -421,  -643,   -64,  -423,  -439,  -255,  -644,  -440,
+  -644,  -307,  -643,  -271,  -275,  -644,  -610,  -611,  -644,   -19,
+   -23,   -82,  -644,   -88,   -94,  -632,  -618,  -619,  -643,  -103,
+  -105,  -644,   -90,  -644,  -210,  -220,  -632,  -643,  -353,  -643,
+  -294,  -358,  -298,  -250,  -638,  -637,  -252,  -638,  -303,  -305,
+  -608,  -643,  -362,  -643,   -59,  -363,  -364,  -319,  -320,  -644,
+  -322,  -644,  -632,  -618,  -619,  -622,  -300,  -643,  -117,  -118,
+  -121,  -632,  -643,  -644,  -644,  -644,  -643,  -564,  -564,  -644,
+  -632,  -644,  -632,  -644,  -545,  -546,  -644,  -644,  -556,  -644,
+  -559,  -644,  -561,  -644,  -371,  -644,  -373,  -375,  -378,  -381,
+  -632,  -577,  -587,  -597,  -601,  -644,  -643,  -475,  -477,  -481,
+  -487,  -489,  -644,  -131,  -279,  -644,  -632,  -618,  -619,  -619,
+  -618,  -254,  -644,  -635,  -643,   -44,  -206,   -45,  -207,   -71,
+   -46,  -209,   -47,  -208,   -73,  -644,  -644,  -644,  -644,  -434,
+  -644,  -403,  -404,  -632,  -406,  -643,  -425,  -424,  -644,  -436,
+  -643,  -438,  -266,  -276,  -613,   -86,  -101,   -98,  -310,   -13,
+   -15,  -354,  -356,  -643,  -461,  -455,  -643,  -456,  -457,  -636,
+  -644,  -357,  -365,  -644,  -367,  -643,  -644,   -60,  -321,  -445,
+  -644,  -644,  -434,  -644,  -434,  -644,  -644,  -327,  -330,  -644,
+  -632,  -644,  -334,  -606,  -416,  -643,  -643,  -408,  -632,  -603,
+  -584,  -602,  -548,  -549,  -549,  -575,  -549,  -549,  -594,  -549,
+  -572,  -589,  -632,  -644,  -644,  -380,  -573,  -498,  -501,  -502,
+  -503,  -504,  -644,   -12,  -280,  -434,   -43,  -205,  -261,  -644,
+  -240,  -603,  -603,  -385,  -643,  -643,  -643,  -402,  -644,  -632,
+  -572,  -580,  -581,  -591,  -444,   -66,  -643,  -643,  -460,  -644,
+  -644,  -459,  -251,  -317,  -644,  -368,  -318,  -446,  -644,  -643,
+  -323,  -325,  -539,  -643,  -332,  -541,  -543,  -542,  -644,  -644,
+  -644,  -417,  -544,  -644,  -552,  -644,  -554,  -644,  -557,  -644,
+  -560,  -562,  -372,  -374,  -376,  -379,  -500,  -644,  -383,  -384,
+  -393,  -387,  -395,  -644,  -398,  -644,  -400,  -405,  -644,  -644,
+  -579,  -644,  -441,  -643,  -643,  -108,  -109,  -644,  -644,  -116,
+  -458,  -643,  -447,  -644,  -643,  -644,  -643,  -419,  -420,  -632,
+  -410,  -412,  -413,  -549,  -549,  -549,  -549,  -644,  -644,  -603,
+  -582,  -386,  -643,  -643,  -643,  -643,  -592,  -643,  -407,  -590,
+  -644,  -301,   -14,  -454,  -643,  -644,  -644,  -115,  -643,  -448,
+  -450,  -451,  -452,  -328,  -644,  -409,  -644,  -644,  -550,  -553,
+  -555,  -558,  -377,  -382,  -644,  -390,  -644,  -392,  -644,  -396,
+  -644,  -399,  -401,  -300,  -622,  -453,  -632,  -618,  -619,  -622,
+  -114,  -366,  -335,  -411,  -549,  -643,  -643,  -643,  -643,  -434,
+  -551,  -644,  -388,  -391,  -394,  -397,  -643,  -389 ]
+
+racc_goto_table = [
+     6,   131,   350,   232,   454,   296,   296,   296,   144,   144,
+   294,   294,   294,   276,   228,   388,     4,   352,   353,   727,
+   579,   357,   278,   355,   356,   524,   295,   295,   295,   338,
+   344,   550,     9,   139,   220,   235,   128,   514,     9,   438,
+   439,   670,   285,   289,   425,   414,   766,   147,   147,   571,
+   574,   317,   127,   860,   331,   331,   703,   334,   515,   703,
+   774,   775,   461,   467,   508,   898,   850,   131,   733,   736,
+   888,   589,   144,   740,   706,   280,   288,   290,   394,   698,
+   790,   925,   835,   420,   421,   422,   423,  1010,   412,   331,
+   331,   331,   346,   395,   132,   397,   399,   402,   405,   408,
+   411,  1026,   144,   395,   313,   973,   315,   620,   975,   866,
+   560,   510,   647,  1012,     1,   650,   374,   378,   358,     2,
+   138,   659,   849,   937,   351,   351,   709,   535,   351,   219,
+   367,   928,   784,   292,   305,   306,   434,   476,   427,   744,
+   867,   277,   696,   445,   452,   661,   445,   342,   566,   473,
+   695,   445,   390,   738,   567,   365,   593,   389,     9,   599,
+   345,   605,   347,   561,   348,   451,   349,   424,   762,   612,
+   472,   764,  1026,  1073,   953,   597,   598,   769,   957,   974,
+   927,   929,  1009,   603,   884,   392,   316,   524,   895,   771,
+   351,   351,   351,   351,   517,   520,   642,   518,   644,  1012,
+   894,   648,   896,   840,   648,   294,   703,   703,   871,   693,
+  1040,   751,   856,   939,   418,   393,   437,   437,   396,   537,
+   973,  1052,   706,   398,   401,   455,   471,   988,  1022,   936,
+   404,   478,   407,   410,   433,   444,   907,   713,   444,   795,
+   749,   462,   796,   444,   902,   722,   413,   763,   893,   898,
+   890,   562,  1020,   602,   nil,   296,   926,   690,   838,   294,
+   294,   nil,   nil,   nil,   296,   nil,   nil,   nil,   nil,   294,
+   nil,   nil,   nil,   nil,   nil,   nil,   295,   829,   nil,   455,
+   nil,   449,   450,   nil,   529,   295,   706,   nil,   nil,   474,
+   475,   760,   nil,   523,   523,    19,   784,   nil,   nil,   395,
+   905,    19,   846,   131,   575,   nil,   nil,   700,   547,   nil,
+   nil,   nil,   461,   467,   nil,   nil,   236,   544,   548,   620,
+   715,   565,   569,   nil,   nil,   236,   236,   236,   nil,    19,
+   322,   322,  1032,   nil,   554,   331,   nil,   540,   533,   872,
+   534,   285,   564,   962,   nil,   289,   563,   568,   874,   551,
+  1071,   nil,   331,   131,   532,    19,   nil,   583,   nil,   752,
+   236,   236,   765,   942,   236,   362,   372,   372,   nil,   761,
+  1041,   432,   595,   772,   nil,   978,   979,   nil,   718,   684,
+   895,   612,   313,   516,   536,   nil,  1013,   313,   718,   542,
+   nil,   895,   519,   915,   nil,   316,   nil,   nil,   nil,   nil,
+   473,   nil,   452,  1023,   578,  1006,  1024,   nil,   845,   nil,
+   nil,   351,   nil,   nil,   784,   784,   nil,   718,   nil,   697,
+   nil,    19,   nil,   701,   144,   718,   236,   236,   236,   236,
+    19,   842,   596,   819,   nil,   671,   nil,   667,   nil,   824,
+   711,   710,   nil,   806,   nil,   nil,   714,   798,   nil,   660,
+   798,   nil,   703,   nil,   nil,   523,   523,   nil,   294,   677,
+   nil,   nil,    41,   147,   316,   732,   nil,   706,    41,   316,
+   724,   895,   nil,  1053,   678,   nil,   471,  1075,   455,   nil,
+   683,   nil,   620,   620,   nil,   nil,   nil,   691,   nil,   nil,
+   nil,   462,   620,  1065,   620,   702,    41,   320,   320,   nil,
+   nil,   461,   467,   nil,   nil,   576,   577,   676,   677,   nil,
+   nil,   nil,   nil,   682,    19,   236,   442,   236,   236,   442,
+   236,   294,    41,   678,   442,   236,   236,   875,   784,   784,
+   nil,   879,   360,   376,   376,   376,   880,   881,    19,   nil,
+   757,   455,   471,   842,   612,   612,   857,   671,   930,   nil,
+   nil,   nil,   471,   nil,   nil,   551,   694,   462,   331,   nil,
+   294,   nil,   nil,   551,   nil,   nil,   331,   462,   949,   nil,
+   294,   745,   nil,   nil,   236,   236,   nil,   nil,   nil,   nil,
+   455,   471,   nil,   nil,   236,   445,   nil,   471,    41,   nil,
+   455,   nil,   816,   818,   445,   445,   462,    41,   821,   823,
+   445,   445,   nil,    19,   462,   nil,   nil,    19,   nil,   nil,
+   nil,   322,    19,   815,   817,   726,   nil,   nil,   nil,   820,
+   822,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,
+   848,   nil,   837,   nil,   nil,   nil,   994,   nil,    19,   nil,
+   nil,  1001,   nil,   nil,   294,   814,   889,   236,    19,    19,
+   nil,   959,   nil,  1079,   nil,   nil,   nil,     6,   144,   770,
+   nil,   nil,   nil,   nil,   455,   471,  1042,   nil,   236,   nil,
+   nil,   671,   nil,   802,   883,   nil,   nil,   444,   620,   nil,
+   462,    41,   836,   803,   nil,   nil,   444,   444,   nil,     9,
+   nil,   831,   444,   444,   906,   930,   671,   147,   930,   nil,
+   523,   nil,   nil,   nil,   nil,    41,   922,   859,   nil,   882,
+   778,   780,   782,   876,   nil,   nil,   677,   nil,  1005,   nil,
+   nil,   741,   nil,   437,   743,   854,   551,   858,   nil,   331,
+   917,   678,   445,   671,   683,   nil,   nil,   847,   nil,   864,
+   331,   864,   671,   816,   818,   823,   821,   nil,   nil,   nil,
+   nil,   916,   nil,   887,   nil,   nil,   nil,   nil,   nil,   nil,
+   877,   nil,   nil,   nil,   730,   nil,   144,   nil,   nil,   930,
+    41,  1044,   nil,   236,    41,   nil,   nil,   nil,   320,    41,
+   747,   748,   nil,   750,   955,   nil,   nil,   671,   nil,   nil,
+   nil,   nil,   961,   nil,   nil,   320,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   972,   nil,   nil,   nil,
+   nil,  1066,   523,   944,   887,    41,    41,   nil,   nil,   nil,
+   351,   nil,   nil,   nil,   444,   nil,    19,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   322,   nil,   236,   917,   831,   nil,
+   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1019,   236,   nil,   922,   941,   nil,   922,   nil,   922,   nil,
+   nil,   nil,   nil,   nil,    19,   nil,   nil,    19,   nil,   718,
+   nil,   nil,   952,   nil,   nil,   236,   nil,   956,   891,   nil,
+   nil,   891,   nil,   nil,   nil,   236,   nil,   nil,   nil,   nil,
+    19,   nil,   nil,   nil,   nil,   236,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   873,   nil,   nil,
+   887,    29,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
+   351,   nil,   981,   981,   981,   nil,   nil,   922,   nil,   922,
+   nil,   922,    29,   922,   nil,   nil,   nil,   nil,   923,   nil,
+   nil,    29,    29,    29,   nil,    29,   912,   nil,   331,   nil,
+   nil,   nil,    19,   868,   922,   nil,   nil,   331,   442,   236,
+   nil,   nil,   nil,   nil,   897,   nil,   899,   442,   442,   878,
+   nil,    29,   nil,   442,   442,   nil,    29,    29,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,   934,   nil,   nil,   nil,   nil,
+  1045,   854,  1035,    41,   964,   966,   nil,   968,   970,   nil,
+   971,   320,   864,   938,   nil,   322,   331,   nil,   nil,   320,
+   nil,   nil,   294,   nil,   nil,   945,   322,   nil,   924,   nil,
+   981,   981,   981,   981,   nil,   981,   nil,   471,   nil,   nil,
+   931,    41,   455,   471,    41,   958,   864,    29,   nil,   nil,
+   nil,   nil,    29,    29,    29,    29,    29,   671,   462,   nil,
+    19,   nil,   nil,   nil,   nil,    19,   236,    41,   nil,    19,
+   nil,   nil,   nil,   nil,   943,   nil,   nil,   nil,   nil,   nil,
+   946,   nil,   nil,   981,   981,   981,   981,   950,   nil,   951,
+   nil,   nil,   891,   954,   981,   923,   992,   993,   923,    19,
+   923,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1004,
+   nil,   nil,   nil,   nil,   nil,   442,   nil,   982,   984,   986,
+   nil,   nil,   nil,   nil,  1048,  1049,  1050,  1051,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    19,   nil,
+    29,    29,    29,    29,    29,    29,    29,   nil,   nil,   nil,
+    29,    29,    29,   nil,  1033,   nil,    19,   nil,  1014,   nil,
+  1015,  1038,  1016,   nil,    29,   nil,   236,   nil,    19,   923,
+   nil,   923,   nil,   923,   nil,   923,   nil,   nil,  1025,   nil,
+  1027,   nil,   320,   nil,   931,  1080,   nil,   931,    19,    19,
+   931,   nil,   931,   320,   nil,   nil,   923,   nil,   nil,   nil,
+    29,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,  1055,  1057,  1059,  1061,  1043,
+  1062,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    29,
+   nil,   nil,    41,    29,   990,   nil,    41,   nil,    29,    19,
+    19,   nil,  1074,   997,   nil,   nil,   nil,   nil,   nil,  1076,
+   nil,  1077,    19,  1078,   nil,   nil,    19,   nil,  1072,   nil,
+   nil,   931,   nil,   931,    29,   931,    41,   931,  1082,  1083,
+  1084,  1085,   nil,    29,    29,    29,  1086,   nil,   nil,  1087,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   931,   nil,
+   nil,   nil,  1029,   nil,    29,   nil,   nil,    19,   nil,   nil,
+   nil,   nil,   nil,   nil,    19,    41,   nil,   nil,   nil,    19,
+   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,    41,   nil,   236,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,    41,    41,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,   nil,   435,   448,   nil,   nil,   nil,
+   nil,   nil,    32,    32,    32,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   nil,   376,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,
+   995,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,    41,
+   nil,    32,   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,   nil,   nil,
+   nil,   526,    29,   528,   nil,   nil,   530,   531,   nil,   376,
+   nil,   nil,    29,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,    41,    29,    32,   nil,
+   nil,   nil,   nil,    32,    32,    32,    32,    32,   nil,   nil,
+    29,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   570,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,
+   nil,    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,   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,    32,    32,    32,    32,    32,    29,   nil,
+   nil,    32,    32,    32,    29,    29,   nil,   nil,   nil,   663,
+   nil,   nil,   nil,    29,    29,    32,   nil,   nil,   nil,    29,
+    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,   nil,   nil,   nil,   nil,
+   nil,    32,    32,   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,
+    32,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   704,    29,   nil,   570,   nil,
+   707,    29,    29,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    32,    32,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   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,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   791,   nil,   nil,
+   nil,   nil,    29,   nil,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   804,   243,   nil,
+   nil,   nil,   nil,   nil,   nil,   704,   570,   293,   293,   293,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   340,   341,   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,   843,   nil,
+   nil,   844,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   855,    32,   nil,    16,   nil,   704,   nil,   nil,
+   570,    16,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   869,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,    16,
+    29,    32,   nil,   nil,    32,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,   901,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,    16,   nil,    32,   nil,   nil,
+   nil,   nil,    32,    29,   nil,   366,   nil,   nil,   914,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   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,    16,   nil,   nil,   nil,    32,    32,   293,   447,   nil,
+    16,   453,   293,   947,    32,    32,   453,   nil,   nil,   nil,
+    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   243,
+   nil,   nil,   485,   486,   487,   488,   489,   490,   491,   492,
+   493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
+   503,   504,   505,   506,   nil,   nil,   nil,   nil,   507,   nil,
+   nil,   570,   nil,   nil,   nil,   nil,   293,   293,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   293,   nil,   nil,   nil,
+   nil,   nil,   nil,   293,   nil,   293,   nil,   nil,   293,   293,
+   nil,  1002,   nil,   nil,    16,   nil,   440,    32,   nil,   440,
+   nil,   nil,    32,    32,   440,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    18,   556,   nil,   557,
+   nil,   nil,    18,   293,   293,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1039,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    16,   nil,   nil,    18,    16,   nil,   nil,
+   nil,   nil,    16,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,   293,   nil,   nil,   nil,    32,    32,   nil,    16,    16,
+   nil,   nil,   nil,   nil,   nil,   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,    18,   nil,   nil,   nil,   293,   nil,   453,   453,   453,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   293,   nil,   nil,
+   293,   nil,   293,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   293,   nil,
+   nil,   nil,   nil,   nil,    32,   nil,   nil,   453,   725,   nil,
+   nil,    32,   nil,   nil,   nil,    18,    32,    18,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   293,   nil,    18,
+   nil,   nil,   nil,   nil,    32,   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,    16,   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,    18,   nil,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,    18,    16,   nil,   nil,    16,   nil,   293,
+   453,   293,   nil,   nil,   811,   nil,   nil,   293,   293,   453,
+   453,   nil,   nil,   nil,   nil,   453,   453,   nil,   nil,    18,
+    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   293,   nil,   nil,   293,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   293,   nil,   nil,   nil,   nil,   293,
+   nil,   nil,   293,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    16,    20,   324,   324,   293,   nil,   440,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   440,   440,   nil,
+   nil,   nil,   nil,   440,   440,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   293,   364,
+   373,   373,   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,   453,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   453,   453,   453,   453,   nil,   920,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+    16,   nil,   nil,   nil,    20,    16,   nil,   nil,   nil,    16,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   293,   nil,    18,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   440,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,   293,   453,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   443,    18,   nil,   443,   nil,   nil,    16,   nil,   443,   nil,
+   nil,   nil,   nil,   293,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   293,    18,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,
+    42,   nil,   nil,   nil,    18,    18,    42,    20,   nil,    16,
+    16,    20,   nil,  1000,   nil,   324,    20,   nil,   nil,   293,
+   nil,   nil,    16,   nil,   nil,   nil,    16,   nil,   nil,   nil,
+   nil,   nil,   324,   nil,    42,   321,   321,   nil,   nil,   nil,
+   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
+   361,   377,   377,   377,    16,   nil,   nil,   nil,   nil,    16,
+   nil,    18,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    42,    18,   nil,   nil,   nil,
+   nil,   nil,   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,   nil,   nil,    18,   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,   nil,   nil,   nil,   nil,    18,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   324,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,    20,   nil,    18,   nil,   nil,   nil,    18,   nil,   nil,
+   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,    42,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   321,    42,    18,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,
+    18,   nil,   nil,   321,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,    42,   nil,    20,   nil,   nil,   nil,
+   nil,   nil,   443,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   443,   443,   nil,   nil,   nil,   nil,   443,   443,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,
+   324,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   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,   nil,   nil,   nil,   nil,    20,
+   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   911,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   443,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,    20,   nil,   nil,   nil,   nil,   nil,   nil,   321,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   373,   nil,
+   nil,   nil,   nil,    20,    20,   nil,   nil,   999,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   373,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,    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,
+   nil,   nil,   nil,   nil,    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,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,    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,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   377,
+   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,   996,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,    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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   377,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,   nil,   nil,   nil,    42 ]
+
+racc_goto_check = [
+     6,   118,   102,    40,    36,    84,    84,    84,    71,    71,
+    46,    46,    46,   168,    38,    70,     2,    24,    24,    15,
+   113,    24,    38,    42,    42,    87,    82,    82,    82,    76,
+    40,    65,     9,    22,    22,    27,     8,    52,     9,    29,
+    29,    37,    85,    85,    10,    70,   121,    73,    73,   106,
+   106,    63,     5,   107,    78,    78,    88,    64,    36,    88,
+   150,   150,    50,    50,   169,   212,    17,   118,    83,    83,
+   159,    68,    71,    83,   217,    51,    51,    51,   185,    53,
+   144,   155,   157,    24,    24,    24,    24,   161,   185,    78,
+    78,    78,     9,     6,     7,     6,     6,     6,     6,     6,
+     6,   213,    71,     6,    59,   142,    60,   206,   145,   109,
+    12,    50,   189,   162,     1,   189,    69,    69,     5,     3,
+    11,    13,    16,    18,    31,    31,    20,    21,    31,    23,
+    26,   159,   143,    58,    58,    58,    30,    61,    32,    43,
+    45,    49,    55,    25,    75,    74,    25,    79,    81,    75,
+    86,    25,    98,    37,   101,   115,   117,   122,     9,   123,
+   124,   167,   125,   126,   127,    33,   128,     9,   129,   201,
+    33,   130,   213,   161,   131,   132,   133,   134,   135,   146,
+   147,   153,   160,   163,   164,   165,    14,    87,   207,   166,
+    31,    31,    31,    31,   171,    61,   190,   172,   190,   162,
+   156,   190,   156,   174,   190,    46,    88,    88,   175,   177,
+   178,   179,   180,   181,     7,   184,    82,    82,   186,    61,
+   142,   145,   217,   187,   188,     6,    71,   159,   155,   157,
+   191,    38,   192,   193,    27,    27,   194,    65,    27,   195,
+   113,    85,   196,    27,   144,    65,   199,   200,   205,   212,
+   209,    61,   210,   216,   nil,    84,   156,    36,    53,    46,
+    46,   nil,   nil,   nil,    84,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,    82,    37,   nil,     6,
+   nil,    31,    31,   nil,   185,    82,   217,   nil,   nil,    31,
+    31,    68,   nil,     6,     6,    35,   143,   nil,   nil,     6,
+   143,    35,    37,   118,    24,   nil,   nil,   169,    40,   nil,
+   nil,   nil,    50,    50,   nil,   nil,    35,    38,    76,   206,
+    36,    84,    84,   nil,   nil,    35,    35,    35,   nil,    35,
+    35,    35,    17,   nil,    38,    78,   nil,    64,     8,    37,
+     9,    85,    82,   150,   nil,    85,     6,     6,    37,    63,
+   107,   nil,    78,   118,     5,    35,   nil,    38,   nil,    36,
+    35,    35,    12,    83,    35,    35,    35,    35,   nil,    36,
+   109,    14,     6,   167,   nil,   150,   150,   nil,    50,    61,
+   207,   201,    59,    58,    60,   nil,   156,    59,    50,    60,
+   nil,   207,    58,    37,   nil,    14,   nil,   nil,   nil,   nil,
+    75,   nil,    75,   156,     5,   121,   156,   nil,    65,   nil,
+   nil,    31,   nil,   nil,   143,   143,   nil,    50,   nil,    61,
+   nil,    35,   nil,    61,    71,    50,    35,    35,    35,    35,
+    35,    87,    31,    52,   nil,    40,   nil,    38,   nil,    52,
+    61,    10,   nil,    36,   nil,   nil,    61,   190,   nil,    22,
+   190,   nil,    88,   nil,   nil,     6,     6,   nil,    46,     6,
+   nil,   nil,    66,    73,    14,    61,   nil,   217,    66,    14,
+    75,   207,   nil,   150,    85,   nil,    71,   156,     6,   nil,
+    85,   nil,   206,   206,   nil,   nil,   nil,    40,   nil,   nil,
+   nil,    85,   206,    15,   206,    84,    66,    66,    66,   nil,
+   nil,    50,    50,   nil,   nil,    14,    14,    51,     6,   nil,
+   nil,   nil,   nil,    51,    35,    35,    35,    35,    35,    35,
+    35,    46,    66,    85,    35,    35,    35,    12,   143,   143,
+   nil,    12,    66,    66,    66,    66,   167,   167,    35,   nil,
+    42,     6,    71,    87,   201,   201,    29,    40,   206,   nil,
+   nil,   nil,    71,   nil,   nil,    63,    51,    85,    78,   nil,
+    46,   nil,   nil,    63,   nil,   nil,    78,    85,   106,   nil,
+    46,   118,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,
+     6,    71,   nil,   nil,    35,    25,   nil,    71,    66,   nil,
+     6,   nil,    75,    75,    25,    25,    85,    66,    75,    75,
+    25,    25,   nil,    35,    85,   nil,   nil,    35,   nil,   nil,
+   nil,    35,    35,    33,    33,    31,   nil,   nil,   nil,    33,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,
+    61,   nil,   102,   nil,   nil,   nil,   106,   nil,    35,   nil,
+   nil,   106,   nil,   nil,    46,    84,   149,    35,    35,    35,
+   nil,    12,   nil,    37,   nil,   nil,   nil,     6,    71,    31,
+   nil,   nil,   nil,   nil,     6,    71,   113,   nil,    35,   nil,
+   nil,    40,   nil,     2,    61,   nil,   nil,    27,   206,   nil,
+    85,    66,   168,    22,   nil,   nil,    27,    27,   nil,     9,
+   nil,     6,    27,    27,    61,   206,    40,    73,   206,   nil,
+     6,   nil,   nil,   nil,   nil,    66,   149,    84,   nil,    70,
+   204,   204,   204,    24,   nil,   nil,     6,   nil,    12,   nil,
+   nil,    14,   nil,    82,    14,     6,    63,     6,   nil,    78,
+    75,    85,    25,    40,    85,   nil,   nil,    63,   nil,     6,
+    78,     6,    40,    75,    75,    75,    75,   nil,   nil,   nil,
+   nil,    33,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,
+   118,   nil,   nil,   nil,   100,   nil,    71,   nil,   nil,   206,
+    66,    12,   nil,    35,    66,   nil,   nil,   nil,    66,    66,
+   100,   100,   nil,   100,    61,   nil,   nil,    40,   nil,   nil,
+   nil,   nil,    61,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,    61,   nil,   nil,   nil,
+   nil,    36,     6,    24,    40,    66,    66,   nil,   nil,   nil,
+    31,   nil,   nil,   nil,    27,   nil,    35,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,    35,    75,     6,   nil,
+   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   149,    35,   nil,   149,     6,   nil,   149,   nil,   149,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,   nil,    35,   nil,    50,
+   nil,   nil,   118,   nil,   nil,    35,   nil,   118,   151,   nil,
+   nil,   151,   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,    14,   nil,   nil,
+    40,    54,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+    31,   nil,     6,     6,     6,   nil,   nil,   149,   nil,   149,
+   nil,   149,    54,   149,   nil,   nil,   nil,   nil,   151,   nil,
+   nil,    54,    54,    54,   nil,    54,    14,   nil,    78,   nil,
+   nil,   nil,    35,   100,   149,   nil,   nil,    78,    35,    35,
+   nil,   nil,   nil,   nil,   154,   nil,   154,    35,    35,   100,
+   nil,    54,   nil,    35,    35,   nil,    54,    54,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,    14,   nil,   nil,   nil,   nil,
+    40,     6,    38,    66,   204,   204,   nil,   204,   204,   nil,
+   204,    66,     6,    14,   nil,    35,    78,   nil,   nil,    66,
+   nil,   nil,    46,   nil,   nil,    14,    35,   nil,   154,   nil,
+     6,     6,     6,     6,   nil,     6,   nil,    71,   nil,   nil,
+   208,    66,     6,    71,    66,    14,     6,    54,   nil,   nil,
+   nil,   nil,    54,    54,    54,    54,    54,    40,    85,   nil,
+    35,   nil,   nil,   nil,   nil,    35,    35,    66,   nil,    35,
+   nil,   nil,   nil,   nil,   100,   nil,   nil,   nil,   nil,   nil,
+   100,   nil,   nil,     6,     6,     6,     6,   100,   nil,   100,
+   nil,   nil,   151,   100,     6,   151,    14,    14,   151,    35,
+   151,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    14,
+   nil,   nil,   nil,   nil,   nil,    35,   nil,   152,   152,   152,
+   nil,   nil,   nil,   nil,   204,   204,   204,   204,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,
+    54,    54,    54,    54,    54,    54,    54,   nil,   nil,   nil,
+    54,    54,    54,   nil,    14,   nil,    35,   nil,   154,   nil,
+   154,    14,   154,   nil,    54,   nil,    35,   nil,    35,   151,
+   nil,   151,   nil,   151,   nil,   151,   nil,   nil,   154,   nil,
+   154,   nil,    66,   nil,   208,   204,   nil,   208,    35,    35,
+   208,   nil,   208,    66,   nil,   nil,   151,   nil,   nil,   nil,
+    54,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   152,   152,   152,   152,   100,
+   152,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,    54,
+   nil,   nil,    66,    54,    35,   nil,    66,   nil,    54,    35,
+    35,   nil,   154,    35,   nil,   nil,   nil,   nil,   nil,   154,
+   nil,   154,    35,   154,   nil,   nil,    35,   nil,   100,   nil,
+   nil,   208,   nil,   208,    54,   208,    66,   208,   152,   152,
+   152,   152,   nil,    54,    54,    54,   154,   nil,   nil,   152,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   208,   nil,
+   nil,   nil,    35,   nil,    54,   nil,   nil,    35,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,    66,   nil,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,    35,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,    66,    66,   nil,    57,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    57,   nil,    80,    80,   nil,   nil,   nil,
+   nil,   nil,    57,    57,    57,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,    66,   nil,   nil,   nil,   nil,    66,    66,   nil,   nil,
+    66,   nil,    57,   nil,   nil,   nil,   nil,    57,    57,    66,
+   nil,    57,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    80,    54,    80,   nil,   nil,    80,    80,   nil,    66,
+   nil,   nil,    54,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,    66,    54,    57,   nil,
+   nil,   nil,   nil,    57,    57,    57,    57,    57,   nil,   nil,
+    54,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,    80,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    57,    57,    57,    57,    57,    57,    57,    54,   nil,
+   nil,    57,    57,    57,    54,    54,   nil,   nil,   nil,    80,
+   nil,   nil,   nil,    54,    54,    57,   nil,   nil,   nil,    54,
+    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    57,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,   nil,    80,    54,   nil,    80,   nil,
+    80,    54,    54,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    57,    57,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   nil,   nil,    80,   nil,   nil,
+   nil,   nil,    54,   nil,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,    41,   nil,
+   nil,   nil,   nil,   nil,   nil,    80,    80,    41,    41,    41,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,    80,   nil,
+   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    80,    57,   nil,    28,   nil,    80,   nil,   nil,
+    80,    28,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,    28,
+    54,    57,   nil,   nil,    57,    54,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,    80,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,    28,   nil,    57,   nil,   nil,
+   nil,   nil,    57,    54,   nil,    28,   nil,   nil,    80,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+   nil,    28,   nil,   nil,   nil,    57,    57,    41,    41,   nil,
+    28,    41,    41,    80,    57,    57,    41,   nil,   nil,   nil,
+    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,    80,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,   nil,    41,   nil,   nil,    41,    41,
+   nil,    80,   nil,   nil,    28,   nil,    28,    57,   nil,    28,
+   nil,   nil,    57,    57,    28,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,    41,   nil,    41,
+   nil,   nil,    34,    41,    41,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    28,   nil,   nil,    34,    28,   nil,   nil,
+   nil,   nil,    28,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    57,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,    41,   nil,   nil,   nil,    57,    57,   nil,    28,    28,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,    41,   nil,    41,    41,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,    57,   nil,   nil,    41,    41,   nil,
+   nil,    57,   nil,   nil,   nil,    34,    57,    34,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    34,
+   nil,   nil,   nil,   nil,    57,   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,   nil,   nil,   nil,   nil,    28,   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,    34,   nil,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    34,    28,   nil,   nil,    28,   nil,    41,
+    41,    41,   nil,   nil,    41,   nil,   nil,    41,    41,    41,
+    41,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,    34,
+    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    28,    39,    39,    39,    41,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
+   nil,   nil,   nil,    28,    28,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    39,
+    39,    39,   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,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,    41,    41,    41,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+    28,   nil,   nil,   nil,    39,    28,   nil,   nil,   nil,    28,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    34,   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,    28,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+    39,    34,   nil,    39,   nil,   nil,    28,   nil,    39,   nil,
+   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,    34,   nil,   nil,   nil,   nil,    41,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,
+    67,   nil,   nil,   nil,    34,    34,    67,    39,   nil,    28,
+    28,    39,   nil,    28,   nil,    39,    39,   nil,   nil,    41,
+   nil,   nil,    28,   nil,   nil,   nil,    28,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,    67,    67,    67,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
+    67,    67,    67,    67,    28,   nil,   nil,   nil,   nil,    28,
+   nil,    34,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,    39,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,    39,   nil,    34,   nil,   nil,   nil,    34,   nil,   nil,
+   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,    67,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,    67,    67,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,    67,   nil,    39,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,    39,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,
+   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,    39,    39,   nil,   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,
+   nil,    67,    39,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   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,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,   nil,    67 ]
+
+racc_goto_pointer = [
+   nil,   114,    14,   119,   nil,    47,    -2,    86,    31,    30,
+   -94,   110,  -235,  -305,   150,  -540,  -605,  -661,  -726,   nil,
+  -407,  -185,    22,   117,   -50,   -80,    58,    12,  1873,  -183,
+   -86,    57,    -1,   -61,  2124,   293,  -223,  -413,    -5,  2497,
+   -19,  1785,   -46,  -436,   nil,  -604,   -22,   nil,   nil,   114,
+  -166,    46,  -243,  -438,   909,  -371,   nil,  1340,   101,    68,
+    70,   -96,   nil,    14,    19,  -304,   460,  2798,  -299,    43,
+   -60,    -3,   nil,    36,  -286,   -82,   -15,   nil,    17,   100,
+  1143,  -200,    -6,  -496,   -27,    13,  -360,  -271,  -466,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
+   204,  -195,   -63,   nil,   nil,   nil,  -303,  -688,   nil,  -634,
+   nil,   nil,   nil,  -338,   nil,    83,   nil,  -218,    -4,   nil,
+   nil,  -552,    82,  -230,    99,   100,  -183,   101,   102,  -425,
+  -425,  -703,  -203,  -212,  -422,  -704,   nil,   nil,   nil,   nil,
+   nil,   nil,  -798,  -489,  -541,  -796,  -724,  -653,   nil,  -127,
+  -546,   105,   183,  -652,   185,  -752,  -577,  -611,   nil,  -702,
+  -778,  -873,  -847,  -209,  -587,    96,  -414,  -231,   -12,  -211,
+   nil,   -92,   -90,   nil,  -496,  -543,   nil,  -300,  -794,  -370,
+  -517,  -643,   nil,   nil,   123,   -17,   121,   125,   125,  -289,
+  -200,   130,   131,   131,  -559,  -400,  -398,   nil,   nil,   141,
+  -347,  -223,   nil,   nil,   101,  -529,  -285,  -589,   197,  -523,
+  -725,   nil,  -714,  -882,   nil,   nil,  -138,  -451 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   308,     7,   359,   311,
+   nil,   nil,   nil,   nil,   559,   nil,   nil,   nil,   nil,   307,
+   309,   nil,   nil,   nil,   nil,    14,    15,    21,   241,   nil,
+   nil,    17,   nil,   441,   242,   339,   nil,   nil,   591,   240,
+   477,    24,   nil,   nil,   354,   nil,    25,    26,    27,   nil,
+   721,   nil,   nil,   nil,   328,   nil,    28,   325,   456,    35,
+   nil,   nil,    37,    40,    39,   nil,   237,   238,   371,   nil,
+   146,   464,   145,    91,   nil,   446,   107,    47,    50,   273,
+   299,   nil,   457,   nil,   458,   469,   679,   521,   297,   282,
+    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
+   nil,   nil,   283,    65,    66,    67,   nil,   nil,    68,   862,
+    69,    70,    71,   nil,    72,   nil,    73,   nil,   572,    74,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   287,   275,   729,   853,
+   581,   863,   786,   619,   nil,   787,   788,  1021,   921,   607,
+   nil,   608,   nil,   nil,   609,   nil,   611,   nil,   832,   nil,
+   nil,   nil,   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   468,   nil,   nil,   699,   nil,   nil,   509,   nil,   nil,   nil,
+   nil,   nil,    90,    92,    94,   nil,   nil,   nil,   nil,   nil,
+   637,   nil,   nil,   nil,   nil,   nil,   nil,   103,   104,   nil,
+   nil,   892,   768,   606,   nil,   610,   900,   622,   624,   625,
+   932,   628,   629,   933,   632,   635,   nil,   302 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 149, :_reduce_1,
+  2, 147, :_reduce_2,
+  2, 148, :_reduce_3,
+  1, 150, :_reduce_none,
+  1, 150, :_reduce_none,
+  3, 150, :_reduce_6,
+  2, 150, :_reduce_none,
+  1, 153, :_reduce_none,
+  0, 157, :_reduce_9,
+  3, 153, :_reduce_10,
+  0, 159, :_reduce_11,
+  4, 156, :_reduce_12,
+  0, 164, :_reduce_13,
+  6, 158, :_reduce_14,
+  3, 158, :_reduce_15,
+  2, 160, :_reduce_16,
+  1, 165, :_reduce_none,
+  1, 165, :_reduce_none,
+  3, 165, :_reduce_19,
+  2, 165, :_reduce_20,
+  1, 166, :_reduce_none,
+  0, 167, :_reduce_22,
+  3, 166, :_reduce_23,
+  0, 178, :_reduce_24,
+  4, 155, :_reduce_25,
+  3, 155, :_reduce_26,
+  3, 155, :_reduce_27,
+  3, 155, :_reduce_28,
+  2, 155, :_reduce_29,
+  3, 155, :_reduce_30,
+  3, 155, :_reduce_31,
+  3, 155, :_reduce_32,
+  3, 155, :_reduce_33,
+  3, 155, :_reduce_34,
+  4, 155, :_reduce_35,
+  1, 155, :_reduce_none,
+  3, 155, :_reduce_37,
+  3, 155, :_reduce_38,
+  3, 155, :_reduce_39,
+  1, 155, :_reduce_none,
+  3, 171, :_reduce_41,
+  3, 171, :_reduce_42,
+  6, 171, :_reduce_43,
+  5, 171, :_reduce_44,
+  5, 171, :_reduce_45,
+  5, 171, :_reduce_46,
+  5, 171, :_reduce_47,
+  3, 171, :_reduce_48,
+  1, 179, :_reduce_49,
+  1, 179, :_reduce_none,
+  1, 177, :_reduce_none,
+  3, 177, :_reduce_52,
+  3, 177, :_reduce_53,
+  3, 177, :_reduce_54,
+  2, 177, :_reduce_55,
+  1, 177, :_reduce_none,
+  1, 170, :_reduce_57,
+  0, 190, :_reduce_58,
+  0, 191, :_reduce_59,
+  4, 188, :_reduce_60,
+  1, 173, :_reduce_none,
+  1, 173, :_reduce_none,
+  1, 193, :_reduce_none,
+  4, 193, :_reduce_64,
+  0, 201, :_reduce_65,
+  4, 198, :_reduce_66,
+  1, 200, :_reduce_67,
+  2, 192, :_reduce_68,
+  3, 192, :_reduce_69,
+  4, 192, :_reduce_70,
+  5, 192, :_reduce_71,
+  4, 192, :_reduce_72,
+  5, 192, :_reduce_73,
+  2, 192, :_reduce_74,
+  2, 192, :_reduce_75,
+  2, 192, :_reduce_76,
+  2, 192, :_reduce_77,
+  2, 192, :_reduce_78,
+  1, 172, :_reduce_none,
+  3, 172, :_reduce_80,
+  1, 206, :_reduce_none,
+  3, 206, :_reduce_82,
+  1, 205, :_reduce_83,
+  2, 205, :_reduce_84,
+  3, 205, :_reduce_85,
+  5, 205, :_reduce_86,
+  2, 205, :_reduce_87,
+  4, 205, :_reduce_88,
+  2, 205, :_reduce_89,
+  4, 205, :_reduce_90,
+  1, 205, :_reduce_91,
+  3, 205, :_reduce_92,
+  1, 209, :_reduce_none,
+  3, 209, :_reduce_94,
+  2, 208, :_reduce_95,
+  3, 208, :_reduce_96,
+  1, 211, :_reduce_97,
+  3, 211, :_reduce_98,
+  1, 210, :_reduce_99,
+  1, 210, :_reduce_100,
+  4, 210, :_reduce_101,
+  3, 210, :_reduce_102,
+  3, 210, :_reduce_103,
+  3, 210, :_reduce_104,
+  3, 210, :_reduce_105,
+  2, 210, :_reduce_106,
+  1, 210, :_reduce_107,
+  1, 174, :_reduce_108,
+  1, 174, :_reduce_109,
+  4, 174, :_reduce_110,
+  3, 174, :_reduce_111,
+  3, 174, :_reduce_112,
+  3, 174, :_reduce_113,
+  3, 174, :_reduce_114,
+  2, 174, :_reduce_115,
+  1, 174, :_reduce_116,
+  1, 214, :_reduce_117,
+  1, 214, :_reduce_none,
+  2, 215, :_reduce_119,
+  1, 215, :_reduce_120,
+  3, 215, :_reduce_121,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_none,
+  1, 216, :_reduce_125,
+  1, 216, :_reduce_none,
+  1, 168, :_reduce_127,
+  1, 168, :_reduce_none,
+  1, 169, :_reduce_129,
+  0, 220, :_reduce_130,
+  4, 169, :_reduce_131,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  3, 187, :_reduce_203,
+  3, 187, :_reduce_204,
+  6, 187, :_reduce_205,
+  5, 187, :_reduce_206,
+  5, 187, :_reduce_207,
+  5, 187, :_reduce_208,
+  5, 187, :_reduce_209,
+  4, 187, :_reduce_210,
+  3, 187, :_reduce_211,
+  3, 187, :_reduce_212,
+  3, 187, :_reduce_213,
+  3, 187, :_reduce_214,
+  3, 187, :_reduce_215,
+  3, 187, :_reduce_216,
+  3, 187, :_reduce_217,
+  3, 187, :_reduce_218,
+  3, 187, :_reduce_219,
+  4, 187, :_reduce_220,
+  2, 187, :_reduce_221,
+  2, 187, :_reduce_222,
+  3, 187, :_reduce_223,
+  3, 187, :_reduce_224,
+  3, 187, :_reduce_225,
+  3, 187, :_reduce_226,
+  1, 187, :_reduce_none,
+  3, 187, :_reduce_228,
+  3, 187, :_reduce_229,
+  3, 187, :_reduce_230,
+  3, 187, :_reduce_231,
+  3, 187, :_reduce_232,
+  2, 187, :_reduce_233,
+  2, 187, :_reduce_234,
+  3, 187, :_reduce_235,
+  3, 187, :_reduce_236,
+  3, 187, :_reduce_237,
+  3, 187, :_reduce_238,
+  3, 187, :_reduce_239,
+  6, 187, :_reduce_240,
+  1, 187, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  3, 223, :_reduce_246,
+  3, 223, :_reduce_247,
+  1, 226, :_reduce_248,
+  1, 227, :_reduce_none,
+  2, 227, :_reduce_250,
+  4, 227, :_reduce_251,
+  2, 227, :_reduce_252,
+  1, 221, :_reduce_none,
+  3, 221, :_reduce_254,
+  3, 231, :_reduce_255,
+  1, 232, :_reduce_none,
+  1, 232, :_reduce_none,
+  1, 182, :_reduce_none,
+  1, 182, :_reduce_none,
+  2, 182, :_reduce_260,
+  4, 182, :_reduce_261,
+  2, 182, :_reduce_262,
+  1, 204, :_reduce_263,
+  2, 204, :_reduce_264,
+  2, 204, :_reduce_265,
+  4, 204, :_reduce_266,
+  1, 204, :_reduce_267,
+  0, 235, :_reduce_268,
+  2, 197, :_reduce_269,
+  2, 234, :_reduce_270,
+  2, 233, :_reduce_271,
+  1, 233, :_reduce_none,
+  1, 228, :_reduce_273,
+  2, 228, :_reduce_274,
+  3, 228, :_reduce_275,
+  4, 228, :_reduce_276,
+  1, 176, :_reduce_277,
+  1, 176, :_reduce_278,
+  3, 175, :_reduce_279,
+  4, 175, :_reduce_280,
+  2, 175, :_reduce_281,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_292,
+  0, 270, :_reduce_293,
+  4, 224, :_reduce_294,
+  0, 271, :_reduce_295,
+  3, 224, :_reduce_296,
+  0, 272, :_reduce_297,
+  4, 224, :_reduce_298,
+  3, 224, :_reduce_299,
+  3, 224, :_reduce_300,
+  2, 224, :_reduce_301,
+  0, 273, :_reduce_302,
+  4, 224, :_reduce_303,
+  0, 274, :_reduce_304,
+  4, 224, :_reduce_305,
+  1, 224, :_reduce_306,
+  4, 224, :_reduce_307,
+  3, 224, :_reduce_308,
+  1, 224, :_reduce_309,
+  5, 224, :_reduce_310,
+  4, 224, :_reduce_311,
+  3, 224, :_reduce_312,
+  2, 224, :_reduce_313,
+  1, 224, :_reduce_none,
+  2, 224, :_reduce_315,
+  1, 224, :_reduce_316,
+  6, 224, :_reduce_317,
+  6, 224, :_reduce_318,
+  4, 224, :_reduce_319,
+  4, 224, :_reduce_320,
+  5, 224, :_reduce_321,
+  4, 224, :_reduce_322,
+  6, 224, :_reduce_323,
+  0, 275, :_reduce_324,
+  6, 224, :_reduce_325,
+  0, 276, :_reduce_326,
+  0, 277, :_reduce_327,
+  8, 224, :_reduce_328,
+  0, 278, :_reduce_329,
+  5, 224, :_reduce_330,
+  0, 279, :_reduce_331,
+  6, 224, :_reduce_332,
+  0, 280, :_reduce_333,
+  0, 281, :_reduce_334,
+  9, 224, :_reduce_335,
+  1, 224, :_reduce_336,
+  1, 224, :_reduce_337,
+  1, 224, :_reduce_338,
+  1, 224, :_reduce_339,
+  1, 181, :_reduce_340,
+  1, 245, :_reduce_none,
+  1, 251, :_reduce_none,
+  1, 254, :_reduce_none,
+  1, 256, :_reduce_none,
+  1, 257, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 260, :_reduce_none,
+  1, 262, :_reduce_348,
+  1, 265, :_reduce_349,
+  1, 266, :_reduce_350,
+  1, 282, :_reduce_none,
+  1, 283, :_reduce_none,
+  1, 284, :_reduce_none,
+  1, 285, :_reduce_none,
+  1, 286, :_reduce_none,
+  1, 162, :_reduce_none,
+  1, 287, :_reduce_none,
+  1, 246, :_reduce_none,
+  1, 203, :_reduce_none,
+  1, 252, :_reduce_none,
+  1, 252, :_reduce_none,
+  2, 252, :_reduce_none,
+  1, 189, :_reduce_none,
+  1, 189, :_reduce_none,
+  1, 253, :_reduce_none,
+  5, 253, :_reduce_366,
+  1, 255, :_reduce_none,
+  2, 255, :_reduce_368,
+  1, 261, :_reduce_none,
+  1, 261, :_reduce_370,
+  1, 288, :_reduce_none,
+  3, 288, :_reduce_372,
+  1, 291, :_reduce_373,
+  3, 291, :_reduce_374,
+  1, 290, :_reduce_375,
+  3, 290, :_reduce_376,
+  5, 290, :_reduce_377,
+  1, 290, :_reduce_378,
+  3, 290, :_reduce_379,
+  2, 292, :_reduce_380,
+  1, 292, :_reduce_381,
+  4, 293, :_reduce_382,
+  2, 293, :_reduce_383,
+  2, 293, :_reduce_384,
+  1, 293, :_reduce_385,
+  2, 298, :_reduce_386,
+  1, 298, :_reduce_none,
+  6, 299, :_reduce_388,
+  8, 299, :_reduce_389,
+  4, 299, :_reduce_390,
+  6, 299, :_reduce_391,
+  4, 299, :_reduce_392,
+  2, 299, :_reduce_393,
+  6, 299, :_reduce_394,
+  2, 299, :_reduce_395,
+  4, 299, :_reduce_396,
+  6, 299, :_reduce_397,
+  2, 299, :_reduce_398,
+  4, 299, :_reduce_399,
+  2, 299, :_reduce_400,
+  4, 299, :_reduce_401,
+  1, 299, :_reduce_402,
+  1, 303, :_reduce_403,
+  1, 303, :_reduce_404,
+  3, 304, :_reduce_405,
+  1, 304, :_reduce_406,
+  4, 304, :_reduce_407,
+  1, 305, :_reduce_none,
+  4, 305, :_reduce_409,
+  1, 306, :_reduce_410,
+  3, 306, :_reduce_411,
+  1, 307, :_reduce_412,
+  1, 307, :_reduce_none,
+  0, 311, :_reduce_414,
+  0, 312, :_reduce_415,
+  5, 250, :_reduce_416,
+  4, 309, :_reduce_417,
+  1, 309, :_reduce_418,
+  3, 310, :_reduce_419,
+  3, 310, :_reduce_420,
+  3, 314, :_reduce_421,
+  2, 194, :_reduce_422,
+  4, 194, :_reduce_423,
+  5, 194, :_reduce_424,
+  5, 194, :_reduce_425,
+  2, 249, :_reduce_426,
+  4, 249, :_reduce_427,
+  4, 249, :_reduce_428,
+  3, 249, :_reduce_429,
+  3, 249, :_reduce_430,
+  3, 249, :_reduce_431,
+  2, 249, :_reduce_432,
+  1, 249, :_reduce_433,
+  4, 249, :_reduce_434,
+  0, 317, :_reduce_435,
+  4, 248, :_reduce_436,
+  0, 318, :_reduce_437,
+  4, 248, :_reduce_438,
+  0, 319, :_reduce_439,
+  0, 320, :_reduce_440,
+  4, 199, :_reduce_441,
+  0, 322, :_reduce_442,
+  0, 323, :_reduce_443,
+  4, 315, :_reduce_444,
+  1, 321, :_reduce_445,
+  2, 321, :_reduce_446,
+  3, 321, :_reduce_447,
+  4, 321, :_reduce_448,
+  0, 325, :_reduce_449,
+  6, 259, :_reduce_450,
+  1, 324, :_reduce_none,
+  1, 324, :_reduce_none,
+  6, 161, :_reduce_453,
+  0, 161, :_reduce_454,
+  1, 326, :_reduce_455,
+  1, 326, :_reduce_none,
+  1, 326, :_reduce_none,
+  2, 327, :_reduce_458,
+  1, 327, :_reduce_none,
+  2, 163, :_reduce_460,
+  1, 163, :_reduce_none,
+  1, 236, :_reduce_462,
+  1, 236, :_reduce_none,
+  1, 237, :_reduce_464,
+  1, 329, :_reduce_465,
+  1, 329, :_reduce_none,
+  2, 329, :_reduce_467,
+  3, 330, :_reduce_468,
+  1, 330, :_reduce_469,
+  3, 238, :_reduce_470,
+  3, 239, :_reduce_471,
+  3, 240, :_reduce_472,
+  3, 240, :_reduce_473,
+  1, 334, :_reduce_474,
+  3, 334, :_reduce_475,
+  1, 335, :_reduce_none,
+  2, 335, :_reduce_477,
+  3, 242, :_reduce_478,
+  3, 242, :_reduce_479,
+  1, 337, :_reduce_480,
+  3, 337, :_reduce_481,
+  3, 241, :_reduce_482,
+  3, 241, :_reduce_483,
+  3, 243, :_reduce_484,
+  3, 243, :_reduce_485,
+  1, 338, :_reduce_486,
+  3, 338, :_reduce_487,
+  1, 339, :_reduce_488,
+  3, 339, :_reduce_489,
+  1, 331, :_reduce_490,
+  2, 331, :_reduce_491,
+  1, 332, :_reduce_492,
+  2, 332, :_reduce_493,
+  1, 333, :_reduce_494,
+  2, 333, :_reduce_495,
+  1, 336, :_reduce_496,
+  0, 341, :_reduce_497,
+  3, 336, :_reduce_498,
+  0, 342, :_reduce_499,
+  4, 336, :_reduce_500,
+  1, 340, :_reduce_501,
+  1, 340, :_reduce_502,
+  1, 340, :_reduce_503,
+  1, 340, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  2, 343, :_reduce_507,
+  1, 343, :_reduce_508,
+  1, 345, :_reduce_none,
+  1, 345, :_reduce_none,
+  1, 345, :_reduce_none,
+  1, 345, :_reduce_none,
+  3, 344, :_reduce_513,
+  1, 328, :_reduce_none,
+  2, 328, :_reduce_515,
+  1, 222, :_reduce_none,
+  1, 222, :_reduce_none,
+  1, 222, :_reduce_none,
+  1, 222, :_reduce_none,
+  1, 212, :_reduce_none,
+  1, 212, :_reduce_none,
+  1, 212, :_reduce_none,
+  1, 212, :_reduce_none,
+  1, 212, :_reduce_none,
+  1, 213, :_reduce_525,
+  1, 213, :_reduce_526,
+  1, 213, :_reduce_527,
+  1, 213, :_reduce_528,
+  1, 213, :_reduce_529,
+  1, 213, :_reduce_530,
+  1, 213, :_reduce_531,
+  1, 244, :_reduce_532,
+  1, 244, :_reduce_533,
+  1, 180, :_reduce_534,
+  1, 180, :_reduce_535,
+  1, 185, :_reduce_536,
+  1, 185, :_reduce_537,
+  0, 346, :_reduce_538,
+  4, 263, :_reduce_539,
+  1, 263, :_reduce_540,
+  3, 267, :_reduce_541,
+  0, 348, :_reduce_542,
+  3, 267, :_reduce_543,
+  4, 347, :_reduce_544,
+  2, 347, :_reduce_545,
+  2, 347, :_reduce_546,
+  1, 347, :_reduce_none,
+  2, 350, :_reduce_548,
+  0, 350, :_reduce_549,
+  6, 313, :_reduce_550,
+  8, 313, :_reduce_551,
+  4, 313, :_reduce_552,
+  6, 313, :_reduce_553,
+  4, 313, :_reduce_554,
+  6, 313, :_reduce_555,
+  2, 313, :_reduce_556,
+  4, 313, :_reduce_557,
+  6, 313, :_reduce_558,
+  2, 313, :_reduce_559,
+  4, 313, :_reduce_560,
+  2, 313, :_reduce_561,
+  4, 313, :_reduce_562,
+  1, 313, :_reduce_563,
+  0, 313, :_reduce_564,
+  1, 308, :_reduce_565,
+  1, 308, :_reduce_566,
+  1, 308, :_reduce_567,
+  1, 308, :_reduce_568,
+  1, 289, :_reduce_none,
+  1, 289, :_reduce_570,
+  1, 352, :_reduce_none,
+  1, 353, :_reduce_none,
+  3, 353, :_reduce_573,
+  1, 300, :_reduce_574,
+  3, 300, :_reduce_575,
+  1, 354, :_reduce_none,
+  2, 355, :_reduce_577,
+  1, 355, :_reduce_578,
+  2, 356, :_reduce_579,
+  1, 356, :_reduce_580,
+  1, 294, :_reduce_none,
+  3, 294, :_reduce_582,
+  1, 349, :_reduce_none,
+  3, 349, :_reduce_584,
+  1, 357, :_reduce_none,
+  1, 357, :_reduce_none,
+  2, 295, :_reduce_587,
+  1, 295, :_reduce_588,
+  3, 358, :_reduce_589,
+  3, 359, :_reduce_590,
+  1, 301, :_reduce_591,
+  3, 301, :_reduce_592,
+  1, 351, :_reduce_593,
+  3, 351, :_reduce_594,
+  1, 360, :_reduce_none,
+  1, 360, :_reduce_none,
+  2, 302, :_reduce_597,
+  1, 302, :_reduce_598,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  2, 297, :_reduce_601,
+  2, 296, :_reduce_602,
+  0, 296, :_reduce_603,
+  1, 268, :_reduce_none,
+  0, 362, :_reduce_605,
+  4, 268, :_reduce_606,
+  1, 247, :_reduce_607,
+  2, 247, :_reduce_none,
+  1, 230, :_reduce_none,
+  3, 230, :_reduce_610,
+  3, 363, :_reduce_611,
+  2, 363, :_reduce_612,
+  4, 363, :_reduce_613,
+  2, 363, :_reduce_614,
+  1, 202, :_reduce_none,
+  1, 202, :_reduce_none,
+  1, 202, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 316, :_reduce_none,
+  1, 316, :_reduce_none,
+  1, 316, :_reduce_none,
+  1, 269, :_reduce_none,
+  1, 269, :_reduce_none,
+  1, 184, :_reduce_none,
+  1, 195, :_reduce_none,
+  1, 195, :_reduce_none,
+  0, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  0, 186, :_reduce_none,
+  1, 186, :_reduce_none,
+  2, 207, :_reduce_634,
+  2, 183, :_reduce_635,
+  0, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 264, :_reduce_639,
+  1, 264, :_reduce_none,
+  1, 154, :_reduce_none,
+  2, 154, :_reduce_642,
+  0, 152, :_reduce_643 ]
+
+racc_reduce_n = 644
+
+racc_shift_n = 1088
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLOWEST => 142,
+  :tEQL => 143,
+  :tBDOT2 => 144,
+  :tBDOT3 => 145 }
+
+racc_nt_base = 146
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLOWEST",
+  "tEQL",
+  "tBDOT2",
+  "tBDOT3",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "@3",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@4",
+  "stmts",
+  "stmt_or_begin",
+  "@5",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@6",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "backref",
+  "opt_nl",
+  "arg",
+  "expr_value_do",
+  "do",
+  "@7",
+  "@8",
+  "command",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@9",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "fname",
+  "op",
+  "reswords",
+  "symbol",
+  "@10",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@11",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "k_def",
+  "f_arglist",
+  "singleton",
+  "dot_or_colon",
+  "@12",
+  "@13",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "@22",
+  "@23",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "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",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@24",
+  "@25",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@26",
+  "@27",
+  "@28",
+  "@29",
+  "case_args",
+  "@30",
+  "@31",
+  "cases",
+  "@32",
+  "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",
+  "@33",
+  "@34",
+  "ssym",
+  "dsym",
+  "sym",
+  "@35",
+  "args_tail",
+  "@36",
+  "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",
+  "@37",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 11
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      _, line, stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      res = _values[-2]
+                      # TODO: move down to main match so I can just use val
+
+                      warn "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_16(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 17 omitted
+
+# reduce 18 omitted
+
+def _reduce_19(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_20(val, _values, result)
+                      result = val[1]
+                      debug 12
+
+    result
+end
+
+# reduce 21 omitted
+
+def _reduce_22(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_35(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 13
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 36 omitted
+
+def _reduce_37(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+# reduce 50 omitted
+
+# reduce 51 omitted
+
+def _reduce_52(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_53(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_55(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+# reduce 56 omitted
+
+def _reduce_57(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_58(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 61 omitted
+
+# reduce 62 omitted
+
+# reduce 63 omitted
+
+def _reduce_64(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_65(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_66(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_74(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_75(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_76(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_77(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 79 omitted
+
+def _reduce_80(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 81 omitted
+
+def _reduce_82(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_83(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      l = lexer.lineno
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_92(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 93 omitted
+
+def _reduce_94(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_95(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 14
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_106(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 15
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_107(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 16
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 17
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 18
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 118 omitted
+
+def _reduce_119(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_120(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 122 omitted
+
+# reduce 123 omitted
+
+# reduce 124 omitted
+
+def _reduce_125(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 126 omitted
+
+def _reduce_127(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 128 omitted
+
+def _reduce_129(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_130(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_131(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+def _reduce_203(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_204(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_205(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_206(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_207(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_208(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_209(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_210(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_211(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_212(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_213(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_214(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_215(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_216(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 227 omitted
+
+def _reduce_228(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_229(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+# reduce 241 omitted
+
+# reduce 242 omitted
+
+# reduce 243 omitted
+
+# reduce 244 omitted
+
+# reduce 245 omitted
+
+def _reduce_246(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_247(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 249 omitted
+
+def _reduce_250(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_251(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_252(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 253 omitted
+
+def _reduce_254(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_255(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+# reduce 256 omitted
+
+# reduce 257 omitted
+
+# reduce 258 omitted
+
+# reduce 259 omitted
+
+def _reduce_260(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_261(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_262(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_263(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_264(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_265(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_266(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_267(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_270(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_271(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 272 omitted
+
+def _reduce_273(val, _values, result)
+                      arg, = val
+                      lineno = arg.line || lexer.lineno # HACK
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_274(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_275(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      # TODO: the line number from tSTAR has been dropped
+                      args, _, _, id = val
+                      line = lexer.lineno
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_279(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_280(val, _values, result)
+                      # TODO: make all tXXXX terminals include lexer.lineno
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_281(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 282 omitted
+
+# reduce 283 omitted
+
+# reduce 284 omitted
+
+# reduce 285 omitted
+
+# reduce 286 omitted
+
+# reduce 287 omitted
+
+# reduce 288 omitted
+
+# reduce 289 omitted
+
+# reduce 290 omitted
+
+# reduce 291 omitted
+
+def _reduce_292(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_293(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+                      result = lexer.lineno
+
+    result
+end
+
+def _reduce_296(val, _values, result)
+                      _, line, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_297(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      _, stmt, _ = val
+                      result = stmt
+                      result ||= s(:nil).line lexer.lineno
+                      result.paren = true
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_303(val, _values, result)
+                      _, line, args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_308(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_309(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_310(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_311(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_312(val, _values, result)
+                      debug 20
+
+    result
+end
+
+def _reduce_313(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 314 omitted
+
+def _reduce_315(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_316(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_317(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_318(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      result = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      result = self.in_def
+
+                      self.in_single += 1 # TODO: remove?
+
+                      self.in_def = true # local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
+                      # =>
+                      # [kdef, recv, (name, line), in_def, args, body, kend]
+
+                      val.delete_at 3
+                      val.delete_at 2
+
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 341 omitted
+
+# reduce 342 omitted
+
+# reduce 343 omitted
+
+# reduce 344 omitted
+
+# reduce 345 omitted
+
+# reduce 346 omitted
+
+# reduce 347 omitted
+
+def _reduce_348(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_349(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 351 omitted
+
+# reduce 352 omitted
+
+# reduce 353 omitted
+
+# reduce 354 omitted
+
+# reduce 355 omitted
+
+# reduce 356 omitted
+
+# reduce 357 omitted
+
+# reduce 358 omitted
+
+# reduce 359 omitted
+
+# reduce 360 omitted
+
+# reduce 361 omitted
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+def _reduce_366(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 367 omitted
+
+def _reduce_368(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 369 omitted
+
+def _reduce_370(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+# reduce 371 omitted
+
+def _reduce_372(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_373(val, _values, result)
+                      sym, = val
+
+                      result = s(:array, sym).line lexer.lineno
+
+    result
+end
+
+def _reduce_374(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_375(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_376(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_377(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_378(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_379(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_380(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_381(val, _values, result)
+                      result = args [:*]
+                      result.line lexer.lineno # FIX: tSTAR -> line
+
+    result
+end
+
+def _reduce_382(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_383(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_384(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_385(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_386(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 387 omitted
+
+def _reduce_388(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_389(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_390(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_391(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      result = args(val) << nil
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_404(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_405(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+def _reduce_406(val, _values, result)
+                      result = s(:args).line lexer.lineno
+
+    result
+end
+
+def _reduce_407(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+# reduce 408 omitted
+
+def _reduce_409(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 413 omitted
+
+def _reduce_414(val, _values, result)
+                      self.env.extend :dynamic
+                      result = [lexer.lineno, lexer.lpar_beg]
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_415(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      _, (line, lpar), args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      result = s(:zsuper).line lexer.lineno
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_440(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_441(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_442(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_443(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      result = new_when(val[2], val[4])
+                      result.line val[1]
+                      result << val[5] if val[5]
+
+    result
+end
+
+# reduce 451 omitted
+
+# reduce 452 omitted
+
+def _reduce_453(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_454(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 456 omitted
+
+# reduce 457 omitted
+
+def _reduce_458(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 459 omitted
+
+def _reduce_460(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 461 omitted
+
+def _reduce_462(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 463 omitted
+
+def _reduce_464(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_465(val, _values, result)
+                      debug 37
+
+    result
+end
+
+# reduce 466 omitted
+
+def _reduce_467(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_468(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_469(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_470(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_471(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 476 omitted
+
+def _reduce_477(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_478(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_479(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_480(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_483(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_484(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_485(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_486(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_488(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_489(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_494(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_495(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_496(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_497(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_498(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_499(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                                lexer.lineno,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_500(val, _values, result)
+                      _, memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 38
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_501(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 504 omitted
+
+# reduce 505 omitted
+
+# reduce 506 omitted
+
+def _reduce_507(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_508(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 509 omitted
+
+# reduce 510 omitted
+
+# reduce 511 omitted
+
+# reduce 512 omitted
+
+def _reduce_513(val, _values, result)
+                      _, result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line lexer.lineno
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 39
+                      end
+
+    result
+end
+
+# reduce 514 omitted
+
+def _reduce_515(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 516 omitted
+
+# reduce 517 omitted
+
+# reduce 518 omitted
+
+# reduce 519 omitted
+
+# reduce 520 omitted
+
+# reduce 521 omitted
+
+# reduce 522 omitted
+
+# reduce 523 omitted
+
+# reduce 524 omitted
+
+def _reduce_525(val, _values, result)
+ result = s(:nil).line lexer.lineno
+    result
+end
+
+def _reduce_526(val, _values, result)
+ result = s(:self).line lexer.lineno
+    result
+end
+
+def _reduce_527(val, _values, result)
+ result = s(:true).line lexer.lineno
+    result
+end
+
+def _reduce_528(val, _values, result)
+ result = s(:false).line lexer.lineno
+    result
+end
+
+def _reduce_529(val, _values, result)
+ result = s(:str, self.file).line lexer.lineno
+    result
+end
+
+def _reduce_530(val, _values, result)
+ result = s(:lit, lexer.lineno).line lexer.lineno
+    result
+end
+
+def _reduce_531(val, _values, result)
+                      l = lexer.lineno
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_532(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+                      result.line line
+
+    result
+end
+
+def _reduce_533(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 40
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_539(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_540(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 547 omitted
+
+def _reduce_548(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_549(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_550(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_551(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_555(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_556(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_557(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_558(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_560(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_561(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_562(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_563(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_564(val, _values, result)
+                      result = args val
+                      # result.line lexer.lineno
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 569 omitted
+
+def _reduce_570(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 571 omitted
+
+# reduce 572 omitted
+
+def _reduce_573(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_574(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_575(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+# reduce 576 omitted
+
+def _reduce_577(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_578(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_579(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_580(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 581 omitted
+
+def _reduce_582(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 583 omitted
+
+def _reduce_584(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 585 omitted
+
+# reduce 586 omitted
+
+def _reduce_587(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_588(val, _values, result)
+                      id = :"**"
+                      self.env[id] = :lvar # TODO: needed?!?
+                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
+
+    result
+end
+
+def _reduce_589(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+
+    result
+end
+
+def _reduce_590(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+
+    result
+end
+
+def _reduce_591(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 595 omitted
+
+# reduce 596 omitted
+
+def _reduce_597(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_598(val, _values, result)
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
+
+    result
+end
+
+# reduce 599 omitted
+
+# reduce 600 omitted
+
+def _reduce_601(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_602(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_603(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 604 omitted
+
+def _reduce_605(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_607(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 608 omitted
+
+# reduce 609 omitted
+
+def _reduce_610(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_611(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_612(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_613(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_614(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 615 omitted
+
+# reduce 616 omitted
+
+# reduce 617 omitted
+
+# reduce 618 omitted
+
+# reduce 619 omitted
+
+# reduce 620 omitted
+
+# reduce 621 omitted
+
+# reduce 622 omitted
+
+# reduce 623 omitted
+
+# reduce 624 omitted
+
+# reduce 625 omitted
+
+# reduce 626 omitted
+
+# reduce 627 omitted
+
+# reduce 628 omitted
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+# reduce 631 omitted
+
+# reduce 632 omitted
+
+# reduce 633 omitted
+
+def _reduce_634(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_635(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 636 omitted
+
+# reduce 637 omitted
+
+# reduce 638 omitted
+
+def _reduce_639(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 640 omitted
+
+# reduce 641 omitted
+
+def _reduce_642(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_643(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby22Parser
diff -pruN 3.20.0-2/lib/ruby_parser23.rb 3.21.1-1/lib/ruby_parser23.rb
--- 3.20.0-2/lib/ruby_parser23.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser23.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,11160 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby23Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -520,   639,   574,   224,   225,  -108,   -94,  -520,  -520,  -520,
+  -109,   574,  -520,  -520,  -520,  -102,  -520,  -116,   574,   224,
+   225,   -80,   574,   655,  -520,   285,  -520,  -520,  -520,  -115,
+   234,  -108,  -534,   658,     3,  -535,  -520,  -520,   230,  -520,
+  -520,  -520,  -520,  -520,  -111,   280,   736,   224,   225,   735,
+  -109,    95,  -104,  -113,   574,   887,   747,  -103,   736,    96,
+   126,   738,   641,   640,   637,  -110,   235,  -520,  -520,  -520,
+  -520,  -520,  -520,  -520,  -520,  -520,  -520,  -520,  -520,  -520,
+  -520,  -116,  -102,  -520,  -520,  -520,   654,  -520,  -520,  -108,
+   282,  -520,  -109,   235,  -520,  -520,   657,  -520,   285,  -520,
+   221,  -520,   231,  -520,  -520,  -520,  -520,  -520,  -520,  -520,
+   -99,  -520,   287,  -520,   222,  -100,   130,  -102,  -115,  -104,
+  -102,   129,  -107,  -618,  -103,   130,  -520,  -520,  -520,  -520,
+   129,  -520,   130,  -520,  -106,  -102,   130,   129,  -520,  -523,
+  -111,   129,  -520,  -113,  -520,  -108,  -523,  -523,  -523,  -102,
+  -108,  -523,  -523,  -523,  -104,  -523,   130,  -104,  -104,  -103,
+   886,   129,  -103,  -523,  -109,  -523,  -523,  -523,   130,  -109,
+  -101,   949,  -104,   129,  -110,  -523,  -523,  -103,  -523,  -523,
+  -523,  -523,  -523,  -112,  -101,   287,  -114,  -112,   285,  -114,
+  -520,   835,   224,   225,   835,  -116,  -523,  -520,  -530,   232,
+  -116,   224,   225,  -523,   223,  -530,  -523,  -523,  -523,  -523,
+  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
+   108,   109,  -523,  -523,  -523,   834,  -523,  -523,   834,   852,
+  -523,   285,  -115,  -523,  -523,   853,  -523,  -115,  -523,   226,
+  -523,  -107,  -523,  -523,  -523,  -523,  -523,  -523,  -523,   483,
+  -523,  -101,  -523,  -618,  -111,  -619,  -116,  -113,   639,  -111,
+   639,  -618,  -113,   275,  -619,  -523,  -523,  -523,  -523,   232,
+  -523,  -300,  -523,   337,   553,   287,   826,  -523,  -300,  -300,
+  -300,  -523,   235,  -523,  -300,  -300,  -101,  -300,  -110,  -101,
+   624,   235,  -103,  -110,  -105,  -534,   282,  -112,   110,   111,
+  -114,   627,  -112,   827,  -101,  -114,  -116,  -300,  -300,   675,
+  -300,  -300,  -300,  -300,  -300,   108,   109,  -529,   287,   641,
+   640,   641,   640,   338,  -529,   639,  -116,   130,   798,   235,
+   800,  -115,   129,  -111,   635,   634,  -615,   -99,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -108,   401,  -300,  -300,  -300,   230,   681,   588,
+  -113,   676,  -300,   589,   229,  -300,  -111,  -616,   628,   866,
+  -300,   581,  -300,   227,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,   624,  -300,  -340,  -300,   404,   641,   640,   637,  -520,
+  -340,  -535,   627,   110,   111,   553,  -520,  -300,  -300,  -340,
+  -105,  -615,  -300,  -622,   920,  -520,   709,   813,   407,  -300,
+  -622,  -622,  -622,  -300,   410,  -114,  -622,  -622,  -113,  -622,
+  -523,   231,  -531,  -615,   427,   635,   634,  -523,  -622,  -531,
+   639,   255,  -616,  -100,   230,   432,  -523,  -106,   639,  -622,
+  -622,   480,  -622,  -622,  -622,  -622,  -622,  -340,  -109,  -532,
+   481,  -528,  -115,  -520,  -616,  -525,  -532,   639,  -528,   628,
+   482,  -110,  -525,   252,  -110,  -532,   736,   254,   253,   738,
+  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,
+  -622,  -622,  -622,  -622,  -523,   484,  -622,  -622,  -622,  -533,
+   682,   641,   640,   642,  -622,   485,  -533,  -622,   231,   641,
+   640,   647,  -622,   639,  -622,  -533,  -622,  -622,  -622,  -622,
+  -622,  -622,  -622,  -532,  -622,  -622,  -622,   675,   641,   640,
+   652,   234,   619,   514,   616,   615,   614,   624,   617,  -622,
+  -622,   523,  -103,  -526,  -622,   526,   230,  -527,   627,   601,
+  -526,  -622,  -622,   546,  -527,  -622,   602,  -112,   528,  -622,
+  -622,  -622,   544,  -533,  -622,  -622,  -622,   255,  -622,  -102,
+   622,   272,   273,   -79,   641,   640,   659,  -622,  -622,  -622,
+  -622,   635,   634,   736,  -111,  -622,   738,   235,  -622,  -622,
+  1047,  -622,  -622,  -622,  -622,  -622,   130,   235,  -291,   252,
+   539,   129,   230,   254,   253,  -291,   271,   270,   639,   556,
+   231,   644,   130,   540,  -291,   628,   547,   129,   481,  -622,
+  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,
+  -622,  -622,  -622,   224,   225,  -622,  -622,  -622,  -622,   828,
+  -622,   862,   866,  -622,   676,  -622,  -622,  -622,   292,  -622,
+  -618,  -622,   235,  -622,  -622,  -622,  -622,  -622,  -622,  -622,
+  -622,  -622,  -291,  -622,  -622,  -622,   231,   282,   429,   641,
+   640,   130,  -622,   431,   430,   550,   129,   230,  -622,  -622,
+  -622,  -622,   813,  -622,   585,  -622,  -104,   130,   635,   634,
+  -622,  -300,   129,   583,  -622,   554,  -112,   255,  -300,  -300,
+  -300,  -113,  -622,  -300,  -300,  -300,   619,  -300,   616,   615,
+   614,   624,   617,   230,   862,   866,   130,  -300,  -300,  -300,
+   591,   129,   627,   235,  -101,   581,   420,  -300,  -300,   593,
+  -300,  -300,  -300,  -300,  -300,   586,   587,   595,   646,  -110,
+   650,   231,   653,   656,   622,   605,   619,   663,   616,   615,
+   614,  -273,   617,   632,   631,   635,   634,   665,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,   666,   235,  -300,  -300,  -300,   231,   829,  -300,
+   673,   674,  -300,   282,   786,  -300,  -300,   686,  -300,   628,
+  -300,   255,  -300,   790,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,   255,  -300,   255,  -300,   619,   255,   616,   615,   614,
+   624,   617,   133,   134,   135,   136,   137,  -300,  -300,  -300,
+  -300,   627,  -300,  -300,  -300,   693,   235,   235,   427,  -300,
+  -300,  -300,  -300,  -300,   235,  -114,  -300,  -300,   -94,  -300,
+   230,  -301,   713,   622,   235,   559,   724,   669,  -301,   729,
+   732,  -301,   632,   631,   635,   634,   667,  -301,  -301,  -300,
+  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -301,  -300,  -300,
+   235,   235,   740,  -619,   528,   743,  -300,  -300,   732,   732,
+   619,  -619,   616,   615,   614,  -300,   617,   581,   628,   732,
+  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,   231,  -301,  -300,  -300,  -300,   768,
+   681,   774,   777,   778,  -300,  -301,   780,  -300,   786,   782,
+   784,   255,  -300,   793,  -300,  -300,  -300,  -300,  -300,  -300,
+  -300,  -300,  -300,  -300,  -300,   619,  -300,   616,   615,   614,
+   624,   617,   619,   794,   616,   615,   614,   795,   617,  -300,
+  -300,   627,  -300,   252,  -300,  -622,   801,   254,   253,   250,
+   251,  -300,  -622,  -622,  -622,  -300,   802,  -114,  -622,  -622,
+  -274,  -622,   230,   622,   133,   134,   135,   136,   137,  1031,
+  -622,   814,   632,   631,   635,   634,   230,   514,   593,   514,
+   235,  -622,  -622,  1037,  -622,  -622,  -622,  -622,  -622,   909,
+   910,   230,  1035,   911,   124,   125,   831,   275,  1031,   840,
+   619,   842,   616,   615,   614,   526,   617,   593,   628,   528,
+   724,   235,  -622,  -622,  -622,  -622,  -622,  -622,  -622,  -622,
+  -622,  -622,  -622,  -622,  -622,  -622,   231,   282,  -622,  -622,
+  -622,   619,   682,   616,   615,   614,  -622,   617,   786,  -622,
+   231,   282,   724,   255,  -622,   255,  -622,   790,  -622,  -622,
+  -622,  -622,  -622,  -622,  -622,   231,  -622,  -622,  -622,   265,
+   266,  1012,   866,   616,   615,   614,   732,   617,   235,   786,
+   235,  -622,  -622,   732,  -622,   252,  -622,   258,   790,   254,
+   253,   250,   251,  -622,  -433,   235,   904,  -622,   905,  -112,
+   235,  -433,  -433,  -433,   914,  -275,  -433,  -433,  -433,   619,
+  -433,   616,   615,   614,   624,   617,   255,   235,   919,  -433,
+  -433,  -433,   936,   724,  -273,   627,   941,   732,   732,   732,
+  -433,  -433,   732,  -433,  -433,  -433,  -433,  -433,   619,   732,
+   616,   615,   614,   235,   617,   961,   235,   622,   252,   777,
+   964,   966,   254,   253,   250,   251,   632,   631,   635,   634,
+   968,  -433,  -433,  -433,  -433,  -433,  -433,  -433,  -433,  -433,
+  -433,  -433,  -433,  -433,  -433,   970,   786,  -433,  -433,  -433,
+   970,   235,  -433,   977,   282,  -433,  -276,   978,  -433,  -433,
+   777,  -433,   628,  -433,   981,  -433,   984,  -433,  -433,  -433,
+  -433,  -433,  -433,  -433,   986,  -433,  -433,  -433,   619,   988,
+   616,   615,   614,   624,   617,   133,   134,   135,   136,   137,
+  -433,  -433,   235,  -433,   627,  -433,  -309,   133,   134,   135,
+   136,   137,  -433,  -309,  -309,  -309,  -433,   990,  -309,  -309,
+  -309,   768,  -309,   255,  1008,   619,   622,   616,   615,   614,
+  1009,   617,  -309,  -309,  1018,   632,   631,   635,   634,   265,
+   266,  1019,  -309,  -309,  1029,  -309,  -309,  -309,  -309,  -309,
+  1012,  1032,   616,   615,   614,   252,   617,   258,   852,   254,
+   253,   250,   251,   786,  1038,   256,   732,   257,  1048,   970,
+   970,   628,   970,  -309,  -309,  -309,  -309,  -309,  -309,  -309,
+  -309,  -309,  -309,  -309,  -309,  -309,  -309,   777,  1055,  -309,
+  -309,  -309,  1057,  1059,  -309,  1061,   292,  -309,  1061,   729,
+  -309,  -309,   732,  -309,  1019,  -309,  -619,  -309,  -618,  -309,
+  -309,  -309,  -309,  -309,  -309,  -309,   235,  -309,   970,  -309,
+   619,  1082,   616,   615,   614,   624,   617,  1061,  1061,  1061,
+  1061,   nil,  -309,  -309,   nil,  -309,   627,  -309,  -292,   nil,
+   nil,   nil,   nil,   nil,  -309,  -292,  -292,  -292,  -309,   nil,
+  -292,  -292,  -292,   nil,  -292,   255,   nil,   nil,   622,   nil,
+   nil,   nil,   nil,   nil,  -292,  -292,  -292,   632,   631,   635,
+   634,   265,   266,   nil,  -292,  -292,   nil,  -292,  -292,  -292,
+  -292,  -292,   nil,   nil,   nil,   nil,   nil,   252,   nil,   258,
+   nil,   254,   253,   250,   251,   nil,   nil,   256,   nil,   257,
+   nil,   nil,   nil,   628,   nil,  -292,  -292,  -292,  -292,  -292,
+  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,  -292,   nil,
+   nil,  -292,  -292,  -292,   nil,   nil,  -292,   nil,   nil,  -292,
+   nil,   nil,  -292,  -292,   nil,  -292,   nil,  -292,   nil,  -292,
+   nil,  -292,  -292,  -292,  -292,  -292,  -292,  -292,   nil,  -292,
+   nil,  -292,   619,   nil,   616,   615,   614,   624,   617,   nil,
+   nil,   nil,   nil,   nil,  -292,  -292,  -292,  -292,   627,  -292,
+  -644,  -292,   nil,   nil,   nil,   nil,  -292,  -644,  -644,  -644,
+  -292,   nil,  -644,  -644,  -644,   nil,  -644,   255,   nil,   nil,
+   622,   nil,   nil,   nil,   nil,  -644,  -644,  -644,   nil,   632,
+   631,   635,   634,   265,   266,   nil,  -644,  -644,   nil,  -644,
+  -644,  -644,  -644,  -644,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   258,   nil,   254,   253,   250,   251,   235,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   628,   nil,  -644,  -644,  -644,
+  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,  -644,
+  -644,   nil,   nil,  -644,  -644,  -644,   nil,   nil,  -644,   nil,
+   282,  -644,   nil,   nil,  -644,  -644,   nil,  -644,   nil,  -644,
+   nil,  -644,   nil,  -644,  -644,  -644,  -644,  -644,  -644,  -644,
+   nil,  -644,  -644,  -644,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,  -644,  -644,   nil,  -644,
+   627,  -644,  -623,   nil,   nil,   nil,   nil,   nil,  -644,  -623,
+  -623,  -623,  -644,   nil,  -623,  -623,  -623,   nil,  -623,   255,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,  -623,  -623,  -623,
+  -623,   632,   631,   635,   634,   265,   266,   nil,  -623,  -623,
+   nil,  -623,  -623,  -623,  -623,  -623,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   nil,   254,   253,   250,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628,   nil,  -623,
+  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,   nil,   nil,  -623,  -623,  -623,   nil,   nil,
+  -623,   nil,   nil,  -623,   nil,   nil,  -623,  -623,   nil,  -623,
+   nil,  -623,   nil,  -623,   nil,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,   nil,  -623,  -623,  -623,   619,   nil,   616,   615,
+   614,   624,   617,   nil,   nil,   nil,   nil,   nil,  -623,  -623,
+  -623,  -623,   627,  -623,  -624,  -623,   nil,   nil,   nil,   nil,
+  -623,  -624,  -624,  -624,  -623,   nil,  -624,  -624,  -624,   nil,
+  -624,   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,  -624,
+  -624,  -624,  -624,   nil,   nil,   635,   634,   nil,   nil,   nil,
+  -624,  -624,   nil,  -624,  -624,  -624,  -624,  -624,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628,
+   nil,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,
+  -624,  -624,  -624,  -624,  -624,   nil,   nil,  -624,  -624,  -624,
+   nil,   nil,  -624,   nil,   nil,  -624,   nil,   nil,  -624,  -624,
+   nil,  -624,   nil,  -624,   nil,  -624,   nil,  -624,  -624,  -624,
+  -624,  -624,  -624,  -624,   nil,  -624,  -624,  -624,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  -624,  -624,  -624,  -624,   nil,  -624,  -644,  -624,   nil,   nil,
+   nil,   nil,  -624,  -644,  -644,  -644,  -624,   nil,  -644,  -644,
+  -644,   nil,  -644,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  -644,  -644,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  -644,  -644,   nil,  -644,  -644,  -644,  -644,  -644,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   512,   464,   nil,
+   nil,   513,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,  -644,   nil,   nil,   175,   176,   161,
+   162,  -644,   nil,   nil,   nil,   nil,   282,  -644,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,  -644,  -644,
+   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  -644,   nil,   nil,   nil,   nil,  -644,   nil,   nil,
+   170,   nil,   nil,   nil,  -644,   nil,   nil,   nil,  -644,     8,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   670,    11,    49,    10,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,  -248,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   670,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   235,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,  -645,  -645,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,  -645,  -645,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -645,  -645,  -645,  -645,
+   272,   273,   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -645,  -645,  -645,  -645,
+   272,   273,   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,     8,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,    10,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -645,  -645,  -645,  -645,
+   272,   273,   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -645,  -645,  -645,  -645,
+   272,   273,   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -645,  -645,  -645,  -645,
+   272,   273,   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -645,  -645,  -645,  -645,
+   272,   273,   nil,   nil,  -645,  -645,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   nil,   nil,   263,   264,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   nil,   263,   264,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,    10,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   627,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   319,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
+   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,   617,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,   627,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,   nil,
+   336,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   130,   nil,   nil,   nil,   nil,   129,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,
+   624,   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   364,
+   nil,   627,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   635,   634,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   369,    60,   114,   113,   370,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   376,   nil,   nil,   371,   nil,
+   627,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
+   121,   123,   369,    60,   114,   113,   370,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
+   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,   617,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   371,   nil,   627,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,    12,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    49,    10,    13,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   420,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
+    49,   nil,    13,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   437,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   437,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   235,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
+   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   235,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,    12,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
+   nil,    13,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,
+   624,   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,
+   nil,   627,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   635,   634,   nil,    96,   106,   nil,
+   nil,   nil,   542,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   627,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   559,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   304,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   305,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   706,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   313,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   420,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,   nil,
+   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   324,   nil,   627,   320,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   635,   634,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   628,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
+   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   806,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   706,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
+   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,
+   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   437,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   706,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   871,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   304,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   299,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   305,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
+   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   992,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
+   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   999,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,  1004,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,   188,   199,   189,   212,   185,   205,   195,   194,   215,
+   216,   210,   193,   192,   187,   213,   217,   218,   197,   186,
+   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,
+   209,   208,   201,   211,   196,   184,   203,   202,   nil,   nil,
+   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,   180,
+   141,   143,   140,   nil,   142,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,
+   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
+   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
+   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
+   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,   205,
+   195,   194,   215,   216,   210,   193,   192,   187,   213,   217,
+   218,   197,   186,   200,   204,   206,   198,   191,   nil,   nil,
+   nil,   207,   214,   209,   208,   201,   211,   196,   184,   203,
+   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,
+   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,
+   212,   185,   205,   195,   194,   215,   216,   210,   193,   192,
+   187,   213,   217,   218,   197,   186,   200,   204,   206,   198,
+   191,   nil,   nil,   nil,   207,   214,   209,   387,   386,   388,
+   385,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,
+   190,   181,   182,   382,   383,   384,   380,   143,   114,   113,
+   381,   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,   173,
+   174,   nil,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   392,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
+   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
+   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
+   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
+   208,   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,
+   nil,   nil,   183,   190,   181,   182,   178,   179,   180,   141,
+   143,   417,   416,   142,   nil,   418,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   188,   199,   189,   212,   185,   205,   195,
+   194,   215,   216,   210,   193,   192,   187,   213,   217,   218,
+   197,   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,
+   207,   214,   209,   208,   201,   211,   196,   184,   203,   202,
+   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,
+   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,
+   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
+   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
+   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,   196,
+   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
+   181,   182,   178,   179,   180,   141,   143,   nil,   nil,   142,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   105,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
+   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
+   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
+   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
+   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
+   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
+   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
+   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
+   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
+   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
+   nil,   177,   nil,   nil,   nil,   nil,   460,   464,   nil,   nil,
+   461,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
+   174,   170,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
+   nil,   nil,   nil,   nil,   467,   471,   nil,   nil,   466,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
+   nil,   nil,   687,   464,   nil,   nil,   688,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,
+   689,   471,   nil,   nil,   690,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,   153,
+   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
+   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
+   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
+   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   717,   464,
+   nil,   nil,   718,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   173,   174,   170,   169,   151,   152,   153,   160,   157,
+   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
+   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
+   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
+   nil,   177,   nil,   nil,   nil,   nil,   720,   471,   nil,   nil,
+   721,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
+   174,   170,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
+   nil,   nil,   nil,   nil,   687,   464,   nil,   nil,   688,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
+   nil,   nil,   689,   471,   nil,   nil,   690,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,
+   754,   464,   nil,   nil,   755,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,   153,
+   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
+   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
+   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
+   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   756,   471,
+   nil,   nil,   757,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   173,   174,   170,   169,   151,   152,   153,   160,   157,
+   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
+   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
+   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
+   nil,   177,   nil,   nil,   nil,   nil,   759,   471,   nil,   nil,
+   760,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
+   174,   170,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
+   nil,   nil,   nil,   nil,   512,   464,   nil,   nil,   513,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
+   nil,   nil,   808,   464,   nil,   nil,   809,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,
+   811,   471,   nil,   nil,   810,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,   153,
+   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
+   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
+   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
+   149,   nil,   619,   177,   616,   615,   614,   624,   617,   619,
+   nil,   616,   615,   614,   624,   617,   nil,   nil,   627,   nil,
+   nil,   nil,   nil,   170,   nil,   627,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   622,   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   632,
+   631,   635,   634,   nil,   nil,   nil,   632,   631,   635,   634,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1065,   471,   nil,
+   nil,  1064,   nil,   nil,   nil,   628,   nil,   nil,   nil,   nil,
+   173,   174,   628,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,  1068,   464,   nil,   nil,  1069,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,  1070,   471,   nil,   nil,  1071,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   619,   177,   616,   615,   614,
+   624,   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   627,   nil,   nil,   nil,   nil,   170,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   632,   631,   635,   634,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628 ]
+
+racc_action_check = [
+   112,   395,   353,   476,   476,   361,   712,   112,   112,   112,
+   362,   354,   112,   112,   112,   717,   112,   365,   940,    17,
+    17,   712,   945,   408,   112,    29,   112,   112,   112,   586,
+    22,   996,   238,   411,     1,   239,   112,   112,    27,   112,
+   112,   112,   112,   112,   754,    27,   565,   352,   352,   565,
+   997,    92,   718,   755,   872,   772,   576,   720,   566,    92,
+     3,   566,   395,   395,   395,   873,    22,   112,   112,   112,
+   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
+   112,  1000,   717,   112,   112,   112,   408,   112,   112,   238,
+    29,   112,   239,   476,   112,   112,   411,   112,    65,   112,
+    13,   112,    27,   112,   112,   112,   112,   112,   112,   112,
+   361,   112,    29,   112,    15,   362,   353,   717,  1038,   718,
+   717,   353,   365,   720,   720,   354,   112,   112,   112,   112,
+   354,   112,   940,   112,   586,   717,   945,   940,   112,   115,
+  1068,   945,   112,  1069,   112,   996,   115,   115,   115,   754,
+   996,   115,   115,   115,   718,   115,   576,   718,   755,   720,
+   772,   576,   720,   115,   997,   115,   115,   115,   872,   997,
+   873,   872,   718,   872,  1080,   115,   115,   720,   115,   115,
+   115,   115,   115,  1070,   847,    65,  1071,   756,   696,   757,
+   380,   694,   727,   727,   841,  1000,   381,   380,   382,    20,
+  1000,   771,   771,   381,    16,   382,   115,   115,   115,   115,
+   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
+    44,    44,   115,   115,   115,   694,   115,   115,   841,   728,
+   115,   329,  1038,   115,   115,   728,   115,  1038,   115,    18,
+   115,    20,   115,   115,   115,   115,   115,   115,   115,   241,
+   115,   847,   115,   756,  1068,   757,    20,  1069,   648,  1068,
+   651,  1070,  1069,    25,  1071,   115,   115,   115,   115,   444,
+   115,   466,   115,    40,   482,   696,   687,   115,   466,   466,
+   466,   115,   727,   115,   466,   466,   847,   466,  1080,   847,
+   774,   771,   756,  1080,   757,    41,   329,  1070,    44,    44,
+  1071,   774,  1070,   688,   847,  1071,   241,   466,   466,   808,
+   466,   466,   466,   466,   466,   334,   334,   383,   329,   648,
+   648,   651,   651,    43,   383,   530,   444,     5,   648,    49,
+   651,   482,     5,   687,   774,   774,   369,    41,   466,   466,
+   466,   466,   466,   466,   466,   466,   466,   466,   466,   466,
+   466,   466,    41,    99,   466,   466,   466,    19,   466,   371,
+   688,   809,   466,   371,    19,   466,   808,   370,   774,  1005,
+   466,  1005,   466,    19,   466,   466,   466,   466,   466,   466,
+   466,   978,   466,    50,   466,   100,   530,   530,   530,   369,
+    50,    42,   978,   334,   334,   338,   369,   466,   466,    50,
+   466,   369,   466,   467,   830,   369,   530,   916,   101,   466,
+   467,   467,   467,   466,   102,   466,   467,   467,   809,   467,
+   370,    19,   384,   369,   138,   978,   978,   370,   467,   384,
+   397,   488,   370,    42,   237,   219,   370,   338,   402,   467,
+   467,   237,   467,   467,   467,   467,   467,    50,    42,   321,
+   237,   385,   338,   369,   370,   386,   321,   405,   385,   978,
+   240,   830,   386,   488,   916,   321,   570,   488,   488,   570,
+   467,   467,   467,   467,   467,   467,   467,   467,   467,   467,
+   467,   467,   467,   467,   370,   242,   467,   467,   467,   322,
+   467,   397,   397,   397,   467,   243,   322,   467,   237,   402,
+   402,   402,   467,   413,   467,   322,   467,   467,   467,   467,
+   467,   467,   467,   321,   467,   467,   467,   460,   405,   405,
+   405,   247,   782,   281,   782,   782,   782,   782,   782,   467,
+   467,   296,   467,   387,   467,   297,   323,   388,   782,   390,
+   387,   467,   689,   323,   388,   467,   390,   467,   300,   689,
+   689,   689,   323,   322,   689,   689,   689,   489,   689,   460,
+   782,    47,    47,   314,   413,   413,   413,   689,   689,   689,
+   689,   782,   782,   860,   460,   759,   860,  1010,   689,   689,
+  1010,   689,   689,   689,   689,   689,   308,   316,   325,   489,
+   317,   308,   340,   489,   489,   325,    47,    47,   399,   340,
+   323,   399,   358,   318,   325,   782,   324,   358,   340,   689,
+   689,   689,   689,   689,   689,   689,   689,   689,   689,   689,
+   689,   689,   689,   597,   597,   689,   689,   689,   759,   689,
+   689,   742,   742,   689,   461,   759,   689,   689,   327,   689,
+   759,   689,   328,   689,   759,   689,   689,   689,   689,   689,
+   689,   689,   325,   689,   689,   689,   340,   333,   140,   399,
+   399,   765,   759,   140,   140,   335,   765,   363,   689,   689,
+   689,   689,   671,   689,   363,   689,   461,   877,   777,   777,
+   689,   690,   877,   363,   689,   339,   689,   342,   690,   690,
+   690,   461,   759,   690,   690,   690,   393,   690,   393,   393,
+   393,   393,   393,   373,  1039,  1039,   882,   690,   690,   690,
+   373,   882,   393,   348,   671,   359,   360,   690,   690,   373,
+   690,   690,   690,   690,   690,   364,   366,   375,   401,   671,
+   404,   363,   407,   410,   393,   393,   622,   433,   622,   622,
+   622,   436,   622,   393,   393,   393,   393,   438,   690,   690,
+   690,   690,   690,   690,   690,   690,   690,   690,   690,   690,
+   690,   690,   441,   455,   690,   690,   690,   373,   690,   690,
+   458,   459,   690,   468,   622,   690,   690,   478,   690,   393,
+   690,   490,   690,   622,   690,   690,   690,   690,   690,   690,
+   690,   491,   690,   492,   690,   605,   493,   605,   605,   605,
+   605,   605,     9,     9,     9,     9,     9,   690,   690,   690,
+   690,   605,   690,   810,   690,   509,   516,   520,   536,   690,
+   810,   810,   810,   690,   537,   690,   810,   810,   538,   810,
+   443,   547,   541,   605,   543,   548,   551,   443,   547,   560,
+   561,   589,   605,   605,   605,   605,   443,   547,   589,   810,
+   810,   721,   810,   810,   810,   810,   810,   589,   721,   760,
+   562,   567,   568,   721,   571,   573,   760,   721,   577,   578,
+   905,   760,   905,   905,   905,   760,   905,   579,   605,   580,
+   810,   810,   810,   810,   810,   810,   810,   810,   810,   810,
+   810,   810,   810,   810,   443,   547,   810,   810,   810,   599,
+   810,   607,   608,   610,   810,   589,   611,   810,   905,   612,
+   621,   503,   810,   629,   810,   721,   810,   810,   810,   810,
+   810,   810,   810,   760,   810,   768,   810,   768,   768,   768,
+   768,   768,   790,   633,   790,   790,   790,   636,   790,   810,
+   810,   768,   810,   503,   810,   811,   655,   503,   503,   503,
+   503,   810,   811,   811,   811,   810,   658,   810,   811,   811,
+   664,   811,   991,   768,   312,   312,   312,   312,   312,   991,
+   811,   672,   768,   768,   768,   768,   998,   677,   991,   683,
+   691,   811,   811,   998,   811,   811,   811,   811,   811,   796,
+   796,  1030,   998,   796,   796,   796,   692,   695,  1030,   699,
+   786,   701,   786,   786,   786,   703,   786,  1030,   768,   705,
+   714,   716,   811,   811,   811,   811,   811,   811,   811,   811,
+   811,   811,   811,   811,   811,   811,   991,   719,   811,   811,
+   811,   904,   811,   904,   904,   904,   811,   904,   786,   811,
+   998,   722,   723,   494,   811,   726,   811,   786,   811,   811,
+   811,   811,   811,   811,   811,  1030,   811,   811,   811,   494,
+   494,   961,   744,   961,   961,   961,   750,   961,   753,   904,
+   762,   811,   811,   766,   811,   494,   811,   494,   904,   494,
+   494,   494,   494,   811,    30,   773,   788,   811,   789,   811,
+   791,    30,    30,    30,   803,   805,    30,    30,    30,   769,
+    30,   769,   769,   769,   769,   769,   504,   807,   815,    30,
+    30,    30,   839,   846,   856,   769,   857,   861,   867,   874,
+    30,    30,   876,    30,    30,    30,    30,    30,  1018,   880,
+  1018,  1018,  1018,   881,  1018,   888,   889,   769,   504,   890,
+   894,   895,   504,   504,   504,   504,   769,   769,   769,   769,
+   897,    30,    30,    30,    30,    30,    30,    30,    30,    30,
+    30,    30,    30,    30,    30,   898,  1018,    30,    30,    30,
+   900,   903,    30,   913,    30,    30,   915,   922,    30,    30,
+   923,    30,   769,    30,   925,    30,   926,    30,    30,    30,
+    30,    30,    30,    30,   927,    30,    30,    30,   778,   929,
+   778,   778,   778,   778,   778,   347,   347,   347,   347,   347,
+    30,    30,   930,    30,   778,    30,    31,   535,   535,   535,
+   535,   535,    30,    31,    31,    31,    30,   931,    31,    31,
+    31,   958,    31,   508,   959,  1019,   778,  1019,  1019,  1019,
+   960,  1019,    31,    31,   975,   778,   778,   778,   778,   508,
+   508,   976,    31,    31,   989,    31,    31,    31,    31,    31,
+  1047,   992,  1047,  1047,  1047,   508,  1047,   508,   994,   508,
+   508,   508,   508,  1019,   999,   508,  1006,   508,  1014,  1015,
+  1016,   778,  1017,    31,    31,    31,    31,    31,    31,    31,
+    31,    31,    31,    31,    31,    31,    31,  1020,  1023,    31,
+    31,    31,  1024,  1025,    31,  1026,    31,    31,  1028,  1034,
+    31,    31,  1045,    31,  1053,    31,  1064,    31,  1065,    31,
+    31,    31,    31,    31,    31,    31,  1067,    31,  1075,    31,
+   780,  1076,   780,   780,   780,   780,   780,  1077,  1078,  1079,
+  1087,   nil,    31,    31,   nil,    31,   780,    31,    60,   nil,
+   nil,   nil,   nil,   nil,    31,    60,    60,    60,    31,   nil,
+    60,    60,    60,   nil,    60,   557,   nil,   nil,   780,   nil,
+   nil,   nil,   nil,   nil,    60,    60,    60,   780,   780,   780,
+   780,   557,   557,   nil,    60,    60,   nil,    60,    60,    60,
+    60,    60,   nil,   nil,   nil,   nil,   nil,   557,   nil,   557,
+   nil,   557,   557,   557,   557,   nil,   nil,   557,   nil,   557,
+   nil,   nil,   nil,   780,   nil,    60,    60,    60,    60,    60,
+    60,    60,    60,    60,    60,    60,    60,    60,    60,   nil,
+   nil,    60,    60,    60,   nil,   nil,    60,   nil,   nil,    60,
+   nil,   nil,    60,    60,   nil,    60,   nil,    60,   nil,    60,
+   nil,    60,    60,    60,    60,    60,    60,    60,   nil,    60,
+   nil,    60,   834,   nil,   834,   834,   834,   834,   834,   nil,
+   nil,   nil,   nil,   nil,    60,    60,    60,    60,   834,    60,
+   462,    60,   nil,   nil,   nil,   nil,    60,   462,   462,   462,
+    60,   nil,   462,   462,   462,   nil,   462,   495,   nil,   nil,
+   834,   nil,   nil,   nil,   nil,   462,   462,   462,   nil,   834,
+   834,   834,   834,   495,   495,   nil,   462,   462,   nil,   462,
+   462,   462,   462,   462,   nil,   nil,   nil,   nil,   nil,   495,
+   nil,   495,   nil,   495,   495,   495,   495,   834,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   834,   nil,   462,   462,   462,
+   462,   462,   462,   462,   462,   462,   462,   462,   462,   462,
+   462,   nil,   nil,   462,   462,   462,   nil,   nil,   462,   nil,
+   462,   462,   nil,   nil,   462,   462,   nil,   462,   nil,   462,
+   nil,   462,   nil,   462,   462,   462,   462,   462,   462,   462,
+   nil,   462,   462,   462,   964,   nil,   964,   964,   964,   964,
+   964,   nil,   nil,   nil,   nil,   nil,   462,   462,   nil,   462,
+   964,   462,   471,   nil,   nil,   nil,   nil,   nil,   462,   471,
+   471,   471,   462,   nil,   471,   471,   471,   nil,   471,   496,
+   nil,   nil,   964,   nil,   nil,   nil,   nil,   471,   471,   471,
+   471,   964,   964,   964,   964,   496,   496,   nil,   471,   471,
+   nil,   471,   471,   471,   471,   471,   nil,   nil,   nil,   nil,
+   nil,   496,   nil,   nil,   nil,   496,   496,   496,   496,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,   nil,   471,
+   471,   471,   471,   471,   471,   471,   471,   471,   471,   471,
+   471,   471,   471,   nil,   nil,   471,   471,   471,   nil,   nil,
+   471,   nil,   nil,   471,   nil,   nil,   471,   471,   nil,   471,
+   nil,   471,   nil,   471,   nil,   471,   471,   471,   471,   471,
+   471,   471,   nil,   471,   471,   471,   966,   nil,   966,   966,
+   966,   966,   966,   nil,   nil,   nil,   nil,   nil,   471,   471,
+   471,   471,   966,   471,   472,   471,   nil,   nil,   nil,   nil,
+   471,   472,   472,   472,   471,   nil,   472,   472,   472,   nil,
+   472,   nil,   nil,   nil,   966,   nil,   nil,   nil,   nil,   472,
+   472,   472,   472,   nil,   nil,   966,   966,   nil,   nil,   nil,
+   472,   472,   nil,   472,   472,   472,   472,   472,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   966,
+   nil,   472,   472,   472,   472,   472,   472,   472,   472,   472,
+   472,   472,   472,   472,   472,   nil,   nil,   472,   472,   472,
+   nil,   nil,   472,   nil,   nil,   472,   nil,   nil,   472,   472,
+   nil,   472,   nil,   472,   nil,   472,   nil,   472,   472,   472,
+   472,   472,   472,   472,   nil,   472,   472,   472,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   472,   472,   472,   472,   nil,   472,   511,   472,   nil,   nil,
+   nil,   nil,   472,   511,   511,   511,   472,   nil,   511,   511,
+   511,   nil,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   511,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   511,   511,   nil,   511,   511,   511,   511,   511,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   278,   278,   nil,
+   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   278,   278,   nil,   278,   278,   278,   278,   278,   278,   278,
+   nil,   nil,   278,   278,   511,   nil,   nil,   278,   278,   278,
+   278,   511,   nil,   nil,   nil,   nil,   511,   511,   nil,   nil,
+   nil,   nil,   nil,   nil,   278,   278,   nil,   278,   278,   278,
+   278,   278,   278,   278,   278,   278,   278,   278,   511,   511,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   511,   nil,   nil,   nil,   nil,   511,   nil,   nil,
+   278,   nil,   nil,   nil,   511,   nil,   nil,   nil,   511,     2,
+     2,     2,     2,     2,     2,   nil,   nil,   nil,     2,     2,
+   nil,   nil,   nil,     2,   nil,     2,     2,     2,     2,     2,
+     2,     2,   nil,   nil,   nil,   nil,   nil,     2,     2,     2,
+     2,     2,     2,     2,   nil,   nil,     2,   nil,   nil,   nil,
+   nil,   448,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,   nil,     2,     2,     2,   nil,     2,
+     2,   nil,     2,     2,     2,   448,   448,   448,   448,   448,
+   448,   448,   448,   448,   448,   448,   nil,   448,   448,   nil,
+   nil,   448,   448,   nil,     2,   nil,   nil,     2,   nil,   nil,
+     2,     2,   nil,   nil,     2,   nil,     2,   448,   nil,   448,
+     2,   448,   448,   448,   448,   448,   448,   448,     2,   448,
+   nil,   nil,   nil,     2,     2,     2,     2,     2,     2,   nil,
+   nil,   nil,     2,     2,   nil,   448,   nil,   448,   nil,   nil,
+     2,   nil,   nil,     2,     2,     2,   nil,     2,     2,    36,
+    36,    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,
+   nil,   nil,   nil,    36,   nil,    36,    36,    36,    36,    36,
+    36,    36,   nil,   nil,   nil,   nil,   nil,    36,    36,    36,
+    36,    36,    36,    36,   nil,   nil,    36,   nil,   nil,   nil,
+   nil,   454,    36,    36,    36,    36,    36,    36,    36,    36,
+    36,    36,    36,    36,   nil,    36,    36,    36,   nil,    36,
+    36,   nil,    36,    36,    36,   454,   454,   454,   454,   454,
+   454,   454,   454,   454,   454,   454,   nil,   454,   454,   nil,
+   nil,   454,   454,   nil,    36,   nil,   nil,    36,   nil,   nil,
+    36,    36,   nil,   nil,    36,   nil,    36,   454,   nil,   454,
+    36,   454,   454,   454,   454,   454,   454,   454,    36,   454,
+   nil,   nil,   nil,    36,    36,    36,    36,    36,    36,   nil,
+   nil,   nil,    36,    36,   nil,   454,   nil,   nil,   nil,   nil,
+    36,   nil,   nil,    36,    36,    36,   nil,    36,    36,   221,
+   221,   221,   221,   221,   221,   nil,   nil,   nil,   221,   221,
+   nil,   nil,   nil,   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,   221,   221,   221,   221,   221,   221,   221,   221,
+   221,   221,   221,   221,   nil,   221,   221,   221,   nil,   221,
+   221,   nil,   221,   221,   221,    24,    24,    24,    24,    24,
+    24,    24,    24,    24,    24,    24,   nil,    24,    24,   nil,
+   nil,    24,    24,   nil,   221,   nil,   nil,   221,   nil,   nil,
+   221,   221,   nil,   nil,   221,   nil,   221,    24,   nil,    24,
+   221,    24,    24,    24,    24,    24,    24,    24,   221,    24,
+   nil,   nil,   nil,   221,   221,   221,   221,   221,   221,   nil,
+   nil,   nil,   221,   221,   nil,    24,   nil,   nil,   nil,   nil,
+   221,   nil,   nil,   221,   221,   221,   nil,   221,   221,   246,
+   246,   246,   246,   246,   246,   nil,   nil,   nil,   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,   246,   246,   246,   246,   246,   246,   246,   246,
+   246,   246,   246,   246,   nil,   246,   246,   246,   nil,   246,
+   246,   nil,   246,   246,   246,   294,   294,   294,   294,   294,
+   294,   294,   294,   294,   294,   294,   nil,   294,   294,   nil,
+   nil,   294,   294,   nil,   246,   nil,   nil,   246,   nil,   nil,
+   246,   246,   nil,   nil,   246,   nil,   246,   294,   nil,   294,
+   246,   294,   294,   294,   294,   294,   294,   294,   246,   294,
+   nil,   nil,   nil,   246,   246,   246,   246,   246,   246,   nil,
+   nil,   nil,   246,   246,   nil,   294,   nil,   nil,   nil,   nil,
+   246,   nil,   nil,   246,   246,   246,   nil,   246,   246,   315,
+   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,   315,
+   nil,   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,   315,   315,   315,   315,   315,   315,   315,   315,
+   315,   315,   315,   315,   nil,   315,   315,   315,   nil,   315,
+   315,   nil,   315,   315,   315,   507,   507,   507,   507,   507,
+   507,   507,   507,   507,   507,   507,   nil,   507,   507,   nil,
+   nil,   507,   507,   nil,   315,   nil,   nil,   315,   nil,   nil,
+   315,   315,   nil,   nil,   315,   nil,   315,   507,   nil,   507,
+   315,   507,   507,   507,   507,   507,   507,   507,   315,   507,
+   nil,   nil,   nil,   315,   315,   315,   315,   315,   315,   nil,
+   nil,   nil,   315,   315,   507,   507,   nil,   nil,   nil,   nil,
+   315,   nil,   nil,   315,   315,   315,   nil,   315,   315,   320,
+   320,   320,   320,   320,   320,   nil,   nil,   nil,   320,   320,
+   nil,   nil,   nil,   320,   nil,   320,   320,   320,   320,   320,
+   320,   320,   nil,   nil,   nil,   nil,   nil,   320,   320,   320,
+   320,   320,   320,   320,   nil,   nil,   320,   nil,   nil,   nil,
+   nil,   nil,   320,   320,   320,   320,   320,   320,   320,   320,
+   320,   320,   320,   320,   nil,   320,   320,   320,   nil,   320,
+   320,   nil,   320,   320,   320,   558,   558,   558,   558,   558,
+   558,   558,   558,   558,   558,   558,   nil,   558,   558,   nil,
+   nil,   558,   558,   nil,   320,   nil,   nil,   320,   nil,   nil,
+   320,   320,   nil,   nil,   320,   nil,   320,   558,   nil,   558,
+   320,   558,   558,   558,   558,   558,   558,   558,   320,   558,
+   nil,   nil,   nil,   320,   320,   320,   320,   320,   320,   nil,
+   nil,   nil,   320,   320,   nil,   558,   nil,   nil,   nil,   nil,
+   320,   nil,   nil,   320,   320,   320,   nil,   320,   320,   346,
+   346,   346,   346,   346,   346,   nil,   nil,   nil,   346,   346,
+   nil,   nil,   nil,   346,   nil,   346,   346,   346,   346,   346,
+   346,   346,   nil,   nil,   nil,   nil,   nil,   346,   346,   346,
+   346,   346,   346,   346,   nil,   nil,   346,   nil,   nil,   nil,
+   nil,   nil,   346,   346,   346,   346,   346,   346,   346,   346,
+   346,   346,   346,   346,   nil,   346,   346,   346,   nil,   346,
+   346,   nil,   346,   346,   346,   812,   812,   812,   812,   812,
+   812,   812,   812,   812,   812,   812,   nil,   812,   812,   nil,
+   nil,   812,   812,   nil,   346,   nil,   nil,   346,   nil,   nil,
+   346,   346,   nil,   nil,   346,   nil,   346,   812,   nil,   812,
+   346,   812,   812,   812,   812,   812,   812,   812,   346,   812,
+   nil,   nil,   nil,   346,   346,   346,   346,   346,   346,   nil,
+   nil,   nil,   346,   346,   nil,   812,   nil,   nil,   nil,   nil,
+   346,   nil,   nil,   346,   346,   346,   nil,   346,   346,   356,
+   356,   356,   356,   356,   356,   nil,   nil,   nil,   356,   356,
+   nil,   nil,   nil,   356,   nil,   356,   356,   356,   356,   356,
+   356,   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,
+   356,   356,   356,   356,   nil,   nil,   356,   nil,   nil,   nil,
+   nil,   nil,   356,   356,   356,   356,   356,   356,   356,   356,
+   356,   356,   356,   356,   nil,   356,   356,   356,   nil,   356,
+   356,   nil,   356,   356,   356,   921,   921,   921,   921,   921,
+   921,   921,   921,   921,   921,   921,   nil,   921,   921,   nil,
+   nil,   921,   921,   nil,   356,   nil,   nil,   356,   nil,   nil,
+   356,   356,   nil,   nil,   356,   nil,   356,   921,   nil,   921,
+   356,   921,   921,   921,   921,   921,   921,   921,   356,   921,
+   nil,   nil,   nil,   356,   356,   356,   356,   356,   356,   nil,
+   nil,   nil,   356,   356,   nil,   921,   nil,   nil,   nil,   nil,
+   356,   nil,   nil,   356,   356,   356,   nil,   356,   356,   357,
+   357,   357,   357,   357,   357,   nil,   nil,   nil,   357,   357,
+   nil,   nil,   nil,   357,   nil,   357,   357,   357,   357,   357,
+   357,   357,   nil,   nil,   nil,   nil,   nil,   357,   357,   357,
+   357,   357,   357,   357,   nil,   nil,   357,   nil,   nil,   nil,
+   nil,   nil,   357,   357,   357,   357,   357,   357,   357,   357,
+   357,   357,   357,   357,   nil,   357,   357,   357,   nil,   357,
+   357,   nil,   357,   357,   357,   486,   486,   486,   486,   486,
+   486,   486,   486,   486,   486,   486,   nil,   486,   486,   nil,
+   nil,   486,   486,   nil,   357,   nil,   nil,   357,   nil,   nil,
+   357,   357,   nil,   nil,   357,   nil,   357,   486,   nil,   486,
+   357,   486,   486,   486,   486,   486,   486,   486,   357,   486,
+   nil,   nil,   nil,   357,   357,   357,   357,   357,   357,   nil,
+   nil,   nil,   357,   357,   nil,   nil,   nil,   nil,   nil,   nil,
+   357,   nil,   nil,   357,   357,   357,   nil,   357,   357,   572,
+   572,   572,   572,   572,   572,   nil,   nil,   nil,   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,   572,   572,   572,   572,   572,   572,
+   572,   572,   572,   572,   nil,   572,   572,   572,   nil,   572,
+   572,   nil,   572,   572,   572,   487,   487,   487,   487,   487,
+   487,   487,   487,   487,   487,   487,   nil,   487,   487,   nil,
+   nil,   487,   487,   nil,   572,   nil,   nil,   572,   nil,   nil,
+   572,   572,   nil,   nil,   572,   nil,   572,   487,   nil,   487,
+   572,   487,   487,   487,   487,   487,   487,   487,   572,   487,
+   nil,   nil,   nil,   572,   572,   572,   572,   572,   572,   nil,
+   nil,   nil,   572,   572,   nil,   nil,   nil,   nil,   nil,   nil,
+   572,   nil,   nil,   572,   572,   572,   nil,   572,   572,   575,
+   575,   575,   575,   575,   575,   nil,   nil,   nil,   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,   575,   575,   575,   575,   575,   575,   575,   575,
+   575,   575,   575,   575,   nil,   575,   575,   575,   nil,   575,
+   575,   nil,   575,   575,   575,   497,   497,   497,   497,   497,
+   497,   497,   nil,   nil,   497,   497,   nil,   nil,   nil,   nil,
+   nil,   497,   497,   nil,   575,   nil,   nil,   575,   nil,   nil,
+   575,   575,   nil,   nil,   575,   nil,   575,   497,   nil,   497,
+   575,   497,   497,   497,   497,   497,   497,   497,   575,   497,
+   nil,   nil,   nil,   575,   575,   575,   575,   575,   575,   nil,
+   nil,   nil,   575,   575,   nil,   nil,   nil,   nil,   nil,   nil,
+   575,   nil,   nil,   575,   575,   575,   nil,   575,   575,   598,
+   598,   598,   598,   598,   598,   nil,   nil,   nil,   598,   598,
+   nil,   nil,   nil,   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,   598,   598,   598,   598,   598,   598,   598,   598,
+   598,   598,   598,   598,   nil,   598,   598,   598,   nil,   598,
+   598,   nil,   598,   598,   598,   498,   498,   498,   498,   498,
+   498,   498,   nil,   nil,   498,   498,   nil,   nil,   nil,   nil,
+   nil,   498,   498,   nil,   598,   nil,   nil,   598,   nil,   nil,
+   598,   598,   nil,   nil,   598,   nil,   598,   498,   nil,   498,
+   598,   498,   498,   498,   498,   498,   498,   498,   598,   498,
+   nil,   nil,   nil,   598,   598,   598,   598,   598,   598,   nil,
+   nil,   nil,   598,   598,   nil,   nil,   nil,   nil,   nil,   nil,
+   598,   nil,   nil,   598,   598,   598,   nil,   598,   598,   660,
+   660,   660,   660,   660,   660,   nil,   nil,   nil,   660,   660,
+   nil,   nil,   nil,   660,   nil,   660,   660,   660,   660,   660,
+   660,   660,   nil,   nil,   nil,   nil,   nil,   660,   660,   660,
+   660,   660,   660,   660,   nil,   nil,   660,   nil,   nil,   nil,
+   nil,   nil,   660,   660,   660,   660,   660,   660,   660,   660,
+   660,   660,   660,   660,   nil,   660,   660,   660,   nil,   660,
+   660,   nil,   660,   660,   660,   499,   499,   499,   499,   499,
+   499,   499,   nil,   nil,   499,   499,   nil,   nil,   nil,   nil,
+   nil,   499,   499,   nil,   660,   nil,   nil,   660,   nil,   nil,
+   660,   660,   nil,   nil,   660,   nil,   660,   499,   nil,   499,
+   660,   499,   499,   499,   499,   499,   499,   499,   660,   499,
+   nil,   nil,   nil,   660,   660,   660,   660,   660,   660,   nil,
+   nil,   nil,   660,   660,   nil,   nil,   nil,   nil,   nil,   nil,
+   660,   nil,   nil,   660,   660,   660,   nil,   660,   660,   758,
+   758,   758,   758,   758,   758,   nil,   nil,   nil,   758,   758,
+   nil,   nil,   nil,   758,   nil,   758,   758,   758,   758,   758,
+   758,   758,   nil,   nil,   nil,   nil,   nil,   758,   758,   758,
+   758,   758,   758,   758,   nil,   nil,   758,   nil,   nil,   nil,
+   nil,   nil,   758,   758,   758,   758,   758,   758,   758,   758,
+   758,   758,   758,   758,   nil,   758,   758,   758,   nil,   758,
+   758,   nil,   758,   758,   758,   500,   500,   500,   500,   500,
+   500,   500,   nil,   nil,   500,   500,   nil,   nil,   nil,   nil,
+   nil,   500,   500,   nil,   758,   nil,   nil,   758,   nil,   nil,
+   758,   758,   nil,   nil,   758,   nil,   758,   500,   nil,   500,
+   758,   500,   500,   500,   500,   500,   500,   500,   758,   500,
+   nil,   nil,   nil,   758,   758,   758,   758,   758,   758,   nil,
+   nil,   nil,   758,   758,   nil,   nil,   nil,   nil,   nil,   nil,
+   758,   nil,   nil,   758,   758,   758,   nil,   758,   758,   763,
+   763,   763,   763,   763,   763,   nil,   nil,   nil,   763,   763,
+   nil,   nil,   nil,   763,   nil,   763,   763,   763,   763,   763,
+   763,   763,   nil,   nil,   nil,   nil,   nil,   763,   763,   763,
+   763,   763,   763,   763,   nil,   nil,   763,   nil,   nil,   nil,
+   nil,   nil,   763,   763,   763,   763,   763,   763,   763,   763,
+   763,   763,   763,   763,   nil,   763,   763,   763,   nil,   763,
+   763,   nil,   763,   763,   763,   501,   501,   501,   501,   501,
+   501,   501,   nil,   nil,   501,   501,   nil,   nil,   nil,   nil,
+   nil,   501,   501,   nil,   763,   nil,   nil,   763,   nil,   nil,
+   763,   763,   nil,   nil,   763,   nil,   763,   501,   nil,   501,
+   763,   501,   501,   501,   501,   501,   501,   501,   763,   501,
+   nil,   nil,   nil,   763,   763,   763,   763,   763,   763,   nil,
+   nil,   nil,   763,   763,   nil,   nil,   nil,   nil,   nil,   nil,
+   763,   nil,   nil,   763,   763,   763,   nil,   763,   763,   767,
+   767,   767,   767,   767,   767,   nil,   nil,   nil,   767,   767,
+   nil,   nil,   nil,   767,   nil,   767,   767,   767,   767,   767,
+   767,   767,   nil,   nil,   nil,   nil,   nil,   767,   767,   767,
+   767,   767,   767,   767,   nil,   nil,   767,   nil,   nil,   nil,
+   nil,   nil,   767,   767,   767,   767,   767,   767,   767,   767,
+   767,   767,   767,   767,   nil,   767,   767,   767,   nil,   767,
+   767,   nil,   767,   767,   767,   502,   502,   502,   502,   502,
+   502,   502,   nil,   nil,   502,   502,   nil,   nil,   nil,   nil,
+   nil,   502,   502,   nil,   767,   nil,   nil,   767,   nil,   nil,
+   767,   767,   nil,   nil,   767,   nil,   767,   502,   nil,   502,
+   767,   502,   502,   502,   502,   502,   502,   502,   767,   502,
+   nil,   nil,   nil,   767,   767,   767,   767,   767,   767,   nil,
+   nil,   nil,   767,   767,   nil,   nil,   nil,   nil,   nil,   nil,
+   767,   nil,   nil,   767,   767,   767,   nil,   767,   767,   797,
+   797,   797,   797,   797,   797,   nil,   nil,   nil,   797,   797,
+   nil,   nil,   nil,   797,   nil,   797,   797,   797,   797,   797,
+   797,   797,   nil,   nil,   nil,   nil,   nil,   797,   797,   797,
+   797,   797,   797,   797,   nil,   nil,   797,   nil,   nil,   nil,
+   nil,   nil,   797,   797,   797,   797,   797,   797,   797,   797,
+   797,   797,   797,   797,   nil,   797,   797,   797,   nil,   797,
+   797,   nil,   797,   797,   797,   505,   505,   505,   505,   505,
+   505,   505,   nil,   nil,   505,   505,   nil,   nil,   nil,   nil,
+   nil,   505,   505,   nil,   797,   nil,   nil,   797,   nil,   nil,
+   797,   797,   nil,   nil,   797,   nil,   797,   505,   nil,   505,
+   797,   505,   505,   505,   505,   505,   505,   505,   797,   505,
+   nil,   nil,   nil,   797,   797,   797,   797,   797,   797,   nil,
+   nil,   nil,   797,   797,   nil,   nil,   nil,   nil,   nil,   nil,
+   797,   nil,   nil,   797,   797,   797,   nil,   797,   797,   836,
+   836,   836,   836,   836,   836,   nil,   nil,   nil,   836,   836,
+   nil,   nil,   nil,   836,   nil,   836,   836,   836,   836,   836,
+   836,   836,   nil,   nil,   nil,   nil,   nil,   836,   836,   836,
+   836,   836,   836,   836,   nil,   nil,   836,   nil,   nil,   nil,
+   nil,   nil,   836,   836,   836,   836,   836,   836,   836,   836,
+   836,   836,   836,   836,   nil,   836,   836,   836,   nil,   836,
+   836,   nil,   836,   836,   836,   506,   506,   506,   506,   506,
+   506,   506,   506,   nil,   506,   506,   nil,   nil,   nil,   nil,
+   nil,   506,   506,   nil,   836,   nil,   nil,   836,   nil,   nil,
+   836,   836,   nil,   nil,   836,   nil,   836,   506,   nil,   506,
+   836,   506,   506,   506,   506,   506,   506,   506,   836,   506,
+   nil,   nil,   nil,   836,   836,   836,   836,   836,   836,   nil,
+   nil,   nil,   836,   836,   nil,   nil,   nil,   nil,   nil,   nil,
+   836,   nil,   nil,   836,   836,   836,   nil,   836,   836,   854,
+   854,   854,   854,   854,   854,   nil,   nil,   nil,   854,   854,
+   nil,   nil,   nil,   854,   nil,   854,   854,   854,   854,   854,
+   854,   854,   nil,   nil,   nil,   nil,   nil,   854,   854,   854,
+   854,   854,   854,   854,   nil,   nil,   854,   nil,   nil,   nil,
+   nil,   nil,   854,   854,   854,   854,   854,   854,   854,   854,
+   854,   854,   854,   854,   nil,   854,   854,   854,   nil,   854,
+   854,   nil,   854,   854,   854,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   854,   nil,   nil,   854,   nil,   nil,
+   854,   854,   nil,   nil,   854,   nil,   854,   nil,   nil,   nil,
+   854,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   854,   nil,
+   nil,   nil,   nil,   854,   854,   854,   854,   854,   854,   nil,
+   nil,   nil,   854,   854,   nil,   nil,   nil,   nil,   nil,   nil,
+   854,   nil,   nil,   854,   854,   854,   nil,   854,   854,   866,
+   866,   866,   866,   866,   866,   nil,   nil,   nil,   866,   866,
+   nil,   nil,   nil,   866,   nil,   866,   866,   866,   866,   866,
+   866,   866,   nil,   nil,   nil,   nil,   nil,   866,   866,   866,
+   866,   866,   866,   866,   nil,   nil,   866,   nil,   nil,   nil,
+   nil,   nil,   866,   866,   866,   866,   866,   866,   866,   866,
+   866,   866,   866,   866,   nil,   866,   866,   866,   nil,   866,
+   866,   nil,   866,   866,   866,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   866,   nil,   nil,   866,   nil,   nil,
+   866,   866,   nil,   nil,   866,   nil,   866,   nil,   nil,   nil,
+   866,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   866,   nil,
+   nil,   nil,   nil,   866,   866,   866,   866,   866,   866,   nil,
+   nil,   nil,   866,   866,   nil,   nil,   nil,   nil,   nil,   nil,
+   866,   nil,   nil,   866,   866,   866,   nil,   866,   866,   886,
+   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,   886,   886,   886,   886,   886,   886,
+   886,   886,   886,   886,   nil,   886,   886,   886,   nil,   886,
+   886,   nil,   886,   886,   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,   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,   nil,   nil,   nil,
+   886,   nil,   nil,   886,   886,   886,   nil,   886,   886,   887,
+   887,   887,   887,   887,   887,   nil,   nil,   nil,   887,   887,
+   nil,   nil,   nil,   887,   nil,   887,   887,   887,   887,   887,
+   887,   887,   nil,   nil,   nil,   nil,   nil,   887,   887,   887,
+   887,   887,   887,   887,   nil,   nil,   887,   nil,   nil,   nil,
+   nil,   nil,   887,   887,   887,   887,   887,   887,   887,   887,
+   887,   887,   887,   887,   nil,   887,   887,   887,   nil,   887,
+   887,   nil,   887,   887,   887,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   887,   nil,   nil,   887,   nil,   nil,
+   887,   887,   nil,   nil,   887,   nil,   887,   nil,   nil,   nil,
+   887,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   887,   nil,
+   nil,   nil,   nil,   887,   887,   887,   887,   887,   887,   nil,
+   nil,   nil,   887,   887,   nil,   nil,   nil,   nil,   nil,   nil,
+   887,   nil,   nil,   887,   887,   887,   nil,   887,   887,   937,
+   937,   937,   937,   937,   937,   nil,   nil,   nil,   937,   937,
+   nil,   nil,   nil,   937,   nil,   937,   937,   937,   937,   937,
+   937,   937,   nil,   nil,   nil,   nil,   nil,   937,   937,   937,
+   937,   937,   937,   937,   nil,   nil,   937,   nil,   nil,   nil,
+   nil,   nil,   937,   937,   937,   937,   937,   937,   937,   937,
+   937,   937,   937,   937,   nil,   937,   937,   937,   nil,   937,
+   937,   nil,   937,   937,   937,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   937,   nil,   nil,   937,   nil,   nil,
+   937,   937,   nil,   nil,   937,   nil,   937,   nil,   nil,   nil,
+   937,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   937,   nil,
+   nil,   nil,   nil,   937,   937,   937,   937,   937,   937,   nil,
+   nil,   nil,   937,   937,   nil,   nil,   nil,   nil,   nil,   nil,
+   937,   nil,   nil,   937,   937,   937,   nil,   937,   937,   938,
+   938,   938,   938,   938,   938,   nil,   nil,   nil,   938,   938,
+   nil,   nil,   nil,   938,   nil,   938,   938,   938,   938,   938,
+   938,   938,   nil,   nil,   nil,   nil,   nil,   938,   938,   938,
+   938,   938,   938,   938,   nil,   nil,   938,   nil,   nil,   nil,
+   nil,   nil,   938,   938,   938,   938,   938,   938,   938,   938,
+   938,   938,   938,   938,   nil,   938,   938,   938,   nil,   938,
+   938,   nil,   938,   938,   938,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   938,   nil,   nil,   938,   nil,   nil,
+   938,   938,   nil,   nil,   938,   nil,   938,   nil,   nil,   nil,
+   938,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   938,   nil,
+   nil,   nil,   nil,   938,   938,   938,   938,   938,   938,   nil,
+   nil,   nil,   938,   938,   nil,   nil,   nil,   nil,   nil,   nil,
+   938,   nil,   nil,   938,   938,   938,   nil,   938,   938,   950,
+   950,   950,   950,   950,   950,   nil,   nil,   nil,   950,   950,
+   nil,   nil,   nil,   950,   nil,   950,   950,   950,   950,   950,
+   950,   950,   nil,   nil,   nil,   nil,   nil,   950,   950,   950,
+   950,   950,   950,   950,   nil,   nil,   950,   nil,   nil,   nil,
+   nil,   nil,   950,   950,   950,   950,   950,   950,   950,   950,
+   950,   950,   950,   950,   nil,   950,   950,   950,   nil,   950,
+   950,   nil,   950,   950,   950,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   950,   nil,   nil,   950,   nil,   nil,
+   950,   950,   nil,   nil,   950,   nil,   950,   nil,   nil,   nil,
+   950,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   950,   nil,
+   nil,   nil,   nil,   950,   950,   950,   950,   950,   950,   nil,
+   nil,   nil,   950,   950,   nil,   nil,   nil,   nil,   nil,   nil,
+   950,   nil,   nil,   950,   950,   950,   nil,   950,   950,   954,
+   954,   954,   954,   954,   954,   nil,   nil,   nil,   954,   954,
+   nil,   nil,   nil,   954,   nil,   954,   954,   954,   954,   954,
+   954,   954,   nil,   nil,   nil,   nil,   nil,   954,   954,   954,
+   954,   954,   954,   954,   nil,   nil,   954,   nil,   nil,   nil,
+   nil,   nil,   954,   954,   954,   954,   954,   954,   954,   954,
+   954,   954,   954,   954,   nil,   954,   954,   954,   nil,   954,
+   954,   nil,   954,   954,   954,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   954,   nil,   nil,   954,   nil,   nil,
+   954,   954,   nil,   nil,   954,   nil,   954,   nil,   nil,   nil,
+   954,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   954,   nil,
+   nil,   nil,   nil,   954,   954,   954,   954,   954,   954,   nil,
+   nil,   nil,   954,   954,   nil,   nil,   nil,   nil,   nil,   nil,
+   954,   nil,   nil,   954,   954,   954,   nil,   954,   954,   995,
+   995,   995,   995,   995,   995,   nil,   nil,   nil,   995,   995,
+   nil,   nil,   nil,   995,   nil,   995,   995,   995,   995,   995,
+   995,   995,   nil,   nil,   nil,   nil,   nil,   995,   995,   995,
+   995,   995,   995,   995,   nil,   nil,   995,   nil,   nil,   nil,
+   nil,   nil,   995,   995,   995,   995,   995,   995,   995,   995,
+   995,   995,   995,   995,   nil,   995,   995,   995,   nil,   995,
+   995,   nil,   995,   995,   995,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   995,   nil,   nil,   995,   nil,   nil,
+   995,   995,   nil,   nil,   995,   nil,   995,   nil,   nil,   nil,
+   995,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   995,   nil,
+   nil,   nil,   nil,   995,   995,   995,   995,   995,   995,   nil,
+   nil,   nil,   995,   995,   nil,   nil,   nil,   nil,   nil,   nil,
+   995,   nil,   nil,   995,   995,   995,   nil,   995,   995,  1002,
+  1002,  1002,  1002,  1002,  1002,   nil,   nil,   nil,  1002,  1002,
+   nil,   nil,   nil,  1002,   nil,  1002,  1002,  1002,  1002,  1002,
+  1002,  1002,   nil,   nil,   nil,   nil,   nil,  1002,  1002,  1002,
+  1002,  1002,  1002,  1002,   nil,   nil,  1002,   nil,   nil,   nil,
+   nil,   nil,  1002,  1002,  1002,  1002,  1002,  1002,  1002,  1002,
+  1002,  1002,  1002,  1002,   nil,  1002,  1002,  1002,   nil,  1002,
+  1002,   nil,  1002,  1002,  1002,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1002,   nil,   nil,  1002,   nil,   nil,
+  1002,  1002,   nil,   nil,  1002,   nil,  1002,   nil,   nil,   nil,
+  1002,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1002,   nil,
+   nil,   nil,   nil,  1002,  1002,  1002,  1002,  1002,  1002,   nil,
+   nil,   nil,  1002,  1002,   nil,   nil,   nil,   nil,   nil,   nil,
+  1002,   nil,   nil,  1002,  1002,  1002,   nil,  1002,  1002,  1007,
+  1007,  1007,  1007,  1007,  1007,   nil,   nil,   nil,  1007,  1007,
+   nil,   nil,   nil,  1007,   nil,  1007,  1007,  1007,  1007,  1007,
+  1007,  1007,   nil,   nil,   nil,   nil,   nil,  1007,  1007,  1007,
+  1007,  1007,  1007,  1007,   nil,   nil,  1007,   nil,   nil,   nil,
+   nil,   nil,  1007,  1007,  1007,  1007,  1007,  1007,  1007,  1007,
+  1007,  1007,  1007,  1007,   nil,  1007,  1007,  1007,   nil,  1007,
+  1007,   nil,  1007,  1007,  1007,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1007,   nil,   nil,  1007,   nil,   nil,
+  1007,  1007,   nil,   nil,  1007,   nil,  1007,   nil,   nil,   nil,
+  1007,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1007,   nil,
+   nil,   nil,   nil,  1007,  1007,  1007,  1007,  1007,  1007,   nil,
+   nil,   nil,  1007,  1007,   nil,   nil,   nil,   nil,   nil,   nil,
+  1007,   nil,   nil,  1007,  1007,  1007,   nil,  1007,  1007,     8,
+     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
+   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
+     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
+   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
+     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
+   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
+   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
+   nil,   nil,     8,     8,     8,   nil,     8,     8,    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,   nil,    23,    23,    23,    23,    23,
+    23,    23,   nil,   nil,    23,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,    23,    23,    23,    23,    23,    23,
+    23,    23,   nil,    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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,    23,    23,    23,   nil,    23,    23,    32,    32,    32,
+   nil,    32,   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,
+    32,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
+   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,
+    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+    32,   nil,   nil,    32,    32,    32,    32,    32,    32,    32,
+    32,    32,    32,    32,    32,   nil,    32,    32,   nil,    32,
+    32,    32,   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,    32,    32,   nil,
+   nil,    32,   nil,    32,   nil,    32,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,    32,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,
+    32,    32,    32,   nil,    32,    32,    33,    33,    33,   nil,
+    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,
+   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
+   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
+   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,
+   nil,   nil,    33,    33,    33,    33,    33,    33,    33,    33,
+    33,    33,    33,    33,   nil,    33,    33,   nil,    33,    33,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,
+    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
+    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,
+   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,
+    33,    33,   nil,    33,    33,    34,    34,    34,   nil,    34,
+   nil,   nil,   nil,    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,    34,
+    34,    34,    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,    34,
+    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,    34,
+    34,   nil,    34,    34,    37,    37,    37,   nil,    37,   nil,
+   nil,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,    37,
+    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,   nil,
+   nil,    37,    37,    37,    37,    37,    37,    37,   nil,   nil,
+    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,
+    37,    37,    37,    37,    37,    37,    37,    37,   nil,    37,
+    37,    37,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,
+   nil,   nil,   nil,   nil,   968,   nil,   968,   968,   968,   968,
+   968,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
+   968,    37,   nil,   nil,    37,    37,   nil,   nil,    37,   nil,
+    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   968,   nil,   nil,   nil,   nil,    37,    37,    37,
+    37,    37,    37,   968,   968,   nil,    37,    37,   nil,   nil,
+   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,    37,
+   nil,    37,    37,    38,    38,    38,   nil,    38,   nil,   nil,
+   nil,    38,    38,   nil,   nil,   nil,    38,   968,    38,    38,
+    38,    38,    38,    38,    38,   nil,   nil,   nil,   nil,   nil,
+    38,    38,    38,    38,    38,    38,    38,   nil,   nil,    38,
+   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,
+    38,    38,    38,    38,    38,    38,    38,   nil,    38,    38,
+    38,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   970,   nil,   970,   970,   970,   970,   970,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   970,
+    38,   nil,   nil,    38,    38,   nil,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   970,   nil,   nil,   nil,   nil,    38,    38,    38,    38,
+    38,    38,   970,   970,   nil,    38,    38,   nil,   nil,   nil,
+    38,   nil,   nil,    38,   nil,   nil,    38,    38,    38,   nil,
+    38,    38,    45,    45,    45,   nil,    45,   nil,   nil,   nil,
+    45,    45,   nil,   nil,   nil,    45,   970,    45,    45,    45,
+    45,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,    45,
+    45,    45,    45,    45,    45,    45,   nil,   nil,    45,   nil,
+   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,
+    45,    45,    45,    45,    45,    45,   nil,    45,    45,    45,
+   nil,    45,    45,   nil,    45,    45,    45,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
+   nil,   nil,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
+   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    45,   nil,   nil,   nil,   nil,    45,    45,    45,    45,    45,
+    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,
+   nil,   nil,    45,   nil,   nil,    45,    45,    45,   nil,    45,
+    45,    46,    46,    46,   nil,    46,   nil,   nil,   nil,    46,
+    46,   nil,   nil,   nil,    46,   nil,    46,    46,    46,    46,
+    46,    46,    46,   nil,   nil,   nil,   nil,   nil,    46,    46,
+    46,    46,    46,    46,    46,   nil,   nil,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,    46,
+    46,    46,    46,    46,    46,   nil,    46,    46,    46,   nil,
+    46,    46,   nil,    46,    46,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,   nil,
+   nil,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,
+   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,   nil,   nil,    46,    46,    46,    46,    46,    46,
+   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,    46,   nil,   nil,    46,    46,    46,   nil,    46,    46,
+    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,    48,
+   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,    48,
+    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,    48,
+    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,    48,
+    48,    48,    48,    48,   nil,    48,    48,    48,   nil,    48,
+    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,
+    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,   nil,
+   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,    48,    48,    48,   nil,    48,    48,    62,
+    62,    62,    62,    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,    62,    62,   nil,    62,    62,    62,    62,    62,    62,
+    62,    62,    62,   nil,    62,    62,    62,   nil,    62,    62,
+   nil,    62,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    62,   nil,   nil,    62,   nil,   nil,    62,
+    62,   nil,   nil,    62,   nil,    62,   nil,   nil,   nil,    62,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,
+   nil,   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,
+   nil,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,    62,
+   nil,   nil,    62,    62,    62,   nil,    62,    62,    67,    67,
+    67,   nil,    67,   nil,   nil,   nil,    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,    67,   nil,   nil,   nil,
+   nil,    67,    67,    67,    67,    67,    67,   nil,   nil,   nil,
+    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,    67,    67,    67,   nil,    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,    68,
+    68,    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,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,
+    68,    68,    68,    68,    68,    68,   nil,   nil,   nil,    68,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+    68,    68,    68,   nil,    68,    68,    71,    71,    71,   nil,
+    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
+   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
+   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
+   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
+   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
+   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
+    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
+    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
+    71,    71,   nil,    71,    71,    72,    72,    72,   nil,    72,
+   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
+    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
+   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
+    72,    72,    72,   nil,    72,    72,   nil,   nil,   nil,    72,
+   nil,   nil,   nil,   nil,   nil,   986,   nil,   986,   986,   986,
+   986,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
+   nil,   986,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   986,   nil,   nil,   nil,   nil,    72,    72,
+    72,    72,    72,    72,   986,   986,   nil,    72,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
+    72,   nil,    72,    72,    73,    73,    73,   nil,    73,   nil,
+   nil,   nil,    73,    73,   nil,   nil,   nil,    73,   986,    73,
+    73,    73,    73,    73,    73,    73,   nil,   nil,   nil,   nil,
+   nil,    73,    73,    73,    73,    73,    73,    73,   nil,   nil,
+    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,
+    73,    73,    73,    73,    73,    73,    73,    73,   nil,    73,
+    73,    73,   nil,    73,    73,   nil,   nil,   nil,    73,   nil,
+   nil,   nil,   nil,   nil,  1048,   nil,  1048,  1048,  1048,  1048,
+  1048,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
+  1048,    73,   nil,   nil,    73,    73,   nil,   nil,    73,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1048,   nil,   nil,   nil,   nil,    73,    73,    73,
+    73,    73,    73,  1048,  1048,   nil,    73,    73,   nil,   nil,
+   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
+   nil,    73,    73,    74,    74,    74,   nil,    74,   nil,   nil,
+   nil,    74,    74,   nil,   nil,   nil,    74,  1048,    74,    74,
+    74,    74,    74,    74,    74,   nil,   nil,   nil,   nil,   nil,
+    74,    74,    74,    74,    74,    74,    74,   nil,   nil,    74,
+   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,   nil,    74,
+    74,    74,    74,    74,    74,    74,    74,   nil,    74,    74,
+    74,   nil,    74,    74,   nil,   nil,   nil,    74,   nil,   nil,
+   nil,   nil,   nil,  1057,   nil,  1057,  1057,  1057,  1057,  1057,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,  1057,
+    74,   nil,   nil,    74,    74,   nil,   nil,    74,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1057,   nil,   nil,   nil,   nil,    74,    74,    74,    74,
+    74,    74,  1057,  1057,   nil,    74,    74,   nil,   nil,   nil,
+   nil,   nil,   nil,    74,   nil,   nil,    74,    74,    74,   nil,
+    74,    74,   128,   128,   128,   128,   128,   nil,   nil,   nil,
+   128,   128,   nil,   nil,   nil,   128,  1057,   128,   128,   128,
+   128,   128,   128,   128,   nil,   nil,   nil,   nil,   nil,   128,
+   128,   128,   128,   128,   128,   128,   nil,   nil,   128,   nil,
+   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,   128,
+   128,   128,   128,   128,   128,   128,   nil,   128,   128,   128,
+   nil,   128,   128,   nil,   128,   128,   128,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,   nil,   128,
+   nil,   nil,   128,   128,   nil,   nil,   128,   nil,   128,   nil,
+   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   128,   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,
+   128,   nil,   nil,   nil,   128,   128,   nil,   nil,   nil,   nil,
+   nil,   128,   128,   nil,   nil,   128,   128,   128,   nil,   128,
+   128,   133,   133,   133,   nil,   133,   nil,   nil,   nil,   133,
+   133,   nil,   nil,   nil,   133,   nil,   133,   133,   133,   133,
+   133,   133,   133,   nil,   nil,   nil,   nil,   nil,   133,   133,
+   133,   133,   133,   133,   133,   nil,   nil,   133,   nil,   nil,
+   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,
+   133,   133,   133,   133,   133,   nil,   133,   133,   133,   nil,
+   133,   133,   nil,   133,   133,   133,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   nil,
+   nil,   133,   133,   nil,   nil,   133,   nil,   nil,   nil,   nil,
+   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,
+   nil,   nil,   nil,   nil,   133,   133,   133,   133,   133,   133,
+   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,   nil,   nil,
+   nil,   133,   nil,   nil,   133,   133,   133,   nil,   133,   133,
+   134,   134,   134,   nil,   134,   nil,   nil,   nil,   134,   134,
+   nil,   nil,   nil,   134,   nil,   134,   134,   134,   134,   134,
+   134,   134,   nil,   nil,   nil,   nil,   nil,   134,   134,   134,
+   134,   134,   134,   134,   nil,   nil,   134,   nil,   nil,   nil,
+   nil,   nil,   nil,   134,   nil,   nil,   134,   134,   134,   134,
+   134,   134,   134,   134,   nil,   134,   134,   134,   nil,   134,
+   134,   nil,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   nil,   nil,
+   134,   134,   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,
+   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,
+   nil,   nil,   nil,   134,   134,   134,   134,   134,   134,   nil,
+   nil,   nil,   134,   134,   nil,   nil,   nil,   nil,   nil,   nil,
+   134,   nil,   nil,   134,   134,   134,   nil,   134,   134,   135,
+   135,   135,   nil,   135,   nil,   nil,   nil,   135,   135,   nil,
+   nil,   nil,   135,   nil,   135,   135,   135,   135,   135,   135,
+   135,   nil,   nil,   nil,   nil,   nil,   135,   135,   135,   135,
+   135,   135,   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,
+   nil,   nil,   135,   nil,   nil,   135,   135,   135,   135,   135,
+   135,   135,   135,   nil,   135,   135,   135,   nil,   135,   135,
+   nil,   135,   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   135,   nil,   nil,   135,   nil,   nil,   135,
+   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,   nil,   135,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
+   nil,   nil,   135,   135,   135,   135,   135,   135,   nil,   nil,
+   nil,   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,   135,
+   nil,   nil,   135,   135,   135,   nil,   135,   135,   136,   136,
+   136,   nil,   136,   nil,   nil,   nil,   136,   136,   nil,   nil,
+   nil,   136,   nil,   136,   136,   136,   136,   136,   136,   136,
+   nil,   nil,   nil,   nil,   nil,   136,   136,   136,   136,   136,
+   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
+   nil,   136,   nil,   nil,   136,   136,   136,   136,   136,   136,
+   136,   136,   nil,   136,   136,   136,   nil,   136,   136,   nil,
+   136,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,   136,   136,
+   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,   136,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,   nil,
+   nil,   136,   136,   136,   136,   136,   136,   nil,   nil,   nil,
+   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
+   nil,   136,   136,   136,   nil,   136,   136,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
+   137,   nil,   137,   137,   137,   137,   137,   137,   137,   nil,
+   nil,   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,
+   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   137,
+   137,   nil,   137,   137,   137,   137,   137,   137,   137,   137,
+   137,   nil,   137,   137,   137,   nil,   137,   137,   nil,   137,
+   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   137,   nil,   nil,   137,   nil,   nil,   137,   137,   nil,
+   nil,   137,   nil,   137,   nil,   nil,   nil,   137,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,
+   137,   137,   137,   137,   137,   137,   nil,   nil,   nil,   137,
+   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
+   137,   137,   137,   nil,   137,   137,   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,   nil,   222,   222,   222,   222,   222,   222,   222,
+   nil,   nil,   222,   nil,   nil,   nil,   nil,   nil,   nil,   222,
+   nil,   nil,   222,   222,   222,   222,   222,   222,   222,   222,
+   nil,   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,   222,   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,   nil,   nil,   nil,   222,   nil,   nil,   222,
+   222,   222,   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,   nil,   223,   223,   223,   223,   223,   223,   223,   nil,
+   nil,   223,   nil,   nil,   nil,   nil,   nil,   nil,   223,   nil,
+   nil,   223,   223,   223,   223,   223,   223,   223,   223,   nil,
+   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,   223,   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,   nil,   nil,   nil,   223,   nil,   nil,   223,   223,
+   223,   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,
+   nil,   224,   224,   224,   224,   224,   224,   224,   nil,   nil,
+   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,
+   224,   224,   224,   224,   224,   224,   224,   224,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,   224,   224,
+   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,   nil,
+   225,   225,   225,   225,   225,   225,   225,   nil,   nil,   225,
+   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,   225,
+   225,   225,   225,   225,   225,   225,   225,   nil,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   225,   nil,   nil,   225,   225,   225,   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,   nil,   226,
+   226,   226,   226,   226,   226,   226,   nil,   nil,   226,   nil,
+   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
+   226,   226,   226,   226,   226,   226,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   226,   nil,   nil,   226,   226,   226,   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,   nil,   227,   227,
+   227,   227,   227,   227,   227,   nil,   nil,   227,   nil,   nil,
+   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,   227,   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,   227,   nil,   227,
+   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,   nil,   nil,
+   nil,   227,   nil,   227,   227,   227,   227,   nil,   227,   227,
+   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,   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,   232,   nil,
+   nil,   nil,   nil,   232,   232,   232,   232,   232,   232,   nil,
+   nil,   nil,   232,   232,   nil,   nil,   nil,   nil,   nil,   nil,
+   232,   nil,   nil,   232,   232,   232,   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,   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,   233,   nil,   nil,
+   nil,   nil,   233,   233,   233,   233,   233,   233,   nil,   nil,
+   nil,   233,   233,   nil,   nil,   nil,   nil,   nil,   nil,   233,
+   nil,   nil,   233,   233,   233,   nil,   233,   233,   234,   234,
+   234,   nil,   234,   nil,   nil,   nil,   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,   234,   nil,   nil,   nil,
+   nil,   234,   234,   234,   234,   234,   234,   nil,   nil,   nil,
+   234,   234,   234,   nil,   nil,   nil,   nil,   nil,   234,   nil,
+   nil,   234,   234,   234,   nil,   234,   234,   245,   245,   245,
+   nil,   245,   nil,   nil,   nil,   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,   245,   nil,   nil,   nil,   nil,
+   245,   245,   245,   245,   245,   245,   nil,   nil,   nil,   245,
+   245,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   245,   245,   245,   nil,   245,   245,   248,   248,   248,   nil,
+   248,   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,   nil,   248,
+   248,   248,   248,   248,   248,   nil,   nil,   nil,   248,   248,
+   nil,   nil,   nil,   nil,   nil,   nil,   248,   nil,   nil,   248,
+   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,   nil,   nil,   249,   249,
+   249,   249,   249,   249,   nil,   nil,   nil,   249,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   249,   249,
+   249,   nil,   249,   249,   250,   250,   250,   nil,   250,   nil,
+   nil,   nil,   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,   250,   nil,   nil,   nil,   nil,   250,   250,   250,
+   250,   250,   250,   nil,   nil,   nil,   250,   250,   nil,   nil,
+   nil,   nil,   nil,   nil,   250,   nil,   nil,   250,   250,   250,
+   nil,   250,   250,   251,   251,   251,   nil,   251,   nil,   nil,
+   nil,   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,   251,   nil,   nil,   nil,   nil,   251,   251,   251,   251,
+   251,   251,   nil,   nil,   nil,   251,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,   251,   nil,   nil,   251,   251,   251,   nil,
+   251,   251,   252,   252,   252,   nil,   252,   nil,   nil,   nil,
+   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,
+   252,   nil,   nil,   nil,   nil,   252,   252,   252,   252,   252,
+   252,   nil,   nil,   nil,   252,   252,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   252,   252,   252,   nil,   252,
+   252,   253,   253,   253,   nil,   253,   nil,   nil,   nil,   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,   253,
+   nil,   nil,   nil,   nil,   253,   253,   253,   253,   253,   253,
+   nil,   nil,   nil,   253,   253,   nil,   nil,   nil,   nil,   nil,
+   nil,   253,   nil,   nil,   253,   253,   253,   nil,   253,   253,
+   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,   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,   254,   nil,
+   nil,   nil,   nil,   254,   254,   254,   254,   254,   254,   nil,
+   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,   nil,   nil,
+   254,   nil,   nil,   254,   254,   254,   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,   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,   255,   nil,   nil,
+   nil,   nil,   255,   255,   255,   255,   255,   255,   nil,   nil,
+   nil,   255,   255,   nil,   nil,   nil,   nil,   nil,   nil,   255,
+   nil,   nil,   255,   255,   255,   nil,   255,   255,   256,   256,
+   256,   nil,   256,   nil,   nil,   nil,   256,   256,   nil,   nil,
+   nil,   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,   256,   256,   256,   256,
+   256,   256,   nil,   256,   256,   256,   nil,   256,   256,   nil,
+   256,   256,   256,   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,   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,   nil,   nil,   nil,   256,   nil,
+   nil,   256,   256,   256,   nil,   256,   256,   257,   257,   257,
+   nil,   257,   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,
+   257,   nil,   257,   257,   257,   257,   257,   257,   257,   nil,
+   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,   257,
+   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   257,   257,   257,   257,   257,   257,   257,
+   257,   nil,   257,   257,   257,   nil,   257,   257,   nil,   257,
+   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   257,   nil,   nil,   257,   257,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   257,   257,   257,   257,   257,   257,   nil,   nil,   nil,   257,
+   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   257,   257,   257,   nil,   257,   257,   258,   258,   258,   nil,
+   258,   nil,   nil,   nil,   258,   258,   nil,   nil,   nil,   258,
+   nil,   258,   258,   258,   258,   258,   258,   258,   nil,   nil,
+   nil,   nil,   nil,   258,   258,   258,   258,   258,   258,   258,
+   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,
+   nil,   nil,   258,   258,   258,   258,   258,   258,   258,   258,
+   nil,   258,   258,   258,   nil,   258,   258,   nil,   258,   258,
+   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   258,   nil,   nil,   258,   nil,   nil,   258,   258,   nil,   nil,
+   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,   258,
+   258,   258,   258,   258,   258,   nil,   nil,   nil,   258,   258,
+   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,
+   258,   258,   nil,   258,   258,   259,   259,   259,   nil,   259,
+   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,   259,   nil,
+   259,   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,
+   nil,   nil,   259,   259,   259,   259,   259,   259,   259,   nil,
+   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,
+   nil,   259,   259,   259,   259,   259,   259,   259,   259,   nil,
+   259,   259,   259,   nil,   259,   259,   nil,   259,   259,   259,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   259,
+   nil,   nil,   259,   nil,   nil,   259,   259,   nil,   nil,   259,
+   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,   259,   259,
+   259,   259,   259,   259,   nil,   nil,   nil,   259,   259,   nil,
+   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,   259,
+   259,   nil,   259,   259,   260,   260,   260,   nil,   260,   nil,
+   nil,   nil,   260,   260,   nil,   nil,   nil,   260,   nil,   260,
+   260,   260,   260,   260,   260,   260,   nil,   nil,   nil,   nil,
+   nil,   260,   260,   260,   260,   260,   260,   260,   nil,   nil,
+   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,
+   260,   260,   260,   260,   260,   260,   260,   260,   nil,   260,
+   260,   260,   nil,   260,   260,   nil,   260,   260,   260,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,
+   nil,   260,   nil,   nil,   260,   260,   nil,   nil,   260,   nil,
+   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   260,   nil,   nil,   nil,   nil,   260,   260,   260,
+   260,   260,   260,   nil,   nil,   nil,   260,   260,   nil,   nil,
+   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,   260,   260,
+   nil,   260,   260,   261,   261,   261,   nil,   261,   nil,   nil,
+   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,   nil,   261,   261,
+   261,   nil,   261,   261,   nil,   261,   261,   261,   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,   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,
+   nil,   nil,   nil,   261,   nil,   nil,   261,   261,   261,   nil,
+   261,   261,   262,   262,   262,   nil,   262,   nil,   nil,   nil,
+   262,   262,   nil,   nil,   nil,   262,   nil,   262,   262,   262,
+   262,   262,   262,   262,   nil,   nil,   nil,   nil,   nil,   262,
+   262,   262,   262,   262,   262,   262,   nil,   nil,   262,   nil,
+   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,
+   262,   262,   262,   262,   262,   262,   nil,   262,   262,   262,
+   nil,   262,   262,   nil,   262,   262,   262,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,
+   nil,   nil,   262,   262,   nil,   nil,   262,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   262,   nil,   nil,   nil,   nil,   262,   262,   262,   262,   262,
+   262,   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   262,   262,   262,   nil,   262,
+   262,   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,   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,   nil,   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,   nil,   nil,   nil,
+   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   263,   nil,   nil,   263,   263,   263,   nil,   263,   263,
+   264,   264,   264,   nil,   264,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,
+   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   264,   nil,
+   nil,   nil,   nil,   264,   264,   264,   264,   264,   264,   nil,
+   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,   nil,   nil,
+   264,   nil,   nil,   264,   264,   264,   nil,   264,   264,   265,
+   265,   265,   nil,   265,   nil,   nil,   nil,   265,   265,   nil,
+   nil,   nil,   265,   nil,   265,   265,   265,   265,   265,   265,
+   265,   nil,   nil,   nil,   nil,   nil,   265,   265,   265,   265,
+   265,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   265,   265,   265,   265,   265,
+   265,   265,   265,   nil,   265,   265,   265,   nil,   265,   265,
+   nil,   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,   265,
+   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   265,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,
+   nil,   nil,   265,   265,   265,   265,   265,   265,   nil,   nil,
+   nil,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,
+   nil,   nil,   265,   265,   265,   nil,   265,   265,   266,   266,
+   266,   nil,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,
+   nil,   266,   nil,   266,   266,   266,   266,   266,   266,   266,
+   nil,   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,
+   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   266,   266,   266,   266,   266,   266,
+   266,   266,   nil,   266,   266,   266,   nil,   266,   266,   nil,
+   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,   266,   266,
+   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,
+   nil,   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,
+   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
+   nil,   266,   266,   266,   nil,   266,   266,   267,   267,   267,
+   nil,   267,   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,
+   267,   nil,   267,   267,   267,   267,   267,   267,   267,   nil,
+   nil,   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,
+   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,
+   267,   nil,   nil,   267,   267,   267,   267,   267,   267,   267,
+   267,   nil,   267,   267,   267,   nil,   267,   267,   nil,   267,
+   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   267,   nil,   nil,   267,   nil,   nil,   267,   267,   nil,
+   nil,   267,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,   nil,
+   267,   267,   267,   267,   267,   267,   nil,   nil,   nil,   267,
+   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   267,   267,   267,   nil,   267,   267,   268,   268,   268,   nil,
+   268,   nil,   nil,   nil,   268,   268,   nil,   nil,   nil,   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,   268,   268,   268,   268,   268,   268,
+   nil,   268,   268,   268,   nil,   268,   268,   nil,   268,   268,
+   268,   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,   268,   nil,   nil,
+   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,   268,
+   268,   268,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,   269,   nil,
+   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,   269,   nil,
+   nil,   269,   269,   269,   269,   269,   269,   269,   269,   nil,
+   269,   269,   269,   nil,   269,   269,   nil,   269,   269,   269,
+   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,   269,   nil,   nil,   269,
+   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,   269,   269,
+   269,   nil,   269,   269,   274,   274,   274,   nil,   274,   nil,
+   nil,   nil,   274,   274,   nil,   nil,   nil,   274,   nil,   274,
+   274,   274,   274,   274,   274,   274,   nil,   nil,   nil,   nil,
+   nil,   274,   274,   274,   274,   274,   274,   274,   nil,   nil,
+   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,
+   274,   274,   274,   274,   274,   274,   274,   274,   nil,   274,
+   274,   274,   nil,   274,   274,   nil,   274,   274,   274,   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,   274,   274,   nil,   nil,   274,   nil,
+   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,   274,   274,
+   274,   274,   274,   nil,   nil,   nil,   274,   274,   nil,   nil,
+   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,   274,
+   nil,   274,   274,   282,   282,   282,   nil,   282,   nil,   nil,
+   nil,   282,   282,   nil,   nil,   nil,   282,   nil,   282,   282,
+   282,   282,   282,   282,   282,   nil,   nil,   nil,   nil,   nil,
+   282,   282,   282,   282,   282,   282,   282,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   282,
+   282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
+   282,   nil,   282,   282,   nil,   282,   282,   282,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
+   282,   nil,   nil,   282,   282,   nil,   nil,   282,   nil,   282,
+   nil,   282,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   282,   nil,   nil,   nil,   nil,   282,   282,   282,   282,
+   282,   282,   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   282,   282,   282,   282,   nil,
+   282,   282,   283,   283,   283,   nil,   283,   nil,   nil,   nil,
+   283,   283,   nil,   nil,   nil,   283,   nil,   283,   283,   283,
+   283,   283,   283,   283,   nil,   nil,   nil,   nil,   nil,   283,
+   283,   283,   283,   283,   283,   283,   nil,   nil,   283,   nil,
+   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,   283,
+   283,   283,   283,   283,   283,   283,   283,   283,   283,   283,
+   nil,   283,   283,   nil,   283,   283,   283,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,
+   nil,   nil,   283,   283,   nil,   nil,   283,   nil,   283,   nil,
+   283,   nil,   283,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   283,   nil,   nil,   nil,   nil,   283,   283,   283,   283,   283,
+   283,   nil,   nil,   nil,   283,   283,   nil,   nil,   nil,   nil,
+   nil,   nil,   283,   nil,   283,   283,   283,   283,   nil,   283,
+   283,   292,   292,   292,   nil,   292,   nil,   nil,   nil,   292,
+   292,   nil,   nil,   nil,   292,   nil,   292,   292,   292,   292,
+   292,   292,   292,   nil,   nil,   nil,   nil,   nil,   292,   292,
+   292,   292,   292,   292,   292,   nil,   nil,   292,   nil,   nil,
+   nil,   nil,   nil,   nil,   292,   nil,   nil,   292,   292,   292,
+   292,   292,   292,   292,   292,   292,   292,   292,   292,   nil,
+   292,   292,   nil,   292,   292,   292,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,   292,   nil,
+   nil,   292,   292,   nil,   nil,   292,   nil,   292,   nil,   292,
+   nil,   292,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   292,
+   nil,   nil,   nil,   nil,   292,   292,   292,   292,   292,   292,
+   nil,   nil,   nil,   292,   292,   292,   nil,   nil,   nil,   nil,
+   nil,   292,   nil,   292,   292,   292,   292,   nil,   292,   292,
+   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,   nil,   299,   299,   299,
+   299,   299,   299,   299,   nil,   nil,   299,   nil,   nil,   nil,
+   nil,   nil,   nil,   299,   nil,   nil,   299,   299,   299,   299,
+   299,   299,   299,   299,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   299,   nil,   nil,   299,   299,   299,   nil,   299,   299,   301,
+   301,   301,   nil,   301,   nil,   nil,   nil,   301,   301,   nil,
+   nil,   nil,   301,   nil,   301,   301,   301,   301,   301,   301,
+   301,   nil,   nil,   nil,   nil,   nil,   301,   301,   301,   301,
+   301,   301,   301,   nil,   nil,   301,   nil,   nil,   nil,   nil,
+   nil,   nil,   301,   nil,   nil,   301,   301,   301,   301,   301,
+   301,   301,   301,   nil,   301,   301,   301,   nil,   301,   301,
+   nil,   301,   301,   301,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   301,   nil,   nil,   301,   nil,   nil,   301,
+   301,   nil,   nil,   301,   nil,   nil,   nil,   nil,   nil,   301,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,
+   nil,   nil,   301,   301,   301,   301,   301,   301,   nil,   nil,
+   nil,   301,   301,   nil,   nil,   nil,   nil,   nil,   nil,   301,
+   nil,   nil,   301,   301,   301,   nil,   301,   301,   304,   304,
+   304,   nil,   304,   nil,   nil,   nil,   304,   304,   nil,   nil,
+   nil,   304,   nil,   304,   304,   304,   304,   304,   304,   304,
+   nil,   nil,   nil,   nil,   nil,   304,   304,   304,   304,   304,
+   304,   304,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
+   nil,   304,   nil,   nil,   304,   304,   304,   304,   304,   304,
+   304,   304,   nil,   304,   304,   304,   nil,   304,   304,   nil,
+   304,   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   304,   nil,   nil,   304,   nil,   nil,   304,   304,
+   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,
+   nil,   304,   304,   304,   304,   304,   304,   nil,   nil,   nil,
+   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   304,   304,   304,   nil,   304,   304,   305,   305,   305,
+   nil,   305,   nil,   nil,   nil,   305,   305,   nil,   nil,   nil,
+   305,   nil,   305,   305,   305,   305,   305,   305,   305,   nil,
+   nil,   nil,   nil,   nil,   305,   305,   305,   305,   305,   305,
+   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,   nil,   nil,
+   305,   nil,   nil,   305,   305,   305,   305,   305,   305,   305,
+   305,   nil,   305,   305,   305,   nil,   305,   305,   nil,   305,
+   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   305,   nil,   nil,   305,   nil,   nil,   305,   305,   nil,
+   nil,   305,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,   nil,   nil,
+   305,   305,   305,   305,   305,   305,   nil,   nil,   nil,   305,
+   305,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
+   305,   305,   305,   nil,   305,   305,   311,   311,   311,   311,
+   311,   nil,   nil,   nil,   311,   311,   nil,   nil,   nil,   311,
+   nil,   311,   311,   311,   311,   311,   311,   311,   nil,   nil,
+   nil,   nil,   nil,   311,   311,   311,   311,   311,   311,   311,
+   nil,   nil,   311,   nil,   nil,   nil,   nil,   nil,   311,   311,
+   nil,   311,   311,   311,   311,   311,   311,   311,   311,   311,
+   nil,   311,   311,   311,   nil,   311,   311,   nil,   311,   311,
+   311,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   311,   nil,   nil,   311,   nil,   nil,   311,   311,   nil,   nil,
+   311,   nil,   311,   nil,   nil,   nil,   311,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   311,   nil,   nil,   nil,   nil,   311,
+   311,   311,   311,   311,   311,   nil,   nil,   nil,   311,   311,
+   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,   nil,   311,
+   311,   311,   nil,   311,   311,   319,   319,   319,   nil,   319,
+   nil,   nil,   nil,   319,   319,   nil,   nil,   nil,   319,   nil,
+   319,   319,   319,   319,   319,   319,   319,   nil,   nil,   nil,
+   nil,   nil,   319,   319,   319,   319,   319,   319,   319,   nil,
+   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,   319,   nil,
+   nil,   319,   319,   319,   319,   319,   319,   319,   319,   nil,
+   319,   319,   319,   nil,   319,   319,   nil,   nil,   nil,   319,
+   nil,   nil,   nil,   nil,   nil,  1059,   nil,  1059,  1059,  1059,
+  1059,  1059,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   319,
+   nil,  1059,   319,   nil,   nil,   319,   319,   nil,   nil,   319,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1059,   nil,   nil,   nil,   nil,   319,   319,
+   319,   319,   319,   319,  1059,  1059,   nil,   319,   319,   nil,
+   nil,   nil,   319,   nil,   nil,   319,   nil,   nil,   319,   319,
+   319,   nil,   319,   319,   336,   336,   336,   nil,   336,   nil,
+   nil,   nil,   336,   336,   nil,   nil,   nil,   336,  1059,   336,
+   336,   336,   336,   336,   336,   336,   nil,   nil,   nil,   nil,
+   nil,   336,   336,   336,   336,   336,   336,   336,   nil,   nil,
+   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,
+   336,   336,   336,   336,   336,   336,   336,   336,   nil,   336,
+   336,   336,   nil,   336,   336,   nil,   nil,   nil,   336,   nil,
+   nil,   nil,   nil,   nil,  1061,   nil,  1061,  1061,  1061,  1061,
+  1061,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,
+  1061,   336,   nil,   nil,   336,   336,   nil,   nil,   336,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1061,   nil,   nil,   nil,   nil,   336,   336,   336,
+   336,   336,   336,  1061,  1061,   nil,   336,   336,   nil,   nil,
+   nil,   nil,   nil,   nil,   336,   nil,   nil,   336,   336,   336,
+   nil,   336,   336,   343,   343,   343,   nil,   343,   nil,   nil,
+   nil,   343,   343,   nil,   nil,   nil,   343,  1061,   343,   343,
+   343,   343,   343,   343,   343,   nil,   nil,   nil,   nil,   nil,
+   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   343,
+   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,
+   343,   343,   343,   343,   343,   343,   343,   nil,   343,   343,
+   343,   nil,   343,   343,   nil,   343,   343,   343,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,
+   343,   nil,   nil,   343,   343,   nil,   nil,   343,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   343,   nil,   nil,   nil,   nil,   343,   343,   343,   343,
+   343,   343,   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   343,   343,   343,   nil,
+   343,   343,   345,   345,   345,   nil,   345,   nil,   nil,   nil,
+   345,   345,   nil,   nil,   nil,   345,   nil,   345,   345,   345,
+   345,   345,   345,   345,   nil,   nil,   nil,   nil,   nil,   345,
+   345,   345,   345,   345,   345,   345,   nil,   nil,   345,   nil,
+   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,   345,
+   345,   345,   345,   345,   345,   345,   nil,   345,   345,   345,
+   nil,   345,   345,   nil,   345,   345,   345,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,
+   345,   nil,   345,   345,   nil,   nil,   345,   nil,   nil,   nil,
+   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   345,   nil,   nil,   nil,   nil,   345,   345,   345,   345,   345,
+   345,   nil,   nil,   nil,   345,   345,   nil,   nil,   nil,   nil,
+   nil,   nil,   345,   nil,   nil,   345,   345,   345,   nil,   345,
+   345,   349,   349,   349,   nil,   349,   nil,   nil,   nil,   349,
+   349,   nil,   nil,   nil,   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,   349,
+   349,   349,   349,   349,   349,   349,   349,   349,   349,   nil,
+   349,   349,   nil,   349,   349,   349,   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,   349,   nil,   nil,   349,   nil,   349,   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,   nil,   nil,
+   nil,   349,   nil,   349,   349,   349,   349,   nil,   349,   349,
+   350,   350,   350,   nil,   350,   nil,   nil,   nil,   350,   350,
+   nil,   nil,   nil,   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,   350,   350,
+   350,   350,   350,   350,   350,   350,   350,   350,   nil,   350,
+   350,   nil,   350,   350,   350,   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,   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,   nil,   nil,   nil,
+   350,   nil,   350,   350,   350,   350,   nil,   350,   350,   355,
+   355,   355,   nil,   355,   nil,   nil,   nil,   355,   355,   nil,
+   nil,   nil,   355,   nil,   355,   355,   355,   355,   355,   355,
+   355,   nil,   nil,   nil,   nil,   nil,   355,   355,   355,   355,
+   355,   355,   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,
+   nil,   nil,   355,   nil,   nil,   355,   355,   355,   355,   355,
+   355,   355,   355,   nil,   355,   355,   355,   nil,   355,   355,
+   nil,   355,   355,   355,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   355,   nil,   nil,   355,   nil,   nil,   355,
+   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,   nil,   355,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,
+   nil,   nil,   355,   355,   355,   355,   355,   355,   nil,   nil,
+   nil,   355,   355,   nil,   nil,   nil,   nil,   nil,   nil,   355,
+   nil,   nil,   355,   355,   355,   nil,   355,   355,   376,   376,
+   376,   nil,   376,   nil,   nil,   nil,   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,   376,   nil,   nil,   nil,
+   nil,   376,   376,   376,   376,   376,   376,   nil,   nil,   nil,
+   376,   376,   nil,   nil,   nil,   nil,   nil,   nil,   376,   nil,
+   nil,   376,   376,   376,   nil,   376,   376,   437,   437,   437,
+   nil,   437,   nil,   nil,   nil,   437,   437,   nil,   nil,   nil,
+   437,   nil,   437,   437,   437,   437,   437,   437,   437,   nil,
+   nil,   nil,   nil,   nil,   437,   437,   437,   437,   437,   437,
+   437,   nil,   nil,   437,   nil,   nil,   nil,   nil,   nil,   nil,
+   437,   nil,   nil,   437,   437,   437,   437,   437,   437,   437,
+   437,   nil,   437,   437,   437,   nil,   437,   437,   nil,   437,
+   437,   437,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   437,   nil,   nil,   437,   nil,   nil,   437,   437,   nil,
+   nil,   437,   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,   nil,   nil,
+   437,   437,   437,   437,   437,   437,   nil,   nil,   nil,   437,
+   437,   nil,   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,
+   437,   437,   437,   nil,   437,   437,   481,   481,   481,   nil,
+   481,   nil,   nil,   nil,   481,   481,   nil,   nil,   nil,   481,
+   nil,   481,   481,   481,   481,   481,   481,   481,   nil,   nil,
+   nil,   nil,   nil,   481,   481,   481,   481,   481,   481,   481,
+   nil,   nil,   481,   nil,   nil,   nil,   nil,   nil,   nil,   481,
+   nil,   nil,   481,   481,   481,   481,   481,   481,   481,   481,
+   481,   481,   481,   481,   nil,   481,   481,   nil,   481,   481,
+   481,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   481,   nil,   nil,   481,   nil,   nil,   481,   481,   nil,   nil,
+   481,   nil,   481,   nil,   481,   nil,   481,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   481,   nil,   nil,   nil,   nil,   481,
+   481,   481,   481,   481,   481,   nil,   nil,   nil,   481,   481,
+   nil,   nil,   nil,   nil,   nil,   nil,   481,   nil,   481,   481,
+   481,   481,   nil,   481,   481,   483,   483,   483,   nil,   483,
+   nil,   nil,   nil,   483,   483,   nil,   nil,   nil,   483,   nil,
+   483,   483,   483,   483,   483,   483,   483,   nil,   nil,   nil,
+   nil,   nil,   483,   483,   483,   483,   483,   483,   483,   nil,
+   nil,   483,   nil,   nil,   nil,   nil,   nil,   nil,   483,   nil,
+   nil,   483,   483,   483,   483,   483,   483,   483,   483,   nil,
+   483,   483,   483,   nil,   483,   483,   nil,   483,   483,   483,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   483,
+   nil,   nil,   483,   nil,   nil,   483,   483,   nil,   nil,   483,
+   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   483,   nil,   nil,   nil,   nil,   483,   483,
+   483,   483,   483,   483,   nil,   nil,   nil,   483,   483,   nil,
+   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,   483,   483,
+   483,   nil,   483,   483,   484,   484,   484,   nil,   484,   nil,
+   nil,   nil,   484,   484,   nil,   nil,   nil,   484,   nil,   484,
+   484,   484,   484,   484,   484,   484,   nil,   nil,   nil,   nil,
+   nil,   484,   484,   484,   484,   484,   484,   484,   nil,   nil,
+   484,   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,   nil,
+   484,   484,   484,   484,   484,   484,   484,   484,   nil,   484,
+   484,   484,   nil,   484,   484,   nil,   484,   484,   484,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,
+   nil,   484,   nil,   nil,   484,   484,   nil,   nil,   484,   nil,
+   nil,   nil,   nil,   nil,   484,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   484,   nil,   nil,   nil,   nil,   484,   484,   484,
+   484,   484,   484,   nil,   nil,   nil,   484,   484,   nil,   nil,
+   nil,   nil,   nil,   nil,   484,   nil,   nil,   484,   484,   484,
+   nil,   484,   484,   485,   485,   485,   nil,   485,   nil,   nil,
+   nil,   485,   485,   nil,   nil,   nil,   485,   nil,   485,   485,
+   485,   485,   485,   485,   485,   nil,   nil,   nil,   nil,   nil,
+   485,   485,   485,   485,   485,   485,   485,   nil,   nil,   485,
+   nil,   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,   485,
+   485,   485,   485,   485,   485,   485,   485,   nil,   485,   485,
+   485,   nil,   485,   485,   nil,   485,   485,   485,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,
+   485,   nil,   nil,   485,   485,   nil,   nil,   485,   nil,   nil,
+   nil,   nil,   nil,   485,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   485,   nil,   nil,   nil,   nil,   485,   485,   485,   485,
+   485,   485,   nil,   nil,   nil,   485,   485,   nil,   nil,   nil,
+   nil,   nil,   nil,   485,   nil,   nil,   485,   485,   485,   nil,
+   485,   485,   523,   523,   523,   nil,   523,   nil,   nil,   nil,
+   523,   523,   nil,   nil,   nil,   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,
+   523,   523,   523,   523,   523,   523,   523,   523,   523,   523,
+   nil,   523,   523,   nil,   523,   523,   523,   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,   523,   nil,   nil,   523,   nil,   523,   nil,
+   523,   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,   nil,
+   nil,   nil,   523,   nil,   523,   523,   523,   523,   nil,   523,
+   523,   526,   526,   526,   nil,   526,   nil,   nil,   nil,   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,   nil,   nil,   526,
+   nil,   526,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   526,
+   nil,   nil,   nil,   nil,   526,   526,   526,   526,   526,   526,
+   nil,   nil,   nil,   526,   526,   nil,   nil,   nil,   nil,   nil,
+   nil,   526,   nil,   526,   526,   526,   526,   nil,   526,   526,
+   528,   528,   528,   nil,   528,   nil,   nil,   nil,   528,   528,
+   nil,   nil,   nil,   528,   nil,   528,   528,   528,   528,   528,
+   528,   528,   nil,   nil,   nil,   nil,   nil,   528,   528,   528,
+   528,   528,   528,   528,   nil,   nil,   528,   nil,   nil,   nil,
+   nil,   nil,   nil,   528,   nil,   nil,   528,   528,   528,   528,
+   528,   528,   528,   528,   nil,   528,   528,   528,   nil,   528,
+   528,   nil,   528,   528,   528,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   528,   nil,   nil,   528,   nil,   nil,
+   528,   528,   nil,   nil,   528,   nil,   nil,   nil,   nil,   nil,
+   528,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,
+   nil,   nil,   nil,   528,   528,   528,   528,   528,   528,   nil,
+   nil,   nil,   528,   528,   nil,   nil,   nil,   nil,   nil,   nil,
+   528,   nil,   nil,   528,   528,   528,   nil,   528,   528,   534,
+   534,   534,   534,   534,   nil,   nil,   nil,   534,   534,   nil,
+   nil,   nil,   534,   nil,   534,   534,   534,   534,   534,   534,
+   534,   nil,   nil,   nil,   nil,   nil,   534,   534,   534,   534,
+   534,   534,   534,   nil,   nil,   534,   nil,   nil,   nil,   nil,
+   nil,   534,   534,   534,   534,   534,   534,   534,   534,   534,
+   534,   534,   534,   nil,   534,   534,   534,   nil,   534,   534,
+   nil,   534,   534,   534,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   534,   nil,   nil,   534,   nil,   nil,   534,
+   534,   nil,   nil,   534,   nil,   534,   nil,   nil,   nil,   534,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   534,   nil,   nil,
+   nil,   nil,   534,   534,   534,   534,   534,   534,   nil,   nil,
+   nil,   534,   534,   nil,   nil,   nil,   nil,   nil,   534,   534,
+   nil,   nil,   534,   534,   534,   nil,   534,   534,   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,   nil,   542,   542,   542,   542,   542,
+   542,   542,   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,
+   nil,   542,   nil,   nil,   542,   542,   542,   542,   542,   542,
+   542,   542,   nil,   542,   542,   542,   nil,   542,   542,   nil,
+   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,  1082,   nil,
+  1082,  1082,  1082,  1082,  1082,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   542,   nil,  1082,   542,   nil,   nil,   542,   542,
+   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1082,   nil,   nil,   nil,
+   nil,   542,   542,   542,   542,   542,   542,  1082,  1082,   nil,
+   542,   542,   nil,   nil,   nil,   nil,   nil,   nil,   542,   nil,
+   nil,   542,   542,   542,   nil,   542,   542,   544,   544,   544,
+   nil,   544,   nil,   nil,   nil,   544,   544,   nil,   nil,   nil,
+   544,  1082,   544,   544,   544,   544,   544,   544,   544,   nil,
+   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,   544,
+   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
+   544,   nil,   nil,   544,   544,   544,   544,   544,   544,   544,
+   544,   544,   544,   544,   544,   nil,   544,   544,   nil,   544,
+   544,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   544,   nil,   nil,   544,   nil,   nil,   544,   544,   nil,
+   nil,   544,   nil,   544,   nil,   544,   nil,   544,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   nil,   nil,
+   544,   544,   544,   544,   544,   544,   nil,   nil,   nil,   544,
+   544,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   544,
+   544,   544,   544,   nil,   544,   544,   550,   550,   550,   nil,
+   550,   nil,   nil,   nil,   550,   550,   nil,   nil,   nil,   550,
+   nil,   550,   550,   550,   550,   550,   550,   550,   nil,   nil,
+   nil,   nil,   nil,   550,   550,   550,   550,   550,   550,   550,
+   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,
+   nil,   nil,   550,   550,   550,   550,   550,   550,   550,   550,
+   nil,   550,   550,   550,   nil,   550,   550,   nil,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   550,   nil,   nil,   550,   nil,   nil,   550,   550,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,
+   550,   550,   550,   550,   550,   nil,   nil,   nil,   550,   550,
+   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,   550,
+   550,   550,   nil,   550,   550,   553,   553,   553,   nil,   553,
+   nil,   nil,   nil,   553,   553,   nil,   nil,   nil,   553,   nil,
+   553,   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,
+   nil,   nil,   553,   553,   553,   553,   553,   553,   553,   nil,
+   nil,   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,
+   nil,   553,   553,   553,   553,   553,   553,   553,   553,   nil,
+   553,   553,   553,   nil,   553,   553,   nil,   553,   553,   553,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   553,
+   nil,   nil,   553,   nil,   nil,   553,   553,   nil,   nil,   553,
+   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,   553,   553,
+   553,   553,   553,   553,   nil,   nil,   nil,   553,   553,   nil,
+   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   553,   553,
+   553,   nil,   553,   553,   554,   554,   554,   nil,   554,   nil,
+   nil,   nil,   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,   554,   nil,   nil,   nil,   nil,   554,   554,   554,
+   554,   554,   554,   nil,   nil,   nil,   554,   554,   nil,   nil,
+   nil,   nil,   nil,   nil,   554,   nil,   nil,   554,   554,   554,
+   nil,   554,   554,   559,   559,   559,   nil,   559,   nil,   nil,
+   nil,   559,   559,   nil,   nil,   nil,   559,   nil,   559,   559,
+   559,   559,   559,   559,   559,   nil,   nil,   nil,   nil,   nil,
+   559,   559,   559,   559,   559,   559,   559,   nil,   nil,   559,
+   nil,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,   559,
+   559,   559,   559,   559,   559,   559,   559,   nil,   559,   559,
+   559,   nil,   559,   559,   nil,   559,   559,   559,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,
+   559,   nil,   nil,   559,   559,   nil,   nil,   559,   nil,   nil,
+   nil,   nil,   nil,   559,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   559,   nil,   nil,   nil,   nil,   559,   559,   559,   559,
+   559,   559,   nil,   nil,   nil,   559,   559,   nil,   nil,   nil,
+   nil,   nil,   nil,   559,   nil,   nil,   559,   559,   559,   nil,
+   559,   559,   583,   583,   583,   nil,   583,   nil,   nil,   nil,
+   583,   583,   nil,   nil,   nil,   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,
+   583,   583,   583,   583,   583,   583,   583,   583,   583,   583,
+   nil,   583,   583,   nil,   583,   583,   583,   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,   583,   nil,   nil,   583,   nil,   583,   nil,
+   583,   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,   nil,
+   nil,   nil,   583,   nil,   583,   583,   583,   583,   nil,   583,
+   583,   593,   593,   593,   nil,   593,   nil,   nil,   nil,   593,
+   593,   nil,   nil,   nil,   593,   nil,   593,   593,   593,   593,
+   593,   593,   593,   nil,   nil,   nil,   nil,   nil,   593,   593,
+   593,   593,   593,   593,   593,   nil,   nil,   593,   nil,   nil,
+   nil,   nil,   nil,   nil,   593,   nil,   nil,   593,   593,   593,
+   593,   593,   593,   593,   593,   593,   593,   593,   593,   nil,
+   593,   593,   nil,   593,   593,   593,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   593,   nil,   nil,   593,   nil,
+   nil,   593,   593,   nil,   nil,   593,   nil,   593,   nil,   593,
+   nil,   593,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   593,
+   nil,   nil,   nil,   nil,   593,   593,   593,   593,   593,   593,
+   nil,   nil,   nil,   593,   593,   nil,   nil,   nil,   nil,   nil,
+   nil,   593,   nil,   593,   593,   593,   593,   nil,   593,   593,
+   603,   603,   603,   nil,   603,   nil,   nil,   nil,   603,   603,
+   nil,   nil,   nil,   603,   nil,   603,   603,   603,   603,   603,
+   603,   603,   nil,   nil,   nil,   nil,   nil,   603,   603,   603,
+   603,   603,   603,   603,   nil,   nil,   603,   nil,   nil,   nil,
+   nil,   nil,   nil,   603,   nil,   nil,   603,   603,   603,   603,
+   603,   603,   603,   603,   nil,   603,   603,   603,   nil,   603,
+   603,   nil,   603,   603,   603,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   603,   nil,   nil,   603,   nil,   nil,
+   603,   603,   nil,   nil,   603,   nil,   nil,   nil,   nil,   nil,
+   603,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   603,   nil,
+   nil,   nil,   nil,   603,   603,   603,   603,   603,   603,   nil,
+   nil,   nil,   603,   603,   nil,   nil,   nil,   nil,   nil,   nil,
+   603,   nil,   nil,   603,   603,   603,   nil,   603,   603,   625,
+   625,   625,   nil,   625,   nil,   nil,   nil,   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,   625,   nil,   nil,
+   nil,   nil,   625,   625,   625,   625,   625,   625,   nil,   nil,
+   nil,   625,   625,   nil,   nil,   nil,   nil,   nil,   nil,   625,
+   nil,   nil,   625,   625,   625,   nil,   625,   625,   665,   665,
+   665,   nil,   665,   nil,   nil,   nil,   665,   665,   nil,   nil,
+   nil,   665,   nil,   665,   665,   665,   665,   665,   665,   665,
+   nil,   nil,   nil,   nil,   nil,   665,   665,   665,   665,   665,
+   665,   665,   nil,   nil,   665,   nil,   nil,   nil,   nil,   nil,
+   nil,   665,   nil,   nil,   665,   665,   665,   665,   665,   665,
+   665,   665,   nil,   665,   665,   665,   nil,   665,   665,   nil,
+   665,   665,   665,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   665,   nil,   nil,   665,   nil,   nil,   665,   665,
+   nil,   nil,   665,   nil,   665,   nil,   nil,   nil,   665,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,   nil,   nil,
+   nil,   665,   665,   665,   665,   665,   665,   nil,   nil,   nil,
+   665,   665,   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,
+   nil,   665,   665,   665,   nil,   665,   665,   666,   666,   666,
+   nil,   666,   nil,   nil,   nil,   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,   666,
+   666,   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,   666,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,   nil,   nil,
+   666,   666,   666,   666,   666,   666,   nil,   nil,   nil,   666,
+   666,   nil,   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,
+   666,   666,   666,   nil,   666,   666,   667,   667,   667,   nil,
+   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,   nil,   667,
+   nil,   nil,   667,   667,   667,   667,   667,   667,   667,   667,
+   667,   667,   667,   667,   nil,   667,   667,   nil,   667,   667,
+   667,   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,   667,   nil,   nil,
+   667,   nil,   667,   nil,   667,   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,   nil,   nil,   nil,   667,   nil,   667,   667,
+   667,   667,   nil,   667,   667,   670,   670,   670,   nil,   670,
+   nil,   nil,   nil,   670,   670,   nil,   nil,   nil,   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,   670,   670,   670,   670,   670,   670,   nil,
+   670,   670,   670,   nil,   670,   670,   nil,   670,   670,   670,
+   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,   670,   nil,   nil,   670,
+   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   670,   nil,   nil,   670,   670,
+   670,   nil,   670,   670,   673,   673,   673,   nil,   673,   nil,
+   nil,   nil,   673,   673,   nil,   nil,   nil,   673,   nil,   673,
+   673,   673,   673,   673,   673,   673,   nil,   nil,   nil,   nil,
+   nil,   673,   673,   673,   673,   673,   673,   673,   nil,   nil,
+   673,   nil,   nil,   nil,   nil,   nil,   nil,   673,   nil,   nil,
+   673,   673,   673,   673,   673,   673,   673,   673,   673,   673,
+   673,   673,   nil,   673,   673,   nil,   673,   673,   673,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   673,   nil,
+   nil,   673,   nil,   nil,   673,   673,   nil,   nil,   673,   nil,
+   673,   nil,   673,   nil,   673,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   673,   nil,   nil,   nil,   nil,   673,   673,   673,
+   673,   673,   673,   nil,   nil,   nil,   673,   673,   nil,   nil,
+   nil,   nil,   nil,   nil,   673,   nil,   673,   673,   673,   673,
+   nil,   673,   673,   674,   674,   674,   nil,   674,   nil,   nil,
+   nil,   674,   674,   nil,   nil,   nil,   674,   nil,   674,   674,
+   674,   674,   674,   674,   674,   nil,   nil,   nil,   nil,   nil,
+   674,   674,   674,   674,   674,   674,   674,   nil,   nil,   674,
+   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,
+   674,   674,   674,   674,   674,   674,   674,   674,   674,   674,
+   674,   nil,   674,   674,   nil,   674,   674,   674,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,
+   674,   nil,   nil,   674,   674,   nil,   nil,   674,   nil,   nil,
+   nil,   674,   nil,   674,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   674,   nil,   nil,   nil,   nil,   674,   674,   674,   674,
+   674,   674,   nil,   nil,   nil,   674,   674,   nil,   nil,   nil,
+   nil,   nil,   nil,   674,   nil,   674,   674,   674,   674,   nil,
+   674,   674,   675,   675,   675,   nil,   675,   nil,   nil,   nil,
+   675,   675,   nil,   nil,   nil,   675,   nil,   675,   675,   675,
+   675,   675,   675,   675,   nil,   nil,   nil,   nil,   nil,   675,
+   675,   675,   675,   675,   675,   675,   nil,   nil,   675,   nil,
+   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   675,   675,
+   675,   675,   675,   675,   675,   675,   nil,   675,   675,   675,
+   nil,   675,   675,   nil,   675,   675,   675,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   675,
+   nil,   nil,   675,   675,   nil,   nil,   675,   nil,   nil,   nil,
+   nil,   nil,   675,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   675,   nil,   nil,   nil,   nil,   675,   675,   675,   675,   675,
+   675,   nil,   nil,   nil,   675,   675,   nil,   nil,   nil,   nil,
+   nil,   nil,   675,   nil,   nil,   675,   675,   675,   nil,   675,
+   675,   676,   676,   676,   nil,   676,   nil,   nil,   nil,   676,
+   676,   nil,   nil,   nil,   676,   nil,   676,   676,   676,   676,
+   676,   676,   676,   nil,   nil,   nil,   nil,   nil,   676,   676,
+   676,   676,   676,   676,   676,   nil,   nil,   676,   nil,   nil,
+   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   676,   676,
+   676,   676,   676,   676,   676,   nil,   676,   676,   676,   nil,
+   676,   676,   nil,   676,   676,   676,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   nil,
+   nil,   676,   676,   nil,   nil,   676,   nil,   nil,   nil,   nil,
+   nil,   676,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   676,
+   nil,   nil,   nil,   nil,   676,   676,   676,   676,   676,   676,
+   nil,   nil,   nil,   676,   676,   nil,   nil,   nil,   nil,   nil,
+   nil,   676,   nil,   nil,   676,   676,   676,   nil,   676,   676,
+   681,   681,   681,   nil,   681,   nil,   nil,   nil,   681,   681,
+   nil,   nil,   nil,   681,   nil,   681,   681,   681,   681,   681,
+   681,   681,   nil,   nil,   nil,   nil,   nil,   681,   681,   681,
+   681,   681,   681,   681,   nil,   nil,   681,   nil,   nil,   nil,
+   nil,   nil,   nil,   681,   nil,   nil,   681,   681,   681,   681,
+   681,   681,   681,   681,   nil,   681,   681,   681,   nil,   681,
+   681,   nil,   681,   681,   681,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   681,   nil,   nil,   681,   nil,   nil,
+   681,   681,   nil,   nil,   681,   nil,   nil,   nil,   nil,   nil,
+   681,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   681,   nil,
+   nil,   nil,   nil,   681,   681,   681,   681,   681,   681,   nil,
+   nil,   nil,   681,   681,   nil,   nil,   nil,   nil,   nil,   nil,
+   681,   nil,   nil,   681,   681,   681,   nil,   681,   681,   682,
+   682,   682,   nil,   682,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   682,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   682,   nil,   nil,
+   nil,   nil,   682,   682,   682,   682,   682,   682,   nil,   nil,
+   nil,   682,   682,   nil,   nil,   nil,   nil,   nil,   nil,   682,
+   nil,   nil,   682,   682,   682,   nil,   682,   682,   706,   706,
+   706,   nil,   706,   nil,   nil,   nil,   706,   706,   nil,   nil,
+   nil,   706,   nil,   706,   706,   706,   706,   706,   706,   706,
+   nil,   nil,   nil,   nil,   nil,   706,   706,   706,   706,   706,
+   706,   706,   nil,   nil,   706,   nil,   nil,   nil,   nil,   nil,
+   nil,   706,   nil,   nil,   706,   706,   706,   706,   706,   706,
+   706,   706,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   706,   nil,
+   nil,   706,   706,   706,   nil,   706,   706,   709,   709,   709,
+   nil,   709,   nil,   nil,   nil,   709,   709,   nil,   nil,   nil,
+   709,   nil,   709,   709,   709,   709,   709,   709,   709,   nil,
+   nil,   nil,   nil,   nil,   709,   709,   709,   709,   709,   709,
+   709,   nil,   nil,   709,   nil,   nil,   nil,   nil,   nil,   nil,
+   709,   nil,   nil,   709,   709,   709,   709,   709,   709,   709,
+   709,   nil,   709,   709,   709,   nil,   709,   709,   nil,   709,
+   709,   709,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   709,   nil,   nil,   709,   nil,   nil,   709,   709,   nil,
+   nil,   709,   nil,   nil,   nil,   nil,   nil,   709,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   709,   nil,   nil,   nil,   nil,
+   709,   709,   709,   709,   709,   709,   nil,   nil,   nil,   709,
+   709,   nil,   nil,   nil,   nil,   nil,   nil,   709,   nil,   nil,
+   709,   709,   709,   nil,   709,   709,   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,   nil,   713,   713,   713,   713,   713,   713,   713,
+   nil,   nil,   713,   nil,   nil,   nil,   nil,   nil,   nil,   713,
+   nil,   nil,   713,   713,   713,   713,   713,   713,   713,   713,
+   nil,   713,   713,   713,   nil,   713,   713,   nil,   nil,   nil,
+   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   713,
+   713,   713,   713,   713,   713,   nil,   nil,   nil,   713,   713,
+   nil,   nil,   nil,   nil,   nil,   nil,   713,   nil,   nil,   713,
+   713,   713,   nil,   713,   713,   724,   724,   724,   nil,   724,
+   nil,   nil,   nil,   724,   724,   nil,   nil,   nil,   724,   nil,
+   724,   724,   724,   724,   724,   724,   724,   nil,   nil,   nil,
+   nil,   nil,   724,   724,   724,   724,   724,   724,   724,   nil,
+   nil,   724,   nil,   nil,   nil,   nil,   nil,   nil,   724,   nil,
+   nil,   724,   724,   724,   724,   724,   724,   724,   724,   nil,
+   724,   724,   724,   nil,   724,   724,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   724,   724,
+   724,   724,   724,   724,   nil,   nil,   nil,   724,   724,   nil,
+   nil,   nil,   nil,   nil,   nil,   724,   nil,   nil,   724,   724,
+   724,   nil,   724,   724,   730,   730,   730,   nil,   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,   nil,   730,   nil,   nil,
+   730,   730,   730,   730,   730,   730,   730,   730,   nil,   730,
+   730,   730,   nil,   730,   730,   nil,   730,   730,   730,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   730,   nil,
+   nil,   730,   nil,   nil,   730,   730,   nil,   nil,   730,   nil,
+   730,   nil,   nil,   nil,   730,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   730,   nil,   nil,   nil,   nil,   730,   730,   730,
+   730,   730,   730,   nil,   nil,   nil,   730,   730,   nil,   nil,
+   nil,   nil,   nil,   nil,   730,   nil,   nil,   730,   730,   730,
+   nil,   730,   730,   735,   735,   735,   nil,   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,   nil,   735,   nil,   nil,   735,
+   735,   735,   735,   735,   735,   735,   735,   735,   735,   735,
+   735,   nil,   735,   735,   nil,   735,   735,   735,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   735,   nil,   nil,
+   735,   nil,   nil,   735,   735,   nil,   nil,   735,   nil,   735,
+   nil,   nil,   nil,   735,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   735,   nil,   nil,   nil,   nil,   735,   735,   735,   735,
+   735,   735,   nil,   nil,   nil,   735,   735,   nil,   nil,   nil,
+   nil,   nil,   nil,   735,   nil,   735,   735,   735,   735,   nil,
+   735,   735,   738,   738,   738,   nil,   738,   nil,   nil,   nil,
+   738,   738,   nil,   nil,   nil,   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,
+   738,   738,   738,   738,   738,   738,   738,   738,   738,   738,
+   nil,   738,   738,   nil,   738,   738,   738,   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,   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,   738,   738,   738,   738,   nil,   738,
+   738,   752,   752,   752,   nil,   752,   nil,   nil,   nil,   752,
+   752,   nil,   nil,   nil,   752,   nil,   752,   752,   752,   752,
+   752,   752,   752,   nil,   nil,   nil,   nil,   nil,   752,   752,
+   752,   752,   752,   752,   752,   nil,   nil,   752,   nil,   nil,
+   nil,   nil,   nil,   nil,   752,   nil,   nil,   752,   752,   752,
+   752,   752,   752,   752,   752,   nil,   752,   752,   752,   nil,
+   752,   752,   nil,   752,   752,   752,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   752,   nil,   nil,   752,   nil,
+   nil,   752,   752,   nil,   nil,   752,   nil,   752,   nil,   nil,
+   nil,   752,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   752,
+   nil,   nil,   nil,   nil,   752,   752,   752,   752,   752,   752,
+   nil,   nil,   nil,   752,   752,   nil,   nil,   nil,   nil,   nil,
+   nil,   752,   nil,   nil,   752,   752,   752,   nil,   752,   752,
+   764,   764,   764,   nil,   764,   nil,   nil,   nil,   764,   764,
+   nil,   nil,   nil,   764,   nil,   764,   764,   764,   764,   764,
+   764,   764,   nil,   nil,   nil,   nil,   nil,   764,   764,   764,
+   764,   764,   764,   764,   nil,   nil,   764,   nil,   nil,   nil,
+   nil,   nil,   nil,   764,   nil,   nil,   764,   764,   764,   764,
+   764,   764,   764,   764,   nil,   764,   764,   764,   nil,   764,
+   764,   nil,   764,   764,   764,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   764,   nil,   nil,   764,   nil,   nil,
+   764,   764,   nil,   nil,   764,   nil,   nil,   nil,   nil,   nil,
+   764,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   764,   nil,
+   nil,   nil,   nil,   764,   764,   764,   764,   764,   764,   nil,
+   nil,   nil,   764,   764,   nil,   nil,   nil,   nil,   nil,   nil,
+   764,   nil,   nil,   764,   764,   764,   nil,   764,   764,   784,
+   784,   784,   nil,   784,   nil,   nil,   nil,   784,   784,   nil,
+   nil,   nil,   784,   nil,   784,   784,   784,   784,   784,   784,
+   784,   nil,   nil,   nil,   nil,   nil,   784,   784,   784,   784,
+   784,   784,   784,   nil,   nil,   784,   nil,   nil,   nil,   nil,
+   nil,   nil,   784,   nil,   nil,   784,   784,   784,   784,   784,
+   784,   784,   784,   nil,   784,   784,   784,   nil,   784,   784,
+   nil,   784,   784,   784,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   784,   nil,   nil,   784,   nil,   nil,   784,
+   784,   nil,   nil,   784,   nil,   nil,   nil,   nil,   nil,   784,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   784,   nil,   nil,
+   nil,   nil,   784,   784,   784,   784,   784,   784,   nil,   nil,
+   nil,   784,   784,   nil,   nil,   nil,   nil,   nil,   nil,   784,
+   nil,   nil,   784,   784,   784,   nil,   784,   784,   806,   806,
+   806,   nil,   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,   nil,   806,   nil,   nil,   nil,   nil,   nil,
+   nil,   806,   nil,   nil,   806,   806,   806,   806,   806,   806,
+   806,   806,   nil,   806,   806,   806,   nil,   806,   806,   nil,
+   806,   806,   806,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   806,   nil,   nil,   806,   nil,   nil,   806,   806,
+   nil,   nil,   806,   nil,   nil,   nil,   nil,   nil,   806,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   806,   nil,   nil,   nil,
+   nil,   806,   806,   806,   806,   806,   806,   nil,   nil,   nil,
+   806,   806,   nil,   nil,   nil,   nil,   nil,   nil,   806,   nil,
+   nil,   806,   806,   806,   nil,   806,   806,   813,   813,   813,
+   nil,   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,   nil,
+   813,   nil,   nil,   813,   813,   813,   813,   813,   813,   813,
+   813,   nil,   813,   813,   813,   nil,   813,   813,   nil,   813,
+   813,   813,   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,   813,   nil,
+   nil,   813,   nil,   nil,   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,   nil,   nil,   nil,   813,   nil,   nil,
+   813,   813,   813,   nil,   813,   813,   826,   826,   826,   nil,
+   826,   nil,   nil,   nil,   826,   826,   nil,   nil,   nil,   826,
+   nil,   826,   826,   826,   826,   826,   826,   826,   nil,   nil,
+   nil,   nil,   nil,   826,   826,   826,   826,   826,   826,   826,
+   nil,   nil,   826,   nil,   nil,   nil,   nil,   nil,   nil,   826,
+   nil,   nil,   826,   826,   826,   826,   826,   826,   826,   826,
+   nil,   826,   826,   826,   nil,   826,   826,   nil,   826,   826,
+   826,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   826,   nil,   nil,   826,   nil,   nil,   826,   826,   nil,   nil,
+   826,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   826,   nil,   nil,   nil,   nil,   826,
+   826,   826,   826,   826,   826,   nil,   nil,   nil,   826,   826,
+   nil,   nil,   nil,   nil,   nil,   nil,   826,   nil,   nil,   826,
+   826,   826,   nil,   826,   826,   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,   nil,   827,   827,   827,   827,   827,   827,   827,   nil,
+   nil,   827,   nil,   nil,   nil,   nil,   nil,   nil,   827,   nil,
+   nil,   827,   827,   827,   827,   827,   827,   827,   827,   nil,
+   827,   827,   827,   nil,   827,   827,   nil,   827,   827,   827,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   827,
+   nil,   nil,   827,   nil,   nil,   827,   827,   nil,   nil,   827,
+   nil,   nil,   nil,   nil,   nil,   827,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   827,   nil,   nil,   nil,   nil,   827,   827,
+   827,   827,   827,   827,   nil,   nil,   nil,   827,   827,   nil,
+   nil,   nil,   nil,   nil,   nil,   827,   nil,   nil,   827,   827,
+   827,   nil,   827,   827,   828,   828,   828,   nil,   828,   nil,
+   nil,   nil,   828,   828,   nil,   nil,   nil,   828,   nil,   828,
+   828,   828,   828,   828,   828,   828,   nil,   nil,   nil,   nil,
+   nil,   828,   828,   828,   828,   828,   828,   828,   nil,   nil,
+   828,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,
+   828,   828,   828,   828,   828,   828,   828,   828,   nil,   828,
+   828,   828,   nil,   828,   828,   nil,   828,   828,   828,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,
+   nil,   828,   nil,   nil,   828,   828,   nil,   nil,   828,   nil,
+   nil,   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   828,   nil,   nil,   nil,   nil,   828,   828,   828,
+   828,   828,   828,   nil,   nil,   nil,   828,   828,   nil,   nil,
+   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,   828,   828,
+   nil,   828,   828,   829,   829,   829,   nil,   829,   nil,   nil,
+   nil,   829,   829,   nil,   nil,   nil,   829,   nil,   829,   829,
+   829,   829,   829,   829,   829,   nil,   nil,   nil,   nil,   nil,
+   829,   829,   829,   829,   829,   829,   829,   nil,   nil,   829,
+   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,   829,
+   829,   829,   829,   829,   829,   829,   829,   nil,   829,   829,
+   829,   nil,   829,   829,   nil,   829,   829,   829,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,
+   829,   nil,   nil,   829,   829,   nil,   nil,   829,   nil,   nil,
+   nil,   nil,   nil,   829,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   829,   nil,   nil,   nil,   nil,   829,   829,   829,   829,
+   829,   829,   nil,   nil,   nil,   829,   829,   nil,   nil,   nil,
+   nil,   nil,   nil,   829,   nil,   nil,   829,   829,   829,   nil,
+   829,   829,   831,   831,   831,   nil,   831,   nil,   nil,   nil,
+   831,   831,   nil,   nil,   nil,   831,   nil,   831,   831,   831,
+   831,   831,   831,   831,   nil,   nil,   nil,   nil,   nil,   831,
+   831,   831,   831,   831,   831,   831,   nil,   nil,   831,   nil,
+   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   831,   831,
+   831,   831,   831,   831,   831,   831,   nil,   831,   831,   831,
+   nil,   831,   831,   nil,   831,   831,   831,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   831,
+   nil,   nil,   831,   831,   nil,   nil,   831,   nil,   nil,   nil,
+   nil,   nil,   831,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   831,   nil,   nil,   nil,   nil,   831,   831,   831,   831,   831,
+   831,   nil,   nil,   nil,   831,   831,   nil,   nil,   nil,   nil,
+   nil,   nil,   831,   nil,   nil,   831,   831,   831,   nil,   831,
+   831,   864,   864,   864,   nil,   864,   nil,   nil,   nil,   864,
+   864,   nil,   nil,   nil,   864,   nil,   864,   864,   864,   864,
+   864,   864,   864,   nil,   nil,   nil,   nil,   nil,   864,   864,
+   864,   864,   864,   864,   864,   nil,   nil,   864,   nil,   nil,
+   nil,   nil,   nil,   nil,   864,   nil,   nil,   864,   864,   864,
+   864,   864,   864,   864,   864,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   864,   nil,   nil,   864,   864,   864,   nil,   864,   864,
+   871,   871,   871,   nil,   871,   nil,   nil,   nil,   871,   871,
+   nil,   nil,   nil,   871,   nil,   871,   871,   871,   871,   871,
+   871,   871,   nil,   nil,   nil,   nil,   nil,   871,   871,   871,
+   871,   871,   871,   871,   nil,   nil,   871,   nil,   nil,   nil,
+   nil,   nil,   nil,   871,   nil,   nil,   871,   871,   871,   871,
+   871,   871,   871,   871,   nil,   871,   871,   871,   nil,   871,
+   871,   nil,   871,   871,   871,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   871,   nil,   nil,   871,   nil,   nil,
+   871,   871,   nil,   nil,   871,   nil,   nil,   nil,   nil,   nil,
+   871,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   871,   nil,
+   nil,   nil,   nil,   871,   871,   871,   871,   871,   871,   nil,
+   nil,   nil,   871,   871,   nil,   nil,   nil,   nil,   nil,   nil,
+   871,   nil,   nil,   871,   871,   871,   nil,   871,   871,   919,
+   919,   919,   nil,   919,   nil,   nil,   nil,   919,   919,   nil,
+   nil,   nil,   919,   nil,   919,   919,   919,   919,   919,   919,
+   919,   nil,   nil,   nil,   nil,   nil,   919,   919,   919,   919,
+   919,   919,   919,   nil,   nil,   919,   nil,   nil,   nil,   nil,
+   nil,   nil,   919,   nil,   nil,   919,   919,   919,   919,   919,
+   919,   919,   919,   919,   919,   919,   919,   nil,   919,   919,
+   nil,   919,   919,   919,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   919,   nil,   nil,   919,   nil,   nil,   919,
+   919,   nil,   nil,   919,   nil,   nil,   nil,   919,   nil,   919,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   919,   nil,   nil,
+   nil,   nil,   919,   919,   919,   919,   919,   919,   nil,   nil,
+   nil,   919,   919,   nil,   nil,   nil,   nil,   nil,   nil,   919,
+   nil,   919,   919,   919,   919,   nil,   919,   919,   920,   920,
+   920,   nil,   920,   nil,   nil,   nil,   920,   920,   nil,   nil,
+   nil,   920,   nil,   920,   920,   920,   920,   920,   920,   920,
+   nil,   nil,   nil,   nil,   nil,   920,   920,   920,   920,   920,
+   920,   920,   nil,   nil,   920,   nil,   nil,   nil,   nil,   nil,
+   nil,   920,   nil,   nil,   920,   920,   920,   920,   920,   920,
+   920,   920,   nil,   920,   920,   920,   nil,   920,   920,   nil,
+   920,   920,   920,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   920,   nil,   nil,   920,   nil,   nil,   920,   920,
+   nil,   nil,   920,   nil,   nil,   nil,   nil,   nil,   920,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   920,   nil,   nil,   nil,
+   nil,   920,   920,   920,   920,   920,   920,   nil,   nil,   nil,
+   920,   920,   nil,   nil,   nil,   nil,   nil,   nil,   920,   nil,
+   nil,   920,   920,   920,   nil,   920,   920,   932,   932,   932,
+   nil,   932,   nil,   nil,   nil,   932,   932,   nil,   nil,   nil,
+   932,   nil,   932,   932,   932,   932,   932,   932,   932,   nil,
+   nil,   nil,   nil,   nil,   932,   932,   932,   932,   932,   932,
+   932,   nil,   nil,   932,   nil,   nil,   nil,   nil,   nil,   nil,
+   932,   nil,   nil,   932,   932,   932,   932,   932,   932,   932,
+   932,   nil,   932,   932,   932,   nil,   932,   932,   nil,   nil,
+   nil,   932,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   932,   nil,   nil,   932,   nil,   nil,   932,   932,   nil,
+   nil,   932,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   932,   932,   932,   932,   932,   932,   nil,   nil,   nil,   932,
+   932,   nil,   nil,   nil,   nil,   nil,   nil,   932,   nil,   nil,
+   932,   932,   932,   nil,   932,   932,   941,   941,   941,   nil,
+   941,   nil,   nil,   nil,   941,   941,   nil,   nil,   nil,   941,
+   nil,   941,   941,   941,   941,   941,   941,   941,   nil,   nil,
+   nil,   nil,   nil,   941,   941,   941,   941,   941,   941,   941,
+   nil,   nil,   941,   nil,   nil,   nil,   nil,   nil,   nil,   941,
+   nil,   nil,   941,   941,   941,   941,   941,   941,   941,   941,
+   nil,   941,   941,   941,   nil,   941,   941,   nil,   nil,   nil,
+   941,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   941,   nil,   nil,   941,   nil,   nil,   941,   941,   nil,   nil,
+   941,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   941,
+   941,   941,   941,   941,   941,   nil,   nil,   nil,   941,   941,
+   nil,   nil,   nil,   nil,   nil,   nil,   941,   nil,   nil,   941,
+   941,   941,   nil,   941,   941,   949,   949,   949,   nil,   949,
+   nil,   nil,   nil,   949,   949,   nil,   nil,   nil,   949,   nil,
+   949,   949,   949,   949,   949,   949,   949,   nil,   nil,   nil,
+   nil,   nil,   949,   949,   949,   949,   949,   949,   949,   nil,
+   nil,   949,   nil,   nil,   nil,   nil,   nil,   nil,   949,   nil,
+   nil,   949,   949,   949,   949,   949,   949,   949,   949,   nil,
+   949,   949,   949,   nil,   949,   949,   nil,   949,   949,   949,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   949,
+   nil,   nil,   949,   nil,   nil,   949,   949,   nil,   nil,   949,
+   nil,   949,   nil,   nil,   nil,   949,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   949,   nil,   nil,   nil,   nil,   949,   949,
+   949,   949,   949,   949,   nil,   nil,   nil,   949,   949,   nil,
+   nil,   nil,   nil,   nil,   nil,   949,   nil,   nil,   949,   949,
+   949,   nil,   949,   949,   990,   990,   990,   nil,   990,   nil,
+   nil,   nil,   990,   990,   nil,   nil,   nil,   990,   nil,   990,
+   990,   990,   990,   990,   990,   990,   nil,   nil,   nil,   nil,
+   nil,   990,   990,   990,   990,   990,   990,   990,   nil,   nil,
+   990,   nil,   nil,   nil,   nil,   nil,   nil,   990,   nil,   nil,
+   990,   990,   990,   990,   990,   990,   990,   990,   nil,   990,
+   990,   990,   nil,   990,   990,   nil,   nil,   nil,   990,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   990,   nil,
+   nil,   990,   nil,   nil,   990,   990,   nil,   nil,   990,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   990,   990,   990,
+   990,   990,   990,   nil,   nil,   nil,   990,   990,   nil,   nil,
+   nil,   nil,   nil,   nil,   990,   nil,   nil,   990,   990,   990,
+   nil,   990,   990,  1004,  1004,  1004,   nil,  1004,   nil,   nil,
+   nil,  1004,  1004,   nil,   nil,   nil,  1004,   nil,  1004,  1004,
+  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,   nil,   nil,
+  1004,  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,  1004,
+   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,   nil,  1004,
+  1004,  1004,  1004,  1004,  1004,  1004,  1004,   nil,  1004,  1004,
+  1004,   nil,  1004,  1004,   nil,  1004,  1004,  1004,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,   nil,
+  1004,   nil,   nil,  1004,  1004,   nil,   nil,  1004,   nil,   nil,
+   nil,   nil,   nil,  1004,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1004,   nil,   nil,   nil,   nil,  1004,  1004,  1004,  1004,
+  1004,  1004,   nil,   nil,   nil,  1004,  1004,   nil,   nil,   nil,
+   nil,   nil,   nil,  1004,   nil,   nil,  1004,  1004,  1004,   nil,
+  1004,  1004,  1035,  1035,  1035,   nil,  1035,   nil,   nil,   nil,
+  1035,  1035,   nil,   nil,   nil,  1035,   nil,  1035,  1035,  1035,
+  1035,  1035,  1035,  1035,   nil,   nil,   nil,   nil,   nil,  1035,
+  1035,  1035,  1035,  1035,  1035,  1035,   nil,   nil,  1035,   nil,
+   nil,   nil,   nil,   nil,   nil,  1035,   nil,   nil,  1035,  1035,
+  1035,  1035,  1035,  1035,  1035,  1035,  1035,  1035,  1035,  1035,
+   nil,  1035,  1035,   nil,  1035,  1035,  1035,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1035,   nil,   nil,  1035,
+   nil,   nil,  1035,  1035,   nil,   nil,  1035,   nil,  1035,   nil,
+  1035,   nil,  1035,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1035,   nil,   nil,   nil,   nil,  1035,  1035,  1035,  1035,  1035,
+  1035,   nil,   nil,   nil,  1035,  1035,   nil,   nil,   nil,   nil,
+   nil,   nil,  1035,   nil,  1035,  1035,  1035,  1035,   nil,  1035,
+  1035,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,   nil,   nil,   nil,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,   nil,   nil,
+   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,   nil,    11,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,
+    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,
+    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    11,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,   nil,   nil,
+   nil,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,   nil,   nil,   nil,   nil,   nil,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,   nil,   nil,    12,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,
+    12,    12,    12,    12,    12,    12,   nil,   nil,    12,    12,
+   nil,   nil,   nil,    12,    12,    12,    12,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    12,    12,   nil,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    12,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,   nil,   nil,   nil,   nil,   nil,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,    75,
+    75,   nil,    75,    75,    75,    75,    75,    75,    75,   nil,
+   nil,    75,    75,   nil,   nil,   nil,    75,    75,    75,    75,
+   nil,   nil,   nil,   nil,   nil,    75,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    75,    75,   nil,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,   nil,   nil,    75,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   nil,   nil,   nil,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   nil,   nil,   nil,
+   nil,   nil,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   nil,   105,   nil,   nil,   nil,   nil,
+   nil,   nil,   105,   105,   nil,   105,   105,   105,   105,   105,
+   105,   105,   nil,   nil,   105,   105,   nil,   nil,   nil,   105,
+   105,   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   nil,   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   105,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   428,   428,   428,   428,   nil,   nil,   nil,
+   428,   428,   428,   428,   428,   428,   428,   428,   428,   428,
+   nil,   nil,   nil,   nil,   nil,   428,   428,   428,   428,   428,
+   428,   428,   428,   428,   nil,   nil,   428,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   428,   428,   nil,   428,   428,
+   428,   428,   428,   428,   428,   nil,   nil,   428,   428,   nil,
+   nil,   nil,   428,   428,   428,   428,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   428,
+   428,   nil,   428,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   nil,   nil,   428,   428,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   428,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   428,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   662,   662,   662,   662,
+   nil,   nil,   nil,   662,   662,   662,   662,   662,   662,   662,
+   662,   662,   662,   nil,   nil,   nil,   nil,   nil,   662,   662,
+   662,   662,   662,   662,   662,   662,   662,   nil,   nil,   662,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   662,
+   nil,   662,   662,   662,   662,   662,   662,   662,   nil,   nil,
+   662,   662,   nil,   nil,   nil,   662,   662,   662,   662,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   662,   662,   nil,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   nil,   nil,   662,   662,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   770,
+   770,   770,   770,   770,   770,   770,   770,   770,   770,   770,
+   770,   770,   770,   770,   770,   770,   770,   770,   770,   770,
+   770,   770,   770,   nil,   nil,   nil,   770,   770,   770,   770,
+   770,   770,   770,   770,   770,   770,   nil,   nil,   nil,   nil,
+   nil,   770,   770,   770,   770,   770,   770,   770,   770,   770,
+   nil,   nil,   770,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   770,   770,   nil,   770,   770,   770,   770,   770,   770,
+   770,   nil,   nil,   770,   770,   nil,   nil,   nil,   770,   770,
+   770,   770,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   770,   770,   nil,   770,   770,
+   770,   770,   770,   770,   770,   770,   770,   770,   770,   nil,
+   nil,   770,   nil,   nil,   nil,   nil,   228,   228,   nil,   nil,
+   228,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   228,
+   228,   770,   228,   228,   228,   228,   228,   228,   228,   nil,
+   nil,   228,   228,   nil,   nil,   nil,   228,   228,   228,   228,
+   nil,   nil,   nil,   nil,   nil,   228,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   228,   228,   nil,   228,   228,   228,   228,
+   228,   228,   228,   228,   228,   228,   228,   nil,   nil,   228,
+   nil,   nil,   nil,   nil,   229,   229,   nil,   nil,   229,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,   228,
+   229,   229,   229,   229,   229,   229,   229,   nil,   nil,   229,
+   229,   nil,   nil,   nil,   229,   229,   229,   229,   nil,   nil,
+   nil,   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   229,   229,   nil,   229,   229,   229,   229,   229,   229,
+   229,   229,   229,   229,   229,   nil,   nil,   229,   nil,   nil,
+   nil,   nil,   479,   479,   nil,   nil,   479,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   479,   479,   229,   479,   479,
+   479,   479,   479,   479,   479,   nil,   nil,   479,   479,   nil,
+   nil,   nil,   479,   479,   479,   479,   nil,   nil,   nil,   nil,
+   nil,   479,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   479,
+   479,   nil,   479,   479,   479,   479,   479,   479,   479,   479,
+   479,   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,
+   480,   480,   nil,   nil,   480,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   480,   480,   479,   480,   480,   480,   480,
+   480,   480,   480,   nil,   nil,   480,   480,   nil,   nil,   nil,
+   480,   480,   480,   480,   nil,   nil,   nil,   nil,   nil,   480,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   480,   480,   nil,
+   480,   480,   480,   480,   480,   480,   480,   480,   480,   480,
+   480,   nil,   nil,   480,   nil,   nil,   nil,   nil,   545,   545,
+   nil,   nil,   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   545,   545,   480,   545,   545,   545,   545,   545,   545,
+   545,   nil,   nil,   545,   545,   nil,   nil,   nil,   545,   545,
+   545,   545,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   545,   545,   nil,   545,   545,
+   545,   545,   545,   545,   545,   545,   545,   545,   545,   nil,
+   nil,   545,   nil,   nil,   nil,   nil,   546,   546,   nil,   nil,
+   546,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   546,
+   546,   545,   546,   546,   546,   546,   546,   546,   546,   nil,
+   nil,   546,   546,   nil,   nil,   nil,   546,   546,   546,   546,
+   nil,   nil,   nil,   nil,   nil,   546,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   546,   546,   nil,   546,   546,   546,   546,
+   546,   546,   546,   546,   546,   546,   546,   nil,   nil,   546,
+   nil,   nil,   nil,   nil,   555,   555,   nil,   nil,   555,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   555,   555,   546,
+   555,   555,   555,   555,   555,   555,   555,   nil,   nil,   555,
+   555,   nil,   nil,   nil,   555,   555,   555,   555,   nil,   nil,
+   nil,   nil,   nil,   555,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   555,   555,   nil,   555,   555,   555,   555,   555,   555,
+   555,   555,   555,   555,   555,   nil,   nil,   555,   nil,   nil,
+   nil,   nil,   556,   556,   nil,   nil,   556,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   556,   556,   555,   556,   556,
+   556,   556,   556,   556,   556,   nil,   nil,   556,   556,   nil,
+   nil,   nil,   556,   556,   556,   556,   nil,   nil,   nil,   nil,
+   nil,   556,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   556,
+   556,   nil,   556,   556,   556,   556,   556,   556,   556,   556,
+   556,   556,   556,   nil,   nil,   556,   nil,   nil,   nil,   nil,
+   584,   584,   nil,   nil,   584,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   584,   584,   556,   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,   nil,   nil,   584,   nil,   nil,   nil,   nil,   585,   585,
+   nil,   nil,   585,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   585,   585,   584,   585,   585,   585,   585,   585,   585,
+   585,   nil,   nil,   585,   585,   nil,   nil,   nil,   585,   585,
+   585,   585,   nil,   nil,   nil,   nil,   nil,   585,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   585,   585,   nil,   585,   585,
+   585,   585,   585,   585,   585,   585,   585,   585,   585,   nil,
+   nil,   585,   nil,   nil,   nil,   nil,   591,   591,   nil,   nil,
+   591,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   591,
+   591,   585,   591,   591,   591,   591,   591,   591,   591,   nil,
+   nil,   591,   591,   nil,   nil,   nil,   591,   591,   591,   591,
+   nil,   nil,   nil,   nil,   nil,   591,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   591,   591,   nil,   591,   591,   591,   591,
+   591,   591,   591,   591,   591,   591,   591,   nil,   nil,   591,
+   nil,   nil,   nil,   nil,   592,   592,   nil,   nil,   592,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   592,   592,   591,
+   592,   592,   592,   592,   592,   592,   592,   nil,   nil,   592,
+   592,   nil,   nil,   nil,   592,   592,   592,   592,   nil,   nil,
+   nil,   nil,   nil,   592,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   592,   592,   nil,   592,   592,   592,   592,   592,   592,
+   592,   592,   592,   592,   592,   nil,   nil,   592,   nil,   nil,
+   nil,   nil,   668,   668,   nil,   nil,   668,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   668,   668,   592,   668,   668,
+   668,   668,   668,   668,   668,   nil,   nil,   668,   668,   nil,
+   nil,   nil,   668,   668,   668,   668,   nil,   nil,   nil,   nil,
+   nil,   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   668,
+   668,   nil,   668,   668,   668,   668,   668,   668,   668,   668,
+   668,   668,   668,   nil,   nil,   668,   nil,   nil,   nil,   nil,
+   669,   669,   nil,   nil,   669,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   669,   669,   668,   669,   669,   669,   669,
+   669,   669,   669,   nil,   nil,   669,   669,   nil,   nil,   nil,
+   669,   669,   669,   669,   nil,   nil,   nil,   nil,   nil,   669,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   669,   669,   nil,
+   669,   669,   669,   669,   669,   669,   669,   669,   669,   669,
+   669,   nil,   981,   669,   981,   981,   981,   981,   981,   984,
+   nil,   984,   984,   984,   984,   984,   nil,   nil,   981,   nil,
+   nil,   nil,   nil,   669,   nil,   984,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   981,   nil,   nil,   nil,   nil,   nil,   nil,   984,   nil,   981,
+   981,   981,   981,   nil,   nil,   nil,   984,   984,   984,   984,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1031,  1031,   nil,
+   nil,  1031,   nil,   nil,   nil,   981,   nil,   nil,   nil,   nil,
+  1031,  1031,   984,  1031,  1031,  1031,  1031,  1031,  1031,  1031,
+   nil,   nil,  1031,  1031,   nil,   nil,   nil,  1031,  1031,  1031,
+  1031,   nil,   nil,   nil,   nil,   nil,  1031,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1031,  1031,   nil,  1031,  1031,  1031,
+  1031,  1031,  1031,  1031,  1031,  1031,  1031,  1031,   nil,   nil,
+  1031,   nil,   nil,   nil,   nil,  1036,  1036,   nil,   nil,  1036,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1036,  1036,
+  1031,  1036,  1036,  1036,  1036,  1036,  1036,  1036,   nil,   nil,
+  1036,  1036,   nil,   nil,   nil,  1036,  1036,  1036,  1036,   nil,
+   nil,   nil,   nil,   nil,  1036,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1036,  1036,   nil,  1036,  1036,  1036,  1036,  1036,
+  1036,  1036,  1036,  1036,  1036,  1036,   nil,   nil,  1036,   nil,
+   nil,   nil,   nil,  1037,  1037,   nil,   nil,  1037,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1037,  1037,  1036,  1037,
+  1037,  1037,  1037,  1037,  1037,  1037,   nil,   nil,  1037,  1037,
+   nil,   nil,   nil,  1037,  1037,  1037,  1037,   nil,   nil,   nil,
+   nil,   nil,  1037,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1037,  1037,   nil,  1037,  1037,  1037,  1037,  1037,  1037,  1037,
+  1037,  1037,  1037,  1037,   nil,  1055,  1037,  1055,  1055,  1055,
+  1055,  1055,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1055,   nil,   nil,   nil,   nil,  1037,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1055,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1055,  1055,  1055,  1055,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1055 ]
+
+racc_action_pointer = [
+   nil,    34,  2018,    60,   nil,   201,   nil,   nil,  6077,   763,
+   nil, 23869, 24002,   -12,   nil,   -30,    60,   -17,   152,   279,
+   112,   nil,   -60,  6216,  2298,   236,   nil,   -40,   nil,     0,
+  1084,  1216,  6355,  6494,  6633,   nil,  2158,  6772,  6911,   nil,
+   144,   208,   304,   268,   159,  7050,  7189,   489,  7328,   203,
+   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1348,   nil,  7467,   nil,   nil,    73,   nil,  7606,  7745,   nil,
+   nil,  7884,  8023,  8162,  8301, 24135,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   -65,   nil,   nil,   nil,   nil,   nil,   nil,   223,
+   255,   278,   284,   nil,   nil, 24268,   nil,   nil,   nil,   nil,
+   nil,   nil,     0,   nil,   nil,   139,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  8440,   nil,
+   nil,   nil,   nil,  8579,  8718,  8857,  8996,  9135,   312,   nil,
+   605,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   306,
+   nil,  2298,  9274,  9413,  9552,  9691,  9830,  9969, 24735, 24803,
+   nil,   nil, 10108, 10247, 10386,   nil,   nil,   356,   -55,   -52,
+   405,   162,   341,   408,   nil, 10525,  2438,   431, 10664, 10803,
+ 10942, 11081, 11220, 11359, 11498, 11637, 11776, 11915, 12054, 12193,
+ 12332, 12471, 12610, 12749, 12888, 13027, 13166, 13305, 13444, 13583,
+   nil,   nil,   nil,   nil, 13722,   nil,   nil,   nil,  1876,   nil,
+   nil,   426, 13861, 14000,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil, 14139,   nil,  2438,   nil,   402,   406,   nil, 14278,
+   460, 14417,   nil,   nil, 14556, 14695,   nil,   nil,   460,   nil,
+   nil, 14834,   925,   nil,   419,  2578,   461,   499,   474, 14973,
+  2718,   371,   411,   458,   551,   510,   nil,   548,   516,   206,
+   nil,   nil,   nil,   567,   254,   536, 15112,   nil,   308,   618,
+   514,   nil,   620, 15251,   nil, 15390,  2858,  1166,   587, 15529,
+ 15668,   nil,    11,   -10,    -1, 15807,  2998,  3138,   476,   699,
+   585,   -19,   -14,   589,   670,    -7,   702,   nil,   nil,   311,
+   342,   308,   nil,   625,   nil,   620, 15946,   nil,   nil,   nil,
+   112,   118,   120,   239,   344,   373,   377,   455,   459,   nil,
+   461,   nil,   nil,   645,   nil,   -59,   nil,   370,   nil,   538,
+   nil,   605,   378,   nil,   607,   397,   nil,   609,   -37,   nil,
+   610,   -27,   nil,   443,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 24401,   nil,
+   nil,   nil,   nil,   624,   nil,   nil,   612, 16085,   618,   nil,
+   nil,   618,   nil,   752,   182,   nil,   nil,   nil,  2018,   nil,
+   nil,   nil,   nil,   nil,  2158,   637,   nil,   nil,   641,   642,
+   430,   547,  1480,   nil,   nil,   nil,   271,   403,   683,   nil,
+   nil,  1612,  1744,   nil,   nil,   nil,   -33,   nil,   686, 24871,
+ 24939, 16224,   187, 16363, 16502, 16641,  3138,  3278,   364,   490,
+   714,   724,   726,   729,   976,  1430,  1562,  3418,  3558,  3698,
+  3838,  3978,  4118,   844,  1039,  4258,  4398,  2578,  1166,   806,
+   nil,  1876,   nil,   nil,   nil,   nil,   690,   nil,   nil,   nil,
+   691,   nil,   nil, 16780,   nil,   nil, 16919,   nil, 17058,   nil,
+   265,   nil,   nil,   nil, 17197,  1178,   706,   698,   699,   nil,
+   nil,   703, 17336,   708, 17475, 25007, 25075,   753,   745,   nil,
+ 17614,   707,   nil, 17753, 17892, 25143, 25211,  1298,  2718, 18031,
+   832,   831,   734,   nil,   nil,   -80,   -68,   735,   749,   nil,
+   340,   776,  3278,   853,   nil,  3418,    30,   859,   860,   861,
+   870,   nil,   nil, 18170, 25279, 25347,     5,   nil,   nil,   763,
+   nil, 25415, 25483, 18309,   nil,   nil,   nil,   587,  3558,   809,
+   nil,   nil,   nil, 18448,   nil,   744,   nil,   772,   773,   nil,
+   774,   777,   780,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   766,   685,   nil,   nil, 18587,   nil,   nil,   nil,   862,
+   nil,   nil,   nil,   882,   nil,   nil,   886,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   198,   nil,
+   nil,   200,   nil,   nil,   nil,   816,   nil,   nil,   826,   nil,
+  3698,   nil, 24534,   nil,   831, 18726, 18865, 19004, 25551, 25619,
+ 19143,   585,   876, 19282, 19421, 19560, 19699,   880,   nil,   nil,
+   nil, 19838, 19977,   882,   nil,   nil,   nil,   189,   216,   542,
+   681,   854,   868,   nil,   116,   970,   163,   nil,   nil,   886,
+   nil,   992,   nil,   876,   nil,   921, 20116,   nil,   nil, 20255,
+   nil,   nil,  -123, 20394,   881,   nil,   885,    -9,    28,   937,
+    33,   773,   951,   913, 20533,   nil,   978,   156,   221,   nil,
+ 20672,   nil,   nil,   nil,   nil, 20811,   nil,   nil, 20950,   nil,
+   nil,   nil,   618,   nil,  1048,   nil,   nil,   nil,   nil,   nil,
+  1057,   nil, 21089,   942,    20,    29,   163,   165,  3838,   550,
+   781,   nil,   944,  3978, 21228,   535,  1064,  4118,   874,  1048,
+ 24667,   165,    27,   959,   234,   nil,   nil,   578,  1147,   nil,
+  1279,   nil,   471,   nil, 21367,   nil,   949,   nil,   957,   959,
+   881,   964,   nil,   nil,   nil,   nil,   936,  4258,   nil,   nil,
+   nil,   nil,   nil,   981,   nil,   966, 21506,   981,   222,   274,
+   813,   945,  2858, 21645,   nil,   979,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil, 21784, 21923, 22062, 22201,
+   317, 22340,   nil,   nil,  1411,   nil,  4398,   nil,   nil,   999,
+   nil,   119,   nil,   nil,   nil,   nil,   984,   160,   nil,   nil,
+   nil,   nil,   nil,   nil,  4538,   nil,   985,  1028,   nil,   nil,
+   447,  1108,   nil,   nil, 22479,   nil,  4678,  1109,   nil,   nil,
+   nil, 22618,    42,    41,  1110,   nil,  1113,   551,   nil,   nil,
+  1120,  1007,   580,   nil,   nil,   nil,  4818,  4958,  1004,  1010,
+  1010,   nil,   nil,   nil,  1011,  1012,   nil,  1021,  1036,   nil,
+  1041,   nil,   nil,  1045,   980,   819,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1035,   nil,  1047,   320,   nil,   nil, 22757,
+ 22896,  2998,  1048,  1051,   nil,  1055,  1057,  1065,   nil,  1090,
+  1086,  1083, 23035,   nil,   nil,   nil,   nil,  5098,  5238,   nil,
+     6, 23174,   nil,   nil,   nil,    10,   nil,   nil,   nil, 23313,
+  5378,   nil,   nil,   nil,  5518,   nil,   nil,   nil,  1141,  1121,
+  1231,  1010,   nil,   nil,  1543,   nil,  1675,   nil,  6793,   nil,
+  6932,   nil,   nil,   nil,   nil,  1115,  1122,   nil,   325,   nil,
+   nil, 25681,   nil,   nil, 25688,   nil,  8044,   nil,   nil,  1145,
+ 23452,   884,  1206,   nil,  1260,  5658,    19,    38,   898,  1219,
+    69,   nil,  5798,   nil, 23591,   355,  1267,  5938,   nil,   nil,
+   451,   nil,   nil,   nil,  1149,  1150,  1151,  1153,  1077,  1184,
+  1168,   nil,   nil,  1169,  1173,  1174,  1176,   nil,  1179,   nil,
+   913, 25756,   nil,   nil,  1302, 23730, 25824, 25892,   106,   691,
+   nil,   nil,   nil,   nil,   nil,  1303,   nil,  1209,  8183,   nil,
+   nil,   nil,   nil,  1185,   nil, 25954,   nil,  8322,   nil, 14994,
+   nil, 15133,   nil,   nil,  1226,  1228,   nil,  1200,   128,   131,
+   171,   174,   nil,   nil,   nil,  1199,  1202,  1208,  1209,  1210,
+   162,   nil, 17357,   nil,   nil,   nil,   nil,  1211,   nil ]
+
+racc_action_default = [
+    -1,  -645,  -644,  -645,    -2,  -631,    -4,    -5,  -645,    -8,
+    -9,  -645,  -645,  -645,   -36,  -645,  -645,   -40,  -645,  -645,
+  -291,   -51,  -633,  -645,   -56,   -61,   -62,   -63,   -67,  -268,
+  -268,  -268,  -306,  -336,  -337,   -79,  -644,   -83,   -91,   -93,
+  -645,  -532,  -533,  -645,  -645,  -645,  -645,  -227,  -645,  -633,
+  -241,  -282,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,
+  -617,  -293,  -295,  -302,  -304,  -314,  -316,  -645,  -645,   -58,
+   -58,  -631,  -645,  -645,  -645,  -645,  -338,  -339,  -341,  -342,
+  -343,  -344,  -345,  -346,  -347,  -348,  -349,  -350,  -359,  -414,
+  -462,  -463,  -464,  -465,  -466,  -644,  -469,  -644,  -644,  -644,
+  -644,  -644,  -644,  -505,  -506,  -644,  -508,  -514,  -516,  -517,
+  -518,  -519,  -615,  -521,  -522,  -616,  -524,  -525,  -526,  -527,
+  -528,  -529,  -530,  -531,  -536,  -537,  1089,    -3,  -632,  -640,
+  -641,  -642,    -7,  -645,  -645,  -645,  -645,  -645,  -645,   -24,
+  -645,  -122,  -123,  -124,  -125,  -126,  -127,  -128,  -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,
+  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,   -29,
+  -129,  -644,  -645,  -645,  -645,  -645,  -645,  -644,  -645,  -645,
+  -627,  -628,  -645,  -645,  -633,  -634,   -55,  -645,  -532,  -533,
+  -645,  -291,  -645,  -645,  -233,  -645,  -644,  -645,  -645,  -645,
+  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,
+  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,
+  -242,  -243,  -244,  -245,  -645,  -352,  -442,  -422,  -645,  -629,
+  -630,   -68,  -644,  -645,  -313,  -351,  -426,  -435,  -437,   -74,
+  -432,   -75,  -633,   -76,  -248,  -263,  -644,  -644,  -267,  -645,
+  -273,  -645,  -644,  -609,  -645,  -645,   -77,   -78,  -631,   -17,
+   -18,  -645,   -21,   -22,   -81,  -644,  -633,  -645,   -84,   -87,
+  -644,   -99,  -100,  -645,  -645,  -107,  -306,  -309,  -633,  -645,
+  -336,  -337,  -340,  -433,  -645,   -89,  -645,   -95,  -301,  -515,
+  -645,  -221,  -222,  -645,  -234,  -645,  -644,  -297,  -633,  -644,
+  -644,  -315,   -57,  -645,  -645,  -645,  -644,  -644,  -631,  -645,
+  -632,  -532,  -533,  -645,  -645,  -291,  -645,  -369,  -370,  -117,
+  -118,  -645,  -120,  -645,  -291,  -644,  -645,  -532,  -533,  -329,
+  -122,  -123,  -162,  -163,  -164,  -180,  -185,  -192,  -195,  -331,
+  -645,  -604,  -605,  -564,  -467,  -645,  -490,  -645,  -492,  -645,
+  -494,  -645,  -645,  -474,  -645,  -645,  -480,  -645,  -645,  -486,
+  -645,  -645,  -488,  -645,  -507,  -509,  -510,  -511,  -512,    -6,
+  -643,   -30,   -31,   -32,   -33,   -34,   -10,   -11,  -645,   -26,
+   -27,   -28,  -130,  -645,   -37,   -39,  -278,  -645,  -645,  -277,
+   -38,  -645,   -41,  -645,  -291,   -49,   -50,  -203,  -253,  -273,
+   -52,   -53,   -42,  -204,  -253,  -633,  -258,  -259,  -644,  -644,
+  -618,  -619,  -268,  -430,  -620,  -621,  -619,  -618,  -268,  -429,
+  -431,  -620,  -621,   -48,  -211,   -54,  -633,  -312,  -645,  -645,
+  -645,  -644,  -301,  -645,  -645,  -645,  -212,  -213,  -214,  -215,
+  -216,  -217,  -218,  -219,  -223,  -224,  -225,  -226,  -228,  -229,
+  -230,  -231,  -232,  -235,  -236,  -237,  -238,  -633,  -246,  -645,
+  -443,  -268,  -618,  -619,   -65,   -69,  -633,  -269,  -439,  -442,
+  -633,  -308,  -264,  -645,  -272,  -265,  -645,  -270,  -645,  -274,
+  -645,  -612,  -614,   -16,  -632,   -20,  -645,  -633,   -80,  -299,
+   -96,   -85,  -645,  -633,  -644,  -645,  -645,  -106,  -645,  -515,
+  -645,   -92,   -97,  -645,  -645,  -645,  -645,  -247,  -239,  -645,
+  -454,  -645,  -633,  -296,  -249,  -637,  -637,  -633,  -645,  -607,
+  -637,  -645,  -644,  -360,  -361,  -644,  -645,  -645,  -645,  -645,
+  -645,  -355,  -449,  -644,  -645,  -645,  -301,   -58,  -117,  -118,
+  -119,  -645,  -645,  -644,  -324,  -538,  -540,  -326,  -644,  -542,
+  -333,  -625,  -626,  -645,  -415,  -564,  -418,  -603,  -603,  -547,
+  -549,  -549,  -549,  -563,  -565,  -566,  -567,  -568,  -569,  -570,
+  -571,  -572,  -645,  -574,  -576,  -578,  -583,  -585,  -586,  -588,
+  -593,  -595,  -596,  -598,  -599,  -600,  -645,  -468,  -491,  -496,
+  -497,  -499,  -470,  -493,  -471,  -495,  -472,  -473,  -645,  -476,
+  -478,  -645,  -479,  -482,  -483,  -645,  -484,  -485,  -645,  -513,
+  -644,   -25,  -645,   -35,  -281,  -645,  -645,  -644,  -645,  -645,
+  -645,  -434,  -645,  -260,  -262,  -645,  -645,   -70,  -256,  -257,
+  -427,  -645,  -645,   -72,  -428,  -311,  -635,  -618,  -619,  -618,
+  -619,  -633,  -645,  -421,  -644,   -64,  -423,  -439,  -255,  -645,
+  -440,  -645,  -307,  -644,  -271,  -275,  -645,  -610,  -611,  -645,
+   -19,   -23,   -82,  -645,   -88,   -94,  -633,  -618,  -619,  -644,
+  -622,  -105,  -645,   -90,  -645,  -210,  -220,  -633,  -644,  -353,
+  -644,  -294,  -358,  -298,  -250,  -639,  -638,  -252,  -639,  -303,
+  -305,  -608,  -644,  -362,  -644,   -59,  -363,  -364,  -319,  -320,
+  -645,  -322,  -645,  -633,  -618,  -619,  -622,  -300,  -644,  -117,
+  -118,  -121,  -633,  -644,  -645,  -645,  -645,  -644,  -564,  -564,
+  -645,  -633,  -645,  -633,  -645,  -545,  -546,  -645,  -645,  -556,
+  -645,  -559,  -645,  -561,  -645,  -371,  -645,  -373,  -375,  -378,
+  -381,  -633,  -577,  -587,  -597,  -601,  -645,  -644,  -475,  -477,
+  -481,  -487,  -489,  -645,  -131,  -279,  -645,  -633,  -618,  -619,
+  -619,  -618,  -254,  -645,  -636,  -644,   -44,  -206,   -45,  -207,
+   -71,   -46,  -209,   -47,  -208,   -73,  -645,  -645,  -645,  -645,
+  -434,  -645,  -403,  -404,  -633,  -406,  -644,  -425,  -424,  -645,
+  -436,  -644,  -438,  -266,  -276,  -613,   -86,  -434,   -98,  -310,
+   -13,   -15,  -354,  -356,  -644,  -461,  -455,  -644,  -456,  -457,
+  -637,  -645,  -357,  -365,  -645,  -367,  -644,  -645,   -60,  -321,
+  -445,  -645,  -645,  -434,  -645,  -434,  -645,  -645,  -327,  -330,
+  -645,  -633,  -645,  -334,  -606,  -416,  -644,  -644,  -408,  -633,
+  -603,  -584,  -602,  -548,  -549,  -549,  -575,  -549,  -549,  -594,
+  -549,  -572,  -589,  -633,  -645,  -645,  -380,  -573,  -498,  -501,
+  -502,  -503,  -504,  -645,   -12,  -280,  -434,   -43,  -205,  -261,
+  -645,  -240,  -603,  -603,  -385,  -644,  -644,  -644,  -402,  -645,
+  -633,  -572,  -580,  -581,  -591,  -444,   -66,  -644,  -644,  -460,
+  -645,  -645,  -459,  -251,  -317,  -645,  -368,  -318,  -446,  -645,
+  -644,  -323,  -325,  -539,  -644,  -332,  -541,  -543,  -542,  -645,
+  -645,  -645,  -417,  -544,  -645,  -552,  -645,  -554,  -645,  -557,
+  -645,  -560,  -562,  -372,  -374,  -376,  -379,  -500,  -645,  -383,
+  -384,  -393,  -387,  -395,  -645,  -398,  -645,  -400,  -405,  -645,
+  -645,  -579,  -645,  -441,  -644,  -644,  -532,  -533,  -645,  -645,
+  -291,  -458,  -644,  -447,  -645,  -644,  -645,  -644,  -419,  -420,
+  -633,  -410,  -412,  -413,  -549,  -549,  -549,  -549,  -645,  -645,
+  -603,  -582,  -386,  -644,  -644,  -644,  -644,  -592,  -644,  -407,
+  -590,  -645,  -301,   -14,  -454,  -644,  -645,  -645,  -301,  -644,
+  -448,  -450,  -451,  -452,  -328,  -645,  -409,  -645,  -645,  -550,
+  -553,  -555,  -558,  -377,  -382,  -645,  -390,  -645,  -392,  -645,
+  -396,  -645,  -399,  -401,  -300,  -622,  -453,  -633,  -618,  -619,
+  -622,  -300,  -366,  -335,  -411,  -549,  -644,  -644,  -644,  -644,
+  -434,  -551,  -645,  -388,  -391,  -394,  -397,  -644,  -389 ]
+
+racc_goto_table = [
+     6,   131,   236,   233,   296,   296,   296,   277,     4,   295,
+   295,   295,   144,   144,   462,   468,   228,   353,   354,   455,
+   389,   358,   561,   318,   279,   580,   621,   139,   220,     9,
+   345,   147,   147,   332,   332,     9,   452,   351,   297,   297,
+   297,   525,   473,   439,   440,   286,   290,   572,   575,   515,
+   415,   317,   352,   352,   426,   606,   352,   356,   357,   728,
+   707,   281,   289,   291,   511,   127,   613,   131,   332,   332,
+   332,   335,   704,   767,   516,   704,   144,   128,   851,   861,
+   889,   671,   590,   421,   422,   423,   424,   339,   791,   347,
+   867,   775,   776,   396,   926,   398,   400,   403,   406,   409,
+   412,   899,   314,   396,   896,   551,   144,   509,   734,   737,
+   836,   785,   316,   741,   974,   132,  1027,     1,   352,   352,
+   352,   352,   699,   375,   379,     2,   446,   395,  1011,   446,
+   976,   359,   138,   648,  1013,   446,   651,   413,   660,   850,
+   895,   929,   897,   938,   710,   536,   219,   368,   293,   306,
+   307,   435,   428,   745,   868,     9,   278,   697,   662,   343,
+   567,   696,   391,   453,   425,   568,   366,   594,   390,   474,
+   600,   346,   348,   562,   349,   350,   763,   765,   954,   598,
+   599,   770,   958,   975,   643,   928,   645,  1027,   890,   649,
+   930,  1010,   649,   739,   438,   438,   927,   604,   885,   393,
+   772,   434,   445,   525,   295,   445,   518,   519,   707,   450,
+   451,   445,   841,   872,  1074,   694,  1041,   752,   475,   476,
+  1013,   857,   704,   704,   940,   456,   394,   397,   399,   974,
+   472,   402,   405,   408,   479,   419,   433,   989,   621,   411,
+   908,  1023,   796,  1053,   463,   750,   797,   414,   923,   764,
+   894,   891,   903,  1021,   603,   296,   nil,   937,   nil,   295,
+   295,   317,   nil,   nil,   296,   462,   468,   773,   nil,   295,
+   nil,   nil,   707,   691,   766,   785,   nil,   nil,   613,   906,
+   456,   nil,   nil,   nil,   nil,   899,   nil,   nil,   nil,   297,
+   nil,   nil,   nil,    19,   524,   524,   896,   nil,   297,    19,
+   396,   839,   761,   nil,   131,   576,   nil,   896,   nil,   548,
+   nil,   714,   nil,   nil,   237,   332,   nil,   830,   nil,   723,
+   545,   565,   552,   237,   237,   237,  1014,    19,   323,   323,
+   317,   719,   332,   nil,   530,   317,   716,   555,   535,   nil,
+   352,   719,   847,  1024,  1033,   286,  1025,   564,   569,   290,
+   701,  1042,   541,    19,   131,   566,   570,   nil,   237,   237,
+   584,   597,   237,   363,   373,   373,   nil,   nil,   533,   nil,
+   719,   577,   578,   596,   963,   753,  1072,   549,   719,   873,
+   534,   314,   nil,   nil,   nil,   762,   314,   896,   875,   nil,
+   nil,   537,  1020,   785,   785,   923,   543,   nil,   923,   517,
+   923,   621,   621,   943,   nil,   nil,   979,   980,   520,   nil,
+   nil,   621,   nil,   621,   nil,   nil,   nil,  1076,   579,    19,
+   474,   nil,   453,   nil,   237,   237,   237,   237,    19,   144,
+   881,   882,  1007,   916,   nil,   799,   672,   nil,   799,   876,
+   668,   613,   613,   880,   661,   820,   nil,   843,   147,   nil,
+   nil,   825,   711,   707,   462,   468,   524,   524,   295,   807,
+   678,   nil,   nil,   nil,   nil,   nil,   nil,   931,   704,   923,
+   nil,   923,   nil,   923,   nil,   923,   nil,   nil,   679,   456,
+   nil,   472,   846,   nil,   684,   816,   818,   nil,   692,   nil,
+   725,   821,   823,   nil,   677,   463,   923,   nil,   nil,   nil,
+   683,   nil,   nil,   nil,  1054,   nil,   nil,   785,   785,   678,
+   nil,   nil,    19,   237,   443,   237,   237,   443,   237,   nil,
+   nil,   295,   nil,   443,   237,   237,   nil,   679,   552,   703,
+   nil,   nil,   nil,  1066,   nil,   nil,   552,    19,   332,   nil,
+   nil,   nil,   456,   695,   727,   nil,   332,   472,   672,   nil,
+   nil,   858,   nil,   nil,   nil,   nil,   nil,   472,   nil,   843,
+   295,   463,   nil,   960,   nil,   nil,   950,   nil,   nil,   446,
+   295,   463,   746,   237,   237,   758,   nil,   nil,   446,   446,
+   nil,   456,   nil,   237,   446,   446,   472,   742,   771,   nil,
+   744,   456,   472,   nil,   nil,   nil,   nil,   621,   nil,   nil,
+   463,   nil,    19,   nil,   nil,   nil,    19,   nil,   463,   nil,
+   323,    19,   817,   819,   931,   nil,   731,   931,   822,   824,
+   nil,   nil,   nil,   917,   nil,   nil,   nil,   323,   nil,   nil,
+  1006,   nil,   748,   749,   995,   751,   nil,    19,   nil,  1002,
+   nil,   nil,   nil,   nil,   295,   445,   237,    19,    19,   nil,
+   nil,   nil,   nil,   nil,   445,   445,   nil,   nil,     6,   nil,
+   445,   445,   nil,   144,   nil,   456,   803,   237,   838,   nil,
+   472,  1043,   672,   nil,   nil,   nil,   nil,   837,   804,   815,
+   nil,   nil,   147,  1045,   463,   nil,   nil,     9,   931,   nil,
+   nil,   nil,   832,  1080,   nil,   nil,   nil,   672,   nil,   552,
+   892,   524,   438,   892,   nil,   nil,   nil,   nil,   nil,   332,
+   848,   nil,   nil,   nil,   877,   883,   446,   678,   nil,   nil,
+   332,   nil,   nil,   nil,   nil,   nil,   855,   nil,   859,   nil,
+   nil,   nil,   nil,   nil,   672,   679,   nil,   nil,   684,   nil,
+   865,   860,   865,   672,   983,   985,   987,   nil,   nil,   352,
+   918,   nil,   nil,   nil,   888,   nil,   nil,   nil,   nil,   nil,
+   924,   878,   nil,   817,   819,   824,   822,   nil,   nil,   nil,
+   nil,   144,   237,   874,   nil,   nil,   nil,   nil,   477,   nil,
+   nil,   779,   781,   783,   nil,   nil,   nil,   nil,   672,   nil,
+   nil,   nil,   445,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   869,   nil,   nil,   nil,   nil,
+   nil,   nil,   913,   524,   945,   888,   nil,   nil,   nil,   nil,
+   nil,   879,   719,   nil,   nil,    19,   nil,  1067,   nil,   nil,
+   nil,   nil,   nil,   323,   nil,   237,   521,   nil,   nil,   832,
+   nil,   323,  1056,  1058,  1060,  1062,   nil,  1063,   nil,   352,
+   237,   935,   nil,   nil,   nil,   942,   nil,   918,   nil,   nil,
+   538,   nil,   nil,    19,   nil,   nil,    19,   nil,   nil,   939,
+   nil,   nil,   nil,   953,   237,   nil,   nil,   nil,   957,   nil,
+   nil,   946,   nil,   nil,   237,   nil,   nil,   nil,   nil,    19,
+   nil,   nil,   563,   nil,   237,  1083,  1084,  1085,  1086,   nil,
+   nil,   959,   nil,   nil,   892,   nil,  1088,   924,   nil,    29,
+   924,   888,   924,   nil,   nil,    29,   944,   nil,   nil,   nil,
+   nil,   nil,   947,   982,   982,   982,   nil,   nil,   332,   951,
+    29,   952,   nil,   nil,   nil,   955,   nil,   332,   nil,    29,
+    29,    29,   nil,    29,   nil,   932,   nil,   nil,   nil,   nil,
+   nil,    19,   993,   994,   nil,   nil,   nil,   443,   237,   nil,
+   nil,   nil,   nil,   nil,   nil,  1005,   443,   443,   nil,    29,
+   nil,   nil,   443,   443,    29,    29,   nil,   nil,    29,   nil,
+   nil,   924,   nil,   924,   nil,   924,   332,   924,   nil,   nil,
+   nil,  1046,   855,   nil,   nil,  1036,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   865,   323,   nil,   nil,   nil,   924,   nil,
+  1034,   nil,   295,   nil,   nil,   323,   nil,  1039,   nil,   nil,
+   685,   982,   982,   982,   982,   nil,   982,   nil,   nil,   nil,
+   nil,   nil,   472,   456,   nil,    29,   nil,   865,   472,   nil,
+    29,    29,    29,    29,    29,   nil,   nil,   nil,   672,    19,
+   nil,   nil,   463,   nil,    19,   237,   nil,   nil,    19,   nil,
+   698,  1044,   nil,   nil,   702,   965,   967,   nil,   969,   971,
+   898,   972,   900,   nil,   982,   982,   982,   982,   nil,   nil,
+   nil,   712,   nil,   nil,   nil,   982,   nil,   715,    19,   932,
+   nil,   nil,   932,   nil,   nil,   932,   nil,   932,   nil,   nil,
+  1073,   nil,   nil,   nil,   443,   nil,   733,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   925,   nil,   nil,    19,    29,    29,
+    29,    29,    29,    29,    29,   nil,   nil,   nil,   nil,    29,
+    29,    29,   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    29,   nil,   237,   nil,    19,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   932,   nil,   932,   nil,
+   932,   nil,   932,   nil,    32,   nil,   nil,    19,    19,   nil,
+    32,   nil,   nil,   nil,   nil,  1049,  1050,  1051,  1052,    29,
+    29,   nil,   nil,   932,   nil,    32,   nil,   nil,   nil,    29,
+   nil,   nil,   nil,   nil,    32,    32,    32,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
+   nil,   nil,    29,   991,   nil,   nil,   nil,    29,    19,    19,
+   nil,   nil,   998,   nil,    32,   nil,   nil,   nil,   nil,    32,
+    32,    19,   nil,    32,   nil,    19,  1081,   nil,   nil,   nil,
+   nil,   nil,   nil,    29,  1015,   nil,  1016,   nil,  1017,   nil,
+   nil,   nil,    29,    29,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,   849,   nil,   nil,  1026,   nil,  1028,   nil,   nil,   nil,
+   nil,  1030,   nil,    29,   nil,   nil,    19,   nil,   nil,   nil,
+   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,    19,   nil,
+    32,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
+   nil,   nil,   nil,   nil,   nil,   884,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   237,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   907,   nil,   nil,  1075,   nil,
+   nil,   nil,   nil,   nil,   nil,  1077,   nil,  1078,   nil,  1079,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1087,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,
+   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,    32,
+   nil,   nil,   nil,   nil,    32,    32,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,   956,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   962,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,   973,   nil,   nil,
+   nil,    29,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    32,   nil,    29,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   nil,   nil,    29,    32,   nil,   nil,   nil,    32,   nil,   nil,
+    29,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   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,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   436,
+   449,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
+   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,    29,    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,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   527,   nil,   529,   nil,
+   nil,   531,   532,    16,   nil,   nil,   nil,   nil,   nil,    16,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+    29,    29,   nil,   nil,    29,   nil,   nil,    16,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   571,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    16,    29,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   367,   nil,   nil,    32,   nil,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    29,    32,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,    32,   nil,   nil,   nil,    16,
+    32,    29,   nil,    29,   664,    32,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    29,    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,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,
+   nil,   nil,   nil,   nil,    29,    29,   nil,    32,    32,   nil,
+   nil,   nil,   nil,    32,    32,   nil,   nil,    29,   nil,   nil,
+   705,    29,    16,   571,   441,   708,   nil,   441,   nil,   nil,
+   nil,   nil,   nil,   441,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    32,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,    32,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    16,   nil,   nil,   244,    16,   nil,   nil,   nil,
+   nil,    16,   792,   nil,   294,   294,   294,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   341,   342,   nil,
+   344,   nil,   nil,   nil,   nil,    32,   nil,    16,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,
+   nil,   nil,   805,   nil,   nil,   nil,   nil,   nil,    32,   nil,
+   705,   571,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,   nil,
+   nil,   nil,   nil,   844,   nil,   nil,   845,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   856,   nil,   nil,
+   nil,   nil,   705,   nil,   nil,   571,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   870,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+    32,   nil,    18,   nil,   nil,   nil,   nil,   nil,    18,   nil,
+   nil,   902,    32,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   915,   nil,   nil,    18,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   294,   448,   nil,   nil,   454,   294,
+   nil,   nil,   nil,   nil,   454,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,    18,   nil,    32,    16,   nil,   244,   nil,    32,
+   486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
+   496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
+   506,   507,   nil,   nil,   nil,   nil,   508,    32,   948,   nil,
+   nil,   nil,   nil,    16,   294,   294,    16,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,
+   nil,   294,   nil,   294,   nil,   nil,   294,   294,    18,    16,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   571,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   557,   nil,   558,   nil,   nil,
+   nil,   294,   294,   nil,   nil,   nil,  1003,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    16,   nil,   nil,   nil,   nil,   nil,   441,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   441,   441,   nil,   nil,
+   nil,   nil,   441,   441,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,    18,   nil,   nil,    18,   nil,   nil,   nil,
+   nil,  1040,    18,   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,   294,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
+   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   294,   nil,   454,   454,   454,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,    20,   nil,   nil,   nil,    16,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   441,   294,    18,   nil,   294,   nil,
+   294,   nil,   nil,   nil,   nil,   nil,    18,    18,    20,   325,
+   325,   nil,   nil,   nil,   nil,   nil,   294,    16,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   454,   726,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,    16,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   365,   374,   374,    16,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   294,   nil,    16,    16,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,    16,
+   nil,   nil,  1001,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    16,   nil,   nil,   nil,    16,   nil,   294,   454,   294,
+   nil,   nil,   812,   nil,   nil,   294,   294,   454,   454,   nil,
+   nil,   nil,   nil,   454,   454,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   294,   nil,
+   nil,   294,   nil,    16,    18,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,    20,   nil,   444,   nil,   nil,   444,   nil,
+   nil,   nil,   294,   nil,   444,   nil,   nil,   294,   nil,   nil,
+   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,    18,   nil,   294,    18,   nil,   nil,   nil,   nil,
+   nil,   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,   294,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,
+   nil,   nil,   nil,    20,   nil,   454,   nil,    20,   nil,   nil,
+   nil,   325,    20,   nil,   nil,   nil,   nil,   nil,   454,   454,
+   454,   454,   nil,   921,   nil,    41,   nil,   nil,   325,   nil,
+    18,    41,   nil,   nil,   nil,   nil,    18,   nil,    20,   nil,
+   nil,   nil,   nil,   nil,    42,    18,    18,   nil,    20,    20,
+    42,    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   321,   321,   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   322,
+   322,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   361,   377,   377,   377,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,   294,   454,   nil,   362,   378,   378,   378,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,    18,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   294,   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,   nil,   nil,    18,   nil,    20,   294,   nil,   nil,
+   nil,   nil,   nil,   nil,   325,   nil,    18,   nil,   nil,   nil,
+   nil,   nil,   325,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,
+   nil,   nil,   nil,    42,    20,   nil,   nil,    20,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   321,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,    42,   nil,   nil,   nil,    42,   444,   321,
+   nil,   322,    42,   nil,   nil,    18,   nil,   444,   444,    41,
+   nil,   nil,    18,   444,   444,   nil,   nil,    18,   322,    41,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,
+   nil,   nil,   nil,   nil,   nil,   325,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   325,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,    20,   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,   nil,   nil,   nil,   nil,   nil,   nil,   912,    20,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   444,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   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,    20,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    20,   nil,
+   nil,   nil,   nil,   nil,   nil,   321,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   321,   nil,   nil,    42,   nil,    20,    20,
+   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   322,   nil,   nil,    41,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,    42,   nil,   nil,
+   nil,    41,   nil,   nil,   374,   nil,   nil,   nil,   nil,    20,
+    20,   nil,   nil,  1000,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,    20,   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   374,    41,   nil,   nil,   nil,    20,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,    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,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,    42,
+   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,   nil,   nil,   nil,   nil,    42,
+   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,   nil,   nil,   nil,    41,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,    41,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,    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,   377,   nil,   nil,   nil,   nil,
+    41,    41,   nil,   nil,   996,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,   378,   nil,   nil,    41,   nil,    42,
+    42,   nil,   nil,   997,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   377,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+    41,   nil,   378,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,    42 ]
+
+racc_goto_check = [
+     6,   118,    27,    40,    82,    82,    82,   168,     2,    46,
+    46,    46,    71,    71,    50,    50,    38,    24,    24,    36,
+    70,    24,    12,    63,    38,   113,   206,    22,    22,     9,
+    40,    73,    73,    78,    78,     9,    33,   102,    84,    84,
+    84,    87,    33,    29,    29,    85,    85,   106,   106,    52,
+    70,    14,    31,    31,    10,   167,    31,    42,    42,    15,
+   217,    51,    51,    51,    50,     5,   201,   118,    78,    78,
+    78,    64,    88,   121,    36,    88,    71,     8,    17,   107,
+   159,    37,    68,    24,    24,    24,    24,    76,   144,     9,
+   109,   150,   150,     6,   155,     6,     6,     6,     6,     6,
+     6,   212,    59,     6,   207,    65,    71,   169,    83,    83,
+   157,   143,    60,    83,   142,     7,   213,     1,    31,    31,
+    31,    31,    53,    69,    69,     3,    25,   185,   161,    25,
+   145,     5,    11,   189,   162,    25,   189,   185,    13,    16,
+   156,   159,   156,    18,    20,    21,    23,    26,    58,    58,
+    58,    30,    32,    43,    45,     9,    49,    55,    74,    79,
+    81,    86,    98,    75,     9,   101,   115,   117,   122,    75,
+   123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
+   133,   134,   135,   146,   190,   147,   190,   213,   149,   190,
+   153,   160,   190,    37,    82,    82,   156,   163,   164,   165,
+   166,    27,    27,    87,    46,    27,   171,   172,   217,    31,
+    31,    27,   174,   175,   161,   177,   178,   179,    31,    31,
+   162,   180,    88,    88,   181,     6,   184,   186,   187,   142,
+    71,   188,   191,   192,    38,     7,    14,   159,   206,   193,
+   194,   155,   195,   145,    85,   113,   196,   199,   149,   200,
+   205,   209,   144,   210,   216,    82,   nil,   157,   nil,    46,
+    46,    14,   nil,   nil,    82,    50,    50,   167,   nil,    46,
+   nil,   nil,   217,    36,    12,   143,   nil,   nil,   201,   143,
+     6,   nil,   nil,   nil,   nil,   212,   nil,   nil,   nil,    84,
+   nil,   nil,   nil,    35,     6,     6,   207,   nil,    84,    35,
+     6,    53,    68,   nil,   118,    24,   nil,   207,   nil,    40,
+   nil,    65,   nil,   nil,    35,    78,   nil,    37,   nil,    65,
+    38,    82,    63,    35,    35,    35,   156,    35,    35,    35,
+    14,    50,    78,   nil,   185,    14,    36,    38,     9,   nil,
+    31,    50,    37,   156,    17,    85,   156,     6,     6,    85,
+   169,   109,    64,    35,   118,    84,    84,   nil,    35,    35,
+    38,    31,    35,    35,    35,    35,   nil,   nil,     5,   nil,
+    50,    14,    14,     6,   150,    36,   107,    76,    50,    37,
+     8,    59,   nil,   nil,   nil,    36,    59,   207,    37,   nil,
+   nil,    60,   149,   143,   143,   149,    60,   nil,   149,    58,
+   149,   206,   206,    83,   nil,   nil,   150,   150,    58,   nil,
+   nil,   206,   nil,   206,   nil,   nil,   nil,   156,     5,    35,
+    75,   nil,    75,   nil,    35,    35,    35,    35,    35,    71,
+   167,   167,   121,    37,   nil,   190,    40,   nil,   190,    12,
+    38,   201,   201,    12,    22,    52,   nil,    87,    73,   nil,
+   nil,    52,    10,   217,    50,    50,     6,     6,    46,    36,
+     6,   nil,   nil,   nil,   nil,   nil,   nil,   206,    88,   149,
+   nil,   149,   nil,   149,   nil,   149,   nil,   nil,    85,     6,
+   nil,    71,    65,   nil,    85,    33,    33,   nil,    40,   nil,
+    75,    33,    33,   nil,    51,    85,   149,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   150,   nil,   nil,   143,   143,     6,
+   nil,   nil,    35,    35,    35,    35,    35,    35,    35,   nil,
+   nil,    46,   nil,    35,    35,    35,   nil,    85,    63,    84,
+   nil,   nil,   nil,    15,   nil,   nil,    63,    35,    78,   nil,
+   nil,   nil,     6,    51,    31,   nil,    78,    71,    40,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,    71,   nil,    87,
+    46,    85,   nil,    12,   nil,   nil,   106,   nil,   nil,    25,
+    46,    85,   118,    35,    35,    42,   nil,   nil,    25,    25,
+   nil,     6,   nil,    35,    25,    25,    71,    14,    31,   nil,
+    14,     6,    71,   nil,   nil,   nil,   nil,   206,   nil,   nil,
+    85,   nil,    35,   nil,   nil,   nil,    35,   nil,    85,   nil,
+    35,    35,    75,    75,   206,   nil,   100,   206,    75,    75,
+   nil,   nil,   nil,    33,   nil,   nil,   nil,    35,   nil,   nil,
+    12,   nil,   100,   100,   106,   100,   nil,    35,   nil,   106,
+   nil,   nil,   nil,   nil,    46,    27,    35,    35,    35,   nil,
+   nil,   nil,   nil,   nil,    27,    27,   nil,   nil,     6,   nil,
+    27,    27,   nil,    71,   nil,     6,     2,    35,   102,   nil,
+    71,   113,    40,   nil,   nil,   nil,   nil,   168,    22,    84,
+   nil,   nil,    73,    12,    85,   nil,   nil,     9,   206,   nil,
+   nil,   nil,     6,    37,   nil,   nil,   nil,    40,   nil,    63,
+   151,     6,    82,   151,   nil,   nil,   nil,   nil,   nil,    78,
+    63,   nil,   nil,   nil,    24,    70,    25,     6,   nil,   nil,
+    78,   nil,   nil,   nil,   nil,   nil,     6,   nil,     6,   nil,
+   nil,   nil,   nil,   nil,    40,    85,   nil,   nil,    85,   nil,
+     6,    84,     6,    40,   152,   152,   152,   nil,   nil,    31,
+    75,   nil,   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,
+   151,   118,   nil,    75,    75,    75,    75,   nil,   nil,   nil,
+   nil,    71,    35,    14,   nil,   nil,   nil,   nil,    61,   nil,
+   nil,   204,   204,   204,   nil,   nil,   nil,   nil,    40,   nil,
+   nil,   nil,    27,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   100,   nil,   nil,   nil,   nil,
+   nil,   nil,    14,     6,    24,    40,   nil,   nil,   nil,   nil,
+   nil,   100,    50,   nil,   nil,    35,   nil,    36,   nil,   nil,
+   nil,   nil,   nil,    35,   nil,    35,    61,   nil,   nil,     6,
+   nil,    35,   152,   152,   152,   152,   nil,   152,   nil,    31,
+    35,    14,   nil,   nil,   nil,     6,   nil,    75,   nil,   nil,
+    61,   nil,   nil,    35,   nil,   nil,    35,   nil,   nil,    14,
+   nil,   nil,   nil,   118,    35,   nil,   nil,   nil,   118,   nil,
+   nil,    14,   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,    61,   nil,    35,   152,   152,   152,   152,   nil,
+   nil,    14,   nil,   nil,   151,   nil,   152,   151,   nil,    54,
+   151,    40,   151,   nil,   nil,    54,   100,   nil,   nil,   nil,
+   nil,   nil,   100,     6,     6,     6,   nil,   nil,    78,   100,
+    54,   100,   nil,   nil,   nil,   100,   nil,    78,   nil,    54,
+    54,    54,   nil,    54,   nil,   208,   nil,   nil,   nil,   nil,
+   nil,    35,    14,    14,   nil,   nil,   nil,    35,    35,   nil,
+   nil,   nil,   nil,   nil,   nil,    14,    35,    35,   nil,    54,
+   nil,   nil,    35,    35,    54,    54,   nil,   nil,    54,   nil,
+   nil,   151,   nil,   151,   nil,   151,    78,   151,   nil,   nil,
+   nil,    40,     6,   nil,   nil,    38,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,     6,    35,   nil,   nil,   nil,   151,   nil,
+    14,   nil,    46,   nil,   nil,    35,   nil,    14,   nil,   nil,
+    61,     6,     6,     6,     6,   nil,     6,   nil,   nil,   nil,
+   nil,   nil,    71,     6,   nil,    54,   nil,     6,    71,   nil,
+    54,    54,    54,    54,    54,   nil,   nil,   nil,    40,    35,
+   nil,   nil,    85,   nil,    35,    35,   nil,   nil,    35,   nil,
+    61,   100,   nil,   nil,    61,   204,   204,   nil,   204,   204,
+   154,   204,   154,   nil,     6,     6,     6,     6,   nil,   nil,
+   nil,    61,   nil,   nil,   nil,     6,   nil,    61,    35,   208,
+   nil,   nil,   208,   nil,   nil,   208,   nil,   208,   nil,   nil,
+   100,   nil,   nil,   nil,    35,   nil,    61,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   154,   nil,   nil,    35,    54,    54,
+    54,    54,    54,    54,    54,   nil,   nil,   nil,   nil,    54,
+    54,    54,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,    35,   nil,    35,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   208,   nil,   208,   nil,
+   208,   nil,   208,   nil,    57,   nil,   nil,    35,    35,   nil,
+    57,   nil,   nil,   nil,   nil,   204,   204,   204,   204,    54,
+    54,   nil,   nil,   208,   nil,    57,   nil,   nil,   nil,    54,
+   nil,   nil,   nil,   nil,    57,    57,    57,   nil,    57,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   nil,    54,    35,   nil,   nil,   nil,    54,    35,    35,
+   nil,   nil,    35,   nil,    57,   nil,   nil,   nil,   nil,    57,
+    57,    35,   nil,    57,   nil,    35,   204,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   154,   nil,   154,   nil,   154,   nil,
+   nil,   nil,    54,    54,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,    61,   nil,   nil,   154,   nil,   154,   nil,   nil,   nil,
+   nil,    35,   nil,    54,   nil,   nil,    35,   nil,   nil,   nil,
+   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,    35,   nil,
+    57,   nil,   nil,   nil,   nil,    57,    57,    57,    57,    57,
+   nil,   nil,   nil,   nil,   nil,    61,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    61,   nil,   nil,   154,   nil,
+   nil,   nil,   nil,   nil,   nil,   154,   nil,   154,   nil,   154,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   154,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   nil,   nil,    57,    57,    57,    57,    57,    57,    57,
+   nil,   nil,   nil,   nil,    57,    57,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,   nil,   nil,    61,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    61,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,   nil,    61,   nil,   nil,
+   nil,    54,   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    57,   nil,    54,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,    54,    57,   nil,   nil,   nil,    57,   nil,   nil,
+    54,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,    57,    57,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,
+    80,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,    54,    54,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,    80,   nil,
+   nil,    80,    80,    28,   nil,   nil,   nil,   nil,   nil,    28,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+    54,    54,   nil,   nil,    54,   nil,   nil,    28,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    28,    54,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,    28,   nil,   nil,    57,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,    57,   nil,   nil,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,    57,   nil,   nil,   nil,    28,
+    57,    54,   nil,    54,    80,    57,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,    57,    57,
+   nil,   nil,   nil,   nil,    54,    54,   nil,    57,    57,   nil,
+   nil,   nil,   nil,    57,    57,   nil,   nil,    54,   nil,   nil,
+    80,    54,    28,    80,    28,    80,   nil,    28,   nil,   nil,
+   nil,   nil,   nil,    28,   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,    54,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    57,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,    57,
+   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    28,   nil,   nil,    41,    28,   nil,   nil,   nil,
+   nil,    28,    80,   nil,    41,    41,    41,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,
+    41,   nil,   nil,   nil,   nil,    57,   nil,    28,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
+   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,    57,   nil,
+    80,    80,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,    57,   nil,
+   nil,   nil,   nil,    80,   nil,   nil,    80,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,    57,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,   nil,
+   nil,   nil,    80,   nil,   nil,    80,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+    57,   nil,    34,   nil,   nil,   nil,   nil,   nil,    34,   nil,
+   nil,    80,    57,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    80,   nil,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,    41,    41,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,    57,   nil,   nil,
+   nil,   nil,    34,   nil,    57,    28,   nil,    41,   nil,    57,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,   nil,   nil,   nil,   nil,    41,    57,    80,   nil,
+   nil,   nil,   nil,    28,    41,    41,    28,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,    41,   nil,   nil,    41,    41,    34,    28,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,   nil,   nil,
+   nil,    41,    41,   nil,   nil,   nil,    80,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    28,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,   nil,
+   nil,   nil,    28,    28,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,    34,   nil,   nil,    34,   nil,   nil,   nil,
+   nil,    80,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,
+   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,    41,   nil,    41,    41,    41,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,    39,   nil,   nil,   nil,    28,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    28,    41,    34,   nil,    41,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,    34,    34,    39,    39,
+    39,   nil,   nil,   nil,   nil,   nil,    41,    28,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,    28,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,    39,    39,    28,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    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,    41,   nil,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,    28,
+   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    28,   nil,   nil,   nil,    28,   nil,    41,    41,    41,
+   nil,   nil,    41,   nil,   nil,    41,    41,    41,    41,   nil,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,    41,   nil,
+   nil,    41,   nil,    28,    34,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,    39,   nil,    39,   nil,   nil,    39,   nil,
+   nil,   nil,    41,   nil,    39,   nil,   nil,    41,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,    34,   nil,    41,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
+   nil,   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,    41,   nil,
+   nil,   nil,   nil,    39,   nil,    41,   nil,    39,   nil,   nil,
+   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,    41,    41,
+    41,    41,   nil,    41,   nil,    66,   nil,   nil,    39,   nil,
+    34,    66,   nil,   nil,   nil,   nil,    34,   nil,    39,   nil,
+   nil,   nil,   nil,   nil,    67,    34,    34,   nil,    39,    39,
+    67,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,    66,
+    66,    66,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,    67,
+    67,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,    66,    66,    66,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,    41,   nil,    67,    67,    67,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    34,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    34,   nil,    39,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,
+   nil,   nil,   nil,    67,    39,   nil,   nil,    39,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,    67,   nil,   nil,   nil,    67,    39,    66,
+   nil,    67,    67,   nil,   nil,    34,   nil,    39,    39,    66,
+   nil,   nil,    34,    39,    39,   nil,   nil,    34,    67,    66,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,    67,
+   nil,   nil,   nil,   nil,   nil,    39,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    39,   nil,   nil,   nil,   nil,    39,   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,    39,    39,
+   nil,   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,   nil,   nil,    39,   nil,
+   nil,   nil,   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,    66,    39,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,   nil,   nil,    67,   nil,    39,    39,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,    66,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,    67,   nil,   nil,
+   nil,    66,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,
+    39,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,    39,   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,    39,    66,   nil,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,    66,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,    67,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+    66,    66,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,    67,   nil,   nil,    66,   nil,    67,
+    67,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+    66,   nil,    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,    67 ]
+
+racc_goto_pointer = [
+   nil,   117,     6,   125,   nil,    60,    -2,   107,    72,    27,
+   -84,   122,  -324,  -289,    15,  -501,  -589,  -650,  -707,   nil,
+  -390,  -168,    16,   134,   -50,   -97,    75,   -21,  1641,  -179,
+   -71,   -15,    13,  -190,  2110,   291,  -208,  -374,    -3,  2432,
+   -19,  1932,   -12,  -423,   nil,  -591,   -23,   nil,   nil,   129,
+  -214,    32,  -232,  -396,   907,  -357,   nil,  1172,   116,    66,
+    76,   544,   nil,   -14,    33,  -231,  2763,  2782,  -289,    50,
+   -55,     1,   nil,    20,  -274,   -63,    43,   nil,    -4,   112,
+  1337,  -189,   -28,  -457,     6,    16,  -350,  -256,  -451,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    87,   nil,
+    55,  -185,   -28,   nil,   nil,   nil,  -306,  -663,   nil,  -654,
+   nil,   nil,   nil,  -334,   nil,    94,   nil,  -208,    -4,   nil,
+   nil,  -526,    93,  -220,   110,   110,  -174,   111,   111,  -418,
+  -420,  -700,  -200,  -209,  -419,  -701,   nil,   nil,   nil,   nil,
+   nil,   nil,  -790,  -511,  -534,  -775,  -721,  -649,   nil,  -586,
+  -516,   -74,  -181,  -644,   290,  -740,  -638,  -584,   nil,  -693,
+  -770,  -833,  -827,  -196,  -574,   110,  -404,  -338,   -18,  -169,
+   nil,   -81,   -81,   nil,  -488,  -539,   nil,  -295,  -789,  -365,
+  -509,  -633,   nil,   nil,   134,    32,   130,   130,   132,  -269,
+  -213,   132,   132,   137,  -556,  -398,  -395,   nil,   nil,   142,
+  -346,  -327,   nil,   nil,   171,  -528,  -367,  -674,   111,  -523,
+  -725,   nil,  -679,  -868,   nil,   nil,  -138,  -466 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   309,     7,   360,   312,
+   nil,   nil,   nil,   nil,   560,   nil,   nil,   nil,   nil,   308,
+   310,   nil,   nil,   nil,   nil,    14,    15,    21,   242,   nil,
+   nil,    17,   nil,   442,   243,   340,   nil,   nil,   592,   241,
+   478,    24,   nil,   nil,   355,   nil,    25,    26,    27,   nil,
+   722,   nil,   nil,   nil,   329,   nil,    28,   326,   457,    35,
+   nil,   nil,    37,    40,    39,   nil,   238,   239,   372,   nil,
+   146,   465,   145,    91,   nil,   447,   107,    47,    50,   274,
+   300,   nil,   458,   nil,   459,   470,   680,   522,   298,   283,
+    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
+   nil,   nil,   284,    65,    66,    67,   nil,   nil,    68,   863,
+    69,    70,    71,   nil,    72,   nil,    73,   nil,   573,    74,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   288,   276,   730,   854,
+   582,   864,   787,   620,   nil,   788,   789,  1022,   922,   608,
+   nil,   609,   nil,   nil,   610,   nil,   612,   nil,   833,   nil,
+   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   469,   nil,   nil,   700,   nil,   nil,   510,   nil,   nil,   nil,
+   nil,   nil,    90,    92,    94,   nil,   nil,   nil,   nil,   nil,
+   638,   nil,   nil,   nil,   nil,   nil,   nil,   103,   104,   nil,
+   nil,   893,   769,   607,   nil,   611,   901,   623,   625,   626,
+   933,   629,   630,   934,   633,   636,   nil,   303 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 150, :_reduce_1,
+  2, 148, :_reduce_2,
+  2, 149, :_reduce_3,
+  1, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  3, 151, :_reduce_6,
+  2, 151, :_reduce_none,
+  1, 154, :_reduce_none,
+  0, 158, :_reduce_9,
+  3, 154, :_reduce_10,
+  0, 160, :_reduce_11,
+  4, 157, :_reduce_12,
+  0, 165, :_reduce_13,
+  6, 159, :_reduce_14,
+  3, 159, :_reduce_15,
+  2, 161, :_reduce_16,
+  1, 166, :_reduce_none,
+  1, 166, :_reduce_none,
+  3, 166, :_reduce_19,
+  2, 166, :_reduce_20,
+  1, 167, :_reduce_none,
+  0, 168, :_reduce_22,
+  3, 167, :_reduce_23,
+  0, 179, :_reduce_24,
+  4, 156, :_reduce_25,
+  3, 156, :_reduce_26,
+  3, 156, :_reduce_27,
+  3, 156, :_reduce_28,
+  2, 156, :_reduce_29,
+  3, 156, :_reduce_30,
+  3, 156, :_reduce_31,
+  3, 156, :_reduce_32,
+  3, 156, :_reduce_33,
+  3, 156, :_reduce_34,
+  4, 156, :_reduce_35,
+  1, 156, :_reduce_none,
+  3, 156, :_reduce_37,
+  3, 156, :_reduce_38,
+  3, 156, :_reduce_39,
+  1, 156, :_reduce_none,
+  3, 172, :_reduce_41,
+  3, 172, :_reduce_42,
+  6, 172, :_reduce_43,
+  5, 172, :_reduce_44,
+  5, 172, :_reduce_45,
+  5, 172, :_reduce_46,
+  5, 172, :_reduce_47,
+  3, 172, :_reduce_48,
+  1, 180, :_reduce_49,
+  1, 180, :_reduce_none,
+  1, 178, :_reduce_none,
+  3, 178, :_reduce_52,
+  3, 178, :_reduce_53,
+  3, 178, :_reduce_54,
+  2, 178, :_reduce_55,
+  1, 178, :_reduce_none,
+  1, 171, :_reduce_57,
+  0, 191, :_reduce_58,
+  0, 192, :_reduce_59,
+  4, 189, :_reduce_60,
+  1, 174, :_reduce_none,
+  1, 174, :_reduce_none,
+  1, 194, :_reduce_none,
+  4, 194, :_reduce_64,
+  0, 202, :_reduce_65,
+  4, 199, :_reduce_66,
+  1, 201, :_reduce_67,
+  2, 193, :_reduce_68,
+  3, 193, :_reduce_69,
+  4, 193, :_reduce_70,
+  5, 193, :_reduce_71,
+  4, 193, :_reduce_72,
+  5, 193, :_reduce_73,
+  2, 193, :_reduce_74,
+  2, 193, :_reduce_75,
+  2, 193, :_reduce_76,
+  2, 193, :_reduce_77,
+  2, 193, :_reduce_78,
+  1, 173, :_reduce_none,
+  3, 173, :_reduce_80,
+  1, 207, :_reduce_none,
+  3, 207, :_reduce_82,
+  1, 206, :_reduce_83,
+  2, 206, :_reduce_84,
+  3, 206, :_reduce_85,
+  5, 206, :_reduce_86,
+  2, 206, :_reduce_87,
+  4, 206, :_reduce_88,
+  2, 206, :_reduce_89,
+  4, 206, :_reduce_90,
+  1, 206, :_reduce_91,
+  3, 206, :_reduce_92,
+  1, 210, :_reduce_none,
+  3, 210, :_reduce_94,
+  2, 209, :_reduce_95,
+  3, 209, :_reduce_96,
+  1, 212, :_reduce_97,
+  3, 212, :_reduce_98,
+  1, 211, :_reduce_99,
+  1, 211, :_reduce_100,
+  4, 211, :_reduce_101,
+  3, 211, :_reduce_102,
+  3, 211, :_reduce_103,
+  3, 211, :_reduce_104,
+  3, 211, :_reduce_105,
+  2, 211, :_reduce_106,
+  1, 211, :_reduce_107,
+  1, 175, :_reduce_108,
+  1, 175, :_reduce_109,
+  4, 175, :_reduce_110,
+  3, 175, :_reduce_111,
+  3, 175, :_reduce_112,
+  3, 175, :_reduce_113,
+  3, 175, :_reduce_114,
+  2, 175, :_reduce_115,
+  1, 175, :_reduce_116,
+  1, 215, :_reduce_117,
+  1, 215, :_reduce_none,
+  2, 216, :_reduce_119,
+  1, 216, :_reduce_120,
+  3, 216, :_reduce_121,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_125,
+  1, 217, :_reduce_none,
+  1, 169, :_reduce_127,
+  1, 169, :_reduce_none,
+  1, 170, :_reduce_129,
+  0, 221, :_reduce_130,
+  4, 170, :_reduce_131,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  3, 188, :_reduce_203,
+  3, 188, :_reduce_204,
+  6, 188, :_reduce_205,
+  5, 188, :_reduce_206,
+  5, 188, :_reduce_207,
+  5, 188, :_reduce_208,
+  5, 188, :_reduce_209,
+  4, 188, :_reduce_210,
+  3, 188, :_reduce_211,
+  3, 188, :_reduce_212,
+  3, 188, :_reduce_213,
+  3, 188, :_reduce_214,
+  3, 188, :_reduce_215,
+  3, 188, :_reduce_216,
+  3, 188, :_reduce_217,
+  3, 188, :_reduce_218,
+  3, 188, :_reduce_219,
+  4, 188, :_reduce_220,
+  2, 188, :_reduce_221,
+  2, 188, :_reduce_222,
+  3, 188, :_reduce_223,
+  3, 188, :_reduce_224,
+  3, 188, :_reduce_225,
+  3, 188, :_reduce_226,
+  1, 188, :_reduce_none,
+  3, 188, :_reduce_228,
+  3, 188, :_reduce_229,
+  3, 188, :_reduce_230,
+  3, 188, :_reduce_231,
+  3, 188, :_reduce_232,
+  2, 188, :_reduce_233,
+  2, 188, :_reduce_234,
+  3, 188, :_reduce_235,
+  3, 188, :_reduce_236,
+  3, 188, :_reduce_237,
+  3, 188, :_reduce_238,
+  3, 188, :_reduce_239,
+  6, 188, :_reduce_240,
+  1, 188, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  3, 224, :_reduce_246,
+  3, 224, :_reduce_247,
+  1, 227, :_reduce_248,
+  1, 228, :_reduce_none,
+  2, 228, :_reduce_250,
+  4, 228, :_reduce_251,
+  2, 228, :_reduce_252,
+  1, 222, :_reduce_none,
+  3, 222, :_reduce_254,
+  3, 232, :_reduce_255,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 183, :_reduce_none,
+  1, 183, :_reduce_none,
+  2, 183, :_reduce_260,
+  4, 183, :_reduce_261,
+  2, 183, :_reduce_262,
+  1, 205, :_reduce_263,
+  2, 205, :_reduce_264,
+  2, 205, :_reduce_265,
+  4, 205, :_reduce_266,
+  1, 205, :_reduce_267,
+  0, 236, :_reduce_268,
+  2, 198, :_reduce_269,
+  2, 235, :_reduce_270,
+  2, 234, :_reduce_271,
+  1, 234, :_reduce_none,
+  1, 229, :_reduce_273,
+  2, 229, :_reduce_274,
+  3, 229, :_reduce_275,
+  4, 229, :_reduce_276,
+  1, 177, :_reduce_277,
+  1, 177, :_reduce_278,
+  3, 176, :_reduce_279,
+  4, 176, :_reduce_280,
+  2, 176, :_reduce_281,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_292,
+  0, 271, :_reduce_293,
+  4, 225, :_reduce_294,
+  0, 272, :_reduce_295,
+  3, 225, :_reduce_296,
+  0, 273, :_reduce_297,
+  4, 225, :_reduce_298,
+  3, 225, :_reduce_299,
+  3, 225, :_reduce_300,
+  2, 225, :_reduce_301,
+  0, 274, :_reduce_302,
+  4, 225, :_reduce_303,
+  0, 275, :_reduce_304,
+  4, 225, :_reduce_305,
+  1, 225, :_reduce_306,
+  4, 225, :_reduce_307,
+  3, 225, :_reduce_308,
+  1, 225, :_reduce_309,
+  5, 225, :_reduce_310,
+  4, 225, :_reduce_311,
+  3, 225, :_reduce_312,
+  2, 225, :_reduce_313,
+  1, 225, :_reduce_none,
+  2, 225, :_reduce_315,
+  1, 225, :_reduce_316,
+  6, 225, :_reduce_317,
+  6, 225, :_reduce_318,
+  4, 225, :_reduce_319,
+  4, 225, :_reduce_320,
+  5, 225, :_reduce_321,
+  4, 225, :_reduce_322,
+  6, 225, :_reduce_323,
+  0, 276, :_reduce_324,
+  6, 225, :_reduce_325,
+  0, 277, :_reduce_326,
+  0, 278, :_reduce_327,
+  8, 225, :_reduce_328,
+  0, 279, :_reduce_329,
+  5, 225, :_reduce_330,
+  0, 280, :_reduce_331,
+  6, 225, :_reduce_332,
+  0, 281, :_reduce_333,
+  0, 282, :_reduce_334,
+  9, 225, :_reduce_335,
+  1, 225, :_reduce_336,
+  1, 225, :_reduce_337,
+  1, 225, :_reduce_338,
+  1, 225, :_reduce_339,
+  1, 182, :_reduce_340,
+  1, 246, :_reduce_none,
+  1, 252, :_reduce_none,
+  1, 255, :_reduce_none,
+  1, 257, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 259, :_reduce_none,
+  1, 261, :_reduce_none,
+  1, 263, :_reduce_348,
+  1, 266, :_reduce_349,
+  1, 267, :_reduce_350,
+  1, 283, :_reduce_none,
+  1, 284, :_reduce_none,
+  1, 285, :_reduce_none,
+  1, 286, :_reduce_none,
+  1, 287, :_reduce_none,
+  1, 163, :_reduce_none,
+  1, 288, :_reduce_none,
+  1, 247, :_reduce_none,
+  1, 204, :_reduce_none,
+  1, 253, :_reduce_none,
+  1, 253, :_reduce_none,
+  2, 253, :_reduce_none,
+  1, 190, :_reduce_none,
+  1, 190, :_reduce_none,
+  1, 254, :_reduce_none,
+  5, 254, :_reduce_366,
+  1, 256, :_reduce_none,
+  2, 256, :_reduce_368,
+  1, 262, :_reduce_none,
+  1, 262, :_reduce_370,
+  1, 289, :_reduce_none,
+  3, 289, :_reduce_372,
+  1, 292, :_reduce_373,
+  3, 292, :_reduce_374,
+  1, 291, :_reduce_375,
+  3, 291, :_reduce_376,
+  5, 291, :_reduce_377,
+  1, 291, :_reduce_378,
+  3, 291, :_reduce_379,
+  2, 293, :_reduce_380,
+  1, 293, :_reduce_381,
+  4, 294, :_reduce_382,
+  2, 294, :_reduce_383,
+  2, 294, :_reduce_384,
+  1, 294, :_reduce_385,
+  2, 299, :_reduce_386,
+  1, 299, :_reduce_none,
+  6, 300, :_reduce_388,
+  8, 300, :_reduce_389,
+  4, 300, :_reduce_390,
+  6, 300, :_reduce_391,
+  4, 300, :_reduce_392,
+  2, 300, :_reduce_393,
+  6, 300, :_reduce_394,
+  2, 300, :_reduce_395,
+  4, 300, :_reduce_396,
+  6, 300, :_reduce_397,
+  2, 300, :_reduce_398,
+  4, 300, :_reduce_399,
+  2, 300, :_reduce_400,
+  4, 300, :_reduce_401,
+  1, 300, :_reduce_402,
+  1, 304, :_reduce_403,
+  1, 304, :_reduce_404,
+  3, 305, :_reduce_405,
+  1, 305, :_reduce_406,
+  4, 305, :_reduce_407,
+  1, 306, :_reduce_none,
+  4, 306, :_reduce_409,
+  1, 307, :_reduce_410,
+  3, 307, :_reduce_411,
+  1, 308, :_reduce_412,
+  1, 308, :_reduce_none,
+  0, 312, :_reduce_414,
+  0, 313, :_reduce_415,
+  5, 251, :_reduce_416,
+  4, 310, :_reduce_417,
+  1, 310, :_reduce_418,
+  3, 311, :_reduce_419,
+  3, 311, :_reduce_420,
+  3, 315, :_reduce_421,
+  2, 195, :_reduce_422,
+  4, 195, :_reduce_423,
+  5, 195, :_reduce_424,
+  5, 195, :_reduce_425,
+  2, 250, :_reduce_426,
+  4, 250, :_reduce_427,
+  4, 250, :_reduce_428,
+  3, 250, :_reduce_429,
+  3, 250, :_reduce_430,
+  3, 250, :_reduce_431,
+  2, 250, :_reduce_432,
+  1, 250, :_reduce_433,
+  4, 250, :_reduce_434,
+  0, 318, :_reduce_435,
+  4, 249, :_reduce_436,
+  0, 319, :_reduce_437,
+  4, 249, :_reduce_438,
+  0, 320, :_reduce_439,
+  0, 321, :_reduce_440,
+  4, 200, :_reduce_441,
+  0, 323, :_reduce_442,
+  0, 324, :_reduce_443,
+  4, 316, :_reduce_444,
+  1, 322, :_reduce_445,
+  2, 322, :_reduce_446,
+  3, 322, :_reduce_447,
+  4, 322, :_reduce_448,
+  0, 326, :_reduce_449,
+  6, 260, :_reduce_450,
+  1, 325, :_reduce_none,
+  1, 325, :_reduce_none,
+  6, 162, :_reduce_453,
+  0, 162, :_reduce_454,
+  1, 327, :_reduce_455,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  2, 328, :_reduce_458,
+  1, 328, :_reduce_none,
+  2, 164, :_reduce_460,
+  1, 164, :_reduce_none,
+  1, 237, :_reduce_462,
+  1, 237, :_reduce_none,
+  1, 238, :_reduce_464,
+  1, 330, :_reduce_465,
+  1, 330, :_reduce_none,
+  2, 330, :_reduce_467,
+  3, 331, :_reduce_468,
+  1, 331, :_reduce_469,
+  3, 239, :_reduce_470,
+  3, 240, :_reduce_471,
+  3, 241, :_reduce_472,
+  3, 241, :_reduce_473,
+  1, 335, :_reduce_474,
+  3, 335, :_reduce_475,
+  1, 336, :_reduce_none,
+  2, 336, :_reduce_477,
+  3, 243, :_reduce_478,
+  3, 243, :_reduce_479,
+  1, 338, :_reduce_480,
+  3, 338, :_reduce_481,
+  3, 242, :_reduce_482,
+  3, 242, :_reduce_483,
+  3, 244, :_reduce_484,
+  3, 244, :_reduce_485,
+  1, 339, :_reduce_486,
+  3, 339, :_reduce_487,
+  1, 340, :_reduce_488,
+  3, 340, :_reduce_489,
+  1, 332, :_reduce_490,
+  2, 332, :_reduce_491,
+  1, 333, :_reduce_492,
+  2, 333, :_reduce_493,
+  1, 334, :_reduce_494,
+  2, 334, :_reduce_495,
+  1, 337, :_reduce_496,
+  0, 342, :_reduce_497,
+  3, 337, :_reduce_498,
+  0, 343, :_reduce_499,
+  4, 337, :_reduce_500,
+  1, 341, :_reduce_501,
+  1, 341, :_reduce_502,
+  1, 341, :_reduce_503,
+  1, 341, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  2, 344, :_reduce_507,
+  1, 344, :_reduce_508,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  3, 345, :_reduce_513,
+  1, 329, :_reduce_none,
+  2, 329, :_reduce_515,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 214, :_reduce_525,
+  1, 214, :_reduce_526,
+  1, 214, :_reduce_527,
+  1, 214, :_reduce_528,
+  1, 214, :_reduce_529,
+  1, 214, :_reduce_530,
+  1, 214, :_reduce_531,
+  1, 245, :_reduce_532,
+  1, 245, :_reduce_533,
+  1, 181, :_reduce_534,
+  1, 181, :_reduce_535,
+  1, 186, :_reduce_536,
+  1, 186, :_reduce_537,
+  0, 347, :_reduce_538,
+  4, 264, :_reduce_539,
+  1, 264, :_reduce_540,
+  3, 268, :_reduce_541,
+  0, 349, :_reduce_542,
+  3, 268, :_reduce_543,
+  4, 348, :_reduce_544,
+  2, 348, :_reduce_545,
+  2, 348, :_reduce_546,
+  1, 348, :_reduce_none,
+  2, 351, :_reduce_548,
+  0, 351, :_reduce_549,
+  6, 314, :_reduce_550,
+  8, 314, :_reduce_551,
+  4, 314, :_reduce_552,
+  6, 314, :_reduce_553,
+  4, 314, :_reduce_554,
+  6, 314, :_reduce_555,
+  2, 314, :_reduce_556,
+  4, 314, :_reduce_557,
+  6, 314, :_reduce_558,
+  2, 314, :_reduce_559,
+  4, 314, :_reduce_560,
+  2, 314, :_reduce_561,
+  4, 314, :_reduce_562,
+  1, 314, :_reduce_563,
+  0, 314, :_reduce_564,
+  1, 309, :_reduce_565,
+  1, 309, :_reduce_566,
+  1, 309, :_reduce_567,
+  1, 309, :_reduce_568,
+  1, 290, :_reduce_none,
+  1, 290, :_reduce_570,
+  1, 353, :_reduce_none,
+  1, 354, :_reduce_none,
+  3, 354, :_reduce_573,
+  1, 301, :_reduce_574,
+  3, 301, :_reduce_575,
+  1, 355, :_reduce_none,
+  2, 356, :_reduce_577,
+  1, 356, :_reduce_578,
+  2, 357, :_reduce_579,
+  1, 357, :_reduce_580,
+  1, 295, :_reduce_none,
+  3, 295, :_reduce_582,
+  1, 350, :_reduce_none,
+  3, 350, :_reduce_584,
+  1, 358, :_reduce_none,
+  1, 358, :_reduce_none,
+  2, 296, :_reduce_587,
+  1, 296, :_reduce_588,
+  3, 359, :_reduce_589,
+  3, 360, :_reduce_590,
+  1, 302, :_reduce_591,
+  3, 302, :_reduce_592,
+  1, 352, :_reduce_593,
+  3, 352, :_reduce_594,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  2, 303, :_reduce_597,
+  1, 303, :_reduce_598,
+  1, 362, :_reduce_none,
+  1, 362, :_reduce_none,
+  2, 298, :_reduce_601,
+  2, 297, :_reduce_602,
+  0, 297, :_reduce_603,
+  1, 269, :_reduce_none,
+  0, 363, :_reduce_605,
+  4, 269, :_reduce_606,
+  1, 248, :_reduce_607,
+  2, 248, :_reduce_none,
+  1, 231, :_reduce_none,
+  3, 231, :_reduce_610,
+  3, 364, :_reduce_611,
+  2, 364, :_reduce_612,
+  4, 364, :_reduce_613,
+  2, 364, :_reduce_614,
+  1, 203, :_reduce_none,
+  1, 203, :_reduce_none,
+  1, 203, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  0, 152, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 187, :_reduce_none,
+  1, 187, :_reduce_none,
+  2, 208, :_reduce_635,
+  2, 184, :_reduce_636,
+  0, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 265, :_reduce_640,
+  1, 265, :_reduce_none,
+  1, 155, :_reduce_none,
+  2, 155, :_reduce_643,
+  0, 153, :_reduce_644 ]
+
+racc_reduce_n = 645
+
+racc_shift_n = 1089
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLONELY => 142,
+  :tLOWEST => 143,
+  :tEQL => 144,
+  :tBDOT2 => 145,
+  :tBDOT3 => 146 }
+
+racc_nt_base = 147
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLONELY",
+  "tLOWEST",
+  "tEQL",
+  "tBDOT2",
+  "tBDOT3",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "@3",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@4",
+  "stmts",
+  "stmt_or_begin",
+  "@5",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@6",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "backref",
+  "opt_nl",
+  "arg",
+  "expr_value_do",
+  "do",
+  "@7",
+  "@8",
+  "command",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@9",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "fname",
+  "op",
+  "reswords",
+  "symbol",
+  "@10",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@11",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "k_def",
+  "f_arglist",
+  "singleton",
+  "dot_or_colon",
+  "@12",
+  "@13",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "@22",
+  "@23",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "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",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@24",
+  "@25",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@26",
+  "@27",
+  "@28",
+  "@29",
+  "case_args",
+  "@30",
+  "@31",
+  "cases",
+  "@32",
+  "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",
+  "@33",
+  "@34",
+  "ssym",
+  "dsym",
+  "sym",
+  "@35",
+  "args_tail",
+  "@36",
+  "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",
+  "@37",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 11
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      _, line, stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      res = _values[-2]
+                      # TODO: move down to main match so I can just use val
+
+                      warn "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_16(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 17 omitted
+
+# reduce 18 omitted
+
+def _reduce_19(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_20(val, _values, result)
+                      result = val[1]
+                      debug 12
+
+    result
+end
+
+# reduce 21 omitted
+
+def _reduce_22(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_35(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 13
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 36 omitted
+
+def _reduce_37(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+# reduce 50 omitted
+
+# reduce 51 omitted
+
+def _reduce_52(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_53(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_55(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+# reduce 56 omitted
+
+def _reduce_57(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_58(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 61 omitted
+
+# reduce 62 omitted
+
+# reduce 63 omitted
+
+def _reduce_64(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_65(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_66(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_74(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_75(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_76(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_77(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 79 omitted
+
+def _reduce_80(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 81 omitted
+
+def _reduce_82(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_83(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      l = lexer.lineno
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_92(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 93 omitted
+
+def _reduce_94(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_95(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 14
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_106(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 15
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_107(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 16
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 17
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 18
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 118 omitted
+
+def _reduce_119(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_120(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 122 omitted
+
+# reduce 123 omitted
+
+# reduce 124 omitted
+
+def _reduce_125(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 126 omitted
+
+def _reduce_127(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 128 omitted
+
+def _reduce_129(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_130(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_131(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+def _reduce_203(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_204(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_205(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_206(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_207(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_208(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_209(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_210(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_211(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_212(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_213(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_214(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_215(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_216(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 227 omitted
+
+def _reduce_228(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_229(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+# reduce 241 omitted
+
+# reduce 242 omitted
+
+# reduce 243 omitted
+
+# reduce 244 omitted
+
+# reduce 245 omitted
+
+def _reduce_246(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_247(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 249 omitted
+
+def _reduce_250(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_251(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_252(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 253 omitted
+
+def _reduce_254(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_255(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+# reduce 256 omitted
+
+# reduce 257 omitted
+
+# reduce 258 omitted
+
+# reduce 259 omitted
+
+def _reduce_260(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_261(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_262(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_263(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_264(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_265(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_266(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_267(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_270(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_271(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 272 omitted
+
+def _reduce_273(val, _values, result)
+                      arg, = val
+                      lineno = arg.line || lexer.lineno # HACK
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_274(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_275(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      # TODO: the line number from tSTAR has been dropped
+                      args, _, _, id = val
+                      line = lexer.lineno
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_279(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_280(val, _values, result)
+                      # TODO: make all tXXXX terminals include lexer.lineno
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_281(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 282 omitted
+
+# reduce 283 omitted
+
+# reduce 284 omitted
+
+# reduce 285 omitted
+
+# reduce 286 omitted
+
+# reduce 287 omitted
+
+# reduce 288 omitted
+
+# reduce 289 omitted
+
+# reduce 290 omitted
+
+# reduce 291 omitted
+
+def _reduce_292(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_293(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+                      result = lexer.lineno
+
+    result
+end
+
+def _reduce_296(val, _values, result)
+                      _, line, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_297(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      _, stmt, _ = val
+                      result = stmt
+                      result ||= s(:nil).line lexer.lineno
+                      result.paren = true
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_303(val, _values, result)
+                      _, line, args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_308(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_309(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_310(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_311(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_312(val, _values, result)
+                      debug 20
+
+    result
+end
+
+def _reduce_313(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 314 omitted
+
+def _reduce_315(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_316(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_317(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_318(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      result = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      result = self.in_def
+
+                      self.in_single += 1 # TODO: remove?
+
+                      self.in_def = true # local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
+                      # =>
+                      # [kdef, recv, (name, line), in_def, args, body, kend]
+
+                      val.delete_at 3
+                      val.delete_at 2
+
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 341 omitted
+
+# reduce 342 omitted
+
+# reduce 343 omitted
+
+# reduce 344 omitted
+
+# reduce 345 omitted
+
+# reduce 346 omitted
+
+# reduce 347 omitted
+
+def _reduce_348(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_349(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 351 omitted
+
+# reduce 352 omitted
+
+# reduce 353 omitted
+
+# reduce 354 omitted
+
+# reduce 355 omitted
+
+# reduce 356 omitted
+
+# reduce 357 omitted
+
+# reduce 358 omitted
+
+# reduce 359 omitted
+
+# reduce 360 omitted
+
+# reduce 361 omitted
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+def _reduce_366(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 367 omitted
+
+def _reduce_368(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 369 omitted
+
+def _reduce_370(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+# reduce 371 omitted
+
+def _reduce_372(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_373(val, _values, result)
+                      sym, = val
+
+                      result = s(:array, sym).line lexer.lineno
+
+    result
+end
+
+def _reduce_374(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_375(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_376(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_377(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_378(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_379(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_380(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_381(val, _values, result)
+                      result = args [:*]
+                      result.line lexer.lineno # FIX: tSTAR -> line
+
+    result
+end
+
+def _reduce_382(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_383(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_384(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_385(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_386(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 387 omitted
+
+def _reduce_388(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_389(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_390(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_391(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      result = args(val) << nil
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_404(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_405(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+def _reduce_406(val, _values, result)
+                      result = s(:args).line lexer.lineno
+
+    result
+end
+
+def _reduce_407(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+# reduce 408 omitted
+
+def _reduce_409(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 413 omitted
+
+def _reduce_414(val, _values, result)
+                      self.env.extend :dynamic
+                      result = [lexer.lineno, lexer.lpar_beg]
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_415(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      _, (line, lpar), args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      result = s(:zsuper).line lexer.lineno
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_440(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_441(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_442(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_443(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      result = new_when(val[2], val[4])
+                      result.line val[1]
+                      result << val[5] if val[5]
+
+    result
+end
+
+# reduce 451 omitted
+
+# reduce 452 omitted
+
+def _reduce_453(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_454(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 456 omitted
+
+# reduce 457 omitted
+
+def _reduce_458(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 459 omitted
+
+def _reduce_460(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 461 omitted
+
+def _reduce_462(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 463 omitted
+
+def _reduce_464(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_465(val, _values, result)
+                      debug 37
+
+    result
+end
+
+# reduce 466 omitted
+
+def _reduce_467(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_468(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_469(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_470(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_471(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 476 omitted
+
+def _reduce_477(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_478(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_479(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_480(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_483(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_484(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_485(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_486(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_488(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_489(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_494(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_495(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_496(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_497(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_498(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_499(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                                lexer.lineno,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_500(val, _values, result)
+                      _, memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 38
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_501(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 504 omitted
+
+# reduce 505 omitted
+
+# reduce 506 omitted
+
+def _reduce_507(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_508(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 509 omitted
+
+# reduce 510 omitted
+
+# reduce 511 omitted
+
+# reduce 512 omitted
+
+def _reduce_513(val, _values, result)
+                      _, result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line lexer.lineno
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 39
+                      end
+
+    result
+end
+
+# reduce 514 omitted
+
+def _reduce_515(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 516 omitted
+
+# reduce 517 omitted
+
+# reduce 518 omitted
+
+# reduce 519 omitted
+
+# reduce 520 omitted
+
+# reduce 521 omitted
+
+# reduce 522 omitted
+
+# reduce 523 omitted
+
+# reduce 524 omitted
+
+def _reduce_525(val, _values, result)
+ result = s(:nil).line lexer.lineno
+    result
+end
+
+def _reduce_526(val, _values, result)
+ result = s(:self).line lexer.lineno
+    result
+end
+
+def _reduce_527(val, _values, result)
+ result = s(:true).line lexer.lineno
+    result
+end
+
+def _reduce_528(val, _values, result)
+ result = s(:false).line lexer.lineno
+    result
+end
+
+def _reduce_529(val, _values, result)
+ result = s(:str, self.file).line lexer.lineno
+    result
+end
+
+def _reduce_530(val, _values, result)
+ result = s(:lit, lexer.lineno).line lexer.lineno
+    result
+end
+
+def _reduce_531(val, _values, result)
+                      l = lexer.lineno
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_532(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+                      result.line line
+
+    result
+end
+
+def _reduce_533(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 40
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_539(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_540(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 547 omitted
+
+def _reduce_548(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_549(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_550(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_551(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_555(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_556(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_557(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_558(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_560(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_561(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_562(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_563(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_564(val, _values, result)
+                      result = args val
+                      # result.line lexer.lineno
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 569 omitted
+
+def _reduce_570(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 571 omitted
+
+# reduce 572 omitted
+
+def _reduce_573(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_574(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_575(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+# reduce 576 omitted
+
+def _reduce_577(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_578(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_579(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_580(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 581 omitted
+
+def _reduce_582(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 583 omitted
+
+def _reduce_584(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 585 omitted
+
+# reduce 586 omitted
+
+def _reduce_587(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_588(val, _values, result)
+                      id = :"**"
+                      self.env[id] = :lvar # TODO: needed?!?
+                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
+
+    result
+end
+
+def _reduce_589(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+
+    result
+end
+
+def _reduce_590(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+
+    result
+end
+
+def _reduce_591(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 595 omitted
+
+# reduce 596 omitted
+
+def _reduce_597(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_598(val, _values, result)
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
+
+    result
+end
+
+# reduce 599 omitted
+
+# reduce 600 omitted
+
+def _reduce_601(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_602(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_603(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 604 omitted
+
+def _reduce_605(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_607(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 608 omitted
+
+# reduce 609 omitted
+
+def _reduce_610(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_611(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_612(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_613(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_614(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 615 omitted
+
+# reduce 616 omitted
+
+# reduce 617 omitted
+
+# reduce 618 omitted
+
+# reduce 619 omitted
+
+# reduce 620 omitted
+
+# reduce 621 omitted
+
+# reduce 622 omitted
+
+# reduce 623 omitted
+
+# reduce 624 omitted
+
+# reduce 625 omitted
+
+# reduce 626 omitted
+
+# reduce 627 omitted
+
+# reduce 628 omitted
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+# reduce 631 omitted
+
+# reduce 632 omitted
+
+# reduce 633 omitted
+
+# reduce 634 omitted
+
+def _reduce_635(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_636(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 637 omitted
+
+# reduce 638 omitted
+
+# reduce 639 omitted
+
+def _reduce_640(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 641 omitted
+
+# reduce 642 omitted
+
+def _reduce_643(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_644(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby23Parser
diff -pruN 3.20.0-2/lib/ruby_parser24.rb 3.21.1-1/lib/ruby_parser24.rb
--- 3.20.0-2/lib/ruby_parser24.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser24.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,11209 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby24Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -521,   639,   574,   224,   225,  -109,   -95,  -521,  -521,  -521,
+  -110,   574,  -521,  -521,  -521,  -103,  -521,  -117,   574,   224,
+   225,   -81,   574,   655,  -521,   285,  -521,  -521,  -521,  -116,
+   234,  -109,  -535,   658,     3,  -536,  -521,  -521,   230,  -521,
+  -521,  -521,  -521,  -521,  -112,   280,   737,   224,   225,   736,
+  -110,    95,  -105,  -114,   574,   889,   748,  -104,   737,    96,
+   126,   739,   641,   640,   637,  -111,   235,  -521,  -521,  -521,
+  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,
+  -521,  -117,  -103,  -521,  -521,  -521,   654,  -521,  -521,  -109,
+   282,  -521,  -110,   235,  -521,  -521,   657,  -521,   285,  -521,
+   221,  -521,   231,  -521,  -521,  -521,  -521,  -521,  -521,  -521,
+  -100,  -521,   287,  -521,   222,  -101,   130,  -103,  -116,  -105,
+  -103,   129,  -108,  -619,  -104,   130,  -521,  -521,  -521,  -521,
+   129,  -521,   130,  -521,  -107,  -103,   130,   129,  -521,  -524,
+  -112,   129,  -521,  -114,  -521,  -109,  -524,  -524,  -524,  -103,
+  -109,  -524,  -524,  -524,  -105,  -524,   130,  -105,  -105,  -104,
+   888,   129,  -104,  -524,  -110,  -524,  -524,  -524,   130,  -110,
+  -102,   951,  -105,   129,  -111,  -524,  -524,  -104,  -524,  -524,
+  -524,  -524,  -524,  -113,  -102,   287,  -115,  -113,   285,  -115,
+  -521,   837,   224,   225,   837,  -117,  -524,  -521,  -531,   232,
+  -117,   224,   225,  -524,   223,  -531,  -524,  -524,  -524,  -524,
+  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,
+   108,   109,  -524,  -524,  -524,   836,  -524,  -524,   836,   854,
+  -524,   285,  -116,  -524,  -524,   855,  -524,  -116,  -524,   226,
+  -524,  -108,  -524,  -524,  -524,  -524,  -524,  -524,  -524,   483,
+  -524,  -102,  -524,  -619,  -112,  -620,  -117,  -114,   639,  -112,
+   639,  -619,  -114,   275,  -620,  -524,  -524,  -524,  -524,   232,
+  -524,  -301,  -524,   337,   553,   287,   828,  -524,  -301,  -301,
+  -301,  -524,   235,  -524,  -301,  -301,  -102,  -301,  -111,  -102,
+   624,   235,  -104,  -111,  -106,  -535,   282,  -113,   110,   111,
+  -115,   627,  -113,   829,  -102,  -115,  -117,  -301,  -301,   676,
+  -301,  -301,  -301,  -301,  -301,   108,   109,  -530,   287,   641,
+   640,   641,   640,   338,  -530,   639,  -117,   130,   799,   235,
+   801,  -116,   129,  -112,   635,   634,  -616,  -100,  -301,  -301,
+  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,  -301,  -109,   401,  -301,  -301,  -301,   230,   682,   588,
+  -114,   677,  -301,   589,   229,  -301,  -112,  -617,   628,   868,
+  -301,   581,  -301,   227,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,   624,  -301,  -341,  -301,   404,   641,   640,   637,  -521,
+  -341,  -536,   627,   110,   111,   553,  -521,  -301,  -301,  -341,
+  -106,  -616,  -301,  -623,   922,  -521,   710,   815,   407,  -301,
+  -623,  -623,  -623,  -301,   410,  -115,  -623,  -623,  -114,  -623,
+  -524,   231,  -532,  -616,   427,   635,   634,  -524,  -623,  -532,
+   639,   255,  -617,  -101,   230,   432,  -524,  -107,   639,  -623,
+  -623,   480,  -623,  -623,  -623,  -623,  -623,  -341,  -110,  -533,
+   481,  -529,  -116,  -521,  -617,  -526,  -533,   639,  -529,   628,
+   482,  -111,  -526,   252,  -111,  -533,   737,   254,   253,   739,
+  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,  -623,  -524,   484,  -623,  -623,  -623,  -534,
+   683,   641,   640,   642,  -623,   485,  -534,  -623,   231,   641,
+   640,   647,  -623,   639,  -623,  -534,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,  -533,  -623,  -623,  -623,   676,   641,   640,
+   652,   234,   619,   514,   616,   615,   614,   624,   617,  -623,
+  -623,   523,  -104,  -527,  -623,   526,   230,  -528,   627,   601,
+  -527,  -623,  -623,   546,  -528,  -623,   602,  -113,   528,  -623,
+  -623,  -623,   544,  -534,  -623,  -623,  -623,   255,  -623,  -103,
+   622,   272,   273,   -80,   641,   640,   659,  -623,  -623,  -623,
+  -623,   635,   634,   737,  -112,  -623,   739,   235,  -623,  -623,
+  1049,  -623,  -623,  -623,  -623,  -623,   130,   235,  -292,   252,
+   539,   129,   230,   254,   253,  -292,   271,   270,   639,   556,
+   231,   644,   130,   540,  -292,   628,   547,   129,   481,  -623,
+  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,   224,   225,  -623,  -623,  -623,  -623,   830,
+  -623,   864,   868,  -623,   677,  -623,  -623,  -623,   292,  -623,
+  -619,  -623,   235,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,  -292,  -623,  -623,  -623,   231,   282,   429,   641,
+   640,   130,  -623,   431,   430,   550,   129,   230,  -623,  -623,
+  -623,  -623,   815,  -623,   585,  -623,  -105,   130,   635,   634,
+  -623,  -301,   129,   583,  -623,   554,  -113,   255,  -301,  -301,
+  -301,  -114,  -623,  -301,  -301,  -301,   619,  -301,   616,   615,
+   614,   624,   617,   230,   864,   868,   130,  -301,  -301,  -301,
+   591,   129,   627,   235,  -102,   581,   420,  -301,  -301,   593,
+  -301,  -301,  -301,  -301,  -301,   586,   587,   595,   646,  -111,
+   650,   231,   653,   656,   622,   605,   619,   663,   616,   615,
+   614,  -274,   617,   632,   631,   635,   634,   665,  -301,  -301,
+  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,  -301,   666,   670,  -301,  -301,  -301,   231,   831,  -301,
+   235,   674,  -301,   675,   787,  -301,  -301,   282,  -301,   628,
+  -301,   687,  -301,   791,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,   255,  -301,   255,  -301,   619,   255,   616,   615,   614,
+   624,   617,   133,   134,   135,   136,   137,  -301,  -301,  -301,
+  -301,   627,  -301,  -301,  -301,   255,   694,   235,   235,  -301,
+  -301,  -301,  -301,  -301,   427,  -115,  -301,  -301,   235,  -301,
+   230,  -302,   -95,   622,   714,   235,   559,   669,  -302,   725,
+   730,  -302,   632,   631,   635,   634,   667,  -302,  -302,  -301,
+  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -302,  -301,  -301,
+   733,   235,   235,  -620,   741,   528,  -301,  -301,   744,   733,
+   619,  -620,   616,   615,   614,  -301,   617,   733,   628,   581,
+  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,  -301,  -301,  -301,   231,  -302,  -301,  -301,  -301,   733,
+   682,   769,   775,   778,  -301,  -302,   779,  -301,   787,   781,
+   783,   255,  -301,   785,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,  -301,  -301,  -301,  -301,   619,  -301,   616,   615,   614,
+   624,   617,   619,   794,   616,   615,   614,   795,   617,  -301,
+  -301,   627,  -301,   252,  -301,  -623,   796,   254,   253,   250,
+   251,  -301,  -623,  -623,  -623,  -301,   802,  -115,  -623,  -623,
+   803,  -623,   230,   622,   133,   134,   135,   136,   137,  1033,
+  -623,  -275,   632,   631,   635,   634,   230,   816,   593,   514,
+   514,  -623,  -623,  1039,  -623,  -623,  -623,  -623,  -623,   911,
+   912,   230,  1037,   913,   124,   125,   235,   833,  1033,   275,
+   619,   842,   616,   615,   614,   844,   617,   593,   628,   526,
+   528,   725,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,  -623,  -623,  -623,   231,   235,  -623,  -623,
+  -623,   619,   683,   616,   615,   614,  -623,   617,   787,  -623,
+   231,   282,   282,   255,  -623,   725,  -623,   791,  -623,  -623,
+  -623,  -623,  -623,  -623,  -623,   231,  -623,  -623,  -623,   265,
+   266,  1014,   255,   616,   615,   614,   868,   617,   733,   787,
+   235,  -623,  -623,   235,  -623,   252,  -623,   258,   791,   254,
+   253,   250,   251,  -623,  -434,   733,   235,  -623,   906,  -113,
+   907,  -434,  -434,  -434,   235,   916,  -434,  -434,  -434,   619,
+  -434,   616,   615,   614,   624,   617,   255,  -276,   235,  -434,
+  -434,  -434,   921,   938,   725,   627,  -274,   943,   733,   733,
+  -434,  -434,   733,  -434,  -434,  -434,  -434,  -434,   619,   733,
+   616,   615,   614,   733,   617,   235,   963,   622,   252,   235,
+   778,   966,   254,   253,   250,   251,   632,   631,   635,   634,
+   968,  -434,  -434,  -434,  -434,  -434,  -434,  -434,  -434,  -434,
+  -434,  -434,  -434,  -434,  -434,   970,   787,  -434,  -434,  -434,
+   972,   972,  -434,   235,   282,  -434,   979,  -277,  -434,  -434,
+   980,  -434,   628,  -434,   778,  -434,   983,  -434,  -434,  -434,
+  -434,  -434,  -434,  -434,   986,  -434,  -434,  -434,   619,   988,
+   616,   615,   614,   624,   617,   133,   134,   135,   136,   137,
+  -434,  -434,   990,  -434,   627,  -434,  -310,   133,   134,   135,
+   136,   137,  -434,  -310,  -310,  -310,  -434,   235,  -310,  -310,
+  -310,   992,  -310,   255,   769,   619,   622,   616,   615,   614,
+  1010,   617,  -310,  -310,  1011,   632,   631,   635,   634,   265,
+   266,  1020,  -310,  -310,  1021,  -310,  -310,  -310,  -310,  -310,
+  1014,  1031,   616,   615,   614,   252,   617,   258,  1034,   254,
+   253,   250,   251,   787,   854,   256,  1040,   257,   733,  1050,
+   972,   628,   972,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
+  -310,  -310,  -310,  -310,  -310,  -310,  -310,   972,   778,  -310,
+  -310,  -310,  1057,  1059,  -310,  1061,   292,  -310,  1063,  1063,
+  -310,  -310,   730,  -310,   733,  -310,  1021,  -310,  -620,  -310,
+  -310,  -310,  -310,  -310,  -310,  -310,  -619,  -310,   235,  -310,
+   619,   972,   616,   615,   614,   624,   617,  1084,  1063,  1063,
+  1063,  1063,  -310,  -310,   nil,  -310,   627,  -310,  -293,   nil,
+   nil,   nil,   nil,   nil,  -310,  -293,  -293,  -293,  -310,   nil,
+  -293,  -293,  -293,   nil,  -293,   255,   nil,   nil,   622,   nil,
+   nil,   nil,   nil,   nil,  -293,  -293,  -293,   632,   631,   635,
+   634,   265,   266,   nil,  -293,  -293,   nil,  -293,  -293,  -293,
+  -293,  -293,   nil,   nil,   nil,   nil,   nil,   252,   nil,   258,
+   nil,   254,   253,   250,   251,   nil,   nil,   256,   nil,   257,
+   nil,   nil,   nil,   628,   nil,  -293,  -293,  -293,  -293,  -293,
+  -293,  -293,  -293,  -293,  -293,  -293,  -293,  -293,  -293,   nil,
+   nil,  -293,  -293,  -293,   nil,   nil,  -293,   nil,   nil,  -293,
+   nil,   nil,  -293,  -293,   nil,  -293,   nil,  -293,   nil,  -293,
+   nil,  -293,  -293,  -293,  -293,  -293,  -293,  -293,   nil,  -293,
+   nil,  -293,   619,   nil,   616,   615,   614,   624,   617,   nil,
+   nil,   nil,   nil,   nil,  -293,  -293,  -293,  -293,   627,  -293,
+  -645,  -293,   nil,   nil,   nil,   nil,  -293,  -645,  -645,  -645,
+  -293,   nil,  -645,  -645,  -645,   nil,  -645,   255,   nil,   nil,
+   622,   nil,   nil,   nil,   nil,  -645,  -645,  -645,   nil,   632,
+   631,   635,   634,   265,   266,   nil,  -645,  -645,   nil,  -645,
+  -645,  -645,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   258,   nil,   254,   253,   250,   251,   235,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   628,   nil,  -645,  -645,  -645,
+  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,
+  -645,   nil,   nil,  -645,  -645,  -645,   nil,   nil,  -645,   nil,
+   282,  -645,   nil,   nil,  -645,  -645,   nil,  -645,   nil,  -645,
+   nil,  -645,   nil,  -645,  -645,  -645,  -645,  -645,  -645,  -645,
+   nil,  -645,  -645,  -645,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,  -645,  -645,   nil,  -645,
+   627,  -645,  -624,   nil,   nil,   nil,   nil,   nil,  -645,  -624,
+  -624,  -624,  -645,   nil,  -624,  -624,  -624,   nil,  -624,   255,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,  -624,  -624,  -624,
+  -624,   632,   631,   635,   634,   265,   266,   nil,  -624,  -624,
+   nil,  -624,  -624,  -624,  -624,  -624,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   nil,   254,   253,   250,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628,   nil,  -624,
+  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,
+  -624,  -624,  -624,   nil,   nil,  -624,  -624,  -624,   nil,   nil,
+  -624,   nil,   nil,  -624,   nil,   nil,  -624,  -624,   nil,  -624,
+   nil,  -624,   nil,  -624,   nil,  -624,  -624,  -624,  -624,  -624,
+  -624,  -624,   nil,  -624,  -624,  -624,   619,   nil,   616,   615,
+   614,   624,   617,   nil,   nil,   nil,   nil,   nil,  -624,  -624,
+  -624,  -624,   627,  -624,  -625,  -624,   nil,   nil,   nil,   nil,
+  -624,  -625,  -625,  -625,  -624,   nil,  -625,  -625,  -625,   nil,
+  -625,   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,  -625,
+  -625,  -625,  -625,   nil,   nil,   635,   634,   nil,   nil,   nil,
+  -625,  -625,   nil,  -625,  -625,  -625,  -625,  -625,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628,
+   nil,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
+  -625,  -625,  -625,  -625,  -625,   nil,   nil,  -625,  -625,  -625,
+   nil,   nil,  -625,   nil,   nil,  -625,   nil,   nil,  -625,  -625,
+   nil,  -625,   nil,  -625,   nil,  -625,   nil,  -625,  -625,  -625,
+  -625,  -625,  -625,  -625,   nil,  -625,  -625,  -625,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  -625,  -625,  -625,  -625,   nil,  -625,  -645,  -625,   nil,   nil,
+   nil,   nil,  -625,  -645,  -645,  -645,  -625,   nil,  -645,  -645,
+  -645,   nil,  -645,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  -645,  -645,   nil,  -645,  -645,  -645,  -645,  -645,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   512,   464,   nil,
+   nil,   513,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,  -645,   nil,   nil,   175,   176,   161,
+   162,  -645,   nil,   nil,   nil,   nil,   282,  -645,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,  -645,  -645,
+   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  -645,   nil,   nil,   nil,   nil,  -645,   nil,   nil,
+   170,   nil,   nil,   nil,  -645,   nil,   nil,   nil,  -645,     8,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   671,    11,    49,    10,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,  -249,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   671,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   235,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,  -646,  -646,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,  -646,  -646,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,     8,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,    10,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   nil,   nil,   263,   264,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   nil,   263,   264,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,    10,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   627,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   319,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
+   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,   617,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,   627,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,   nil,
+   336,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   130,   nil,   nil,   nil,   nil,   129,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,
+   624,   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   364,
+   nil,   627,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   635,   634,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   369,    60,   114,   113,   370,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   376,   nil,   nil,   371,   nil,
+   627,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
+   121,   123,   369,    60,   114,   113,   370,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
+   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,   617,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   371,   nil,   627,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,    12,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    49,    10,    13,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   420,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
+    49,   nil,    13,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   437,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   437,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   235,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
+   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   235,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,    12,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
+   nil,    13,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,
+   624,   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,
+   nil,   627,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   635,   634,   nil,    96,   106,   nil,
+   nil,   nil,   542,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   627,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   559,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   304,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   305,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   707,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   313,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   420,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,   nil,
+   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   324,   nil,   627,   320,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   635,   634,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   628,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
+   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   807,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   nil,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   707,
+   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,
+   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   nil,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   437,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   707,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   873,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   304,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   299,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   305,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
+   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   994,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1001,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+  1006,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   994,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
+   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
+   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
+   208,   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,
+   nil,   nil,   183,   190,   181,   182,   178,   179,   180,   141,
+   143,   140,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   188,   199,   189,   212,   185,   205,   195,
+   194,   215,   216,   210,   193,   192,   187,   213,   217,   218,
+   197,   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,
+   207,   214,   209,   208,   201,   211,   196,   184,   203,   202,
+   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,
+   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,
+   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
+   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
+   nil,   nil,   nil,   207,   214,   209,   387,   386,   388,   385,
+   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
+   181,   182,   382,   383,   384,   380,   143,   114,   113,   381,
+   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   392,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
+   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
+   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
+   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
+   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
+   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
+   417,   416,   142,   nil,   418,   nil,   nil,   nil,   nil,   nil,
+   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
+   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
+   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
+   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
+   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   188,   199,   189,   212,   185,   205,   195,   194,
+   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
+   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
+   214,   209,   208,   201,   211,   196,   184,   203,   202,   nil,
+   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,
+   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,
+   205,   195,   194,   215,   216,   210,   193,   192,   187,   213,
+   217,   218,   197,   186,   200,   204,   206,   198,   191,   nil,
+   nil,   nil,   207,   214,   209,   208,   201,   211,   196,   184,
+   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,
+   182,   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,
+   189,   212,   185,   205,   195,   194,   215,   216,   210,   193,
+   192,   187,   213,   217,   218,   197,   186,   200,   204,   206,
+   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,
+   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,
+   183,   190,   181,   182,   178,   179,   180,   141,   143,   nil,
+   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   460,   464,   nil,   nil,   461,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   467,   471,   nil,   nil,   466,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   688,   464,   nil,   nil,   689,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   690,
+   471,   nil,   nil,   691,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   718,   464,   nil,
+   nil,   719,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   721,   471,   nil,   nil,   722,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   688,   464,   nil,   nil,   689,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   690,   471,   nil,   nil,   691,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   755,
+   464,   nil,   nil,   756,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   757,   471,   nil,
+   nil,   758,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   760,   471,   nil,   nil,   761,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   512,   464,   nil,   nil,   513,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   809,   464,   nil,   nil,   810,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   812,
+   471,   nil,   nil,   811,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   619,   177,   616,   615,   614,   624,   617,   619,   nil,
+   616,   615,   614,   624,   617,   nil,   nil,   627,   nil,   nil,
+   nil,   nil,   170,   nil,   627,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   622,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   632,   631,
+   635,   634,   nil,   nil,   nil,   632,   631,   635,   634,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1067,   471,   nil,   nil,
+  1066,   nil,   nil,   nil,   628,   nil,   nil,   nil,   nil,   173,
+   174,   628,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
+   nil,   nil,   nil,   nil,  1070,   464,   nil,   nil,  1071,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
+   nil,   nil,  1072,   471,   nil,   nil,  1073,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   619,   177,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   627,   nil,   nil,   nil,   nil,   170,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   632,   631,   635,   634,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628 ]
+
+racc_action_check = [
+   112,   395,   353,   476,   476,   361,   713,   112,   112,   112,
+   362,   354,   112,   112,   112,   718,   112,   365,   942,    17,
+    17,   713,   947,   408,   112,    29,   112,   112,   112,   586,
+    22,   998,   238,   411,     1,   239,   112,   112,    27,   112,
+   112,   112,   112,   112,   755,    27,   565,   352,   352,   565,
+   999,    92,   719,   756,   874,   773,   576,   721,   566,    92,
+     3,   566,   395,   395,   395,   875,    22,   112,   112,   112,
+   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
+   112,  1002,   718,   112,   112,   112,   408,   112,   112,   238,
+    29,   112,   239,   476,   112,   112,   411,   112,    65,   112,
+    13,   112,    27,   112,   112,   112,   112,   112,   112,   112,
+   361,   112,    29,   112,    15,   362,   353,   718,  1040,   719,
+   718,   353,   365,   721,   721,   354,   112,   112,   112,   112,
+   354,   112,   942,   112,   586,   718,   947,   942,   112,   115,
+  1070,   947,   112,  1071,   112,   998,   115,   115,   115,   755,
+   998,   115,   115,   115,   719,   115,   576,   719,   756,   721,
+   773,   576,   721,   115,   999,   115,   115,   115,   874,   999,
+   875,   874,   719,   874,  1082,   115,   115,   721,   115,   115,
+   115,   115,   115,  1072,   849,    65,  1073,   757,   697,   758,
+   380,   695,   728,   728,   843,  1002,   381,   380,   382,    20,
+  1002,   772,   772,   381,    16,   382,   115,   115,   115,   115,
+   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
+    44,    44,   115,   115,   115,   695,   115,   115,   843,   729,
+   115,   329,  1040,   115,   115,   729,   115,  1040,   115,    18,
+   115,    20,   115,   115,   115,   115,   115,   115,   115,   241,
+   115,   849,   115,   757,  1070,   758,    20,  1071,   648,  1070,
+   651,  1072,  1071,    25,  1073,   115,   115,   115,   115,   444,
+   115,   466,   115,    40,   482,   697,   688,   115,   466,   466,
+   466,   115,   728,   115,   466,   466,   849,   466,  1082,   849,
+   775,   772,   757,  1082,   758,    41,   329,  1072,    44,    44,
+  1073,   775,  1072,   689,   849,  1073,   241,   466,   466,   809,
+   466,   466,   466,   466,   466,   334,   334,   383,   329,   648,
+   648,   651,   651,    43,   383,   530,   444,     5,   648,    49,
+   651,   482,     5,   688,   775,   775,   369,    41,   466,   466,
+   466,   466,   466,   466,   466,   466,   466,   466,   466,   466,
+   466,   466,    41,    99,   466,   466,   466,    19,   466,   371,
+   689,   810,   466,   371,    19,   466,   809,   370,   775,  1007,
+   466,  1007,   466,    19,   466,   466,   466,   466,   466,   466,
+   466,   980,   466,    50,   466,   100,   530,   530,   530,   369,
+    50,    42,   980,   334,   334,   338,   369,   466,   466,    50,
+   466,   369,   466,   467,   832,   369,   530,   918,   101,   466,
+   467,   467,   467,   466,   102,   466,   467,   467,   810,   467,
+   370,    19,   384,   369,   138,   980,   980,   370,   467,   384,
+   397,   488,   370,    42,   237,   219,   370,   338,   402,   467,
+   467,   237,   467,   467,   467,   467,   467,    50,    42,   321,
+   237,   385,   338,   369,   370,   386,   321,   405,   385,   980,
+   240,   832,   386,   488,   918,   321,   570,   488,   488,   570,
+   467,   467,   467,   467,   467,   467,   467,   467,   467,   467,
+   467,   467,   467,   467,   370,   242,   467,   467,   467,   322,
+   467,   397,   397,   397,   467,   243,   322,   467,   237,   402,
+   402,   402,   467,   413,   467,   322,   467,   467,   467,   467,
+   467,   467,   467,   321,   467,   467,   467,   460,   405,   405,
+   405,   247,   783,   281,   783,   783,   783,   783,   783,   467,
+   467,   296,   467,   387,   467,   297,   323,   388,   783,   390,
+   387,   467,   690,   323,   388,   467,   390,   467,   300,   690,
+   690,   690,   323,   322,   690,   690,   690,   489,   690,   460,
+   783,    47,    47,   314,   413,   413,   413,   690,   690,   690,
+   690,   783,   783,   862,   460,   760,   862,  1012,   690,   690,
+  1012,   690,   690,   690,   690,   690,   308,   316,   325,   489,
+   317,   308,   340,   489,   489,   325,    47,    47,   399,   340,
+   323,   399,   358,   318,   325,   783,   324,   358,   340,   690,
+   690,   690,   690,   690,   690,   690,   690,   690,   690,   690,
+   690,   690,   690,   597,   597,   690,   690,   690,   760,   690,
+   690,   743,   743,   690,   461,   760,   690,   690,   327,   690,
+   760,   690,   328,   690,   760,   690,   690,   690,   690,   690,
+   690,   690,   325,   690,   690,   690,   340,   333,   140,   399,
+   399,   766,   760,   140,   140,   335,   766,   363,   690,   690,
+   690,   690,   672,   690,   363,   690,   461,   879,   778,   778,
+   690,   691,   879,   363,   690,   339,   690,   342,   691,   691,
+   691,   461,   760,   691,   691,   691,   393,   691,   393,   393,
+   393,   393,   393,   373,  1041,  1041,   884,   691,   691,   691,
+   373,   884,   393,   348,   672,   359,   360,   691,   691,   373,
+   691,   691,   691,   691,   691,   364,   366,   375,   401,   672,
+   404,   363,   407,   410,   393,   393,   622,   433,   622,   622,
+   622,   436,   622,   393,   393,   393,   393,   438,   691,   691,
+   691,   691,   691,   691,   691,   691,   691,   691,   691,   691,
+   691,   691,   441,   445,   691,   691,   691,   373,   691,   691,
+   455,   458,   691,   459,   622,   691,   691,   468,   691,   393,
+   691,   478,   691,   622,   691,   691,   691,   691,   691,   691,
+   691,   490,   691,   491,   691,   605,   492,   605,   605,   605,
+   605,   605,     9,     9,     9,     9,     9,   691,   691,   691,
+   691,   605,   691,   811,   691,   493,   509,   516,   520,   691,
+   811,   811,   811,   691,   536,   691,   811,   811,   537,   811,
+   443,   547,   538,   605,   541,   543,   548,   443,   547,   551,
+   560,   589,   605,   605,   605,   605,   443,   547,   589,   811,
+   811,   722,   811,   811,   811,   811,   811,   589,   722,   761,
+   561,   562,   567,   722,   568,   571,   761,   722,   573,   577,
+   907,   761,   907,   907,   907,   761,   907,   578,   605,   579,
+   811,   811,   811,   811,   811,   811,   811,   811,   811,   811,
+   811,   811,   811,   811,   443,   547,   811,   811,   811,   580,
+   811,   599,   607,   608,   811,   589,   610,   811,   907,   611,
+   612,   503,   811,   621,   811,   722,   811,   811,   811,   811,
+   811,   811,   811,   761,   811,   769,   811,   769,   769,   769,
+   769,   769,   791,   629,   791,   791,   791,   633,   791,   811,
+   811,   769,   811,   503,   811,   812,   636,   503,   503,   503,
+   503,   811,   812,   812,   812,   811,   655,   811,   812,   812,
+   658,   812,   993,   769,   312,   312,   312,   312,   312,   993,
+   812,   664,   769,   769,   769,   769,  1000,   673,   993,   678,
+   684,   812,   812,  1000,   812,   812,   812,   812,   812,   797,
+   797,  1032,  1000,   797,   797,   797,   692,   693,  1032,   696,
+   787,   700,   787,   787,   787,   702,   787,  1032,   769,   704,
+   706,   715,   812,   812,   812,   812,   812,   812,   812,   812,
+   812,   812,   812,   812,   812,   812,   993,   717,   812,   812,
+   812,   906,   812,   906,   906,   906,   812,   906,   787,   812,
+  1000,   720,   723,   494,   812,   724,   812,   787,   812,   812,
+   812,   812,   812,   812,   812,  1032,   812,   812,   812,   494,
+   494,   963,   727,   963,   963,   963,   745,   963,   751,   906,
+   754,   812,   812,   763,   812,   494,   812,   494,   906,   494,
+   494,   494,   494,   812,    30,   767,   774,   812,   789,   812,
+   790,    30,    30,    30,   792,   804,    30,    30,    30,   770,
+    30,   770,   770,   770,   770,   770,   504,   806,   808,    30,
+    30,    30,   817,   841,   848,   770,   858,   859,   863,   869,
+    30,    30,   876,    30,    30,    30,    30,    30,  1020,   878,
+  1020,  1020,  1020,   882,  1020,   883,   890,   770,   504,   891,
+   892,   896,   504,   504,   504,   504,   770,   770,   770,   770,
+   897,    30,    30,    30,    30,    30,    30,    30,    30,    30,
+    30,    30,    30,    30,    30,   899,  1020,    30,    30,    30,
+   900,   902,    30,   905,    30,    30,   915,   917,    30,    30,
+   924,    30,   770,    30,   925,    30,   927,    30,    30,    30,
+    30,    30,    30,    30,   928,    30,    30,    30,   779,   929,
+   779,   779,   779,   779,   779,   347,   347,   347,   347,   347,
+    30,    30,   931,    30,   779,    30,    31,   535,   535,   535,
+   535,   535,    30,    31,    31,    31,    30,   932,    31,    31,
+    31,   933,    31,   508,   960,  1021,   779,  1021,  1021,  1021,
+   961,  1021,    31,    31,   962,   779,   779,   779,   779,   508,
+   508,   977,    31,    31,   978,    31,    31,    31,    31,    31,
+  1049,   991,  1049,  1049,  1049,   508,  1049,   508,   994,   508,
+   508,   508,   508,  1021,   996,   508,  1001,   508,  1008,  1016,
+  1017,   779,  1018,    31,    31,    31,    31,    31,    31,    31,
+    31,    31,    31,    31,    31,    31,    31,  1019,  1022,    31,
+    31,    31,  1025,  1026,    31,  1027,    31,    31,  1028,  1030,
+    31,    31,  1036,    31,  1047,    31,  1055,    31,  1066,    31,
+    31,    31,    31,    31,    31,    31,  1067,    31,  1069,    31,
+   781,  1077,   781,   781,   781,   781,   781,  1078,  1079,  1080,
+  1081,  1089,    31,    31,   nil,    31,   781,    31,    60,   nil,
+   nil,   nil,   nil,   nil,    31,    60,    60,    60,    31,   nil,
+    60,    60,    60,   nil,    60,   557,   nil,   nil,   781,   nil,
+   nil,   nil,   nil,   nil,    60,    60,    60,   781,   781,   781,
+   781,   557,   557,   nil,    60,    60,   nil,    60,    60,    60,
+    60,    60,   nil,   nil,   nil,   nil,   nil,   557,   nil,   557,
+   nil,   557,   557,   557,   557,   nil,   nil,   557,   nil,   557,
+   nil,   nil,   nil,   781,   nil,    60,    60,    60,    60,    60,
+    60,    60,    60,    60,    60,    60,    60,    60,    60,   nil,
+   nil,    60,    60,    60,   nil,   nil,    60,   nil,   nil,    60,
+   nil,   nil,    60,    60,   nil,    60,   nil,    60,   nil,    60,
+   nil,    60,    60,    60,    60,    60,    60,    60,   nil,    60,
+   nil,    60,   836,   nil,   836,   836,   836,   836,   836,   nil,
+   nil,   nil,   nil,   nil,    60,    60,    60,    60,   836,    60,
+   462,    60,   nil,   nil,   nil,   nil,    60,   462,   462,   462,
+    60,   nil,   462,   462,   462,   nil,   462,   495,   nil,   nil,
+   836,   nil,   nil,   nil,   nil,   462,   462,   462,   nil,   836,
+   836,   836,   836,   495,   495,   nil,   462,   462,   nil,   462,
+   462,   462,   462,   462,   nil,   nil,   nil,   nil,   nil,   495,
+   nil,   495,   nil,   495,   495,   495,   495,   836,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   836,   nil,   462,   462,   462,
+   462,   462,   462,   462,   462,   462,   462,   462,   462,   462,
+   462,   nil,   nil,   462,   462,   462,   nil,   nil,   462,   nil,
+   462,   462,   nil,   nil,   462,   462,   nil,   462,   nil,   462,
+   nil,   462,   nil,   462,   462,   462,   462,   462,   462,   462,
+   nil,   462,   462,   462,   966,   nil,   966,   966,   966,   966,
+   966,   nil,   nil,   nil,   nil,   nil,   462,   462,   nil,   462,
+   966,   462,   471,   nil,   nil,   nil,   nil,   nil,   462,   471,
+   471,   471,   462,   nil,   471,   471,   471,   nil,   471,   496,
+   nil,   nil,   966,   nil,   nil,   nil,   nil,   471,   471,   471,
+   471,   966,   966,   966,   966,   496,   496,   nil,   471,   471,
+   nil,   471,   471,   471,   471,   471,   nil,   nil,   nil,   nil,
+   nil,   496,   nil,   nil,   nil,   496,   496,   496,   496,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   966,   nil,   471,
+   471,   471,   471,   471,   471,   471,   471,   471,   471,   471,
+   471,   471,   471,   nil,   nil,   471,   471,   471,   nil,   nil,
+   471,   nil,   nil,   471,   nil,   nil,   471,   471,   nil,   471,
+   nil,   471,   nil,   471,   nil,   471,   471,   471,   471,   471,
+   471,   471,   nil,   471,   471,   471,   968,   nil,   968,   968,
+   968,   968,   968,   nil,   nil,   nil,   nil,   nil,   471,   471,
+   471,   471,   968,   471,   472,   471,   nil,   nil,   nil,   nil,
+   471,   472,   472,   472,   471,   nil,   472,   472,   472,   nil,
+   472,   nil,   nil,   nil,   968,   nil,   nil,   nil,   nil,   472,
+   472,   472,   472,   nil,   nil,   968,   968,   nil,   nil,   nil,
+   472,   472,   nil,   472,   472,   472,   472,   472,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   968,
+   nil,   472,   472,   472,   472,   472,   472,   472,   472,   472,
+   472,   472,   472,   472,   472,   nil,   nil,   472,   472,   472,
+   nil,   nil,   472,   nil,   nil,   472,   nil,   nil,   472,   472,
+   nil,   472,   nil,   472,   nil,   472,   nil,   472,   472,   472,
+   472,   472,   472,   472,   nil,   472,   472,   472,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   472,   472,   472,   472,   nil,   472,   511,   472,   nil,   nil,
+   nil,   nil,   472,   511,   511,   511,   472,   nil,   511,   511,
+   511,   nil,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   511,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   511,   511,   nil,   511,   511,   511,   511,   511,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   278,   278,   nil,
+   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   278,   278,   nil,   278,   278,   278,   278,   278,   278,   278,
+   nil,   nil,   278,   278,   511,   nil,   nil,   278,   278,   278,
+   278,   511,   nil,   nil,   nil,   nil,   511,   511,   nil,   nil,
+   nil,   nil,   nil,   nil,   278,   278,   nil,   278,   278,   278,
+   278,   278,   278,   278,   278,   278,   278,   278,   511,   511,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   511,   nil,   nil,   nil,   nil,   511,   nil,   nil,
+   278,   nil,   nil,   nil,   511,   nil,   nil,   nil,   511,     2,
+     2,     2,     2,     2,     2,   nil,   nil,   nil,     2,     2,
+   nil,   nil,   nil,     2,   nil,     2,     2,     2,     2,     2,
+     2,     2,   nil,   nil,   nil,   nil,   nil,     2,     2,     2,
+     2,     2,     2,     2,   nil,   nil,     2,   nil,   nil,   nil,
+   nil,   448,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,   nil,     2,     2,     2,   nil,     2,
+     2,   nil,     2,     2,     2,   448,   448,   448,   448,   448,
+   448,   448,   448,   448,   448,   448,   nil,   448,   448,   nil,
+   nil,   448,   448,   nil,     2,   nil,   nil,     2,   nil,   nil,
+     2,     2,   nil,   nil,     2,   nil,     2,   448,   nil,   448,
+     2,   448,   448,   448,   448,   448,   448,   448,     2,   448,
+   nil,   nil,   nil,     2,     2,     2,     2,     2,     2,   nil,
+   nil,   nil,     2,     2,   nil,   448,   nil,   448,   nil,   nil,
+     2,   nil,   nil,     2,     2,     2,   nil,     2,     2,    36,
+    36,    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,
+   nil,   nil,   nil,    36,   nil,    36,    36,    36,    36,    36,
+    36,    36,   nil,   nil,   nil,   nil,   nil,    36,    36,    36,
+    36,    36,    36,    36,   nil,   nil,    36,   nil,   nil,   nil,
+   nil,   454,    36,    36,    36,    36,    36,    36,    36,    36,
+    36,    36,    36,    36,   nil,    36,    36,    36,   nil,    36,
+    36,   nil,    36,    36,    36,   454,   454,   454,   454,   454,
+   454,   454,   454,   454,   454,   454,   nil,   454,   454,   nil,
+   nil,   454,   454,   nil,    36,   nil,   nil,    36,   nil,   nil,
+    36,    36,   nil,   nil,    36,   nil,    36,   454,   nil,   454,
+    36,   454,   454,   454,   454,   454,   454,   454,    36,   454,
+   nil,   nil,   nil,    36,    36,    36,    36,    36,    36,   nil,
+   nil,   nil,    36,    36,   nil,   454,   nil,   nil,   nil,   nil,
+    36,   nil,   nil,    36,    36,    36,   nil,    36,    36,   221,
+   221,   221,   221,   221,   221,   nil,   nil,   nil,   221,   221,
+   nil,   nil,   nil,   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,   221,   221,   221,   221,   221,   221,   221,   221,
+   221,   221,   221,   221,   nil,   221,   221,   221,   nil,   221,
+   221,   nil,   221,   221,   221,    24,    24,    24,    24,    24,
+    24,    24,    24,    24,    24,    24,   nil,    24,    24,   nil,
+   nil,    24,    24,   nil,   221,   nil,   nil,   221,   nil,   nil,
+   221,   221,   nil,   nil,   221,   nil,   221,    24,   nil,    24,
+   221,    24,    24,    24,    24,    24,    24,    24,   221,    24,
+   nil,   nil,   nil,   221,   221,   221,   221,   221,   221,   nil,
+   nil,   nil,   221,   221,   nil,    24,   nil,   nil,   nil,   nil,
+   221,   nil,   nil,   221,   221,   221,   nil,   221,   221,   246,
+   246,   246,   246,   246,   246,   nil,   nil,   nil,   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,   246,   246,   246,   246,   246,   246,   246,   246,
+   246,   246,   246,   246,   nil,   246,   246,   246,   nil,   246,
+   246,   nil,   246,   246,   246,   294,   294,   294,   294,   294,
+   294,   294,   294,   294,   294,   294,   nil,   294,   294,   nil,
+   nil,   294,   294,   nil,   246,   nil,   nil,   246,   nil,   nil,
+   246,   246,   nil,   nil,   246,   nil,   246,   294,   nil,   294,
+   246,   294,   294,   294,   294,   294,   294,   294,   246,   294,
+   nil,   nil,   nil,   246,   246,   246,   246,   246,   246,   nil,
+   nil,   nil,   246,   246,   nil,   294,   nil,   nil,   nil,   nil,
+   246,   nil,   nil,   246,   246,   246,   nil,   246,   246,   315,
+   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,   315,
+   nil,   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,   315,   315,   315,   315,   315,   315,   315,   315,
+   315,   315,   315,   315,   nil,   315,   315,   315,   nil,   315,
+   315,   nil,   315,   315,   315,   507,   507,   507,   507,   507,
+   507,   507,   507,   507,   507,   507,   nil,   507,   507,   nil,
+   nil,   507,   507,   nil,   315,   nil,   nil,   315,   nil,   nil,
+   315,   315,   nil,   nil,   315,   nil,   315,   507,   nil,   507,
+   315,   507,   507,   507,   507,   507,   507,   507,   315,   507,
+   nil,   nil,   nil,   315,   315,   315,   315,   315,   315,   nil,
+   nil,   nil,   315,   315,   507,   507,   nil,   nil,   nil,   nil,
+   315,   nil,   nil,   315,   315,   315,   nil,   315,   315,   320,
+   320,   320,   320,   320,   320,   nil,   nil,   nil,   320,   320,
+   nil,   nil,   nil,   320,   nil,   320,   320,   320,   320,   320,
+   320,   320,   nil,   nil,   nil,   nil,   nil,   320,   320,   320,
+   320,   320,   320,   320,   nil,   nil,   320,   nil,   nil,   nil,
+   nil,   nil,   320,   320,   320,   320,   320,   320,   320,   320,
+   320,   320,   320,   320,   nil,   320,   320,   320,   nil,   320,
+   320,   nil,   320,   320,   320,   558,   558,   558,   558,   558,
+   558,   558,   558,   558,   558,   558,   nil,   558,   558,   nil,
+   nil,   558,   558,   nil,   320,   nil,   nil,   320,   nil,   nil,
+   320,   320,   nil,   nil,   320,   nil,   320,   558,   nil,   558,
+   320,   558,   558,   558,   558,   558,   558,   558,   320,   558,
+   nil,   nil,   nil,   320,   320,   320,   320,   320,   320,   nil,
+   nil,   nil,   320,   320,   nil,   558,   nil,   nil,   nil,   nil,
+   320,   nil,   nil,   320,   320,   320,   nil,   320,   320,   346,
+   346,   346,   346,   346,   346,   nil,   nil,   nil,   346,   346,
+   nil,   nil,   nil,   346,   nil,   346,   346,   346,   346,   346,
+   346,   346,   nil,   nil,   nil,   nil,   nil,   346,   346,   346,
+   346,   346,   346,   346,   nil,   nil,   346,   nil,   nil,   nil,
+   nil,   nil,   346,   346,   346,   346,   346,   346,   346,   346,
+   346,   346,   346,   346,   nil,   346,   346,   346,   nil,   346,
+   346,   nil,   346,   346,   346,   814,   814,   814,   814,   814,
+   814,   814,   814,   814,   814,   814,   nil,   814,   814,   nil,
+   nil,   814,   814,   nil,   346,   nil,   nil,   346,   nil,   nil,
+   346,   346,   nil,   nil,   346,   nil,   346,   814,   nil,   814,
+   346,   814,   814,   814,   814,   814,   814,   814,   346,   814,
+   nil,   nil,   nil,   346,   346,   346,   346,   346,   346,   nil,
+   nil,   nil,   346,   346,   nil,   814,   nil,   nil,   nil,   nil,
+   346,   nil,   nil,   346,   346,   346,   nil,   346,   346,   356,
+   356,   356,   356,   356,   356,   nil,   nil,   nil,   356,   356,
+   nil,   nil,   nil,   356,   nil,   356,   356,   356,   356,   356,
+   356,   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,
+   356,   356,   356,   356,   nil,   nil,   356,   nil,   nil,   nil,
+   nil,   nil,   356,   356,   356,   356,   356,   356,   356,   356,
+   356,   356,   356,   356,   nil,   356,   356,   356,   nil,   356,
+   356,   nil,   356,   356,   356,   923,   923,   923,   923,   923,
+   923,   923,   923,   923,   923,   923,   nil,   923,   923,   nil,
+   nil,   923,   923,   nil,   356,   nil,   nil,   356,   nil,   nil,
+   356,   356,   nil,   nil,   356,   nil,   356,   923,   nil,   923,
+   356,   923,   923,   923,   923,   923,   923,   923,   356,   923,
+   nil,   nil,   nil,   356,   356,   356,   356,   356,   356,   nil,
+   nil,   nil,   356,   356,   nil,   923,   nil,   nil,   nil,   nil,
+   356,   nil,   nil,   356,   356,   356,   nil,   356,   356,   357,
+   357,   357,   357,   357,   357,   nil,   nil,   nil,   357,   357,
+   nil,   nil,   nil,   357,   nil,   357,   357,   357,   357,   357,
+   357,   357,   nil,   nil,   nil,   nil,   nil,   357,   357,   357,
+   357,   357,   357,   357,   nil,   nil,   357,   nil,   nil,   nil,
+   nil,   nil,   357,   357,   357,   357,   357,   357,   357,   357,
+   357,   357,   357,   357,   nil,   357,   357,   357,   nil,   357,
+   357,   nil,   357,   357,   357,   486,   486,   486,   486,   486,
+   486,   486,   486,   486,   486,   486,   nil,   486,   486,   nil,
+   nil,   486,   486,   nil,   357,   nil,   nil,   357,   nil,   nil,
+   357,   357,   nil,   nil,   357,   nil,   357,   486,   nil,   486,
+   357,   486,   486,   486,   486,   486,   486,   486,   357,   486,
+   nil,   nil,   nil,   357,   357,   357,   357,   357,   357,   nil,
+   nil,   nil,   357,   357,   nil,   nil,   nil,   nil,   nil,   nil,
+   357,   nil,   nil,   357,   357,   357,   nil,   357,   357,   572,
+   572,   572,   572,   572,   572,   nil,   nil,   nil,   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,   572,   572,   572,   572,   572,   572,
+   572,   572,   572,   572,   nil,   572,   572,   572,   nil,   572,
+   572,   nil,   572,   572,   572,   487,   487,   487,   487,   487,
+   487,   487,   487,   487,   487,   487,   nil,   487,   487,   nil,
+   nil,   487,   487,   nil,   572,   nil,   nil,   572,   nil,   nil,
+   572,   572,   nil,   nil,   572,   nil,   572,   487,   nil,   487,
+   572,   487,   487,   487,   487,   487,   487,   487,   572,   487,
+   nil,   nil,   nil,   572,   572,   572,   572,   572,   572,   nil,
+   nil,   nil,   572,   572,   nil,   nil,   nil,   nil,   nil,   nil,
+   572,   nil,   nil,   572,   572,   572,   nil,   572,   572,   575,
+   575,   575,   575,   575,   575,   nil,   nil,   nil,   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,   575,   575,   575,   575,   575,   575,   575,   575,
+   575,   575,   575,   575,   nil,   575,   575,   575,   nil,   575,
+   575,   nil,   575,   575,   575,   497,   497,   497,   497,   497,
+   497,   497,   nil,   nil,   497,   497,   nil,   nil,   nil,   nil,
+   nil,   497,   497,   nil,   575,   nil,   nil,   575,   nil,   nil,
+   575,   575,   nil,   nil,   575,   nil,   575,   497,   nil,   497,
+   575,   497,   497,   497,   497,   497,   497,   497,   575,   497,
+   nil,   nil,   nil,   575,   575,   575,   575,   575,   575,   nil,
+   nil,   nil,   575,   575,   nil,   nil,   nil,   nil,   nil,   nil,
+   575,   nil,   nil,   575,   575,   575,   nil,   575,   575,   598,
+   598,   598,   598,   598,   598,   nil,   nil,   nil,   598,   598,
+   nil,   nil,   nil,   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,   598,   598,   598,   598,   598,   598,   598,   598,
+   598,   598,   598,   598,   nil,   598,   598,   598,   nil,   598,
+   598,   nil,   598,   598,   598,   498,   498,   498,   498,   498,
+   498,   498,   nil,   nil,   498,   498,   nil,   nil,   nil,   nil,
+   nil,   498,   498,   nil,   598,   nil,   nil,   598,   nil,   nil,
+   598,   598,   nil,   nil,   598,   nil,   598,   498,   nil,   498,
+   598,   498,   498,   498,   498,   498,   498,   498,   598,   498,
+   nil,   nil,   nil,   598,   598,   598,   598,   598,   598,   nil,
+   nil,   nil,   598,   598,   nil,   nil,   nil,   nil,   nil,   nil,
+   598,   nil,   nil,   598,   598,   598,   nil,   598,   598,   660,
+   660,   660,   660,   660,   660,   nil,   nil,   nil,   660,   660,
+   nil,   nil,   nil,   660,   nil,   660,   660,   660,   660,   660,
+   660,   660,   nil,   nil,   nil,   nil,   nil,   660,   660,   660,
+   660,   660,   660,   660,   nil,   nil,   660,   nil,   nil,   nil,
+   nil,   nil,   660,   660,   660,   660,   660,   660,   660,   660,
+   660,   660,   660,   660,   nil,   660,   660,   660,   nil,   660,
+   660,   nil,   660,   660,   660,   499,   499,   499,   499,   499,
+   499,   499,   nil,   nil,   499,   499,   nil,   nil,   nil,   nil,
+   nil,   499,   499,   nil,   660,   nil,   nil,   660,   nil,   nil,
+   660,   660,   nil,   nil,   660,   nil,   660,   499,   nil,   499,
+   660,   499,   499,   499,   499,   499,   499,   499,   660,   499,
+   nil,   nil,   nil,   660,   660,   660,   660,   660,   660,   nil,
+   nil,   nil,   660,   660,   nil,   nil,   nil,   nil,   nil,   nil,
+   660,   nil,   nil,   660,   660,   660,   nil,   660,   660,   759,
+   759,   759,   759,   759,   759,   nil,   nil,   nil,   759,   759,
+   nil,   nil,   nil,   759,   nil,   759,   759,   759,   759,   759,
+   759,   759,   nil,   nil,   nil,   nil,   nil,   759,   759,   759,
+   759,   759,   759,   759,   nil,   nil,   759,   nil,   nil,   nil,
+   nil,   nil,   759,   759,   759,   759,   759,   759,   759,   759,
+   759,   759,   759,   759,   nil,   759,   759,   759,   nil,   759,
+   759,   nil,   759,   759,   759,   500,   500,   500,   500,   500,
+   500,   500,   nil,   nil,   500,   500,   nil,   nil,   nil,   nil,
+   nil,   500,   500,   nil,   759,   nil,   nil,   759,   nil,   nil,
+   759,   759,   nil,   nil,   759,   nil,   759,   500,   nil,   500,
+   759,   500,   500,   500,   500,   500,   500,   500,   759,   500,
+   nil,   nil,   nil,   759,   759,   759,   759,   759,   759,   nil,
+   nil,   nil,   759,   759,   nil,   nil,   nil,   nil,   nil,   nil,
+   759,   nil,   nil,   759,   759,   759,   nil,   759,   759,   764,
+   764,   764,   764,   764,   764,   nil,   nil,   nil,   764,   764,
+   nil,   nil,   nil,   764,   nil,   764,   764,   764,   764,   764,
+   764,   764,   nil,   nil,   nil,   nil,   nil,   764,   764,   764,
+   764,   764,   764,   764,   nil,   nil,   764,   nil,   nil,   nil,
+   nil,   nil,   764,   764,   764,   764,   764,   764,   764,   764,
+   764,   764,   764,   764,   nil,   764,   764,   764,   nil,   764,
+   764,   nil,   764,   764,   764,   501,   501,   501,   501,   501,
+   501,   501,   nil,   nil,   501,   501,   nil,   nil,   nil,   nil,
+   nil,   501,   501,   nil,   764,   nil,   nil,   764,   nil,   nil,
+   764,   764,   nil,   nil,   764,   nil,   764,   501,   nil,   501,
+   764,   501,   501,   501,   501,   501,   501,   501,   764,   501,
+   nil,   nil,   nil,   764,   764,   764,   764,   764,   764,   nil,
+   nil,   nil,   764,   764,   nil,   nil,   nil,   nil,   nil,   nil,
+   764,   nil,   nil,   764,   764,   764,   nil,   764,   764,   768,
+   768,   768,   768,   768,   768,   nil,   nil,   nil,   768,   768,
+   nil,   nil,   nil,   768,   nil,   768,   768,   768,   768,   768,
+   768,   768,   nil,   nil,   nil,   nil,   nil,   768,   768,   768,
+   768,   768,   768,   768,   nil,   nil,   768,   nil,   nil,   nil,
+   nil,   nil,   768,   768,   768,   768,   768,   768,   768,   768,
+   768,   768,   768,   768,   nil,   768,   768,   768,   nil,   768,
+   768,   nil,   768,   768,   768,   502,   502,   502,   502,   502,
+   502,   502,   nil,   nil,   502,   502,   nil,   nil,   nil,   nil,
+   nil,   502,   502,   nil,   768,   nil,   nil,   768,   nil,   nil,
+   768,   768,   nil,   nil,   768,   nil,   768,   502,   nil,   502,
+   768,   502,   502,   502,   502,   502,   502,   502,   768,   502,
+   nil,   nil,   nil,   768,   768,   768,   768,   768,   768,   nil,
+   nil,   nil,   768,   768,   nil,   nil,   nil,   nil,   nil,   nil,
+   768,   nil,   nil,   768,   768,   768,   nil,   768,   768,   798,
+   798,   798,   798,   798,   798,   nil,   nil,   nil,   798,   798,
+   nil,   nil,   nil,   798,   nil,   798,   798,   798,   798,   798,
+   798,   798,   nil,   nil,   nil,   nil,   nil,   798,   798,   798,
+   798,   798,   798,   798,   nil,   nil,   798,   nil,   nil,   nil,
+   nil,   nil,   798,   798,   798,   798,   798,   798,   798,   798,
+   798,   798,   798,   798,   nil,   798,   798,   798,   nil,   798,
+   798,   nil,   798,   798,   798,   505,   505,   505,   505,   505,
+   505,   505,   nil,   nil,   505,   505,   nil,   nil,   nil,   nil,
+   nil,   505,   505,   nil,   798,   nil,   nil,   798,   nil,   nil,
+   798,   798,   nil,   nil,   798,   nil,   798,   505,   nil,   505,
+   798,   505,   505,   505,   505,   505,   505,   505,   798,   505,
+   nil,   nil,   nil,   798,   798,   798,   798,   798,   798,   nil,
+   nil,   nil,   798,   798,   nil,   nil,   nil,   nil,   nil,   nil,
+   798,   nil,   nil,   798,   798,   798,   nil,   798,   798,   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,   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,   nil,   838,   838,   838,   nil,   838,
+   838,   nil,   838,   838,   838,   506,   506,   506,   506,   506,
+   506,   506,   506,   nil,   506,   506,   nil,   nil,   nil,   nil,
+   nil,   506,   506,   nil,   838,   nil,   nil,   838,   nil,   nil,
+   838,   838,   nil,   nil,   838,   nil,   838,   506,   nil,   506,
+   838,   506,   506,   506,   506,   506,   506,   506,   838,   506,
+   nil,   nil,   nil,   838,   838,   838,   838,   838,   838,   nil,
+   nil,   nil,   838,   838,   nil,   nil,   nil,   nil,   nil,   nil,
+   838,   nil,   nil,   838,   838,   838,   nil,   838,   838,   856,
+   856,   856,   856,   856,   856,   nil,   nil,   nil,   856,   856,
+   nil,   nil,   nil,   856,   nil,   856,   856,   856,   856,   856,
+   856,   856,   nil,   nil,   nil,   nil,   nil,   856,   856,   856,
+   856,   856,   856,   856,   nil,   nil,   856,   nil,   nil,   nil,
+   nil,   nil,   856,   856,   856,   856,   856,   856,   856,   856,
+   856,   856,   856,   856,   nil,   856,   856,   856,   nil,   856,
+   856,   nil,   856,   856,   856,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   856,   nil,   nil,   856,   nil,   nil,
+   856,   856,   nil,   nil,   856,   nil,   856,   nil,   nil,   nil,
+   856,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   856,   nil,
+   nil,   nil,   nil,   856,   856,   856,   856,   856,   856,   nil,
+   nil,   nil,   856,   856,   nil,   nil,   nil,   nil,   nil,   nil,
+   856,   nil,   nil,   856,   856,   856,   nil,   856,   856,   868,
+   868,   868,   868,   868,   868,   nil,   nil,   nil,   868,   868,
+   nil,   nil,   nil,   868,   nil,   868,   868,   868,   868,   868,
+   868,   868,   nil,   nil,   nil,   nil,   nil,   868,   868,   868,
+   868,   868,   868,   868,   nil,   nil,   868,   nil,   nil,   nil,
+   nil,   nil,   868,   868,   868,   868,   868,   868,   868,   868,
+   868,   868,   868,   868,   nil,   868,   868,   868,   nil,   868,
+   868,   nil,   868,   868,   868,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   868,   nil,   nil,   868,   nil,   nil,
+   868,   868,   nil,   nil,   868,   nil,   868,   nil,   nil,   nil,
+   868,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,
+   nil,   nil,   nil,   868,   868,   868,   868,   868,   868,   nil,
+   nil,   nil,   868,   868,   nil,   nil,   nil,   nil,   nil,   nil,
+   868,   nil,   nil,   868,   868,   868,   nil,   868,   868,   888,
+   888,   888,   888,   888,   888,   nil,   nil,   nil,   888,   888,
+   nil,   nil,   nil,   888,   nil,   888,   888,   888,   888,   888,
+   888,   888,   nil,   nil,   nil,   nil,   nil,   888,   888,   888,
+   888,   888,   888,   888,   nil,   nil,   888,   nil,   nil,   nil,
+   nil,   nil,   888,   888,   888,   888,   888,   888,   888,   888,
+   888,   888,   888,   888,   nil,   888,   888,   888,   nil,   888,
+   888,   nil,   888,   888,   888,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   888,   nil,   nil,   888,   nil,   nil,
+   888,   888,   nil,   nil,   888,   nil,   888,   nil,   nil,   nil,
+   888,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   888,   nil,
+   nil,   nil,   nil,   888,   888,   888,   888,   888,   888,   nil,
+   nil,   nil,   888,   888,   nil,   nil,   nil,   nil,   nil,   nil,
+   888,   nil,   nil,   888,   888,   888,   nil,   888,   888,   889,
+   889,   889,   889,   889,   889,   nil,   nil,   nil,   889,   889,
+   nil,   nil,   nil,   889,   nil,   889,   889,   889,   889,   889,
+   889,   889,   nil,   nil,   nil,   nil,   nil,   889,   889,   889,
+   889,   889,   889,   889,   nil,   nil,   889,   nil,   nil,   nil,
+   nil,   nil,   889,   889,   889,   889,   889,   889,   889,   889,
+   889,   889,   889,   889,   nil,   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,   889,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   889,   nil,   nil,   889,   889,   889,   nil,   889,   889,   939,
+   939,   939,   939,   939,   939,   nil,   nil,   nil,   939,   939,
+   nil,   nil,   nil,   939,   nil,   939,   939,   939,   939,   939,
+   939,   939,   nil,   nil,   nil,   nil,   nil,   939,   939,   939,
+   939,   939,   939,   939,   nil,   nil,   939,   nil,   nil,   nil,
+   nil,   nil,   939,   939,   939,   939,   939,   939,   939,   939,
+   939,   939,   939,   939,   nil,   939,   939,   939,   nil,   939,
+   939,   nil,   939,   939,   939,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   939,   nil,   nil,   939,   nil,   nil,
+   939,   939,   nil,   nil,   939,   nil,   939,   nil,   nil,   nil,
+   939,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   939,   nil,
+   nil,   nil,   nil,   939,   939,   939,   939,   939,   939,   nil,
+   nil,   nil,   939,   939,   nil,   nil,   nil,   nil,   nil,   nil,
+   939,   nil,   nil,   939,   939,   939,   nil,   939,   939,   940,
+   940,   940,   940,   940,   940,   nil,   nil,   nil,   940,   940,
+   nil,   nil,   nil,   940,   nil,   940,   940,   940,   940,   940,
+   940,   940,   nil,   nil,   nil,   nil,   nil,   940,   940,   940,
+   940,   940,   940,   940,   nil,   nil,   940,   nil,   nil,   nil,
+   nil,   nil,   940,   940,   940,   940,   940,   940,   940,   940,
+   940,   940,   940,   940,   nil,   940,   940,   940,   nil,   940,
+   940,   nil,   940,   940,   940,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   940,   nil,   nil,   940,   nil,   nil,
+   940,   940,   nil,   nil,   940,   nil,   940,   nil,   nil,   nil,
+   940,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   940,   nil,
+   nil,   nil,   nil,   940,   940,   940,   940,   940,   940,   nil,
+   nil,   nil,   940,   940,   nil,   nil,   nil,   nil,   nil,   nil,
+   940,   nil,   nil,   940,   940,   940,   nil,   940,   940,   952,
+   952,   952,   952,   952,   952,   nil,   nil,   nil,   952,   952,
+   nil,   nil,   nil,   952,   nil,   952,   952,   952,   952,   952,
+   952,   952,   nil,   nil,   nil,   nil,   nil,   952,   952,   952,
+   952,   952,   952,   952,   nil,   nil,   952,   nil,   nil,   nil,
+   nil,   nil,   952,   952,   952,   952,   952,   952,   952,   952,
+   952,   952,   952,   952,   nil,   952,   952,   952,   nil,   952,
+   952,   nil,   952,   952,   952,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   952,   nil,   nil,   952,   nil,   nil,
+   952,   952,   nil,   nil,   952,   nil,   952,   nil,   nil,   nil,
+   952,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   952,   nil,
+   nil,   nil,   nil,   952,   952,   952,   952,   952,   952,   nil,
+   nil,   nil,   952,   952,   nil,   nil,   nil,   nil,   nil,   nil,
+   952,   nil,   nil,   952,   952,   952,   nil,   952,   952,   956,
+   956,   956,   956,   956,   956,   nil,   nil,   nil,   956,   956,
+   nil,   nil,   nil,   956,   nil,   956,   956,   956,   956,   956,
+   956,   956,   nil,   nil,   nil,   nil,   nil,   956,   956,   956,
+   956,   956,   956,   956,   nil,   nil,   956,   nil,   nil,   nil,
+   nil,   nil,   956,   956,   956,   956,   956,   956,   956,   956,
+   956,   956,   956,   956,   nil,   956,   956,   956,   nil,   956,
+   956,   nil,   956,   956,   956,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   956,   nil,   nil,   956,   nil,   nil,
+   956,   956,   nil,   nil,   956,   nil,   956,   nil,   nil,   nil,
+   956,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   956,   nil,
+   nil,   nil,   nil,   956,   956,   956,   956,   956,   956,   nil,
+   nil,   nil,   956,   956,   nil,   nil,   nil,   nil,   nil,   nil,
+   956,   nil,   nil,   956,   956,   956,   nil,   956,   956,   997,
+   997,   997,   997,   997,   997,   nil,   nil,   nil,   997,   997,
+   nil,   nil,   nil,   997,   nil,   997,   997,   997,   997,   997,
+   997,   997,   nil,   nil,   nil,   nil,   nil,   997,   997,   997,
+   997,   997,   997,   997,   nil,   nil,   997,   nil,   nil,   nil,
+   nil,   nil,   997,   997,   997,   997,   997,   997,   997,   997,
+   997,   997,   997,   997,   nil,   997,   997,   997,   nil,   997,
+   997,   nil,   997,   997,   997,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,   nil,   nil,
+   997,   997,   nil,   nil,   997,   nil,   997,   nil,   nil,   nil,
+   997,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,
+   nil,   nil,   nil,   997,   997,   997,   997,   997,   997,   nil,
+   nil,   nil,   997,   997,   nil,   nil,   nil,   nil,   nil,   nil,
+   997,   nil,   nil,   997,   997,   997,   nil,   997,   997,  1004,
+  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,  1004,  1004,
+   nil,   nil,   nil,  1004,   nil,  1004,  1004,  1004,  1004,  1004,
+  1004,  1004,   nil,   nil,   nil,   nil,   nil,  1004,  1004,  1004,
+  1004,  1004,  1004,  1004,   nil,   nil,  1004,   nil,   nil,   nil,
+   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,  1004,  1004,
+  1004,  1004,  1004,  1004,   nil,  1004,  1004,  1004,   nil,  1004,
+  1004,   nil,  1004,  1004,  1004,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1004,   nil,   nil,  1004,   nil,   nil,
+  1004,  1004,   nil,   nil,  1004,   nil,  1004,   nil,   nil,   nil,
+  1004,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,
+   nil,   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,   nil,
+   nil,   nil,  1004,  1004,   nil,   nil,   nil,   nil,   nil,   nil,
+  1004,   nil,   nil,  1004,  1004,  1004,   nil,  1004,  1004,  1009,
+  1009,  1009,  1009,  1009,  1009,   nil,   nil,   nil,  1009,  1009,
+   nil,   nil,   nil,  1009,   nil,  1009,  1009,  1009,  1009,  1009,
+  1009,  1009,   nil,   nil,   nil,   nil,   nil,  1009,  1009,  1009,
+  1009,  1009,  1009,  1009,   nil,   nil,  1009,   nil,   nil,   nil,
+   nil,   nil,  1009,  1009,  1009,  1009,  1009,  1009,  1009,  1009,
+  1009,  1009,  1009,  1009,   nil,  1009,  1009,  1009,   nil,  1009,
+  1009,   nil,  1009,  1009,  1009,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1009,   nil,   nil,  1009,   nil,   nil,
+  1009,  1009,   nil,   nil,  1009,   nil,  1009,   nil,   nil,   nil,
+  1009,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1009,   nil,
+   nil,   nil,   nil,  1009,  1009,  1009,  1009,  1009,  1009,   nil,
+   nil,   nil,  1009,  1009,   nil,   nil,   nil,   nil,   nil,   nil,
+  1009,   nil,   nil,  1009,  1009,  1009,   nil,  1009,  1009,     8,
+     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
+   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
+     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
+   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
+     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
+   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
+   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
+   nil,   nil,     8,     8,     8,   nil,     8,     8,    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,   nil,    23,    23,    23,    23,    23,
+    23,    23,   nil,   nil,    23,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,    23,    23,    23,    23,    23,    23,
+    23,    23,   nil,    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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,    23,    23,    23,   nil,    23,    23,    32,    32,    32,
+   nil,    32,   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,
+    32,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
+   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,
+    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+    32,   nil,   nil,    32,    32,    32,    32,    32,    32,    32,
+    32,    32,    32,    32,    32,   nil,    32,    32,   nil,    32,
+    32,    32,   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,    32,    32,   nil,
+   nil,    32,   nil,    32,   nil,    32,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,    32,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,
+    32,    32,    32,   nil,    32,    32,    33,    33,    33,   nil,
+    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,
+   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
+   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
+   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,
+   nil,   nil,    33,    33,    33,    33,    33,    33,    33,    33,
+    33,    33,    33,    33,   nil,    33,    33,   nil,    33,    33,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,
+    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
+    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,
+   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,
+    33,    33,   nil,    33,    33,    34,    34,    34,   nil,    34,
+   nil,   nil,   nil,    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,    34,
+    34,    34,    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,    34,
+    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,    34,
+    34,   nil,    34,    34,    37,    37,    37,   nil,    37,   nil,
+   nil,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,    37,
+    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,   nil,
+   nil,    37,    37,    37,    37,    37,    37,    37,   nil,   nil,
+    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,
+    37,    37,    37,    37,    37,    37,    37,    37,   nil,    37,
+    37,    37,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,
+   nil,   nil,   nil,   nil,   970,   nil,   970,   970,   970,   970,
+   970,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
+   970,    37,   nil,   nil,    37,    37,   nil,   nil,    37,   nil,
+    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   970,   nil,   nil,   nil,   nil,    37,    37,    37,
+    37,    37,    37,   970,   970,   nil,    37,    37,   nil,   nil,
+   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,    37,
+   nil,    37,    37,    38,    38,    38,   nil,    38,   nil,   nil,
+   nil,    38,    38,   nil,   nil,   nil,    38,   970,    38,    38,
+    38,    38,    38,    38,    38,   nil,   nil,   nil,   nil,   nil,
+    38,    38,    38,    38,    38,    38,    38,   nil,   nil,    38,
+   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,
+    38,    38,    38,    38,    38,    38,    38,   nil,    38,    38,
+    38,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   972,   nil,   972,   972,   972,   972,   972,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   972,
+    38,   nil,   nil,    38,    38,   nil,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   972,   nil,   nil,   nil,   nil,    38,    38,    38,    38,
+    38,    38,   972,   972,   nil,    38,    38,   nil,   nil,   nil,
+    38,   nil,   nil,    38,   nil,   nil,    38,    38,    38,   nil,
+    38,    38,    45,    45,    45,   nil,    45,   nil,   nil,   nil,
+    45,    45,   nil,   nil,   nil,    45,   972,    45,    45,    45,
+    45,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,    45,
+    45,    45,    45,    45,    45,    45,   nil,   nil,    45,   nil,
+   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,
+    45,    45,    45,    45,    45,    45,   nil,    45,    45,    45,
+   nil,    45,    45,   nil,    45,    45,    45,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
+   nil,   nil,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
+   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    45,   nil,   nil,   nil,   nil,    45,    45,    45,    45,    45,
+    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,
+   nil,   nil,    45,   nil,   nil,    45,    45,    45,   nil,    45,
+    45,    46,    46,    46,   nil,    46,   nil,   nil,   nil,    46,
+    46,   nil,   nil,   nil,    46,   nil,    46,    46,    46,    46,
+    46,    46,    46,   nil,   nil,   nil,   nil,   nil,    46,    46,
+    46,    46,    46,    46,    46,   nil,   nil,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,    46,
+    46,    46,    46,    46,    46,   nil,    46,    46,    46,   nil,
+    46,    46,   nil,    46,    46,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,   nil,
+   nil,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,
+   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,   nil,   nil,    46,    46,    46,    46,    46,    46,
+   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,    46,   nil,   nil,    46,    46,    46,   nil,    46,    46,
+    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,    48,
+   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,    48,
+    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,    48,
+    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,    48,
+    48,    48,    48,    48,   nil,    48,    48,    48,   nil,    48,
+    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,
+    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,   nil,
+   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,    48,    48,    48,   nil,    48,    48,    62,
+    62,    62,    62,    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,    62,    62,   nil,    62,    62,    62,    62,    62,    62,
+    62,    62,    62,   nil,    62,    62,    62,   nil,    62,    62,
+   nil,    62,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    62,   nil,   nil,    62,   nil,   nil,    62,
+    62,   nil,   nil,    62,   nil,    62,   nil,   nil,   nil,    62,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,
+   nil,   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,
+   nil,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,    62,
+   nil,   nil,    62,    62,    62,   nil,    62,    62,    67,    67,
+    67,   nil,    67,   nil,   nil,   nil,    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,    67,   nil,   nil,   nil,
+   nil,    67,    67,    67,    67,    67,    67,   nil,   nil,   nil,
+    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,    67,    67,    67,   nil,    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,    68,
+    68,    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,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,
+    68,    68,    68,    68,    68,    68,   nil,   nil,   nil,    68,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+    68,    68,    68,   nil,    68,    68,    71,    71,    71,   nil,
+    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
+   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
+   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
+   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
+   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
+   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
+    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
+    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
+    71,    71,   nil,    71,    71,    72,    72,    72,   nil,    72,
+   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
+    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
+   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
+    72,    72,    72,   nil,    72,    72,   nil,   nil,   nil,    72,
+   nil,   nil,   nil,   nil,   nil,   988,   nil,   988,   988,   988,
+   988,   988,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
+   nil,   988,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   988,   nil,   nil,   nil,   nil,    72,    72,
+    72,    72,    72,    72,   988,   988,   nil,    72,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
+    72,   nil,    72,    72,    73,    73,    73,   nil,    73,   nil,
+   nil,   nil,    73,    73,   nil,   nil,   nil,    73,   988,    73,
+    73,    73,    73,    73,    73,    73,   nil,   nil,   nil,   nil,
+   nil,    73,    73,    73,    73,    73,    73,    73,   nil,   nil,
+    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,
+    73,    73,    73,    73,    73,    73,    73,    73,   nil,    73,
+    73,    73,   nil,    73,    73,   nil,   nil,   nil,    73,   nil,
+   nil,   nil,   nil,   nil,  1050,   nil,  1050,  1050,  1050,  1050,
+  1050,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
+  1050,    73,   nil,   nil,    73,    73,   nil,   nil,    73,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1050,   nil,   nil,   nil,   nil,    73,    73,    73,
+    73,    73,    73,  1050,  1050,   nil,    73,    73,   nil,   nil,
+   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
+   nil,    73,    73,    74,    74,    74,   nil,    74,   nil,   nil,
+   nil,    74,    74,   nil,   nil,   nil,    74,  1050,    74,    74,
+    74,    74,    74,    74,    74,   nil,   nil,   nil,   nil,   nil,
+    74,    74,    74,    74,    74,    74,    74,   nil,   nil,    74,
+   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,   nil,    74,
+    74,    74,    74,    74,    74,    74,    74,   nil,    74,    74,
+    74,   nil,    74,    74,   nil,   nil,   nil,    74,   nil,   nil,
+   nil,   nil,   nil,  1059,   nil,  1059,  1059,  1059,  1059,  1059,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,  1059,
+    74,   nil,   nil,    74,    74,   nil,   nil,    74,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1059,   nil,   nil,   nil,   nil,    74,    74,    74,    74,
+    74,    74,  1059,  1059,   nil,    74,    74,   nil,   nil,   nil,
+   nil,   nil,   nil,    74,   nil,   nil,    74,    74,    74,   nil,
+    74,    74,   128,   128,   128,   128,   128,   nil,   nil,   nil,
+   128,   128,   nil,   nil,   nil,   128,  1059,   128,   128,   128,
+   128,   128,   128,   128,   nil,   nil,   nil,   nil,   nil,   128,
+   128,   128,   128,   128,   128,   128,   nil,   nil,   128,   nil,
+   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,   128,
+   128,   128,   128,   128,   128,   128,   nil,   128,   128,   128,
+   nil,   128,   128,   nil,   128,   128,   128,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,   nil,   128,
+   nil,   nil,   128,   128,   nil,   nil,   128,   nil,   128,   nil,
+   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   128,   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,
+   128,   nil,   nil,   nil,   128,   128,   nil,   nil,   nil,   nil,
+   nil,   128,   128,   nil,   nil,   128,   128,   128,   nil,   128,
+   128,   133,   133,   133,   nil,   133,   nil,   nil,   nil,   133,
+   133,   nil,   nil,   nil,   133,   nil,   133,   133,   133,   133,
+   133,   133,   133,   nil,   nil,   nil,   nil,   nil,   133,   133,
+   133,   133,   133,   133,   133,   nil,   nil,   133,   nil,   nil,
+   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,
+   133,   133,   133,   133,   133,   nil,   133,   133,   133,   nil,
+   133,   133,   nil,   133,   133,   133,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   nil,
+   nil,   133,   133,   nil,   nil,   133,   nil,   nil,   nil,   nil,
+   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,
+   nil,   nil,   nil,   nil,   133,   133,   133,   133,   133,   133,
+   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,   nil,   nil,
+   nil,   133,   nil,   nil,   133,   133,   133,   nil,   133,   133,
+   134,   134,   134,   nil,   134,   nil,   nil,   nil,   134,   134,
+   nil,   nil,   nil,   134,   nil,   134,   134,   134,   134,   134,
+   134,   134,   nil,   nil,   nil,   nil,   nil,   134,   134,   134,
+   134,   134,   134,   134,   nil,   nil,   134,   nil,   nil,   nil,
+   nil,   nil,   nil,   134,   nil,   nil,   134,   134,   134,   134,
+   134,   134,   134,   134,   nil,   134,   134,   134,   nil,   134,
+   134,   nil,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   nil,   nil,
+   134,   134,   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,
+   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,
+   nil,   nil,   nil,   134,   134,   134,   134,   134,   134,   nil,
+   nil,   nil,   134,   134,   nil,   nil,   nil,   nil,   nil,   nil,
+   134,   nil,   nil,   134,   134,   134,   nil,   134,   134,   135,
+   135,   135,   nil,   135,   nil,   nil,   nil,   135,   135,   nil,
+   nil,   nil,   135,   nil,   135,   135,   135,   135,   135,   135,
+   135,   nil,   nil,   nil,   nil,   nil,   135,   135,   135,   135,
+   135,   135,   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,
+   nil,   nil,   135,   nil,   nil,   135,   135,   135,   135,   135,
+   135,   135,   135,   nil,   135,   135,   135,   nil,   135,   135,
+   nil,   135,   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   135,   nil,   nil,   135,   nil,   nil,   135,
+   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,   nil,   135,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
+   nil,   nil,   135,   135,   135,   135,   135,   135,   nil,   nil,
+   nil,   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,   135,
+   nil,   nil,   135,   135,   135,   nil,   135,   135,   136,   136,
+   136,   nil,   136,   nil,   nil,   nil,   136,   136,   nil,   nil,
+   nil,   136,   nil,   136,   136,   136,   136,   136,   136,   136,
+   nil,   nil,   nil,   nil,   nil,   136,   136,   136,   136,   136,
+   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
+   nil,   136,   nil,   nil,   136,   136,   136,   136,   136,   136,
+   136,   136,   nil,   136,   136,   136,   nil,   136,   136,   nil,
+   136,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,   136,   136,
+   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,   136,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,   nil,
+   nil,   136,   136,   136,   136,   136,   136,   nil,   nil,   nil,
+   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
+   nil,   136,   136,   136,   nil,   136,   136,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
+   137,   nil,   137,   137,   137,   137,   137,   137,   137,   nil,
+   nil,   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,
+   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   137,
+   137,   nil,   137,   137,   137,   137,   137,   137,   137,   137,
+   137,   nil,   137,   137,   137,   nil,   137,   137,   nil,   137,
+   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   137,   nil,   nil,   137,   nil,   nil,   137,   137,   nil,
+   nil,   137,   nil,   137,   nil,   nil,   nil,   137,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,
+   137,   137,   137,   137,   137,   137,   nil,   nil,   nil,   137,
+   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
+   137,   137,   137,   nil,   137,   137,   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,   nil,   222,   222,   222,   222,   222,   222,   222,
+   nil,   nil,   222,   nil,   nil,   nil,   nil,   nil,   nil,   222,
+   nil,   nil,   222,   222,   222,   222,   222,   222,   222,   222,
+   nil,   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,   222,   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,   nil,   nil,   nil,   222,   nil,   nil,   222,
+   222,   222,   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,   nil,   223,   223,   223,   223,   223,   223,   223,   nil,
+   nil,   223,   nil,   nil,   nil,   nil,   nil,   nil,   223,   nil,
+   nil,   223,   223,   223,   223,   223,   223,   223,   223,   nil,
+   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,   223,   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,   nil,   nil,   nil,   223,   nil,   nil,   223,   223,
+   223,   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,
+   nil,   224,   224,   224,   224,   224,   224,   224,   nil,   nil,
+   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,
+   224,   224,   224,   224,   224,   224,   224,   224,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,   224,   224,
+   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,   nil,
+   225,   225,   225,   225,   225,   225,   225,   nil,   nil,   225,
+   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,   225,
+   225,   225,   225,   225,   225,   225,   225,   nil,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   225,   nil,   nil,   225,   225,   225,   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,   nil,   226,
+   226,   226,   226,   226,   226,   226,   nil,   nil,   226,   nil,
+   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
+   226,   226,   226,   226,   226,   226,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   226,   nil,   nil,   226,   226,   226,   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,   nil,   227,   227,
+   227,   227,   227,   227,   227,   nil,   nil,   227,   nil,   nil,
+   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,   227,   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,   227,   nil,   227,
+   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,   nil,   nil,
+   nil,   227,   nil,   227,   227,   227,   227,   nil,   227,   227,
+   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,   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,   232,   nil,
+   nil,   nil,   nil,   232,   232,   232,   232,   232,   232,   nil,
+   nil,   nil,   232,   232,   nil,   nil,   nil,   nil,   nil,   nil,
+   232,   nil,   nil,   232,   232,   232,   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,   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,   233,   nil,   nil,
+   nil,   nil,   233,   233,   233,   233,   233,   233,   nil,   nil,
+   nil,   233,   233,   nil,   nil,   nil,   nil,   nil,   nil,   233,
+   nil,   nil,   233,   233,   233,   nil,   233,   233,   234,   234,
+   234,   nil,   234,   nil,   nil,   nil,   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,   234,   nil,   nil,   nil,
+   nil,   234,   234,   234,   234,   234,   234,   nil,   nil,   nil,
+   234,   234,   234,   nil,   nil,   nil,   nil,   nil,   234,   nil,
+   nil,   234,   234,   234,   nil,   234,   234,   245,   245,   245,
+   nil,   245,   nil,   nil,   nil,   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,   245,   nil,   nil,   nil,   nil,
+   245,   245,   245,   245,   245,   245,   nil,   nil,   nil,   245,
+   245,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   245,   245,   245,   nil,   245,   245,   248,   248,   248,   nil,
+   248,   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,   nil,   248,
+   248,   248,   248,   248,   248,   nil,   nil,   nil,   248,   248,
+   nil,   nil,   nil,   nil,   nil,   nil,   248,   nil,   nil,   248,
+   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,   nil,   nil,   249,   249,
+   249,   249,   249,   249,   nil,   nil,   nil,   249,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   249,   249,
+   249,   nil,   249,   249,   250,   250,   250,   nil,   250,   nil,
+   nil,   nil,   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,   250,   nil,   nil,   nil,   nil,   250,   250,   250,
+   250,   250,   250,   nil,   nil,   nil,   250,   250,   nil,   nil,
+   nil,   nil,   nil,   nil,   250,   nil,   nil,   250,   250,   250,
+   nil,   250,   250,   251,   251,   251,   nil,   251,   nil,   nil,
+   nil,   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,   251,   nil,   nil,   nil,   nil,   251,   251,   251,   251,
+   251,   251,   nil,   nil,   nil,   251,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,   251,   nil,   nil,   251,   251,   251,   nil,
+   251,   251,   252,   252,   252,   nil,   252,   nil,   nil,   nil,
+   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,
+   252,   nil,   nil,   nil,   nil,   252,   252,   252,   252,   252,
+   252,   nil,   nil,   nil,   252,   252,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   252,   252,   252,   nil,   252,
+   252,   253,   253,   253,   nil,   253,   nil,   nil,   nil,   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,   253,
+   nil,   nil,   nil,   nil,   253,   253,   253,   253,   253,   253,
+   nil,   nil,   nil,   253,   253,   nil,   nil,   nil,   nil,   nil,
+   nil,   253,   nil,   nil,   253,   253,   253,   nil,   253,   253,
+   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,   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,   254,   nil,
+   nil,   nil,   nil,   254,   254,   254,   254,   254,   254,   nil,
+   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,   nil,   nil,
+   254,   nil,   nil,   254,   254,   254,   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,   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,   255,   nil,   nil,
+   nil,   nil,   255,   255,   255,   255,   255,   255,   nil,   nil,
+   nil,   255,   255,   nil,   nil,   nil,   nil,   nil,   nil,   255,
+   nil,   nil,   255,   255,   255,   nil,   255,   255,   256,   256,
+   256,   nil,   256,   nil,   nil,   nil,   256,   256,   nil,   nil,
+   nil,   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,   256,   256,   256,   256,
+   256,   256,   nil,   256,   256,   256,   nil,   256,   256,   nil,
+   256,   256,   256,   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,   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,   nil,   nil,   nil,   256,   nil,
+   nil,   256,   256,   256,   nil,   256,   256,   257,   257,   257,
+   nil,   257,   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,
+   257,   nil,   257,   257,   257,   257,   257,   257,   257,   nil,
+   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,   257,
+   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   257,   257,   257,   257,   257,   257,   257,
+   257,   nil,   257,   257,   257,   nil,   257,   257,   nil,   257,
+   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   257,   nil,   nil,   257,   257,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   257,   257,   257,   257,   257,   257,   nil,   nil,   nil,   257,
+   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   257,   257,   257,   nil,   257,   257,   258,   258,   258,   nil,
+   258,   nil,   nil,   nil,   258,   258,   nil,   nil,   nil,   258,
+   nil,   258,   258,   258,   258,   258,   258,   258,   nil,   nil,
+   nil,   nil,   nil,   258,   258,   258,   258,   258,   258,   258,
+   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,
+   nil,   nil,   258,   258,   258,   258,   258,   258,   258,   258,
+   nil,   258,   258,   258,   nil,   258,   258,   nil,   258,   258,
+   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   258,   nil,   nil,   258,   nil,   nil,   258,   258,   nil,   nil,
+   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,   258,
+   258,   258,   258,   258,   258,   nil,   nil,   nil,   258,   258,
+   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,
+   258,   258,   nil,   258,   258,   259,   259,   259,   nil,   259,
+   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,   259,   nil,
+   259,   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,
+   nil,   nil,   259,   259,   259,   259,   259,   259,   259,   nil,
+   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,
+   nil,   259,   259,   259,   259,   259,   259,   259,   259,   nil,
+   259,   259,   259,   nil,   259,   259,   nil,   259,   259,   259,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   259,
+   nil,   nil,   259,   nil,   nil,   259,   259,   nil,   nil,   259,
+   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,   259,   259,
+   259,   259,   259,   259,   nil,   nil,   nil,   259,   259,   nil,
+   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,   259,
+   259,   nil,   259,   259,   260,   260,   260,   nil,   260,   nil,
+   nil,   nil,   260,   260,   nil,   nil,   nil,   260,   nil,   260,
+   260,   260,   260,   260,   260,   260,   nil,   nil,   nil,   nil,
+   nil,   260,   260,   260,   260,   260,   260,   260,   nil,   nil,
+   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,
+   260,   260,   260,   260,   260,   260,   260,   260,   nil,   260,
+   260,   260,   nil,   260,   260,   nil,   260,   260,   260,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,
+   nil,   260,   nil,   nil,   260,   260,   nil,   nil,   260,   nil,
+   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   260,   nil,   nil,   nil,   nil,   260,   260,   260,
+   260,   260,   260,   nil,   nil,   nil,   260,   260,   nil,   nil,
+   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,   260,   260,
+   nil,   260,   260,   261,   261,   261,   nil,   261,   nil,   nil,
+   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,   nil,   261,   261,
+   261,   nil,   261,   261,   nil,   261,   261,   261,   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,   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,
+   nil,   nil,   nil,   261,   nil,   nil,   261,   261,   261,   nil,
+   261,   261,   262,   262,   262,   nil,   262,   nil,   nil,   nil,
+   262,   262,   nil,   nil,   nil,   262,   nil,   262,   262,   262,
+   262,   262,   262,   262,   nil,   nil,   nil,   nil,   nil,   262,
+   262,   262,   262,   262,   262,   262,   nil,   nil,   262,   nil,
+   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,
+   262,   262,   262,   262,   262,   262,   nil,   262,   262,   262,
+   nil,   262,   262,   nil,   262,   262,   262,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,
+   nil,   nil,   262,   262,   nil,   nil,   262,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   262,   nil,   nil,   nil,   nil,   262,   262,   262,   262,   262,
+   262,   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   262,   262,   262,   nil,   262,
+   262,   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,   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,   nil,   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,   nil,   nil,   nil,
+   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   263,   nil,   nil,   263,   263,   263,   nil,   263,   263,
+   264,   264,   264,   nil,   264,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,
+   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   264,   nil,
+   nil,   nil,   nil,   264,   264,   264,   264,   264,   264,   nil,
+   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,   nil,   nil,
+   264,   nil,   nil,   264,   264,   264,   nil,   264,   264,   265,
+   265,   265,   nil,   265,   nil,   nil,   nil,   265,   265,   nil,
+   nil,   nil,   265,   nil,   265,   265,   265,   265,   265,   265,
+   265,   nil,   nil,   nil,   nil,   nil,   265,   265,   265,   265,
+   265,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   265,   265,   265,   265,   265,
+   265,   265,   265,   nil,   265,   265,   265,   nil,   265,   265,
+   nil,   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,   265,
+   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   265,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,
+   nil,   nil,   265,   265,   265,   265,   265,   265,   nil,   nil,
+   nil,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,
+   nil,   nil,   265,   265,   265,   nil,   265,   265,   266,   266,
+   266,   nil,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,
+   nil,   266,   nil,   266,   266,   266,   266,   266,   266,   266,
+   nil,   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,
+   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   266,   266,   266,   266,   266,   266,
+   266,   266,   nil,   266,   266,   266,   nil,   266,   266,   nil,
+   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,   266,   266,
+   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,
+   nil,   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,
+   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
+   nil,   266,   266,   266,   nil,   266,   266,   267,   267,   267,
+   nil,   267,   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,
+   267,   nil,   267,   267,   267,   267,   267,   267,   267,   nil,
+   nil,   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,
+   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,
+   267,   nil,   nil,   267,   267,   267,   267,   267,   267,   267,
+   267,   nil,   267,   267,   267,   nil,   267,   267,   nil,   267,
+   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   267,   nil,   nil,   267,   nil,   nil,   267,   267,   nil,
+   nil,   267,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,   nil,
+   267,   267,   267,   267,   267,   267,   nil,   nil,   nil,   267,
+   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   267,   267,   267,   nil,   267,   267,   268,   268,   268,   nil,
+   268,   nil,   nil,   nil,   268,   268,   nil,   nil,   nil,   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,   268,   268,   268,   268,   268,   268,
+   nil,   268,   268,   268,   nil,   268,   268,   nil,   268,   268,
+   268,   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,   268,   nil,   nil,
+   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,   268,
+   268,   268,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,   269,   nil,
+   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,   269,   nil,
+   nil,   269,   269,   269,   269,   269,   269,   269,   269,   nil,
+   269,   269,   269,   nil,   269,   269,   nil,   269,   269,   269,
+   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,   269,   nil,   nil,   269,
+   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,   269,   269,
+   269,   nil,   269,   269,   274,   274,   274,   nil,   274,   nil,
+   nil,   nil,   274,   274,   nil,   nil,   nil,   274,   nil,   274,
+   274,   274,   274,   274,   274,   274,   nil,   nil,   nil,   nil,
+   nil,   274,   274,   274,   274,   274,   274,   274,   nil,   nil,
+   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,
+   274,   274,   274,   274,   274,   274,   274,   274,   nil,   274,
+   274,   274,   nil,   274,   274,   nil,   274,   274,   274,   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,   274,   274,   nil,   nil,   274,   nil,
+   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,   274,   274,
+   274,   274,   274,   nil,   nil,   nil,   274,   274,   nil,   nil,
+   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,   274,
+   nil,   274,   274,   282,   282,   282,   nil,   282,   nil,   nil,
+   nil,   282,   282,   nil,   nil,   nil,   282,   nil,   282,   282,
+   282,   282,   282,   282,   282,   nil,   nil,   nil,   nil,   nil,
+   282,   282,   282,   282,   282,   282,   282,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   282,
+   282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
+   282,   nil,   282,   282,   nil,   282,   282,   282,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
+   282,   nil,   nil,   282,   282,   nil,   nil,   282,   nil,   282,
+   nil,   282,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   282,   nil,   nil,   nil,   nil,   282,   282,   282,   282,
+   282,   282,   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   282,   282,   282,   282,   nil,
+   282,   282,   283,   283,   283,   nil,   283,   nil,   nil,   nil,
+   283,   283,   nil,   nil,   nil,   283,   nil,   283,   283,   283,
+   283,   283,   283,   283,   nil,   nil,   nil,   nil,   nil,   283,
+   283,   283,   283,   283,   283,   283,   nil,   nil,   283,   nil,
+   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,   283,
+   283,   283,   283,   283,   283,   283,   283,   283,   283,   283,
+   nil,   283,   283,   nil,   283,   283,   283,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,
+   nil,   nil,   283,   283,   nil,   nil,   283,   nil,   283,   nil,
+   283,   nil,   283,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   283,   nil,   nil,   nil,   nil,   283,   283,   283,   283,   283,
+   283,   nil,   nil,   nil,   283,   283,   nil,   nil,   nil,   nil,
+   nil,   nil,   283,   nil,   283,   283,   283,   283,   nil,   283,
+   283,   292,   292,   292,   nil,   292,   nil,   nil,   nil,   292,
+   292,   nil,   nil,   nil,   292,   nil,   292,   292,   292,   292,
+   292,   292,   292,   nil,   nil,   nil,   nil,   nil,   292,   292,
+   292,   292,   292,   292,   292,   nil,   nil,   292,   nil,   nil,
+   nil,   nil,   nil,   nil,   292,   nil,   nil,   292,   292,   292,
+   292,   292,   292,   292,   292,   292,   292,   292,   292,   nil,
+   292,   292,   nil,   292,   292,   292,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,   292,   nil,
+   nil,   292,   292,   nil,   nil,   292,   nil,   292,   nil,   292,
+   nil,   292,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   292,
+   nil,   nil,   nil,   nil,   292,   292,   292,   292,   292,   292,
+   nil,   nil,   nil,   292,   292,   292,   nil,   nil,   nil,   nil,
+   nil,   292,   nil,   292,   292,   292,   292,   nil,   292,   292,
+   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,   nil,   299,   299,   299,
+   299,   299,   299,   299,   nil,   nil,   299,   nil,   nil,   nil,
+   nil,   nil,   nil,   299,   nil,   nil,   299,   299,   299,   299,
+   299,   299,   299,   299,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   299,   nil,   nil,   299,   299,   299,   nil,   299,   299,   301,
+   301,   301,   nil,   301,   nil,   nil,   nil,   301,   301,   nil,
+   nil,   nil,   301,   nil,   301,   301,   301,   301,   301,   301,
+   301,   nil,   nil,   nil,   nil,   nil,   301,   301,   301,   301,
+   301,   301,   301,   nil,   nil,   301,   nil,   nil,   nil,   nil,
+   nil,   nil,   301,   nil,   nil,   301,   301,   301,   301,   301,
+   301,   301,   301,   nil,   301,   301,   301,   nil,   301,   301,
+   nil,   301,   301,   301,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   301,   nil,   nil,   301,   nil,   nil,   301,
+   301,   nil,   nil,   301,   nil,   nil,   nil,   nil,   nil,   301,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,
+   nil,   nil,   301,   301,   301,   301,   301,   301,   nil,   nil,
+   nil,   301,   301,   nil,   nil,   nil,   nil,   nil,   nil,   301,
+   nil,   nil,   301,   301,   301,   nil,   301,   301,   304,   304,
+   304,   nil,   304,   nil,   nil,   nil,   304,   304,   nil,   nil,
+   nil,   304,   nil,   304,   304,   304,   304,   304,   304,   304,
+   nil,   nil,   nil,   nil,   nil,   304,   304,   304,   304,   304,
+   304,   304,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
+   nil,   304,   nil,   nil,   304,   304,   304,   304,   304,   304,
+   304,   304,   nil,   304,   304,   304,   nil,   304,   304,   nil,
+   304,   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   304,   nil,   nil,   304,   nil,   nil,   304,   304,
+   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,
+   nil,   304,   304,   304,   304,   304,   304,   nil,   nil,   nil,
+   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   304,   304,   304,   nil,   304,   304,   305,   305,   305,
+   nil,   305,   nil,   nil,   nil,   305,   305,   nil,   nil,   nil,
+   305,   nil,   305,   305,   305,   305,   305,   305,   305,   nil,
+   nil,   nil,   nil,   nil,   305,   305,   305,   305,   305,   305,
+   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,   nil,   nil,
+   305,   nil,   nil,   305,   305,   305,   305,   305,   305,   305,
+   305,   nil,   305,   305,   305,   nil,   305,   305,   nil,   305,
+   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   305,   nil,   nil,   305,   nil,   nil,   305,   305,   nil,
+   nil,   305,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,   nil,   nil,
+   305,   305,   305,   305,   305,   305,   nil,   nil,   nil,   305,
+   305,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
+   305,   305,   305,   nil,   305,   305,   311,   311,   311,   311,
+   311,   nil,   nil,   nil,   311,   311,   nil,   nil,   nil,   311,
+   nil,   311,   311,   311,   311,   311,   311,   311,   nil,   nil,
+   nil,   nil,   nil,   311,   311,   311,   311,   311,   311,   311,
+   nil,   nil,   311,   nil,   nil,   nil,   nil,   nil,   311,   311,
+   nil,   311,   311,   311,   311,   311,   311,   311,   311,   311,
+   nil,   311,   311,   311,   nil,   311,   311,   nil,   311,   311,
+   311,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   311,   nil,   nil,   311,   nil,   nil,   311,   311,   nil,   nil,
+   311,   nil,   311,   nil,   nil,   nil,   311,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   311,   nil,   nil,   nil,   nil,   311,
+   311,   311,   311,   311,   311,   nil,   nil,   nil,   311,   311,
+   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,   nil,   311,
+   311,   311,   nil,   311,   311,   319,   319,   319,   nil,   319,
+   nil,   nil,   nil,   319,   319,   nil,   nil,   nil,   319,   nil,
+   319,   319,   319,   319,   319,   319,   319,   nil,   nil,   nil,
+   nil,   nil,   319,   319,   319,   319,   319,   319,   319,   nil,
+   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,   319,   nil,
+   nil,   319,   319,   319,   319,   319,   319,   319,   319,   nil,
+   319,   319,   319,   nil,   319,   319,   nil,   nil,   nil,   319,
+   nil,   nil,   nil,   nil,   nil,  1061,   nil,  1061,  1061,  1061,
+  1061,  1061,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   319,
+   nil,  1061,   319,   nil,   nil,   319,   319,   nil,   nil,   319,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1061,   nil,   nil,   nil,   nil,   319,   319,
+   319,   319,   319,   319,  1061,  1061,   nil,   319,   319,   nil,
+   nil,   nil,   319,   nil,   nil,   319,   nil,   nil,   319,   319,
+   319,   nil,   319,   319,   336,   336,   336,   nil,   336,   nil,
+   nil,   nil,   336,   336,   nil,   nil,   nil,   336,  1061,   336,
+   336,   336,   336,   336,   336,   336,   nil,   nil,   nil,   nil,
+   nil,   336,   336,   336,   336,   336,   336,   336,   nil,   nil,
+   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,
+   336,   336,   336,   336,   336,   336,   336,   336,   nil,   336,
+   336,   336,   nil,   336,   336,   nil,   nil,   nil,   336,   nil,
+   nil,   nil,   nil,   nil,  1063,   nil,  1063,  1063,  1063,  1063,
+  1063,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,
+  1063,   336,   nil,   nil,   336,   336,   nil,   nil,   336,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1063,   nil,   nil,   nil,   nil,   336,   336,   336,
+   336,   336,   336,  1063,  1063,   nil,   336,   336,   nil,   nil,
+   nil,   nil,   nil,   nil,   336,   nil,   nil,   336,   336,   336,
+   nil,   336,   336,   343,   343,   343,   nil,   343,   nil,   nil,
+   nil,   343,   343,   nil,   nil,   nil,   343,  1063,   343,   343,
+   343,   343,   343,   343,   343,   nil,   nil,   nil,   nil,   nil,
+   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   343,
+   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,
+   343,   343,   343,   343,   343,   343,   343,   nil,   343,   343,
+   343,   nil,   343,   343,   nil,   343,   343,   343,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,
+   343,   nil,   nil,   343,   343,   nil,   nil,   343,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   343,   nil,   nil,   nil,   nil,   343,   343,   343,   343,
+   343,   343,   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   343,   343,   343,   nil,
+   343,   343,   345,   345,   345,   nil,   345,   nil,   nil,   nil,
+   345,   345,   nil,   nil,   nil,   345,   nil,   345,   345,   345,
+   345,   345,   345,   345,   nil,   nil,   nil,   nil,   nil,   345,
+   345,   345,   345,   345,   345,   345,   nil,   nil,   345,   nil,
+   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,   345,
+   345,   345,   345,   345,   345,   345,   nil,   345,   345,   345,
+   nil,   345,   345,   nil,   345,   345,   345,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,
+   345,   nil,   345,   345,   nil,   nil,   345,   nil,   nil,   nil,
+   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   345,   nil,   nil,   nil,   nil,   345,   345,   345,   345,   345,
+   345,   nil,   nil,   nil,   345,   345,   nil,   nil,   nil,   nil,
+   nil,   nil,   345,   nil,   nil,   345,   345,   345,   nil,   345,
+   345,   349,   349,   349,   nil,   349,   nil,   nil,   nil,   349,
+   349,   nil,   nil,   nil,   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,   349,
+   349,   349,   349,   349,   349,   349,   349,   349,   349,   nil,
+   349,   349,   nil,   349,   349,   349,   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,   349,   nil,   nil,   349,   nil,   349,   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,   nil,   nil,
+   nil,   349,   nil,   349,   349,   349,   349,   nil,   349,   349,
+   350,   350,   350,   nil,   350,   nil,   nil,   nil,   350,   350,
+   nil,   nil,   nil,   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,   350,   350,
+   350,   350,   350,   350,   350,   350,   350,   350,   nil,   350,
+   350,   nil,   350,   350,   350,   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,   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,   nil,   nil,   nil,
+   350,   nil,   350,   350,   350,   350,   nil,   350,   350,   355,
+   355,   355,   nil,   355,   nil,   nil,   nil,   355,   355,   nil,
+   nil,   nil,   355,   nil,   355,   355,   355,   355,   355,   355,
+   355,   nil,   nil,   nil,   nil,   nil,   355,   355,   355,   355,
+   355,   355,   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,
+   nil,   nil,   355,   nil,   nil,   355,   355,   355,   355,   355,
+   355,   355,   355,   nil,   355,   355,   355,   nil,   355,   355,
+   nil,   355,   355,   355,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   355,   nil,   nil,   355,   nil,   nil,   355,
+   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,   nil,   355,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,
+   nil,   nil,   355,   355,   355,   355,   355,   355,   nil,   nil,
+   nil,   355,   355,   nil,   nil,   nil,   nil,   nil,   nil,   355,
+   nil,   nil,   355,   355,   355,   nil,   355,   355,   376,   376,
+   376,   nil,   376,   nil,   nil,   nil,   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,   376,   nil,   nil,   nil,
+   nil,   376,   376,   376,   376,   376,   376,   nil,   nil,   nil,
+   376,   376,   nil,   nil,   nil,   nil,   nil,   nil,   376,   nil,
+   nil,   376,   376,   376,   nil,   376,   376,   437,   437,   437,
+   nil,   437,   nil,   nil,   nil,   437,   437,   nil,   nil,   nil,
+   437,   nil,   437,   437,   437,   437,   437,   437,   437,   nil,
+   nil,   nil,   nil,   nil,   437,   437,   437,   437,   437,   437,
+   437,   nil,   nil,   437,   nil,   nil,   nil,   nil,   nil,   nil,
+   437,   nil,   nil,   437,   437,   437,   437,   437,   437,   437,
+   437,   nil,   437,   437,   437,   nil,   437,   437,   nil,   437,
+   437,   437,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   437,   nil,   nil,   437,   nil,   nil,   437,   437,   nil,
+   nil,   437,   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,   nil,   nil,
+   437,   437,   437,   437,   437,   437,   nil,   nil,   nil,   437,
+   437,   nil,   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,
+   437,   437,   437,   nil,   437,   437,   481,   481,   481,   nil,
+   481,   nil,   nil,   nil,   481,   481,   nil,   nil,   nil,   481,
+   nil,   481,   481,   481,   481,   481,   481,   481,   nil,   nil,
+   nil,   nil,   nil,   481,   481,   481,   481,   481,   481,   481,
+   nil,   nil,   481,   nil,   nil,   nil,   nil,   nil,   nil,   481,
+   nil,   nil,   481,   481,   481,   481,   481,   481,   481,   481,
+   481,   481,   481,   481,   nil,   481,   481,   nil,   481,   481,
+   481,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   481,   nil,   nil,   481,   nil,   nil,   481,   481,   nil,   nil,
+   481,   nil,   481,   nil,   481,   nil,   481,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   481,   nil,   nil,   nil,   nil,   481,
+   481,   481,   481,   481,   481,   nil,   nil,   nil,   481,   481,
+   nil,   nil,   nil,   nil,   nil,   nil,   481,   nil,   481,   481,
+   481,   481,   nil,   481,   481,   483,   483,   483,   nil,   483,
+   nil,   nil,   nil,   483,   483,   nil,   nil,   nil,   483,   nil,
+   483,   483,   483,   483,   483,   483,   483,   nil,   nil,   nil,
+   nil,   nil,   483,   483,   483,   483,   483,   483,   483,   nil,
+   nil,   483,   nil,   nil,   nil,   nil,   nil,   nil,   483,   nil,
+   nil,   483,   483,   483,   483,   483,   483,   483,   483,   nil,
+   483,   483,   483,   nil,   483,   483,   nil,   483,   483,   483,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   483,
+   nil,   nil,   483,   nil,   nil,   483,   483,   nil,   nil,   483,
+   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   483,   nil,   nil,   nil,   nil,   483,   483,
+   483,   483,   483,   483,   nil,   nil,   nil,   483,   483,   nil,
+   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,   483,   483,
+   483,   nil,   483,   483,   484,   484,   484,   nil,   484,   nil,
+   nil,   nil,   484,   484,   nil,   nil,   nil,   484,   nil,   484,
+   484,   484,   484,   484,   484,   484,   nil,   nil,   nil,   nil,
+   nil,   484,   484,   484,   484,   484,   484,   484,   nil,   nil,
+   484,   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,   nil,
+   484,   484,   484,   484,   484,   484,   484,   484,   nil,   484,
+   484,   484,   nil,   484,   484,   nil,   484,   484,   484,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,
+   nil,   484,   nil,   nil,   484,   484,   nil,   nil,   484,   nil,
+   nil,   nil,   nil,   nil,   484,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   484,   nil,   nil,   nil,   nil,   484,   484,   484,
+   484,   484,   484,   nil,   nil,   nil,   484,   484,   nil,   nil,
+   nil,   nil,   nil,   nil,   484,   nil,   nil,   484,   484,   484,
+   nil,   484,   484,   485,   485,   485,   nil,   485,   nil,   nil,
+   nil,   485,   485,   nil,   nil,   nil,   485,   nil,   485,   485,
+   485,   485,   485,   485,   485,   nil,   nil,   nil,   nil,   nil,
+   485,   485,   485,   485,   485,   485,   485,   nil,   nil,   485,
+   nil,   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,   485,
+   485,   485,   485,   485,   485,   485,   485,   nil,   485,   485,
+   485,   nil,   485,   485,   nil,   485,   485,   485,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,
+   485,   nil,   nil,   485,   485,   nil,   nil,   485,   nil,   nil,
+   nil,   nil,   nil,   485,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   485,   nil,   nil,   nil,   nil,   485,   485,   485,   485,
+   485,   485,   nil,   nil,   nil,   485,   485,   nil,   nil,   nil,
+   nil,   nil,   nil,   485,   nil,   nil,   485,   485,   485,   nil,
+   485,   485,   523,   523,   523,   nil,   523,   nil,   nil,   nil,
+   523,   523,   nil,   nil,   nil,   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,
+   523,   523,   523,   523,   523,   523,   523,   523,   523,   523,
+   nil,   523,   523,   nil,   523,   523,   523,   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,   523,   nil,   nil,   523,   nil,   523,   nil,
+   523,   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,   nil,
+   nil,   nil,   523,   nil,   523,   523,   523,   523,   nil,   523,
+   523,   526,   526,   526,   nil,   526,   nil,   nil,   nil,   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,   nil,   nil,   526,
+   nil,   526,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   526,
+   nil,   nil,   nil,   nil,   526,   526,   526,   526,   526,   526,
+   nil,   nil,   nil,   526,   526,   nil,   nil,   nil,   nil,   nil,
+   nil,   526,   nil,   526,   526,   526,   526,   nil,   526,   526,
+   528,   528,   528,   nil,   528,   nil,   nil,   nil,   528,   528,
+   nil,   nil,   nil,   528,   nil,   528,   528,   528,   528,   528,
+   528,   528,   nil,   nil,   nil,   nil,   nil,   528,   528,   528,
+   528,   528,   528,   528,   nil,   nil,   528,   nil,   nil,   nil,
+   nil,   nil,   nil,   528,   nil,   nil,   528,   528,   528,   528,
+   528,   528,   528,   528,   nil,   528,   528,   528,   nil,   528,
+   528,   nil,   528,   528,   528,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   528,   nil,   nil,   528,   nil,   nil,
+   528,   528,   nil,   nil,   528,   nil,   nil,   nil,   nil,   nil,
+   528,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,
+   nil,   nil,   nil,   528,   528,   528,   528,   528,   528,   nil,
+   nil,   nil,   528,   528,   nil,   nil,   nil,   nil,   nil,   nil,
+   528,   nil,   nil,   528,   528,   528,   nil,   528,   528,   534,
+   534,   534,   534,   534,   nil,   nil,   nil,   534,   534,   nil,
+   nil,   nil,   534,   nil,   534,   534,   534,   534,   534,   534,
+   534,   nil,   nil,   nil,   nil,   nil,   534,   534,   534,   534,
+   534,   534,   534,   nil,   nil,   534,   nil,   nil,   nil,   nil,
+   nil,   534,   534,   534,   534,   534,   534,   534,   534,   534,
+   534,   534,   534,   nil,   534,   534,   534,   nil,   534,   534,
+   nil,   534,   534,   534,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   534,   nil,   nil,   534,   nil,   nil,   534,
+   534,   nil,   nil,   534,   nil,   534,   nil,   nil,   nil,   534,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   534,   nil,   nil,
+   nil,   nil,   534,   534,   534,   534,   534,   534,   nil,   nil,
+   nil,   534,   534,   nil,   nil,   nil,   nil,   nil,   534,   534,
+   nil,   nil,   534,   534,   534,   nil,   534,   534,   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,   nil,   542,   542,   542,   542,   542,
+   542,   542,   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,
+   nil,   542,   nil,   nil,   542,   542,   542,   542,   542,   542,
+   542,   542,   nil,   542,   542,   542,   nil,   542,   542,   nil,
+   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,  1084,   nil,
+  1084,  1084,  1084,  1084,  1084,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   542,   nil,  1084,   542,   nil,   nil,   542,   542,
+   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1084,   nil,   nil,   nil,
+   nil,   542,   542,   542,   542,   542,   542,  1084,  1084,   nil,
+   542,   542,   nil,   nil,   nil,   nil,   nil,   nil,   542,   nil,
+   nil,   542,   542,   542,   nil,   542,   542,   544,   544,   544,
+   nil,   544,   nil,   nil,   nil,   544,   544,   nil,   nil,   nil,
+   544,  1084,   544,   544,   544,   544,   544,   544,   544,   nil,
+   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,   544,
+   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
+   544,   nil,   nil,   544,   544,   544,   544,   544,   544,   544,
+   544,   544,   544,   544,   544,   nil,   544,   544,   nil,   544,
+   544,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   544,   nil,   nil,   544,   nil,   nil,   544,   544,   nil,
+   nil,   544,   nil,   544,   nil,   544,   nil,   544,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   nil,   nil,
+   544,   544,   544,   544,   544,   544,   nil,   nil,   nil,   544,
+   544,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   544,
+   544,   544,   544,   nil,   544,   544,   550,   550,   550,   nil,
+   550,   nil,   nil,   nil,   550,   550,   nil,   nil,   nil,   550,
+   nil,   550,   550,   550,   550,   550,   550,   550,   nil,   nil,
+   nil,   nil,   nil,   550,   550,   550,   550,   550,   550,   550,
+   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,
+   nil,   nil,   550,   550,   550,   550,   550,   550,   550,   550,
+   nil,   550,   550,   550,   nil,   550,   550,   nil,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   550,   nil,   nil,   550,   nil,   nil,   550,   550,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,
+   550,   550,   550,   550,   550,   nil,   nil,   nil,   550,   550,
+   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,   550,
+   550,   550,   nil,   550,   550,   553,   553,   553,   nil,   553,
+   nil,   nil,   nil,   553,   553,   nil,   nil,   nil,   553,   nil,
+   553,   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,
+   nil,   nil,   553,   553,   553,   553,   553,   553,   553,   nil,
+   nil,   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,
+   nil,   553,   553,   553,   553,   553,   553,   553,   553,   nil,
+   553,   553,   553,   nil,   553,   553,   nil,   553,   553,   553,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   553,
+   nil,   nil,   553,   nil,   nil,   553,   553,   nil,   nil,   553,
+   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,   553,   553,
+   553,   553,   553,   553,   nil,   nil,   nil,   553,   553,   nil,
+   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   553,   553,
+   553,   nil,   553,   553,   554,   554,   554,   nil,   554,   nil,
+   nil,   nil,   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,   554,   nil,   nil,   nil,   nil,   554,   554,   554,
+   554,   554,   554,   nil,   nil,   nil,   554,   554,   nil,   nil,
+   nil,   nil,   nil,   nil,   554,   nil,   nil,   554,   554,   554,
+   nil,   554,   554,   559,   559,   559,   nil,   559,   nil,   nil,
+   nil,   559,   559,   nil,   nil,   nil,   559,   nil,   559,   559,
+   559,   559,   559,   559,   559,   nil,   nil,   nil,   nil,   nil,
+   559,   559,   559,   559,   559,   559,   559,   nil,   nil,   559,
+   nil,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,   559,
+   559,   559,   559,   559,   559,   559,   559,   nil,   559,   559,
+   559,   nil,   559,   559,   nil,   559,   559,   559,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,
+   559,   nil,   nil,   559,   559,   nil,   nil,   559,   nil,   nil,
+   nil,   nil,   nil,   559,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   559,   nil,   nil,   nil,   nil,   559,   559,   559,   559,
+   559,   559,   nil,   nil,   nil,   559,   559,   nil,   nil,   nil,
+   nil,   nil,   nil,   559,   nil,   nil,   559,   559,   559,   nil,
+   559,   559,   583,   583,   583,   nil,   583,   nil,   nil,   nil,
+   583,   583,   nil,   nil,   nil,   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,
+   583,   583,   583,   583,   583,   583,   583,   583,   583,   583,
+   nil,   583,   583,   nil,   583,   583,   583,   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,   583,   nil,   nil,   583,   nil,   583,   nil,
+   583,   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,   nil,
+   nil,   nil,   583,   nil,   583,   583,   583,   583,   nil,   583,
+   583,   593,   593,   593,   nil,   593,   nil,   nil,   nil,   593,
+   593,   nil,   nil,   nil,   593,   nil,   593,   593,   593,   593,
+   593,   593,   593,   nil,   nil,   nil,   nil,   nil,   593,   593,
+   593,   593,   593,   593,   593,   nil,   nil,   593,   nil,   nil,
+   nil,   nil,   nil,   nil,   593,   nil,   nil,   593,   593,   593,
+   593,   593,   593,   593,   593,   593,   593,   593,   593,   nil,
+   593,   593,   nil,   593,   593,   593,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   593,   nil,   nil,   593,   nil,
+   nil,   593,   593,   nil,   nil,   593,   nil,   593,   nil,   593,
+   nil,   593,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   593,
+   nil,   nil,   nil,   nil,   593,   593,   593,   593,   593,   593,
+   nil,   nil,   nil,   593,   593,   nil,   nil,   nil,   nil,   nil,
+   nil,   593,   nil,   593,   593,   593,   593,   nil,   593,   593,
+   603,   603,   603,   nil,   603,   nil,   nil,   nil,   603,   603,
+   nil,   nil,   nil,   603,   nil,   603,   603,   603,   603,   603,
+   603,   603,   nil,   nil,   nil,   nil,   nil,   603,   603,   603,
+   603,   603,   603,   603,   nil,   nil,   603,   nil,   nil,   nil,
+   nil,   nil,   nil,   603,   nil,   nil,   603,   603,   603,   603,
+   603,   603,   603,   603,   nil,   603,   603,   603,   nil,   603,
+   603,   nil,   603,   603,   603,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   603,   nil,   nil,   603,   nil,   nil,
+   603,   603,   nil,   nil,   603,   nil,   nil,   nil,   nil,   nil,
+   603,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   603,   nil,
+   nil,   nil,   nil,   603,   603,   603,   603,   603,   603,   nil,
+   nil,   nil,   603,   603,   nil,   nil,   nil,   nil,   nil,   nil,
+   603,   nil,   nil,   603,   603,   603,   nil,   603,   603,   625,
+   625,   625,   nil,   625,   nil,   nil,   nil,   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,   625,   nil,   nil,
+   nil,   nil,   625,   625,   625,   625,   625,   625,   nil,   nil,
+   nil,   625,   625,   nil,   nil,   nil,   nil,   nil,   nil,   625,
+   nil,   nil,   625,   625,   625,   nil,   625,   625,   665,   665,
+   665,   nil,   665,   nil,   nil,   nil,   665,   665,   nil,   nil,
+   nil,   665,   nil,   665,   665,   665,   665,   665,   665,   665,
+   nil,   nil,   nil,   nil,   nil,   665,   665,   665,   665,   665,
+   665,   665,   nil,   nil,   665,   nil,   nil,   nil,   nil,   nil,
+   nil,   665,   nil,   nil,   665,   665,   665,   665,   665,   665,
+   665,   665,   nil,   665,   665,   665,   nil,   665,   665,   nil,
+   665,   665,   665,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   665,   nil,   nil,   665,   nil,   nil,   665,   665,
+   nil,   nil,   665,   nil,   665,   nil,   nil,   nil,   665,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,   nil,   nil,
+   nil,   665,   665,   665,   665,   665,   665,   nil,   nil,   nil,
+   665,   665,   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,
+   nil,   665,   665,   665,   nil,   665,   665,   666,   666,   666,
+   nil,   666,   nil,   nil,   nil,   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,   666,
+   666,   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,   666,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,   nil,   nil,
+   666,   666,   666,   666,   666,   666,   nil,   nil,   nil,   666,
+   666,   nil,   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,
+   666,   666,   666,   nil,   666,   666,   667,   667,   667,   nil,
+   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,   nil,   667,
+   nil,   nil,   667,   667,   667,   667,   667,   667,   667,   667,
+   667,   667,   667,   667,   nil,   667,   667,   nil,   667,   667,
+   667,   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,   667,   nil,   nil,
+   667,   nil,   667,   nil,   667,   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,   nil,   nil,   nil,   667,   nil,   667,   667,
+   667,   667,   nil,   667,   667,   670,   670,   670,   670,   670,
+   nil,   nil,   nil,   670,   670,   nil,   nil,   nil,   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,   670,   670,   nil,
+   670,   670,   670,   670,   670,   670,   670,   670,   670,   nil,
+   670,   670,   670,   nil,   670,   670,   nil,   670,   670,   670,
+   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,   670,   nil,   nil,   670,
+   nil,   670,   nil,   nil,   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,   nil,   nil,   nil,   670,   nil,   nil,   670,   670,
+   670,   nil,   670,   670,   671,   671,   671,   nil,   671,   nil,
+   nil,   nil,   671,   671,   nil,   nil,   nil,   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,   671,   671,   671,   671,   671,   671,   nil,   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,
+   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   671,   nil,   nil,   671,   671,   671,
+   nil,   671,   671,   674,   674,   674,   nil,   674,   nil,   nil,
+   nil,   674,   674,   nil,   nil,   nil,   674,   nil,   674,   674,
+   674,   674,   674,   674,   674,   nil,   nil,   nil,   nil,   nil,
+   674,   674,   674,   674,   674,   674,   674,   nil,   nil,   674,
+   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,
+   674,   674,   674,   674,   674,   674,   674,   674,   674,   674,
+   674,   nil,   674,   674,   nil,   674,   674,   674,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,
+   674,   nil,   nil,   674,   674,   nil,   nil,   674,   nil,   674,
+   nil,   674,   nil,   674,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   674,   nil,   nil,   nil,   nil,   674,   674,   674,   674,
+   674,   674,   nil,   nil,   nil,   674,   674,   nil,   nil,   nil,
+   nil,   nil,   nil,   674,   nil,   674,   674,   674,   674,   nil,
+   674,   674,   675,   675,   675,   nil,   675,   nil,   nil,   nil,
+   675,   675,   nil,   nil,   nil,   675,   nil,   675,   675,   675,
+   675,   675,   675,   675,   nil,   nil,   nil,   nil,   nil,   675,
+   675,   675,   675,   675,   675,   675,   nil,   nil,   675,   nil,
+   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   675,   675,
+   675,   675,   675,   675,   675,   675,   675,   675,   675,   675,
+   nil,   675,   675,   nil,   675,   675,   675,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   675,
+   nil,   nil,   675,   675,   nil,   nil,   675,   nil,   nil,   nil,
+   675,   nil,   675,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   675,   nil,   nil,   nil,   nil,   675,   675,   675,   675,   675,
+   675,   nil,   nil,   nil,   675,   675,   nil,   nil,   nil,   nil,
+   nil,   nil,   675,   nil,   675,   675,   675,   675,   nil,   675,
+   675,   676,   676,   676,   nil,   676,   nil,   nil,   nil,   676,
+   676,   nil,   nil,   nil,   676,   nil,   676,   676,   676,   676,
+   676,   676,   676,   nil,   nil,   nil,   nil,   nil,   676,   676,
+   676,   676,   676,   676,   676,   nil,   nil,   676,   nil,   nil,
+   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   676,   676,
+   676,   676,   676,   676,   676,   nil,   676,   676,   676,   nil,
+   676,   676,   nil,   676,   676,   676,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   nil,
+   nil,   676,   676,   nil,   nil,   676,   nil,   nil,   nil,   nil,
+   nil,   676,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   676,
+   nil,   nil,   nil,   nil,   676,   676,   676,   676,   676,   676,
+   nil,   nil,   nil,   676,   676,   nil,   nil,   nil,   nil,   nil,
+   nil,   676,   nil,   nil,   676,   676,   676,   nil,   676,   676,
+   677,   677,   677,   nil,   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,   nil,   677,   nil,   nil,   677,   677,   677,   677,
+   677,   677,   677,   677,   nil,   677,   677,   677,   nil,   677,
+   677,   nil,   677,   677,   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,
+   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,   677,   677,   nil,   677,   677,   682,
+   682,   682,   nil,   682,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   682,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   682,   nil,   nil,
+   nil,   nil,   682,   682,   682,   682,   682,   682,   nil,   nil,
+   nil,   682,   682,   nil,   nil,   nil,   nil,   nil,   nil,   682,
+   nil,   nil,   682,   682,   682,   nil,   682,   682,   683,   683,
+   683,   nil,   683,   nil,   nil,   nil,   683,   683,   nil,   nil,
+   nil,   683,   nil,   683,   683,   683,   683,   683,   683,   683,
+   nil,   nil,   nil,   nil,   nil,   683,   683,   683,   683,   683,
+   683,   683,   nil,   nil,   683,   nil,   nil,   nil,   nil,   nil,
+   nil,   683,   nil,   nil,   683,   683,   683,   683,   683,   683,
+   683,   683,   nil,   683,   683,   683,   nil,   683,   683,   nil,
+   683,   683,   683,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   683,   nil,   nil,   683,   nil,   nil,   683,   683,
+   nil,   nil,   683,   nil,   nil,   nil,   nil,   nil,   683,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   683,   nil,   nil,   nil,
+   nil,   683,   683,   683,   683,   683,   683,   nil,   nil,   nil,
+   683,   683,   nil,   nil,   nil,   nil,   nil,   nil,   683,   nil,
+   nil,   683,   683,   683,   nil,   683,   683,   707,   707,   707,
+   nil,   707,   nil,   nil,   nil,   707,   707,   nil,   nil,   nil,
+   707,   nil,   707,   707,   707,   707,   707,   707,   707,   nil,
+   nil,   nil,   nil,   nil,   707,   707,   707,   707,   707,   707,
+   707,   nil,   nil,   707,   nil,   nil,   nil,   nil,   nil,   nil,
+   707,   nil,   nil,   707,   707,   707,   707,   707,   707,   707,
+   707,   nil,   707,   707,   707,   nil,   707,   707,   nil,   707,
+   707,   707,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   707,   nil,   nil,   707,   nil,   nil,   707,   707,   nil,
+   nil,   707,   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,   nil,   nil,
+   707,   707,   707,   707,   707,   707,   nil,   nil,   nil,   707,
+   707,   nil,   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,
+   707,   707,   707,   nil,   707,   707,   710,   710,   710,   nil,
+   710,   nil,   nil,   nil,   710,   710,   nil,   nil,   nil,   710,
+   nil,   710,   710,   710,   710,   710,   710,   710,   nil,   nil,
+   nil,   nil,   nil,   710,   710,   710,   710,   710,   710,   710,
+   nil,   nil,   710,   nil,   nil,   nil,   nil,   nil,   nil,   710,
+   nil,   nil,   710,   710,   710,   710,   710,   710,   710,   710,
+   nil,   710,   710,   710,   nil,   710,   710,   nil,   710,   710,
+   710,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   710,   nil,   nil,   710,   nil,   nil,   710,   710,   nil,   nil,
+   710,   nil,   nil,   nil,   nil,   nil,   710,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   710,   nil,   nil,   nil,   nil,   710,
+   710,   710,   710,   710,   710,   nil,   nil,   nil,   710,   710,
+   nil,   nil,   nil,   nil,   nil,   nil,   710,   nil,   nil,   710,
+   710,   710,   nil,   710,   710,   714,   714,   714,   nil,   714,
+   nil,   nil,   nil,   714,   714,   nil,   nil,   nil,   714,   nil,
+   714,   714,   714,   714,   714,   714,   714,   nil,   nil,   nil,
+   nil,   nil,   714,   714,   714,   714,   714,   714,   714,   nil,
+   nil,   714,   nil,   nil,   nil,   nil,   nil,   nil,   714,   nil,
+   nil,   714,   714,   714,   714,   714,   714,   714,   714,   nil,
+   714,   714,   714,   nil,   714,   714,   nil,   nil,   nil,   714,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   714,
+   nil,   nil,   714,   nil,   nil,   714,   714,   nil,   nil,   714,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   714,   714,
+   714,   714,   714,   714,   nil,   nil,   nil,   714,   714,   nil,
+   nil,   nil,   nil,   nil,   nil,   714,   nil,   nil,   714,   714,
+   714,   nil,   714,   714,   725,   725,   725,   nil,   725,   nil,
+   nil,   nil,   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,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   725,   725,   725,
+   725,   725,   725,   nil,   nil,   nil,   725,   725,   nil,   nil,
+   nil,   nil,   nil,   nil,   725,   nil,   nil,   725,   725,   725,
+   nil,   725,   725,   731,   731,   731,   nil,   731,   nil,   nil,
+   nil,   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,   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,
+   nil,   nil,   nil,   731,   nil,   nil,   731,   731,   731,   nil,
+   731,   731,   736,   736,   736,   nil,   736,   nil,   nil,   nil,
+   736,   736,   nil,   nil,   nil,   736,   nil,   736,   736,   736,
+   736,   736,   736,   736,   nil,   nil,   nil,   nil,   nil,   736,
+   736,   736,   736,   736,   736,   736,   nil,   nil,   736,   nil,
+   nil,   nil,   nil,   nil,   nil,   736,   nil,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   736,   nil,   736,   736,   736,   736,   nil,   736,
+   736,   739,   739,   739,   nil,   739,   nil,   nil,   nil,   739,
+   739,   nil,   nil,   nil,   739,   nil,   739,   739,   739,   739,
+   739,   739,   739,   nil,   nil,   nil,   nil,   nil,   739,   739,
+   739,   739,   739,   739,   739,   nil,   nil,   739,   nil,   nil,
+   nil,   nil,   nil,   nil,   739,   nil,   nil,   739,   739,   739,
+   739,   739,   739,   739,   739,   739,   739,   739,   739,   nil,
+   739,   739,   nil,   739,   739,   739,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   739,   nil,   nil,   739,   nil,
+   nil,   739,   739,   nil,   nil,   739,   nil,   nil,   nil,   nil,
+   nil,   739,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   739,
+   nil,   nil,   nil,   nil,   739,   739,   739,   739,   739,   739,
+   nil,   nil,   nil,   739,   739,   nil,   nil,   nil,   nil,   nil,
+   nil,   739,   nil,   739,   739,   739,   739,   nil,   739,   739,
+   753,   753,   753,   nil,   753,   nil,   nil,   nil,   753,   753,
+   nil,   nil,   nil,   753,   nil,   753,   753,   753,   753,   753,
+   753,   753,   nil,   nil,   nil,   nil,   nil,   753,   753,   753,
+   753,   753,   753,   753,   nil,   nil,   753,   nil,   nil,   nil,
+   nil,   nil,   nil,   753,   nil,   nil,   753,   753,   753,   753,
+   753,   753,   753,   753,   nil,   753,   753,   753,   nil,   753,
+   753,   nil,   753,   753,   753,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   753,   nil,   nil,   753,   nil,   nil,
+   753,   753,   nil,   nil,   753,   nil,   753,   nil,   nil,   nil,
+   753,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   753,   nil,
+   nil,   nil,   nil,   753,   753,   753,   753,   753,   753,   nil,
+   nil,   nil,   753,   753,   nil,   nil,   nil,   nil,   nil,   nil,
+   753,   nil,   nil,   753,   753,   753,   nil,   753,   753,   765,
+   765,   765,   nil,   765,   nil,   nil,   nil,   765,   765,   nil,
+   nil,   nil,   765,   nil,   765,   765,   765,   765,   765,   765,
+   765,   nil,   nil,   nil,   nil,   nil,   765,   765,   765,   765,
+   765,   765,   765,   nil,   nil,   765,   nil,   nil,   nil,   nil,
+   nil,   nil,   765,   nil,   nil,   765,   765,   765,   765,   765,
+   765,   765,   765,   nil,   765,   765,   765,   nil,   765,   765,
+   nil,   765,   765,   765,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   765,   nil,   nil,   765,   nil,   nil,   765,
+   765,   nil,   nil,   765,   nil,   nil,   nil,   nil,   nil,   765,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   765,   nil,   nil,
+   nil,   nil,   765,   765,   765,   765,   765,   765,   nil,   nil,
+   nil,   765,   765,   nil,   nil,   nil,   nil,   nil,   nil,   765,
+   nil,   nil,   765,   765,   765,   nil,   765,   765,   785,   785,
+   785,   nil,   785,   nil,   nil,   nil,   785,   785,   nil,   nil,
+   nil,   785,   nil,   785,   785,   785,   785,   785,   785,   785,
+   nil,   nil,   nil,   nil,   nil,   785,   785,   785,   785,   785,
+   785,   785,   nil,   nil,   785,   nil,   nil,   nil,   nil,   nil,
+   nil,   785,   nil,   nil,   785,   785,   785,   785,   785,   785,
+   785,   785,   nil,   785,   785,   785,   nil,   785,   785,   nil,
+   785,   785,   785,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   785,   nil,   nil,   785,   nil,   nil,   785,   785,
+   nil,   nil,   785,   nil,   nil,   nil,   nil,   nil,   785,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   785,   nil,   nil,   nil,
+   nil,   785,   785,   785,   785,   785,   785,   nil,   nil,   nil,
+   785,   785,   nil,   nil,   nil,   nil,   nil,   nil,   785,   nil,
+   nil,   785,   785,   785,   nil,   785,   785,   807,   807,   807,
+   nil,   807,   nil,   nil,   nil,   807,   807,   nil,   nil,   nil,
+   807,   nil,   807,   807,   807,   807,   807,   807,   807,   nil,
+   nil,   nil,   nil,   nil,   807,   807,   807,   807,   807,   807,
+   807,   nil,   nil,   807,   nil,   nil,   nil,   nil,   nil,   nil,
+   807,   nil,   nil,   807,   807,   807,   807,   807,   807,   807,
+   807,   nil,   807,   807,   807,   nil,   807,   807,   nil,   807,
+   807,   807,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   807,   nil,   nil,   807,   nil,   nil,   807,   807,   nil,
+   nil,   807,   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,   nil,   nil,
+   807,   807,   807,   807,   807,   807,   nil,   nil,   nil,   807,
+   807,   nil,   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,
+   807,   807,   807,   nil,   807,   807,   815,   815,   815,   nil,
+   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,   nil,   815,   nil,   nil,   nil,   nil,   nil,   nil,   815,
+   nil,   nil,   815,   815,   815,   815,   815,   815,   815,   815,
+   nil,   815,   815,   815,   nil,   815,   815,   nil,   815,   815,
+   815,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   815,   nil,   nil,   815,   nil,   nil,   815,   815,   nil,   nil,
+   815,   nil,   nil,   nil,   nil,   nil,   815,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   815,   nil,   nil,   nil,   nil,   815,
+   815,   815,   815,   815,   815,   nil,   nil,   nil,   815,   815,
+   nil,   nil,   nil,   nil,   nil,   nil,   815,   nil,   nil,   815,
+   815,   815,   nil,   815,   815,   828,   828,   828,   nil,   828,
+   nil,   nil,   nil,   828,   828,   nil,   nil,   nil,   828,   nil,
+   828,   828,   828,   828,   828,   828,   828,   nil,   nil,   nil,
+   nil,   nil,   828,   828,   828,   828,   828,   828,   828,   nil,
+   nil,   828,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,
+   nil,   828,   828,   828,   828,   828,   828,   828,   828,   nil,
+   828,   828,   828,   nil,   828,   828,   nil,   828,   828,   828,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   828,
+   nil,   nil,   828,   nil,   nil,   828,   828,   nil,   nil,   828,
+   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,   828,   828,
+   828,   828,   828,   828,   nil,   nil,   nil,   828,   828,   nil,
+   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,   828,
+   828,   nil,   828,   828,   829,   829,   829,   nil,   829,   nil,
+   nil,   nil,   829,   829,   nil,   nil,   nil,   829,   nil,   829,
+   829,   829,   829,   829,   829,   829,   nil,   nil,   nil,   nil,
+   nil,   829,   829,   829,   829,   829,   829,   829,   nil,   nil,
+   829,   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,
+   829,   829,   829,   829,   829,   829,   829,   829,   nil,   829,
+   829,   829,   nil,   829,   829,   nil,   829,   829,   829,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,
+   nil,   829,   nil,   nil,   829,   829,   nil,   nil,   829,   nil,
+   nil,   nil,   nil,   nil,   829,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   829,   nil,   nil,   nil,   nil,   829,   829,   829,
+   829,   829,   829,   nil,   nil,   nil,   829,   829,   nil,   nil,
+   nil,   nil,   nil,   nil,   829,   nil,   nil,   829,   829,   829,
+   nil,   829,   829,   830,   830,   830,   nil,   830,   nil,   nil,
+   nil,   830,   830,   nil,   nil,   nil,   830,   nil,   830,   830,
+   830,   830,   830,   830,   830,   nil,   nil,   nil,   nil,   nil,
+   830,   830,   830,   830,   830,   830,   830,   nil,   nil,   830,
+   nil,   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,   830,
+   830,   830,   830,   830,   830,   830,   830,   nil,   830,   830,
+   830,   nil,   830,   830,   nil,   830,   830,   830,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,
+   830,   nil,   nil,   830,   830,   nil,   nil,   830,   nil,   nil,
+   nil,   nil,   nil,   830,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   830,   nil,   nil,   nil,   nil,   830,   830,   830,   830,
+   830,   830,   nil,   nil,   nil,   830,   830,   nil,   nil,   nil,
+   nil,   nil,   nil,   830,   nil,   nil,   830,   830,   830,   nil,
+   830,   830,   831,   831,   831,   nil,   831,   nil,   nil,   nil,
+   831,   831,   nil,   nil,   nil,   831,   nil,   831,   831,   831,
+   831,   831,   831,   831,   nil,   nil,   nil,   nil,   nil,   831,
+   831,   831,   831,   831,   831,   831,   nil,   nil,   831,   nil,
+   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   831,   831,
+   831,   831,   831,   831,   831,   831,   nil,   831,   831,   831,
+   nil,   831,   831,   nil,   831,   831,   831,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   831,
+   nil,   nil,   831,   831,   nil,   nil,   831,   nil,   nil,   nil,
+   nil,   nil,   831,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   831,   nil,   nil,   nil,   nil,   831,   831,   831,   831,   831,
+   831,   nil,   nil,   nil,   831,   831,   nil,   nil,   nil,   nil,
+   nil,   nil,   831,   nil,   nil,   831,   831,   831,   nil,   831,
+   831,   833,   833,   833,   nil,   833,   nil,   nil,   nil,   833,
+   833,   nil,   nil,   nil,   833,   nil,   833,   833,   833,   833,
+   833,   833,   833,   nil,   nil,   nil,   nil,   nil,   833,   833,
+   833,   833,   833,   833,   833,   nil,   nil,   833,   nil,   nil,
+   nil,   nil,   nil,   nil,   833,   nil,   nil,   833,   833,   833,
+   833,   833,   833,   833,   833,   nil,   833,   833,   833,   nil,
+   833,   833,   nil,   833,   833,   833,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   833,   nil,   nil,   833,   nil,
+   nil,   833,   833,   nil,   nil,   833,   nil,   nil,   nil,   nil,
+   nil,   833,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   833,
+   nil,   nil,   nil,   nil,   833,   833,   833,   833,   833,   833,
+   nil,   nil,   nil,   833,   833,   nil,   nil,   nil,   nil,   nil,
+   nil,   833,   nil,   nil,   833,   833,   833,   nil,   833,   833,
+   866,   866,   866,   nil,   866,   nil,   nil,   nil,   866,   866,
+   nil,   nil,   nil,   866,   nil,   866,   866,   866,   866,   866,
+   866,   866,   nil,   nil,   nil,   nil,   nil,   866,   866,   866,
+   866,   866,   866,   866,   nil,   nil,   866,   nil,   nil,   nil,
+   nil,   nil,   nil,   866,   nil,   nil,   866,   866,   866,   866,
+   866,   866,   866,   866,   nil,   866,   866,   866,   nil,   866,
+   866,   nil,   866,   866,   866,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   866,   nil,   nil,   866,   nil,   nil,
+   866,   866,   nil,   nil,   866,   nil,   nil,   nil,   nil,   nil,
+   866,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   866,   nil,
+   nil,   nil,   nil,   866,   866,   866,   866,   866,   866,   nil,
+   nil,   nil,   866,   866,   nil,   nil,   nil,   nil,   nil,   nil,
+   866,   nil,   nil,   866,   866,   866,   nil,   866,   866,   873,
+   873,   873,   nil,   873,   nil,   nil,   nil,   873,   873,   nil,
+   nil,   nil,   873,   nil,   873,   873,   873,   873,   873,   873,
+   873,   nil,   nil,   nil,   nil,   nil,   873,   873,   873,   873,
+   873,   873,   873,   nil,   nil,   873,   nil,   nil,   nil,   nil,
+   nil,   nil,   873,   nil,   nil,   873,   873,   873,   873,   873,
+   873,   873,   873,   nil,   873,   873,   873,   nil,   873,   873,
+   nil,   873,   873,   873,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   873,   nil,   nil,   873,   nil,   nil,   873,
+   873,   nil,   nil,   873,   nil,   nil,   nil,   nil,   nil,   873,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   873,   nil,   nil,
+   nil,   nil,   873,   873,   873,   873,   873,   873,   nil,   nil,
+   nil,   873,   873,   nil,   nil,   nil,   nil,   nil,   nil,   873,
+   nil,   nil,   873,   873,   873,   nil,   873,   873,   921,   921,
+   921,   nil,   921,   nil,   nil,   nil,   921,   921,   nil,   nil,
+   nil,   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,   921,   921,   921,   921,
+   921,   921,   921,   921,   921,   921,   nil,   921,   921,   nil,
+   921,   921,   921,   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,   921,
+   nil,   nil,   921,   nil,   nil,   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,
+   921,   921,   921,   921,   nil,   921,   921,   922,   922,   922,
+   nil,   922,   nil,   nil,   nil,   922,   922,   nil,   nil,   nil,
+   922,   nil,   922,   922,   922,   922,   922,   922,   922,   nil,
+   nil,   nil,   nil,   nil,   922,   922,   922,   922,   922,   922,
+   922,   nil,   nil,   922,   nil,   nil,   nil,   nil,   nil,   nil,
+   922,   nil,   nil,   922,   922,   922,   922,   922,   922,   922,
+   922,   nil,   922,   922,   922,   nil,   922,   922,   nil,   922,
+   922,   922,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   922,   nil,   nil,   922,   nil,   nil,   922,   922,   nil,
+   nil,   922,   nil,   nil,   nil,   nil,   nil,   922,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   922,   nil,   nil,   nil,   nil,
+   922,   922,   922,   922,   922,   922,   nil,   nil,   nil,   922,
+   922,   nil,   nil,   nil,   nil,   nil,   nil,   922,   nil,   nil,
+   922,   922,   922,   nil,   922,   922,   934,   934,   934,   nil,
+   934,   nil,   nil,   nil,   934,   934,   nil,   nil,   nil,   934,
+   nil,   934,   934,   934,   934,   934,   934,   934,   nil,   nil,
+   nil,   nil,   nil,   934,   934,   934,   934,   934,   934,   934,
+   nil,   nil,   934,   nil,   nil,   nil,   nil,   nil,   nil,   934,
+   nil,   nil,   934,   934,   934,   934,   934,   934,   934,   934,
+   nil,   934,   934,   934,   nil,   934,   934,   nil,   nil,   nil,
+   934,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   934,   nil,   nil,   934,   nil,   nil,   934,   934,   nil,   nil,
+   934,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   934,
+   934,   934,   934,   934,   934,   nil,   nil,   nil,   934,   934,
+   nil,   nil,   nil,   nil,   nil,   nil,   934,   nil,   nil,   934,
+   934,   934,   nil,   934,   934,   943,   943,   943,   nil,   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,   nil,   943,   nil,
+   nil,   943,   943,   943,   943,   943,   943,   943,   943,   nil,
+   943,   943,   943,   nil,   943,   943,   nil,   nil,   nil,   943,
+   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,   943,   nil,   nil,   943,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   943,   943,
+   943,   943,   943,   943,   nil,   nil,   nil,   943,   943,   nil,
+   nil,   nil,   nil,   nil,   nil,   943,   nil,   nil,   943,   943,
+   943,   nil,   943,   943,   951,   951,   951,   nil,   951,   nil,
+   nil,   nil,   951,   951,   nil,   nil,   nil,   951,   nil,   951,
+   951,   951,   951,   951,   951,   951,   nil,   nil,   nil,   nil,
+   nil,   951,   951,   951,   951,   951,   951,   951,   nil,   nil,
+   951,   nil,   nil,   nil,   nil,   nil,   nil,   951,   nil,   nil,
+   951,   951,   951,   951,   951,   951,   951,   951,   nil,   951,
+   951,   951,   nil,   951,   951,   nil,   951,   951,   951,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   951,   nil,
+   nil,   951,   nil,   nil,   951,   951,   nil,   nil,   951,   nil,
+   951,   nil,   nil,   nil,   951,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   951,   nil,   nil,   nil,   nil,   951,   951,   951,
+   951,   951,   951,   nil,   nil,   nil,   951,   951,   nil,   nil,
+   nil,   nil,   nil,   nil,   951,   nil,   nil,   951,   951,   951,
+   nil,   951,   951,   992,   992,   992,   nil,   992,   nil,   nil,
+   nil,   992,   992,   nil,   nil,   nil,   992,   nil,   992,   992,
+   992,   992,   992,   992,   992,   nil,   nil,   nil,   nil,   nil,
+   992,   992,   992,   992,   992,   992,   992,   nil,   nil,   992,
+   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,   992,
+   992,   992,   992,   992,   992,   992,   992,   nil,   992,   992,
+   992,   nil,   992,   992,   nil,   nil,   nil,   992,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,
+   992,   nil,   nil,   992,   992,   nil,   nil,   992,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   992,   992,   992,   992,
+   992,   992,   nil,   nil,   nil,   992,   992,   nil,   nil,   nil,
+   nil,   nil,   nil,   992,   nil,   nil,   992,   992,   992,   nil,
+   992,   992,  1006,  1006,  1006,   nil,  1006,   nil,   nil,   nil,
+  1006,  1006,   nil,   nil,   nil,  1006,   nil,  1006,  1006,  1006,
+  1006,  1006,  1006,  1006,   nil,   nil,   nil,   nil,   nil,  1006,
+  1006,  1006,  1006,  1006,  1006,  1006,   nil,   nil,  1006,   nil,
+   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,  1006,
+  1006,  1006,  1006,  1006,  1006,  1006,   nil,  1006,  1006,  1006,
+   nil,  1006,  1006,   nil,  1006,  1006,  1006,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,
+   nil,   nil,  1006,  1006,   nil,   nil,  1006,   nil,   nil,   nil,
+   nil,   nil,  1006,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1006,   nil,   nil,   nil,   nil,  1006,  1006,  1006,  1006,  1006,
+  1006,   nil,   nil,   nil,  1006,  1006,   nil,   nil,   nil,   nil,
+   nil,   nil,  1006,   nil,   nil,  1006,  1006,  1006,   nil,  1006,
+  1006,  1037,  1037,  1037,   nil,  1037,   nil,   nil,   nil,  1037,
+  1037,   nil,   nil,   nil,  1037,   nil,  1037,  1037,  1037,  1037,
+  1037,  1037,  1037,   nil,   nil,   nil,   nil,   nil,  1037,  1037,
+  1037,  1037,  1037,  1037,  1037,   nil,   nil,  1037,   nil,   nil,
+   nil,   nil,   nil,   nil,  1037,   nil,   nil,  1037,  1037,  1037,
+  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,   nil,
+  1037,  1037,   nil,  1037,  1037,  1037,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1037,   nil,   nil,  1037,   nil,
+   nil,  1037,  1037,   nil,   nil,  1037,   nil,  1037,   nil,  1037,
+   nil,  1037,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1037,
+   nil,   nil,   nil,   nil,  1037,  1037,  1037,  1037,  1037,  1037,
+   nil,   nil,   nil,  1037,  1037,   nil,   nil,   nil,   nil,   nil,
+   nil,  1037,   nil,  1037,  1037,  1037,  1037,   nil,  1037,  1037,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,   nil,   nil,   nil,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,
+   nil,   nil,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,   nil,    11,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,    11,
+    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,    11,
+    11,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    11,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+   nil,   nil,   nil,   nil,   nil,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,   nil,   nil,    12,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,
+    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
+   nil,   nil,    12,    12,    12,    12,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,
+    12,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,   nil,   nil,    12,    12,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    12,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,   nil,   nil,   nil,   nil,   nil,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,
+   nil,    75,    75,    75,    75,    75,    75,    75,   nil,   nil,
+    75,    75,   nil,   nil,   nil,    75,    75,    75,    75,   nil,
+   nil,   nil,   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    75,    75,   nil,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,   nil,   nil,    75,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   nil,   nil,   nil,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   nil,   nil,   nil,   nil,
+   nil,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   nil,   105,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,   105,   nil,   105,   105,   105,   105,   105,   105,
+   105,   nil,   nil,   105,   105,   nil,   nil,   nil,   105,   105,
+   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
+   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,   428,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   428,   428,   428,   nil,   nil,   nil,   428,
+   428,   428,   428,   428,   428,   428,   428,   428,   428,   nil,
+   nil,   nil,   nil,   nil,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   nil,   nil,   428,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   428,   428,   nil,   428,   428,   428,
+   428,   428,   428,   428,   nil,   nil,   428,   428,   nil,   nil,
+   nil,   428,   428,   428,   428,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   428,   428,
+   nil,   428,   428,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   nil,   nil,   428,   428,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   428,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   428,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   662,   662,   662,   nil,
+   nil,   nil,   662,   662,   662,   662,   662,   662,   662,   662,
+   662,   662,   nil,   nil,   nil,   nil,   nil,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   nil,   nil,   662,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   662,   nil,
+   662,   662,   662,   662,   662,   662,   662,   nil,   nil,   662,
+   662,   nil,   nil,   nil,   662,   662,   662,   662,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   662,   662,   nil,   662,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   nil,   nil,   662,   662,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   771,   nil,   nil,   nil,   771,   771,   771,   771,   771,
+   771,   771,   771,   771,   771,   nil,   nil,   nil,   nil,   nil,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   nil,
+   nil,   771,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   771,   771,   nil,   771,   771,   771,   771,   771,   771,   771,
+   nil,   nil,   771,   771,   nil,   nil,   nil,   771,   771,   771,
+   771,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   771,   771,   nil,   771,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   nil,   nil,
+   771,   nil,   nil,   nil,   nil,   228,   228,   nil,   nil,   228,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   228,   228,
+   771,   228,   228,   228,   228,   228,   228,   228,   nil,   nil,
+   228,   228,   nil,   nil,   nil,   228,   228,   228,   228,   nil,
+   nil,   nil,   nil,   nil,   228,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   228,   228,   nil,   228,   228,   228,   228,   228,
+   228,   228,   228,   228,   228,   228,   nil,   nil,   228,   nil,
+   nil,   nil,   nil,   229,   229,   nil,   nil,   229,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,   228,   229,
+   229,   229,   229,   229,   229,   229,   nil,   nil,   229,   229,
+   nil,   nil,   nil,   229,   229,   229,   229,   nil,   nil,   nil,
+   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   229,   229,   nil,   229,   229,   229,   229,   229,   229,   229,
+   229,   229,   229,   229,   nil,   nil,   229,   nil,   nil,   nil,
+   nil,   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   479,   479,   229,   479,   479,   479,
+   479,   479,   479,   479,   nil,   nil,   479,   479,   nil,   nil,
+   nil,   479,   479,   479,   479,   nil,   nil,   nil,   nil,   nil,
+   479,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   479,   479,
+   nil,   479,   479,   479,   479,   479,   479,   479,   479,   479,
+   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,   480,
+   480,   nil,   nil,   480,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   480,   480,   479,   480,   480,   480,   480,   480,
+   480,   480,   nil,   nil,   480,   480,   nil,   nil,   nil,   480,
+   480,   480,   480,   nil,   nil,   nil,   nil,   nil,   480,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   480,   480,   nil,   480,
+   480,   480,   480,   480,   480,   480,   480,   480,   480,   480,
+   nil,   nil,   480,   nil,   nil,   nil,   nil,   545,   545,   nil,
+   nil,   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   545,   545,   480,   545,   545,   545,   545,   545,   545,   545,
+   nil,   nil,   545,   545,   nil,   nil,   nil,   545,   545,   545,
+   545,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   545,   545,   nil,   545,   545,   545,
+   545,   545,   545,   545,   545,   545,   545,   545,   nil,   nil,
+   545,   nil,   nil,   nil,   nil,   546,   546,   nil,   nil,   546,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   546,   546,
+   545,   546,   546,   546,   546,   546,   546,   546,   nil,   nil,
+   546,   546,   nil,   nil,   nil,   546,   546,   546,   546,   nil,
+   nil,   nil,   nil,   nil,   546,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   546,   546,   nil,   546,   546,   546,   546,   546,
+   546,   546,   546,   546,   546,   546,   nil,   nil,   546,   nil,
+   nil,   nil,   nil,   555,   555,   nil,   nil,   555,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   555,   555,   546,   555,
+   555,   555,   555,   555,   555,   555,   nil,   nil,   555,   555,
+   nil,   nil,   nil,   555,   555,   555,   555,   nil,   nil,   nil,
+   nil,   nil,   555,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   555,   555,   nil,   555,   555,   555,   555,   555,   555,   555,
+   555,   555,   555,   555,   nil,   nil,   555,   nil,   nil,   nil,
+   nil,   556,   556,   nil,   nil,   556,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   556,   556,   555,   556,   556,   556,
+   556,   556,   556,   556,   nil,   nil,   556,   556,   nil,   nil,
+   nil,   556,   556,   556,   556,   nil,   nil,   nil,   nil,   nil,
+   556,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   556,   556,
+   nil,   556,   556,   556,   556,   556,   556,   556,   556,   556,
+   556,   556,   nil,   nil,   556,   nil,   nil,   nil,   nil,   584,
+   584,   nil,   nil,   584,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   584,   584,   556,   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,
+   nil,   nil,   584,   nil,   nil,   nil,   nil,   585,   585,   nil,
+   nil,   585,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   585,   585,   584,   585,   585,   585,   585,   585,   585,   585,
+   nil,   nil,   585,   585,   nil,   nil,   nil,   585,   585,   585,
+   585,   nil,   nil,   nil,   nil,   nil,   585,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   585,   585,   nil,   585,   585,   585,
+   585,   585,   585,   585,   585,   585,   585,   585,   nil,   nil,
+   585,   nil,   nil,   nil,   nil,   591,   591,   nil,   nil,   591,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   591,   591,
+   585,   591,   591,   591,   591,   591,   591,   591,   nil,   nil,
+   591,   591,   nil,   nil,   nil,   591,   591,   591,   591,   nil,
+   nil,   nil,   nil,   nil,   591,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   591,   591,   nil,   591,   591,   591,   591,   591,
+   591,   591,   591,   591,   591,   591,   nil,   nil,   591,   nil,
+   nil,   nil,   nil,   592,   592,   nil,   nil,   592,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   592,   592,   591,   592,
+   592,   592,   592,   592,   592,   592,   nil,   nil,   592,   592,
+   nil,   nil,   nil,   592,   592,   592,   592,   nil,   nil,   nil,
+   nil,   nil,   592,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   592,   592,   nil,   592,   592,   592,   592,   592,   592,   592,
+   592,   592,   592,   592,   nil,   nil,   592,   nil,   nil,   nil,
+   nil,   668,   668,   nil,   nil,   668,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   668,   668,   592,   668,   668,   668,
+   668,   668,   668,   668,   nil,   nil,   668,   668,   nil,   nil,
+   nil,   668,   668,   668,   668,   nil,   nil,   nil,   nil,   nil,
+   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   668,   668,
+   nil,   668,   668,   668,   668,   668,   668,   668,   668,   668,
+   668,   668,   nil,   nil,   668,   nil,   nil,   nil,   nil,   669,
+   669,   nil,   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   669,   669,   668,   669,   669,   669,   669,   669,
+   669,   669,   nil,   nil,   669,   669,   nil,   nil,   nil,   669,
+   669,   669,   669,   nil,   nil,   nil,   nil,   nil,   669,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   669,   669,   nil,   669,
+   669,   669,   669,   669,   669,   669,   669,   669,   669,   669,
+   nil,   983,   669,   983,   983,   983,   983,   983,   986,   nil,
+   986,   986,   986,   986,   986,   nil,   nil,   983,   nil,   nil,
+   nil,   nil,   669,   nil,   986,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   983,
+   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   983,   983,
+   983,   983,   nil,   nil,   nil,   986,   986,   986,   986,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1033,  1033,   nil,   nil,
+  1033,   nil,   nil,   nil,   983,   nil,   nil,   nil,   nil,  1033,
+  1033,   986,  1033,  1033,  1033,  1033,  1033,  1033,  1033,   nil,
+   nil,  1033,  1033,   nil,   nil,   nil,  1033,  1033,  1033,  1033,
+   nil,   nil,   nil,   nil,   nil,  1033,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1033,  1033,   nil,  1033,  1033,  1033,  1033,
+  1033,  1033,  1033,  1033,  1033,  1033,  1033,   nil,   nil,  1033,
+   nil,   nil,   nil,   nil,  1038,  1038,   nil,   nil,  1038,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1038,  1038,  1033,
+  1038,  1038,  1038,  1038,  1038,  1038,  1038,   nil,   nil,  1038,
+  1038,   nil,   nil,   nil,  1038,  1038,  1038,  1038,   nil,   nil,
+   nil,   nil,   nil,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1038,  1038,   nil,  1038,  1038,  1038,  1038,  1038,  1038,
+  1038,  1038,  1038,  1038,  1038,   nil,   nil,  1038,   nil,   nil,
+   nil,   nil,  1039,  1039,   nil,   nil,  1039,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1039,  1039,  1038,  1039,  1039,
+  1039,  1039,  1039,  1039,  1039,   nil,   nil,  1039,  1039,   nil,
+   nil,   nil,  1039,  1039,  1039,  1039,   nil,   nil,   nil,   nil,
+   nil,  1039,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1039,
+  1039,   nil,  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,
+  1039,  1039,  1039,   nil,  1057,  1039,  1057,  1057,  1057,  1057,
+  1057,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1057,   nil,   nil,   nil,   nil,  1039,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1057,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1057,  1057,  1057,  1057,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1057 ]
+
+racc_action_pointer = [
+   nil,    34,  2018,    60,   nil,   201,   nil,   nil,  6077,   763,
+   nil, 24008, 24141,   -12,   nil,   -30,    60,   -17,   152,   279,
+   112,   nil,   -60,  6216,  2298,   236,   nil,   -40,   nil,     0,
+  1084,  1216,  6355,  6494,  6633,   nil,  2158,  6772,  6911,   nil,
+   144,   208,   304,   268,   159,  7050,  7189,   489,  7328,   203,
+   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1348,   nil,  7467,   nil,   nil,    73,   nil,  7606,  7745,   nil,
+   nil,  7884,  8023,  8162,  8301, 24274,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   -65,   nil,   nil,   nil,   nil,   nil,   nil,   223,
+   255,   278,   284,   nil,   nil, 24407,   nil,   nil,   nil,   nil,
+   nil,   nil,     0,   nil,   nil,   139,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  8440,   nil,
+   nil,   nil,   nil,  8579,  8718,  8857,  8996,  9135,   312,   nil,
+   605,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   306,
+   nil,  2298,  9274,  9413,  9552,  9691,  9830,  9969, 24874, 24942,
+   nil,   nil, 10108, 10247, 10386,   nil,   nil,   356,   -55,   -52,
+   405,   162,   341,   408,   nil, 10525,  2438,   431, 10664, 10803,
+ 10942, 11081, 11220, 11359, 11498, 11637, 11776, 11915, 12054, 12193,
+ 12332, 12471, 12610, 12749, 12888, 13027, 13166, 13305, 13444, 13583,
+   nil,   nil,   nil,   nil, 13722,   nil,   nil,   nil,  1876,   nil,
+   nil,   426, 13861, 14000,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil, 14139,   nil,  2438,   nil,   402,   406,   nil, 14278,
+   460, 14417,   nil,   nil, 14556, 14695,   nil,   nil,   460,   nil,
+   nil, 14834,   925,   nil,   419,  2578,   461,   499,   474, 14973,
+  2718,   371,   411,   458,   551,   510,   nil,   548,   516,   206,
+   nil,   nil,   nil,   567,   254,   536, 15112,   nil,   308,   618,
+   514,   nil,   620, 15251,   nil, 15390,  2858,  1166,   587, 15529,
+ 15668,   nil,    11,   -10,    -1, 15807,  2998,  3138,   476,   699,
+   585,   -19,   -14,   589,   670,    -7,   702,   nil,   nil,   311,
+   342,   308,   nil,   625,   nil,   620, 15946,   nil,   nil,   nil,
+   112,   118,   120,   239,   344,   373,   377,   455,   459,   nil,
+   461,   nil,   nil,   645,   nil,   -59,   nil,   370,   nil,   538,
+   nil,   605,   378,   nil,   607,   397,   nil,   609,   -37,   nil,
+   610,   -27,   nil,   443,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 24540,   nil,
+   nil,   nil,   nil,   624,   nil,   nil,   612, 16085,   618,   nil,
+   nil,   618,   nil,   752,   182,   720,   nil,   nil,  2018,   nil,
+   nil,   nil,   nil,   nil,  2158,   644,   nil,   nil,   642,   644,
+   430,   547,  1480,   nil,   nil,   nil,   271,   403,   687,   nil,
+   nil,  1612,  1744,   nil,   nil,   nil,   -33,   nil,   690, 25010,
+ 25078, 16224,   187, 16363, 16502, 16641,  3138,  3278,   364,   490,
+   724,   726,   729,   748,   976,  1430,  1562,  3418,  3558,  3698,
+  3838,  3978,  4118,   844,  1039,  4258,  4398,  2578,  1166,   807,
+   nil,  1876,   nil,   nil,   nil,   nil,   691,   nil,   nil,   nil,
+   692,   nil,   nil, 16780,   nil,   nil, 16919,   nil, 17058,   nil,
+   265,   nil,   nil,   nil, 17197,  1178,   712,   702,   703,   nil,
+   nil,   705, 17336,   709, 17475, 25146, 25214,   753,   746,   nil,
+ 17614,   710,   nil, 17753, 17892, 25282, 25350,  1298,  2718, 18031,
+   833,   851,   735,   nil,   nil,   -80,   -68,   736,   751,   nil,
+   340,   777,  3278,   856,   nil,  3418,    30,   860,   868,   863,
+   890,   nil,   nil, 18170, 25418, 25486,     5,   nil,   nil,   763,
+   nil, 25554, 25622, 18309,   nil,   nil,   nil,   587,  3558,   811,
+   nil,   nil,   nil, 18448,   nil,   744,   nil,   773,   774,   nil,
+   777,   780,   781,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   769,   685,   nil,   nil, 18587,   nil,   nil,   nil,   882,
+   nil,   nil,   nil,   886,   nil,   nil,   895,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   198,   nil,
+   nil,   200,   nil,   nil,   nil,   826,   nil,   nil,   830,   nil,
+  3698,   nil, 24673,   nil,   842, 18726, 18865, 19004, 25690, 25758,
+ 19143, 19282,   585,   882, 19421, 19560, 19699, 19838,   882,   nil,
+   nil,   nil, 19977, 20116,   883,   nil,   nil,   nil,   189,   216,
+   542,   681,   870,   869,   nil,   116,   972,   163,   nil,   nil,
+   888,   nil,   996,   nil,   880,   nil,   922, 20255,   nil,   nil,
+ 20394,   nil,   nil,  -123, 20533,   882,   nil,   901,    -9,    28,
+   951,    33,   773,   952,   916, 20672,   nil,   995,   156,   221,
+   nil, 20811,   nil,   nil,   nil,   nil, 20950,   nil,   nil, 21089,
+   nil,   nil,   nil,   618,   nil,  1052,   nil,   nil,   nil,   nil,
+   nil,  1059,   nil, 21228,   944,    20,    29,   163,   165,  3838,
+   550,   781,   nil,   947,  3978, 21367,   535,  1076,  4118,   874,
+  1048, 24806,   165,    27,   960,   234,   nil,   nil,   578,  1147,
+   nil,  1279,   nil,   471,   nil, 21506,   nil,   949,   nil,   959,
+   961,   881,   968,   nil,   nil,   nil,   nil,   936,  4258,   nil,
+   nil,   nil,   nil,   nil,   982,   nil,   978, 21645,   982,   222,
+   274,   813,   945,   nil,  2858, 21784,   nil,   983,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 21923, 22062,
+ 22201, 22340,   317, 22479,   nil,   nil,  1411,   nil,  4398,   nil,
+   nil,  1000,   nil,   119,   nil,   nil,   nil,   nil,   985,   160,
+   nil,   nil,   nil,   nil,   nil,   nil,  4538,   nil,   987,  1029,
+   nil,   nil,   447,  1109,   nil,   nil, 22618,   nil,  4678,  1110,
+   nil,   nil,   nil, 22757,    42,    41,  1113,   nil,  1120,   551,
+   nil,   nil,  1124,  1009,   580,   nil,   nil,   nil,  4818,  4958,
+  1005,  1013,  1011,   nil,   nil,   nil,  1012,  1021,   nil,  1036,
+  1041,   nil,  1042,   nil,   nil,  1047,   980,   819,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1038,   nil,  1048,   320,   nil,
+   nil, 22896, 23035,  2998,  1051,  1055,   nil,  1057,  1065,  1070,
+   nil,  1103,  1101,  1087, 23174,   nil,   nil,   nil,   nil,  5098,
+  5238,   nil,     6, 23313,   nil,   nil,   nil,    10,   nil,   nil,
+   nil, 23452,  5378,   nil,   nil,   nil,  5518,   nil,   nil,   nil,
+  1144,  1127,  1235,  1010,   nil,   nil,  1543,   nil,  1675,   nil,
+  6793,   nil,  6932,   nil,   nil,   nil,   nil,  1122,  1125,   nil,
+   325,   nil,   nil, 25820,   nil,   nil, 25827,   nil,  8044,   nil,
+   nil,  1152, 23591,   884,  1213,   nil,  1266,  5658,    19,    38,
+   898,  1221,    69,   nil,  5798,   nil, 23730,   355,  1269,  5938,
+   nil,   nil,   451,   nil,   nil,   nil,  1150,  1151,  1153,  1168,
+  1077,  1184,  1169,   nil,   nil,  1173,  1174,  1176,  1179,   nil,
+  1180,   nil,   913, 25895,   nil,   nil,  1305, 23869, 25963, 26031,
+   106,   691,   nil,   nil,   nil,   nil,   nil,  1305,   nil,  1209,
+  8183,   nil,   nil,   nil,   nil,  1187,   nil, 26093,   nil,  8322,
+   nil, 14994,   nil, 15133,   nil,   nil,  1228,  1236,   nil,  1202,
+   128,   131,   171,   174,   nil,   nil,   nil,  1202,  1208,  1209,
+  1210,  1211,   162,   nil, 17357,   nil,   nil,   nil,   nil,  1212,
+   nil ]
+
+racc_action_default = [
+    -1,  -646,  -645,  -646,    -2,  -632,    -4,    -5,  -646,    -8,
+    -9,  -646,  -646,  -646,   -36,  -646,  -646,   -40,  -646,  -646,
+  -292,   -52,  -634,  -646,   -57,   -62,   -63,   -64,   -68,  -269,
+  -269,  -269,  -307,  -337,  -338,   -80,  -645,   -84,   -92,   -94,
+  -646,  -533,  -534,  -646,  -646,  -646,  -646,  -228,  -646,  -634,
+  -242,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,  -291,
+  -618,  -294,  -296,  -303,  -305,  -315,  -317,  -646,  -646,   -59,
+   -59,  -632,  -646,  -646,  -646,  -646,  -339,  -340,  -342,  -343,
+  -344,  -345,  -346,  -347,  -348,  -349,  -350,  -351,  -360,  -415,
+  -463,  -464,  -465,  -466,  -467,  -645,  -470,  -645,  -645,  -645,
+  -645,  -645,  -645,  -506,  -507,  -645,  -509,  -515,  -517,  -518,
+  -519,  -520,  -616,  -522,  -523,  -617,  -525,  -526,  -527,  -528,
+  -529,  -530,  -531,  -532,  -537,  -538,  1091,    -3,  -633,  -641,
+  -642,  -643,    -7,  -646,  -646,  -646,  -646,  -646,  -646,   -24,
+  -646,  -123,  -124,  -125,  -126,  -127,  -128,  -129,  -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,  -194,
+  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,   -29,
+  -130,  -645,  -646,  -646,  -646,  -646,  -646,  -645,  -646,  -646,
+  -628,  -629,  -646,  -646,  -634,  -635,   -56,  -646,  -533,  -534,
+  -646,  -292,  -646,  -646,  -234,  -646,  -645,  -646,  -646,  -646,
+  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,
+  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,
+  -243,  -244,  -245,  -246,  -646,  -353,  -443,  -423,  -646,  -630,
+  -631,   -69,  -645,  -646,  -314,  -352,  -427,  -436,  -438,   -75,
+  -433,   -76,  -634,   -77,  -249,  -264,  -645,  -645,  -268,  -646,
+  -274,  -646,  -645,  -610,  -646,  -646,   -78,   -79,  -632,   -17,
+   -18,  -646,   -21,   -22,   -82,  -645,  -634,  -646,   -85,   -88,
+  -645,  -100,  -101,  -646,  -646,  -108,  -307,  -310,  -634,  -646,
+  -337,  -338,  -341,  -434,  -646,   -90,  -646,   -96,  -302,  -516,
+  -646,  -222,  -223,  -646,  -235,  -646,  -645,  -298,  -634,  -645,
+  -645,  -316,   -58,  -646,  -646,  -646,  -645,  -645,  -632,  -646,
+  -633,  -533,  -534,  -646,  -646,  -292,  -646,  -370,  -371,  -118,
+  -119,  -646,  -121,  -646,  -292,  -645,  -646,  -533,  -534,  -330,
+  -123,  -124,  -163,  -164,  -165,  -181,  -186,  -193,  -196,  -332,
+  -646,  -605,  -606,  -565,  -468,  -646,  -491,  -646,  -493,  -646,
+  -495,  -646,  -646,  -475,  -646,  -646,  -481,  -646,  -646,  -487,
+  -646,  -646,  -489,  -646,  -508,  -510,  -511,  -512,  -513,    -6,
+  -644,   -30,   -31,   -32,   -33,   -34,   -10,   -11,  -646,   -26,
+   -27,   -28,  -131,  -646,   -37,   -39,  -279,  -646,  -646,  -278,
+   -38,  -646,   -41,  -646,  -292,   -49,   -51,  -204,  -254,  -274,
+   -53,   -54,   -42,  -205,  -254,  -634,  -259,  -260,  -645,  -645,
+  -619,  -620,  -269,  -431,  -621,  -622,  -620,  -619,  -269,  -430,
+  -432,  -621,  -622,   -48,  -212,   -55,  -634,  -313,  -646,  -646,
+  -646,  -645,  -302,  -646,  -646,  -646,  -213,  -214,  -215,  -216,
+  -217,  -218,  -219,  -220,  -224,  -225,  -226,  -227,  -229,  -230,
+  -231,  -232,  -233,  -236,  -237,  -238,  -239,  -634,  -247,  -646,
+  -444,  -269,  -619,  -620,   -66,   -70,  -634,  -270,  -440,  -443,
+  -634,  -309,  -265,  -646,  -273,  -266,  -646,  -271,  -646,  -275,
+  -646,  -613,  -615,   -16,  -633,   -20,  -646,  -634,   -81,  -300,
+   -97,   -86,  -646,  -634,  -645,  -646,  -646,  -107,  -646,  -516,
+  -646,   -93,   -98,  -646,  -646,  -646,  -646,  -248,  -240,  -646,
+  -455,  -646,  -634,  -297,  -250,  -638,  -638,  -634,  -646,  -608,
+  -638,  -646,  -645,  -361,  -362,  -645,  -646,  -646,  -646,  -646,
+  -646,  -356,  -450,  -645,  -646,  -646,  -302,   -59,  -118,  -119,
+  -120,  -646,  -646,  -645,  -325,  -539,  -541,  -327,  -645,  -543,
+  -334,  -626,  -627,  -646,  -416,  -565,  -419,  -604,  -604,  -548,
+  -550,  -550,  -550,  -564,  -566,  -567,  -568,  -569,  -570,  -571,
+  -572,  -573,  -646,  -575,  -577,  -579,  -584,  -586,  -587,  -589,
+  -594,  -596,  -597,  -599,  -600,  -601,  -646,  -469,  -492,  -497,
+  -498,  -500,  -471,  -494,  -472,  -496,  -473,  -474,  -646,  -477,
+  -479,  -646,  -480,  -483,  -484,  -646,  -485,  -486,  -646,  -514,
+  -645,   -25,  -646,   -35,  -282,  -646,  -646,  -645,  -646,  -646,
+  -646,  -646,  -435,  -646,  -261,  -263,  -646,  -646,   -71,  -257,
+  -258,  -428,  -646,  -646,   -73,  -429,  -312,  -636,  -619,  -620,
+  -619,  -620,  -634,  -646,  -422,  -645,   -65,  -424,  -440,  -256,
+  -646,  -441,  -646,  -308,  -645,  -272,  -276,  -646,  -611,  -612,
+  -646,   -19,   -23,   -83,  -646,   -89,   -95,  -634,  -619,  -620,
+  -645,  -623,  -106,  -646,   -91,  -646,  -211,  -221,  -634,  -645,
+  -354,  -645,  -295,  -359,  -299,  -251,  -640,  -639,  -253,  -640,
+  -304,  -306,  -609,  -645,  -363,  -645,   -60,  -364,  -365,  -320,
+  -321,  -646,  -323,  -646,  -634,  -619,  -620,  -623,  -301,  -645,
+  -118,  -119,  -122,  -634,  -645,  -646,  -646,  -646,  -645,  -565,
+  -565,  -646,  -634,  -646,  -634,  -646,  -546,  -547,  -646,  -646,
+  -557,  -646,  -560,  -646,  -562,  -646,  -372,  -646,  -374,  -376,
+  -379,  -382,  -634,  -578,  -588,  -598,  -602,  -646,  -645,  -476,
+  -478,  -482,  -488,  -490,  -646,  -132,  -280,  -646,  -634,  -619,
+  -620,  -620,  -619,   -50,  -255,  -646,  -637,  -645,   -44,  -207,
+   -45,  -208,   -72,   -46,  -210,   -47,  -209,   -74,  -646,  -646,
+  -646,  -646,  -435,  -646,  -404,  -405,  -634,  -407,  -645,  -426,
+  -425,  -646,  -437,  -645,  -439,  -267,  -277,  -614,   -87,  -435,
+   -99,  -311,   -13,   -15,  -355,  -357,  -645,  -462,  -456,  -645,
+  -457,  -458,  -638,  -646,  -358,  -366,  -646,  -368,  -645,  -646,
+   -61,  -322,  -446,  -646,  -646,  -435,  -646,  -435,  -646,  -646,
+  -328,  -331,  -646,  -634,  -646,  -335,  -607,  -417,  -645,  -645,
+  -409,  -634,  -604,  -585,  -603,  -549,  -550,  -550,  -576,  -550,
+  -550,  -595,  -550,  -573,  -590,  -634,  -646,  -646,  -381,  -574,
+  -499,  -502,  -503,  -504,  -505,  -646,   -12,  -281,  -435,   -43,
+  -206,  -262,  -646,  -241,  -604,  -604,  -386,  -645,  -645,  -645,
+  -403,  -646,  -634,  -573,  -581,  -582,  -592,  -445,   -67,  -645,
+  -645,  -461,  -646,  -646,  -460,  -252,  -318,  -646,  -369,  -319,
+  -447,  -646,  -645,  -324,  -326,  -540,  -645,  -333,  -542,  -544,
+  -543,  -646,  -646,  -646,  -418,  -545,  -646,  -553,  -646,  -555,
+  -646,  -558,  -646,  -561,  -563,  -373,  -375,  -377,  -380,  -501,
+  -646,  -384,  -385,  -394,  -388,  -396,  -646,  -399,  -646,  -401,
+  -406,  -646,  -646,  -580,  -646,  -442,  -645,  -645,  -533,  -534,
+  -646,  -646,  -292,  -459,  -645,  -448,  -646,  -645,  -646,  -645,
+  -420,  -421,  -634,  -411,  -413,  -414,  -550,  -550,  -550,  -550,
+  -646,  -646,  -604,  -583,  -387,  -645,  -645,  -645,  -645,  -593,
+  -645,  -408,  -591,  -646,  -302,   -14,  -455,  -645,  -646,  -646,
+  -302,  -645,  -449,  -451,  -452,  -453,  -329,  -646,  -410,  -646,
+  -646,  -551,  -554,  -556,  -559,  -378,  -383,  -646,  -391,  -646,
+  -393,  -646,  -397,  -646,  -400,  -402,  -301,  -623,  -454,  -634,
+  -619,  -620,  -623,  -301,  -367,  -336,  -412,  -550,  -645,  -645,
+  -645,  -645,  -435,  -552,  -646,  -389,  -392,  -395,  -398,  -645,
+  -390 ]
+
+racc_goto_table = [
+     6,   228,   236,   233,   389,   295,   295,   295,   318,   279,
+     4,   277,   561,   286,   290,   580,   144,   144,   455,     9,
+   515,   351,   131,   353,   354,     9,   729,   358,   621,   426,
+   345,   708,   332,   332,   415,   606,   572,   575,   139,   220,
+   356,   357,   297,   297,   297,   439,   440,   590,   317,   352,
+   352,   128,   768,   352,   127,   147,   147,   551,   525,   314,
+   335,   509,   672,   700,   462,   468,   863,   332,   332,   332,
+   296,   296,   296,   516,   901,   339,   792,   776,   777,   347,
+   144,   281,   289,   291,   869,   928,   978,   316,   131,   421,
+   422,   423,   424,   396,   838,   398,   400,   403,   406,   409,
+   412,   132,   976,   396,   735,   738,   613,  1013,   786,   742,
+   144,   853,  1015,   395,   511,   352,   352,   352,   352,   898,
+   359,   891,     1,   413,   705,  1029,     2,   705,   293,   306,
+   307,   643,   897,   645,   899,   648,   649,   138,   651,   649,
+   375,   379,   660,   852,   940,     9,   711,   452,   536,   453,
+   219,   368,   435,   473,   425,   474,   428,   746,   870,   278,
+   698,   662,   343,   567,   697,   391,   568,   366,   594,   390,
+   600,   346,   348,   446,   740,   562,   446,   349,   350,   764,
+   708,   766,   446,   931,   956,   598,   599,   477,   771,   929,
+   960,   977,   930,  1076,   932,  1012,  1029,   604,  1015,  1055,
+   295,   434,   445,   887,   393,   445,   450,   451,   773,   518,
+   519,   445,   463,   843,   874,   475,   476,   976,    19,   479,
+   525,   419,   695,  1043,    19,   456,   753,   859,   942,   394,
+   397,   399,  1025,   433,   472,   751,   402,   405,   408,   237,
+   621,   905,   939,   841,   708,   521,   411,   774,   237,   237,
+   237,   910,    19,   323,   323,   295,   295,   797,   317,   901,
+   438,   438,   798,   715,   767,   295,   414,   762,   765,   538,
+   896,   724,   692,   786,   893,   705,   705,   908,    19,   991,
+   456,  1023,   603,   237,   237,   nil,   nil,   237,   363,   373,
+   373,   nil,   nil,   297,   524,   524,   nil,   nil,   nil,   832,
+   396,   563,   297,   nil,   702,   545,   nil,   552,   nil,   548,
+   nil,   576,   898,   286,   332,   462,   468,   290,   613,  1016,
+   530,   296,   555,   898,   849,   131,   nil,   317,   535,   nil,
+   296,   332,   317,   nil,   nil,   717,  1026,   352,   314,  1027,
+   nil,   541,   nil,   314,    19,   584,  1044,   564,   569,   237,
+   237,   237,   237,    19,   534,   nil,   nil,   533,   597,   566,
+   570,   875,   965,   nil,  1074,   549,   537,   nil,   577,   578,
+   877,   543,   nil,   596,   754,   131,   nil,   nil,  1035,   517,
+   nil,   720,   800,   nil,   763,   800,   nil,   565,   520,   nil,
+   nil,   720,   786,   786,   981,   982,   nil,   nil,   nil,   nil,
+   nil,   945,   nil,   898,   621,   621,   474,   579,   453,   nil,
+  1078,   883,   884,  1009,   621,   918,   621,   822,   nil,   nil,
+   720,   nil,   nil,   827,   nil,   668,   708,   712,   720,   686,
+   878,   nil,   nil,   144,   882,   848,   673,    19,   237,   443,
+   237,   237,   443,   237,   nil,   nil,   680,   nil,   443,   237,
+   237,   nil,   685,   nil,   295,   661,   524,   524,   808,   nil,
+   679,   nil,    19,   463,   nil,   845,   nil,   nil,   nil,   699,
+   nil,   933,   147,   703,   nil,   nil,   726,   nil,   nil,   456,
+   nil,   nil,   613,   613,   nil,   472,   nil,   nil,   693,   nil,
+   713,   nil,  1056,   nil,   nil,   680,   716,   nil,   237,   237,
+   nil,   nil,  1068,   nil,   462,   468,   786,   786,   237,   679,
+   nil,   nil,   nil,   552,   678,   734,   nil,   295,   nil,   nil,
+   684,   552,   705,   nil,   nil,   nil,   nil,    19,   nil,   463,
+   nil,    19,   nil,   704,   nil,   323,    19,   332,   nil,   463,
+   nil,   728,   456,   nil,   nil,   332,   nil,   nil,   673,   nil,
+   nil,   472,   323,   nil,   860,   962,   295,   952,   759,   nil,
+   nil,   472,    19,   696,   nil,   nil,   295,   nil,   463,   nil,
+   nil,   237,    19,    19,   nil,   nil,   463,   nil,   845,   nil,
+   nil,   456,   nil,   nil,   743,   772,   nil,   745,   nil,   nil,
+   472,   456,   237,   747,   nil,   732,   472,   818,   820,   819,
+   821,   621,   nil,   823,   825,   824,   826,   nil,   nil,   nil,
+   nil,   749,   750,   nil,   752,   nil,   446,   nil,   933,   nil,
+   nil,   933,  1008,   nil,   nil,   997,   446,   446,   nil,   nil,
+  1004,   nil,   446,   446,   nil,   nil,   nil,   nil,   nil,   nil,
+   295,   nil,   nil,   nil,   nil,   445,   934,   nil,   nil,   nil,
+   nil,   892,   463,   840,   nil,   445,   445,   nil,     6,   nil,
+   nil,   445,   445,  1045,   nil,   456,   nil,   144,   804,   nil,
+   nil,   nil,   nil,   673,   472,  1047,  1082,     9,   nil,   nil,
+   nil,   851,   839,   nil,   817,   552,   nil,   813,   nil,   805,
+   nil,   nil,   933,   834,   nil,   nil,   850,   237,   673,   nil,
+   885,   nil,   524,   nil,   680,   nil,   147,   685,   nil,   332,
+   nil,   nil,   925,   nil,   nil,   nil,   nil,   nil,   679,   nil,
+   332,   879,   nil,   nil,   nil,   886,   nil,   857,   nil,   861,
+   nil,   nil,   nil,   nil,   nil,   673,   919,   nil,   920,   nil,
+   nil,   867,   nil,   867,   673,   909,   862,   352,   nil,   nil,
+    19,   819,   821,   826,   824,   890,   nil,   nil,   323,   nil,
+   237,   nil,   nil,   nil,   nil,   446,   323,   nil,   nil,   438,
+   nil,   876,   780,   782,   784,   237,   144,   nil,   nil,   nil,
+   nil,   nil,   nil,   880,   nil,   871,   nil,   nil,    19,   673,
+   934,    19,   nil,   934,   445,   nil,   934,   nil,   934,   237,
+   nil,   881,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,
+   915,   nil,   nil,   nil,    19,   524,   nil,   890,   nil,   237,
+   nil,   nil,   947,   nil,   nil,   nil,   nil,   nil,  1069,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   958,   nil,   nil,   nil,
+   nil,   834,   nil,   nil,   964,   920,   nil,   nil,   352,   nil,
+   937,   nil,   nil,   nil,   nil,   nil,  1022,   944,   975,   925,
+   894,   nil,   925,   894,   925,   nil,   nil,   934,   941,   934,
+   nil,   934,   nil,   934,   720,   nil,    19,   nil,   nil,   nil,
+   948,   nil,   443,   237,   nil,   nil,    19,   nil,   nil,   nil,
+   nil,   nil,   443,   443,   934,   nil,   955,   946,   443,   443,
+   961,   959,   nil,   949,   nil,   nil,   nil,   nil,   nil,   nil,
+   953,   nil,   954,   890,   nil,   nil,   957,   nil,   nil,   nil,
+   nil,   926,   nil,   nil,   nil,   984,   984,   984,   nil,   332,
+   323,   nil,   nil,   925,   900,   925,   902,   925,   332,   925,
+   nil,   323,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   995,   996,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   925,   nil,   nil,   nil,  1007,   nil,   nil,    29,   nil,   nil,
+   nil,   nil,   nil,    29,   nil,    19,   nil,   nil,   nil,   nil,
+    19,   237,  1038,   nil,    19,   nil,   nil,   332,    29,   927,
+   nil,   nil,   nil,  1048,   857,   nil,   nil,    29,    29,    29,
+   nil,    29,   nil,   nil,   nil,   867,   nil,   nil,   nil,  1036,
+   295,   985,   987,   989,    19,   nil,  1041,   nil,   nil,   nil,
+   nil,   nil,   463,   984,   984,   984,   984,    29,   984,   nil,
+   nil,   443,    29,    29,   nil,   456,    29,   nil,   472,   867,
+   nil,   nil,  1046,   nil,   472,   nil,   nil,   nil,   nil,   nil,
+   673,   nil,   nil,   nil,    19,   nil,   nil,   nil,   967,   969,
+   nil,   971,   973,   nil,   974,   894,   nil,   nil,   926,   nil,
+   nil,   926,    19,   926,   nil,   nil,   984,   984,   984,   984,
+   nil,  1075,   237,   nil,    19,   nil,   nil,   984,   nil,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,    29,
+    29,    29,    29,   nil,    19,    19,   nil,   nil,   nil,  1058,
+  1060,  1062,  1064,   nil,  1065,   nil,   nil,   nil,   nil,  1017,
+   nil,  1018,   nil,  1019,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1028,
+   nil,  1030,   926,   nil,   926,   nil,   926,   nil,   926,   nil,
+   993,   nil,   nil,   nil,   nil,    19,    19,   nil,   nil,  1000,
+   nil,   nil,  1085,  1086,  1087,  1088,   nil,   nil,    19,   926,
+   nil,   nil,    19,  1090,   nil,   nil,   nil,   nil,  1051,  1052,
+  1053,  1054,   nil,   nil,   nil,   nil,    29,    29,    29,    29,
+    29,    29,    29,   nil,   nil,   nil,   nil,    29,    29,    29,
+   nil,   nil,   nil,  1077,   nil,   nil,   nil,   nil,  1032,   nil,
+  1079,    29,  1080,    19,  1081,   nil,   nil,   nil,   nil,   nil,
+    19,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,
+   436,   449,   nil,   nil,   nil,   nil,   nil,  1089,   nil,  1083,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,
+   nil,   nil,   nil,   237,   nil,   nil,   nil,    29,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,    29,   nil,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,    29,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,    32,   nil,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   527,   nil,   529,
+   nil,    29,   531,   532,   nil,   nil,   nil,   nil,   nil,   nil,
+    29,    29,    29,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   571,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,    32,    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,   664,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
+    32,    32,   nil,   nil,   nil,   nil,    32,    32,    32,    29,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,   706,   nil,   nil,   571,   nil,   709,    29,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,   nil,    32,    32,    29,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    29,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    32,
+   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,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+    32,    32,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+   nil,    29,    29,   793,   nil,    29,   nil,   nil,   nil,   nil,
+    32,    29,    29,   nil,   nil,   nil,   nil,    29,    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,   806,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   706,   571,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   846,   nil,   nil,   847,   nil,
+   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,
+    29,   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   858,
+   nil,   nil,   nil,   nil,   706,    32,   nil,   571,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   872,   nil,    29,   nil,   nil,   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,   904,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,   917,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,    29,   nil,   nil,    32,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,    29,    29,   244,   nil,    32,   nil,   nil,
+   nil,   nil,    32,   nil,   294,   294,   294,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   341,   342,   nil,
+   344,   950,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
+   nil,    29,   nil,   nil,    32,   nil,   nil,   nil,   nil,   571,
+    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+    32,    32,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1005,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    16,   nil,  1042,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   367,   nil,
+   nil,   nil,   nil,   nil,   294,   448,   nil,   nil,   454,   294,
+   nil,   nil,    32,   nil,   454,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,    32,
+   486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
+   496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
+   506,   507,    32,   nil,    16,    18,   508,   nil,   nil,   nil,
+   nil,    18,   nil,    16,   294,   294,   nil,   nil,   nil,   nil,
+    32,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,
+    32,   294,    32,   294,   nil,   nil,   294,   294,   nil,    18,
+   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,    18,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   557,   nil,   558,   nil,   nil,
+   nil,   294,   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   441,
+   nil,   nil,   441,    32,    32,   nil,   nil,   nil,   441,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+    32,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   294,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   325,   325,   nil,    16,   nil,   nil,
+   nil,    16,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   294,   nil,   454,   454,   454,   nil,   365,
+   374,   374,    16,   nil,    18,   nil,    18,   nil,   nil,    18,
+   nil,   nil,    16,    16,   nil,    18,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   294,   nil,
+   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    20,   294,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   454,   727,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,    18,   294,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,    18,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   321,   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,    18,
+    18,   nil,   nil,   nil,   nil,    41,   nil,   nil,    20,   nil,
+   444,   nil,   nil,   444,   nil,   361,   377,   377,   377,   444,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   294,   454,   294,
+   nil,   nil,   nil,   814,   nil,   nil,   294,   294,   454,   454,
+    16,   nil,   nil,   nil,   454,   454,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,
+    41,   nil,   294,   nil,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,    20,   294,   nil,   nil,   325,    20,   294,   nil,
+   nil,   294,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   325,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    16,    18,   nil,   294,
+   nil,   nil,   441,   nil,   nil,   nil,    16,   454,   nil,    41,
+   nil,   nil,   441,   441,   nil,   nil,   nil,   nil,   441,   441,
+   454,   454,   454,   454,   nil,   923,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   321,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   321,
+    16,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   294,   454,   nil,   nil,   nil,   nil,    41,
+    41,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,    18,    16,   nil,   nil,   nil,   nil,    18,
+    18,    20,   nil,   294,   nil,    18,    18,   nil,   nil,   325,
+   nil,   441,   nil,   nil,   nil,   nil,   nil,   325,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,    20,
+    42,   nil,    20,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   294,   nil,
+   nil,   nil,   nil,   nil,    16,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   322,   322,   nil,   nil,   nil,
+   nil,   nil,    18,   nil,    16,    16,   nil,    18,   nil,   294,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   362,   378,   378,   378,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
+   nil,   nil,   nil,   444,   nil,    16,    16,    20,    18,  1003,
+   nil,   nil,   nil,   444,   444,   nil,   nil,   nil,    16,   444,
+   444,   nil,    16,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   321,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   321,   nil,    42,   nil,   nil,   nil,    18,
+   nil,   325,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   325,    16,   nil,    41,   nil,   nil,    41,   nil,
+    16,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,
+   nil,    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
+   nil,    20,   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,   nil,    42,
+   nil,   nil,    18,    18,   914,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,    18,
+   nil,   nil,   444,    41,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,   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,
+    18,   nil,   nil,    20,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,   nil,    18,   nil,   nil,    20,   nil,   321,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,    42,
+   nil,   nil,   nil,    42,   nil,    20,    20,   322,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,    42,   nil,   nil,    41,   nil,   nil,
+   nil,    41,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,
+   nil,   374,   nil,   nil,   nil,   nil,    20,    20,   nil,   nil,
+  1002,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,    41,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   374,
+   nil,    41,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,    20,   nil,   nil,    41,
+   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,   nil,   nil,   nil,   nil,
+   nil,    41,    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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   377,   nil,   nil,
+   nil,   nil,    41,    41,   nil,   nil,   998,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,    41,   nil,   nil,   nil,    41,
+   322,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,    42,   nil,   377,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   378,   nil,   nil,   nil,   nil,    42,    42,   nil,
+   nil,   999,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,    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,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   378,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,    42 ]
+
+racc_goto_check = [
+     6,    38,    27,    40,    70,    46,    46,    46,    63,    38,
+     2,   168,    12,    85,    85,   113,    71,    71,    36,     9,
+    52,   102,   118,    24,    24,     9,    15,    24,   206,    10,
+    40,   217,    78,    78,    70,   167,   106,   106,    22,    22,
+    42,    42,    84,    84,    84,    29,    29,    68,    14,    31,
+    31,     8,   121,    31,     5,    73,    73,    65,    87,    59,
+    64,   169,    37,    53,    50,    50,   107,    78,    78,    78,
+    82,    82,    82,    36,   212,    76,   144,   150,   150,     9,
+    71,    51,    51,    51,   109,   155,   145,    60,   118,    24,
+    24,    24,    24,     6,   157,     6,     6,     6,     6,     6,
+     6,     7,   142,     6,    83,    83,   201,   161,   143,    83,
+    71,    17,   162,   185,    50,    31,    31,    31,    31,   207,
+     5,   159,     1,   185,    88,   213,     3,    88,    58,    58,
+    58,   190,   156,   190,   156,   189,   190,    11,   189,   190,
+    69,    69,    13,    16,    18,     9,    20,    33,    21,    75,
+    23,    26,    30,    33,     9,    75,    32,    43,    45,    49,
+    55,    74,    79,    81,    86,    98,   101,   115,   117,   122,
+   123,   124,   125,    25,    37,   126,    25,   127,   128,   129,
+   217,   130,    25,   159,   131,   132,   133,    61,   134,   156,
+   135,   146,   147,   161,   153,   160,   213,   163,   162,   145,
+    46,    27,    27,   164,   165,    27,    31,    31,   166,   171,
+   172,    27,    85,   174,   175,    31,    31,   142,    35,    38,
+    87,     7,   177,   178,    35,     6,   179,   180,   181,   184,
+   186,   187,   155,    14,    71,   113,   188,   191,   192,    35,
+   206,   144,   157,    53,   217,    61,   193,   167,    35,    35,
+    35,   194,    35,    35,    35,    46,    46,   195,    14,   212,
+    82,    82,   196,    65,    12,    46,   199,    68,   200,    61,
+   205,    65,    36,   143,   209,    88,    88,   143,    35,   159,
+     6,   210,   216,    35,    35,   nil,   nil,    35,    35,    35,
+    35,   nil,   nil,    84,     6,     6,   nil,   nil,   nil,    37,
+     6,    61,    84,   nil,   169,    38,   nil,    63,   nil,    40,
+   nil,    24,   207,    85,    78,    50,    50,    85,   201,   156,
+   185,    82,    38,   207,    37,   118,   nil,    14,     9,   nil,
+    82,    78,    14,   nil,   nil,    36,   156,    31,    59,   156,
+   nil,    64,   nil,    59,    35,    38,   109,     6,     6,    35,
+    35,    35,    35,    35,     8,   nil,   nil,     5,    31,    84,
+    84,    37,   150,   nil,   107,    76,    60,   nil,    14,    14,
+    37,    60,   nil,     6,    36,   118,   nil,   nil,    17,    58,
+   nil,    50,   190,   nil,    36,   190,   nil,    82,    58,   nil,
+   nil,    50,   143,   143,   150,   150,   nil,   nil,   nil,   nil,
+   nil,    83,   nil,   207,   206,   206,    75,     5,    75,   nil,
+   156,   167,   167,   121,   206,    37,   206,    52,   nil,   nil,
+    50,   nil,   nil,    52,   nil,    38,   217,    10,    50,    61,
+    12,   nil,   nil,    71,    12,    65,    40,    35,    35,    35,
+    35,    35,    35,    35,   nil,   nil,    85,   nil,    35,    35,
+    35,   nil,    85,   nil,    46,    22,     6,     6,    36,   nil,
+     6,   nil,    35,    85,   nil,    87,   nil,   nil,   nil,    61,
+   nil,   206,    73,    61,   nil,   nil,    75,   nil,   nil,     6,
+   nil,   nil,   201,   201,   nil,    71,   nil,   nil,    40,   nil,
+    61,   nil,   150,   nil,   nil,    85,    61,   nil,    35,    35,
+   nil,   nil,    15,   nil,    50,    50,   143,   143,    35,     6,
+   nil,   nil,   nil,    63,    51,    61,   nil,    46,   nil,   nil,
+    51,    63,    88,   nil,   nil,   nil,   nil,    35,   nil,    85,
+   nil,    35,   nil,    84,   nil,    35,    35,    78,   nil,    85,
+   nil,    31,     6,   nil,   nil,    78,   nil,   nil,    40,   nil,
+   nil,    71,    35,   nil,    29,    12,    46,   106,    42,   nil,
+   nil,    71,    35,    51,   nil,   nil,    46,   nil,    85,   nil,
+   nil,    35,    35,    35,   nil,   nil,    85,   nil,    87,   nil,
+   nil,     6,   nil,   nil,    14,    31,   nil,    14,   nil,   nil,
+    71,     6,    35,   118,   nil,   100,    71,    33,    33,    75,
+    75,   206,   nil,    33,    33,    75,    75,   nil,   nil,   nil,
+   nil,   100,   100,   nil,   100,   nil,    25,   nil,   206,   nil,
+   nil,   206,    12,   nil,   nil,   106,    25,    25,   nil,   nil,
+   106,   nil,    25,    25,   nil,   nil,   nil,   nil,   nil,   nil,
+    46,   nil,   nil,   nil,   nil,    27,   208,   nil,   nil,   nil,
+   nil,   149,    85,   102,   nil,    27,    27,   nil,     6,   nil,
+   nil,    27,    27,   113,   nil,     6,   nil,    71,     2,   nil,
+   nil,   nil,   nil,    40,    71,    12,    37,     9,   nil,   nil,
+   nil,    61,   168,   nil,    84,    63,   nil,     9,   nil,    22,
+   nil,   nil,   206,     6,   nil,   nil,    63,    35,    40,   nil,
+    70,   nil,     6,   nil,    85,   nil,    73,    85,   nil,    78,
+   nil,   nil,   149,   nil,   nil,   nil,   nil,   nil,     6,   nil,
+    78,    24,   nil,   nil,   nil,    61,   nil,     6,   nil,     6,
+   nil,   nil,   nil,   nil,   nil,    40,    33,   nil,    75,   nil,
+   nil,     6,   nil,     6,    40,    61,    84,    31,   nil,   nil,
+    35,    75,    75,    75,    75,    40,   nil,   nil,    35,   nil,
+    35,   nil,   nil,   nil,   nil,    25,    35,   nil,   nil,    82,
+   nil,    14,   204,   204,   204,    35,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   118,   nil,   100,   nil,   nil,    35,    40,
+   208,    35,   nil,   208,    27,   nil,   208,   nil,   208,    35,
+   nil,   100,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+    14,   nil,   nil,   nil,    35,     6,   nil,    40,   nil,    35,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    36,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    61,   nil,   nil,   nil,
+   nil,     6,   nil,   nil,    61,    75,   nil,   nil,    31,   nil,
+    14,   nil,   nil,   nil,   nil,   nil,   149,     6,    61,   149,
+   151,   nil,   149,   151,   149,   nil,   nil,   208,    14,   208,
+   nil,   208,   nil,   208,    50,   nil,    35,   nil,   nil,   nil,
+    14,   nil,    35,    35,   nil,   nil,    35,   nil,   nil,   nil,
+   nil,   nil,    35,    35,   208,   nil,   118,   100,    35,    35,
+    14,   118,   nil,   100,   nil,   nil,   nil,   nil,   nil,   nil,
+   100,   nil,   100,    40,   nil,   nil,   100,   nil,   nil,   nil,
+   nil,   151,   nil,   nil,   nil,     6,     6,     6,   nil,    78,
+    35,   nil,   nil,   149,   154,   149,   154,   149,    78,   149,
+   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    14,    14,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   149,   nil,   nil,   nil,    14,   nil,   nil,    54,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,    35,   nil,   nil,   nil,   nil,
+    35,    35,    38,   nil,    35,   nil,   nil,    78,    54,   154,
+   nil,   nil,   nil,    40,     6,   nil,   nil,    54,    54,    54,
+   nil,    54,   nil,   nil,   nil,     6,   nil,   nil,   nil,    14,
+    46,   152,   152,   152,    35,   nil,    14,   nil,   nil,   nil,
+   nil,   nil,    85,     6,     6,     6,     6,    54,     6,   nil,
+   nil,    35,    54,    54,   nil,     6,    54,   nil,    71,     6,
+   nil,   nil,   100,   nil,    71,   nil,   nil,   nil,   nil,   nil,
+    40,   nil,   nil,   nil,    35,   nil,   nil,   nil,   204,   204,
+   nil,   204,   204,   nil,   204,   151,   nil,   nil,   151,   nil,
+   nil,   151,    35,   151,   nil,   nil,     6,     6,     6,     6,
+   nil,   100,    35,   nil,    35,   nil,   nil,     6,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,    54,
+    54,    54,    54,   nil,    35,    35,   nil,   nil,   nil,   152,
+   152,   152,   152,   nil,   152,   nil,   nil,   nil,   nil,   154,
+   nil,   154,   nil,   154,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   154,
+   nil,   154,   151,   nil,   151,   nil,   151,   nil,   151,   nil,
+    35,   nil,   nil,   nil,   nil,    35,    35,   nil,   nil,    35,
+   nil,   nil,   152,   152,   152,   152,   nil,   nil,    35,   151,
+   nil,   nil,    35,   152,   nil,   nil,   nil,   nil,   204,   204,
+   204,   204,   nil,   nil,   nil,   nil,    54,    54,    54,    54,
+    54,    54,    54,   nil,   nil,   nil,   nil,    54,    54,    54,
+   nil,   nil,   nil,   154,   nil,   nil,   nil,   nil,    35,   nil,
+   154,    54,   154,    35,   154,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
+    80,    80,   nil,   nil,   nil,   nil,   nil,   154,   nil,   204,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,    54,   nil,
+   nil,   nil,   nil,    35,   nil,   nil,   nil,    54,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,    54,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,    54,   nil,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,    57,    57,   nil,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,    80,
+   nil,    54,    80,    80,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,    54,    54,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,    57,    57,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,    57,    57,
+    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    80,    54,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,    57,    57,    57,    57,
+    57,    57,   nil,   nil,   nil,   nil,    57,    57,    57,    54,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,    80,   nil,   nil,    80,   nil,    80,    54,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   nil,    57,    57,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,    54,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+    57,    57,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+   nil,    54,    54,    80,   nil,    54,   nil,   nil,   nil,   nil,
+    57,    54,    54,   nil,   nil,   nil,   nil,    54,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    80,    80,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    80,   nil,   nil,    80,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,
+    54,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,    80,
+   nil,   nil,   nil,   nil,    80,    57,   nil,    80,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    80,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,   nil,   nil,    80,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,    54,   nil,   nil,    57,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
+   nil,   nil,   nil,    54,    54,    41,   nil,    57,   nil,   nil,
+   nil,   nil,    57,   nil,    41,    41,    41,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,
+    41,    80,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,    54,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   nil,    54,   nil,   nil,    57,   nil,   nil,   nil,   nil,    80,
+    57,    57,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+    57,    57,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    80,
+   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   nil,   nil,    54,   nil,   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,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    28,   nil,    80,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,    57,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,    41,    41,
+   nil,   nil,    57,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    57,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    57,   nil,    28,    34,    41,   nil,   nil,   nil,
+   nil,    34,   nil,    28,    41,    41,   nil,   nil,   nil,   nil,
+    57,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+    57,    41,    57,    41,   nil,   nil,    41,    41,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,   nil,   nil,
+   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,    28,
+   nil,   nil,    28,    57,    57,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+    57,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,    57,    41,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,    39,    39,   nil,    28,   nil,   nil,
+   nil,    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,    41,   nil,    41,    41,    41,   nil,    39,
+    39,    39,    28,   nil,    34,   nil,    34,   nil,   nil,    34,
+   nil,   nil,    28,    28,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    39,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,    41,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,    34,    41,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    34,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
+    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    34,
+    34,   nil,   nil,   nil,   nil,    66,   nil,   nil,    39,   nil,
+    39,   nil,   nil,    39,   nil,    66,    66,    66,    66,    39,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,   nil,    41,    41,    41,
+   nil,   nil,   nil,    41,   nil,   nil,    41,    41,    41,    41,
+    28,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+    66,   nil,    41,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,    39,    41,   nil,   nil,    39,    39,    41,   nil,
+   nil,    41,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    28,    34,   nil,    41,
+   nil,   nil,    28,   nil,   nil,   nil,    28,    41,   nil,    66,
+   nil,   nil,    28,    28,   nil,   nil,   nil,   nil,    28,    28,
+    41,    41,    41,    41,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,    66,
+    28,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,    66,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,    66,
+    66,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,    34,    28,   nil,   nil,   nil,   nil,    34,
+    34,    39,   nil,    41,   nil,    34,    34,   nil,   nil,    39,
+   nil,    28,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,    39,
+    67,   nil,    39,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,    28,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,    67,    67,   nil,   nil,   nil,
+   nil,   nil,    34,   nil,    28,    28,   nil,    34,   nil,    41,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,    67,    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,    28,    28,    39,    34,    28,
+   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,    28,    39,
+    39,   nil,    28,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,    66,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,   nil,    67,   nil,   nil,   nil,    34,
+   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,    39,    28,   nil,    66,   nil,   nil,    66,   nil,
+    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,
+   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
+   nil,    39,   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,    67,
+   nil,   nil,    34,    34,    39,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,    34,
+   nil,   nil,    39,    66,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,   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,
+    34,   nil,   nil,    39,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,    34,   nil,   nil,    39,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    67,
+   nil,   nil,   nil,    67,   nil,    39,    39,    67,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    66,   nil,    67,   nil,   nil,    66,   nil,   nil,
+   nil,    66,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,    39,    39,   nil,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,    66,   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,    39,
+   nil,    66,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,    39,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,    66,    66,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,    66,   nil,   nil,   nil,    66,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,    67,   nil,    66,   nil,   nil,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,    66,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,    67,    67,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,    67 ]
+
+racc_goto_pointer = [
+   nil,   122,     8,   126,   nil,    49,    -2,    93,    46,    17,
+  -109,   127,  -334,  -285,    12,  -534,  -586,  -618,  -708,   nil,
+  -388,  -165,    27,   138,   -44,   -50,    79,   -21,  1976,  -177,
+   -70,   -18,    17,   -79,  2103,   216,  -209,  -393,   -18,  2247,
+   -19,  1832,   -29,  -419,   nil,  -588,   -27,   nil,   nil,   132,
+  -164,    52,  -261,  -455,   965,  -354,   nil,  1264,    96,    23,
+    51,   -47,   nil,   -29,    22,  -279,  2403,  2818,  -324,    67,
+   -71,     5,   nil,    44,  -271,   -77,    31,   nil,    -5,   115,
+  1008,  -186,    38,  -461,    10,   -16,  -347,  -239,  -399,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,
+    34,  -184,   -44,   nil,   nil,   nil,  -317,  -677,   nil,  -661,
+   nil,   nil,   nil,  -344,   nil,    95,   nil,  -207,    17,   nil,
+   nil,  -547,    94,  -220,   110,   110,  -172,   114,   114,  -415,
+  -416,  -696,  -194,  -203,  -412,  -695,   nil,   nil,   nil,   nil,
+   nil,   nil,  -804,  -514,  -546,  -821,  -715,  -644,   nil,  -124,
+  -530,    85,    84,  -642,   153,  -751,  -647,  -601,   nil,  -653,
+  -768,  -856,  -851,  -196,  -570,   115,  -396,  -358,   -14,  -215,
+   nil,   -78,   -78,   nil,  -488,  -539,   nil,  -288,  -784,  -356,
+  -504,  -631,   nil,   nil,   137,    18,   133,   133,   137,  -267,
+  -266,   137,   137,   144,  -546,  -383,  -379,   nil,   nil,   161,
+  -327,  -287,   nil,   nil,   162,  -509,  -365,  -660,  -190,  -501,
+  -699,   nil,  -707,  -861,   nil,   nil,  -110,  -495 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   309,     7,   360,   312,
+   nil,   nil,   nil,   nil,   560,   nil,   nil,   nil,   nil,   308,
+   310,   nil,   nil,   nil,   nil,    14,    15,    21,   242,   nil,
+   nil,    17,   nil,   442,   243,   340,   nil,   nil,   592,   241,
+   478,    24,   nil,   nil,   355,   nil,    25,    26,    27,   nil,
+   723,   nil,   nil,   nil,   329,   nil,    28,   326,   457,    35,
+   nil,   nil,    37,    40,    39,   nil,   238,   239,   372,   nil,
+   146,   465,   145,    91,   nil,   447,   107,    47,    50,   274,
+   300,   nil,   458,   nil,   459,   470,   681,   522,   298,   283,
+    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
+   nil,   nil,   284,    65,    66,    67,   nil,   nil,    68,   865,
+    69,    70,    71,   nil,    72,   nil,    73,   nil,   573,    74,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   288,   276,   731,   856,
+   582,   866,   788,   620,   nil,   789,   790,  1024,   924,   608,
+   nil,   609,   nil,   nil,   610,   nil,   612,   nil,   835,   nil,
+   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   469,   nil,   nil,   701,   nil,   nil,   510,   nil,   nil,   nil,
+   nil,   nil,    90,    92,    94,   nil,   nil,   nil,   nil,   nil,
+   638,   nil,   nil,   nil,   nil,   nil,   nil,   103,   104,   nil,
+   nil,   895,   770,   607,   nil,   611,   903,   623,   625,   626,
+   935,   629,   630,   936,   633,   636,   nil,   303 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 150, :_reduce_1,
+  2, 148, :_reduce_2,
+  2, 149, :_reduce_3,
+  1, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  3, 151, :_reduce_6,
+  2, 151, :_reduce_none,
+  1, 154, :_reduce_none,
+  0, 158, :_reduce_9,
+  3, 154, :_reduce_10,
+  0, 160, :_reduce_11,
+  4, 157, :_reduce_12,
+  0, 165, :_reduce_13,
+  6, 159, :_reduce_14,
+  3, 159, :_reduce_15,
+  2, 161, :_reduce_16,
+  1, 166, :_reduce_none,
+  1, 166, :_reduce_none,
+  3, 166, :_reduce_19,
+  2, 166, :_reduce_20,
+  1, 167, :_reduce_none,
+  0, 168, :_reduce_22,
+  3, 167, :_reduce_23,
+  0, 179, :_reduce_24,
+  4, 156, :_reduce_25,
+  3, 156, :_reduce_26,
+  3, 156, :_reduce_27,
+  3, 156, :_reduce_28,
+  2, 156, :_reduce_29,
+  3, 156, :_reduce_30,
+  3, 156, :_reduce_31,
+  3, 156, :_reduce_32,
+  3, 156, :_reduce_33,
+  3, 156, :_reduce_34,
+  4, 156, :_reduce_35,
+  1, 156, :_reduce_none,
+  3, 156, :_reduce_37,
+  3, 156, :_reduce_38,
+  3, 156, :_reduce_39,
+  1, 156, :_reduce_none,
+  3, 172, :_reduce_41,
+  3, 172, :_reduce_42,
+  6, 172, :_reduce_43,
+  5, 172, :_reduce_44,
+  5, 172, :_reduce_45,
+  5, 172, :_reduce_46,
+  5, 172, :_reduce_47,
+  3, 172, :_reduce_48,
+  1, 180, :_reduce_49,
+  3, 180, :_reduce_50,
+  1, 180, :_reduce_none,
+  1, 178, :_reduce_none,
+  3, 178, :_reduce_53,
+  3, 178, :_reduce_54,
+  3, 178, :_reduce_55,
+  2, 178, :_reduce_56,
+  1, 178, :_reduce_none,
+  1, 171, :_reduce_58,
+  0, 191, :_reduce_59,
+  0, 192, :_reduce_60,
+  4, 189, :_reduce_61,
+  1, 174, :_reduce_none,
+  1, 174, :_reduce_none,
+  1, 194, :_reduce_none,
+  4, 194, :_reduce_65,
+  0, 202, :_reduce_66,
+  4, 199, :_reduce_67,
+  1, 201, :_reduce_68,
+  2, 193, :_reduce_69,
+  3, 193, :_reduce_70,
+  4, 193, :_reduce_71,
+  5, 193, :_reduce_72,
+  4, 193, :_reduce_73,
+  5, 193, :_reduce_74,
+  2, 193, :_reduce_75,
+  2, 193, :_reduce_76,
+  2, 193, :_reduce_77,
+  2, 193, :_reduce_78,
+  2, 193, :_reduce_79,
+  1, 173, :_reduce_none,
+  3, 173, :_reduce_81,
+  1, 207, :_reduce_none,
+  3, 207, :_reduce_83,
+  1, 206, :_reduce_84,
+  2, 206, :_reduce_85,
+  3, 206, :_reduce_86,
+  5, 206, :_reduce_87,
+  2, 206, :_reduce_88,
+  4, 206, :_reduce_89,
+  2, 206, :_reduce_90,
+  4, 206, :_reduce_91,
+  1, 206, :_reduce_92,
+  3, 206, :_reduce_93,
+  1, 210, :_reduce_none,
+  3, 210, :_reduce_95,
+  2, 209, :_reduce_96,
+  3, 209, :_reduce_97,
+  1, 212, :_reduce_98,
+  3, 212, :_reduce_99,
+  1, 211, :_reduce_100,
+  1, 211, :_reduce_101,
+  4, 211, :_reduce_102,
+  3, 211, :_reduce_103,
+  3, 211, :_reduce_104,
+  3, 211, :_reduce_105,
+  3, 211, :_reduce_106,
+  2, 211, :_reduce_107,
+  1, 211, :_reduce_108,
+  1, 175, :_reduce_109,
+  1, 175, :_reduce_110,
+  4, 175, :_reduce_111,
+  3, 175, :_reduce_112,
+  3, 175, :_reduce_113,
+  3, 175, :_reduce_114,
+  3, 175, :_reduce_115,
+  2, 175, :_reduce_116,
+  1, 175, :_reduce_117,
+  1, 215, :_reduce_118,
+  1, 215, :_reduce_none,
+  2, 216, :_reduce_120,
+  1, 216, :_reduce_121,
+  3, 216, :_reduce_122,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_126,
+  1, 217, :_reduce_none,
+  1, 169, :_reduce_128,
+  1, 169, :_reduce_none,
+  1, 170, :_reduce_130,
+  0, 221, :_reduce_131,
+  4, 170, :_reduce_132,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  3, 188, :_reduce_204,
+  3, 188, :_reduce_205,
+  6, 188, :_reduce_206,
+  5, 188, :_reduce_207,
+  5, 188, :_reduce_208,
+  5, 188, :_reduce_209,
+  5, 188, :_reduce_210,
+  4, 188, :_reduce_211,
+  3, 188, :_reduce_212,
+  3, 188, :_reduce_213,
+  3, 188, :_reduce_214,
+  3, 188, :_reduce_215,
+  3, 188, :_reduce_216,
+  3, 188, :_reduce_217,
+  3, 188, :_reduce_218,
+  3, 188, :_reduce_219,
+  3, 188, :_reduce_220,
+  4, 188, :_reduce_221,
+  2, 188, :_reduce_222,
+  2, 188, :_reduce_223,
+  3, 188, :_reduce_224,
+  3, 188, :_reduce_225,
+  3, 188, :_reduce_226,
+  3, 188, :_reduce_227,
+  1, 188, :_reduce_none,
+  3, 188, :_reduce_229,
+  3, 188, :_reduce_230,
+  3, 188, :_reduce_231,
+  3, 188, :_reduce_232,
+  3, 188, :_reduce_233,
+  2, 188, :_reduce_234,
+  2, 188, :_reduce_235,
+  3, 188, :_reduce_236,
+  3, 188, :_reduce_237,
+  3, 188, :_reduce_238,
+  3, 188, :_reduce_239,
+  3, 188, :_reduce_240,
+  6, 188, :_reduce_241,
+  1, 188, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  3, 224, :_reduce_247,
+  3, 224, :_reduce_248,
+  1, 227, :_reduce_249,
+  1, 228, :_reduce_none,
+  2, 228, :_reduce_251,
+  4, 228, :_reduce_252,
+  2, 228, :_reduce_253,
+  1, 222, :_reduce_none,
+  3, 222, :_reduce_255,
+  3, 232, :_reduce_256,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 183, :_reduce_none,
+  1, 183, :_reduce_none,
+  2, 183, :_reduce_261,
+  4, 183, :_reduce_262,
+  2, 183, :_reduce_263,
+  1, 205, :_reduce_264,
+  2, 205, :_reduce_265,
+  2, 205, :_reduce_266,
+  4, 205, :_reduce_267,
+  1, 205, :_reduce_268,
+  0, 236, :_reduce_269,
+  2, 198, :_reduce_270,
+  2, 235, :_reduce_271,
+  2, 234, :_reduce_272,
+  1, 234, :_reduce_none,
+  1, 229, :_reduce_274,
+  2, 229, :_reduce_275,
+  3, 229, :_reduce_276,
+  4, 229, :_reduce_277,
+  1, 177, :_reduce_278,
+  1, 177, :_reduce_279,
+  3, 176, :_reduce_280,
+  4, 176, :_reduce_281,
+  2, 176, :_reduce_282,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_293,
+  0, 271, :_reduce_294,
+  4, 225, :_reduce_295,
+  0, 272, :_reduce_296,
+  3, 225, :_reduce_297,
+  0, 273, :_reduce_298,
+  4, 225, :_reduce_299,
+  3, 225, :_reduce_300,
+  3, 225, :_reduce_301,
+  2, 225, :_reduce_302,
+  0, 274, :_reduce_303,
+  4, 225, :_reduce_304,
+  0, 275, :_reduce_305,
+  4, 225, :_reduce_306,
+  1, 225, :_reduce_307,
+  4, 225, :_reduce_308,
+  3, 225, :_reduce_309,
+  1, 225, :_reduce_310,
+  5, 225, :_reduce_311,
+  4, 225, :_reduce_312,
+  3, 225, :_reduce_313,
+  2, 225, :_reduce_314,
+  1, 225, :_reduce_none,
+  2, 225, :_reduce_316,
+  1, 225, :_reduce_317,
+  6, 225, :_reduce_318,
+  6, 225, :_reduce_319,
+  4, 225, :_reduce_320,
+  4, 225, :_reduce_321,
+  5, 225, :_reduce_322,
+  4, 225, :_reduce_323,
+  6, 225, :_reduce_324,
+  0, 276, :_reduce_325,
+  6, 225, :_reduce_326,
+  0, 277, :_reduce_327,
+  0, 278, :_reduce_328,
+  8, 225, :_reduce_329,
+  0, 279, :_reduce_330,
+  5, 225, :_reduce_331,
+  0, 280, :_reduce_332,
+  6, 225, :_reduce_333,
+  0, 281, :_reduce_334,
+  0, 282, :_reduce_335,
+  9, 225, :_reduce_336,
+  1, 225, :_reduce_337,
+  1, 225, :_reduce_338,
+  1, 225, :_reduce_339,
+  1, 225, :_reduce_340,
+  1, 182, :_reduce_341,
+  1, 246, :_reduce_none,
+  1, 252, :_reduce_none,
+  1, 255, :_reduce_none,
+  1, 257, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 259, :_reduce_none,
+  1, 261, :_reduce_none,
+  1, 263, :_reduce_349,
+  1, 266, :_reduce_350,
+  1, 267, :_reduce_351,
+  1, 283, :_reduce_none,
+  1, 284, :_reduce_none,
+  1, 285, :_reduce_none,
+  1, 286, :_reduce_none,
+  1, 287, :_reduce_none,
+  1, 163, :_reduce_none,
+  1, 288, :_reduce_none,
+  1, 247, :_reduce_none,
+  1, 204, :_reduce_none,
+  1, 253, :_reduce_none,
+  1, 253, :_reduce_none,
+  2, 253, :_reduce_none,
+  1, 190, :_reduce_none,
+  1, 190, :_reduce_none,
+  1, 254, :_reduce_none,
+  5, 254, :_reduce_367,
+  1, 256, :_reduce_none,
+  2, 256, :_reduce_369,
+  1, 262, :_reduce_none,
+  1, 262, :_reduce_371,
+  1, 289, :_reduce_none,
+  3, 289, :_reduce_373,
+  1, 292, :_reduce_374,
+  3, 292, :_reduce_375,
+  1, 291, :_reduce_376,
+  3, 291, :_reduce_377,
+  5, 291, :_reduce_378,
+  1, 291, :_reduce_379,
+  3, 291, :_reduce_380,
+  2, 293, :_reduce_381,
+  1, 293, :_reduce_382,
+  4, 294, :_reduce_383,
+  2, 294, :_reduce_384,
+  2, 294, :_reduce_385,
+  1, 294, :_reduce_386,
+  2, 299, :_reduce_387,
+  1, 299, :_reduce_none,
+  6, 300, :_reduce_389,
+  8, 300, :_reduce_390,
+  4, 300, :_reduce_391,
+  6, 300, :_reduce_392,
+  4, 300, :_reduce_393,
+  2, 300, :_reduce_394,
+  6, 300, :_reduce_395,
+  2, 300, :_reduce_396,
+  4, 300, :_reduce_397,
+  6, 300, :_reduce_398,
+  2, 300, :_reduce_399,
+  4, 300, :_reduce_400,
+  2, 300, :_reduce_401,
+  4, 300, :_reduce_402,
+  1, 300, :_reduce_403,
+  1, 304, :_reduce_404,
+  1, 304, :_reduce_405,
+  3, 305, :_reduce_406,
+  1, 305, :_reduce_407,
+  4, 305, :_reduce_408,
+  1, 306, :_reduce_none,
+  4, 306, :_reduce_410,
+  1, 307, :_reduce_411,
+  3, 307, :_reduce_412,
+  1, 308, :_reduce_413,
+  1, 308, :_reduce_none,
+  0, 312, :_reduce_415,
+  0, 313, :_reduce_416,
+  5, 251, :_reduce_417,
+  4, 310, :_reduce_418,
+  1, 310, :_reduce_419,
+  3, 311, :_reduce_420,
+  3, 311, :_reduce_421,
+  3, 315, :_reduce_422,
+  2, 195, :_reduce_423,
+  4, 195, :_reduce_424,
+  5, 195, :_reduce_425,
+  5, 195, :_reduce_426,
+  2, 250, :_reduce_427,
+  4, 250, :_reduce_428,
+  4, 250, :_reduce_429,
+  3, 250, :_reduce_430,
+  3, 250, :_reduce_431,
+  3, 250, :_reduce_432,
+  2, 250, :_reduce_433,
+  1, 250, :_reduce_434,
+  4, 250, :_reduce_435,
+  0, 318, :_reduce_436,
+  4, 249, :_reduce_437,
+  0, 319, :_reduce_438,
+  4, 249, :_reduce_439,
+  0, 320, :_reduce_440,
+  0, 321, :_reduce_441,
+  4, 200, :_reduce_442,
+  0, 323, :_reduce_443,
+  0, 324, :_reduce_444,
+  4, 316, :_reduce_445,
+  1, 322, :_reduce_446,
+  2, 322, :_reduce_447,
+  3, 322, :_reduce_448,
+  4, 322, :_reduce_449,
+  0, 326, :_reduce_450,
+  6, 260, :_reduce_451,
+  1, 325, :_reduce_none,
+  1, 325, :_reduce_none,
+  6, 162, :_reduce_454,
+  0, 162, :_reduce_455,
+  1, 327, :_reduce_456,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  2, 328, :_reduce_459,
+  1, 328, :_reduce_none,
+  2, 164, :_reduce_461,
+  1, 164, :_reduce_none,
+  1, 237, :_reduce_463,
+  1, 237, :_reduce_none,
+  1, 238, :_reduce_465,
+  1, 330, :_reduce_466,
+  1, 330, :_reduce_none,
+  2, 330, :_reduce_468,
+  3, 331, :_reduce_469,
+  1, 331, :_reduce_470,
+  3, 239, :_reduce_471,
+  3, 240, :_reduce_472,
+  3, 241, :_reduce_473,
+  3, 241, :_reduce_474,
+  1, 335, :_reduce_475,
+  3, 335, :_reduce_476,
+  1, 336, :_reduce_none,
+  2, 336, :_reduce_478,
+  3, 243, :_reduce_479,
+  3, 243, :_reduce_480,
+  1, 338, :_reduce_481,
+  3, 338, :_reduce_482,
+  3, 242, :_reduce_483,
+  3, 242, :_reduce_484,
+  3, 244, :_reduce_485,
+  3, 244, :_reduce_486,
+  1, 339, :_reduce_487,
+  3, 339, :_reduce_488,
+  1, 340, :_reduce_489,
+  3, 340, :_reduce_490,
+  1, 332, :_reduce_491,
+  2, 332, :_reduce_492,
+  1, 333, :_reduce_493,
+  2, 333, :_reduce_494,
+  1, 334, :_reduce_495,
+  2, 334, :_reduce_496,
+  1, 337, :_reduce_497,
+  0, 342, :_reduce_498,
+  3, 337, :_reduce_499,
+  0, 343, :_reduce_500,
+  4, 337, :_reduce_501,
+  1, 341, :_reduce_502,
+  1, 341, :_reduce_503,
+  1, 341, :_reduce_504,
+  1, 341, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  2, 344, :_reduce_508,
+  1, 344, :_reduce_509,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  3, 345, :_reduce_514,
+  1, 329, :_reduce_none,
+  2, 329, :_reduce_516,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 214, :_reduce_526,
+  1, 214, :_reduce_527,
+  1, 214, :_reduce_528,
+  1, 214, :_reduce_529,
+  1, 214, :_reduce_530,
+  1, 214, :_reduce_531,
+  1, 214, :_reduce_532,
+  1, 245, :_reduce_533,
+  1, 245, :_reduce_534,
+  1, 181, :_reduce_535,
+  1, 181, :_reduce_536,
+  1, 186, :_reduce_537,
+  1, 186, :_reduce_538,
+  0, 347, :_reduce_539,
+  4, 264, :_reduce_540,
+  1, 264, :_reduce_541,
+  3, 268, :_reduce_542,
+  0, 349, :_reduce_543,
+  3, 268, :_reduce_544,
+  4, 348, :_reduce_545,
+  2, 348, :_reduce_546,
+  2, 348, :_reduce_547,
+  1, 348, :_reduce_none,
+  2, 351, :_reduce_549,
+  0, 351, :_reduce_550,
+  6, 314, :_reduce_551,
+  8, 314, :_reduce_552,
+  4, 314, :_reduce_553,
+  6, 314, :_reduce_554,
+  4, 314, :_reduce_555,
+  6, 314, :_reduce_556,
+  2, 314, :_reduce_557,
+  4, 314, :_reduce_558,
+  6, 314, :_reduce_559,
+  2, 314, :_reduce_560,
+  4, 314, :_reduce_561,
+  2, 314, :_reduce_562,
+  4, 314, :_reduce_563,
+  1, 314, :_reduce_564,
+  0, 314, :_reduce_565,
+  1, 309, :_reduce_566,
+  1, 309, :_reduce_567,
+  1, 309, :_reduce_568,
+  1, 309, :_reduce_569,
+  1, 290, :_reduce_none,
+  1, 290, :_reduce_571,
+  1, 353, :_reduce_none,
+  1, 354, :_reduce_none,
+  3, 354, :_reduce_574,
+  1, 301, :_reduce_575,
+  3, 301, :_reduce_576,
+  1, 355, :_reduce_none,
+  2, 356, :_reduce_578,
+  1, 356, :_reduce_579,
+  2, 357, :_reduce_580,
+  1, 357, :_reduce_581,
+  1, 295, :_reduce_none,
+  3, 295, :_reduce_583,
+  1, 350, :_reduce_none,
+  3, 350, :_reduce_585,
+  1, 358, :_reduce_none,
+  1, 358, :_reduce_none,
+  2, 296, :_reduce_588,
+  1, 296, :_reduce_589,
+  3, 359, :_reduce_590,
+  3, 360, :_reduce_591,
+  1, 302, :_reduce_592,
+  3, 302, :_reduce_593,
+  1, 352, :_reduce_594,
+  3, 352, :_reduce_595,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  2, 303, :_reduce_598,
+  1, 303, :_reduce_599,
+  1, 362, :_reduce_none,
+  1, 362, :_reduce_none,
+  2, 298, :_reduce_602,
+  2, 297, :_reduce_603,
+  0, 297, :_reduce_604,
+  1, 269, :_reduce_none,
+  0, 363, :_reduce_606,
+  4, 269, :_reduce_607,
+  1, 248, :_reduce_608,
+  2, 248, :_reduce_none,
+  1, 231, :_reduce_none,
+  3, 231, :_reduce_611,
+  3, 364, :_reduce_612,
+  2, 364, :_reduce_613,
+  4, 364, :_reduce_614,
+  2, 364, :_reduce_615,
+  1, 203, :_reduce_none,
+  1, 203, :_reduce_none,
+  1, 203, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  0, 152, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 187, :_reduce_none,
+  1, 187, :_reduce_none,
+  2, 208, :_reduce_636,
+  2, 184, :_reduce_637,
+  0, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 265, :_reduce_641,
+  1, 265, :_reduce_none,
+  1, 155, :_reduce_none,
+  2, 155, :_reduce_644,
+  0, 153, :_reduce_645 ]
+
+racc_reduce_n = 646
+
+racc_shift_n = 1091
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLONELY => 142,
+  :tLOWEST => 143,
+  :tEQL => 144,
+  :tBDOT2 => 145,
+  :tBDOT3 => 146 }
+
+racc_nt_base = 147
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLONELY",
+  "tLOWEST",
+  "tEQL",
+  "tBDOT2",
+  "tBDOT3",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "@3",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@4",
+  "stmts",
+  "stmt_or_begin",
+  "@5",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@6",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "backref",
+  "opt_nl",
+  "arg",
+  "expr_value_do",
+  "do",
+  "@7",
+  "@8",
+  "command",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@9",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "fname",
+  "op",
+  "reswords",
+  "symbol",
+  "@10",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@11",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "k_def",
+  "f_arglist",
+  "singleton",
+  "dot_or_colon",
+  "@12",
+  "@13",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "@22",
+  "@23",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "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",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@24",
+  "@25",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@26",
+  "@27",
+  "@28",
+  "@29",
+  "case_args",
+  "@30",
+  "@31",
+  "cases",
+  "@32",
+  "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",
+  "@33",
+  "@34",
+  "ssym",
+  "dsym",
+  "sym",
+  "@35",
+  "args_tail",
+  "@36",
+  "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",
+  "@37",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 11
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      _, line, stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      res = _values[-2]
+                      # TODO: move down to main match so I can just use val
+
+                      warn "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_16(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 17 omitted
+
+# reduce 18 omitted
+
+def _reduce_19(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_20(val, _values, result)
+                      result = val[1]
+                      debug 12
+
+    result
+end
+
+# reduce 21 omitted
+
+def _reduce_22(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_35(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 13
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 36 omitted
+
+def _reduce_37(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+def _reduce_50(val, _values, result)
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+
+    result
+end
+
+# reduce 51 omitted
+
+# reduce 52 omitted
+
+def _reduce_53(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_55(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_56(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+# reduce 57 omitted
+
+def _reduce_58(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_61(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 62 omitted
+
+# reduce 63 omitted
+
+# reduce 64 omitted
+
+def _reduce_65(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_66(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_74(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_75(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_76(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_77(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_79(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 80 omitted
+
+def _reduce_81(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 82 omitted
+
+def _reduce_83(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_92(val, _values, result)
+                      l = lexer.lineno
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_93(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 94 omitted
+
+def _reduce_95(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_106(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 14
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_107(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 15
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 16
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 17
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 18
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_118(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 119 omitted
+
+def _reduce_120(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_122(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 123 omitted
+
+# reduce 124 omitted
+
+# reduce 125 omitted
+
+def _reduce_126(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 127 omitted
+
+def _reduce_128(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 129 omitted
+
+def _reduce_130(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_131(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_132(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+# reduce 203 omitted
+
+def _reduce_204(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_205(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_206(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_207(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_208(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_209(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_210(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_211(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_212(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_213(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_214(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_215(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_216(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_227(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 228 omitted
+
+def _reduce_229(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_241(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+# reduce 242 omitted
+
+# reduce 243 omitted
+
+# reduce 244 omitted
+
+# reduce 245 omitted
+
+# reduce 246 omitted
+
+def _reduce_247(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_249(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 250 omitted
+
+def _reduce_251(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_252(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_253(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 254 omitted
+
+def _reduce_255(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_256(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+# reduce 257 omitted
+
+# reduce 258 omitted
+
+# reduce 259 omitted
+
+# reduce 260 omitted
+
+def _reduce_261(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_262(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_263(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_264(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_265(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_266(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_267(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_270(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_271(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_272(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 273 omitted
+
+def _reduce_274(val, _values, result)
+                      arg, = val
+                      lineno = arg.line || lexer.lineno # HACK
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_275(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      # TODO: the line number from tSTAR has been dropped
+                      args, _, _, id = val
+                      line = lexer.lineno
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_279(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_280(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_281(val, _values, result)
+                      # TODO: make all tXXXX terminals include lexer.lineno
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_282(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 283 omitted
+
+# reduce 284 omitted
+
+# reduce 285 omitted
+
+# reduce 286 omitted
+
+# reduce 287 omitted
+
+# reduce 288 omitted
+
+# reduce 289 omitted
+
+# reduce 290 omitted
+
+# reduce 291 omitted
+
+# reduce 292 omitted
+
+def _reduce_293(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_296(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+                      result = lexer.lineno
+
+    result
+end
+
+def _reduce_297(val, _values, result)
+                      _, line, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      _, stmt, _ = val
+                      result = stmt
+                      result ||= s(:nil).line lexer.lineno
+                      result.paren = true
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_303(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      _, line, args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_308(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_309(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_310(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_311(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_312(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_313(val, _values, result)
+                      debug 20
+
+    result
+end
+
+def _reduce_314(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 315 omitted
+
+def _reduce_316(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_317(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_318(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      result = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      result = self.in_def
+
+                      self.in_single += 1 # TODO: remove?
+
+                      self.in_def = true # local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
+                      # =>
+                      # [kdef, recv, (name, line), in_def, args, body, kend]
+
+                      val.delete_at 3
+                      val.delete_at 2
+
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_341(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 342 omitted
+
+# reduce 343 omitted
+
+# reduce 344 omitted
+
+# reduce 345 omitted
+
+# reduce 346 omitted
+
+# reduce 347 omitted
+
+# reduce 348 omitted
+
+def _reduce_349(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_351(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 352 omitted
+
+# reduce 353 omitted
+
+# reduce 354 omitted
+
+# reduce 355 omitted
+
+# reduce 356 omitted
+
+# reduce 357 omitted
+
+# reduce 358 omitted
+
+# reduce 359 omitted
+
+# reduce 360 omitted
+
+# reduce 361 omitted
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+# reduce 366 omitted
+
+def _reduce_367(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 368 omitted
+
+def _reduce_369(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 370 omitted
+
+def _reduce_371(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+# reduce 372 omitted
+
+def _reduce_373(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_374(val, _values, result)
+                      sym, = val
+
+                      result = s(:array, sym).line lexer.lineno
+
+    result
+end
+
+def _reduce_375(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_376(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_377(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_378(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_379(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_380(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_381(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_382(val, _values, result)
+                      result = args [:*]
+                      result.line lexer.lineno # FIX: tSTAR -> line
+
+    result
+end
+
+def _reduce_383(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_384(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_385(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_386(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_387(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 388 omitted
+
+def _reduce_389(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_390(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_391(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      result = args(val) << nil
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_404(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_405(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_406(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+def _reduce_407(val, _values, result)
+                      result = s(:args).line lexer.lineno
+
+    result
+end
+
+def _reduce_408(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+# reduce 409 omitted
+
+def _reduce_410(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_413(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 414 omitted
+
+def _reduce_415(val, _values, result)
+                      self.env.extend :dynamic
+                      result = [lexer.lineno, lexer.lpar_beg]
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      _, (line, lpar), args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      result = s(:zsuper).line lexer.lineno
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_440(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_441(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_442(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_443(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_444(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_451(val, _values, result)
+                      result = new_when(val[2], val[4])
+                      result.line val[1]
+                      result << val[5] if val[5]
+
+    result
+end
+
+# reduce 452 omitted
+
+# reduce 453 omitted
+
+def _reduce_454(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_456(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 457 omitted
+
+# reduce 458 omitted
+
+def _reduce_459(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 460 omitted
+
+def _reduce_461(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 462 omitted
+
+def _reduce_463(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 464 omitted
+
+def _reduce_465(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_466(val, _values, result)
+                      debug 37
+
+    result
+end
+
+# reduce 467 omitted
+
+def _reduce_468(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_469(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_470(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_471(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_476(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 477 omitted
+
+def _reduce_478(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_479(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_480(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_483(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_484(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_485(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_486(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_488(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_489(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_494(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_495(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_496(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_497(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_498(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_499(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_500(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                                lexer.lineno,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_501(val, _values, result)
+                      _, memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 38
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_504(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 505 omitted
+
+# reduce 506 omitted
+
+# reduce 507 omitted
+
+def _reduce_508(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_509(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 510 omitted
+
+# reduce 511 omitted
+
+# reduce 512 omitted
+
+# reduce 513 omitted
+
+def _reduce_514(val, _values, result)
+                      _, result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line lexer.lineno
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 39
+                      end
+
+    result
+end
+
+# reduce 515 omitted
+
+def _reduce_516(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 517 omitted
+
+# reduce 518 omitted
+
+# reduce 519 omitted
+
+# reduce 520 omitted
+
+# reduce 521 omitted
+
+# reduce 522 omitted
+
+# reduce 523 omitted
+
+# reduce 524 omitted
+
+# reduce 525 omitted
+
+def _reduce_526(val, _values, result)
+ result = s(:nil).line lexer.lineno
+    result
+end
+
+def _reduce_527(val, _values, result)
+ result = s(:self).line lexer.lineno
+    result
+end
+
+def _reduce_528(val, _values, result)
+ result = s(:true).line lexer.lineno
+    result
+end
+
+def _reduce_529(val, _values, result)
+ result = s(:false).line lexer.lineno
+    result
+end
+
+def _reduce_530(val, _values, result)
+ result = s(:str, self.file).line lexer.lineno
+    result
+end
+
+def _reduce_531(val, _values, result)
+ result = s(:lit, lexer.lineno).line lexer.lineno
+    result
+end
+
+def _reduce_532(val, _values, result)
+                      l = lexer.lineno
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_533(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+                      result.line line
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 40
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_539(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_540(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_547(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 548 omitted
+
+def _reduce_549(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_550(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_551(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_555(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_556(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_557(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_558(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_560(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_561(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_562(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_563(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_564(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      result = args val
+                      # result.line lexer.lineno
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_569(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 570 omitted
+
+def _reduce_571(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 572 omitted
+
+# reduce 573 omitted
+
+def _reduce_574(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_575(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_576(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+# reduce 577 omitted
+
+def _reduce_578(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_579(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_580(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_581(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 582 omitted
+
+def _reduce_583(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 584 omitted
+
+def _reduce_585(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 586 omitted
+
+# reduce 587 omitted
+
+def _reduce_588(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_589(val, _values, result)
+                      id = :"**"
+                      self.env[id] = :lvar # TODO: needed?!?
+                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
+
+    result
+end
+
+def _reduce_590(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+
+    result
+end
+
+def _reduce_591(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_595(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 596 omitted
+
+# reduce 597 omitted
+
+def _reduce_598(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_599(val, _values, result)
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
+
+    result
+end
+
+# reduce 600 omitted
+
+# reduce 601 omitted
+
+def _reduce_602(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_603(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_604(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 605 omitted
+
+def _reduce_606(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_607(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_608(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 609 omitted
+
+# reduce 610 omitted
+
+def _reduce_611(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_612(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_613(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_614(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_615(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 616 omitted
+
+# reduce 617 omitted
+
+# reduce 618 omitted
+
+# reduce 619 omitted
+
+# reduce 620 omitted
+
+# reduce 621 omitted
+
+# reduce 622 omitted
+
+# reduce 623 omitted
+
+# reduce 624 omitted
+
+# reduce 625 omitted
+
+# reduce 626 omitted
+
+# reduce 627 omitted
+
+# reduce 628 omitted
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+# reduce 631 omitted
+
+# reduce 632 omitted
+
+# reduce 633 omitted
+
+# reduce 634 omitted
+
+# reduce 635 omitted
+
+def _reduce_636(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_637(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 638 omitted
+
+# reduce 639 omitted
+
+# reduce 640 omitted
+
+def _reduce_641(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 642 omitted
+
+# reduce 643 omitted
+
+def _reduce_644(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_645(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby24Parser
diff -pruN 3.20.0-2/lib/ruby_parser25.rb 3.21.1-1/lib/ruby_parser25.rb
--- 3.20.0-2/lib/ruby_parser25.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser25.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,11209 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby25Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -521,   639,   574,   224,   225,  -109,   -95,  -521,  -521,  -521,
+  -110,   574,  -521,  -521,  -521,  -103,  -521,  -117,   574,   224,
+   225,   -81,   574,   655,  -521,   285,  -521,  -521,  -521,  -116,
+   234,  -109,  -535,   658,     3,  -536,  -521,  -521,   230,  -521,
+  -521,  -521,  -521,  -521,  -112,   280,   737,   224,   225,   736,
+  -110,    95,  -105,  -114,   574,   889,   748,  -104,   737,    96,
+   126,   739,   641,   640,   637,  -111,   235,  -521,  -521,  -521,
+  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,  -521,
+  -521,  -117,  -103,  -521,  -521,  -521,   654,  -521,  -521,  -109,
+   282,  -521,  -110,   235,  -521,  -521,   657,  -521,   285,  -521,
+   221,  -521,   231,  -521,  -521,  -521,  -521,  -521,  -521,  -521,
+  -100,  -521,   287,  -521,   222,  -101,   130,  -103,  -116,  -105,
+  -103,   129,  -108,  -619,  -104,   130,  -521,  -521,  -521,  -521,
+   129,  -521,   130,  -521,  -107,  -103,   130,   129,  -521,  -524,
+  -112,   129,  -521,  -114,  -521,  -109,  -524,  -524,  -524,  -103,
+  -109,  -524,  -524,  -524,  -105,  -524,   130,  -105,  -105,  -104,
+   888,   129,  -104,  -524,  -110,  -524,  -524,  -524,   130,  -110,
+  -102,   951,  -105,   129,  -111,  -524,  -524,  -104,  -524,  -524,
+  -524,  -524,  -524,  -113,  -102,   287,  -115,  -113,   285,  -115,
+  -521,   837,   224,   225,   837,  -117,  -524,  -521,  -531,   232,
+  -117,   224,   225,  -524,   223,  -531,  -524,  -524,  -524,  -524,
+  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,  -524,
+   108,   109,  -524,  -524,  -524,   836,  -524,  -524,   836,   854,
+  -524,   285,  -116,  -524,  -524,   855,  -524,  -116,  -524,   226,
+  -524,  -108,  -524,  -524,  -524,  -524,  -524,  -524,  -524,   483,
+  -524,  -102,  -524,  -619,  -112,  -620,  -117,  -114,   639,  -112,
+   639,  -619,  -114,   275,  -620,  -524,  -524,  -524,  -524,   232,
+  -524,  -301,  -524,   337,   553,   287,   828,  -524,  -301,  -301,
+  -301,  -524,   235,  -524,  -301,  -301,  -102,  -301,  -111,  -102,
+   624,   235,  -104,  -111,  -106,  -535,   282,  -113,   110,   111,
+  -115,   627,  -113,   829,  -102,  -115,  -117,  -301,  -301,   676,
+  -301,  -301,  -301,  -301,  -301,   108,   109,  -530,   287,   641,
+   640,   641,   640,   338,  -530,   639,  -117,   130,   799,   235,
+   801,  -116,   129,  -112,   635,   634,  -616,  -100,  -301,  -301,
+  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,  -301,  -109,   401,  -301,  -301,  -301,   230,   682,   588,
+  -114,   677,  -301,   589,   229,  -301,  -112,  -617,   628,   868,
+  -301,   581,  -301,   227,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,   624,  -301,  -341,  -301,   404,   641,   640,   637,  -521,
+  -341,  -536,   627,   110,   111,   553,  -521,  -301,  -301,  -341,
+  -106,  -616,  -301,  -623,   922,  -521,   710,   815,   407,  -301,
+  -623,  -623,  -623,  -301,   410,  -115,  -623,  -623,  -114,  -623,
+  -524,   231,  -532,  -616,   427,   635,   634,  -524,  -623,  -532,
+   639,   255,  -617,  -101,   230,   432,  -524,  -107,   639,  -623,
+  -623,   480,  -623,  -623,  -623,  -623,  -623,  -341,  -110,  -533,
+   481,  -529,  -116,  -521,  -617,  -526,  -533,   639,  -529,   628,
+   482,  -111,  -526,   252,  -111,  -533,   737,   254,   253,   739,
+  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,  -623,  -524,   484,  -623,  -623,  -623,  -534,
+   683,   641,   640,   642,  -623,   485,  -534,  -623,   231,   641,
+   640,   647,  -623,   639,  -623,  -534,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,  -533,  -623,  -623,  -623,   676,   641,   640,
+   652,   234,   619,   514,   616,   615,   614,   624,   617,  -623,
+  -623,   523,  -104,  -527,  -623,   526,   230,  -528,   627,   601,
+  -527,  -623,  -623,   546,  -528,  -623,   602,  -113,   528,  -623,
+  -623,  -623,   544,  -534,  -623,  -623,  -623,   255,  -623,  -103,
+   622,   272,   273,   -80,   641,   640,   659,  -623,  -623,  -623,
+  -623,   635,   634,   737,  -112,  -623,   739,   235,  -623,  -623,
+  1049,  -623,  -623,  -623,  -623,  -623,   130,   235,  -292,   252,
+   539,   129,   230,   254,   253,  -292,   271,   270,   639,   556,
+   231,   644,   130,   540,  -292,   628,   547,   129,   481,  -623,
+  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,   224,   225,  -623,  -623,  -623,  -623,   830,
+  -623,   864,   868,  -623,   677,  -623,  -623,  -623,   292,  -623,
+  -619,  -623,   235,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,  -292,  -623,  -623,  -623,   231,   282,   429,   641,
+   640,   130,  -623,   431,   430,   550,   129,   230,  -623,  -623,
+  -623,  -623,   815,  -623,   585,  -623,  -105,   130,   635,   634,
+  -623,  -301,   129,   583,  -623,   554,  -113,   255,  -301,  -301,
+  -301,  -114,  -623,  -301,  -301,  -301,   619,  -301,   616,   615,
+   614,   624,   617,   230,   864,   868,   130,  -301,  -301,  -301,
+   591,   129,   627,   235,  -102,   581,   420,  -301,  -301,   593,
+  -301,  -301,  -301,  -301,  -301,   586,   587,   595,   646,  -111,
+   650,   231,   653,   656,   622,   605,   619,   663,   616,   615,
+   614,  -274,   617,   632,   631,   635,   634,   665,  -301,  -301,
+  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,  -301,   666,   670,  -301,  -301,  -301,   231,   831,  -301,
+   235,   674,  -301,   675,   787,  -301,  -301,   282,  -301,   628,
+  -301,   687,  -301,   791,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,   255,  -301,   255,  -301,   619,   255,   616,   615,   614,
+   624,   617,   133,   134,   135,   136,   137,  -301,  -301,  -301,
+  -301,   627,  -301,  -301,  -301,   255,   694,   235,   235,  -301,
+  -301,  -301,  -301,  -301,   427,  -115,  -301,  -301,   235,  -301,
+   230,  -302,   -95,   622,   714,   235,   559,   669,  -302,   725,
+   730,  -302,   632,   631,   635,   634,   667,  -302,  -302,  -301,
+  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -302,  -301,  -301,
+   733,   235,   235,  -620,   741,   528,  -301,  -301,   744,   733,
+   619,  -620,   616,   615,   614,  -301,   617,   733,   628,   581,
+  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,  -301,  -301,  -301,   231,  -302,  -301,  -301,  -301,   733,
+   682,   769,   775,   778,  -301,  -302,   779,  -301,   787,   781,
+   783,   255,  -301,   785,  -301,  -301,  -301,  -301,  -301,  -301,
+  -301,  -301,  -301,  -301,  -301,   619,  -301,   616,   615,   614,
+   624,   617,   619,   794,   616,   615,   614,   795,   617,  -301,
+  -301,   627,  -301,   252,  -301,  -623,   796,   254,   253,   250,
+   251,  -301,  -623,  -623,  -623,  -301,   802,  -115,  -623,  -623,
+   803,  -623,   230,   622,   133,   134,   135,   136,   137,  1033,
+  -623,  -275,   632,   631,   635,   634,   230,   816,   593,   514,
+   514,  -623,  -623,  1039,  -623,  -623,  -623,  -623,  -623,   911,
+   912,   230,  1037,   913,   124,   125,   235,   833,  1033,   275,
+   619,   842,   616,   615,   614,   844,   617,   593,   628,   526,
+   528,   725,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,  -623,  -623,  -623,  -623,  -623,   231,   235,  -623,  -623,
+  -623,   619,   683,   616,   615,   614,  -623,   617,   787,  -623,
+   231,   282,   282,   255,  -623,   725,  -623,   791,  -623,  -623,
+  -623,  -623,  -623,  -623,  -623,   231,  -623,  -623,  -623,   265,
+   266,  1014,   255,   616,   615,   614,   868,   617,   733,   787,
+   235,  -623,  -623,   235,  -623,   252,  -623,   258,   791,   254,
+   253,   250,   251,  -623,  -434,   733,   235,  -623,   906,  -113,
+   907,  -434,  -434,  -434,   235,   916,  -434,  -434,  -434,   619,
+  -434,   616,   615,   614,   624,   617,   255,  -276,   235,  -434,
+  -434,  -434,   921,   938,   725,   627,  -274,   943,   733,   733,
+  -434,  -434,   733,  -434,  -434,  -434,  -434,  -434,   619,   733,
+   616,   615,   614,   733,   617,   235,   963,   622,   252,   235,
+   778,   966,   254,   253,   250,   251,   632,   631,   635,   634,
+   968,  -434,  -434,  -434,  -434,  -434,  -434,  -434,  -434,  -434,
+  -434,  -434,  -434,  -434,  -434,   970,   787,  -434,  -434,  -434,
+   972,   972,  -434,   235,   282,  -434,   979,  -277,  -434,  -434,
+   980,  -434,   628,  -434,   778,  -434,   983,  -434,  -434,  -434,
+  -434,  -434,  -434,  -434,   986,  -434,  -434,  -434,   619,   988,
+   616,   615,   614,   624,   617,   133,   134,   135,   136,   137,
+  -434,  -434,   990,  -434,   627,  -434,  -310,   133,   134,   135,
+   136,   137,  -434,  -310,  -310,  -310,  -434,   235,  -310,  -310,
+  -310,   992,  -310,   255,   769,   619,   622,   616,   615,   614,
+  1010,   617,  -310,  -310,  1011,   632,   631,   635,   634,   265,
+   266,  1020,  -310,  -310,  1021,  -310,  -310,  -310,  -310,  -310,
+  1014,  1031,   616,   615,   614,   252,   617,   258,  1034,   254,
+   253,   250,   251,   787,   854,   256,  1040,   257,   733,  1050,
+   972,   628,   972,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
+  -310,  -310,  -310,  -310,  -310,  -310,  -310,   972,   778,  -310,
+  -310,  -310,  1057,  1059,  -310,  1061,   292,  -310,  1063,  1063,
+  -310,  -310,   730,  -310,   733,  -310,  1021,  -310,  -620,  -310,
+  -310,  -310,  -310,  -310,  -310,  -310,  -619,  -310,   235,  -310,
+   619,   972,   616,   615,   614,   624,   617,  1084,  1063,  1063,
+  1063,  1063,  -310,  -310,   nil,  -310,   627,  -310,  -293,   nil,
+   nil,   nil,   nil,   nil,  -310,  -293,  -293,  -293,  -310,   nil,
+  -293,  -293,  -293,   nil,  -293,   255,   nil,   nil,   622,   nil,
+   nil,   nil,   nil,   nil,  -293,  -293,  -293,   632,   631,   635,
+   634,   265,   266,   nil,  -293,  -293,   nil,  -293,  -293,  -293,
+  -293,  -293,   nil,   nil,   nil,   nil,   nil,   252,   nil,   258,
+   nil,   254,   253,   250,   251,   nil,   nil,   256,   nil,   257,
+   nil,   nil,   nil,   628,   nil,  -293,  -293,  -293,  -293,  -293,
+  -293,  -293,  -293,  -293,  -293,  -293,  -293,  -293,  -293,   nil,
+   nil,  -293,  -293,  -293,   nil,   nil,  -293,   nil,   nil,  -293,
+   nil,   nil,  -293,  -293,   nil,  -293,   nil,  -293,   nil,  -293,
+   nil,  -293,  -293,  -293,  -293,  -293,  -293,  -293,   nil,  -293,
+   nil,  -293,   619,   nil,   616,   615,   614,   624,   617,   nil,
+   nil,   nil,   nil,   nil,  -293,  -293,  -293,  -293,   627,  -293,
+  -645,  -293,   nil,   nil,   nil,   nil,  -293,  -645,  -645,  -645,
+  -293,   nil,  -645,  -645,  -645,   nil,  -645,   255,   nil,   nil,
+   622,   nil,   nil,   nil,   nil,  -645,  -645,  -645,   nil,   632,
+   631,   635,   634,   265,   266,   nil,  -645,  -645,   nil,  -645,
+  -645,  -645,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   258,   nil,   254,   253,   250,   251,   235,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   628,   nil,  -645,  -645,  -645,
+  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,  -645,
+  -645,   nil,   nil,  -645,  -645,  -645,   nil,   nil,  -645,   nil,
+   282,  -645,   nil,   nil,  -645,  -645,   nil,  -645,   nil,  -645,
+   nil,  -645,   nil,  -645,  -645,  -645,  -645,  -645,  -645,  -645,
+   nil,  -645,  -645,  -645,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,  -645,  -645,   nil,  -645,
+   627,  -645,  -624,   nil,   nil,   nil,   nil,   nil,  -645,  -624,
+  -624,  -624,  -645,   nil,  -624,  -624,  -624,   nil,  -624,   255,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,  -624,  -624,  -624,
+  -624,   632,   631,   635,   634,   265,   266,   nil,  -624,  -624,
+   nil,  -624,  -624,  -624,  -624,  -624,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   nil,   254,   253,   250,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628,   nil,  -624,
+  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,  -624,
+  -624,  -624,  -624,   nil,   nil,  -624,  -624,  -624,   nil,   nil,
+  -624,   nil,   nil,  -624,   nil,   nil,  -624,  -624,   nil,  -624,
+   nil,  -624,   nil,  -624,   nil,  -624,  -624,  -624,  -624,  -624,
+  -624,  -624,   nil,  -624,  -624,  -624,   619,   nil,   616,   615,
+   614,   624,   617,   nil,   nil,   nil,   nil,   nil,  -624,  -624,
+  -624,  -624,   627,  -624,  -625,  -624,   nil,   nil,   nil,   nil,
+  -624,  -625,  -625,  -625,  -624,   nil,  -625,  -625,  -625,   nil,
+  -625,   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,  -625,
+  -625,  -625,  -625,   nil,   nil,   635,   634,   nil,   nil,   nil,
+  -625,  -625,   nil,  -625,  -625,  -625,  -625,  -625,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628,
+   nil,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
+  -625,  -625,  -625,  -625,  -625,   nil,   nil,  -625,  -625,  -625,
+   nil,   nil,  -625,   nil,   nil,  -625,   nil,   nil,  -625,  -625,
+   nil,  -625,   nil,  -625,   nil,  -625,   nil,  -625,  -625,  -625,
+  -625,  -625,  -625,  -625,   nil,  -625,  -625,  -625,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  -625,  -625,  -625,  -625,   nil,  -625,  -645,  -625,   nil,   nil,
+   nil,   nil,  -625,  -645,  -645,  -645,  -625,   nil,  -645,  -645,
+  -645,   nil,  -645,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  -645,  -645,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  -645,  -645,   nil,  -645,  -645,  -645,  -645,  -645,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   512,   464,   nil,
+   nil,   513,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,  -645,   nil,   nil,   175,   176,   161,
+   162,  -645,   nil,   nil,   nil,   nil,   282,  -645,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,  -645,  -645,
+   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  -645,   nil,   nil,   nil,   nil,  -645,   nil,   nil,
+   170,   nil,   nil,   nil,  -645,   nil,   nil,   nil,  -645,     8,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   671,    11,    49,    10,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,  -249,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   671,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   235,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,   315,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,   248,   249,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   269,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,  -646,  -646,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   268,   263,   264,   nil,  -646,  -646,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,     8,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,    10,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,  -646,  -646,  -646,  -646,
+   272,   273,   nil,   nil,  -646,  -646,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   nil,   nil,   263,   264,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   255,   259,   260,   261,   262,
+   272,   273,   267,   nil,   263,   264,   nil,   nil,   nil,   nil,
+   nil,   265,   266,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   252,   nil,   258,
+    48,   254,   253,   250,   251,   271,   270,   256,    23,   257,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,   311,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   313,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,    10,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   627,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   319,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
+   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,   617,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,   627,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,   nil,
+   336,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   130,   nil,   nil,   nil,   nil,   129,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,
+   624,   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   364,
+   nil,   627,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   635,   634,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   369,    60,   114,   113,   370,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   376,   nil,   nil,   371,   nil,
+   627,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
+   121,   123,   369,    60,   114,   113,   370,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
+   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,   617,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   371,   nil,   627,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,    12,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    49,    10,    13,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   420,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+    12,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
+    49,   nil,    13,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   437,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   437,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   235,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,
+   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   235,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,    12,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
+   nil,    13,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,
+   624,   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,
+   nil,   627,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   635,   634,   nil,    96,   106,   nil,
+   nil,   nil,   542,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   619,   nil,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   627,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   635,   634,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   628,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   559,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   304,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   305,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   707,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   313,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   420,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,   nil,
+   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   324,   nil,   627,   320,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   635,   634,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   628,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
+   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   324,   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   807,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,    12,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   nil,
+    13,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   304,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   707,
+   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,
+   nil,   nil,   320,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   nil,   320,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   437,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   707,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   873,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   304,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   299,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   305,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,
+   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   994,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,   nil,   nil,   334,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1001,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+  1006,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   994,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
+   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
+   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
+   208,   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,
+   nil,   nil,   183,   190,   181,   182,   178,   179,   180,   141,
+   143,   140,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   188,   199,   189,   212,   185,   205,   195,
+   194,   215,   216,   210,   193,   192,   187,   213,   217,   218,
+   197,   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,
+   207,   214,   209,   208,   201,   211,   196,   184,   203,   202,
+   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,
+   179,   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,
+   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
+   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
+   nil,   nil,   nil,   207,   214,   209,   387,   386,   388,   385,
+   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
+   181,   182,   382,   383,   384,   380,   143,   114,   113,   381,
+   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   392,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
+   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
+   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
+   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
+   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
+   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
+   417,   416,   142,   nil,   418,   nil,   nil,   nil,   nil,   nil,
+   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
+   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
+   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
+   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
+   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   188,   199,   189,   212,   185,   205,   195,   194,
+   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
+   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
+   214,   209,   208,   201,   211,   196,   184,   203,   202,   nil,
+   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,
+   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   105,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,   185,
+   205,   195,   194,   215,   216,   210,   193,   192,   187,   213,
+   217,   218,   197,   186,   200,   204,   206,   198,   191,   nil,
+   nil,   nil,   207,   214,   209,   208,   201,   211,   196,   184,
+   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,
+   182,   178,   179,   180,   141,   143,   nil,   nil,   142,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,
+   189,   212,   185,   205,   195,   194,   215,   216,   210,   193,
+   192,   187,   213,   217,   218,   197,   186,   200,   204,   206,
+   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,
+   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,
+   183,   190,   181,   182,   178,   179,   180,   141,   143,   nil,
+   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   nil,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   460,   464,   nil,   nil,   461,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   467,   471,   nil,   nil,   466,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   688,   464,   nil,   nil,   689,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   690,
+   471,   nil,   nil,   691,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   718,   464,   nil,
+   nil,   719,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   721,   471,   nil,   nil,   722,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   688,   464,   nil,   nil,   689,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   690,   471,   nil,   nil,   691,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   755,
+   464,   nil,   nil,   756,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   757,   471,   nil,
+   nil,   758,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   760,   471,   nil,   nil,   761,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   512,   464,   nil,   nil,   513,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   809,   464,   nil,   nil,   810,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   812,
+   471,   nil,   nil,   811,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   619,   177,   616,   615,   614,   624,   617,   619,   nil,
+   616,   615,   614,   624,   617,   nil,   nil,   627,   nil,   nil,
+   nil,   nil,   170,   nil,   627,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   622,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   632,   631,
+   635,   634,   nil,   nil,   nil,   632,   631,   635,   634,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1067,   471,   nil,   nil,
+  1066,   nil,   nil,   nil,   628,   nil,   nil,   nil,   nil,   173,
+   174,   628,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
+   nil,   nil,   nil,   nil,  1070,   464,   nil,   nil,  1071,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,
+   169,   151,   152,   153,   160,   157,   159,   nil,   nil,   154,
+   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   166,   165,   nil,   150,   172,   168,   167,   163,   164,
+   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,
+   nil,   nil,  1072,   471,   nil,   nil,  1073,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   619,   177,   616,   615,   614,   624,
+   617,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   627,   nil,   nil,   nil,   nil,   170,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   632,   631,   635,   634,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628 ]
+
+racc_action_check = [
+   112,   395,   353,   476,   476,   361,   713,   112,   112,   112,
+   362,   354,   112,   112,   112,   718,   112,   365,   942,    17,
+    17,   713,   947,   408,   112,    29,   112,   112,   112,   586,
+    22,   998,   238,   411,     1,   239,   112,   112,    27,   112,
+   112,   112,   112,   112,   755,    27,   565,   352,   352,   565,
+   999,    92,   719,   756,   874,   773,   576,   721,   566,    92,
+     3,   566,   395,   395,   395,   875,    22,   112,   112,   112,
+   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
+   112,  1002,   718,   112,   112,   112,   408,   112,   112,   238,
+    29,   112,   239,   476,   112,   112,   411,   112,    65,   112,
+    13,   112,    27,   112,   112,   112,   112,   112,   112,   112,
+   361,   112,    29,   112,    15,   362,   353,   718,  1040,   719,
+   718,   353,   365,   721,   721,   354,   112,   112,   112,   112,
+   354,   112,   942,   112,   586,   718,   947,   942,   112,   115,
+  1070,   947,   112,  1071,   112,   998,   115,   115,   115,   755,
+   998,   115,   115,   115,   719,   115,   576,   719,   756,   721,
+   773,   576,   721,   115,   999,   115,   115,   115,   874,   999,
+   875,   874,   719,   874,  1082,   115,   115,   721,   115,   115,
+   115,   115,   115,  1072,   849,    65,  1073,   757,   697,   758,
+   380,   695,   728,   728,   843,  1002,   381,   380,   382,    20,
+  1002,   772,   772,   381,    16,   382,   115,   115,   115,   115,
+   115,   115,   115,   115,   115,   115,   115,   115,   115,   115,
+    44,    44,   115,   115,   115,   695,   115,   115,   843,   729,
+   115,   329,  1040,   115,   115,   729,   115,  1040,   115,    18,
+   115,    20,   115,   115,   115,   115,   115,   115,   115,   241,
+   115,   849,   115,   757,  1070,   758,    20,  1071,   648,  1070,
+   651,  1072,  1071,    25,  1073,   115,   115,   115,   115,   444,
+   115,   466,   115,    40,   482,   697,   688,   115,   466,   466,
+   466,   115,   728,   115,   466,   466,   849,   466,  1082,   849,
+   775,   772,   757,  1082,   758,    41,   329,  1072,    44,    44,
+  1073,   775,  1072,   689,   849,  1073,   241,   466,   466,   809,
+   466,   466,   466,   466,   466,   334,   334,   383,   329,   648,
+   648,   651,   651,    43,   383,   530,   444,     5,   648,    49,
+   651,   482,     5,   688,   775,   775,   369,    41,   466,   466,
+   466,   466,   466,   466,   466,   466,   466,   466,   466,   466,
+   466,   466,    41,    99,   466,   466,   466,    19,   466,   371,
+   689,   810,   466,   371,    19,   466,   809,   370,   775,  1007,
+   466,  1007,   466,    19,   466,   466,   466,   466,   466,   466,
+   466,   980,   466,    50,   466,   100,   530,   530,   530,   369,
+    50,    42,   980,   334,   334,   338,   369,   466,   466,    50,
+   466,   369,   466,   467,   832,   369,   530,   918,   101,   466,
+   467,   467,   467,   466,   102,   466,   467,   467,   810,   467,
+   370,    19,   384,   369,   138,   980,   980,   370,   467,   384,
+   397,   488,   370,    42,   237,   219,   370,   338,   402,   467,
+   467,   237,   467,   467,   467,   467,   467,    50,    42,   321,
+   237,   385,   338,   369,   370,   386,   321,   405,   385,   980,
+   240,   832,   386,   488,   918,   321,   570,   488,   488,   570,
+   467,   467,   467,   467,   467,   467,   467,   467,   467,   467,
+   467,   467,   467,   467,   370,   242,   467,   467,   467,   322,
+   467,   397,   397,   397,   467,   243,   322,   467,   237,   402,
+   402,   402,   467,   413,   467,   322,   467,   467,   467,   467,
+   467,   467,   467,   321,   467,   467,   467,   460,   405,   405,
+   405,   247,   783,   281,   783,   783,   783,   783,   783,   467,
+   467,   296,   467,   387,   467,   297,   323,   388,   783,   390,
+   387,   467,   690,   323,   388,   467,   390,   467,   300,   690,
+   690,   690,   323,   322,   690,   690,   690,   489,   690,   460,
+   783,    47,    47,   314,   413,   413,   413,   690,   690,   690,
+   690,   783,   783,   862,   460,   760,   862,  1012,   690,   690,
+  1012,   690,   690,   690,   690,   690,   308,   316,   325,   489,
+   317,   308,   340,   489,   489,   325,    47,    47,   399,   340,
+   323,   399,   358,   318,   325,   783,   324,   358,   340,   690,
+   690,   690,   690,   690,   690,   690,   690,   690,   690,   690,
+   690,   690,   690,   597,   597,   690,   690,   690,   760,   690,
+   690,   743,   743,   690,   461,   760,   690,   690,   327,   690,
+   760,   690,   328,   690,   760,   690,   690,   690,   690,   690,
+   690,   690,   325,   690,   690,   690,   340,   333,   140,   399,
+   399,   766,   760,   140,   140,   335,   766,   363,   690,   690,
+   690,   690,   672,   690,   363,   690,   461,   879,   778,   778,
+   690,   691,   879,   363,   690,   339,   690,   342,   691,   691,
+   691,   461,   760,   691,   691,   691,   393,   691,   393,   393,
+   393,   393,   393,   373,  1041,  1041,   884,   691,   691,   691,
+   373,   884,   393,   348,   672,   359,   360,   691,   691,   373,
+   691,   691,   691,   691,   691,   364,   366,   375,   401,   672,
+   404,   363,   407,   410,   393,   393,   622,   433,   622,   622,
+   622,   436,   622,   393,   393,   393,   393,   438,   691,   691,
+   691,   691,   691,   691,   691,   691,   691,   691,   691,   691,
+   691,   691,   441,   445,   691,   691,   691,   373,   691,   691,
+   455,   458,   691,   459,   622,   691,   691,   468,   691,   393,
+   691,   478,   691,   622,   691,   691,   691,   691,   691,   691,
+   691,   490,   691,   491,   691,   605,   492,   605,   605,   605,
+   605,   605,     9,     9,     9,     9,     9,   691,   691,   691,
+   691,   605,   691,   811,   691,   493,   509,   516,   520,   691,
+   811,   811,   811,   691,   536,   691,   811,   811,   537,   811,
+   443,   547,   538,   605,   541,   543,   548,   443,   547,   551,
+   560,   589,   605,   605,   605,   605,   443,   547,   589,   811,
+   811,   722,   811,   811,   811,   811,   811,   589,   722,   761,
+   561,   562,   567,   722,   568,   571,   761,   722,   573,   577,
+   907,   761,   907,   907,   907,   761,   907,   578,   605,   579,
+   811,   811,   811,   811,   811,   811,   811,   811,   811,   811,
+   811,   811,   811,   811,   443,   547,   811,   811,   811,   580,
+   811,   599,   607,   608,   811,   589,   610,   811,   907,   611,
+   612,   503,   811,   621,   811,   722,   811,   811,   811,   811,
+   811,   811,   811,   761,   811,   769,   811,   769,   769,   769,
+   769,   769,   791,   629,   791,   791,   791,   633,   791,   811,
+   811,   769,   811,   503,   811,   812,   636,   503,   503,   503,
+   503,   811,   812,   812,   812,   811,   655,   811,   812,   812,
+   658,   812,   993,   769,   312,   312,   312,   312,   312,   993,
+   812,   664,   769,   769,   769,   769,  1000,   673,   993,   678,
+   684,   812,   812,  1000,   812,   812,   812,   812,   812,   797,
+   797,  1032,  1000,   797,   797,   797,   692,   693,  1032,   696,
+   787,   700,   787,   787,   787,   702,   787,  1032,   769,   704,
+   706,   715,   812,   812,   812,   812,   812,   812,   812,   812,
+   812,   812,   812,   812,   812,   812,   993,   717,   812,   812,
+   812,   906,   812,   906,   906,   906,   812,   906,   787,   812,
+  1000,   720,   723,   494,   812,   724,   812,   787,   812,   812,
+   812,   812,   812,   812,   812,  1032,   812,   812,   812,   494,
+   494,   963,   727,   963,   963,   963,   745,   963,   751,   906,
+   754,   812,   812,   763,   812,   494,   812,   494,   906,   494,
+   494,   494,   494,   812,    30,   767,   774,   812,   789,   812,
+   790,    30,    30,    30,   792,   804,    30,    30,    30,   770,
+    30,   770,   770,   770,   770,   770,   504,   806,   808,    30,
+    30,    30,   817,   841,   848,   770,   858,   859,   863,   869,
+    30,    30,   876,    30,    30,    30,    30,    30,  1020,   878,
+  1020,  1020,  1020,   882,  1020,   883,   890,   770,   504,   891,
+   892,   896,   504,   504,   504,   504,   770,   770,   770,   770,
+   897,    30,    30,    30,    30,    30,    30,    30,    30,    30,
+    30,    30,    30,    30,    30,   899,  1020,    30,    30,    30,
+   900,   902,    30,   905,    30,    30,   915,   917,    30,    30,
+   924,    30,   770,    30,   925,    30,   927,    30,    30,    30,
+    30,    30,    30,    30,   928,    30,    30,    30,   779,   929,
+   779,   779,   779,   779,   779,   347,   347,   347,   347,   347,
+    30,    30,   931,    30,   779,    30,    31,   535,   535,   535,
+   535,   535,    30,    31,    31,    31,    30,   932,    31,    31,
+    31,   933,    31,   508,   960,  1021,   779,  1021,  1021,  1021,
+   961,  1021,    31,    31,   962,   779,   779,   779,   779,   508,
+   508,   977,    31,    31,   978,    31,    31,    31,    31,    31,
+  1049,   991,  1049,  1049,  1049,   508,  1049,   508,   994,   508,
+   508,   508,   508,  1021,   996,   508,  1001,   508,  1008,  1016,
+  1017,   779,  1018,    31,    31,    31,    31,    31,    31,    31,
+    31,    31,    31,    31,    31,    31,    31,  1019,  1022,    31,
+    31,    31,  1025,  1026,    31,  1027,    31,    31,  1028,  1030,
+    31,    31,  1036,    31,  1047,    31,  1055,    31,  1066,    31,
+    31,    31,    31,    31,    31,    31,  1067,    31,  1069,    31,
+   781,  1077,   781,   781,   781,   781,   781,  1078,  1079,  1080,
+  1081,  1089,    31,    31,   nil,    31,   781,    31,    60,   nil,
+   nil,   nil,   nil,   nil,    31,    60,    60,    60,    31,   nil,
+    60,    60,    60,   nil,    60,   557,   nil,   nil,   781,   nil,
+   nil,   nil,   nil,   nil,    60,    60,    60,   781,   781,   781,
+   781,   557,   557,   nil,    60,    60,   nil,    60,    60,    60,
+    60,    60,   nil,   nil,   nil,   nil,   nil,   557,   nil,   557,
+   nil,   557,   557,   557,   557,   nil,   nil,   557,   nil,   557,
+   nil,   nil,   nil,   781,   nil,    60,    60,    60,    60,    60,
+    60,    60,    60,    60,    60,    60,    60,    60,    60,   nil,
+   nil,    60,    60,    60,   nil,   nil,    60,   nil,   nil,    60,
+   nil,   nil,    60,    60,   nil,    60,   nil,    60,   nil,    60,
+   nil,    60,    60,    60,    60,    60,    60,    60,   nil,    60,
+   nil,    60,   836,   nil,   836,   836,   836,   836,   836,   nil,
+   nil,   nil,   nil,   nil,    60,    60,    60,    60,   836,    60,
+   462,    60,   nil,   nil,   nil,   nil,    60,   462,   462,   462,
+    60,   nil,   462,   462,   462,   nil,   462,   495,   nil,   nil,
+   836,   nil,   nil,   nil,   nil,   462,   462,   462,   nil,   836,
+   836,   836,   836,   495,   495,   nil,   462,   462,   nil,   462,
+   462,   462,   462,   462,   nil,   nil,   nil,   nil,   nil,   495,
+   nil,   495,   nil,   495,   495,   495,   495,   836,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   836,   nil,   462,   462,   462,
+   462,   462,   462,   462,   462,   462,   462,   462,   462,   462,
+   462,   nil,   nil,   462,   462,   462,   nil,   nil,   462,   nil,
+   462,   462,   nil,   nil,   462,   462,   nil,   462,   nil,   462,
+   nil,   462,   nil,   462,   462,   462,   462,   462,   462,   462,
+   nil,   462,   462,   462,   966,   nil,   966,   966,   966,   966,
+   966,   nil,   nil,   nil,   nil,   nil,   462,   462,   nil,   462,
+   966,   462,   471,   nil,   nil,   nil,   nil,   nil,   462,   471,
+   471,   471,   462,   nil,   471,   471,   471,   nil,   471,   496,
+   nil,   nil,   966,   nil,   nil,   nil,   nil,   471,   471,   471,
+   471,   966,   966,   966,   966,   496,   496,   nil,   471,   471,
+   nil,   471,   471,   471,   471,   471,   nil,   nil,   nil,   nil,
+   nil,   496,   nil,   nil,   nil,   496,   496,   496,   496,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   966,   nil,   471,
+   471,   471,   471,   471,   471,   471,   471,   471,   471,   471,
+   471,   471,   471,   nil,   nil,   471,   471,   471,   nil,   nil,
+   471,   nil,   nil,   471,   nil,   nil,   471,   471,   nil,   471,
+   nil,   471,   nil,   471,   nil,   471,   471,   471,   471,   471,
+   471,   471,   nil,   471,   471,   471,   968,   nil,   968,   968,
+   968,   968,   968,   nil,   nil,   nil,   nil,   nil,   471,   471,
+   471,   471,   968,   471,   472,   471,   nil,   nil,   nil,   nil,
+   471,   472,   472,   472,   471,   nil,   472,   472,   472,   nil,
+   472,   nil,   nil,   nil,   968,   nil,   nil,   nil,   nil,   472,
+   472,   472,   472,   nil,   nil,   968,   968,   nil,   nil,   nil,
+   472,   472,   nil,   472,   472,   472,   472,   472,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   968,
+   nil,   472,   472,   472,   472,   472,   472,   472,   472,   472,
+   472,   472,   472,   472,   472,   nil,   nil,   472,   472,   472,
+   nil,   nil,   472,   nil,   nil,   472,   nil,   nil,   472,   472,
+   nil,   472,   nil,   472,   nil,   472,   nil,   472,   472,   472,
+   472,   472,   472,   472,   nil,   472,   472,   472,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   472,   472,   472,   472,   nil,   472,   511,   472,   nil,   nil,
+   nil,   nil,   472,   511,   511,   511,   472,   nil,   511,   511,
+   511,   nil,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   511,   511,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   511,   511,   nil,   511,   511,   511,   511,   511,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   278,   278,   nil,
+   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   278,   278,   nil,   278,   278,   278,   278,   278,   278,   278,
+   nil,   nil,   278,   278,   511,   nil,   nil,   278,   278,   278,
+   278,   511,   nil,   nil,   nil,   nil,   511,   511,   nil,   nil,
+   nil,   nil,   nil,   nil,   278,   278,   nil,   278,   278,   278,
+   278,   278,   278,   278,   278,   278,   278,   278,   511,   511,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   511,   nil,   nil,   nil,   nil,   511,   nil,   nil,
+   278,   nil,   nil,   nil,   511,   nil,   nil,   nil,   511,     2,
+     2,     2,     2,     2,     2,   nil,   nil,   nil,     2,     2,
+   nil,   nil,   nil,     2,   nil,     2,     2,     2,     2,     2,
+     2,     2,   nil,   nil,   nil,   nil,   nil,     2,     2,     2,
+     2,     2,     2,     2,   nil,   nil,     2,   nil,   nil,   nil,
+   nil,   448,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,   nil,     2,     2,     2,   nil,     2,
+     2,   nil,     2,     2,     2,   448,   448,   448,   448,   448,
+   448,   448,   448,   448,   448,   448,   nil,   448,   448,   nil,
+   nil,   448,   448,   nil,     2,   nil,   nil,     2,   nil,   nil,
+     2,     2,   nil,   nil,     2,   nil,     2,   448,   nil,   448,
+     2,   448,   448,   448,   448,   448,   448,   448,     2,   448,
+   nil,   nil,   nil,     2,     2,     2,     2,     2,     2,   nil,
+   nil,   nil,     2,     2,   nil,   448,   nil,   448,   nil,   nil,
+     2,   nil,   nil,     2,     2,     2,   nil,     2,     2,    36,
+    36,    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,
+   nil,   nil,   nil,    36,   nil,    36,    36,    36,    36,    36,
+    36,    36,   nil,   nil,   nil,   nil,   nil,    36,    36,    36,
+    36,    36,    36,    36,   nil,   nil,    36,   nil,   nil,   nil,
+   nil,   454,    36,    36,    36,    36,    36,    36,    36,    36,
+    36,    36,    36,    36,   nil,    36,    36,    36,   nil,    36,
+    36,   nil,    36,    36,    36,   454,   454,   454,   454,   454,
+   454,   454,   454,   454,   454,   454,   nil,   454,   454,   nil,
+   nil,   454,   454,   nil,    36,   nil,   nil,    36,   nil,   nil,
+    36,    36,   nil,   nil,    36,   nil,    36,   454,   nil,   454,
+    36,   454,   454,   454,   454,   454,   454,   454,    36,   454,
+   nil,   nil,   nil,    36,    36,    36,    36,    36,    36,   nil,
+   nil,   nil,    36,    36,   nil,   454,   nil,   nil,   nil,   nil,
+    36,   nil,   nil,    36,    36,    36,   nil,    36,    36,   221,
+   221,   221,   221,   221,   221,   nil,   nil,   nil,   221,   221,
+   nil,   nil,   nil,   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,   221,   221,   221,   221,   221,   221,   221,   221,
+   221,   221,   221,   221,   nil,   221,   221,   221,   nil,   221,
+   221,   nil,   221,   221,   221,    24,    24,    24,    24,    24,
+    24,    24,    24,    24,    24,    24,   nil,    24,    24,   nil,
+   nil,    24,    24,   nil,   221,   nil,   nil,   221,   nil,   nil,
+   221,   221,   nil,   nil,   221,   nil,   221,    24,   nil,    24,
+   221,    24,    24,    24,    24,    24,    24,    24,   221,    24,
+   nil,   nil,   nil,   221,   221,   221,   221,   221,   221,   nil,
+   nil,   nil,   221,   221,   nil,    24,   nil,   nil,   nil,   nil,
+   221,   nil,   nil,   221,   221,   221,   nil,   221,   221,   246,
+   246,   246,   246,   246,   246,   nil,   nil,   nil,   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,   246,   246,   246,   246,   246,   246,   246,   246,
+   246,   246,   246,   246,   nil,   246,   246,   246,   nil,   246,
+   246,   nil,   246,   246,   246,   294,   294,   294,   294,   294,
+   294,   294,   294,   294,   294,   294,   nil,   294,   294,   nil,
+   nil,   294,   294,   nil,   246,   nil,   nil,   246,   nil,   nil,
+   246,   246,   nil,   nil,   246,   nil,   246,   294,   nil,   294,
+   246,   294,   294,   294,   294,   294,   294,   294,   246,   294,
+   nil,   nil,   nil,   246,   246,   246,   246,   246,   246,   nil,
+   nil,   nil,   246,   246,   nil,   294,   nil,   nil,   nil,   nil,
+   246,   nil,   nil,   246,   246,   246,   nil,   246,   246,   315,
+   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,   315,
+   nil,   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,   315,   315,   315,   315,   315,   315,   315,   315,
+   315,   315,   315,   315,   nil,   315,   315,   315,   nil,   315,
+   315,   nil,   315,   315,   315,   507,   507,   507,   507,   507,
+   507,   507,   507,   507,   507,   507,   nil,   507,   507,   nil,
+   nil,   507,   507,   nil,   315,   nil,   nil,   315,   nil,   nil,
+   315,   315,   nil,   nil,   315,   nil,   315,   507,   nil,   507,
+   315,   507,   507,   507,   507,   507,   507,   507,   315,   507,
+   nil,   nil,   nil,   315,   315,   315,   315,   315,   315,   nil,
+   nil,   nil,   315,   315,   507,   507,   nil,   nil,   nil,   nil,
+   315,   nil,   nil,   315,   315,   315,   nil,   315,   315,   320,
+   320,   320,   320,   320,   320,   nil,   nil,   nil,   320,   320,
+   nil,   nil,   nil,   320,   nil,   320,   320,   320,   320,   320,
+   320,   320,   nil,   nil,   nil,   nil,   nil,   320,   320,   320,
+   320,   320,   320,   320,   nil,   nil,   320,   nil,   nil,   nil,
+   nil,   nil,   320,   320,   320,   320,   320,   320,   320,   320,
+   320,   320,   320,   320,   nil,   320,   320,   320,   nil,   320,
+   320,   nil,   320,   320,   320,   558,   558,   558,   558,   558,
+   558,   558,   558,   558,   558,   558,   nil,   558,   558,   nil,
+   nil,   558,   558,   nil,   320,   nil,   nil,   320,   nil,   nil,
+   320,   320,   nil,   nil,   320,   nil,   320,   558,   nil,   558,
+   320,   558,   558,   558,   558,   558,   558,   558,   320,   558,
+   nil,   nil,   nil,   320,   320,   320,   320,   320,   320,   nil,
+   nil,   nil,   320,   320,   nil,   558,   nil,   nil,   nil,   nil,
+   320,   nil,   nil,   320,   320,   320,   nil,   320,   320,   346,
+   346,   346,   346,   346,   346,   nil,   nil,   nil,   346,   346,
+   nil,   nil,   nil,   346,   nil,   346,   346,   346,   346,   346,
+   346,   346,   nil,   nil,   nil,   nil,   nil,   346,   346,   346,
+   346,   346,   346,   346,   nil,   nil,   346,   nil,   nil,   nil,
+   nil,   nil,   346,   346,   346,   346,   346,   346,   346,   346,
+   346,   346,   346,   346,   nil,   346,   346,   346,   nil,   346,
+   346,   nil,   346,   346,   346,   814,   814,   814,   814,   814,
+   814,   814,   814,   814,   814,   814,   nil,   814,   814,   nil,
+   nil,   814,   814,   nil,   346,   nil,   nil,   346,   nil,   nil,
+   346,   346,   nil,   nil,   346,   nil,   346,   814,   nil,   814,
+   346,   814,   814,   814,   814,   814,   814,   814,   346,   814,
+   nil,   nil,   nil,   346,   346,   346,   346,   346,   346,   nil,
+   nil,   nil,   346,   346,   nil,   814,   nil,   nil,   nil,   nil,
+   346,   nil,   nil,   346,   346,   346,   nil,   346,   346,   356,
+   356,   356,   356,   356,   356,   nil,   nil,   nil,   356,   356,
+   nil,   nil,   nil,   356,   nil,   356,   356,   356,   356,   356,
+   356,   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,
+   356,   356,   356,   356,   nil,   nil,   356,   nil,   nil,   nil,
+   nil,   nil,   356,   356,   356,   356,   356,   356,   356,   356,
+   356,   356,   356,   356,   nil,   356,   356,   356,   nil,   356,
+   356,   nil,   356,   356,   356,   923,   923,   923,   923,   923,
+   923,   923,   923,   923,   923,   923,   nil,   923,   923,   nil,
+   nil,   923,   923,   nil,   356,   nil,   nil,   356,   nil,   nil,
+   356,   356,   nil,   nil,   356,   nil,   356,   923,   nil,   923,
+   356,   923,   923,   923,   923,   923,   923,   923,   356,   923,
+   nil,   nil,   nil,   356,   356,   356,   356,   356,   356,   nil,
+   nil,   nil,   356,   356,   nil,   923,   nil,   nil,   nil,   nil,
+   356,   nil,   nil,   356,   356,   356,   nil,   356,   356,   357,
+   357,   357,   357,   357,   357,   nil,   nil,   nil,   357,   357,
+   nil,   nil,   nil,   357,   nil,   357,   357,   357,   357,   357,
+   357,   357,   nil,   nil,   nil,   nil,   nil,   357,   357,   357,
+   357,   357,   357,   357,   nil,   nil,   357,   nil,   nil,   nil,
+   nil,   nil,   357,   357,   357,   357,   357,   357,   357,   357,
+   357,   357,   357,   357,   nil,   357,   357,   357,   nil,   357,
+   357,   nil,   357,   357,   357,   486,   486,   486,   486,   486,
+   486,   486,   486,   486,   486,   486,   nil,   486,   486,   nil,
+   nil,   486,   486,   nil,   357,   nil,   nil,   357,   nil,   nil,
+   357,   357,   nil,   nil,   357,   nil,   357,   486,   nil,   486,
+   357,   486,   486,   486,   486,   486,   486,   486,   357,   486,
+   nil,   nil,   nil,   357,   357,   357,   357,   357,   357,   nil,
+   nil,   nil,   357,   357,   nil,   nil,   nil,   nil,   nil,   nil,
+   357,   nil,   nil,   357,   357,   357,   nil,   357,   357,   572,
+   572,   572,   572,   572,   572,   nil,   nil,   nil,   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,   572,   572,   572,   572,   572,   572,
+   572,   572,   572,   572,   nil,   572,   572,   572,   nil,   572,
+   572,   nil,   572,   572,   572,   487,   487,   487,   487,   487,
+   487,   487,   487,   487,   487,   487,   nil,   487,   487,   nil,
+   nil,   487,   487,   nil,   572,   nil,   nil,   572,   nil,   nil,
+   572,   572,   nil,   nil,   572,   nil,   572,   487,   nil,   487,
+   572,   487,   487,   487,   487,   487,   487,   487,   572,   487,
+   nil,   nil,   nil,   572,   572,   572,   572,   572,   572,   nil,
+   nil,   nil,   572,   572,   nil,   nil,   nil,   nil,   nil,   nil,
+   572,   nil,   nil,   572,   572,   572,   nil,   572,   572,   575,
+   575,   575,   575,   575,   575,   nil,   nil,   nil,   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,   575,   575,   575,   575,   575,   575,   575,   575,
+   575,   575,   575,   575,   nil,   575,   575,   575,   nil,   575,
+   575,   nil,   575,   575,   575,   497,   497,   497,   497,   497,
+   497,   497,   nil,   nil,   497,   497,   nil,   nil,   nil,   nil,
+   nil,   497,   497,   nil,   575,   nil,   nil,   575,   nil,   nil,
+   575,   575,   nil,   nil,   575,   nil,   575,   497,   nil,   497,
+   575,   497,   497,   497,   497,   497,   497,   497,   575,   497,
+   nil,   nil,   nil,   575,   575,   575,   575,   575,   575,   nil,
+   nil,   nil,   575,   575,   nil,   nil,   nil,   nil,   nil,   nil,
+   575,   nil,   nil,   575,   575,   575,   nil,   575,   575,   598,
+   598,   598,   598,   598,   598,   nil,   nil,   nil,   598,   598,
+   nil,   nil,   nil,   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,   598,   598,   598,   598,   598,   598,   598,   598,
+   598,   598,   598,   598,   nil,   598,   598,   598,   nil,   598,
+   598,   nil,   598,   598,   598,   498,   498,   498,   498,   498,
+   498,   498,   nil,   nil,   498,   498,   nil,   nil,   nil,   nil,
+   nil,   498,   498,   nil,   598,   nil,   nil,   598,   nil,   nil,
+   598,   598,   nil,   nil,   598,   nil,   598,   498,   nil,   498,
+   598,   498,   498,   498,   498,   498,   498,   498,   598,   498,
+   nil,   nil,   nil,   598,   598,   598,   598,   598,   598,   nil,
+   nil,   nil,   598,   598,   nil,   nil,   nil,   nil,   nil,   nil,
+   598,   nil,   nil,   598,   598,   598,   nil,   598,   598,   660,
+   660,   660,   660,   660,   660,   nil,   nil,   nil,   660,   660,
+   nil,   nil,   nil,   660,   nil,   660,   660,   660,   660,   660,
+   660,   660,   nil,   nil,   nil,   nil,   nil,   660,   660,   660,
+   660,   660,   660,   660,   nil,   nil,   660,   nil,   nil,   nil,
+   nil,   nil,   660,   660,   660,   660,   660,   660,   660,   660,
+   660,   660,   660,   660,   nil,   660,   660,   660,   nil,   660,
+   660,   nil,   660,   660,   660,   499,   499,   499,   499,   499,
+   499,   499,   nil,   nil,   499,   499,   nil,   nil,   nil,   nil,
+   nil,   499,   499,   nil,   660,   nil,   nil,   660,   nil,   nil,
+   660,   660,   nil,   nil,   660,   nil,   660,   499,   nil,   499,
+   660,   499,   499,   499,   499,   499,   499,   499,   660,   499,
+   nil,   nil,   nil,   660,   660,   660,   660,   660,   660,   nil,
+   nil,   nil,   660,   660,   nil,   nil,   nil,   nil,   nil,   nil,
+   660,   nil,   nil,   660,   660,   660,   nil,   660,   660,   759,
+   759,   759,   759,   759,   759,   nil,   nil,   nil,   759,   759,
+   nil,   nil,   nil,   759,   nil,   759,   759,   759,   759,   759,
+   759,   759,   nil,   nil,   nil,   nil,   nil,   759,   759,   759,
+   759,   759,   759,   759,   nil,   nil,   759,   nil,   nil,   nil,
+   nil,   nil,   759,   759,   759,   759,   759,   759,   759,   759,
+   759,   759,   759,   759,   nil,   759,   759,   759,   nil,   759,
+   759,   nil,   759,   759,   759,   500,   500,   500,   500,   500,
+   500,   500,   nil,   nil,   500,   500,   nil,   nil,   nil,   nil,
+   nil,   500,   500,   nil,   759,   nil,   nil,   759,   nil,   nil,
+   759,   759,   nil,   nil,   759,   nil,   759,   500,   nil,   500,
+   759,   500,   500,   500,   500,   500,   500,   500,   759,   500,
+   nil,   nil,   nil,   759,   759,   759,   759,   759,   759,   nil,
+   nil,   nil,   759,   759,   nil,   nil,   nil,   nil,   nil,   nil,
+   759,   nil,   nil,   759,   759,   759,   nil,   759,   759,   764,
+   764,   764,   764,   764,   764,   nil,   nil,   nil,   764,   764,
+   nil,   nil,   nil,   764,   nil,   764,   764,   764,   764,   764,
+   764,   764,   nil,   nil,   nil,   nil,   nil,   764,   764,   764,
+   764,   764,   764,   764,   nil,   nil,   764,   nil,   nil,   nil,
+   nil,   nil,   764,   764,   764,   764,   764,   764,   764,   764,
+   764,   764,   764,   764,   nil,   764,   764,   764,   nil,   764,
+   764,   nil,   764,   764,   764,   501,   501,   501,   501,   501,
+   501,   501,   nil,   nil,   501,   501,   nil,   nil,   nil,   nil,
+   nil,   501,   501,   nil,   764,   nil,   nil,   764,   nil,   nil,
+   764,   764,   nil,   nil,   764,   nil,   764,   501,   nil,   501,
+   764,   501,   501,   501,   501,   501,   501,   501,   764,   501,
+   nil,   nil,   nil,   764,   764,   764,   764,   764,   764,   nil,
+   nil,   nil,   764,   764,   nil,   nil,   nil,   nil,   nil,   nil,
+   764,   nil,   nil,   764,   764,   764,   nil,   764,   764,   768,
+   768,   768,   768,   768,   768,   nil,   nil,   nil,   768,   768,
+   nil,   nil,   nil,   768,   nil,   768,   768,   768,   768,   768,
+   768,   768,   nil,   nil,   nil,   nil,   nil,   768,   768,   768,
+   768,   768,   768,   768,   nil,   nil,   768,   nil,   nil,   nil,
+   nil,   nil,   768,   768,   768,   768,   768,   768,   768,   768,
+   768,   768,   768,   768,   nil,   768,   768,   768,   nil,   768,
+   768,   nil,   768,   768,   768,   502,   502,   502,   502,   502,
+   502,   502,   nil,   nil,   502,   502,   nil,   nil,   nil,   nil,
+   nil,   502,   502,   nil,   768,   nil,   nil,   768,   nil,   nil,
+   768,   768,   nil,   nil,   768,   nil,   768,   502,   nil,   502,
+   768,   502,   502,   502,   502,   502,   502,   502,   768,   502,
+   nil,   nil,   nil,   768,   768,   768,   768,   768,   768,   nil,
+   nil,   nil,   768,   768,   nil,   nil,   nil,   nil,   nil,   nil,
+   768,   nil,   nil,   768,   768,   768,   nil,   768,   768,   798,
+   798,   798,   798,   798,   798,   nil,   nil,   nil,   798,   798,
+   nil,   nil,   nil,   798,   nil,   798,   798,   798,   798,   798,
+   798,   798,   nil,   nil,   nil,   nil,   nil,   798,   798,   798,
+   798,   798,   798,   798,   nil,   nil,   798,   nil,   nil,   nil,
+   nil,   nil,   798,   798,   798,   798,   798,   798,   798,   798,
+   798,   798,   798,   798,   nil,   798,   798,   798,   nil,   798,
+   798,   nil,   798,   798,   798,   505,   505,   505,   505,   505,
+   505,   505,   nil,   nil,   505,   505,   nil,   nil,   nil,   nil,
+   nil,   505,   505,   nil,   798,   nil,   nil,   798,   nil,   nil,
+   798,   798,   nil,   nil,   798,   nil,   798,   505,   nil,   505,
+   798,   505,   505,   505,   505,   505,   505,   505,   798,   505,
+   nil,   nil,   nil,   798,   798,   798,   798,   798,   798,   nil,
+   nil,   nil,   798,   798,   nil,   nil,   nil,   nil,   nil,   nil,
+   798,   nil,   nil,   798,   798,   798,   nil,   798,   798,   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,   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,   nil,   838,   838,   838,   nil,   838,
+   838,   nil,   838,   838,   838,   506,   506,   506,   506,   506,
+   506,   506,   506,   nil,   506,   506,   nil,   nil,   nil,   nil,
+   nil,   506,   506,   nil,   838,   nil,   nil,   838,   nil,   nil,
+   838,   838,   nil,   nil,   838,   nil,   838,   506,   nil,   506,
+   838,   506,   506,   506,   506,   506,   506,   506,   838,   506,
+   nil,   nil,   nil,   838,   838,   838,   838,   838,   838,   nil,
+   nil,   nil,   838,   838,   nil,   nil,   nil,   nil,   nil,   nil,
+   838,   nil,   nil,   838,   838,   838,   nil,   838,   838,   856,
+   856,   856,   856,   856,   856,   nil,   nil,   nil,   856,   856,
+   nil,   nil,   nil,   856,   nil,   856,   856,   856,   856,   856,
+   856,   856,   nil,   nil,   nil,   nil,   nil,   856,   856,   856,
+   856,   856,   856,   856,   nil,   nil,   856,   nil,   nil,   nil,
+   nil,   nil,   856,   856,   856,   856,   856,   856,   856,   856,
+   856,   856,   856,   856,   nil,   856,   856,   856,   nil,   856,
+   856,   nil,   856,   856,   856,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   856,   nil,   nil,   856,   nil,   nil,
+   856,   856,   nil,   nil,   856,   nil,   856,   nil,   nil,   nil,
+   856,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   856,   nil,
+   nil,   nil,   nil,   856,   856,   856,   856,   856,   856,   nil,
+   nil,   nil,   856,   856,   nil,   nil,   nil,   nil,   nil,   nil,
+   856,   nil,   nil,   856,   856,   856,   nil,   856,   856,   868,
+   868,   868,   868,   868,   868,   nil,   nil,   nil,   868,   868,
+   nil,   nil,   nil,   868,   nil,   868,   868,   868,   868,   868,
+   868,   868,   nil,   nil,   nil,   nil,   nil,   868,   868,   868,
+   868,   868,   868,   868,   nil,   nil,   868,   nil,   nil,   nil,
+   nil,   nil,   868,   868,   868,   868,   868,   868,   868,   868,
+   868,   868,   868,   868,   nil,   868,   868,   868,   nil,   868,
+   868,   nil,   868,   868,   868,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   868,   nil,   nil,   868,   nil,   nil,
+   868,   868,   nil,   nil,   868,   nil,   868,   nil,   nil,   nil,
+   868,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,
+   nil,   nil,   nil,   868,   868,   868,   868,   868,   868,   nil,
+   nil,   nil,   868,   868,   nil,   nil,   nil,   nil,   nil,   nil,
+   868,   nil,   nil,   868,   868,   868,   nil,   868,   868,   888,
+   888,   888,   888,   888,   888,   nil,   nil,   nil,   888,   888,
+   nil,   nil,   nil,   888,   nil,   888,   888,   888,   888,   888,
+   888,   888,   nil,   nil,   nil,   nil,   nil,   888,   888,   888,
+   888,   888,   888,   888,   nil,   nil,   888,   nil,   nil,   nil,
+   nil,   nil,   888,   888,   888,   888,   888,   888,   888,   888,
+   888,   888,   888,   888,   nil,   888,   888,   888,   nil,   888,
+   888,   nil,   888,   888,   888,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   888,   nil,   nil,   888,   nil,   nil,
+   888,   888,   nil,   nil,   888,   nil,   888,   nil,   nil,   nil,
+   888,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   888,   nil,
+   nil,   nil,   nil,   888,   888,   888,   888,   888,   888,   nil,
+   nil,   nil,   888,   888,   nil,   nil,   nil,   nil,   nil,   nil,
+   888,   nil,   nil,   888,   888,   888,   nil,   888,   888,   889,
+   889,   889,   889,   889,   889,   nil,   nil,   nil,   889,   889,
+   nil,   nil,   nil,   889,   nil,   889,   889,   889,   889,   889,
+   889,   889,   nil,   nil,   nil,   nil,   nil,   889,   889,   889,
+   889,   889,   889,   889,   nil,   nil,   889,   nil,   nil,   nil,
+   nil,   nil,   889,   889,   889,   889,   889,   889,   889,   889,
+   889,   889,   889,   889,   nil,   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,   889,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   889,   nil,   nil,   889,   889,   889,   nil,   889,   889,   939,
+   939,   939,   939,   939,   939,   nil,   nil,   nil,   939,   939,
+   nil,   nil,   nil,   939,   nil,   939,   939,   939,   939,   939,
+   939,   939,   nil,   nil,   nil,   nil,   nil,   939,   939,   939,
+   939,   939,   939,   939,   nil,   nil,   939,   nil,   nil,   nil,
+   nil,   nil,   939,   939,   939,   939,   939,   939,   939,   939,
+   939,   939,   939,   939,   nil,   939,   939,   939,   nil,   939,
+   939,   nil,   939,   939,   939,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   939,   nil,   nil,   939,   nil,   nil,
+   939,   939,   nil,   nil,   939,   nil,   939,   nil,   nil,   nil,
+   939,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   939,   nil,
+   nil,   nil,   nil,   939,   939,   939,   939,   939,   939,   nil,
+   nil,   nil,   939,   939,   nil,   nil,   nil,   nil,   nil,   nil,
+   939,   nil,   nil,   939,   939,   939,   nil,   939,   939,   940,
+   940,   940,   940,   940,   940,   nil,   nil,   nil,   940,   940,
+   nil,   nil,   nil,   940,   nil,   940,   940,   940,   940,   940,
+   940,   940,   nil,   nil,   nil,   nil,   nil,   940,   940,   940,
+   940,   940,   940,   940,   nil,   nil,   940,   nil,   nil,   nil,
+   nil,   nil,   940,   940,   940,   940,   940,   940,   940,   940,
+   940,   940,   940,   940,   nil,   940,   940,   940,   nil,   940,
+   940,   nil,   940,   940,   940,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   940,   nil,   nil,   940,   nil,   nil,
+   940,   940,   nil,   nil,   940,   nil,   940,   nil,   nil,   nil,
+   940,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   940,   nil,
+   nil,   nil,   nil,   940,   940,   940,   940,   940,   940,   nil,
+   nil,   nil,   940,   940,   nil,   nil,   nil,   nil,   nil,   nil,
+   940,   nil,   nil,   940,   940,   940,   nil,   940,   940,   952,
+   952,   952,   952,   952,   952,   nil,   nil,   nil,   952,   952,
+   nil,   nil,   nil,   952,   nil,   952,   952,   952,   952,   952,
+   952,   952,   nil,   nil,   nil,   nil,   nil,   952,   952,   952,
+   952,   952,   952,   952,   nil,   nil,   952,   nil,   nil,   nil,
+   nil,   nil,   952,   952,   952,   952,   952,   952,   952,   952,
+   952,   952,   952,   952,   nil,   952,   952,   952,   nil,   952,
+   952,   nil,   952,   952,   952,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   952,   nil,   nil,   952,   nil,   nil,
+   952,   952,   nil,   nil,   952,   nil,   952,   nil,   nil,   nil,
+   952,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   952,   nil,
+   nil,   nil,   nil,   952,   952,   952,   952,   952,   952,   nil,
+   nil,   nil,   952,   952,   nil,   nil,   nil,   nil,   nil,   nil,
+   952,   nil,   nil,   952,   952,   952,   nil,   952,   952,   956,
+   956,   956,   956,   956,   956,   nil,   nil,   nil,   956,   956,
+   nil,   nil,   nil,   956,   nil,   956,   956,   956,   956,   956,
+   956,   956,   nil,   nil,   nil,   nil,   nil,   956,   956,   956,
+   956,   956,   956,   956,   nil,   nil,   956,   nil,   nil,   nil,
+   nil,   nil,   956,   956,   956,   956,   956,   956,   956,   956,
+   956,   956,   956,   956,   nil,   956,   956,   956,   nil,   956,
+   956,   nil,   956,   956,   956,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   956,   nil,   nil,   956,   nil,   nil,
+   956,   956,   nil,   nil,   956,   nil,   956,   nil,   nil,   nil,
+   956,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   956,   nil,
+   nil,   nil,   nil,   956,   956,   956,   956,   956,   956,   nil,
+   nil,   nil,   956,   956,   nil,   nil,   nil,   nil,   nil,   nil,
+   956,   nil,   nil,   956,   956,   956,   nil,   956,   956,   997,
+   997,   997,   997,   997,   997,   nil,   nil,   nil,   997,   997,
+   nil,   nil,   nil,   997,   nil,   997,   997,   997,   997,   997,
+   997,   997,   nil,   nil,   nil,   nil,   nil,   997,   997,   997,
+   997,   997,   997,   997,   nil,   nil,   997,   nil,   nil,   nil,
+   nil,   nil,   997,   997,   997,   997,   997,   997,   997,   997,
+   997,   997,   997,   997,   nil,   997,   997,   997,   nil,   997,
+   997,   nil,   997,   997,   997,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,   nil,   nil,
+   997,   997,   nil,   nil,   997,   nil,   997,   nil,   nil,   nil,
+   997,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,
+   nil,   nil,   nil,   997,   997,   997,   997,   997,   997,   nil,
+   nil,   nil,   997,   997,   nil,   nil,   nil,   nil,   nil,   nil,
+   997,   nil,   nil,   997,   997,   997,   nil,   997,   997,  1004,
+  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,  1004,  1004,
+   nil,   nil,   nil,  1004,   nil,  1004,  1004,  1004,  1004,  1004,
+  1004,  1004,   nil,   nil,   nil,   nil,   nil,  1004,  1004,  1004,
+  1004,  1004,  1004,  1004,   nil,   nil,  1004,   nil,   nil,   nil,
+   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,  1004,  1004,
+  1004,  1004,  1004,  1004,   nil,  1004,  1004,  1004,   nil,  1004,
+  1004,   nil,  1004,  1004,  1004,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1004,   nil,   nil,  1004,   nil,   nil,
+  1004,  1004,   nil,   nil,  1004,   nil,  1004,   nil,   nil,   nil,
+  1004,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,
+   nil,   nil,   nil,  1004,  1004,  1004,  1004,  1004,  1004,   nil,
+   nil,   nil,  1004,  1004,   nil,   nil,   nil,   nil,   nil,   nil,
+  1004,   nil,   nil,  1004,  1004,  1004,   nil,  1004,  1004,  1009,
+  1009,  1009,  1009,  1009,  1009,   nil,   nil,   nil,  1009,  1009,
+   nil,   nil,   nil,  1009,   nil,  1009,  1009,  1009,  1009,  1009,
+  1009,  1009,   nil,   nil,   nil,   nil,   nil,  1009,  1009,  1009,
+  1009,  1009,  1009,  1009,   nil,   nil,  1009,   nil,   nil,   nil,
+   nil,   nil,  1009,  1009,  1009,  1009,  1009,  1009,  1009,  1009,
+  1009,  1009,  1009,  1009,   nil,  1009,  1009,  1009,   nil,  1009,
+  1009,   nil,  1009,  1009,  1009,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1009,   nil,   nil,  1009,   nil,   nil,
+  1009,  1009,   nil,   nil,  1009,   nil,  1009,   nil,   nil,   nil,
+  1009,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1009,   nil,
+   nil,   nil,   nil,  1009,  1009,  1009,  1009,  1009,  1009,   nil,
+   nil,   nil,  1009,  1009,   nil,   nil,   nil,   nil,   nil,   nil,
+  1009,   nil,   nil,  1009,  1009,  1009,   nil,  1009,  1009,     8,
+     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
+   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
+     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
+   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
+     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
+   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
+   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
+   nil,   nil,     8,     8,     8,   nil,     8,     8,    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,   nil,    23,    23,    23,    23,    23,
+    23,    23,   nil,   nil,    23,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,    23,    23,    23,    23,    23,    23,
+    23,    23,   nil,    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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,    23,    23,    23,   nil,    23,    23,    32,    32,    32,
+   nil,    32,   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,
+    32,   nil,    32,    32,    32,    32,    32,    32,    32,   nil,
+   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,
+    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+    32,   nil,   nil,    32,    32,    32,    32,    32,    32,    32,
+    32,    32,    32,    32,    32,   nil,    32,    32,   nil,    32,
+    32,    32,   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,    32,    32,   nil,
+   nil,    32,   nil,    32,   nil,    32,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+    32,    32,    32,    32,    32,    32,   nil,   nil,   nil,    32,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,
+    32,    32,    32,   nil,    32,    32,    33,    33,    33,   nil,
+    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,
+   nil,    33,    33,    33,    33,    33,    33,    33,   nil,   nil,
+   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,    33,
+   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,
+   nil,   nil,    33,    33,    33,    33,    33,    33,    33,    33,
+    33,    33,    33,    33,   nil,    33,    33,   nil,    33,    33,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,
+    33,   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
+    33,    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,
+   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,
+    33,    33,   nil,    33,    33,    34,    34,    34,   nil,    34,
+   nil,   nil,   nil,    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,    34,
+    34,    34,    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,    34,
+    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,    34,
+    34,   nil,    34,    34,    37,    37,    37,   nil,    37,   nil,
+   nil,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,    37,
+    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,   nil,
+   nil,    37,    37,    37,    37,    37,    37,    37,   nil,   nil,
+    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,
+    37,    37,    37,    37,    37,    37,    37,    37,   nil,    37,
+    37,    37,   nil,    37,    37,   nil,   nil,   nil,    37,   nil,
+   nil,   nil,   nil,   nil,   970,   nil,   970,   970,   970,   970,
+   970,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
+   970,    37,   nil,   nil,    37,    37,   nil,   nil,    37,   nil,
+    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   970,   nil,   nil,   nil,   nil,    37,    37,    37,
+    37,    37,    37,   970,   970,   nil,    37,    37,   nil,   nil,
+   nil,   nil,   nil,   nil,    37,   nil,   nil,    37,    37,    37,
+   nil,    37,    37,    38,    38,    38,   nil,    38,   nil,   nil,
+   nil,    38,    38,   nil,   nil,   nil,    38,   970,    38,    38,
+    38,    38,    38,    38,    38,   nil,   nil,   nil,   nil,   nil,
+    38,    38,    38,    38,    38,    38,    38,   nil,   nil,    38,
+   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,
+    38,    38,    38,    38,    38,    38,    38,   nil,    38,    38,
+    38,   nil,    38,    38,   nil,   nil,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   972,   nil,   972,   972,   972,   972,   972,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   972,
+    38,   nil,   nil,    38,    38,   nil,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   972,   nil,   nil,   nil,   nil,    38,    38,    38,    38,
+    38,    38,   972,   972,   nil,    38,    38,   nil,   nil,   nil,
+    38,   nil,   nil,    38,   nil,   nil,    38,    38,    38,   nil,
+    38,    38,    45,    45,    45,   nil,    45,   nil,   nil,   nil,
+    45,    45,   nil,   nil,   nil,    45,   972,    45,    45,    45,
+    45,    45,    45,    45,   nil,   nil,   nil,   nil,   nil,    45,
+    45,    45,    45,    45,    45,    45,   nil,   nil,    45,   nil,
+   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,
+    45,    45,    45,    45,    45,    45,   nil,    45,    45,    45,
+   nil,    45,    45,   nil,    45,    45,    45,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
+   nil,   nil,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,
+   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    45,   nil,   nil,   nil,   nil,    45,    45,    45,    45,    45,
+    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,
+   nil,   nil,    45,   nil,   nil,    45,    45,    45,   nil,    45,
+    45,    46,    46,    46,   nil,    46,   nil,   nil,   nil,    46,
+    46,   nil,   nil,   nil,    46,   nil,    46,    46,    46,    46,
+    46,    46,    46,   nil,   nil,   nil,   nil,   nil,    46,    46,
+    46,    46,    46,    46,    46,   nil,   nil,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,    46,
+    46,    46,    46,    46,    46,   nil,    46,    46,    46,   nil,
+    46,    46,   nil,    46,    46,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,   nil,
+   nil,    46,    46,   nil,   nil,    46,   nil,   nil,   nil,   nil,
+   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,   nil,   nil,    46,    46,    46,    46,    46,    46,
+   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,    46,   nil,   nil,    46,    46,    46,   nil,    46,    46,
+    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,    48,
+   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,    48,
+    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,    48,
+    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,    48,
+    48,    48,    48,    48,   nil,    48,    48,    48,   nil,    48,
+    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,
+    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,   nil,
+   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,    48,    48,    48,   nil,    48,    48,    62,
+    62,    62,    62,    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,    62,    62,   nil,    62,    62,    62,    62,    62,    62,
+    62,    62,    62,   nil,    62,    62,    62,   nil,    62,    62,
+   nil,    62,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    62,   nil,   nil,    62,   nil,   nil,    62,
+    62,   nil,   nil,    62,   nil,    62,   nil,   nil,   nil,    62,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,
+   nil,   nil,    62,    62,    62,    62,    62,    62,   nil,   nil,
+   nil,    62,    62,   nil,   nil,   nil,   nil,   nil,   nil,    62,
+   nil,   nil,    62,    62,    62,   nil,    62,    62,    67,    67,
+    67,   nil,    67,   nil,   nil,   nil,    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,    67,   nil,   nil,   nil,
+   nil,    67,    67,    67,    67,    67,    67,   nil,   nil,   nil,
+    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,    67,    67,    67,   nil,    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,    68,
+    68,    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,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,
+    68,    68,    68,    68,    68,    68,   nil,   nil,   nil,    68,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+    68,    68,    68,   nil,    68,    68,    71,    71,    71,   nil,
+    71,   nil,   nil,   nil,    71,    71,   nil,   nil,   nil,    71,
+   nil,    71,    71,    71,    71,    71,    71,    71,   nil,   nil,
+   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,    71,
+   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,   nil,    71,
+   nil,   nil,    71,    71,    71,    71,    71,    71,    71,    71,
+   nil,    71,    71,    71,   nil,    71,    71,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    71,   nil,   nil,    71,   nil,   nil,    71,    71,   nil,   nil,
+    71,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    71,   nil,   nil,   nil,   nil,    71,
+    71,    71,    71,    71,    71,   nil,   nil,   nil,    71,    71,
+    71,   nil,   nil,   nil,   nil,    71,    71,   nil,   nil,    71,
+    71,    71,   nil,    71,    71,    72,    72,    72,   nil,    72,
+   nil,   nil,   nil,    72,    72,   nil,   nil,   nil,    72,   nil,
+    72,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
+   nil,   nil,    72,    72,    72,    72,    72,    72,    72,   nil,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,    72,    72,    72,    72,    72,    72,    72,    72,   nil,
+    72,    72,    72,   nil,    72,    72,   nil,   nil,   nil,    72,
+   nil,   nil,   nil,   nil,   nil,   988,   nil,   988,   988,   988,
+   988,   988,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
+   nil,   988,    72,   nil,   nil,    72,    72,   nil,   nil,    72,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   988,   nil,   nil,   nil,   nil,    72,    72,
+    72,    72,    72,    72,   988,   988,   nil,    72,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,    72,    72,
+    72,   nil,    72,    72,    73,    73,    73,   nil,    73,   nil,
+   nil,   nil,    73,    73,   nil,   nil,   nil,    73,   988,    73,
+    73,    73,    73,    73,    73,    73,   nil,   nil,   nil,   nil,
+   nil,    73,    73,    73,    73,    73,    73,    73,   nil,   nil,
+    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,
+    73,    73,    73,    73,    73,    73,    73,    73,   nil,    73,
+    73,    73,   nil,    73,    73,   nil,   nil,   nil,    73,   nil,
+   nil,   nil,   nil,   nil,  1050,   nil,  1050,  1050,  1050,  1050,
+  1050,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
+  1050,    73,   nil,   nil,    73,    73,   nil,   nil,    73,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1050,   nil,   nil,   nil,   nil,    73,    73,    73,
+    73,    73,    73,  1050,  1050,   nil,    73,    73,   nil,   nil,
+   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
+   nil,    73,    73,    74,    74,    74,   nil,    74,   nil,   nil,
+   nil,    74,    74,   nil,   nil,   nil,    74,  1050,    74,    74,
+    74,    74,    74,    74,    74,   nil,   nil,   nil,   nil,   nil,
+    74,    74,    74,    74,    74,    74,    74,   nil,   nil,    74,
+   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,   nil,    74,
+    74,    74,    74,    74,    74,    74,    74,   nil,    74,    74,
+    74,   nil,    74,    74,   nil,   nil,   nil,    74,   nil,   nil,
+   nil,   nil,   nil,  1059,   nil,  1059,  1059,  1059,  1059,  1059,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,  1059,
+    74,   nil,   nil,    74,    74,   nil,   nil,    74,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1059,   nil,   nil,   nil,   nil,    74,    74,    74,    74,
+    74,    74,  1059,  1059,   nil,    74,    74,   nil,   nil,   nil,
+   nil,   nil,   nil,    74,   nil,   nil,    74,    74,    74,   nil,
+    74,    74,   128,   128,   128,   128,   128,   nil,   nil,   nil,
+   128,   128,   nil,   nil,   nil,   128,  1059,   128,   128,   128,
+   128,   128,   128,   128,   nil,   nil,   nil,   nil,   nil,   128,
+   128,   128,   128,   128,   128,   128,   nil,   nil,   128,   nil,
+   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,   128,
+   128,   128,   128,   128,   128,   128,   nil,   128,   128,   128,
+   nil,   128,   128,   nil,   128,   128,   128,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,   nil,   128,
+   nil,   nil,   128,   128,   nil,   nil,   128,   nil,   128,   nil,
+   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   128,   nil,   nil,   nil,   nil,   128,   128,   128,   128,   128,
+   128,   nil,   nil,   nil,   128,   128,   nil,   nil,   nil,   nil,
+   nil,   128,   128,   nil,   nil,   128,   128,   128,   nil,   128,
+   128,   133,   133,   133,   nil,   133,   nil,   nil,   nil,   133,
+   133,   nil,   nil,   nil,   133,   nil,   133,   133,   133,   133,
+   133,   133,   133,   nil,   nil,   nil,   nil,   nil,   133,   133,
+   133,   133,   133,   133,   133,   nil,   nil,   133,   nil,   nil,
+   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   133,   133,
+   133,   133,   133,   133,   133,   nil,   133,   133,   133,   nil,
+   133,   133,   nil,   133,   133,   133,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   nil,
+   nil,   133,   133,   nil,   nil,   133,   nil,   nil,   nil,   nil,
+   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,
+   nil,   nil,   nil,   nil,   133,   133,   133,   133,   133,   133,
+   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,   nil,   nil,
+   nil,   133,   nil,   nil,   133,   133,   133,   nil,   133,   133,
+   134,   134,   134,   nil,   134,   nil,   nil,   nil,   134,   134,
+   nil,   nil,   nil,   134,   nil,   134,   134,   134,   134,   134,
+   134,   134,   nil,   nil,   nil,   nil,   nil,   134,   134,   134,
+   134,   134,   134,   134,   nil,   nil,   134,   nil,   nil,   nil,
+   nil,   nil,   nil,   134,   nil,   nil,   134,   134,   134,   134,
+   134,   134,   134,   134,   nil,   134,   134,   134,   nil,   134,
+   134,   nil,   134,   134,   134,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   nil,   nil,
+   134,   134,   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,
+   134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,
+   nil,   nil,   nil,   134,   134,   134,   134,   134,   134,   nil,
+   nil,   nil,   134,   134,   nil,   nil,   nil,   nil,   nil,   nil,
+   134,   nil,   nil,   134,   134,   134,   nil,   134,   134,   135,
+   135,   135,   nil,   135,   nil,   nil,   nil,   135,   135,   nil,
+   nil,   nil,   135,   nil,   135,   135,   135,   135,   135,   135,
+   135,   nil,   nil,   nil,   nil,   nil,   135,   135,   135,   135,
+   135,   135,   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,
+   nil,   nil,   135,   nil,   nil,   135,   135,   135,   135,   135,
+   135,   135,   135,   nil,   135,   135,   135,   nil,   135,   135,
+   nil,   135,   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   135,   nil,   nil,   135,   nil,   nil,   135,
+   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,   nil,   135,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
+   nil,   nil,   135,   135,   135,   135,   135,   135,   nil,   nil,
+   nil,   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,   135,
+   nil,   nil,   135,   135,   135,   nil,   135,   135,   136,   136,
+   136,   nil,   136,   nil,   nil,   nil,   136,   136,   nil,   nil,
+   nil,   136,   nil,   136,   136,   136,   136,   136,   136,   136,
+   nil,   nil,   nil,   nil,   nil,   136,   136,   136,   136,   136,
+   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
+   nil,   136,   nil,   nil,   136,   136,   136,   136,   136,   136,
+   136,   136,   nil,   136,   136,   136,   nil,   136,   136,   nil,
+   136,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,   136,   136,
+   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,   136,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,   nil,
+   nil,   136,   136,   136,   136,   136,   136,   nil,   nil,   nil,
+   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
+   nil,   136,   136,   136,   nil,   136,   136,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
+   137,   nil,   137,   137,   137,   137,   137,   137,   137,   nil,
+   nil,   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,
+   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   137,
+   137,   nil,   137,   137,   137,   137,   137,   137,   137,   137,
+   137,   nil,   137,   137,   137,   nil,   137,   137,   nil,   137,
+   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   137,   nil,   nil,   137,   nil,   nil,   137,   137,   nil,
+   nil,   137,   nil,   137,   nil,   nil,   nil,   137,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,
+   137,   137,   137,   137,   137,   137,   nil,   nil,   nil,   137,
+   137,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
+   137,   137,   137,   nil,   137,   137,   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,   nil,   222,   222,   222,   222,   222,   222,   222,
+   nil,   nil,   222,   nil,   nil,   nil,   nil,   nil,   nil,   222,
+   nil,   nil,   222,   222,   222,   222,   222,   222,   222,   222,
+   nil,   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,   222,   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,   nil,   nil,   nil,   222,   nil,   nil,   222,
+   222,   222,   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,   nil,   223,   223,   223,   223,   223,   223,   223,   nil,
+   nil,   223,   nil,   nil,   nil,   nil,   nil,   nil,   223,   nil,
+   nil,   223,   223,   223,   223,   223,   223,   223,   223,   nil,
+   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,   223,   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,   nil,   nil,   nil,   223,   nil,   nil,   223,   223,
+   223,   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,
+   nil,   224,   224,   224,   224,   224,   224,   224,   nil,   nil,
+   224,   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,
+   224,   224,   224,   224,   224,   224,   224,   224,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,   224,   224,
+   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,   nil,
+   225,   225,   225,   225,   225,   225,   225,   nil,   nil,   225,
+   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,   225,
+   225,   225,   225,   225,   225,   225,   225,   nil,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   225,   nil,   nil,   225,   225,   225,   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,   nil,   226,
+   226,   226,   226,   226,   226,   226,   nil,   nil,   226,   nil,
+   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
+   226,   226,   226,   226,   226,   226,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   226,   nil,   nil,   226,   226,   226,   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,   nil,   227,   227,
+   227,   227,   227,   227,   227,   nil,   nil,   227,   nil,   nil,
+   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,   227,   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,   227,   nil,   227,
+   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,   nil,   nil,
+   nil,   227,   nil,   227,   227,   227,   227,   nil,   227,   227,
+   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,   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,   232,   nil,
+   nil,   nil,   nil,   232,   232,   232,   232,   232,   232,   nil,
+   nil,   nil,   232,   232,   nil,   nil,   nil,   nil,   nil,   nil,
+   232,   nil,   nil,   232,   232,   232,   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,   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,   233,   nil,   nil,
+   nil,   nil,   233,   233,   233,   233,   233,   233,   nil,   nil,
+   nil,   233,   233,   nil,   nil,   nil,   nil,   nil,   nil,   233,
+   nil,   nil,   233,   233,   233,   nil,   233,   233,   234,   234,
+   234,   nil,   234,   nil,   nil,   nil,   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,   234,   nil,   nil,   nil,
+   nil,   234,   234,   234,   234,   234,   234,   nil,   nil,   nil,
+   234,   234,   234,   nil,   nil,   nil,   nil,   nil,   234,   nil,
+   nil,   234,   234,   234,   nil,   234,   234,   245,   245,   245,
+   nil,   245,   nil,   nil,   nil,   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,   245,   nil,   nil,   nil,   nil,
+   245,   245,   245,   245,   245,   245,   nil,   nil,   nil,   245,
+   245,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   245,   245,   245,   nil,   245,   245,   248,   248,   248,   nil,
+   248,   nil,   nil,   nil,   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,   248,   nil,   nil,   nil,   nil,   248,
+   248,   248,   248,   248,   248,   nil,   nil,   nil,   248,   248,
+   nil,   nil,   nil,   nil,   nil,   nil,   248,   nil,   nil,   248,
+   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,   nil,   nil,   249,   249,
+   249,   249,   249,   249,   nil,   nil,   nil,   249,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   249,   249,
+   249,   nil,   249,   249,   250,   250,   250,   nil,   250,   nil,
+   nil,   nil,   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,   250,   nil,   nil,   nil,   nil,   250,   250,   250,
+   250,   250,   250,   nil,   nil,   nil,   250,   250,   nil,   nil,
+   nil,   nil,   nil,   nil,   250,   nil,   nil,   250,   250,   250,
+   nil,   250,   250,   251,   251,   251,   nil,   251,   nil,   nil,
+   nil,   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,   251,   nil,   nil,   nil,   nil,   251,   251,   251,   251,
+   251,   251,   nil,   nil,   nil,   251,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,   251,   nil,   nil,   251,   251,   251,   nil,
+   251,   251,   252,   252,   252,   nil,   252,   nil,   nil,   nil,
+   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,
+   252,   nil,   nil,   nil,   nil,   252,   252,   252,   252,   252,
+   252,   nil,   nil,   nil,   252,   252,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   252,   252,   252,   nil,   252,
+   252,   253,   253,   253,   nil,   253,   nil,   nil,   nil,   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,   253,
+   nil,   nil,   nil,   nil,   253,   253,   253,   253,   253,   253,
+   nil,   nil,   nil,   253,   253,   nil,   nil,   nil,   nil,   nil,
+   nil,   253,   nil,   nil,   253,   253,   253,   nil,   253,   253,
+   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,   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,   254,   nil,
+   nil,   nil,   nil,   254,   254,   254,   254,   254,   254,   nil,
+   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,   nil,   nil,
+   254,   nil,   nil,   254,   254,   254,   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,   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,   255,   nil,   nil,
+   nil,   nil,   255,   255,   255,   255,   255,   255,   nil,   nil,
+   nil,   255,   255,   nil,   nil,   nil,   nil,   nil,   nil,   255,
+   nil,   nil,   255,   255,   255,   nil,   255,   255,   256,   256,
+   256,   nil,   256,   nil,   nil,   nil,   256,   256,   nil,   nil,
+   nil,   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,   256,   256,   256,   256,
+   256,   256,   nil,   256,   256,   256,   nil,   256,   256,   nil,
+   256,   256,   256,   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,   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,   nil,   nil,   nil,   256,   nil,
+   nil,   256,   256,   256,   nil,   256,   256,   257,   257,   257,
+   nil,   257,   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,
+   257,   nil,   257,   257,   257,   257,   257,   257,   257,   nil,
+   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,   257,
+   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   257,   257,   257,   257,   257,   257,   257,
+   257,   nil,   257,   257,   257,   nil,   257,   257,   nil,   257,
+   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   257,   nil,   nil,   257,   257,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   257,   257,   257,   257,   257,   257,   nil,   nil,   nil,   257,
+   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   257,   257,   257,   nil,   257,   257,   258,   258,   258,   nil,
+   258,   nil,   nil,   nil,   258,   258,   nil,   nil,   nil,   258,
+   nil,   258,   258,   258,   258,   258,   258,   258,   nil,   nil,
+   nil,   nil,   nil,   258,   258,   258,   258,   258,   258,   258,
+   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,
+   nil,   nil,   258,   258,   258,   258,   258,   258,   258,   258,
+   nil,   258,   258,   258,   nil,   258,   258,   nil,   258,   258,
+   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   258,   nil,   nil,   258,   nil,   nil,   258,   258,   nil,   nil,
+   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,   258,
+   258,   258,   258,   258,   258,   nil,   nil,   nil,   258,   258,
+   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,
+   258,   258,   nil,   258,   258,   259,   259,   259,   nil,   259,
+   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,   259,   nil,
+   259,   259,   259,   259,   259,   259,   259,   nil,   nil,   nil,
+   nil,   nil,   259,   259,   259,   259,   259,   259,   259,   nil,
+   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,
+   nil,   259,   259,   259,   259,   259,   259,   259,   259,   nil,
+   259,   259,   259,   nil,   259,   259,   nil,   259,   259,   259,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   259,
+   nil,   nil,   259,   nil,   nil,   259,   259,   nil,   nil,   259,
+   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,   259,   259,
+   259,   259,   259,   259,   nil,   nil,   nil,   259,   259,   nil,
+   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,   259,
+   259,   nil,   259,   259,   260,   260,   260,   nil,   260,   nil,
+   nil,   nil,   260,   260,   nil,   nil,   nil,   260,   nil,   260,
+   260,   260,   260,   260,   260,   260,   nil,   nil,   nil,   nil,
+   nil,   260,   260,   260,   260,   260,   260,   260,   nil,   nil,
+   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,
+   260,   260,   260,   260,   260,   260,   260,   260,   nil,   260,
+   260,   260,   nil,   260,   260,   nil,   260,   260,   260,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,
+   nil,   260,   nil,   nil,   260,   260,   nil,   nil,   260,   nil,
+   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   260,   nil,   nil,   nil,   nil,   260,   260,   260,
+   260,   260,   260,   nil,   nil,   nil,   260,   260,   nil,   nil,
+   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,   260,   260,
+   nil,   260,   260,   261,   261,   261,   nil,   261,   nil,   nil,
+   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,   nil,   261,   261,
+   261,   nil,   261,   261,   nil,   261,   261,   261,   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,   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,
+   nil,   nil,   nil,   261,   nil,   nil,   261,   261,   261,   nil,
+   261,   261,   262,   262,   262,   nil,   262,   nil,   nil,   nil,
+   262,   262,   nil,   nil,   nil,   262,   nil,   262,   262,   262,
+   262,   262,   262,   262,   nil,   nil,   nil,   nil,   nil,   262,
+   262,   262,   262,   262,   262,   262,   nil,   nil,   262,   nil,
+   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,
+   262,   262,   262,   262,   262,   262,   nil,   262,   262,   262,
+   nil,   262,   262,   nil,   262,   262,   262,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,
+   nil,   nil,   262,   262,   nil,   nil,   262,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   262,   nil,   nil,   nil,   nil,   262,   262,   262,   262,   262,
+   262,   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   262,   262,   262,   nil,   262,
+   262,   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,   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,   nil,   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,   nil,   nil,   nil,
+   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   263,   nil,   nil,   263,   263,   263,   nil,   263,   263,
+   264,   264,   264,   nil,   264,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,
+   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   264,   nil,
+   nil,   nil,   nil,   264,   264,   264,   264,   264,   264,   nil,
+   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,   nil,   nil,
+   264,   nil,   nil,   264,   264,   264,   nil,   264,   264,   265,
+   265,   265,   nil,   265,   nil,   nil,   nil,   265,   265,   nil,
+   nil,   nil,   265,   nil,   265,   265,   265,   265,   265,   265,
+   265,   nil,   nil,   nil,   nil,   nil,   265,   265,   265,   265,
+   265,   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   265,   265,   265,   265,   265,
+   265,   265,   265,   nil,   265,   265,   265,   nil,   265,   265,
+   nil,   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,   265,
+   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   265,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,
+   nil,   nil,   265,   265,   265,   265,   265,   265,   nil,   nil,
+   nil,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,
+   nil,   nil,   265,   265,   265,   nil,   265,   265,   266,   266,
+   266,   nil,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,
+   nil,   266,   nil,   266,   266,   266,   266,   266,   266,   266,
+   nil,   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,
+   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   266,   266,   266,   266,   266,   266,
+   266,   266,   nil,   266,   266,   266,   nil,   266,   266,   nil,
+   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   266,   nil,   nil,   266,   nil,   nil,   266,   266,
+   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,
+   nil,   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,
+   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,
+   nil,   266,   266,   266,   nil,   266,   266,   267,   267,   267,
+   nil,   267,   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,
+   267,   nil,   267,   267,   267,   267,   267,   267,   267,   nil,
+   nil,   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,
+   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,
+   267,   nil,   nil,   267,   267,   267,   267,   267,   267,   267,
+   267,   nil,   267,   267,   267,   nil,   267,   267,   nil,   267,
+   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   267,   nil,   nil,   267,   nil,   nil,   267,   267,   nil,
+   nil,   267,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,   nil,
+   267,   267,   267,   267,   267,   267,   nil,   nil,   nil,   267,
+   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   267,   267,   267,   nil,   267,   267,   268,   268,   268,   nil,
+   268,   nil,   nil,   nil,   268,   268,   nil,   nil,   nil,   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,   268,   268,   268,   268,   268,   268,
+   nil,   268,   268,   268,   nil,   268,   268,   nil,   268,   268,
+   268,   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,   268,   nil,   nil,
+   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,   268,
+   268,   268,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,   269,   nil,
+   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,   269,   nil,
+   nil,   269,   269,   269,   269,   269,   269,   269,   269,   nil,
+   269,   269,   269,   nil,   269,   269,   nil,   269,   269,   269,
+   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,   269,   nil,   nil,   269,
+   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,   269,   269,
+   269,   nil,   269,   269,   274,   274,   274,   nil,   274,   nil,
+   nil,   nil,   274,   274,   nil,   nil,   nil,   274,   nil,   274,
+   274,   274,   274,   274,   274,   274,   nil,   nil,   nil,   nil,
+   nil,   274,   274,   274,   274,   274,   274,   274,   nil,   nil,
+   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,
+   274,   274,   274,   274,   274,   274,   274,   274,   nil,   274,
+   274,   274,   nil,   274,   274,   nil,   274,   274,   274,   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,   274,   274,   nil,   nil,   274,   nil,
+   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,   274,   274,
+   274,   274,   274,   nil,   nil,   nil,   274,   274,   nil,   nil,
+   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,   274,
+   nil,   274,   274,   282,   282,   282,   nil,   282,   nil,   nil,
+   nil,   282,   282,   nil,   nil,   nil,   282,   nil,   282,   282,
+   282,   282,   282,   282,   282,   nil,   nil,   nil,   nil,   nil,
+   282,   282,   282,   282,   282,   282,   282,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   282,
+   282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
+   282,   nil,   282,   282,   nil,   282,   282,   282,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
+   282,   nil,   nil,   282,   282,   nil,   nil,   282,   nil,   282,
+   nil,   282,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   282,   nil,   nil,   nil,   nil,   282,   282,   282,   282,
+   282,   282,   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   282,   282,   282,   282,   nil,
+   282,   282,   283,   283,   283,   nil,   283,   nil,   nil,   nil,
+   283,   283,   nil,   nil,   nil,   283,   nil,   283,   283,   283,
+   283,   283,   283,   283,   nil,   nil,   nil,   nil,   nil,   283,
+   283,   283,   283,   283,   283,   283,   nil,   nil,   283,   nil,
+   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,   283,
+   283,   283,   283,   283,   283,   283,   283,   283,   283,   283,
+   nil,   283,   283,   nil,   283,   283,   283,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,
+   nil,   nil,   283,   283,   nil,   nil,   283,   nil,   283,   nil,
+   283,   nil,   283,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   283,   nil,   nil,   nil,   nil,   283,   283,   283,   283,   283,
+   283,   nil,   nil,   nil,   283,   283,   nil,   nil,   nil,   nil,
+   nil,   nil,   283,   nil,   283,   283,   283,   283,   nil,   283,
+   283,   292,   292,   292,   nil,   292,   nil,   nil,   nil,   292,
+   292,   nil,   nil,   nil,   292,   nil,   292,   292,   292,   292,
+   292,   292,   292,   nil,   nil,   nil,   nil,   nil,   292,   292,
+   292,   292,   292,   292,   292,   nil,   nil,   292,   nil,   nil,
+   nil,   nil,   nil,   nil,   292,   nil,   nil,   292,   292,   292,
+   292,   292,   292,   292,   292,   292,   292,   292,   292,   nil,
+   292,   292,   nil,   292,   292,   292,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   292,   nil,   nil,   292,   nil,
+   nil,   292,   292,   nil,   nil,   292,   nil,   292,   nil,   292,
+   nil,   292,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   292,
+   nil,   nil,   nil,   nil,   292,   292,   292,   292,   292,   292,
+   nil,   nil,   nil,   292,   292,   292,   nil,   nil,   nil,   nil,
+   nil,   292,   nil,   292,   292,   292,   292,   nil,   292,   292,
+   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,   nil,   299,   299,   299,
+   299,   299,   299,   299,   nil,   nil,   299,   nil,   nil,   nil,
+   nil,   nil,   nil,   299,   nil,   nil,   299,   299,   299,   299,
+   299,   299,   299,   299,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   299,   nil,   nil,   299,   299,   299,   nil,   299,   299,   301,
+   301,   301,   nil,   301,   nil,   nil,   nil,   301,   301,   nil,
+   nil,   nil,   301,   nil,   301,   301,   301,   301,   301,   301,
+   301,   nil,   nil,   nil,   nil,   nil,   301,   301,   301,   301,
+   301,   301,   301,   nil,   nil,   301,   nil,   nil,   nil,   nil,
+   nil,   nil,   301,   nil,   nil,   301,   301,   301,   301,   301,
+   301,   301,   301,   nil,   301,   301,   301,   nil,   301,   301,
+   nil,   301,   301,   301,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   301,   nil,   nil,   301,   nil,   nil,   301,
+   301,   nil,   nil,   301,   nil,   nil,   nil,   nil,   nil,   301,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,
+   nil,   nil,   301,   301,   301,   301,   301,   301,   nil,   nil,
+   nil,   301,   301,   nil,   nil,   nil,   nil,   nil,   nil,   301,
+   nil,   nil,   301,   301,   301,   nil,   301,   301,   304,   304,
+   304,   nil,   304,   nil,   nil,   nil,   304,   304,   nil,   nil,
+   nil,   304,   nil,   304,   304,   304,   304,   304,   304,   304,
+   nil,   nil,   nil,   nil,   nil,   304,   304,   304,   304,   304,
+   304,   304,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
+   nil,   304,   nil,   nil,   304,   304,   304,   304,   304,   304,
+   304,   304,   nil,   304,   304,   304,   nil,   304,   304,   nil,
+   304,   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   304,   nil,   nil,   304,   nil,   nil,   304,   304,
+   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,
+   nil,   304,   304,   304,   304,   304,   304,   nil,   nil,   nil,
+   304,   304,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   304,   304,   304,   nil,   304,   304,   305,   305,   305,
+   nil,   305,   nil,   nil,   nil,   305,   305,   nil,   nil,   nil,
+   305,   nil,   305,   305,   305,   305,   305,   305,   305,   nil,
+   nil,   nil,   nil,   nil,   305,   305,   305,   305,   305,   305,
+   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,   nil,   nil,
+   305,   nil,   nil,   305,   305,   305,   305,   305,   305,   305,
+   305,   nil,   305,   305,   305,   nil,   305,   305,   nil,   305,
+   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   305,   nil,   nil,   305,   nil,   nil,   305,   305,   nil,
+   nil,   305,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,   nil,   nil,
+   305,   305,   305,   305,   305,   305,   nil,   nil,   nil,   305,
+   305,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,
+   305,   305,   305,   nil,   305,   305,   311,   311,   311,   311,
+   311,   nil,   nil,   nil,   311,   311,   nil,   nil,   nil,   311,
+   nil,   311,   311,   311,   311,   311,   311,   311,   nil,   nil,
+   nil,   nil,   nil,   311,   311,   311,   311,   311,   311,   311,
+   nil,   nil,   311,   nil,   nil,   nil,   nil,   nil,   311,   311,
+   nil,   311,   311,   311,   311,   311,   311,   311,   311,   311,
+   nil,   311,   311,   311,   nil,   311,   311,   nil,   311,   311,
+   311,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   311,   nil,   nil,   311,   nil,   nil,   311,   311,   nil,   nil,
+   311,   nil,   311,   nil,   nil,   nil,   311,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   311,   nil,   nil,   nil,   nil,   311,
+   311,   311,   311,   311,   311,   nil,   nil,   nil,   311,   311,
+   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,   nil,   311,
+   311,   311,   nil,   311,   311,   319,   319,   319,   nil,   319,
+   nil,   nil,   nil,   319,   319,   nil,   nil,   nil,   319,   nil,
+   319,   319,   319,   319,   319,   319,   319,   nil,   nil,   nil,
+   nil,   nil,   319,   319,   319,   319,   319,   319,   319,   nil,
+   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,   319,   nil,
+   nil,   319,   319,   319,   319,   319,   319,   319,   319,   nil,
+   319,   319,   319,   nil,   319,   319,   nil,   nil,   nil,   319,
+   nil,   nil,   nil,   nil,   nil,  1061,   nil,  1061,  1061,  1061,
+  1061,  1061,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   319,
+   nil,  1061,   319,   nil,   nil,   319,   319,   nil,   nil,   319,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1061,   nil,   nil,   nil,   nil,   319,   319,
+   319,   319,   319,   319,  1061,  1061,   nil,   319,   319,   nil,
+   nil,   nil,   319,   nil,   nil,   319,   nil,   nil,   319,   319,
+   319,   nil,   319,   319,   336,   336,   336,   nil,   336,   nil,
+   nil,   nil,   336,   336,   nil,   nil,   nil,   336,  1061,   336,
+   336,   336,   336,   336,   336,   336,   nil,   nil,   nil,   nil,
+   nil,   336,   336,   336,   336,   336,   336,   336,   nil,   nil,
+   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,
+   336,   336,   336,   336,   336,   336,   336,   336,   nil,   336,
+   336,   336,   nil,   336,   336,   nil,   nil,   nil,   336,   nil,
+   nil,   nil,   nil,   nil,  1063,   nil,  1063,  1063,  1063,  1063,
+  1063,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,
+  1063,   336,   nil,   nil,   336,   336,   nil,   nil,   336,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1063,   nil,   nil,   nil,   nil,   336,   336,   336,
+   336,   336,   336,  1063,  1063,   nil,   336,   336,   nil,   nil,
+   nil,   nil,   nil,   nil,   336,   nil,   nil,   336,   336,   336,
+   nil,   336,   336,   343,   343,   343,   nil,   343,   nil,   nil,
+   nil,   343,   343,   nil,   nil,   nil,   343,  1063,   343,   343,
+   343,   343,   343,   343,   343,   nil,   nil,   nil,   nil,   nil,
+   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   343,
+   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,
+   343,   343,   343,   343,   343,   343,   343,   nil,   343,   343,
+   343,   nil,   343,   343,   nil,   343,   343,   343,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,
+   343,   nil,   nil,   343,   343,   nil,   nil,   343,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   343,   nil,   nil,   nil,   nil,   343,   343,   343,   343,
+   343,   343,   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   343,   343,   343,   nil,
+   343,   343,   345,   345,   345,   nil,   345,   nil,   nil,   nil,
+   345,   345,   nil,   nil,   nil,   345,   nil,   345,   345,   345,
+   345,   345,   345,   345,   nil,   nil,   nil,   nil,   nil,   345,
+   345,   345,   345,   345,   345,   345,   nil,   nil,   345,   nil,
+   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,   345,
+   345,   345,   345,   345,   345,   345,   nil,   345,   345,   345,
+   nil,   345,   345,   nil,   345,   345,   345,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,
+   345,   nil,   345,   345,   nil,   nil,   345,   nil,   nil,   nil,
+   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   345,   nil,   nil,   nil,   nil,   345,   345,   345,   345,   345,
+   345,   nil,   nil,   nil,   345,   345,   nil,   nil,   nil,   nil,
+   nil,   nil,   345,   nil,   nil,   345,   345,   345,   nil,   345,
+   345,   349,   349,   349,   nil,   349,   nil,   nil,   nil,   349,
+   349,   nil,   nil,   nil,   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,   349,
+   349,   349,   349,   349,   349,   349,   349,   349,   349,   nil,
+   349,   349,   nil,   349,   349,   349,   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,   349,   nil,   nil,   349,   nil,   349,   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,   nil,   nil,
+   nil,   349,   nil,   349,   349,   349,   349,   nil,   349,   349,
+   350,   350,   350,   nil,   350,   nil,   nil,   nil,   350,   350,
+   nil,   nil,   nil,   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,   350,   350,
+   350,   350,   350,   350,   350,   350,   350,   350,   nil,   350,
+   350,   nil,   350,   350,   350,   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,   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,   nil,   nil,   nil,
+   350,   nil,   350,   350,   350,   350,   nil,   350,   350,   355,
+   355,   355,   nil,   355,   nil,   nil,   nil,   355,   355,   nil,
+   nil,   nil,   355,   nil,   355,   355,   355,   355,   355,   355,
+   355,   nil,   nil,   nil,   nil,   nil,   355,   355,   355,   355,
+   355,   355,   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,
+   nil,   nil,   355,   nil,   nil,   355,   355,   355,   355,   355,
+   355,   355,   355,   nil,   355,   355,   355,   nil,   355,   355,
+   nil,   355,   355,   355,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   355,   nil,   nil,   355,   nil,   nil,   355,
+   355,   nil,   nil,   355,   nil,   nil,   nil,   nil,   nil,   355,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,
+   nil,   nil,   355,   355,   355,   355,   355,   355,   nil,   nil,
+   nil,   355,   355,   nil,   nil,   nil,   nil,   nil,   nil,   355,
+   nil,   nil,   355,   355,   355,   nil,   355,   355,   376,   376,
+   376,   nil,   376,   nil,   nil,   nil,   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,   376,   nil,   nil,   nil,
+   nil,   376,   376,   376,   376,   376,   376,   nil,   nil,   nil,
+   376,   376,   nil,   nil,   nil,   nil,   nil,   nil,   376,   nil,
+   nil,   376,   376,   376,   nil,   376,   376,   437,   437,   437,
+   nil,   437,   nil,   nil,   nil,   437,   437,   nil,   nil,   nil,
+   437,   nil,   437,   437,   437,   437,   437,   437,   437,   nil,
+   nil,   nil,   nil,   nil,   437,   437,   437,   437,   437,   437,
+   437,   nil,   nil,   437,   nil,   nil,   nil,   nil,   nil,   nil,
+   437,   nil,   nil,   437,   437,   437,   437,   437,   437,   437,
+   437,   nil,   437,   437,   437,   nil,   437,   437,   nil,   437,
+   437,   437,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   437,   nil,   nil,   437,   nil,   nil,   437,   437,   nil,
+   nil,   437,   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,   nil,   nil,
+   437,   437,   437,   437,   437,   437,   nil,   nil,   nil,   437,
+   437,   nil,   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,
+   437,   437,   437,   nil,   437,   437,   481,   481,   481,   nil,
+   481,   nil,   nil,   nil,   481,   481,   nil,   nil,   nil,   481,
+   nil,   481,   481,   481,   481,   481,   481,   481,   nil,   nil,
+   nil,   nil,   nil,   481,   481,   481,   481,   481,   481,   481,
+   nil,   nil,   481,   nil,   nil,   nil,   nil,   nil,   nil,   481,
+   nil,   nil,   481,   481,   481,   481,   481,   481,   481,   481,
+   481,   481,   481,   481,   nil,   481,   481,   nil,   481,   481,
+   481,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   481,   nil,   nil,   481,   nil,   nil,   481,   481,   nil,   nil,
+   481,   nil,   481,   nil,   481,   nil,   481,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   481,   nil,   nil,   nil,   nil,   481,
+   481,   481,   481,   481,   481,   nil,   nil,   nil,   481,   481,
+   nil,   nil,   nil,   nil,   nil,   nil,   481,   nil,   481,   481,
+   481,   481,   nil,   481,   481,   483,   483,   483,   nil,   483,
+   nil,   nil,   nil,   483,   483,   nil,   nil,   nil,   483,   nil,
+   483,   483,   483,   483,   483,   483,   483,   nil,   nil,   nil,
+   nil,   nil,   483,   483,   483,   483,   483,   483,   483,   nil,
+   nil,   483,   nil,   nil,   nil,   nil,   nil,   nil,   483,   nil,
+   nil,   483,   483,   483,   483,   483,   483,   483,   483,   nil,
+   483,   483,   483,   nil,   483,   483,   nil,   483,   483,   483,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   483,
+   nil,   nil,   483,   nil,   nil,   483,   483,   nil,   nil,   483,
+   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   483,   nil,   nil,   nil,   nil,   483,   483,
+   483,   483,   483,   483,   nil,   nil,   nil,   483,   483,   nil,
+   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,   483,   483,
+   483,   nil,   483,   483,   484,   484,   484,   nil,   484,   nil,
+   nil,   nil,   484,   484,   nil,   nil,   nil,   484,   nil,   484,
+   484,   484,   484,   484,   484,   484,   nil,   nil,   nil,   nil,
+   nil,   484,   484,   484,   484,   484,   484,   484,   nil,   nil,
+   484,   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,   nil,
+   484,   484,   484,   484,   484,   484,   484,   484,   nil,   484,
+   484,   484,   nil,   484,   484,   nil,   484,   484,   484,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,
+   nil,   484,   nil,   nil,   484,   484,   nil,   nil,   484,   nil,
+   nil,   nil,   nil,   nil,   484,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   484,   nil,   nil,   nil,   nil,   484,   484,   484,
+   484,   484,   484,   nil,   nil,   nil,   484,   484,   nil,   nil,
+   nil,   nil,   nil,   nil,   484,   nil,   nil,   484,   484,   484,
+   nil,   484,   484,   485,   485,   485,   nil,   485,   nil,   nil,
+   nil,   485,   485,   nil,   nil,   nil,   485,   nil,   485,   485,
+   485,   485,   485,   485,   485,   nil,   nil,   nil,   nil,   nil,
+   485,   485,   485,   485,   485,   485,   485,   nil,   nil,   485,
+   nil,   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,   485,
+   485,   485,   485,   485,   485,   485,   485,   nil,   485,   485,
+   485,   nil,   485,   485,   nil,   485,   485,   485,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,
+   485,   nil,   nil,   485,   485,   nil,   nil,   485,   nil,   nil,
+   nil,   nil,   nil,   485,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   485,   nil,   nil,   nil,   nil,   485,   485,   485,   485,
+   485,   485,   nil,   nil,   nil,   485,   485,   nil,   nil,   nil,
+   nil,   nil,   nil,   485,   nil,   nil,   485,   485,   485,   nil,
+   485,   485,   523,   523,   523,   nil,   523,   nil,   nil,   nil,
+   523,   523,   nil,   nil,   nil,   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,
+   523,   523,   523,   523,   523,   523,   523,   523,   523,   523,
+   nil,   523,   523,   nil,   523,   523,   523,   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,   523,   nil,   nil,   523,   nil,   523,   nil,
+   523,   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,   nil,
+   nil,   nil,   523,   nil,   523,   523,   523,   523,   nil,   523,
+   523,   526,   526,   526,   nil,   526,   nil,   nil,   nil,   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,   nil,   nil,   526,
+   nil,   526,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   526,
+   nil,   nil,   nil,   nil,   526,   526,   526,   526,   526,   526,
+   nil,   nil,   nil,   526,   526,   nil,   nil,   nil,   nil,   nil,
+   nil,   526,   nil,   526,   526,   526,   526,   nil,   526,   526,
+   528,   528,   528,   nil,   528,   nil,   nil,   nil,   528,   528,
+   nil,   nil,   nil,   528,   nil,   528,   528,   528,   528,   528,
+   528,   528,   nil,   nil,   nil,   nil,   nil,   528,   528,   528,
+   528,   528,   528,   528,   nil,   nil,   528,   nil,   nil,   nil,
+   nil,   nil,   nil,   528,   nil,   nil,   528,   528,   528,   528,
+   528,   528,   528,   528,   nil,   528,   528,   528,   nil,   528,
+   528,   nil,   528,   528,   528,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   528,   nil,   nil,   528,   nil,   nil,
+   528,   528,   nil,   nil,   528,   nil,   nil,   nil,   nil,   nil,
+   528,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,
+   nil,   nil,   nil,   528,   528,   528,   528,   528,   528,   nil,
+   nil,   nil,   528,   528,   nil,   nil,   nil,   nil,   nil,   nil,
+   528,   nil,   nil,   528,   528,   528,   nil,   528,   528,   534,
+   534,   534,   534,   534,   nil,   nil,   nil,   534,   534,   nil,
+   nil,   nil,   534,   nil,   534,   534,   534,   534,   534,   534,
+   534,   nil,   nil,   nil,   nil,   nil,   534,   534,   534,   534,
+   534,   534,   534,   nil,   nil,   534,   nil,   nil,   nil,   nil,
+   nil,   534,   534,   534,   534,   534,   534,   534,   534,   534,
+   534,   534,   534,   nil,   534,   534,   534,   nil,   534,   534,
+   nil,   534,   534,   534,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   534,   nil,   nil,   534,   nil,   nil,   534,
+   534,   nil,   nil,   534,   nil,   534,   nil,   nil,   nil,   534,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   534,   nil,   nil,
+   nil,   nil,   534,   534,   534,   534,   534,   534,   nil,   nil,
+   nil,   534,   534,   nil,   nil,   nil,   nil,   nil,   534,   534,
+   nil,   nil,   534,   534,   534,   nil,   534,   534,   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,   nil,   542,   542,   542,   542,   542,
+   542,   542,   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,
+   nil,   542,   nil,   nil,   542,   542,   542,   542,   542,   542,
+   542,   542,   nil,   542,   542,   542,   nil,   542,   542,   nil,
+   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,  1084,   nil,
+  1084,  1084,  1084,  1084,  1084,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   542,   nil,  1084,   542,   nil,   nil,   542,   542,
+   nil,   nil,   542,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1084,   nil,   nil,   nil,
+   nil,   542,   542,   542,   542,   542,   542,  1084,  1084,   nil,
+   542,   542,   nil,   nil,   nil,   nil,   nil,   nil,   542,   nil,
+   nil,   542,   542,   542,   nil,   542,   542,   544,   544,   544,
+   nil,   544,   nil,   nil,   nil,   544,   544,   nil,   nil,   nil,
+   544,  1084,   544,   544,   544,   544,   544,   544,   544,   nil,
+   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,   544,
+   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
+   544,   nil,   nil,   544,   544,   544,   544,   544,   544,   544,
+   544,   544,   544,   544,   544,   nil,   544,   544,   nil,   544,
+   544,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   544,   nil,   nil,   544,   nil,   nil,   544,   544,   nil,
+   nil,   544,   nil,   544,   nil,   544,   nil,   544,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   nil,   nil,
+   544,   544,   544,   544,   544,   544,   nil,   nil,   nil,   544,
+   544,   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   544,
+   544,   544,   544,   nil,   544,   544,   550,   550,   550,   nil,
+   550,   nil,   nil,   nil,   550,   550,   nil,   nil,   nil,   550,
+   nil,   550,   550,   550,   550,   550,   550,   550,   nil,   nil,
+   nil,   nil,   nil,   550,   550,   550,   550,   550,   550,   550,
+   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,
+   nil,   nil,   550,   550,   550,   550,   550,   550,   550,   550,
+   nil,   550,   550,   550,   nil,   550,   550,   nil,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   550,   nil,   nil,   550,   nil,   nil,   550,   550,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,
+   550,   550,   550,   550,   550,   nil,   nil,   nil,   550,   550,
+   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,   550,
+   550,   550,   nil,   550,   550,   553,   553,   553,   nil,   553,
+   nil,   nil,   nil,   553,   553,   nil,   nil,   nil,   553,   nil,
+   553,   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,
+   nil,   nil,   553,   553,   553,   553,   553,   553,   553,   nil,
+   nil,   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,
+   nil,   553,   553,   553,   553,   553,   553,   553,   553,   nil,
+   553,   553,   553,   nil,   553,   553,   nil,   553,   553,   553,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   553,
+   nil,   nil,   553,   nil,   nil,   553,   553,   nil,   nil,   553,
+   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,   553,   553,
+   553,   553,   553,   553,   nil,   nil,   nil,   553,   553,   nil,
+   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   553,   553,
+   553,   nil,   553,   553,   554,   554,   554,   nil,   554,   nil,
+   nil,   nil,   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,   554,   nil,   nil,   nil,   nil,   554,   554,   554,
+   554,   554,   554,   nil,   nil,   nil,   554,   554,   nil,   nil,
+   nil,   nil,   nil,   nil,   554,   nil,   nil,   554,   554,   554,
+   nil,   554,   554,   559,   559,   559,   nil,   559,   nil,   nil,
+   nil,   559,   559,   nil,   nil,   nil,   559,   nil,   559,   559,
+   559,   559,   559,   559,   559,   nil,   nil,   nil,   nil,   nil,
+   559,   559,   559,   559,   559,   559,   559,   nil,   nil,   559,
+   nil,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,   559,
+   559,   559,   559,   559,   559,   559,   559,   nil,   559,   559,
+   559,   nil,   559,   559,   nil,   559,   559,   559,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,
+   559,   nil,   nil,   559,   559,   nil,   nil,   559,   nil,   nil,
+   nil,   nil,   nil,   559,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   559,   nil,   nil,   nil,   nil,   559,   559,   559,   559,
+   559,   559,   nil,   nil,   nil,   559,   559,   nil,   nil,   nil,
+   nil,   nil,   nil,   559,   nil,   nil,   559,   559,   559,   nil,
+   559,   559,   583,   583,   583,   nil,   583,   nil,   nil,   nil,
+   583,   583,   nil,   nil,   nil,   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,
+   583,   583,   583,   583,   583,   583,   583,   583,   583,   583,
+   nil,   583,   583,   nil,   583,   583,   583,   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,   583,   nil,   nil,   583,   nil,   583,   nil,
+   583,   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,   nil,
+   nil,   nil,   583,   nil,   583,   583,   583,   583,   nil,   583,
+   583,   593,   593,   593,   nil,   593,   nil,   nil,   nil,   593,
+   593,   nil,   nil,   nil,   593,   nil,   593,   593,   593,   593,
+   593,   593,   593,   nil,   nil,   nil,   nil,   nil,   593,   593,
+   593,   593,   593,   593,   593,   nil,   nil,   593,   nil,   nil,
+   nil,   nil,   nil,   nil,   593,   nil,   nil,   593,   593,   593,
+   593,   593,   593,   593,   593,   593,   593,   593,   593,   nil,
+   593,   593,   nil,   593,   593,   593,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   593,   nil,   nil,   593,   nil,
+   nil,   593,   593,   nil,   nil,   593,   nil,   593,   nil,   593,
+   nil,   593,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   593,
+   nil,   nil,   nil,   nil,   593,   593,   593,   593,   593,   593,
+   nil,   nil,   nil,   593,   593,   nil,   nil,   nil,   nil,   nil,
+   nil,   593,   nil,   593,   593,   593,   593,   nil,   593,   593,
+   603,   603,   603,   nil,   603,   nil,   nil,   nil,   603,   603,
+   nil,   nil,   nil,   603,   nil,   603,   603,   603,   603,   603,
+   603,   603,   nil,   nil,   nil,   nil,   nil,   603,   603,   603,
+   603,   603,   603,   603,   nil,   nil,   603,   nil,   nil,   nil,
+   nil,   nil,   nil,   603,   nil,   nil,   603,   603,   603,   603,
+   603,   603,   603,   603,   nil,   603,   603,   603,   nil,   603,
+   603,   nil,   603,   603,   603,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   603,   nil,   nil,   603,   nil,   nil,
+   603,   603,   nil,   nil,   603,   nil,   nil,   nil,   nil,   nil,
+   603,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   603,   nil,
+   nil,   nil,   nil,   603,   603,   603,   603,   603,   603,   nil,
+   nil,   nil,   603,   603,   nil,   nil,   nil,   nil,   nil,   nil,
+   603,   nil,   nil,   603,   603,   603,   nil,   603,   603,   625,
+   625,   625,   nil,   625,   nil,   nil,   nil,   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,   625,   nil,   nil,
+   nil,   nil,   625,   625,   625,   625,   625,   625,   nil,   nil,
+   nil,   625,   625,   nil,   nil,   nil,   nil,   nil,   nil,   625,
+   nil,   nil,   625,   625,   625,   nil,   625,   625,   665,   665,
+   665,   nil,   665,   nil,   nil,   nil,   665,   665,   nil,   nil,
+   nil,   665,   nil,   665,   665,   665,   665,   665,   665,   665,
+   nil,   nil,   nil,   nil,   nil,   665,   665,   665,   665,   665,
+   665,   665,   nil,   nil,   665,   nil,   nil,   nil,   nil,   nil,
+   nil,   665,   nil,   nil,   665,   665,   665,   665,   665,   665,
+   665,   665,   nil,   665,   665,   665,   nil,   665,   665,   nil,
+   665,   665,   665,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   665,   nil,   nil,   665,   nil,   nil,   665,   665,
+   nil,   nil,   665,   nil,   665,   nil,   nil,   nil,   665,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,   nil,   nil,
+   nil,   665,   665,   665,   665,   665,   665,   nil,   nil,   nil,
+   665,   665,   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,
+   nil,   665,   665,   665,   nil,   665,   665,   666,   666,   666,
+   nil,   666,   nil,   nil,   nil,   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,   666,
+   666,   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,   666,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,   nil,   nil,
+   666,   666,   666,   666,   666,   666,   nil,   nil,   nil,   666,
+   666,   nil,   nil,   nil,   nil,   nil,   nil,   666,   nil,   nil,
+   666,   666,   666,   nil,   666,   666,   667,   667,   667,   nil,
+   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,   nil,   667,
+   nil,   nil,   667,   667,   667,   667,   667,   667,   667,   667,
+   667,   667,   667,   667,   nil,   667,   667,   nil,   667,   667,
+   667,   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,   667,   nil,   nil,
+   667,   nil,   667,   nil,   667,   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,   nil,   nil,   nil,   667,   nil,   667,   667,
+   667,   667,   nil,   667,   667,   670,   670,   670,   670,   670,
+   nil,   nil,   nil,   670,   670,   nil,   nil,   nil,   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,   670,   670,   nil,
+   670,   670,   670,   670,   670,   670,   670,   670,   670,   nil,
+   670,   670,   670,   nil,   670,   670,   nil,   670,   670,   670,
+   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,   670,   nil,   nil,   670,
+   nil,   670,   nil,   nil,   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,   nil,   nil,   nil,   670,   nil,   nil,   670,   670,
+   670,   nil,   670,   670,   671,   671,   671,   nil,   671,   nil,
+   nil,   nil,   671,   671,   nil,   nil,   nil,   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,   671,   671,   671,   671,   671,   671,   nil,   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,
+   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   671,   nil,   nil,   671,   671,   671,
+   nil,   671,   671,   674,   674,   674,   nil,   674,   nil,   nil,
+   nil,   674,   674,   nil,   nil,   nil,   674,   nil,   674,   674,
+   674,   674,   674,   674,   674,   nil,   nil,   nil,   nil,   nil,
+   674,   674,   674,   674,   674,   674,   674,   nil,   nil,   674,
+   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,
+   674,   674,   674,   674,   674,   674,   674,   674,   674,   674,
+   674,   nil,   674,   674,   nil,   674,   674,   674,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,
+   674,   nil,   nil,   674,   674,   nil,   nil,   674,   nil,   674,
+   nil,   674,   nil,   674,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   674,   nil,   nil,   nil,   nil,   674,   674,   674,   674,
+   674,   674,   nil,   nil,   nil,   674,   674,   nil,   nil,   nil,
+   nil,   nil,   nil,   674,   nil,   674,   674,   674,   674,   nil,
+   674,   674,   675,   675,   675,   nil,   675,   nil,   nil,   nil,
+   675,   675,   nil,   nil,   nil,   675,   nil,   675,   675,   675,
+   675,   675,   675,   675,   nil,   nil,   nil,   nil,   nil,   675,
+   675,   675,   675,   675,   675,   675,   nil,   nil,   675,   nil,
+   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   675,   675,
+   675,   675,   675,   675,   675,   675,   675,   675,   675,   675,
+   nil,   675,   675,   nil,   675,   675,   675,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   nil,   675,
+   nil,   nil,   675,   675,   nil,   nil,   675,   nil,   nil,   nil,
+   675,   nil,   675,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   675,   nil,   nil,   nil,   nil,   675,   675,   675,   675,   675,
+   675,   nil,   nil,   nil,   675,   675,   nil,   nil,   nil,   nil,
+   nil,   nil,   675,   nil,   675,   675,   675,   675,   nil,   675,
+   675,   676,   676,   676,   nil,   676,   nil,   nil,   nil,   676,
+   676,   nil,   nil,   nil,   676,   nil,   676,   676,   676,   676,
+   676,   676,   676,   nil,   nil,   nil,   nil,   nil,   676,   676,
+   676,   676,   676,   676,   676,   nil,   nil,   676,   nil,   nil,
+   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   676,   676,
+   676,   676,   676,   676,   676,   nil,   676,   676,   676,   nil,
+   676,   676,   nil,   676,   676,   676,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   nil,
+   nil,   676,   676,   nil,   nil,   676,   nil,   nil,   nil,   nil,
+   nil,   676,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   676,
+   nil,   nil,   nil,   nil,   676,   676,   676,   676,   676,   676,
+   nil,   nil,   nil,   676,   676,   nil,   nil,   nil,   nil,   nil,
+   nil,   676,   nil,   nil,   676,   676,   676,   nil,   676,   676,
+   677,   677,   677,   nil,   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,   nil,   677,   nil,   nil,   677,   677,   677,   677,
+   677,   677,   677,   677,   nil,   677,   677,   677,   nil,   677,
+   677,   nil,   677,   677,   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,
+   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,   677,   677,   nil,   677,   677,   682,
+   682,   682,   nil,   682,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   682,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   682,   nil,   nil,
+   nil,   nil,   682,   682,   682,   682,   682,   682,   nil,   nil,
+   nil,   682,   682,   nil,   nil,   nil,   nil,   nil,   nil,   682,
+   nil,   nil,   682,   682,   682,   nil,   682,   682,   683,   683,
+   683,   nil,   683,   nil,   nil,   nil,   683,   683,   nil,   nil,
+   nil,   683,   nil,   683,   683,   683,   683,   683,   683,   683,
+   nil,   nil,   nil,   nil,   nil,   683,   683,   683,   683,   683,
+   683,   683,   nil,   nil,   683,   nil,   nil,   nil,   nil,   nil,
+   nil,   683,   nil,   nil,   683,   683,   683,   683,   683,   683,
+   683,   683,   nil,   683,   683,   683,   nil,   683,   683,   nil,
+   683,   683,   683,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   683,   nil,   nil,   683,   nil,   nil,   683,   683,
+   nil,   nil,   683,   nil,   nil,   nil,   nil,   nil,   683,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   683,   nil,   nil,   nil,
+   nil,   683,   683,   683,   683,   683,   683,   nil,   nil,   nil,
+   683,   683,   nil,   nil,   nil,   nil,   nil,   nil,   683,   nil,
+   nil,   683,   683,   683,   nil,   683,   683,   707,   707,   707,
+   nil,   707,   nil,   nil,   nil,   707,   707,   nil,   nil,   nil,
+   707,   nil,   707,   707,   707,   707,   707,   707,   707,   nil,
+   nil,   nil,   nil,   nil,   707,   707,   707,   707,   707,   707,
+   707,   nil,   nil,   707,   nil,   nil,   nil,   nil,   nil,   nil,
+   707,   nil,   nil,   707,   707,   707,   707,   707,   707,   707,
+   707,   nil,   707,   707,   707,   nil,   707,   707,   nil,   707,
+   707,   707,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   707,   nil,   nil,   707,   nil,   nil,   707,   707,   nil,
+   nil,   707,   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,   nil,   nil,
+   707,   707,   707,   707,   707,   707,   nil,   nil,   nil,   707,
+   707,   nil,   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,
+   707,   707,   707,   nil,   707,   707,   710,   710,   710,   nil,
+   710,   nil,   nil,   nil,   710,   710,   nil,   nil,   nil,   710,
+   nil,   710,   710,   710,   710,   710,   710,   710,   nil,   nil,
+   nil,   nil,   nil,   710,   710,   710,   710,   710,   710,   710,
+   nil,   nil,   710,   nil,   nil,   nil,   nil,   nil,   nil,   710,
+   nil,   nil,   710,   710,   710,   710,   710,   710,   710,   710,
+   nil,   710,   710,   710,   nil,   710,   710,   nil,   710,   710,
+   710,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   710,   nil,   nil,   710,   nil,   nil,   710,   710,   nil,   nil,
+   710,   nil,   nil,   nil,   nil,   nil,   710,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   710,   nil,   nil,   nil,   nil,   710,
+   710,   710,   710,   710,   710,   nil,   nil,   nil,   710,   710,
+   nil,   nil,   nil,   nil,   nil,   nil,   710,   nil,   nil,   710,
+   710,   710,   nil,   710,   710,   714,   714,   714,   nil,   714,
+   nil,   nil,   nil,   714,   714,   nil,   nil,   nil,   714,   nil,
+   714,   714,   714,   714,   714,   714,   714,   nil,   nil,   nil,
+   nil,   nil,   714,   714,   714,   714,   714,   714,   714,   nil,
+   nil,   714,   nil,   nil,   nil,   nil,   nil,   nil,   714,   nil,
+   nil,   714,   714,   714,   714,   714,   714,   714,   714,   nil,
+   714,   714,   714,   nil,   714,   714,   nil,   nil,   nil,   714,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   714,
+   nil,   nil,   714,   nil,   nil,   714,   714,   nil,   nil,   714,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   714,   714,
+   714,   714,   714,   714,   nil,   nil,   nil,   714,   714,   nil,
+   nil,   nil,   nil,   nil,   nil,   714,   nil,   nil,   714,   714,
+   714,   nil,   714,   714,   725,   725,   725,   nil,   725,   nil,
+   nil,   nil,   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,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   725,   725,   725,
+   725,   725,   725,   nil,   nil,   nil,   725,   725,   nil,   nil,
+   nil,   nil,   nil,   nil,   725,   nil,   nil,   725,   725,   725,
+   nil,   725,   725,   731,   731,   731,   nil,   731,   nil,   nil,
+   nil,   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,   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,
+   nil,   nil,   nil,   731,   nil,   nil,   731,   731,   731,   nil,
+   731,   731,   736,   736,   736,   nil,   736,   nil,   nil,   nil,
+   736,   736,   nil,   nil,   nil,   736,   nil,   736,   736,   736,
+   736,   736,   736,   736,   nil,   nil,   nil,   nil,   nil,   736,
+   736,   736,   736,   736,   736,   736,   nil,   nil,   736,   nil,
+   nil,   nil,   nil,   nil,   nil,   736,   nil,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   736,   nil,   736,   736,   736,   736,   nil,   736,
+   736,   739,   739,   739,   nil,   739,   nil,   nil,   nil,   739,
+   739,   nil,   nil,   nil,   739,   nil,   739,   739,   739,   739,
+   739,   739,   739,   nil,   nil,   nil,   nil,   nil,   739,   739,
+   739,   739,   739,   739,   739,   nil,   nil,   739,   nil,   nil,
+   nil,   nil,   nil,   nil,   739,   nil,   nil,   739,   739,   739,
+   739,   739,   739,   739,   739,   739,   739,   739,   739,   nil,
+   739,   739,   nil,   739,   739,   739,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   739,   nil,   nil,   739,   nil,
+   nil,   739,   739,   nil,   nil,   739,   nil,   nil,   nil,   nil,
+   nil,   739,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   739,
+   nil,   nil,   nil,   nil,   739,   739,   739,   739,   739,   739,
+   nil,   nil,   nil,   739,   739,   nil,   nil,   nil,   nil,   nil,
+   nil,   739,   nil,   739,   739,   739,   739,   nil,   739,   739,
+   753,   753,   753,   nil,   753,   nil,   nil,   nil,   753,   753,
+   nil,   nil,   nil,   753,   nil,   753,   753,   753,   753,   753,
+   753,   753,   nil,   nil,   nil,   nil,   nil,   753,   753,   753,
+   753,   753,   753,   753,   nil,   nil,   753,   nil,   nil,   nil,
+   nil,   nil,   nil,   753,   nil,   nil,   753,   753,   753,   753,
+   753,   753,   753,   753,   nil,   753,   753,   753,   nil,   753,
+   753,   nil,   753,   753,   753,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   753,   nil,   nil,   753,   nil,   nil,
+   753,   753,   nil,   nil,   753,   nil,   753,   nil,   nil,   nil,
+   753,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   753,   nil,
+   nil,   nil,   nil,   753,   753,   753,   753,   753,   753,   nil,
+   nil,   nil,   753,   753,   nil,   nil,   nil,   nil,   nil,   nil,
+   753,   nil,   nil,   753,   753,   753,   nil,   753,   753,   765,
+   765,   765,   nil,   765,   nil,   nil,   nil,   765,   765,   nil,
+   nil,   nil,   765,   nil,   765,   765,   765,   765,   765,   765,
+   765,   nil,   nil,   nil,   nil,   nil,   765,   765,   765,   765,
+   765,   765,   765,   nil,   nil,   765,   nil,   nil,   nil,   nil,
+   nil,   nil,   765,   nil,   nil,   765,   765,   765,   765,   765,
+   765,   765,   765,   nil,   765,   765,   765,   nil,   765,   765,
+   nil,   765,   765,   765,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   765,   nil,   nil,   765,   nil,   nil,   765,
+   765,   nil,   nil,   765,   nil,   nil,   nil,   nil,   nil,   765,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   765,   nil,   nil,
+   nil,   nil,   765,   765,   765,   765,   765,   765,   nil,   nil,
+   nil,   765,   765,   nil,   nil,   nil,   nil,   nil,   nil,   765,
+   nil,   nil,   765,   765,   765,   nil,   765,   765,   785,   785,
+   785,   nil,   785,   nil,   nil,   nil,   785,   785,   nil,   nil,
+   nil,   785,   nil,   785,   785,   785,   785,   785,   785,   785,
+   nil,   nil,   nil,   nil,   nil,   785,   785,   785,   785,   785,
+   785,   785,   nil,   nil,   785,   nil,   nil,   nil,   nil,   nil,
+   nil,   785,   nil,   nil,   785,   785,   785,   785,   785,   785,
+   785,   785,   nil,   785,   785,   785,   nil,   785,   785,   nil,
+   785,   785,   785,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   785,   nil,   nil,   785,   nil,   nil,   785,   785,
+   nil,   nil,   785,   nil,   nil,   nil,   nil,   nil,   785,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   785,   nil,   nil,   nil,
+   nil,   785,   785,   785,   785,   785,   785,   nil,   nil,   nil,
+   785,   785,   nil,   nil,   nil,   nil,   nil,   nil,   785,   nil,
+   nil,   785,   785,   785,   nil,   785,   785,   807,   807,   807,
+   nil,   807,   nil,   nil,   nil,   807,   807,   nil,   nil,   nil,
+   807,   nil,   807,   807,   807,   807,   807,   807,   807,   nil,
+   nil,   nil,   nil,   nil,   807,   807,   807,   807,   807,   807,
+   807,   nil,   nil,   807,   nil,   nil,   nil,   nil,   nil,   nil,
+   807,   nil,   nil,   807,   807,   807,   807,   807,   807,   807,
+   807,   nil,   807,   807,   807,   nil,   807,   807,   nil,   807,
+   807,   807,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   807,   nil,   nil,   807,   nil,   nil,   807,   807,   nil,
+   nil,   807,   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,   nil,   nil,
+   807,   807,   807,   807,   807,   807,   nil,   nil,   nil,   807,
+   807,   nil,   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,
+   807,   807,   807,   nil,   807,   807,   815,   815,   815,   nil,
+   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,   nil,   815,   nil,   nil,   nil,   nil,   nil,   nil,   815,
+   nil,   nil,   815,   815,   815,   815,   815,   815,   815,   815,
+   nil,   815,   815,   815,   nil,   815,   815,   nil,   815,   815,
+   815,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   815,   nil,   nil,   815,   nil,   nil,   815,   815,   nil,   nil,
+   815,   nil,   nil,   nil,   nil,   nil,   815,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   815,   nil,   nil,   nil,   nil,   815,
+   815,   815,   815,   815,   815,   nil,   nil,   nil,   815,   815,
+   nil,   nil,   nil,   nil,   nil,   nil,   815,   nil,   nil,   815,
+   815,   815,   nil,   815,   815,   828,   828,   828,   nil,   828,
+   nil,   nil,   nil,   828,   828,   nil,   nil,   nil,   828,   nil,
+   828,   828,   828,   828,   828,   828,   828,   nil,   nil,   nil,
+   nil,   nil,   828,   828,   828,   828,   828,   828,   828,   nil,
+   nil,   828,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,
+   nil,   828,   828,   828,   828,   828,   828,   828,   828,   nil,
+   828,   828,   828,   nil,   828,   828,   nil,   828,   828,   828,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   828,
+   nil,   nil,   828,   nil,   nil,   828,   828,   nil,   nil,   828,
+   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   828,   nil,   nil,   nil,   nil,   828,   828,
+   828,   828,   828,   828,   nil,   nil,   nil,   828,   828,   nil,
+   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,   828,   828,
+   828,   nil,   828,   828,   829,   829,   829,   nil,   829,   nil,
+   nil,   nil,   829,   829,   nil,   nil,   nil,   829,   nil,   829,
+   829,   829,   829,   829,   829,   829,   nil,   nil,   nil,   nil,
+   nil,   829,   829,   829,   829,   829,   829,   829,   nil,   nil,
+   829,   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,
+   829,   829,   829,   829,   829,   829,   829,   829,   nil,   829,
+   829,   829,   nil,   829,   829,   nil,   829,   829,   829,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,
+   nil,   829,   nil,   nil,   829,   829,   nil,   nil,   829,   nil,
+   nil,   nil,   nil,   nil,   829,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   829,   nil,   nil,   nil,   nil,   829,   829,   829,
+   829,   829,   829,   nil,   nil,   nil,   829,   829,   nil,   nil,
+   nil,   nil,   nil,   nil,   829,   nil,   nil,   829,   829,   829,
+   nil,   829,   829,   830,   830,   830,   nil,   830,   nil,   nil,
+   nil,   830,   830,   nil,   nil,   nil,   830,   nil,   830,   830,
+   830,   830,   830,   830,   830,   nil,   nil,   nil,   nil,   nil,
+   830,   830,   830,   830,   830,   830,   830,   nil,   nil,   830,
+   nil,   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,   830,
+   830,   830,   830,   830,   830,   830,   830,   nil,   830,   830,
+   830,   nil,   830,   830,   nil,   830,   830,   830,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,
+   830,   nil,   nil,   830,   830,   nil,   nil,   830,   nil,   nil,
+   nil,   nil,   nil,   830,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   830,   nil,   nil,   nil,   nil,   830,   830,   830,   830,
+   830,   830,   nil,   nil,   nil,   830,   830,   nil,   nil,   nil,
+   nil,   nil,   nil,   830,   nil,   nil,   830,   830,   830,   nil,
+   830,   830,   831,   831,   831,   nil,   831,   nil,   nil,   nil,
+   831,   831,   nil,   nil,   nil,   831,   nil,   831,   831,   831,
+   831,   831,   831,   831,   nil,   nil,   nil,   nil,   nil,   831,
+   831,   831,   831,   831,   831,   831,   nil,   nil,   831,   nil,
+   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   831,   831,
+   831,   831,   831,   831,   831,   831,   nil,   831,   831,   831,
+   nil,   831,   831,   nil,   831,   831,   831,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   831,
+   nil,   nil,   831,   831,   nil,   nil,   831,   nil,   nil,   nil,
+   nil,   nil,   831,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   831,   nil,   nil,   nil,   nil,   831,   831,   831,   831,   831,
+   831,   nil,   nil,   nil,   831,   831,   nil,   nil,   nil,   nil,
+   nil,   nil,   831,   nil,   nil,   831,   831,   831,   nil,   831,
+   831,   833,   833,   833,   nil,   833,   nil,   nil,   nil,   833,
+   833,   nil,   nil,   nil,   833,   nil,   833,   833,   833,   833,
+   833,   833,   833,   nil,   nil,   nil,   nil,   nil,   833,   833,
+   833,   833,   833,   833,   833,   nil,   nil,   833,   nil,   nil,
+   nil,   nil,   nil,   nil,   833,   nil,   nil,   833,   833,   833,
+   833,   833,   833,   833,   833,   nil,   833,   833,   833,   nil,
+   833,   833,   nil,   833,   833,   833,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   833,   nil,   nil,   833,   nil,
+   nil,   833,   833,   nil,   nil,   833,   nil,   nil,   nil,   nil,
+   nil,   833,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   833,
+   nil,   nil,   nil,   nil,   833,   833,   833,   833,   833,   833,
+   nil,   nil,   nil,   833,   833,   nil,   nil,   nil,   nil,   nil,
+   nil,   833,   nil,   nil,   833,   833,   833,   nil,   833,   833,
+   866,   866,   866,   nil,   866,   nil,   nil,   nil,   866,   866,
+   nil,   nil,   nil,   866,   nil,   866,   866,   866,   866,   866,
+   866,   866,   nil,   nil,   nil,   nil,   nil,   866,   866,   866,
+   866,   866,   866,   866,   nil,   nil,   866,   nil,   nil,   nil,
+   nil,   nil,   nil,   866,   nil,   nil,   866,   866,   866,   866,
+   866,   866,   866,   866,   nil,   866,   866,   866,   nil,   866,
+   866,   nil,   866,   866,   866,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   866,   nil,   nil,   866,   nil,   nil,
+   866,   866,   nil,   nil,   866,   nil,   nil,   nil,   nil,   nil,
+   866,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   866,   nil,
+   nil,   nil,   nil,   866,   866,   866,   866,   866,   866,   nil,
+   nil,   nil,   866,   866,   nil,   nil,   nil,   nil,   nil,   nil,
+   866,   nil,   nil,   866,   866,   866,   nil,   866,   866,   873,
+   873,   873,   nil,   873,   nil,   nil,   nil,   873,   873,   nil,
+   nil,   nil,   873,   nil,   873,   873,   873,   873,   873,   873,
+   873,   nil,   nil,   nil,   nil,   nil,   873,   873,   873,   873,
+   873,   873,   873,   nil,   nil,   873,   nil,   nil,   nil,   nil,
+   nil,   nil,   873,   nil,   nil,   873,   873,   873,   873,   873,
+   873,   873,   873,   nil,   873,   873,   873,   nil,   873,   873,
+   nil,   873,   873,   873,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   873,   nil,   nil,   873,   nil,   nil,   873,
+   873,   nil,   nil,   873,   nil,   nil,   nil,   nil,   nil,   873,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   873,   nil,   nil,
+   nil,   nil,   873,   873,   873,   873,   873,   873,   nil,   nil,
+   nil,   873,   873,   nil,   nil,   nil,   nil,   nil,   nil,   873,
+   nil,   nil,   873,   873,   873,   nil,   873,   873,   921,   921,
+   921,   nil,   921,   nil,   nil,   nil,   921,   921,   nil,   nil,
+   nil,   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,   921,   921,   921,   921,
+   921,   921,   921,   921,   921,   921,   nil,   921,   921,   nil,
+   921,   921,   921,   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,   921,
+   nil,   nil,   921,   nil,   nil,   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,
+   921,   921,   921,   921,   nil,   921,   921,   922,   922,   922,
+   nil,   922,   nil,   nil,   nil,   922,   922,   nil,   nil,   nil,
+   922,   nil,   922,   922,   922,   922,   922,   922,   922,   nil,
+   nil,   nil,   nil,   nil,   922,   922,   922,   922,   922,   922,
+   922,   nil,   nil,   922,   nil,   nil,   nil,   nil,   nil,   nil,
+   922,   nil,   nil,   922,   922,   922,   922,   922,   922,   922,
+   922,   nil,   922,   922,   922,   nil,   922,   922,   nil,   922,
+   922,   922,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   922,   nil,   nil,   922,   nil,   nil,   922,   922,   nil,
+   nil,   922,   nil,   nil,   nil,   nil,   nil,   922,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   922,   nil,   nil,   nil,   nil,
+   922,   922,   922,   922,   922,   922,   nil,   nil,   nil,   922,
+   922,   nil,   nil,   nil,   nil,   nil,   nil,   922,   nil,   nil,
+   922,   922,   922,   nil,   922,   922,   934,   934,   934,   nil,
+   934,   nil,   nil,   nil,   934,   934,   nil,   nil,   nil,   934,
+   nil,   934,   934,   934,   934,   934,   934,   934,   nil,   nil,
+   nil,   nil,   nil,   934,   934,   934,   934,   934,   934,   934,
+   nil,   nil,   934,   nil,   nil,   nil,   nil,   nil,   nil,   934,
+   nil,   nil,   934,   934,   934,   934,   934,   934,   934,   934,
+   nil,   934,   934,   934,   nil,   934,   934,   nil,   nil,   nil,
+   934,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   934,   nil,   nil,   934,   nil,   nil,   934,   934,   nil,   nil,
+   934,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   934,
+   934,   934,   934,   934,   934,   nil,   nil,   nil,   934,   934,
+   nil,   nil,   nil,   nil,   nil,   nil,   934,   nil,   nil,   934,
+   934,   934,   nil,   934,   934,   943,   943,   943,   nil,   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,   nil,   943,   nil,
+   nil,   943,   943,   943,   943,   943,   943,   943,   943,   nil,
+   943,   943,   943,   nil,   943,   943,   nil,   nil,   nil,   943,
+   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,   943,   nil,   nil,   943,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   943,   943,
+   943,   943,   943,   943,   nil,   nil,   nil,   943,   943,   nil,
+   nil,   nil,   nil,   nil,   nil,   943,   nil,   nil,   943,   943,
+   943,   nil,   943,   943,   951,   951,   951,   nil,   951,   nil,
+   nil,   nil,   951,   951,   nil,   nil,   nil,   951,   nil,   951,
+   951,   951,   951,   951,   951,   951,   nil,   nil,   nil,   nil,
+   nil,   951,   951,   951,   951,   951,   951,   951,   nil,   nil,
+   951,   nil,   nil,   nil,   nil,   nil,   nil,   951,   nil,   nil,
+   951,   951,   951,   951,   951,   951,   951,   951,   nil,   951,
+   951,   951,   nil,   951,   951,   nil,   951,   951,   951,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   951,   nil,
+   nil,   951,   nil,   nil,   951,   951,   nil,   nil,   951,   nil,
+   951,   nil,   nil,   nil,   951,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   951,   nil,   nil,   nil,   nil,   951,   951,   951,
+   951,   951,   951,   nil,   nil,   nil,   951,   951,   nil,   nil,
+   nil,   nil,   nil,   nil,   951,   nil,   nil,   951,   951,   951,
+   nil,   951,   951,   992,   992,   992,   nil,   992,   nil,   nil,
+   nil,   992,   992,   nil,   nil,   nil,   992,   nil,   992,   992,
+   992,   992,   992,   992,   992,   nil,   nil,   nil,   nil,   nil,
+   992,   992,   992,   992,   992,   992,   992,   nil,   nil,   992,
+   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,   992,
+   992,   992,   992,   992,   992,   992,   992,   nil,   992,   992,
+   992,   nil,   992,   992,   nil,   nil,   nil,   992,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,
+   992,   nil,   nil,   992,   992,   nil,   nil,   992,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   992,   992,   992,   992,
+   992,   992,   nil,   nil,   nil,   992,   992,   nil,   nil,   nil,
+   nil,   nil,   nil,   992,   nil,   nil,   992,   992,   992,   nil,
+   992,   992,  1006,  1006,  1006,   nil,  1006,   nil,   nil,   nil,
+  1006,  1006,   nil,   nil,   nil,  1006,   nil,  1006,  1006,  1006,
+  1006,  1006,  1006,  1006,   nil,   nil,   nil,   nil,   nil,  1006,
+  1006,  1006,  1006,  1006,  1006,  1006,   nil,   nil,  1006,   nil,
+   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,  1006,
+  1006,  1006,  1006,  1006,  1006,  1006,   nil,  1006,  1006,  1006,
+   nil,  1006,  1006,   nil,  1006,  1006,  1006,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,
+   nil,   nil,  1006,  1006,   nil,   nil,  1006,   nil,   nil,   nil,
+   nil,   nil,  1006,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1006,   nil,   nil,   nil,   nil,  1006,  1006,  1006,  1006,  1006,
+  1006,   nil,   nil,   nil,  1006,  1006,   nil,   nil,   nil,   nil,
+   nil,   nil,  1006,   nil,   nil,  1006,  1006,  1006,   nil,  1006,
+  1006,  1037,  1037,  1037,   nil,  1037,   nil,   nil,   nil,  1037,
+  1037,   nil,   nil,   nil,  1037,   nil,  1037,  1037,  1037,  1037,
+  1037,  1037,  1037,   nil,   nil,   nil,   nil,   nil,  1037,  1037,
+  1037,  1037,  1037,  1037,  1037,   nil,   nil,  1037,   nil,   nil,
+   nil,   nil,   nil,   nil,  1037,   nil,   nil,  1037,  1037,  1037,
+  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,   nil,
+  1037,  1037,   nil,  1037,  1037,  1037,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1037,   nil,   nil,  1037,   nil,
+   nil,  1037,  1037,   nil,   nil,  1037,   nil,  1037,   nil,  1037,
+   nil,  1037,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1037,
+   nil,   nil,   nil,   nil,  1037,  1037,  1037,  1037,  1037,  1037,
+   nil,   nil,   nil,  1037,  1037,   nil,   nil,   nil,   nil,   nil,
+   nil,  1037,   nil,  1037,  1037,  1037,  1037,   nil,  1037,  1037,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,   nil,   nil,   nil,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,
+   nil,   nil,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,   nil,    11,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,    11,
+    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,    11,
+    11,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    11,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+   nil,   nil,   nil,   nil,   nil,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,   nil,   nil,    12,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,
+    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
+   nil,   nil,    12,    12,    12,    12,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,
+    12,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,   nil,   nil,    12,    12,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    12,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,   nil,   nil,   nil,   nil,   nil,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,
+   nil,    75,    75,    75,    75,    75,    75,    75,   nil,   nil,
+    75,    75,   nil,   nil,   nil,    75,    75,    75,    75,   nil,
+   nil,   nil,   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    75,    75,   nil,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,   nil,   nil,    75,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    75,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   nil,   nil,   nil,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   nil,   nil,   nil,   nil,
+   nil,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   nil,   105,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,   105,   nil,   105,   105,   105,   105,   105,   105,
+   105,   nil,   nil,   105,   105,   nil,   nil,   nil,   105,   105,
+   105,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   nil,
+   nil,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,   428,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   428,   428,   428,   nil,   nil,   nil,   428,
+   428,   428,   428,   428,   428,   428,   428,   428,   428,   nil,
+   nil,   nil,   nil,   nil,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   nil,   nil,   428,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   428,   428,   nil,   428,   428,   428,
+   428,   428,   428,   428,   nil,   nil,   428,   428,   nil,   nil,
+   nil,   428,   428,   428,   428,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   428,   428,
+   nil,   428,   428,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   nil,   nil,   428,   428,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   428,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   428,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   662,   662,   662,   nil,
+   nil,   nil,   662,   662,   662,   662,   662,   662,   662,   662,
+   662,   662,   nil,   nil,   nil,   nil,   nil,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   nil,   nil,   662,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   662,   nil,
+   662,   662,   662,   662,   662,   662,   662,   nil,   nil,   662,
+   662,   nil,   nil,   nil,   662,   662,   662,   662,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   662,   662,   nil,   662,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   nil,   nil,   662,   662,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   662,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   771,   nil,   nil,   nil,   771,   771,   771,   771,   771,
+   771,   771,   771,   771,   771,   nil,   nil,   nil,   nil,   nil,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   nil,
+   nil,   771,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   771,   771,   nil,   771,   771,   771,   771,   771,   771,   771,
+   nil,   nil,   771,   771,   nil,   nil,   nil,   771,   771,   771,
+   771,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   771,   771,   nil,   771,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   nil,   nil,
+   771,   nil,   nil,   nil,   nil,   228,   228,   nil,   nil,   228,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   228,   228,
+   771,   228,   228,   228,   228,   228,   228,   228,   nil,   nil,
+   228,   228,   nil,   nil,   nil,   228,   228,   228,   228,   nil,
+   nil,   nil,   nil,   nil,   228,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   228,   228,   nil,   228,   228,   228,   228,   228,
+   228,   228,   228,   228,   228,   228,   nil,   nil,   228,   nil,
+   nil,   nil,   nil,   229,   229,   nil,   nil,   229,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   229,   229,   228,   229,
+   229,   229,   229,   229,   229,   229,   nil,   nil,   229,   229,
+   nil,   nil,   nil,   229,   229,   229,   229,   nil,   nil,   nil,
+   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   229,   229,   nil,   229,   229,   229,   229,   229,   229,   229,
+   229,   229,   229,   229,   nil,   nil,   229,   nil,   nil,   nil,
+   nil,   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   479,   479,   229,   479,   479,   479,
+   479,   479,   479,   479,   nil,   nil,   479,   479,   nil,   nil,
+   nil,   479,   479,   479,   479,   nil,   nil,   nil,   nil,   nil,
+   479,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   479,   479,
+   nil,   479,   479,   479,   479,   479,   479,   479,   479,   479,
+   479,   479,   nil,   nil,   479,   nil,   nil,   nil,   nil,   480,
+   480,   nil,   nil,   480,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   480,   480,   479,   480,   480,   480,   480,   480,
+   480,   480,   nil,   nil,   480,   480,   nil,   nil,   nil,   480,
+   480,   480,   480,   nil,   nil,   nil,   nil,   nil,   480,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   480,   480,   nil,   480,
+   480,   480,   480,   480,   480,   480,   480,   480,   480,   480,
+   nil,   nil,   480,   nil,   nil,   nil,   nil,   545,   545,   nil,
+   nil,   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   545,   545,   480,   545,   545,   545,   545,   545,   545,   545,
+   nil,   nil,   545,   545,   nil,   nil,   nil,   545,   545,   545,
+   545,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   545,   545,   nil,   545,   545,   545,
+   545,   545,   545,   545,   545,   545,   545,   545,   nil,   nil,
+   545,   nil,   nil,   nil,   nil,   546,   546,   nil,   nil,   546,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   546,   546,
+   545,   546,   546,   546,   546,   546,   546,   546,   nil,   nil,
+   546,   546,   nil,   nil,   nil,   546,   546,   546,   546,   nil,
+   nil,   nil,   nil,   nil,   546,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   546,   546,   nil,   546,   546,   546,   546,   546,
+   546,   546,   546,   546,   546,   546,   nil,   nil,   546,   nil,
+   nil,   nil,   nil,   555,   555,   nil,   nil,   555,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   555,   555,   546,   555,
+   555,   555,   555,   555,   555,   555,   nil,   nil,   555,   555,
+   nil,   nil,   nil,   555,   555,   555,   555,   nil,   nil,   nil,
+   nil,   nil,   555,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   555,   555,   nil,   555,   555,   555,   555,   555,   555,   555,
+   555,   555,   555,   555,   nil,   nil,   555,   nil,   nil,   nil,
+   nil,   556,   556,   nil,   nil,   556,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   556,   556,   555,   556,   556,   556,
+   556,   556,   556,   556,   nil,   nil,   556,   556,   nil,   nil,
+   nil,   556,   556,   556,   556,   nil,   nil,   nil,   nil,   nil,
+   556,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   556,   556,
+   nil,   556,   556,   556,   556,   556,   556,   556,   556,   556,
+   556,   556,   nil,   nil,   556,   nil,   nil,   nil,   nil,   584,
+   584,   nil,   nil,   584,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   584,   584,   556,   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,
+   nil,   nil,   584,   nil,   nil,   nil,   nil,   585,   585,   nil,
+   nil,   585,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   585,   585,   584,   585,   585,   585,   585,   585,   585,   585,
+   nil,   nil,   585,   585,   nil,   nil,   nil,   585,   585,   585,
+   585,   nil,   nil,   nil,   nil,   nil,   585,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   585,   585,   nil,   585,   585,   585,
+   585,   585,   585,   585,   585,   585,   585,   585,   nil,   nil,
+   585,   nil,   nil,   nil,   nil,   591,   591,   nil,   nil,   591,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   591,   591,
+   585,   591,   591,   591,   591,   591,   591,   591,   nil,   nil,
+   591,   591,   nil,   nil,   nil,   591,   591,   591,   591,   nil,
+   nil,   nil,   nil,   nil,   591,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   591,   591,   nil,   591,   591,   591,   591,   591,
+   591,   591,   591,   591,   591,   591,   nil,   nil,   591,   nil,
+   nil,   nil,   nil,   592,   592,   nil,   nil,   592,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   592,   592,   591,   592,
+   592,   592,   592,   592,   592,   592,   nil,   nil,   592,   592,
+   nil,   nil,   nil,   592,   592,   592,   592,   nil,   nil,   nil,
+   nil,   nil,   592,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   592,   592,   nil,   592,   592,   592,   592,   592,   592,   592,
+   592,   592,   592,   592,   nil,   nil,   592,   nil,   nil,   nil,
+   nil,   668,   668,   nil,   nil,   668,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   668,   668,   592,   668,   668,   668,
+   668,   668,   668,   668,   nil,   nil,   668,   668,   nil,   nil,
+   nil,   668,   668,   668,   668,   nil,   nil,   nil,   nil,   nil,
+   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   668,   668,
+   nil,   668,   668,   668,   668,   668,   668,   668,   668,   668,
+   668,   668,   nil,   nil,   668,   nil,   nil,   nil,   nil,   669,
+   669,   nil,   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   669,   669,   668,   669,   669,   669,   669,   669,
+   669,   669,   nil,   nil,   669,   669,   nil,   nil,   nil,   669,
+   669,   669,   669,   nil,   nil,   nil,   nil,   nil,   669,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   669,   669,   nil,   669,
+   669,   669,   669,   669,   669,   669,   669,   669,   669,   669,
+   nil,   983,   669,   983,   983,   983,   983,   983,   986,   nil,
+   986,   986,   986,   986,   986,   nil,   nil,   983,   nil,   nil,
+   nil,   nil,   669,   nil,   986,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   983,
+   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   983,   983,
+   983,   983,   nil,   nil,   nil,   986,   986,   986,   986,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1033,  1033,   nil,   nil,
+  1033,   nil,   nil,   nil,   983,   nil,   nil,   nil,   nil,  1033,
+  1033,   986,  1033,  1033,  1033,  1033,  1033,  1033,  1033,   nil,
+   nil,  1033,  1033,   nil,   nil,   nil,  1033,  1033,  1033,  1033,
+   nil,   nil,   nil,   nil,   nil,  1033,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1033,  1033,   nil,  1033,  1033,  1033,  1033,
+  1033,  1033,  1033,  1033,  1033,  1033,  1033,   nil,   nil,  1033,
+   nil,   nil,   nil,   nil,  1038,  1038,   nil,   nil,  1038,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1038,  1038,  1033,
+  1038,  1038,  1038,  1038,  1038,  1038,  1038,   nil,   nil,  1038,
+  1038,   nil,   nil,   nil,  1038,  1038,  1038,  1038,   nil,   nil,
+   nil,   nil,   nil,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1038,  1038,   nil,  1038,  1038,  1038,  1038,  1038,  1038,
+  1038,  1038,  1038,  1038,  1038,   nil,   nil,  1038,   nil,   nil,
+   nil,   nil,  1039,  1039,   nil,   nil,  1039,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1039,  1039,  1038,  1039,  1039,
+  1039,  1039,  1039,  1039,  1039,   nil,   nil,  1039,  1039,   nil,
+   nil,   nil,  1039,  1039,  1039,  1039,   nil,   nil,   nil,   nil,
+   nil,  1039,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1039,
+  1039,   nil,  1039,  1039,  1039,  1039,  1039,  1039,  1039,  1039,
+  1039,  1039,  1039,   nil,  1057,  1039,  1057,  1057,  1057,  1057,
+  1057,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1057,   nil,   nil,   nil,   nil,  1039,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1057,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1057,  1057,  1057,  1057,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1057 ]
+
+racc_action_pointer = [
+   nil,    34,  2018,    60,   nil,   201,   nil,   nil,  6077,   763,
+   nil, 24008, 24141,   -12,   nil,   -30,    60,   -17,   152,   279,
+   112,   nil,   -60,  6216,  2298,   236,   nil,   -40,   nil,     0,
+  1084,  1216,  6355,  6494,  6633,   nil,  2158,  6772,  6911,   nil,
+   144,   208,   304,   268,   159,  7050,  7189,   489,  7328,   203,
+   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1348,   nil,  7467,   nil,   nil,    73,   nil,  7606,  7745,   nil,
+   nil,  7884,  8023,  8162,  8301, 24274,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   -65,   nil,   nil,   nil,   nil,   nil,   nil,   223,
+   255,   278,   284,   nil,   nil, 24407,   nil,   nil,   nil,   nil,
+   nil,   nil,     0,   nil,   nil,   139,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  8440,   nil,
+   nil,   nil,   nil,  8579,  8718,  8857,  8996,  9135,   312,   nil,
+   605,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   306,
+   nil,  2298,  9274,  9413,  9552,  9691,  9830,  9969, 24874, 24942,
+   nil,   nil, 10108, 10247, 10386,   nil,   nil,   356,   -55,   -52,
+   405,   162,   341,   408,   nil, 10525,  2438,   431, 10664, 10803,
+ 10942, 11081, 11220, 11359, 11498, 11637, 11776, 11915, 12054, 12193,
+ 12332, 12471, 12610, 12749, 12888, 13027, 13166, 13305, 13444, 13583,
+   nil,   nil,   nil,   nil, 13722,   nil,   nil,   nil,  1876,   nil,
+   nil,   426, 13861, 14000,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil, 14139,   nil,  2438,   nil,   402,   406,   nil, 14278,
+   460, 14417,   nil,   nil, 14556, 14695,   nil,   nil,   460,   nil,
+   nil, 14834,   925,   nil,   419,  2578,   461,   499,   474, 14973,
+  2718,   371,   411,   458,   551,   510,   nil,   548,   516,   206,
+   nil,   nil,   nil,   567,   254,   536, 15112,   nil,   308,   618,
+   514,   nil,   620, 15251,   nil, 15390,  2858,  1166,   587, 15529,
+ 15668,   nil,    11,   -10,    -1, 15807,  2998,  3138,   476,   699,
+   585,   -19,   -14,   589,   670,    -7,   702,   nil,   nil,   311,
+   342,   308,   nil,   625,   nil,   620, 15946,   nil,   nil,   nil,
+   112,   118,   120,   239,   344,   373,   377,   455,   459,   nil,
+   461,   nil,   nil,   645,   nil,   -59,   nil,   370,   nil,   538,
+   nil,   605,   378,   nil,   607,   397,   nil,   609,   -37,   nil,
+   610,   -27,   nil,   443,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 24540,   nil,
+   nil,   nil,   nil,   624,   nil,   nil,   612, 16085,   618,   nil,
+   nil,   618,   nil,   752,   182,   720,   nil,   nil,  2018,   nil,
+   nil,   nil,   nil,   nil,  2158,   644,   nil,   nil,   642,   644,
+   430,   547,  1480,   nil,   nil,   nil,   271,   403,   687,   nil,
+   nil,  1612,  1744,   nil,   nil,   nil,   -33,   nil,   690, 25010,
+ 25078, 16224,   187, 16363, 16502, 16641,  3138,  3278,   364,   490,
+   724,   726,   729,   748,   976,  1430,  1562,  3418,  3558,  3698,
+  3838,  3978,  4118,   844,  1039,  4258,  4398,  2578,  1166,   807,
+   nil,  1876,   nil,   nil,   nil,   nil,   691,   nil,   nil,   nil,
+   692,   nil,   nil, 16780,   nil,   nil, 16919,   nil, 17058,   nil,
+   265,   nil,   nil,   nil, 17197,  1178,   712,   702,   703,   nil,
+   nil,   705, 17336,   709, 17475, 25146, 25214,   753,   746,   nil,
+ 17614,   710,   nil, 17753, 17892, 25282, 25350,  1298,  2718, 18031,
+   833,   851,   735,   nil,   nil,   -80,   -68,   736,   751,   nil,
+   340,   777,  3278,   856,   nil,  3418,    30,   860,   868,   863,
+   890,   nil,   nil, 18170, 25418, 25486,     5,   nil,   nil,   763,
+   nil, 25554, 25622, 18309,   nil,   nil,   nil,   587,  3558,   811,
+   nil,   nil,   nil, 18448,   nil,   744,   nil,   773,   774,   nil,
+   777,   780,   781,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   769,   685,   nil,   nil, 18587,   nil,   nil,   nil,   882,
+   nil,   nil,   nil,   886,   nil,   nil,   895,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   198,   nil,
+   nil,   200,   nil,   nil,   nil,   826,   nil,   nil,   830,   nil,
+  3698,   nil, 24673,   nil,   842, 18726, 18865, 19004, 25690, 25758,
+ 19143, 19282,   585,   882, 19421, 19560, 19699, 19838,   882,   nil,
+   nil,   nil, 19977, 20116,   883,   nil,   nil,   nil,   189,   216,
+   542,   681,   870,   869,   nil,   116,   972,   163,   nil,   nil,
+   888,   nil,   996,   nil,   880,   nil,   922, 20255,   nil,   nil,
+ 20394,   nil,   nil,  -123, 20533,   882,   nil,   901,    -9,    28,
+   951,    33,   773,   952,   916, 20672,   nil,   995,   156,   221,
+   nil, 20811,   nil,   nil,   nil,   nil, 20950,   nil,   nil, 21089,
+   nil,   nil,   nil,   618,   nil,  1052,   nil,   nil,   nil,   nil,
+   nil,  1059,   nil, 21228,   944,    20,    29,   163,   165,  3838,
+   550,   781,   nil,   947,  3978, 21367,   535,  1076,  4118,   874,
+  1048, 24806,   165,    27,   960,   234,   nil,   nil,   578,  1147,
+   nil,  1279,   nil,   471,   nil, 21506,   nil,   949,   nil,   959,
+   961,   881,   968,   nil,   nil,   nil,   nil,   936,  4258,   nil,
+   nil,   nil,   nil,   nil,   982,   nil,   978, 21645,   982,   222,
+   274,   813,   945,   nil,  2858, 21784,   nil,   983,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 21923, 22062,
+ 22201, 22340,   317, 22479,   nil,   nil,  1411,   nil,  4398,   nil,
+   nil,  1000,   nil,   119,   nil,   nil,   nil,   nil,   985,   160,
+   nil,   nil,   nil,   nil,   nil,   nil,  4538,   nil,   987,  1029,
+   nil,   nil,   447,  1109,   nil,   nil, 22618,   nil,  4678,  1110,
+   nil,   nil,   nil, 22757,    42,    41,  1113,   nil,  1120,   551,
+   nil,   nil,  1124,  1009,   580,   nil,   nil,   nil,  4818,  4958,
+  1005,  1013,  1011,   nil,   nil,   nil,  1012,  1021,   nil,  1036,
+  1041,   nil,  1042,   nil,   nil,  1047,   980,   819,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1038,   nil,  1048,   320,   nil,
+   nil, 22896, 23035,  2998,  1051,  1055,   nil,  1057,  1065,  1070,
+   nil,  1103,  1101,  1087, 23174,   nil,   nil,   nil,   nil,  5098,
+  5238,   nil,     6, 23313,   nil,   nil,   nil,    10,   nil,   nil,
+   nil, 23452,  5378,   nil,   nil,   nil,  5518,   nil,   nil,   nil,
+  1144,  1127,  1235,  1010,   nil,   nil,  1543,   nil,  1675,   nil,
+  6793,   nil,  6932,   nil,   nil,   nil,   nil,  1122,  1125,   nil,
+   325,   nil,   nil, 25820,   nil,   nil, 25827,   nil,  8044,   nil,
+   nil,  1152, 23591,   884,  1213,   nil,  1266,  5658,    19,    38,
+   898,  1221,    69,   nil,  5798,   nil, 23730,   355,  1269,  5938,
+   nil,   nil,   451,   nil,   nil,   nil,  1150,  1151,  1153,  1168,
+  1077,  1184,  1169,   nil,   nil,  1173,  1174,  1176,  1179,   nil,
+  1180,   nil,   913, 25895,   nil,   nil,  1305, 23869, 25963, 26031,
+   106,   691,   nil,   nil,   nil,   nil,   nil,  1305,   nil,  1209,
+  8183,   nil,   nil,   nil,   nil,  1187,   nil, 26093,   nil,  8322,
+   nil, 14994,   nil, 15133,   nil,   nil,  1228,  1236,   nil,  1202,
+   128,   131,   171,   174,   nil,   nil,   nil,  1202,  1208,  1209,
+  1210,  1211,   162,   nil, 17357,   nil,   nil,   nil,   nil,  1212,
+   nil ]
+
+racc_action_default = [
+    -1,  -646,  -645,  -646,    -2,  -632,    -4,    -5,  -646,    -8,
+    -9,  -646,  -646,  -646,   -36,  -646,  -646,   -40,  -646,  -646,
+  -292,   -52,  -634,  -646,   -57,   -62,   -63,   -64,   -68,  -269,
+  -269,  -269,  -307,  -337,  -338,   -80,  -645,   -84,   -92,   -94,
+  -646,  -533,  -534,  -646,  -646,  -646,  -646,  -228,  -646,  -634,
+  -242,  -283,  -284,  -285,  -286,  -287,  -288,  -289,  -290,  -291,
+  -618,  -294,  -296,  -303,  -305,  -315,  -317,  -646,  -646,   -59,
+   -59,  -632,  -646,  -646,  -646,  -646,  -339,  -340,  -342,  -343,
+  -344,  -345,  -346,  -347,  -348,  -349,  -350,  -351,  -360,  -415,
+  -463,  -464,  -465,  -466,  -467,  -645,  -470,  -645,  -645,  -645,
+  -645,  -645,  -645,  -506,  -507,  -645,  -509,  -515,  -517,  -518,
+  -519,  -520,  -616,  -522,  -523,  -617,  -525,  -526,  -527,  -528,
+  -529,  -530,  -531,  -532,  -537,  -538,  1091,    -3,  -633,  -641,
+  -642,  -643,    -7,  -646,  -646,  -646,  -646,  -646,  -646,   -24,
+  -646,  -123,  -124,  -125,  -126,  -127,  -128,  -129,  -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,  -194,
+  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,   -29,
+  -130,  -645,  -646,  -646,  -646,  -646,  -646,  -645,  -646,  -646,
+  -628,  -629,  -646,  -646,  -634,  -635,   -56,  -646,  -533,  -534,
+  -646,  -292,  -646,  -646,  -234,  -646,  -645,  -646,  -646,  -646,
+  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,
+  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,  -646,
+  -243,  -244,  -245,  -246,  -646,  -353,  -443,  -423,  -646,  -630,
+  -631,   -69,  -645,  -646,  -314,  -352,  -427,  -436,  -438,   -75,
+  -433,   -76,  -634,   -77,  -249,  -264,  -645,  -645,  -268,  -646,
+  -274,  -646,  -645,  -610,  -646,  -646,   -78,   -79,  -632,   -17,
+   -18,  -646,   -21,   -22,   -82,  -645,  -634,  -646,   -85,   -88,
+  -645,  -100,  -101,  -646,  -646,  -108,  -307,  -310,  -634,  -646,
+  -337,  -338,  -341,  -434,  -646,   -90,  -646,   -96,  -302,  -516,
+  -646,  -222,  -223,  -646,  -235,  -646,  -645,  -298,  -634,  -645,
+  -645,  -316,   -58,  -646,  -646,  -646,  -645,  -645,  -632,  -646,
+  -633,  -533,  -534,  -646,  -646,  -292,  -646,  -370,  -371,  -118,
+  -119,  -646,  -121,  -646,  -292,  -645,  -646,  -533,  -534,  -330,
+  -123,  -124,  -163,  -164,  -165,  -181,  -186,  -193,  -196,  -332,
+  -646,  -605,  -606,  -565,  -468,  -646,  -491,  -646,  -493,  -646,
+  -495,  -646,  -646,  -475,  -646,  -646,  -481,  -646,  -646,  -487,
+  -646,  -646,  -489,  -646,  -508,  -510,  -511,  -512,  -513,    -6,
+  -644,   -30,   -31,   -32,   -33,   -34,   -10,   -11,  -646,   -26,
+   -27,   -28,  -131,  -646,   -37,   -39,  -279,  -646,  -646,  -278,
+   -38,  -646,   -41,  -646,  -292,   -49,   -51,  -204,  -254,  -274,
+   -53,   -54,   -42,  -205,  -254,  -634,  -259,  -260,  -645,  -645,
+  -619,  -620,  -269,  -431,  -621,  -622,  -620,  -619,  -269,  -430,
+  -432,  -621,  -622,   -48,  -212,   -55,  -634,  -313,  -646,  -646,
+  -646,  -645,  -302,  -646,  -646,  -646,  -213,  -214,  -215,  -216,
+  -217,  -218,  -219,  -220,  -224,  -225,  -226,  -227,  -229,  -230,
+  -231,  -232,  -233,  -236,  -237,  -238,  -239,  -634,  -247,  -646,
+  -444,  -269,  -619,  -620,   -66,   -70,  -634,  -270,  -440,  -443,
+  -634,  -309,  -265,  -646,  -273,  -266,  -646,  -271,  -646,  -275,
+  -646,  -613,  -615,   -16,  -633,   -20,  -646,  -634,   -81,  -300,
+   -97,   -86,  -646,  -634,  -645,  -646,  -646,  -107,  -646,  -516,
+  -646,   -93,   -98,  -646,  -646,  -646,  -646,  -248,  -240,  -646,
+  -455,  -646,  -634,  -297,  -250,  -638,  -638,  -634,  -646,  -608,
+  -638,  -646,  -645,  -361,  -362,  -645,  -646,  -646,  -646,  -646,
+  -646,  -356,  -450,  -645,  -646,  -646,  -302,   -59,  -118,  -119,
+  -120,  -646,  -646,  -645,  -325,  -539,  -541,  -327,  -645,  -543,
+  -334,  -626,  -627,  -646,  -416,  -565,  -419,  -604,  -604,  -548,
+  -550,  -550,  -550,  -564,  -566,  -567,  -568,  -569,  -570,  -571,
+  -572,  -573,  -646,  -575,  -577,  -579,  -584,  -586,  -587,  -589,
+  -594,  -596,  -597,  -599,  -600,  -601,  -646,  -469,  -492,  -497,
+  -498,  -500,  -471,  -494,  -472,  -496,  -473,  -474,  -646,  -477,
+  -479,  -646,  -480,  -483,  -484,  -646,  -485,  -486,  -646,  -514,
+  -645,   -25,  -646,   -35,  -282,  -646,  -646,  -645,  -646,  -646,
+  -646,  -646,  -435,  -646,  -261,  -263,  -646,  -646,   -71,  -257,
+  -258,  -428,  -646,  -646,   -73,  -429,  -312,  -636,  -619,  -620,
+  -619,  -620,  -634,  -646,  -422,  -645,   -65,  -424,  -440,  -256,
+  -646,  -441,  -646,  -308,  -645,  -272,  -276,  -646,  -611,  -612,
+  -646,   -19,   -23,   -83,  -646,   -89,   -95,  -634,  -619,  -620,
+  -645,  -623,  -106,  -646,   -91,  -646,  -211,  -221,  -634,  -645,
+  -354,  -645,  -295,  -359,  -299,  -251,  -640,  -639,  -253,  -640,
+  -304,  -306,  -609,  -645,  -363,  -645,   -60,  -364,  -365,  -320,
+  -321,  -646,  -323,  -646,  -634,  -619,  -620,  -623,  -301,  -645,
+  -118,  -119,  -122,  -634,  -645,  -646,  -646,  -646,  -645,  -565,
+  -565,  -646,  -634,  -646,  -634,  -646,  -546,  -547,  -646,  -646,
+  -557,  -646,  -560,  -646,  -562,  -646,  -372,  -646,  -374,  -376,
+  -379,  -382,  -634,  -578,  -588,  -598,  -602,  -646,  -645,  -476,
+  -478,  -482,  -488,  -490,  -646,  -132,  -280,  -646,  -634,  -619,
+  -620,  -620,  -619,   -50,  -255,  -646,  -637,  -645,   -44,  -207,
+   -45,  -208,   -72,   -46,  -210,   -47,  -209,   -74,  -646,  -646,
+  -646,  -646,  -435,  -646,  -404,  -405,  -634,  -407,  -645,  -426,
+  -425,  -646,  -437,  -645,  -439,  -267,  -277,  -614,   -87,  -435,
+   -99,  -311,   -13,   -15,  -355,  -357,  -645,  -462,  -456,  -645,
+  -457,  -458,  -638,  -646,  -358,  -366,  -646,  -368,  -645,  -646,
+   -61,  -322,  -446,  -646,  -646,  -435,  -646,  -435,  -646,  -646,
+  -328,  -331,  -646,  -634,  -646,  -335,  -607,  -417,  -645,  -645,
+  -409,  -634,  -604,  -585,  -603,  -549,  -550,  -550,  -576,  -550,
+  -550,  -595,  -550,  -573,  -590,  -634,  -646,  -646,  -381,  -574,
+  -499,  -502,  -503,  -504,  -505,  -646,   -12,  -281,  -435,   -43,
+  -206,  -262,  -646,  -241,  -604,  -604,  -386,  -645,  -645,  -645,
+  -403,  -646,  -634,  -573,  -581,  -582,  -592,  -445,   -67,  -645,
+  -645,  -461,  -646,  -646,  -460,  -252,  -318,  -646,  -369,  -319,
+  -447,  -646,  -645,  -324,  -326,  -540,  -645,  -333,  -542,  -544,
+  -543,  -646,  -646,  -646,  -418,  -545,  -646,  -553,  -646,  -555,
+  -646,  -558,  -646,  -561,  -563,  -373,  -375,  -377,  -380,  -501,
+  -646,  -384,  -385,  -394,  -388,  -396,  -646,  -399,  -646,  -401,
+  -406,  -646,  -646,  -580,  -646,  -442,  -645,  -645,  -533,  -534,
+  -646,  -646,  -292,  -459,  -645,  -448,  -646,  -645,  -646,  -645,
+  -420,  -421,  -634,  -411,  -413,  -414,  -550,  -550,  -550,  -550,
+  -646,  -646,  -604,  -583,  -387,  -645,  -645,  -645,  -645,  -593,
+  -645,  -408,  -591,  -646,  -302,   -14,  -455,  -645,  -646,  -646,
+  -302,  -645,  -449,  -451,  -452,  -453,  -329,  -646,  -410,  -646,
+  -646,  -551,  -554,  -556,  -559,  -378,  -383,  -646,  -391,  -646,
+  -393,  -646,  -397,  -646,  -400,  -402,  -301,  -623,  -454,  -634,
+  -619,  -620,  -623,  -301,  -367,  -336,  -412,  -550,  -645,  -645,
+  -645,  -645,  -435,  -552,  -646,  -389,  -392,  -395,  -398,  -645,
+  -390 ]
+
+racc_goto_table = [
+     6,   228,   236,   233,   389,   295,   295,   295,   318,   279,
+   277,     4,   580,   286,   290,   351,   144,   144,   455,     9,
+   452,   515,   131,   525,   729,     9,   473,   139,   220,   426,
+   345,   128,   332,   332,   415,   621,   768,   551,   353,   354,
+   462,   468,   358,   446,   572,   575,   446,   590,   317,   352,
+   352,   339,   446,   352,   314,   296,   296,   296,   606,   297,
+   297,   297,   356,   357,   708,   147,   147,   332,   332,   332,
+   439,   440,   863,   516,   869,   776,   777,   509,   127,   347,
+   144,   281,   289,   291,   335,   978,   705,   316,   131,   705,
+   511,   613,   672,   396,   786,   398,   400,   403,   406,   409,
+   412,   436,   449,   396,   421,   422,   423,   424,   901,   792,
+   144,   395,   838,   853,   928,   352,   352,   352,   352,   735,
+   738,   413,   700,  1013,   742,   976,  1029,   891,  1015,   648,
+   375,   379,   651,     1,     2,   138,   897,   132,   899,   293,
+   306,   307,   660,   852,   359,     9,   940,   643,   711,   645,
+   536,   219,   649,   368,   425,   649,   435,   428,   746,   870,
+   278,   698,   662,   343,   567,   697,   391,   568,   366,   594,
+   390,   600,   346,   348,   562,   349,   350,   764,   527,   766,
+   529,   956,   598,   531,   532,   525,   599,   771,   960,   931,
+   898,   977,   930,   929,   932,  1012,   604,  1029,  1055,   887,
+   295,   434,   445,   393,   740,   445,   450,   451,   773,  1076,
+   518,   445,   463,   708,  1015,   475,   476,   519,    19,   479,
+   843,   561,   874,   695,    19,   456,  1043,   753,   859,   571,
+   942,   394,   751,   433,   472,   397,   399,   705,   705,   237,
+   976,   402,   405,   715,   408,   438,   438,   621,   237,   237,
+   237,   724,    19,   323,   323,   295,   295,   419,   317,   786,
+   939,  1025,   411,   908,   910,   295,   797,   762,   798,   414,
+   774,   765,   692,   896,   905,   893,  1023,   708,    19,   603,
+   456,   nil,   nil,   237,   237,   991,   nil,   237,   363,   373,
+   373,   462,   468,   901,   524,   524,   nil,   nil,   nil,   nil,
+   396,   nil,   841,   613,   nil,   545,   296,   552,   nil,   548,
+   297,   nil,   nil,   286,   332,   296,   664,   290,   530,   297,
+   702,   nil,   555,  1016,   nil,   131,   576,   317,   535,   832,
+   nil,   332,   317,   314,   534,   717,  1044,   352,   314,   nil,
+  1026,   549,   nil,  1027,    19,   584,   nil,   564,   569,   237,
+   237,   237,   237,    19,   849,   453,   nil,   720,   597,   nil,
+   965,   474,   nil,   nil,   nil,   541,   537,   720,   577,   578,
+  1074,   543,   565,   596,   754,   131,   566,   570,   786,   786,
+  1035,   533,   nil,   898,   763,   nil,   nil,   nil,   nil,   nil,
+   517,   875,   981,   982,   898,   nil,   720,  1009,   800,   520,
+   877,   800,   706,   nil,   720,   571,   nil,   709,   nil,   nil,
+   nil,   621,   621,   nil,  1078,   848,   945,   nil,   822,   nil,
+   nil,   621,   nil,   621,   827,   668,   nil,   712,   nil,   nil,
+   845,   579,   nil,   144,   883,   884,   673,    19,   237,   443,
+   237,   237,   443,   237,   661,   918,   680,   nil,   443,   237,
+   237,   nil,   685,   nil,   295,   nil,   524,   524,   808,   708,
+   679,   nil,    19,   463,   nil,   nil,   nil,   613,   613,   nil,
+   818,   820,   nil,   767,   898,   nil,   823,   825,   933,   456,
+   462,   468,   147,   nil,   705,   472,   446,   nil,   693,   nil,
+  1056,   nil,   786,   786,   nil,   680,   446,   446,   237,   237,
+  1068,   nil,   446,   446,   793,   nil,   nil,   nil,   237,   679,
+   nil,   nil,   nil,   552,   678,   nil,   nil,   295,   nil,   nil,
+   684,   552,   nil,   nil,   nil,   nil,   nil,    19,   nil,   463,
+   nil,    19,   nil,   nil,   nil,   323,    19,   332,   nil,   463,
+   nil,   728,   456,   845,   806,   332,   nil,   nil,   673,   nil,
+   704,   472,   323,   706,   571,   nil,   295,   nil,   nil,   nil,
+   nil,   472,    19,   696,   nil,   952,   295,   nil,   463,   nil,
+   nil,   237,    19,    19,   nil,   nil,   463,   nil,   nil,   860,
+   759,   456,   nil,   nil,   743,   772,   846,   745,   nil,   847,
+   472,   456,   237,   747,   nil,   nil,   472,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   621,   919,
+   858,   nil,   474,   nil,   453,   706,   nil,   nil,   571,   nil,
+   nil,   nil,   nil,   nil,   nil,   933,   nil,   nil,   933,   nil,
+   nil,   nil,   872,   997,   nil,   446,   nil,   477,  1004,   878,
+   295,   nil,   nil,   882,   nil,   445,   934,   840,   nil,   nil,
+   nil,   nil,   463,   nil,   nil,   445,   445,   nil,     6,   nil,
+  1045,   445,   445,   nil,   904,   456,   nil,   144,   nil,   804,
+   nil,   nil,   nil,   673,   472,   732,   nil,     9,   805,   nil,
+   nil,   839,   726,   nil,   nil,   552,   917,   813,   nil,   nil,
+   nil,   749,   750,   834,   752,   521,   850,   237,   673,   933,
+   885,   817,   524,   nil,   680,   nil,  1082,   685,   nil,   332,
+   nil,   nil,   nil,   937,   nil,   nil,   147,   nil,   679,   538,
+   332,   nil,   nil,   nil,   nil,   nil,   nil,   857,   nil,   861,
+   nil,   nil,   nil,   nil,   nil,   673,   879,   nil,   nil,   nil,
+   nil,   867,   nil,   867,   673,   nil,   nil,   352,   nil,   nil,
+    19,   563,   950,   nil,   438,   890,   nil,   nil,   323,   nil,
+   237,   892,   nil,   862,   962,   nil,   323,   nil,   nil,   nil,
+   nil,   876,   780,   782,   784,   237,   144,   nil,   nil,   nil,
+   nil,   nil,   nil,   880,   nil,   nil,   nil,   nil,    19,   673,
+   934,    19,   nil,   934,   445,   nil,   934,   nil,   934,   237,
+   571,   nil,   nil,   nil,   nil,   819,   821,   nil,   nil,   237,
+   915,   824,   826,   nil,    19,   524,   nil,   890,   nil,   237,
+   nil,   nil,   925,   nil,   nil,   nil,   nil,   nil,  1069,   894,
+  1005,  1008,   894,   nil,   nil,   nil,   nil,   947,   nil,   nil,
+   nil,   834,   nil,   nil,   nil,   nil,   nil,   nil,   352,   nil,
+   720,   nil,   nil,   nil,   nil,   nil,   nil,   944,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   871,   nil,   934,   941,   934,
+   nil,   934,   nil,   934,   nil,   nil,    19,   nil,   nil,   686,
+   948,   881,   443,   237,  1047,  1042,    19,   nil,   nil,   nil,
+   926,   nil,   443,   443,   934,   nil,   955,   nil,   443,   443,
+   961,   959,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   890,   nil,   nil,   nil,   nil,   nil,   699,
+   nil,   nil,   nil,   703,   nil,   984,   984,   984,   nil,   332,
+   323,   nil,   nil,   nil,   900,   nil,   902,   nil,   332,   nil,
+   713,   323,   nil,   nil,   920,   nil,   716,   nil,   nil,   nil,
+   nil,   995,   996,   nil,   nil,   nil,   nil,   819,   821,   826,
+   824,   nil,   nil,   nil,  1007,   734,  1022,    29,   nil,   925,
+   nil,   nil,   925,    29,   925,    19,   nil,   946,   nil,   nil,
+    19,   237,  1038,   949,    19,   nil,   nil,   332,    29,   927,
+   953,   nil,   954,  1048,   857,   nil,   957,    29,    29,    29,
+   nil,    29,   nil,   nil,   nil,   867,   nil,   nil,   nil,  1036,
+   295,   nil,   nil,   nil,    19,   nil,  1041,   nil,   nil,   nil,
+   nil,   nil,   463,   984,   984,   984,   984,    29,   984,   nil,
+   nil,   443,    29,    29,   894,   456,    29,   926,   472,   867,
+   926,   nil,   926,   925,   472,   925,   nil,   925,   nil,   925,
+   673,   920,   nil,   nil,    19,   nil,   nil,   nil,   967,   969,
+   nil,   971,   973,   nil,   974,   nil,   nil,   nil,   nil,   nil,
+   925,   nil,    19,   nil,   nil,   nil,   984,   984,   984,   984,
+   nil,   nil,   237,   nil,    19,   nil,   nil,   984,   nil,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,    29,
+    29,    29,    29,   nil,    19,    19,   nil,   nil,   nil,   nil,
+   nil,   926,   nil,   926,   nil,   926,   nil,   926,   nil,  1017,
+   nil,  1018,  1046,  1019,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   851,   nil,   nil,   nil,   nil,   nil,   nil,   926,  1028,
+   nil,  1030,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   993,   985,   987,   989,   nil,    19,    19,   nil,   nil,  1000,
+   nil,  1075,   nil,   nil,   nil,   nil,   nil,   nil,    19,   nil,
+   nil,   nil,    19,   nil,   nil,   886,   nil,   nil,  1051,  1052,
+  1053,  1054,   nil,   nil,   nil,   nil,    29,    29,    29,    29,
+    29,    29,    29,   nil,   nil,   909,   nil,    29,    29,    29,
+   nil,   nil,   nil,  1077,   nil,   nil,   nil,   nil,  1032,   nil,
+  1079,    29,  1080,    19,  1081,   nil,   nil,   nil,   nil,   nil,
+    19,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1089,   nil,  1083,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,    29,  1058,
+  1060,  1062,  1064,   237,  1065,   nil,   nil,    29,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,    29,   nil,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,    29,   958,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   964,   nil,    32,    32,    32,   nil,
+    32,   nil,  1085,  1086,  1087,  1088,   nil,   nil,   975,   nil,
+   nil,    29,   nil,  1090,   nil,   nil,   nil,   nil,   nil,   nil,
+    29,    29,    29,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,    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,   nil,   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,    32,    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,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
+    32,    32,   nil,   nil,   nil,   nil,    32,    32,    32,    29,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+    32,   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,    29,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,   nil,    32,    32,    29,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    29,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    32,
+   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,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+    32,    32,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+   nil,    29,    29,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+    32,    29,    29,   nil,   nil,   nil,   nil,    29,    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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   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,   nil,   nil,   nil,    29,
+    29,   nil,   nil,    29,   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,    29,   nil,   nil,   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,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,    29,   nil,   nil,    32,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,    29,    29,   244,   nil,    32,   nil,   nil,
+   nil,   nil,    32,   nil,   294,   294,   294,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   341,   342,   nil,
+   344,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
+   nil,    29,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+    32,    32,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   367,   nil,
+   nil,   nil,   nil,   nil,   294,   448,   nil,   nil,   454,   294,
+   nil,   nil,    32,   nil,   454,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,    32,
+   486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
+   496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
+   506,   507,    32,   nil,    16,    18,   508,   nil,   nil,   nil,
+   nil,    18,   nil,    16,   294,   294,   nil,   nil,   nil,   nil,
+    32,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,
+    32,   294,    32,   294,   nil,   nil,   294,   294,   nil,    18,
+   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,    18,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   557,   nil,   558,   nil,   nil,
+   nil,   294,   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   441,
+   nil,   nil,   441,    32,    32,   nil,   nil,   nil,   441,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+    32,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   294,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   325,   325,   nil,    16,   nil,   nil,
+   nil,    16,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   294,   nil,   454,   454,   454,   nil,   365,
+   374,   374,    16,   nil,    18,   nil,    18,   nil,   nil,    18,
+   nil,   nil,    16,    16,   nil,    18,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   294,   nil,
+   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    20,   294,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   454,   727,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,    18,   294,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,    18,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   321,   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,    18,
+    18,   nil,   nil,   nil,   nil,    41,   nil,   nil,    20,   nil,
+   444,   nil,   nil,   444,   nil,   361,   377,   377,   377,   444,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   294,   454,   294,
+   nil,   nil,   nil,   814,   nil,   nil,   294,   294,   454,   454,
+    16,   nil,   nil,   nil,   454,   454,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,
+    41,   nil,   294,   nil,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,    20,   294,   nil,   nil,   325,    20,   294,   nil,
+   nil,   294,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   325,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    16,    18,   nil,   294,
+   nil,   nil,   441,   nil,   nil,   nil,    16,   454,   nil,    41,
+   nil,   nil,   441,   441,   nil,   nil,   nil,   nil,   441,   441,
+   454,   454,   454,   454,   nil,   923,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   321,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   321,
+    16,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   294,   454,   nil,   nil,   nil,   nil,    41,
+    41,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,    18,    16,   nil,   nil,   nil,   nil,    18,
+    18,    20,   nil,   294,   nil,    18,    18,   nil,   nil,   325,
+   nil,   441,   nil,   nil,   nil,   nil,   nil,   325,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,    20,
+    42,   nil,    20,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   294,   nil,
+   nil,   nil,   nil,   nil,    16,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   322,   322,   nil,   nil,   nil,
+   nil,   nil,    18,   nil,    16,    16,   nil,    18,   nil,   294,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   362,   378,   378,   378,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
+   nil,   nil,   nil,   444,   nil,    16,    16,    20,    18,  1003,
+   nil,   nil,   nil,   444,   444,   nil,   nil,   nil,    16,   444,
+   444,   nil,    16,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   321,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   321,   nil,    42,   nil,   nil,   nil,    18,
+   nil,   325,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   325,    16,   nil,    41,   nil,   nil,    41,   nil,
+    16,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,
+   nil,    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
+   nil,    20,   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,   nil,    42,
+   nil,   nil,    18,    18,   914,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,    18,
+   nil,   nil,   444,    41,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,   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,
+    18,   nil,   nil,    20,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,   nil,    18,   nil,   nil,    20,   nil,   321,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,    42,
+   nil,   nil,   nil,    42,   nil,    20,    20,   322,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,    42,   nil,   nil,    41,   nil,   nil,
+   nil,    41,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,
+   nil,   374,   nil,   nil,   nil,   nil,    20,    20,   nil,   nil,
+  1002,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,    41,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   374,
+   nil,    41,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,    20,   nil,   nil,    41,
+   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,   nil,   nil,   nil,   nil,
+   nil,    41,    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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   377,   nil,   nil,
+   nil,   nil,    41,    41,   nil,   nil,   998,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,    41,   nil,   nil,   nil,    41,
+   322,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,    42,   nil,   377,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   378,   nil,   nil,   nil,   nil,    42,    42,   nil,
+   nil,   999,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,    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,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   378,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,    42 ]
+
+racc_goto_check = [
+     6,    38,    27,    40,    70,    46,    46,    46,    63,    38,
+   168,     2,   113,    85,    85,   102,    71,    71,    36,     9,
+    33,    52,   118,    87,    15,     9,    33,    22,    22,    10,
+    40,     8,    78,    78,    70,   206,   121,    65,    24,    24,
+    50,    50,    24,    25,   106,   106,    25,    68,    14,    31,
+    31,    76,    25,    31,    59,    82,    82,    82,   167,    84,
+    84,    84,    42,    42,   217,    73,    73,    78,    78,    78,
+    29,    29,   107,    36,   109,   150,   150,   169,     5,     9,
+    71,    51,    51,    51,    64,   145,    88,    60,   118,    88,
+    50,   201,    37,     6,   143,     6,     6,     6,     6,     6,
+     6,    80,    80,     6,    24,    24,    24,    24,   212,   144,
+    71,   185,   157,    17,   155,    31,    31,    31,    31,    83,
+    83,   185,    53,   161,    83,   142,   213,   159,   162,   189,
+    69,    69,   189,     1,     3,    11,   156,     7,   156,    58,
+    58,    58,    13,    16,     5,     9,    18,   190,    20,   190,
+    21,    23,   190,    26,     9,   190,    30,    32,    43,    45,
+    49,    55,    74,    79,    81,    86,    98,   101,   115,   117,
+   122,   123,   124,   125,   126,   127,   128,   129,    80,   130,
+    80,   131,   132,    80,    80,    87,   133,   134,   135,   159,
+   207,   146,   147,   156,   153,   160,   163,   213,   145,   164,
+    46,    27,    27,   165,    37,    27,    31,    31,   166,   161,
+   171,    27,    85,   217,   162,    31,    31,   172,    35,    38,
+   174,    12,   175,   177,    35,     6,   178,   179,   180,    80,
+   181,   184,   113,    14,    71,   186,   187,    88,    88,    35,
+   142,   188,   191,    65,   192,    82,    82,   206,    35,    35,
+    35,    65,    35,    35,    35,    46,    46,     7,    14,   143,
+   157,   155,   193,   143,   194,    46,   195,    68,   196,   199,
+   167,   200,    36,   205,   144,   209,   210,   217,    35,   216,
+     6,   nil,   nil,    35,    35,   159,   nil,    35,    35,    35,
+    35,    50,    50,   212,     6,     6,   nil,   nil,   nil,   nil,
+     6,   nil,    53,   201,   nil,    38,    82,    63,   nil,    40,
+    84,   nil,   nil,    85,    78,    82,    80,    85,   185,    84,
+   169,   nil,    38,   156,   nil,   118,    24,    14,     9,    37,
+   nil,    78,    14,    59,     8,    36,   109,    31,    59,   nil,
+   156,    76,   nil,   156,    35,    38,   nil,     6,     6,    35,
+    35,    35,    35,    35,    37,    75,   nil,    50,    31,   nil,
+   150,    75,   nil,   nil,   nil,    64,    60,    50,    14,    14,
+   107,    60,    82,     6,    36,   118,    84,    84,   143,   143,
+    17,     5,   nil,   207,    36,   nil,   nil,   nil,   nil,   nil,
+    58,    37,   150,   150,   207,   nil,    50,   121,   190,    58,
+    37,   190,    80,   nil,    50,    80,   nil,    80,   nil,   nil,
+   nil,   206,   206,   nil,   156,    65,    83,   nil,    52,   nil,
+   nil,   206,   nil,   206,    52,    38,   nil,    10,   nil,   nil,
+    87,     5,   nil,    71,   167,   167,    40,    35,    35,    35,
+    35,    35,    35,    35,    22,    37,    85,   nil,    35,    35,
+    35,   nil,    85,   nil,    46,   nil,     6,     6,    36,   217,
+     6,   nil,    35,    85,   nil,   nil,   nil,   201,   201,   nil,
+    33,    33,   nil,    12,   207,   nil,    33,    33,   206,     6,
+    50,    50,    73,   nil,    88,    71,    25,   nil,    40,   nil,
+   150,   nil,   143,   143,   nil,    85,    25,    25,    35,    35,
+    15,   nil,    25,    25,    80,   nil,   nil,   nil,    35,     6,
+   nil,   nil,   nil,    63,    51,   nil,   nil,    46,   nil,   nil,
+    51,    63,   nil,   nil,   nil,   nil,   nil,    35,   nil,    85,
+   nil,    35,   nil,   nil,   nil,    35,    35,    78,   nil,    85,
+   nil,    31,     6,    87,    80,    78,   nil,   nil,    40,   nil,
+    84,    71,    35,    80,    80,   nil,    46,   nil,   nil,   nil,
+   nil,    71,    35,    51,   nil,   106,    46,   nil,    85,   nil,
+   nil,    35,    35,    35,   nil,   nil,    85,   nil,   nil,    29,
+    42,     6,   nil,   nil,    14,    31,    80,    14,   nil,    80,
+    71,     6,    35,   118,   nil,   nil,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   206,    33,
+    80,   nil,    75,   nil,    75,    80,   nil,   nil,    80,   nil,
+   nil,   nil,   nil,   nil,   nil,   206,   nil,   nil,   206,   nil,
+   nil,   nil,    80,   106,   nil,    25,   nil,    61,   106,    12,
+    46,   nil,   nil,    12,   nil,    27,   208,   102,   nil,   nil,
+   nil,   nil,    85,   nil,   nil,    27,    27,   nil,     6,   nil,
+   113,    27,    27,   nil,    80,     6,   nil,    71,   nil,     2,
+   nil,   nil,   nil,    40,    71,   100,   nil,     9,    22,   nil,
+   nil,   168,    75,   nil,   nil,    63,    80,     9,   nil,   nil,
+   nil,   100,   100,     6,   100,    61,    63,    35,    40,   206,
+    70,    84,     6,   nil,    85,   nil,    37,    85,   nil,    78,
+   nil,   nil,   nil,    12,   nil,   nil,    73,   nil,     6,    61,
+    78,   nil,   nil,   nil,   nil,   nil,   nil,     6,   nil,     6,
+   nil,   nil,   nil,   nil,   nil,    40,    24,   nil,   nil,   nil,
+   nil,     6,   nil,     6,    40,   nil,   nil,    31,   nil,   nil,
+    35,    61,    80,   nil,    82,    40,   nil,   nil,    35,   nil,
+    35,   149,   nil,    84,    12,   nil,    35,   nil,   nil,   nil,
+   nil,    14,   204,   204,   204,    35,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   118,   nil,   nil,   nil,   nil,    35,    40,
+   208,    35,   nil,   208,    27,   nil,   208,   nil,   208,    35,
+    80,   nil,   nil,   nil,   nil,    75,    75,   nil,   nil,    35,
+    14,    75,    75,   nil,    35,     6,   nil,    40,   nil,    35,
+   nil,   nil,   149,   nil,   nil,   nil,   nil,   nil,    36,   151,
+    80,    12,   151,   nil,   nil,   nil,   nil,    24,   nil,   nil,
+   nil,     6,   nil,   nil,   nil,   nil,   nil,   nil,    31,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,     6,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   100,   nil,   208,    14,   208,
+   nil,   208,   nil,   208,   nil,   nil,    35,   nil,   nil,    61,
+    14,   100,    35,    35,    12,    80,    35,   nil,   nil,   nil,
+   151,   nil,    35,    35,   208,   nil,   118,   nil,    35,    35,
+    14,   118,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,    61,
+   nil,   nil,   nil,    61,   nil,     6,     6,     6,   nil,    78,
+    35,   nil,   nil,   nil,   154,   nil,   154,   nil,    78,   nil,
+    61,    35,   nil,   nil,    75,   nil,    61,   nil,   nil,   nil,
+   nil,    14,    14,   nil,   nil,   nil,   nil,    75,    75,    75,
+    75,   nil,   nil,   nil,    14,    61,   149,    54,   nil,   149,
+   nil,   nil,   149,    54,   149,    35,   nil,   100,   nil,   nil,
+    35,    35,    38,   100,    35,   nil,   nil,    78,    54,   154,
+   100,   nil,   100,    40,     6,   nil,   100,    54,    54,    54,
+   nil,    54,   nil,   nil,   nil,     6,   nil,   nil,   nil,    14,
+    46,   nil,   nil,   nil,    35,   nil,    14,   nil,   nil,   nil,
+   nil,   nil,    85,     6,     6,     6,     6,    54,     6,   nil,
+   nil,    35,    54,    54,   151,     6,    54,   151,    71,     6,
+   151,   nil,   151,   149,    71,   149,   nil,   149,   nil,   149,
+    40,    75,   nil,   nil,    35,   nil,   nil,   nil,   204,   204,
+   nil,   204,   204,   nil,   204,   nil,   nil,   nil,   nil,   nil,
+   149,   nil,    35,   nil,   nil,   nil,     6,     6,     6,     6,
+   nil,   nil,    35,   nil,    35,   nil,   nil,     6,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,    54,
+    54,    54,    54,   nil,    35,    35,   nil,   nil,   nil,   nil,
+   nil,   151,   nil,   151,   nil,   151,   nil,   151,   nil,   154,
+   nil,   154,   100,   154,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    61,   nil,   nil,   nil,   nil,   nil,   nil,   151,   154,
+   nil,   154,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   152,   152,   152,   nil,    35,    35,   nil,   nil,    35,
+   nil,   100,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,
+   nil,   nil,    35,   nil,   nil,    61,   nil,   nil,   204,   204,
+   204,   204,   nil,   nil,   nil,   nil,    54,    54,    54,    54,
+    54,    54,    54,   nil,   nil,    61,   nil,    54,    54,    54,
+   nil,   nil,   nil,   154,   nil,   nil,   nil,   nil,    35,   nil,
+   154,    54,   154,    35,   154,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   154,   nil,   204,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,    54,   152,
+   152,   152,   152,    35,   152,   nil,   nil,    54,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,    54,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,    54,    61,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,    61,   nil,    57,    57,    57,   nil,
+    57,   nil,   152,   152,   152,   152,   nil,   nil,    61,   nil,
+   nil,    54,   nil,   152,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,    54,    54,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,    57,    57,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,    57,    57,
+    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,    57,    57,    57,    57,
+    57,    57,   nil,   nil,   nil,   nil,    57,    57,    57,    54,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   nil,    57,    57,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,    54,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+    57,    57,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+   nil,    54,    54,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+    57,    54,    54,   nil,   nil,   nil,   nil,    54,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,
+    54,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,    54,   nil,   nil,    57,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
+   nil,   nil,   nil,    54,    54,    41,   nil,    57,   nil,   nil,
+   nil,   nil,    57,   nil,    41,    41,    41,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   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,    54,    54,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   nil,    54,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+    57,    57,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+    57,    57,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   nil,   nil,    54,   nil,   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,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,    57,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,    41,    41,
+   nil,   nil,    57,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    57,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    57,   nil,    28,    34,    41,   nil,   nil,   nil,
+   nil,    34,   nil,    28,    41,    41,   nil,   nil,   nil,   nil,
+    57,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+    57,    41,    57,    41,   nil,   nil,    41,    41,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,   nil,   nil,
+   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,    28,
+   nil,   nil,    28,    57,    57,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+    57,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,    57,    41,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,    39,    39,   nil,    28,   nil,   nil,
+   nil,    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,    41,   nil,    41,    41,    41,   nil,    39,
+    39,    39,    28,   nil,    34,   nil,    34,   nil,   nil,    34,
+   nil,   nil,    28,    28,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    39,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,    41,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,    34,    41,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    34,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
+    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    34,
+    34,   nil,   nil,   nil,   nil,    66,   nil,   nil,    39,   nil,
+    39,   nil,   nil,    39,   nil,    66,    66,    66,    66,    39,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,   nil,    41,    41,    41,
+   nil,   nil,   nil,    41,   nil,   nil,    41,    41,    41,    41,
+    28,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+    66,   nil,    41,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,    39,    41,   nil,   nil,    39,    39,    41,   nil,
+   nil,    41,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    28,    34,   nil,    41,
+   nil,   nil,    28,   nil,   nil,   nil,    28,    41,   nil,    66,
+   nil,   nil,    28,    28,   nil,   nil,   nil,   nil,    28,    28,
+    41,    41,    41,    41,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,    66,
+    28,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,    66,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,    66,
+    66,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,    34,    28,   nil,   nil,   nil,   nil,    34,
+    34,    39,   nil,    41,   nil,    34,    34,   nil,   nil,    39,
+   nil,    28,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,    39,
+    67,   nil,    39,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,    28,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,    67,    67,   nil,   nil,   nil,
+   nil,   nil,    34,   nil,    28,    28,   nil,    34,   nil,    41,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,    67,    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,    28,    28,    39,    34,    28,
+   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,    28,    39,
+    39,   nil,    28,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,    66,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,   nil,    67,   nil,   nil,   nil,    34,
+   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,    39,    28,   nil,    66,   nil,   nil,    66,   nil,
+    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,
+   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
+   nil,    39,   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,    67,
+   nil,   nil,    34,    34,    39,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,    34,
+   nil,   nil,    39,    66,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,   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,
+    34,   nil,   nil,    39,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,    34,   nil,   nil,    39,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    67,
+   nil,   nil,   nil,    67,   nil,    39,    39,    67,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    66,   nil,    67,   nil,   nil,    66,   nil,   nil,
+   nil,    66,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,    39,    39,   nil,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,    66,   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,    39,
+   nil,    66,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,    39,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,    66,    66,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,    66,   nil,   nil,   nil,    66,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,    67,   nil,    66,   nil,   nil,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,    66,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,    67,    67,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,    67 ]
+
+racc_goto_pointer = [
+   nil,   133,     9,   134,   nil,    73,    -2,   129,    26,    17,
+  -109,   125,  -125,  -285,    12,  -536,  -586,  -616,  -706,   nil,
+  -386,  -163,    16,   139,   -29,  -180,    81,   -21,  1976,  -152,
+   -66,   -18,    18,  -206,  2103,   216,  -209,  -363,   -18,  2247,
+   -19,  1832,    -7,  -418,   nil,  -587,   -27,   nil,   nil,   133,
+  -188,    52,  -260,  -396,   965,  -353,   nil,  1264,   107,    18,
+    51,   403,   nil,   -29,    46,  -299,  2403,  2818,  -324,    57,
+   -71,     5,   nil,    54,  -270,   129,     7,   nil,    -5,   116,
+  -121,  -185,    23,  -446,    27,   -16,  -346,  -274,  -437,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   114,  -183,   -50,   nil,   nil,   nil,  -309,  -671,   nil,  -671,
+   nil,   nil,   nil,  -347,   nil,    96,   nil,  -206,    17,   nil,
+   nil,  -563,    95,  -219,   111,   111,  -173,   112,   112,  -417,
+  -418,  -699,  -197,  -203,  -413,  -697,   nil,   nil,   nil,   nil,
+   nil,   nil,  -781,  -528,  -513,  -822,  -715,  -644,   nil,   -14,
+  -532,    54,   224,  -642,   153,  -722,  -643,  -583,   nil,  -647,
+  -768,  -840,  -835,  -197,  -574,   114,  -396,  -335,   -15,  -199,
+   nil,   -77,   -71,   nil,  -481,  -531,   nil,  -287,  -781,  -355,
+  -503,  -629,   nil,   nil,   139,    16,   138,   138,   142,  -273,
+  -250,   142,   143,   160,  -533,  -374,  -373,   nil,   nil,   164,
+  -324,  -302,   nil,   nil,   162,  -506,  -358,  -589,  -190,  -500,
+  -704,   nil,  -673,  -860,   nil,   nil,  -113,  -462 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   309,     7,   360,   312,
+   nil,   nil,   nil,   nil,   560,   nil,   nil,   nil,   nil,   308,
+   310,   nil,   nil,   nil,   nil,    14,    15,    21,   242,   nil,
+   nil,    17,   nil,   442,   243,   340,   nil,   nil,   592,   241,
+   478,    24,   nil,   nil,   355,   nil,    25,    26,    27,   nil,
+   723,   nil,   nil,   nil,   329,   nil,    28,   326,   457,    35,
+   nil,   nil,    37,    40,    39,   nil,   238,   239,   372,   nil,
+   146,   465,   145,    91,   nil,   447,   107,    47,    50,   274,
+   300,   nil,   458,   nil,   459,   470,   681,   522,   298,   283,
+    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
+   nil,   nil,   284,    65,    66,    67,   nil,   nil,    68,   865,
+    69,    70,    71,   nil,    72,   nil,    73,   nil,   573,    74,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   288,   276,   731,   856,
+   582,   866,   788,   620,   nil,   789,   790,  1024,   924,   608,
+   nil,   609,   nil,   nil,   610,   nil,   612,   nil,   835,   nil,
+   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   469,   nil,   nil,   701,   nil,   nil,   510,   nil,   nil,   nil,
+   nil,   nil,    90,    92,    94,   nil,   nil,   nil,   nil,   nil,
+   638,   nil,   nil,   nil,   nil,   nil,   nil,   103,   104,   nil,
+   nil,   895,   770,   607,   nil,   611,   903,   623,   625,   626,
+   935,   629,   630,   936,   633,   636,   nil,   303 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 150, :_reduce_1,
+  2, 148, :_reduce_2,
+  2, 149, :_reduce_3,
+  1, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  3, 151, :_reduce_6,
+  2, 151, :_reduce_none,
+  1, 154, :_reduce_none,
+  0, 158, :_reduce_9,
+  3, 154, :_reduce_10,
+  0, 160, :_reduce_11,
+  4, 157, :_reduce_12,
+  0, 165, :_reduce_13,
+  6, 159, :_reduce_14,
+  3, 159, :_reduce_15,
+  2, 161, :_reduce_16,
+  1, 166, :_reduce_none,
+  1, 166, :_reduce_none,
+  3, 166, :_reduce_19,
+  2, 166, :_reduce_20,
+  1, 167, :_reduce_none,
+  0, 168, :_reduce_22,
+  3, 167, :_reduce_23,
+  0, 179, :_reduce_24,
+  4, 156, :_reduce_25,
+  3, 156, :_reduce_26,
+  3, 156, :_reduce_27,
+  3, 156, :_reduce_28,
+  2, 156, :_reduce_29,
+  3, 156, :_reduce_30,
+  3, 156, :_reduce_31,
+  3, 156, :_reduce_32,
+  3, 156, :_reduce_33,
+  3, 156, :_reduce_34,
+  4, 156, :_reduce_35,
+  1, 156, :_reduce_none,
+  3, 156, :_reduce_37,
+  3, 156, :_reduce_38,
+  3, 156, :_reduce_39,
+  1, 156, :_reduce_none,
+  3, 172, :_reduce_41,
+  3, 172, :_reduce_42,
+  6, 172, :_reduce_43,
+  5, 172, :_reduce_44,
+  5, 172, :_reduce_45,
+  5, 172, :_reduce_46,
+  5, 172, :_reduce_47,
+  3, 172, :_reduce_48,
+  1, 180, :_reduce_49,
+  3, 180, :_reduce_50,
+  1, 180, :_reduce_none,
+  1, 178, :_reduce_none,
+  3, 178, :_reduce_53,
+  3, 178, :_reduce_54,
+  3, 178, :_reduce_55,
+  2, 178, :_reduce_56,
+  1, 178, :_reduce_none,
+  1, 171, :_reduce_58,
+  0, 191, :_reduce_59,
+  0, 192, :_reduce_60,
+  4, 189, :_reduce_61,
+  1, 174, :_reduce_none,
+  1, 174, :_reduce_none,
+  1, 194, :_reduce_none,
+  4, 194, :_reduce_65,
+  0, 202, :_reduce_66,
+  4, 199, :_reduce_67,
+  1, 201, :_reduce_68,
+  2, 193, :_reduce_69,
+  3, 193, :_reduce_70,
+  4, 193, :_reduce_71,
+  5, 193, :_reduce_72,
+  4, 193, :_reduce_73,
+  5, 193, :_reduce_74,
+  2, 193, :_reduce_75,
+  2, 193, :_reduce_76,
+  2, 193, :_reduce_77,
+  2, 193, :_reduce_78,
+  2, 193, :_reduce_79,
+  1, 173, :_reduce_none,
+  3, 173, :_reduce_81,
+  1, 207, :_reduce_none,
+  3, 207, :_reduce_83,
+  1, 206, :_reduce_84,
+  2, 206, :_reduce_85,
+  3, 206, :_reduce_86,
+  5, 206, :_reduce_87,
+  2, 206, :_reduce_88,
+  4, 206, :_reduce_89,
+  2, 206, :_reduce_90,
+  4, 206, :_reduce_91,
+  1, 206, :_reduce_92,
+  3, 206, :_reduce_93,
+  1, 210, :_reduce_none,
+  3, 210, :_reduce_95,
+  2, 209, :_reduce_96,
+  3, 209, :_reduce_97,
+  1, 212, :_reduce_98,
+  3, 212, :_reduce_99,
+  1, 211, :_reduce_100,
+  1, 211, :_reduce_101,
+  4, 211, :_reduce_102,
+  3, 211, :_reduce_103,
+  3, 211, :_reduce_104,
+  3, 211, :_reduce_105,
+  3, 211, :_reduce_106,
+  2, 211, :_reduce_107,
+  1, 211, :_reduce_108,
+  1, 175, :_reduce_109,
+  1, 175, :_reduce_110,
+  4, 175, :_reduce_111,
+  3, 175, :_reduce_112,
+  3, 175, :_reduce_113,
+  3, 175, :_reduce_114,
+  3, 175, :_reduce_115,
+  2, 175, :_reduce_116,
+  1, 175, :_reduce_117,
+  1, 215, :_reduce_118,
+  1, 215, :_reduce_none,
+  2, 216, :_reduce_120,
+  1, 216, :_reduce_121,
+  3, 216, :_reduce_122,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_126,
+  1, 217, :_reduce_none,
+  1, 169, :_reduce_128,
+  1, 169, :_reduce_none,
+  1, 170, :_reduce_130,
+  0, 221, :_reduce_131,
+  4, 170, :_reduce_132,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  3, 188, :_reduce_204,
+  3, 188, :_reduce_205,
+  6, 188, :_reduce_206,
+  5, 188, :_reduce_207,
+  5, 188, :_reduce_208,
+  5, 188, :_reduce_209,
+  5, 188, :_reduce_210,
+  4, 188, :_reduce_211,
+  3, 188, :_reduce_212,
+  3, 188, :_reduce_213,
+  3, 188, :_reduce_214,
+  3, 188, :_reduce_215,
+  3, 188, :_reduce_216,
+  3, 188, :_reduce_217,
+  3, 188, :_reduce_218,
+  3, 188, :_reduce_219,
+  3, 188, :_reduce_220,
+  4, 188, :_reduce_221,
+  2, 188, :_reduce_222,
+  2, 188, :_reduce_223,
+  3, 188, :_reduce_224,
+  3, 188, :_reduce_225,
+  3, 188, :_reduce_226,
+  3, 188, :_reduce_227,
+  1, 188, :_reduce_none,
+  3, 188, :_reduce_229,
+  3, 188, :_reduce_230,
+  3, 188, :_reduce_231,
+  3, 188, :_reduce_232,
+  3, 188, :_reduce_233,
+  2, 188, :_reduce_234,
+  2, 188, :_reduce_235,
+  3, 188, :_reduce_236,
+  3, 188, :_reduce_237,
+  3, 188, :_reduce_238,
+  3, 188, :_reduce_239,
+  3, 188, :_reduce_240,
+  6, 188, :_reduce_241,
+  1, 188, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  3, 224, :_reduce_247,
+  3, 224, :_reduce_248,
+  1, 227, :_reduce_249,
+  1, 228, :_reduce_none,
+  2, 228, :_reduce_251,
+  4, 228, :_reduce_252,
+  2, 228, :_reduce_253,
+  1, 222, :_reduce_none,
+  3, 222, :_reduce_255,
+  3, 232, :_reduce_256,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 183, :_reduce_none,
+  1, 183, :_reduce_none,
+  2, 183, :_reduce_261,
+  4, 183, :_reduce_262,
+  2, 183, :_reduce_263,
+  1, 205, :_reduce_264,
+  2, 205, :_reduce_265,
+  2, 205, :_reduce_266,
+  4, 205, :_reduce_267,
+  1, 205, :_reduce_268,
+  0, 236, :_reduce_269,
+  2, 198, :_reduce_270,
+  2, 235, :_reduce_271,
+  2, 234, :_reduce_272,
+  1, 234, :_reduce_none,
+  1, 229, :_reduce_274,
+  2, 229, :_reduce_275,
+  3, 229, :_reduce_276,
+  4, 229, :_reduce_277,
+  1, 177, :_reduce_278,
+  1, 177, :_reduce_279,
+  3, 176, :_reduce_280,
+  4, 176, :_reduce_281,
+  2, 176, :_reduce_282,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_293,
+  0, 271, :_reduce_294,
+  4, 225, :_reduce_295,
+  0, 272, :_reduce_296,
+  3, 225, :_reduce_297,
+  0, 273, :_reduce_298,
+  4, 225, :_reduce_299,
+  3, 225, :_reduce_300,
+  3, 225, :_reduce_301,
+  2, 225, :_reduce_302,
+  0, 274, :_reduce_303,
+  4, 225, :_reduce_304,
+  0, 275, :_reduce_305,
+  4, 225, :_reduce_306,
+  1, 225, :_reduce_307,
+  4, 225, :_reduce_308,
+  3, 225, :_reduce_309,
+  1, 225, :_reduce_310,
+  5, 225, :_reduce_311,
+  4, 225, :_reduce_312,
+  3, 225, :_reduce_313,
+  2, 225, :_reduce_314,
+  1, 225, :_reduce_none,
+  2, 225, :_reduce_316,
+  1, 225, :_reduce_317,
+  6, 225, :_reduce_318,
+  6, 225, :_reduce_319,
+  4, 225, :_reduce_320,
+  4, 225, :_reduce_321,
+  5, 225, :_reduce_322,
+  4, 225, :_reduce_323,
+  6, 225, :_reduce_324,
+  0, 276, :_reduce_325,
+  6, 225, :_reduce_326,
+  0, 277, :_reduce_327,
+  0, 278, :_reduce_328,
+  8, 225, :_reduce_329,
+  0, 279, :_reduce_330,
+  5, 225, :_reduce_331,
+  0, 280, :_reduce_332,
+  6, 225, :_reduce_333,
+  0, 281, :_reduce_334,
+  0, 282, :_reduce_335,
+  9, 225, :_reduce_336,
+  1, 225, :_reduce_337,
+  1, 225, :_reduce_338,
+  1, 225, :_reduce_339,
+  1, 225, :_reduce_340,
+  1, 182, :_reduce_341,
+  1, 246, :_reduce_none,
+  1, 252, :_reduce_none,
+  1, 255, :_reduce_none,
+  1, 257, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 259, :_reduce_none,
+  1, 261, :_reduce_none,
+  1, 263, :_reduce_349,
+  1, 266, :_reduce_350,
+  1, 267, :_reduce_351,
+  1, 283, :_reduce_none,
+  1, 284, :_reduce_none,
+  1, 285, :_reduce_none,
+  1, 286, :_reduce_none,
+  1, 287, :_reduce_none,
+  1, 163, :_reduce_none,
+  1, 288, :_reduce_none,
+  1, 247, :_reduce_none,
+  1, 204, :_reduce_none,
+  1, 253, :_reduce_none,
+  1, 253, :_reduce_none,
+  2, 253, :_reduce_none,
+  1, 190, :_reduce_none,
+  1, 190, :_reduce_none,
+  1, 254, :_reduce_none,
+  5, 254, :_reduce_367,
+  1, 256, :_reduce_none,
+  2, 256, :_reduce_369,
+  1, 262, :_reduce_none,
+  1, 262, :_reduce_371,
+  1, 289, :_reduce_none,
+  3, 289, :_reduce_373,
+  1, 292, :_reduce_374,
+  3, 292, :_reduce_375,
+  1, 291, :_reduce_376,
+  3, 291, :_reduce_377,
+  5, 291, :_reduce_378,
+  1, 291, :_reduce_379,
+  3, 291, :_reduce_380,
+  2, 293, :_reduce_381,
+  1, 293, :_reduce_382,
+  4, 294, :_reduce_383,
+  2, 294, :_reduce_384,
+  2, 294, :_reduce_385,
+  1, 294, :_reduce_386,
+  2, 299, :_reduce_387,
+  1, 299, :_reduce_none,
+  6, 300, :_reduce_389,
+  8, 300, :_reduce_390,
+  4, 300, :_reduce_391,
+  6, 300, :_reduce_392,
+  4, 300, :_reduce_393,
+  2, 300, :_reduce_394,
+  6, 300, :_reduce_395,
+  2, 300, :_reduce_396,
+  4, 300, :_reduce_397,
+  6, 300, :_reduce_398,
+  2, 300, :_reduce_399,
+  4, 300, :_reduce_400,
+  2, 300, :_reduce_401,
+  4, 300, :_reduce_402,
+  1, 300, :_reduce_403,
+  1, 304, :_reduce_404,
+  1, 304, :_reduce_405,
+  3, 305, :_reduce_406,
+  1, 305, :_reduce_407,
+  4, 305, :_reduce_408,
+  1, 306, :_reduce_none,
+  4, 306, :_reduce_410,
+  1, 307, :_reduce_411,
+  3, 307, :_reduce_412,
+  1, 308, :_reduce_413,
+  1, 308, :_reduce_none,
+  0, 312, :_reduce_415,
+  0, 313, :_reduce_416,
+  5, 251, :_reduce_417,
+  4, 310, :_reduce_418,
+  1, 310, :_reduce_419,
+  3, 311, :_reduce_420,
+  3, 311, :_reduce_421,
+  3, 315, :_reduce_422,
+  2, 195, :_reduce_423,
+  4, 195, :_reduce_424,
+  5, 195, :_reduce_425,
+  5, 195, :_reduce_426,
+  2, 250, :_reduce_427,
+  4, 250, :_reduce_428,
+  4, 250, :_reduce_429,
+  3, 250, :_reduce_430,
+  3, 250, :_reduce_431,
+  3, 250, :_reduce_432,
+  2, 250, :_reduce_433,
+  1, 250, :_reduce_434,
+  4, 250, :_reduce_435,
+  0, 318, :_reduce_436,
+  4, 249, :_reduce_437,
+  0, 319, :_reduce_438,
+  4, 249, :_reduce_439,
+  0, 320, :_reduce_440,
+  0, 321, :_reduce_441,
+  4, 200, :_reduce_442,
+  0, 323, :_reduce_443,
+  0, 324, :_reduce_444,
+  4, 316, :_reduce_445,
+  1, 322, :_reduce_446,
+  2, 322, :_reduce_447,
+  3, 322, :_reduce_448,
+  4, 322, :_reduce_449,
+  0, 326, :_reduce_450,
+  6, 260, :_reduce_451,
+  1, 325, :_reduce_none,
+  1, 325, :_reduce_none,
+  6, 162, :_reduce_454,
+  0, 162, :_reduce_455,
+  1, 327, :_reduce_456,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  2, 328, :_reduce_459,
+  1, 328, :_reduce_none,
+  2, 164, :_reduce_461,
+  1, 164, :_reduce_none,
+  1, 237, :_reduce_463,
+  1, 237, :_reduce_none,
+  1, 238, :_reduce_465,
+  1, 330, :_reduce_466,
+  1, 330, :_reduce_none,
+  2, 330, :_reduce_468,
+  3, 331, :_reduce_469,
+  1, 331, :_reduce_470,
+  3, 239, :_reduce_471,
+  3, 240, :_reduce_472,
+  3, 241, :_reduce_473,
+  3, 241, :_reduce_474,
+  1, 335, :_reduce_475,
+  3, 335, :_reduce_476,
+  1, 336, :_reduce_none,
+  2, 336, :_reduce_478,
+  3, 243, :_reduce_479,
+  3, 243, :_reduce_480,
+  1, 338, :_reduce_481,
+  3, 338, :_reduce_482,
+  3, 242, :_reduce_483,
+  3, 242, :_reduce_484,
+  3, 244, :_reduce_485,
+  3, 244, :_reduce_486,
+  1, 339, :_reduce_487,
+  3, 339, :_reduce_488,
+  1, 340, :_reduce_489,
+  3, 340, :_reduce_490,
+  1, 332, :_reduce_491,
+  2, 332, :_reduce_492,
+  1, 333, :_reduce_493,
+  2, 333, :_reduce_494,
+  1, 334, :_reduce_495,
+  2, 334, :_reduce_496,
+  1, 337, :_reduce_497,
+  0, 342, :_reduce_498,
+  3, 337, :_reduce_499,
+  0, 343, :_reduce_500,
+  4, 337, :_reduce_501,
+  1, 341, :_reduce_502,
+  1, 341, :_reduce_503,
+  1, 341, :_reduce_504,
+  1, 341, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  2, 344, :_reduce_508,
+  1, 344, :_reduce_509,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  3, 345, :_reduce_514,
+  1, 329, :_reduce_none,
+  2, 329, :_reduce_516,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 214, :_reduce_526,
+  1, 214, :_reduce_527,
+  1, 214, :_reduce_528,
+  1, 214, :_reduce_529,
+  1, 214, :_reduce_530,
+  1, 214, :_reduce_531,
+  1, 214, :_reduce_532,
+  1, 245, :_reduce_533,
+  1, 245, :_reduce_534,
+  1, 181, :_reduce_535,
+  1, 181, :_reduce_536,
+  1, 186, :_reduce_537,
+  1, 186, :_reduce_538,
+  0, 347, :_reduce_539,
+  4, 264, :_reduce_540,
+  1, 264, :_reduce_541,
+  3, 268, :_reduce_542,
+  0, 349, :_reduce_543,
+  3, 268, :_reduce_544,
+  4, 348, :_reduce_545,
+  2, 348, :_reduce_546,
+  2, 348, :_reduce_547,
+  1, 348, :_reduce_none,
+  2, 351, :_reduce_549,
+  0, 351, :_reduce_550,
+  6, 314, :_reduce_551,
+  8, 314, :_reduce_552,
+  4, 314, :_reduce_553,
+  6, 314, :_reduce_554,
+  4, 314, :_reduce_555,
+  6, 314, :_reduce_556,
+  2, 314, :_reduce_557,
+  4, 314, :_reduce_558,
+  6, 314, :_reduce_559,
+  2, 314, :_reduce_560,
+  4, 314, :_reduce_561,
+  2, 314, :_reduce_562,
+  4, 314, :_reduce_563,
+  1, 314, :_reduce_564,
+  0, 314, :_reduce_565,
+  1, 309, :_reduce_566,
+  1, 309, :_reduce_567,
+  1, 309, :_reduce_568,
+  1, 309, :_reduce_569,
+  1, 290, :_reduce_none,
+  1, 290, :_reduce_571,
+  1, 353, :_reduce_none,
+  1, 354, :_reduce_none,
+  3, 354, :_reduce_574,
+  1, 301, :_reduce_575,
+  3, 301, :_reduce_576,
+  1, 355, :_reduce_none,
+  2, 356, :_reduce_578,
+  1, 356, :_reduce_579,
+  2, 357, :_reduce_580,
+  1, 357, :_reduce_581,
+  1, 295, :_reduce_none,
+  3, 295, :_reduce_583,
+  1, 350, :_reduce_none,
+  3, 350, :_reduce_585,
+  1, 358, :_reduce_none,
+  1, 358, :_reduce_none,
+  2, 296, :_reduce_588,
+  1, 296, :_reduce_589,
+  3, 359, :_reduce_590,
+  3, 360, :_reduce_591,
+  1, 302, :_reduce_592,
+  3, 302, :_reduce_593,
+  1, 352, :_reduce_594,
+  3, 352, :_reduce_595,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  2, 303, :_reduce_598,
+  1, 303, :_reduce_599,
+  1, 362, :_reduce_none,
+  1, 362, :_reduce_none,
+  2, 298, :_reduce_602,
+  2, 297, :_reduce_603,
+  0, 297, :_reduce_604,
+  1, 269, :_reduce_none,
+  0, 363, :_reduce_606,
+  4, 269, :_reduce_607,
+  1, 248, :_reduce_608,
+  2, 248, :_reduce_none,
+  1, 231, :_reduce_none,
+  3, 231, :_reduce_611,
+  3, 364, :_reduce_612,
+  2, 364, :_reduce_613,
+  4, 364, :_reduce_614,
+  2, 364, :_reduce_615,
+  1, 203, :_reduce_none,
+  1, 203, :_reduce_none,
+  1, 203, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  0, 152, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 187, :_reduce_none,
+  1, 187, :_reduce_none,
+  2, 208, :_reduce_636,
+  2, 184, :_reduce_637,
+  0, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 265, :_reduce_641,
+  1, 265, :_reduce_none,
+  1, 155, :_reduce_none,
+  2, 155, :_reduce_644,
+  0, 153, :_reduce_645 ]
+
+racc_reduce_n = 646
+
+racc_shift_n = 1091
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLONELY => 142,
+  :tLOWEST => 143,
+  :tEQL => 144,
+  :tBDOT2 => 145,
+  :tBDOT3 => 146 }
+
+racc_nt_base = 147
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLONELY",
+  "tLOWEST",
+  "tEQL",
+  "tBDOT2",
+  "tBDOT3",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "@3",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@4",
+  "stmts",
+  "stmt_or_begin",
+  "@5",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@6",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "backref",
+  "opt_nl",
+  "arg",
+  "expr_value_do",
+  "do",
+  "@7",
+  "@8",
+  "command",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@9",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "fname",
+  "op",
+  "reswords",
+  "symbol",
+  "@10",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@11",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "k_def",
+  "f_arglist",
+  "singleton",
+  "dot_or_colon",
+  "@12",
+  "@13",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "@22",
+  "@23",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "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",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@24",
+  "@25",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@26",
+  "@27",
+  "@28",
+  "@29",
+  "case_args",
+  "@30",
+  "@31",
+  "cases",
+  "@32",
+  "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",
+  "@33",
+  "@34",
+  "ssym",
+  "dsym",
+  "sym",
+  "@35",
+  "args_tail",
+  "@36",
+  "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",
+  "@37",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 11
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      _, line, stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      res = _values[-2]
+                      # TODO: move down to main match so I can just use val
+
+                      warn "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_16(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 17 omitted
+
+# reduce 18 omitted
+
+def _reduce_19(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_20(val, _values, result)
+                      result = val[1]
+                      debug 12
+
+    result
+end
+
+# reduce 21 omitted
+
+def _reduce_22(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_35(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 13
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 36 omitted
+
+def _reduce_37(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+def _reduce_50(val, _values, result)
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+
+    result
+end
+
+# reduce 51 omitted
+
+# reduce 52 omitted
+
+def _reduce_53(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_55(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_56(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+# reduce 57 omitted
+
+def _reduce_58(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_61(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 62 omitted
+
+# reduce 63 omitted
+
+# reduce 64 omitted
+
+def _reduce_65(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_66(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_74(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_75(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_76(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_77(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_79(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 80 omitted
+
+def _reduce_81(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 82 omitted
+
+def _reduce_83(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_92(val, _values, result)
+                      l = lexer.lineno
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_93(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 94 omitted
+
+def _reduce_95(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_106(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 14
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_107(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 15
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 16
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 17
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 18
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_118(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 119 omitted
+
+def _reduce_120(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_122(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 123 omitted
+
+# reduce 124 omitted
+
+# reduce 125 omitted
+
+def _reduce_126(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 127 omitted
+
+def _reduce_128(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 129 omitted
+
+def _reduce_130(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_131(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_132(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+# reduce 203 omitted
+
+def _reduce_204(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_205(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_206(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_207(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_208(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_209(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_210(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_211(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_212(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_213(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_214(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_215(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_216(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_227(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 228 omitted
+
+def _reduce_229(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_241(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+# reduce 242 omitted
+
+# reduce 243 omitted
+
+# reduce 244 omitted
+
+# reduce 245 omitted
+
+# reduce 246 omitted
+
+def _reduce_247(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_249(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 250 omitted
+
+def _reduce_251(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_252(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_253(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 254 omitted
+
+def _reduce_255(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_256(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+# reduce 257 omitted
+
+# reduce 258 omitted
+
+# reduce 259 omitted
+
+# reduce 260 omitted
+
+def _reduce_261(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_262(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_263(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_264(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_265(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_266(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_267(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_270(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_271(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_272(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 273 omitted
+
+def _reduce_274(val, _values, result)
+                      arg, = val
+                      lineno = arg.line || lexer.lineno # HACK
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_275(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      # TODO: the line number from tSTAR has been dropped
+                      args, _, _, id = val
+                      line = lexer.lineno
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_279(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_280(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_281(val, _values, result)
+                      # TODO: make all tXXXX terminals include lexer.lineno
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_282(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 283 omitted
+
+# reduce 284 omitted
+
+# reduce 285 omitted
+
+# reduce 286 omitted
+
+# reduce 287 omitted
+
+# reduce 288 omitted
+
+# reduce 289 omitted
+
+# reduce 290 omitted
+
+# reduce 291 omitted
+
+# reduce 292 omitted
+
+def _reduce_293(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_296(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+                      result = lexer.lineno
+
+    result
+end
+
+def _reduce_297(val, _values, result)
+                      _, line, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      _, stmt, _ = val
+                      result = stmt
+                      result ||= s(:nil).line lexer.lineno
+                      result.paren = true
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_303(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      _, line, args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_308(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_309(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_310(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_311(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_312(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_313(val, _values, result)
+                      debug 20
+
+    result
+end
+
+def _reduce_314(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 315 omitted
+
+def _reduce_316(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_317(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_318(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      result = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      result = self.in_def
+
+                      self.in_single += 1 # TODO: remove?
+
+                      self.in_def = true # local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
+                      # =>
+                      # [kdef, recv, (name, line), in_def, args, body, kend]
+
+                      val.delete_at 3
+                      val.delete_at 2
+
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_341(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 342 omitted
+
+# reduce 343 omitted
+
+# reduce 344 omitted
+
+# reduce 345 omitted
+
+# reduce 346 omitted
+
+# reduce 347 omitted
+
+# reduce 348 omitted
+
+def _reduce_349(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_351(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 352 omitted
+
+# reduce 353 omitted
+
+# reduce 354 omitted
+
+# reduce 355 omitted
+
+# reduce 356 omitted
+
+# reduce 357 omitted
+
+# reduce 358 omitted
+
+# reduce 359 omitted
+
+# reduce 360 omitted
+
+# reduce 361 omitted
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+# reduce 366 omitted
+
+def _reduce_367(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 368 omitted
+
+def _reduce_369(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 370 omitted
+
+def _reduce_371(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+# reduce 372 omitted
+
+def _reduce_373(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_374(val, _values, result)
+                      sym, = val
+
+                      result = s(:array, sym).line lexer.lineno
+
+    result
+end
+
+def _reduce_375(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_376(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_377(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_378(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_379(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_380(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_381(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_382(val, _values, result)
+                      result = args [:*]
+                      result.line lexer.lineno # FIX: tSTAR -> line
+
+    result
+end
+
+def _reduce_383(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_384(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_385(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_386(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_387(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 388 omitted
+
+def _reduce_389(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_390(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_391(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      result = args(val) << nil
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_404(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_405(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_406(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+def _reduce_407(val, _values, result)
+                      result = s(:args).line lexer.lineno
+
+    result
+end
+
+def _reduce_408(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+# reduce 409 omitted
+
+def _reduce_410(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_413(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 414 omitted
+
+def _reduce_415(val, _values, result)
+                      self.env.extend :dynamic
+                      result = [lexer.lineno, lexer.lpar_beg]
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      _, (line, lpar), args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      result = s(:zsuper).line lexer.lineno
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_440(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_441(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_442(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_443(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_444(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_451(val, _values, result)
+                      result = new_when(val[2], val[4])
+                      result.line val[1]
+                      result << val[5] if val[5]
+
+    result
+end
+
+# reduce 452 omitted
+
+# reduce 453 omitted
+
+def _reduce_454(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_456(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 457 omitted
+
+# reduce 458 omitted
+
+def _reduce_459(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 460 omitted
+
+def _reduce_461(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 462 omitted
+
+def _reduce_463(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 464 omitted
+
+def _reduce_465(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_466(val, _values, result)
+                      debug 37
+
+    result
+end
+
+# reduce 467 omitted
+
+def _reduce_468(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_469(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_470(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_471(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_476(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 477 omitted
+
+def _reduce_478(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_479(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_480(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_483(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_484(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_485(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_486(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_488(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_489(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_494(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_495(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_496(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_497(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_498(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_499(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_500(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                                lexer.lineno,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_501(val, _values, result)
+                      _, memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 38
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_504(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 505 omitted
+
+# reduce 506 omitted
+
+# reduce 507 omitted
+
+def _reduce_508(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_509(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 510 omitted
+
+# reduce 511 omitted
+
+# reduce 512 omitted
+
+# reduce 513 omitted
+
+def _reduce_514(val, _values, result)
+                      _, result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line lexer.lineno
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 39
+                      end
+
+    result
+end
+
+# reduce 515 omitted
+
+def _reduce_516(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 517 omitted
+
+# reduce 518 omitted
+
+# reduce 519 omitted
+
+# reduce 520 omitted
+
+# reduce 521 omitted
+
+# reduce 522 omitted
+
+# reduce 523 omitted
+
+# reduce 524 omitted
+
+# reduce 525 omitted
+
+def _reduce_526(val, _values, result)
+ result = s(:nil).line lexer.lineno
+    result
+end
+
+def _reduce_527(val, _values, result)
+ result = s(:self).line lexer.lineno
+    result
+end
+
+def _reduce_528(val, _values, result)
+ result = s(:true).line lexer.lineno
+    result
+end
+
+def _reduce_529(val, _values, result)
+ result = s(:false).line lexer.lineno
+    result
+end
+
+def _reduce_530(val, _values, result)
+ result = s(:str, self.file).line lexer.lineno
+    result
+end
+
+def _reduce_531(val, _values, result)
+ result = s(:lit, lexer.lineno).line lexer.lineno
+    result
+end
+
+def _reduce_532(val, _values, result)
+                      l = lexer.lineno
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_533(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+                      result.line line
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 40
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_539(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_540(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_547(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 548 omitted
+
+def _reduce_549(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_550(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_551(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_555(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_556(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_557(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_558(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_560(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_561(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_562(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_563(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_564(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      result = args val
+                      # result.line lexer.lineno
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_569(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 570 omitted
+
+def _reduce_571(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 572 omitted
+
+# reduce 573 omitted
+
+def _reduce_574(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_575(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_576(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+# reduce 577 omitted
+
+def _reduce_578(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_579(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_580(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_581(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 582 omitted
+
+def _reduce_583(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 584 omitted
+
+def _reduce_585(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 586 omitted
+
+# reduce 587 omitted
+
+def _reduce_588(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_589(val, _values, result)
+                      id = :"**"
+                      self.env[id] = :lvar # TODO: needed?!?
+                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
+
+    result
+end
+
+def _reduce_590(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+
+    result
+end
+
+def _reduce_591(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_595(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 596 omitted
+
+# reduce 597 omitted
+
+def _reduce_598(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_599(val, _values, result)
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
+
+    result
+end
+
+# reduce 600 omitted
+
+# reduce 601 omitted
+
+def _reduce_602(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_603(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_604(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 605 omitted
+
+def _reduce_606(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_607(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_608(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 609 omitted
+
+# reduce 610 omitted
+
+def _reduce_611(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_612(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_613(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_614(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_615(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 616 omitted
+
+# reduce 617 omitted
+
+# reduce 618 omitted
+
+# reduce 619 omitted
+
+# reduce 620 omitted
+
+# reduce 621 omitted
+
+# reduce 622 omitted
+
+# reduce 623 omitted
+
+# reduce 624 omitted
+
+# reduce 625 omitted
+
+# reduce 626 omitted
+
+# reduce 627 omitted
+
+# reduce 628 omitted
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+# reduce 631 omitted
+
+# reduce 632 omitted
+
+# reduce 633 omitted
+
+# reduce 634 omitted
+
+# reduce 635 omitted
+
+def _reduce_636(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_637(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 638 omitted
+
+# reduce 639 omitted
+
+# reduce 640 omitted
+
+def _reduce_641(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 642 omitted
+
+# reduce 643 omitted
+
+def _reduce_644(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_645(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby25Parser
diff -pruN 3.20.0-2/lib/ruby_parser26.rb 3.21.1-1/lib/ruby_parser26.rb
--- 3.20.0-2/lib/ruby_parser26.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser26.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,11231 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby26Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -523,   655,   658,   285,   574,  -109,   285,  -523,  -523,  -523,
+   224,   225,  -523,  -523,  -523,  -103,  -523,  -110,   837,  -105,
+   574,   574,   224,   225,  -523,   234,  -523,  -523,  -523,   224,
+   225,   588,   224,   225,   -95,   589,  -523,  -523,   230,  -523,
+  -523,  -523,  -523,  -523,   868,   280,   581,   574,  -117,  -104,
+  -116,   -81,   836,  -112,  -114,  -109,   133,   134,   135,   136,
+   137,   235,   889,  -102,   654,   657,  -537,  -523,  -523,  -523,
+  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
+  -523,   574,  -103,  -523,  -523,  -523,  -105,  -523,  -523,   748,
+   287,  -523,  -111,   287,  -523,  -523,     3,  -523,   126,  -523,
+   235,  -523,   231,  -523,  -523,  -523,  -523,  -523,  -523,  -523,
+  -100,  -523,   235,  -523,   221,  -621,  -104,  -103,   130,   235,
+  -103,  -105,  -101,   129,  -105,  -109,  -523,  -523,  -523,  -523,
+  -102,  -523,  -110,  -523,   130,   130,  -526,  -103,  -523,   129,
+   129,  -105,  -523,  -526,  -526,  -526,  -523,  -117,  -526,  -526,
+  -526,  -104,  -526,  -108,  -104,  -107,  -116,  -112,  -103,  -105,
+  -526,   130,  -526,  -526,  -526,  -102,   129,   888,  -102,  -109,
+  -114,  -104,  -526,  -526,  -109,  -526,  -526,  -526,  -526,  -526,
+  -113,  -115,  -111,   837,    95,  -102,  -113,  -115,   222,   130,
+   285,  -538,    96,   854,   129,   130,   429,  -102,   951,   855,
+   129,   431,   430,  -526,  -526,  -526,  -526,  -526,  -526,  -526,
+  -526,  -526,  -526,  -526,  -526,  -526,  -526,   836,   285,  -526,
+  -526,  -526,   223,  -526,  -526,   108,   109,  -526,   108,   109,
+  -526,  -526,   226,  -526,   483,  -526,   275,  -526,   232,  -526,
+  -526,  -526,  -526,  -526,  -526,  -526,  -110,  -526,   337,  -526,
+  -110,  -110,  -621,  -622,   338,   282,   639,   553,  -621,  -622,
+   639,  -117,  -526,  -526,  -526,  -526,  -117,  -526,   130,  -526,
+  -116,  -112,  -303,   129,  -526,  -116,  -112,   287,  -526,  -303,
+  -303,  -303,  -526,   282,  -114,  -303,  -303,   624,  -303,  -114,
+   235,  -104,  -106,  -117,  -113,  -115,  -111,  -117,   627,  -113,
+  -115,  -111,   828,   110,   111,   287,   110,   111,  -303,  -303,
+   401,  -303,  -303,  -303,  -303,  -303,  -116,   641,   640,   637,
+   230,   641,   640,   829,   624,   404,   639,   229,   130,   130,
+   799,   635,   634,   129,   129,   627,   227,   710,   407,  -303,
+  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,
+  -303,  -303,  -303,   130,   676,  -303,  -303,  -303,   129,   682,
+   677,  -112,   410,  -303,   922,   628,  -303,   639,   635,   634,
+   427,  -303,  -618,  -303,   432,  -303,  -303,  -303,  -303,  -303,
+  -303,  -303,  -114,  -303,   231,  -303,   482,   641,   640,   619,
+  -343,   616,   615,   614,   624,   617,   801,  -343,  -303,  -303,
+   484,  -106,   628,  -303,   230,   627,  -343,   815,  -625,   639,
+  -303,   480,   644,  -112,  -303,  -625,  -625,  -625,  -115,  -114,
+   481,  -625,  -625,  -111,  -625,  -523,   485,   622,   641,   640,
+   637,   232,  -523,  -625,   234,   639,  -535,  -618,   635,   634,
+   514,  -523,   639,  -535,  -625,  -625,  -536,  -625,  -625,  -625,
+  -625,  -625,  -535,  -536,  -343,   523,  -523,   526,   230,  -618,
+  -526,   528,  -536,  -523,  -537,   546,  -111,  -526,   231,   -80,
+   641,   640,   628,  -108,   544,  -625,  -625,  -625,  -625,  -625,
+  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -523,
+  -117,  -625,  -625,  -625,  -533,   683,   641,   640,   642,  -625,
+  -535,  -533,  -625,   641,   640,   647,  -100,  -625,  -619,  -625,
+  -536,  -625,  -625,  -625,  -625,  -625,  -625,  -625,   235,  -625,
+  -625,  -625,   231,  -109,   539,   619,  -294,   616,   615,   614,
+   624,   617,   540,  -294,  -625,  -625,   547,  -104,  -532,  -625,
+  -534,   627,  -294,   639,  -625,  -532,  -625,  -534,  -531,   292,
+  -625,  -625,  -625,  -625,  -113,  -531,  -625,  -625,  -625,  -528,
+  -625,  -526,   737,   622,   235,   736,  -528,  -538,  -526,  -625,
+  -625,  -625,  -625,  -619,   635,   634,   737,  -526,   282,   739,
+  -625,  -625,   230,  -625,  -625,  -625,  -625,  -625,   130,   556,
+  -294,   550,  -529,   129,   230,  -619,  -530,   130,   481,  -529,
+   553,   585,   129,  -530,   641,   640,   652,   554,   628,  -101,
+   583,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
+  -625,  -625,  -625,  -625,  -625,  -526,  -110,  -625,  -625,  -625,
+   601,   830,  -625,   737,   255,  -625,   739,   602,  -625,  -625,
+   639,  -625,  -107,  -625,  -625,  -625,   231,  -625,  -625,  -625,
+  -625,  -625,  -625,  -625,   235,  -625,  -625,  -625,   231,  -116,
+   737,   581,   619,   739,   616,   615,   614,   624,   617,   230,
+  -625,  -625,  -625,  -625,   420,  -625,   591,  -625,   627,   586,
+  -303,   587,  -625,   595,   676,   593,  -625,  -303,  -303,  -303,
+  -113,   646,  -303,  -303,  -303,   650,  -303,  -625,   230,   653,
+   622,   641,   640,   659,  -625,   669,  -303,  -303,  -303,  -621,
+   656,   635,   634,  -625,   667,   663,  -303,  -303,  -304,  -303,
+  -303,  -303,  -303,  -303,   235,  -304,  -103,  1049,  -304,  -276,
+  -303,  -625,   665,   231,  -304,  -304,   677,  -303,   815,   224,
+   225,   666,  -622,  -112,  -304,   628,  -303,  -303,  -303,  -303,
+  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,  -303,
+  -303,  -625,   231,  -303,  -303,  -303,   670,   831,  -303,   224,
+   225,  -303,   864,   868,  -303,  -303,   235,  -303,  -105,  -303,
+  -102,  -303,  -304,  -303,  -303,  -303,  -303,  -303,  -303,  -303,
+   674,  -303,  -304,  -303,  -303,  -114,   619,  -111,   616,   615,
+   614,   624,   617,  -303,   675,   255,  -303,  -303,  -303,  -303,
+  -303,  -303,   627,  -303,   282,  -622,  -303,   687,  -303,  -303,
+   635,   634,  -303,  -303,  -303,  -303,  -115,   255,   255,  -303,
+  -303,   255,  -303,   230,   622,   605,   255,   252,   864,   868,
+  1033,   254,   253,   632,   631,   635,   634,   230,   255,   593,
+   694,   235,  -303,  -303,  1039,  -303,  -303,  -303,  -303,  -303,
+   252,   235,   230,  1037,   254,   253,   427,  -303,   235,  1033,
+   -95,   619,   714,   616,   615,   614,   235,   617,   593,   628,
+   559,   725,   730,  -303,  -303,  -303,  -303,  -303,  -303,  -303,
+  -303,  -303,  -303,  -303,  -303,  -303,  -303,   231,   733,  -303,
+  -303,  -303,   619,   682,   616,   615,   614,  -303,   617,   787,
+  -303,   231,   235,   235,   741,  -303,   528,  -303,   791,  -303,
+  -303,  -303,  -303,  -303,  -303,  -303,   231,  -303,   744,  -303,
+   733,   733,   619,   581,   616,   615,   614,   624,   617,   733,
+   787,   769,  -303,  -303,   775,  -303,   778,  -303,   627,   791,
+   272,   273,  -625,   779,  -303,   781,   783,   785,  -303,  -625,
+  -625,  -625,  -115,   794,   795,  -625,  -625,   255,  -625,   619,
+   622,   616,   615,   614,   796,   617,   802,  -625,   803,   632,
+   631,   635,   634,   265,   266,   271,   270,  -277,  -625,  -625,
+   816,  -625,  -625,  -625,  -625,  -625,   514,   514,   235,   252,
+   833,   258,   275,   254,   253,   250,   251,   787,   842,   256,
+   844,   257,   526,   528,   725,   628,   791,   235,   282,  -625,
+  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,  -625,
+  -625,  -625,  -625,   282,   725,  -625,  -625,  -625,   619,   683,
+   616,   615,   614,  -625,   617,   255,  -625,   868,   733,   235,
+   235,  -625,   733,  -625,   235,  -625,  -625,  -625,  -625,  -625,
+  -625,  -625,   906,  -625,  -625,  -625,   907,   235,   916,   619,
+  -278,   616,   615,   614,   624,   617,   787,   235,  -625,  -625,
+   921,  -625,   938,  -625,   725,   627,  -276,   943,  -436,   733,
+  -625,   733,   733,   733,  -625,  -436,  -436,  -436,  -113,   733,
+  -436,  -436,  -436,   235,  -436,   255,   619,   622,   616,   615,
+   614,   963,   617,  -436,  -436,  -436,   632,   631,   635,   634,
+   235,   265,   266,   778,  -436,  -436,   966,  -436,  -436,  -436,
+  -436,  -436,   619,   968,   616,   615,   614,   252,   617,   258,
+   970,   254,   253,   250,   251,   972,   972,   256,   235,   257,
+   979,  -279,   628,   980,   778,  -436,  -436,  -436,  -436,  -436,
+  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,  -436,   983,
+   787,  -436,  -436,  -436,   986,   988,  -436,   990,   282,  -436,
+   235,   992,  -436,  -436,   769,  -436,  1010,  -436,  1011,  -436,
+  1020,  -436,  -436,  -436,  -436,  -436,  -436,  -436,  1021,  -436,
+  -436,  -436,   619,  1031,   616,   615,   614,   624,   617,   133,
+   134,   135,   136,   137,  -436,  -436,  1034,  -436,   627,  -436,
+  -312,   133,   134,   135,   136,   137,  -436,  -312,  -312,  -312,
+  -436,   854,  -312,  -312,  -312,  1040,  -312,   255,   911,   912,
+   622,   733,   913,   124,   125,   255,  -312,  -312,  1050,   632,
+   631,   635,   634,   265,   266,   972,  -312,  -312,   972,  -312,
+  -312,  -312,  -312,  -312,   619,   972,   616,   615,   614,   252,
+   617,   258,   778,   254,   253,   250,   251,   252,  1057,  1059,
+  1061,   254,   253,   250,   251,   628,  1063,  -312,  -312,  -312,
+  -312,  -312,  -312,  -312,  -312,  -312,  -312,  -312,  -312,  -312,
+  -312,  1063,   787,  -312,  -312,  -312,   730,   733,  -312,  1021,
+   292,  -312,  -622,  -621,  -312,  -312,   235,  -312,   972,  -312,
+  1084,  -312,  1063,  -312,  -312,  -312,  -312,  -312,  -312,  -312,
+  1063,  -312,  1063,  -312,   619,  1063,   616,   615,   614,   624,
+   617,   133,   134,   135,   136,   137,  -312,  -312,   nil,  -312,
+   627,  -312,  -295,   nil,   nil,   nil,   nil,   nil,  -312,  -295,
+  -295,  -295,  -312,   nil,  -295,  -295,  -295,   nil,  -295,   255,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   255,  -295,  -295,
+  -295,   632,   631,   635,   634,   265,   266,   nil,  -295,  -295,
+   nil,  -295,  -295,  -295,  -295,  -295,  1014,   nil,   616,   615,
+   614,   252,   617,   258,   nil,   254,   253,   250,   251,   252,
+   nil,   nil,   nil,   254,   253,   250,   251,   628,   nil,  -295,
+  -295,  -295,  -295,  -295,  -295,  -295,  -295,  -295,  -295,  -295,
+  -295,  -295,  -295,   nil,   nil,  -295,  -295,  -295,   nil,   nil,
+  -295,   nil,   nil,  -295,   nil,   nil,  -295,  -295,   nil,  -295,
+   nil,  -295,   nil,  -295,   nil,  -295,  -295,  -295,  -295,  -295,
+  -295,  -295,   nil,  -295,   nil,  -295,   619,   nil,   616,   615,
+   614,   624,   617,   nil,   nil,   nil,   nil,   nil,  -295,  -295,
+  -295,  -295,   627,  -295,  -647,  -295,   nil,   nil,   nil,   nil,
+  -295,  -647,  -647,  -647,  -295,   nil,  -647,  -647,  -647,   nil,
+  -647,   255,   nil,   nil,   622,   nil,   nil,   nil,   nil,  -647,
+  -647,  -647,   nil,   632,   631,   635,   634,   265,   266,   nil,
+  -647,  -647,   nil,  -647,  -647,  -647,  -647,  -647,  1014,   nil,
+   616,   615,   614,   252,   617,   nil,   nil,   254,   253,   250,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   628,
+   nil,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
+  -647,  -647,  -647,  -647,  -647,   nil,   nil,  -647,  -647,  -647,
+   nil,   nil,  -647,   nil,   282,  -647,   nil,   nil,  -647,  -647,
+   nil,  -647,   nil,  -647,   nil,  -647,   nil,  -647,  -647,  -647,
+  -647,  -647,  -647,  -647,   nil,  -647,  -647,  -647,   619,   nil,
+   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,   nil,
+  -647,  -647,   nil,  -647,   627,  -647,  -626,   nil,   nil,   nil,
+   nil,   nil,  -647,  -626,  -626,  -626,  -647,   nil,  -626,  -626,
+  -626,   nil,  -626,   nil,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,  -626,  -626,  -626,  -626,   632,   631,   635,   634,   nil,
+   nil,   nil,  -626,  -626,   nil,  -626,  -626,  -626,  -626,  -626,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   235,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   628,   nil,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
+  -626,  -626,  -626,  -626,  -626,  -626,  -626,   nil,   nil,  -626,
+  -626,  -626,   nil,   nil,  -626,   nil,   nil,  -626,   nil,   nil,
+  -626,  -626,   nil,  -626,   nil,  -626,   nil,  -626,   nil,  -626,
+  -626,  -626,  -626,  -626,  -626,  -626,   nil,  -626,  -626,  -626,
+   619,   nil,   616,   615,   614,   624,   617,   nil,   nil,   nil,
+   nil,   nil,  -626,  -626,  -626,  -626,   627,  -626,  -627,  -626,
+   nil,   nil,   nil,   nil,  -626,  -627,  -627,  -627,  -626,   nil,
+  -627,  -627,  -627,   nil,  -627,   nil,   nil,   nil,   622,   nil,
+   nil,   nil,   nil,  -627,  -627,  -627,  -627,   632,   631,   635,
+   634,   nil,   nil,   nil,  -627,  -627,   nil,  -627,  -627,  -627,
+  -627,  -627,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   628,   nil,  -627,  -627,  -627,  -627,  -627,
+  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,  -627,   nil,
+   nil,  -627,  -627,  -627,   nil,   nil,  -627,   nil,   nil,  -627,
+   nil,   nil,  -627,  -627,   nil,  -627,   nil,  -627,   nil,  -627,
+   nil,  -627,  -627,  -627,  -627,  -627,  -627,  -627,   nil,  -627,
+  -627,  -627,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  -627,  -627,  -627,  -627,   nil,  -627,
+  -647,  -627,   nil,   nil,   nil,   nil,  -627,  -647,  -647,  -647,
+  -627,   nil,  -647,  -647,  -647,   nil,  -647,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  -647,  -647,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  -647,  -647,   nil,  -647,
+  -647,  -647,  -647,  -647,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   512,   464,   nil,   nil,   513,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,  -647,   nil,
+   nil,   175,   176,   161,   162,  -647,   nil,   nil,   nil,   nil,
+   282,  -647,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,  -647,  -647,   177,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  -647,   nil,   nil,   nil,
+   nil,  -647,   nil,   nil,   170,   nil,   nil,   nil,  -647,   nil,
+   nil,   nil,  -647,     8,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   671,    11,    49,    10,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
+   nil,  -251,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   671,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,   315,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,   315,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   235,   269,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,   315,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,   248,   249,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   269,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,  -648,  -648,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   268,   263,   264,
+   nil,  -648,  -648,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+  -648,  -648,  -648,  -648,   272,   273,   nil,   nil,  -648,  -648,
+   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+  -648,  -648,  -648,  -648,   272,   273,   nil,   nil,  -648,  -648,
+   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,     8,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+  -648,  -648,  -648,  -648,   272,   273,   nil,   nil,  -648,  -648,
+   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+  -648,  -648,  -648,  -648,   272,   273,   nil,   nil,  -648,  -648,
+   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+  -648,  -648,  -648,  -648,   272,   273,   nil,   nil,  -648,  -648,
+   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+  -648,  -648,  -648,  -648,   272,   273,   nil,   nil,  -648,  -648,
+   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   nil,   nil,   263,   264,
+   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   255,
+   259,   260,   261,   262,   272,   273,   267,   nil,   263,   264,
+   nil,   nil,   nil,   nil,   nil,   265,   266,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   252,   nil,   258,    48,   254,   253,   250,   251,   271,
+   270,   256,    23,   257,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,   311,    85,    86,    87,    12,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,    12,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,    11,    49,    10,    13,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
+    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   304,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   305,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   304,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   301,   nil,   299,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   305,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,   nil,
+   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   324,   nil,   627,   320,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   319,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   635,   634,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   628,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
+   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,   nil,   616,
+   615,   614,   624,   617,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   324,   nil,   627,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   635,   634,   nil,    96,
+   106,   nil,   nil,   nil,   336,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   628,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,    12,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,    11,    49,   nil,    13,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
+    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   130,   nil,   nil,   nil,   nil,   129,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,
+   nil,   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   364,   nil,   627,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   635,   634,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   628,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,   328,   nil,   nil,   122,   121,   123,   369,    60,   114,
+   113,   370,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,   nil,
+   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,   376,
+   nil,   nil,   371,   nil,   627,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   635,   634,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   628,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+   328,   nil,   nil,   122,   121,   123,   369,    60,   114,   113,
+   370,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
+   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,   nil,   616,
+   615,   614,   624,   617,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   371,   nil,   627,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   635,   634,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,    12,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   628,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    49,
+    10,    13,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,    38,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   420,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,    11,    49,   nil,    13,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   437,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   437,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,    33,    34,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,
+   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   235,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   235,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    49,   nil,    13,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,
+   nil,   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   324,   nil,   627,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   635,   634,
+   nil,    96,   106,   nil,   nil,   nil,   542,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   628,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   619,   nil,
+   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   324,   nil,   627,   320,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   635,   634,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   628,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   559,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   301,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   304,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   304,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   305,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   707,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,    12,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,    11,    49,   313,    13,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
+    36,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,    38,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   420,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,   nil,   320,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   304,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   324,   nil,   nil,   320,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,    33,    34,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,
+   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,    33,    34,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,    31,    30,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   807,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,
+    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,
+    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   304,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   301,   nil,   299,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,   302,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   305,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,    12,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,   118,
+   117,   119,   120,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    49,   nil,    13,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,    38,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   304,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   707,   nil,   299,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   299,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+    31,    30,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   324,   nil,   nil,   320,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   324,   nil,   nil,   320,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   437,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   304,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   707,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+   302,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,   327,   333,   118,   117,   119,   120,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   873,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,    31,    30,   118,   117,   119,   120,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   nil,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,    33,    34,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,    31,    30,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,
+    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,   330,   331,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,   327,   333,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   nil,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,    95,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,
+   102,   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,
+   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,
+    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,   nil,
+   nil,    88,    31,    30,   118,   117,   119,   120,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
+   122,   121,   123,   112,    60,   114,   113,   115,   nil,   116,
+   124,   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,
+   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   105,    95,    97,
+    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,
+   nil,   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,
+   nil,    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,
+    84,   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,
+    88,   327,   333,   118,   117,   119,   120,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,
+   121,   123,   112,    60,   114,   113,   115,   nil,   116,   124,
+   125,   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,
+   246,   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   nil,   nil,   105,    95,    97,    98,
+    99,   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    89,   nil,   nil,    93,   100,   102,   nil,
+   110,   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,
+    79,    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,
+   330,   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,
+   327,   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,
+   123,   112,    60,   114,   113,   115,   304,   116,   124,   125,
+   nil,   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,
+   nil,   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,
+   299,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   245,   nil,   nil,   nil,   nil,   105,   302,    97,    98,    99,
+   101,   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,    89,   nil,   305,    93,   100,   102,   nil,   110,
+   111,    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,
+    80,   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,
+   331,    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,
+   333,   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,   122,   121,   123,
+   112,    60,   114,   113,   115,   nil,   116,   124,   125,   nil,
+   108,   109,   nil,    45,    46,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   240,   nil,   nil,   246,   nil,
+   nil,    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,
+   nil,   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,
+    85,    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,
+   nil,   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,
+    76,    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,
+   118,   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,
+    60,   114,   113,   115,   nil,   116,   124,   125,   nil,   108,
+   109,   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   994,   nil,   nil,   246,   nil,   nil,
+    62,    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,
+   nil,   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,
+    89,   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,
+    86,    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,
+   nil,   nil,    83,   nil,    81,    82,    84,   330,   331,    76,
+    77,   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,
+   117,   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   nil,   nil,   328,   nil,   nil,   122,   121,   123,   112,    60,
+   114,   113,   115,   nil,   116,   124,   125,   nil,   108,   109,
+   nil,   nil,   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1001,   nil,   nil,   246,   nil,   nil,    62,
+    63,   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,
+   nil,    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,
+   nil,   nil,    93,   100,   102,   nil,   110,   111,    85,    86,
+    87,   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,
+   nil,    83,   nil,    81,    82,    84,   330,   331,    76,    77,
+   nil,   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,
+   119,   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,
+   nil,    49,   nil,   nil,   122,   121,   123,   112,    60,   114,
+   113,   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,
+    45,    46,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   240,   nil,   nil,   246,   nil,   nil,    62,    63,
+   nil,   nil,    64,   nil,  1006,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,
+   nil,   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,
+    96,   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,
+   nil,    93,   100,   102,   nil,   110,   111,    85,    86,    87,
+   nil,    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,
+    83,   nil,    81,    82,    84,   330,   331,    76,    77,   nil,
+   nil,   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,
+   120,   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,
+   328,   nil,   nil,   122,   121,   123,   112,    60,   114,   113,
+   115,   nil,   116,   124,   125,   nil,   108,   109,   nil,   nil,
+   nil,   334,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   994,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   105,    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,
+    93,   100,   102,   nil,   110,   111,    85,    86,    87,   nil,
+    78,   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,
+   nil,    81,    82,    84,   330,   331,    76,    77,   nil,   nil,
+   nil,   nil,   nil,    88,   327,   333,   118,   117,   119,   120,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,
+   nil,   nil,   122,   121,   123,   112,    60,   114,   113,   115,
+   nil,   116,   124,   125,   nil,   108,   109,   nil,    45,    46,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,
+    95,    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,    89,   nil,   nil,    93,
+   100,   102,   nil,   110,   111,    85,    86,    87,   nil,    78,
+   nil,   nil,   nil,    79,    80,   nil,   nil,   nil,    83,   nil,
+    81,    82,    84,    33,    34,    76,    77,   nil,   nil,   nil,
+   nil,   nil,    88,    31,    30,   118,   117,   119,   120,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   122,   121,   123,   112,    60,   114,   113,   115,   304,
+   116,   124,   125,   nil,   108,   109,   nil,    45,    46,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   240,
+   nil,   nil,   246,   nil,   nil,    62,    63,   nil,   nil,    64,
+   nil,   301,   nil,   299,   nil,    48,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   245,   nil,   nil,   nil,   nil,   105,   302,
+    97,    98,    99,   101,   nil,   nil,   nil,    96,   106,   nil,
+   nil,   nil,   nil,   nil,   nil,    89,   nil,   305,    93,   100,
+   102,   nil,   110,   111,   188,   199,   189,   212,   185,   205,
+   195,   194,   215,   216,   210,   193,   192,   187,   213,   217,
+   218,   197,   186,   200,   204,   206,   198,   191,   nil,   nil,
+   nil,   207,   214,   209,   208,   201,   211,   196,   184,   203,
+   202,   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,
+   178,   179,   180,   141,   143,   140,   nil,   142,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   105,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,
+   212,   185,   205,   195,   194,   215,   216,   210,   193,   192,
+   187,   213,   217,   218,   197,   186,   200,   204,   206,   198,
+   191,   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,
+   196,   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,
+   190,   181,   182,   178,   179,   180,   141,   143,   nil,   nil,
+   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
+   174,   nil,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   nil,   177,
+   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
+   188,   199,   189,   212,   185,   205,   195,   194,   215,   216,
+   210,   193,   192,   187,   213,   217,   218,   197,   186,   200,
+   204,   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,
+   387,   386,   388,   385,   184,   203,   202,   nil,   nil,   nil,
+   nil,   nil,   183,   190,   181,   182,   382,   383,   384,   380,
+   143,   114,   113,   381,   nil,   116,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   nil,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   392,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   188,   199,   189,   212,   185,   205,   195,
+   194,   215,   216,   210,   193,   192,   187,   213,   217,   218,
+   197,   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,
+   207,   214,   209,   208,   201,   211,   196,   184,   203,   202,
+   nil,   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,
+   179,   180,   141,   143,   417,   416,   142,   nil,   418,   nil,
+   nil,   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,
+   152,   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,
+   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,
+   165,   nil,   150,   172,   168,   167,   163,   164,   158,   156,
+   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   170,   188,   199,   189,   212,
+   185,   205,   195,   194,   215,   216,   210,   193,   192,   187,
+   213,   217,   218,   197,   186,   200,   204,   206,   198,   191,
+   nil,   nil,   nil,   207,   214,   209,   208,   201,   211,   196,
+   184,   203,   202,   nil,   nil,   nil,   nil,   nil,   183,   190,
+   181,   182,   178,   179,   180,   141,   143,   nil,   nil,   142,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   nil,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   105,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   188,
+   199,   189,   212,   185,   205,   195,   194,   215,   216,   210,
+   193,   192,   187,   213,   217,   218,   197,   186,   200,   204,
+   206,   198,   191,   nil,   nil,   nil,   207,   214,   209,   208,
+   201,   211,   196,   184,   203,   202,   nil,   nil,   nil,   nil,
+   nil,   183,   190,   181,   182,   178,   179,   180,   141,   143,
+   nil,   nil,   142,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   173,   174,   nil,   169,   151,   152,   153,   160,   157,
+   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
+   161,   162,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
+   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
+   nil,   177,   105,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   188,   199,   189,   212,   185,   205,   195,   194,
+   215,   216,   210,   193,   192,   187,   213,   217,   218,   197,
+   186,   200,   204,   206,   198,   191,   nil,   nil,   nil,   207,
+   214,   209,   208,   201,   211,   196,   184,   203,   202,   nil,
+   nil,   nil,   nil,   nil,   183,   190,   181,   182,   178,   179,
+   180,   141,   143,   nil,   nil,   142,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   nil,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   460,
+   464,   nil,   nil,   461,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   467,   471,   nil,
+   nil,   466,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   688,   464,   nil,   nil,   689,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   690,   471,   nil,   nil,   691,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   718,   464,   nil,   nil,   719,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   721,
+   471,   nil,   nil,   722,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   688,   464,   nil,
+   nil,   689,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   690,   471,   nil,   nil,   691,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   755,   464,   nil,   nil,   756,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   nil,   177,   nil,   nil,   nil,
+   nil,   757,   471,   nil,   nil,   758,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   173,   174,   170,   169,   151,   152,
+   153,   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,
+   nil,   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,
+   nil,   150,   172,   168,   167,   163,   164,   158,   156,   148,
+   171,   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,   760,
+   471,   nil,   nil,   761,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   173,   174,   170,   169,   151,   152,   153,   160,
+   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,
+   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,
+   172,   168,   167,   163,   164,   158,   156,   148,   171,   149,
+   nil,   nil,   177,   nil,   nil,   nil,   nil,   512,   464,   nil,
+   nil,   513,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   173,   174,   170,   169,   151,   152,   153,   160,   157,   159,
+   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,
+   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,
+   167,   163,   164,   158,   156,   148,   171,   149,   nil,   nil,
+   177,   nil,   nil,   nil,   nil,   809,   464,   nil,   nil,   810,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,
+   170,   169,   151,   152,   153,   160,   157,   159,   nil,   nil,
+   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,   nil,
+   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,   163,
+   164,   158,   156,   148,   171,   149,   nil,   nil,   177,   nil,
+   nil,   nil,   nil,   812,   471,   nil,   nil,   811,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   173,   174,   170,   169,
+   151,   152,   153,   160,   157,   159,   nil,   nil,   154,   155,
+   nil,   nil,   nil,   175,   176,   161,   162,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   166,   165,   nil,   150,   172,   168,   167,   163,   164,   158,
+   156,   148,   171,   149,   nil,   619,   177,   616,   615,   614,
+   624,   617,   619,   nil,   616,   615,   614,   624,   617,   nil,
+   nil,   627,   nil,   nil,   nil,   nil,   170,   nil,   627,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,   nil,   nil,
+   622,   nil,   632,   631,   635,   634,   nil,   nil,   nil,   632,
+   631,   635,   634,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1067,   471,   nil,   nil,  1066,   nil,   nil,   nil,   628,   nil,
+   nil,   nil,   nil,   173,   174,   628,   169,   151,   152,   153,
+   160,   157,   159,   nil,   nil,   154,   155,   nil,   nil,   nil,
+   175,   176,   161,   162,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,
+   150,   172,   168,   167,   163,   164,   158,   156,   148,   171,
+   149,   nil,   nil,   177,   nil,   nil,   nil,   nil,  1070,   464,
+   nil,   nil,  1071,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   173,   174,   170,   169,   151,   152,   153,   160,   157,
+   159,   nil,   nil,   154,   155,   nil,   nil,   nil,   175,   176,
+   161,   162,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   166,   165,   nil,   150,   172,
+   168,   167,   163,   164,   158,   156,   148,   171,   149,   nil,
+   nil,   177,   nil,   nil,   nil,   nil,  1072,   471,   nil,   nil,
+  1073,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   173,
+   174,   170,   169,   151,   152,   153,   160,   157,   159,   nil,
+   nil,   154,   155,   nil,   nil,   nil,   175,   176,   161,   162,
+   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   166,   165,   nil,   150,   172,   168,   167,
+   163,   164,   158,   156,   148,   171,   149,   nil,   619,   177,
+   616,   615,   614,   624,   617,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   627,   nil,   nil,   nil,   nil,   170,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   632,   631,   635,   634,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   628 ]
+
+racc_action_check = [
+   112,   408,   411,    65,   353,   361,   697,   112,   112,   112,
+   476,   476,   112,   112,   112,   718,   112,   362,   695,   719,
+   354,   942,   728,   728,   112,    22,   112,   112,   112,   772,
+   772,   371,    17,    17,   713,   371,   112,   112,    27,   112,
+   112,   112,   112,   112,  1007,    27,  1007,   947,   365,   721,
+   586,   713,   695,   755,   756,   998,     9,     9,     9,     9,
+     9,    22,   773,   849,   408,   411,   238,   112,   112,   112,
+   112,   112,   112,   112,   112,   112,   112,   112,   112,   112,
+   112,   874,   718,   112,   112,   112,   719,   112,   112,   576,
+    65,   112,   875,   697,   112,   112,     1,   112,     3,   112,
+   476,   112,    27,   112,   112,   112,   112,   112,   112,   112,
+   361,   112,   728,   112,    13,   721,   721,   718,   353,   772,
+   718,   719,   362,   353,   719,   238,   112,   112,   112,   112,
+   849,   112,   999,   112,   354,   942,   115,   718,   112,   354,
+   942,   719,   112,   115,   115,   115,   112,  1002,   115,   115,
+   115,   721,   115,   365,   721,   586,  1040,  1070,   755,   756,
+   115,   947,   115,   115,   115,   849,   947,   773,   849,   998,
+  1071,   721,   115,   115,   998,   115,   115,   115,   115,   115,
+  1072,  1073,  1082,   843,    92,   849,   757,   758,    15,   576,
+    29,   239,    92,   729,   576,   874,   140,   875,   874,   729,
+   874,   140,   140,   115,   115,   115,   115,   115,   115,   115,
+   115,   115,   115,   115,   115,   115,   115,   843,   329,   115,
+   115,   115,    16,   115,   115,    44,    44,   115,   334,   334,
+   115,   115,    18,   115,   241,   115,    25,   115,   444,   115,
+   115,   115,   115,   115,   115,   115,   999,   115,    40,   115,
+   239,   999,   757,   758,    43,    29,   530,   482,  1072,  1073,
+   648,  1002,   115,   115,   115,   115,  1002,   115,     5,   115,
+  1040,  1070,   466,     5,   115,  1040,  1070,    29,   115,   466,
+   466,   466,   115,   329,  1071,   466,   466,   775,   466,  1071,
+    49,   757,   758,   241,  1072,  1073,  1082,   444,   775,  1072,
+  1073,  1082,   688,    44,    44,   329,   334,   334,   466,   466,
+    99,   466,   466,   466,   466,   466,   482,   530,   530,   530,
+    19,   648,   648,   689,   980,   100,   651,    19,   308,   358,
+   648,   775,   775,   308,   358,   980,    19,   530,   101,   466,
+   466,   466,   466,   466,   466,   466,   466,   466,   466,   466,
+   466,   466,   466,   766,   809,   466,   466,   466,   766,   466,
+   810,   688,   102,   466,   832,   775,   466,   395,   980,   980,
+   138,   466,   369,   466,   219,   466,   466,   466,   466,   466,
+   466,   466,   689,   466,    19,   466,   240,   651,   651,   783,
+    50,   783,   783,   783,   783,   783,   651,    50,   466,   466,
+   242,   466,   980,   466,   237,   783,    50,   918,   467,   399,
+   466,   237,   399,   809,   466,   467,   467,   467,   466,   810,
+   237,   467,   467,   832,   467,   369,   243,   783,   395,   395,
+   395,    20,   369,   467,   247,   397,   321,   369,   783,   783,
+   281,   369,   402,   321,   467,   467,   322,   467,   467,   467,
+   467,   467,   321,   322,    50,   296,   380,   297,   323,   369,
+   381,   300,   322,   380,    41,   323,   918,   381,   237,   314,
+   399,   399,   783,    20,   323,   467,   467,   467,   467,   467,
+   467,   467,   467,   467,   467,   467,   467,   467,   467,   369,
+    20,   467,   467,   467,   382,   467,   397,   397,   397,   467,
+   321,   382,   467,   402,   402,   402,    41,   467,   370,   467,
+   322,   467,   467,   467,   467,   467,   467,   467,   316,   467,
+   467,   467,   323,    41,   317,   968,   325,   968,   968,   968,
+   968,   968,   318,   325,   467,   467,   324,   467,   383,   467,
+   384,   968,   325,   405,   690,   383,   467,   384,   385,   327,
+   467,   690,   690,   690,   467,   385,   690,   690,   690,   386,
+   690,   370,   565,   968,   328,   565,   386,    42,   370,   690,
+   690,   690,   690,   370,   968,   968,   566,   370,   333,   566,
+   690,   690,   340,   690,   690,   690,   690,   690,   879,   340,
+   325,   335,   387,   879,   363,   370,   388,   884,   340,   387,
+   338,   363,   884,   388,   405,   405,   405,   339,   968,    42,
+   363,   690,   690,   690,   690,   690,   690,   690,   690,   690,
+   690,   690,   690,   690,   690,   370,    42,   690,   690,   690,
+   390,   690,   690,   570,   342,   690,   570,   390,   690,   690,
+   413,   690,   338,   690,   760,   690,   340,   690,   690,   690,
+   690,   690,   690,   690,   348,   690,   690,   690,   363,   338,
+   862,   359,   970,   862,   970,   970,   970,   970,   970,   373,
+   690,   690,   690,   690,   360,   690,   373,   690,   970,   364,
+   691,   366,   690,   375,   460,   373,   690,   691,   691,   691,
+   690,   401,   691,   691,   691,   404,   691,   760,   443,   407,
+   970,   413,   413,   413,   760,   443,   691,   691,   691,   760,
+   410,   970,   970,   760,   443,   433,   691,   691,   547,   691,
+   691,   691,   691,   691,  1012,   547,   460,  1012,   589,   436,
+   722,   760,   438,   373,   547,   589,   461,   722,   672,   352,
+   352,   441,   722,   460,   589,   970,   722,   691,   691,   691,
+   691,   691,   691,   691,   691,   691,   691,   691,   691,   691,
+   691,   760,   443,   691,   691,   691,   445,   691,   691,   597,
+   597,   691,   743,   743,   691,   691,   455,   691,   461,   691,
+   672,   691,   547,   691,   691,   691,   691,   691,   691,   691,
+   458,   691,   589,   691,   722,   461,   393,   672,   393,   393,
+   393,   393,   393,   761,   459,   488,   691,   691,   691,   691,
+   761,   691,   393,   691,   468,   761,   811,   478,   691,   761,
+   778,   778,   691,   811,   811,   811,   691,   490,   489,   811,
+   811,   491,   811,   993,   393,   393,   492,   488,  1041,  1041,
+   993,   488,   488,   393,   393,   393,   393,  1000,   493,   993,
+   509,   516,   811,   811,  1000,   811,   811,   811,   811,   811,
+   489,   520,  1032,  1000,   489,   489,   536,   761,   537,  1032,
+   538,   622,   541,   622,   622,   622,   543,   622,  1032,   393,
+   548,   551,   560,   811,   811,   811,   811,   811,   811,   811,
+   811,   811,   811,   811,   811,   811,   811,   993,   561,   811,
+   811,   811,   787,   811,   787,   787,   787,   811,   787,   622,
+   811,  1000,   562,   567,   568,   811,   571,   811,   622,   811,
+   811,   811,   811,   811,   811,   811,  1032,   811,   573,   811,
+   577,   578,   605,   579,   605,   605,   605,   605,   605,   580,
+   787,   599,   811,   811,   607,   811,   608,   811,   605,   787,
+    47,    47,   812,   610,   811,   611,   612,   621,   811,   812,
+   812,   812,   811,   629,   633,   812,   812,   508,   812,   906,
+   605,   906,   906,   906,   636,   906,   655,   812,   658,   605,
+   605,   605,   605,   508,   508,    47,    47,   664,   812,   812,
+   673,   812,   812,   812,   812,   812,   678,   684,   692,   508,
+   693,   508,   696,   508,   508,   508,   508,   906,   700,   508,
+   702,   508,   704,   706,   715,   605,   906,   717,   720,   812,
+   812,   812,   812,   812,   812,   812,   812,   812,   812,   812,
+   812,   812,   812,   723,   724,   812,   812,   812,   907,   812,
+   907,   907,   907,   812,   907,   727,   812,   745,   751,   754,
+   763,   812,   767,   812,   774,   812,   812,   812,   812,   812,
+   812,   812,   789,   812,   812,   812,   790,   792,   804,   769,
+   806,   769,   769,   769,   769,   769,   907,   808,   812,   812,
+   817,   812,   841,   812,   848,   769,   858,   859,    30,   863,
+   812,   869,   876,   878,   812,    30,    30,    30,   812,   882,
+    30,    30,    30,   883,    30,   557,   791,   769,   791,   791,
+   791,   890,   791,    30,    30,    30,   769,   769,   769,   769,
+   891,   557,   557,   892,    30,    30,   896,    30,    30,    30,
+    30,    30,  1020,   897,  1020,  1020,  1020,   557,  1020,   557,
+   899,   557,   557,   557,   557,   900,   902,   557,   905,   557,
+   915,   917,   769,   924,   925,    30,    30,    30,    30,    30,
+    30,    30,    30,    30,    30,    30,    30,    30,    30,   927,
+  1020,    30,    30,    30,   928,   929,    30,   931,    30,    30,
+   932,   933,    30,    30,   960,    30,   961,    30,   962,    30,
+   977,    30,    30,    30,    30,    30,    30,    30,   978,    30,
+    30,    30,   770,   991,   770,   770,   770,   770,   770,   312,
+   312,   312,   312,   312,    30,    30,   994,    30,   770,    30,
+    31,   347,   347,   347,   347,   347,    30,    31,    31,    31,
+    30,   996,    31,    31,    31,  1001,    31,   494,   797,   797,
+   770,  1008,   797,   797,   797,   503,    31,    31,  1016,   770,
+   770,   770,   770,   494,   494,  1017,    31,    31,  1018,    31,
+    31,    31,    31,    31,  1021,  1019,  1021,  1021,  1021,   494,
+  1021,   494,  1022,   494,   494,   494,   494,   503,  1025,  1026,
+  1027,   503,   503,   503,   503,   770,  1028,    31,    31,    31,
+    31,    31,    31,    31,    31,    31,    31,    31,    31,    31,
+    31,  1030,  1021,    31,    31,    31,  1036,  1047,    31,  1055,
+    31,    31,  1066,  1067,    31,    31,  1069,    31,  1077,    31,
+  1078,    31,  1079,    31,    31,    31,    31,    31,    31,    31,
+  1080,    31,  1081,    31,   779,  1089,   779,   779,   779,   779,
+   779,   535,   535,   535,   535,   535,    31,    31,   nil,    31,
+   779,    31,    60,   nil,   nil,   nil,   nil,   nil,    31,    60,
+    60,    60,    31,   nil,    60,    60,    60,   nil,    60,   495,
+   nil,   nil,   779,   nil,   nil,   nil,   nil,   504,    60,    60,
+    60,   779,   779,   779,   779,   495,   495,   nil,    60,    60,
+   nil,    60,    60,    60,    60,    60,   963,   nil,   963,   963,
+   963,   495,   963,   495,   nil,   495,   495,   495,   495,   504,
+   nil,   nil,   nil,   504,   504,   504,   504,   779,   nil,    60,
+    60,    60,    60,    60,    60,    60,    60,    60,    60,    60,
+    60,    60,    60,   nil,   nil,    60,    60,    60,   nil,   nil,
+    60,   nil,   nil,    60,   nil,   nil,    60,    60,   nil,    60,
+   nil,    60,   nil,    60,   nil,    60,    60,    60,    60,    60,
+    60,    60,   nil,    60,   nil,    60,   781,   nil,   781,   781,
+   781,   781,   781,   nil,   nil,   nil,   nil,   nil,    60,    60,
+    60,    60,   781,    60,   462,    60,   nil,   nil,   nil,   nil,
+    60,   462,   462,   462,    60,   nil,   462,   462,   462,   nil,
+   462,   496,   nil,   nil,   781,   nil,   nil,   nil,   nil,   462,
+   462,   462,   nil,   781,   781,   781,   781,   496,   496,   nil,
+   462,   462,   nil,   462,   462,   462,   462,   462,  1049,   nil,
+  1049,  1049,  1049,   496,  1049,   nil,   nil,   496,   496,   496,
+   496,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   781,
+   nil,   462,   462,   462,   462,   462,   462,   462,   462,   462,
+   462,   462,   462,   462,   462,   nil,   nil,   462,   462,   462,
+   nil,   nil,   462,   nil,   462,   462,   nil,   nil,   462,   462,
+   nil,   462,   nil,   462,   nil,   462,   nil,   462,   462,   462,
+   462,   462,   462,   462,   nil,   462,   462,   462,   836,   nil,
+   836,   836,   836,   836,   836,   nil,   nil,   nil,   nil,   nil,
+   462,   462,   nil,   462,   836,   462,   471,   nil,   nil,   nil,
+   nil,   nil,   462,   471,   471,   471,   462,   nil,   471,   471,
+   471,   nil,   471,   nil,   nil,   nil,   836,   nil,   nil,   nil,
+   nil,   471,   471,   471,   471,   836,   836,   836,   836,   nil,
+   nil,   nil,   471,   471,   nil,   471,   471,   471,   471,   471,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   836,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   836,   nil,   471,   471,   471,   471,   471,   471,   471,
+   471,   471,   471,   471,   471,   471,   471,   nil,   nil,   471,
+   471,   471,   nil,   nil,   471,   nil,   nil,   471,   nil,   nil,
+   471,   471,   nil,   471,   nil,   471,   nil,   471,   nil,   471,
+   471,   471,   471,   471,   471,   471,   nil,   471,   471,   471,
+   966,   nil,   966,   966,   966,   966,   966,   nil,   nil,   nil,
+   nil,   nil,   471,   471,   471,   471,   966,   471,   472,   471,
+   nil,   nil,   nil,   nil,   471,   472,   472,   472,   471,   nil,
+   472,   472,   472,   nil,   472,   nil,   nil,   nil,   966,   nil,
+   nil,   nil,   nil,   472,   472,   472,   472,   966,   966,   966,
+   966,   nil,   nil,   nil,   472,   472,   nil,   472,   472,   472,
+   472,   472,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   966,   nil,   472,   472,   472,   472,   472,
+   472,   472,   472,   472,   472,   472,   472,   472,   472,   nil,
+   nil,   472,   472,   472,   nil,   nil,   472,   nil,   nil,   472,
+   nil,   nil,   472,   472,   nil,   472,   nil,   472,   nil,   472,
+   nil,   472,   472,   472,   472,   472,   472,   472,   nil,   472,
+   472,   472,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   472,   472,   472,   472,   nil,   472,
+   511,   472,   nil,   nil,   nil,   nil,   472,   511,   511,   511,
+   472,   nil,   511,   511,   511,   nil,   511,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   511,   511,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   511,   511,   nil,   511,
+   511,   511,   511,   511,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   278,   278,   nil,   nil,   278,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   278,   278,   nil,   278,   278,   278,
+   278,   278,   278,   278,   nil,   nil,   278,   278,   511,   nil,
+   nil,   278,   278,   278,   278,   511,   nil,   nil,   nil,   nil,
+   511,   511,   nil,   nil,   nil,   nil,   nil,   nil,   278,   278,
+   nil,   278,   278,   278,   278,   278,   278,   278,   278,   278,
+   278,   278,   511,   511,   278,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   511,   nil,   nil,   nil,
+   nil,   511,   nil,   nil,   278,   nil,   nil,   nil,   511,   nil,
+   nil,   nil,   511,     2,     2,     2,     2,     2,     2,   nil,
+   nil,   nil,     2,     2,   nil,   nil,   nil,     2,   nil,     2,
+     2,     2,     2,     2,     2,     2,   nil,   nil,   nil,   nil,
+   nil,     2,     2,     2,     2,     2,     2,     2,   nil,   nil,
+     2,   nil,   nil,   nil,   nil,   448,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,   nil,     2,
+     2,     2,   nil,     2,     2,   nil,     2,     2,     2,   448,
+   448,   448,   448,   448,   448,   448,   448,   448,   448,   448,
+   nil,   448,   448,   nil,   nil,   448,   448,   nil,     2,   nil,
+   nil,     2,   nil,   nil,     2,     2,   nil,   nil,     2,   nil,
+     2,   448,   nil,   448,     2,   448,   448,   448,   448,   448,
+   448,   448,     2,   448,   nil,   nil,   nil,     2,     2,     2,
+     2,     2,     2,   nil,   nil,   nil,     2,     2,   nil,   448,
+   nil,   448,   nil,   nil,     2,   nil,   nil,     2,     2,     2,
+   nil,     2,     2,    36,    36,    36,    36,    36,    36,   nil,
+   nil,   nil,    36,    36,   nil,   nil,   nil,    36,   nil,    36,
+    36,    36,    36,    36,    36,    36,   nil,   nil,   nil,   nil,
+   nil,    36,    36,    36,    36,    36,    36,    36,   nil,   nil,
+    36,   nil,   nil,   nil,   nil,   454,    36,    36,    36,    36,
+    36,    36,    36,    36,    36,    36,    36,    36,   nil,    36,
+    36,    36,   nil,    36,    36,   nil,    36,    36,    36,   454,
+   454,   454,   454,   454,   454,   454,   454,   454,   454,   454,
+   nil,   454,   454,   nil,   nil,   454,   454,   nil,    36,   nil,
+   nil,    36,   nil,   nil,    36,    36,   nil,   nil,    36,   nil,
+    36,   454,   nil,   454,    36,   454,   454,   454,   454,   454,
+   454,   454,    36,   454,   nil,   nil,   nil,    36,    36,    36,
+    36,    36,    36,   nil,   nil,   nil,    36,    36,   nil,   454,
+   nil,   nil,   nil,   nil,    36,   nil,   nil,    36,    36,    36,
+   nil,    36,    36,   221,   221,   221,   221,   221,   221,   nil,
+   nil,   nil,   221,   221,   nil,   nil,   nil,   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,   221,   221,   221,   221,
+   221,   221,   221,   221,   221,   221,   221,   221,   nil,   221,
+   221,   221,   nil,   221,   221,   nil,   221,   221,   221,    24,
+    24,    24,    24,    24,    24,    24,    24,    24,    24,    24,
+   nil,    24,    24,   nil,   nil,    24,    24,   nil,   221,   nil,
+   nil,   221,   nil,   nil,   221,   221,   nil,   nil,   221,   nil,
+   221,    24,   nil,    24,   221,    24,    24,    24,    24,    24,
+    24,    24,   221,    24,   nil,   nil,   nil,   221,   221,   221,
+   221,   221,   221,   nil,   nil,   nil,   221,   221,   nil,    24,
+   nil,   nil,   nil,   nil,   221,   nil,   nil,   221,   221,   221,
+   nil,   221,   221,   246,   246,   246,   246,   246,   246,   nil,
+   nil,   nil,   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,   246,   246,   246,   246,
+   246,   246,   246,   246,   246,   246,   246,   246,   nil,   246,
+   246,   246,   nil,   246,   246,   nil,   246,   246,   246,   294,
+   294,   294,   294,   294,   294,   294,   294,   294,   294,   294,
+   nil,   294,   294,   nil,   nil,   294,   294,   nil,   246,   nil,
+   nil,   246,   nil,   nil,   246,   246,   nil,   nil,   246,   nil,
+   246,   294,   nil,   294,   246,   294,   294,   294,   294,   294,
+   294,   294,   246,   294,   nil,   nil,   nil,   246,   246,   246,
+   246,   246,   246,   nil,   nil,   nil,   246,   246,   nil,   294,
+   nil,   nil,   nil,   nil,   246,   nil,   nil,   246,   246,   246,
+   nil,   246,   246,   315,   315,   315,   315,   315,   315,   nil,
+   nil,   nil,   315,   315,   nil,   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,   315,   315,   315,   315,
+   315,   315,   315,   315,   315,   315,   315,   315,   nil,   315,
+   315,   315,   nil,   315,   315,   nil,   315,   315,   315,   507,
+   507,   507,   507,   507,   507,   507,   507,   507,   507,   507,
+   nil,   507,   507,   nil,   nil,   507,   507,   nil,   315,   nil,
+   nil,   315,   nil,   nil,   315,   315,   nil,   nil,   315,   nil,
+   315,   507,   nil,   507,   315,   507,   507,   507,   507,   507,
+   507,   507,   315,   507,   nil,   nil,   nil,   315,   315,   315,
+   315,   315,   315,   nil,   nil,   nil,   315,   315,   507,   507,
+   nil,   nil,   nil,   nil,   315,   nil,   nil,   315,   315,   315,
+   nil,   315,   315,   320,   320,   320,   320,   320,   320,   nil,
+   nil,   nil,   320,   320,   nil,   nil,   nil,   320,   nil,   320,
+   320,   320,   320,   320,   320,   320,   nil,   nil,   nil,   nil,
+   nil,   320,   320,   320,   320,   320,   320,   320,   nil,   nil,
+   320,   nil,   nil,   nil,   nil,   nil,   320,   320,   320,   320,
+   320,   320,   320,   320,   320,   320,   320,   320,   nil,   320,
+   320,   320,   nil,   320,   320,   nil,   320,   320,   320,   558,
+   558,   558,   558,   558,   558,   558,   558,   558,   558,   558,
+   nil,   558,   558,   nil,   nil,   558,   558,   nil,   320,   nil,
+   nil,   320,   nil,   nil,   320,   320,   nil,   nil,   320,   nil,
+   320,   558,   nil,   558,   320,   558,   558,   558,   558,   558,
+   558,   558,   320,   558,   nil,   nil,   nil,   320,   320,   320,
+   320,   320,   320,   nil,   nil,   nil,   320,   320,   nil,   558,
+   nil,   nil,   nil,   nil,   320,   nil,   nil,   320,   320,   320,
+   nil,   320,   320,   346,   346,   346,   346,   346,   346,   nil,
+   nil,   nil,   346,   346,   nil,   nil,   nil,   346,   nil,   346,
+   346,   346,   346,   346,   346,   346,   nil,   nil,   nil,   nil,
+   nil,   346,   346,   346,   346,   346,   346,   346,   nil,   nil,
+   346,   nil,   nil,   nil,   nil,   nil,   346,   346,   346,   346,
+   346,   346,   346,   346,   346,   346,   346,   346,   nil,   346,
+   346,   346,   nil,   346,   346,   nil,   346,   346,   346,   814,
+   814,   814,   814,   814,   814,   814,   814,   814,   814,   814,
+   nil,   814,   814,   nil,   nil,   814,   814,   nil,   346,   nil,
+   nil,   346,   nil,   nil,   346,   346,   nil,   nil,   346,   nil,
+   346,   814,   nil,   814,   346,   814,   814,   814,   814,   814,
+   814,   814,   346,   814,   nil,   nil,   nil,   346,   346,   346,
+   346,   346,   346,   nil,   nil,   nil,   346,   346,   nil,   814,
+   nil,   nil,   nil,   nil,   346,   nil,   nil,   346,   346,   346,
+   nil,   346,   346,   356,   356,   356,   356,   356,   356,   nil,
+   nil,   nil,   356,   356,   nil,   nil,   nil,   356,   nil,   356,
+   356,   356,   356,   356,   356,   356,   nil,   nil,   nil,   nil,
+   nil,   356,   356,   356,   356,   356,   356,   356,   nil,   nil,
+   356,   nil,   nil,   nil,   nil,   nil,   356,   356,   356,   356,
+   356,   356,   356,   356,   356,   356,   356,   356,   nil,   356,
+   356,   356,   nil,   356,   356,   nil,   356,   356,   356,   923,
+   923,   923,   923,   923,   923,   923,   923,   923,   923,   923,
+   nil,   923,   923,   nil,   nil,   923,   923,   nil,   356,   nil,
+   nil,   356,   nil,   nil,   356,   356,   nil,   nil,   356,   nil,
+   356,   923,   nil,   923,   356,   923,   923,   923,   923,   923,
+   923,   923,   356,   923,   nil,   nil,   nil,   356,   356,   356,
+   356,   356,   356,   nil,   nil,   nil,   356,   356,   nil,   923,
+   nil,   nil,   nil,   nil,   356,   nil,   nil,   356,   356,   356,
+   nil,   356,   356,   357,   357,   357,   357,   357,   357,   nil,
+   nil,   nil,   357,   357,   nil,   nil,   nil,   357,   nil,   357,
+   357,   357,   357,   357,   357,   357,   nil,   nil,   nil,   nil,
+   nil,   357,   357,   357,   357,   357,   357,   357,   nil,   nil,
+   357,   nil,   nil,   nil,   nil,   nil,   357,   357,   357,   357,
+   357,   357,   357,   357,   357,   357,   357,   357,   nil,   357,
+   357,   357,   nil,   357,   357,   nil,   357,   357,   357,   486,
+   486,   486,   486,   486,   486,   486,   486,   486,   486,   486,
+   nil,   486,   486,   nil,   nil,   486,   486,   nil,   357,   nil,
+   nil,   357,   nil,   nil,   357,   357,   nil,   nil,   357,   nil,
+   357,   486,   nil,   486,   357,   486,   486,   486,   486,   486,
+   486,   486,   357,   486,   nil,   nil,   nil,   357,   357,   357,
+   357,   357,   357,   nil,   nil,   nil,   357,   357,   nil,   nil,
+   nil,   nil,   nil,   nil,   357,   nil,   nil,   357,   357,   357,
+   nil,   357,   357,   572,   572,   572,   572,   572,   572,   nil,
+   nil,   nil,   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,   572,   572,
+   572,   572,   572,   572,   572,   572,   572,   572,   nil,   572,
+   572,   572,   nil,   572,   572,   nil,   572,   572,   572,   487,
+   487,   487,   487,   487,   487,   487,   487,   487,   487,   487,
+   nil,   487,   487,   nil,   nil,   487,   487,   nil,   572,   nil,
+   nil,   572,   nil,   nil,   572,   572,   nil,   nil,   572,   nil,
+   572,   487,   nil,   487,   572,   487,   487,   487,   487,   487,
+   487,   487,   572,   487,   nil,   nil,   nil,   572,   572,   572,
+   572,   572,   572,   nil,   nil,   nil,   572,   572,   nil,   nil,
+   nil,   nil,   nil,   nil,   572,   nil,   nil,   572,   572,   572,
+   nil,   572,   572,   575,   575,   575,   575,   575,   575,   nil,
+   nil,   nil,   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,   575,   575,   575,   575,
+   575,   575,   575,   575,   575,   575,   575,   575,   nil,   575,
+   575,   575,   nil,   575,   575,   nil,   575,   575,   575,   497,
+   497,   497,   497,   497,   497,   497,   nil,   nil,   497,   497,
+   nil,   nil,   nil,   nil,   nil,   497,   497,   nil,   575,   nil,
+   nil,   575,   nil,   nil,   575,   575,   nil,   nil,   575,   nil,
+   575,   497,   nil,   497,   575,   497,   497,   497,   497,   497,
+   497,   497,   575,   497,   nil,   nil,   nil,   575,   575,   575,
+   575,   575,   575,   nil,   nil,   nil,   575,   575,   nil,   nil,
+   nil,   nil,   nil,   nil,   575,   nil,   nil,   575,   575,   575,
+   nil,   575,   575,   598,   598,   598,   598,   598,   598,   nil,
+   nil,   nil,   598,   598,   nil,   nil,   nil,   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,   598,   598,   598,   598,
+   598,   598,   598,   598,   598,   598,   598,   598,   nil,   598,
+   598,   598,   nil,   598,   598,   nil,   598,   598,   598,   498,
+   498,   498,   498,   498,   498,   498,   nil,   nil,   498,   498,
+   nil,   nil,   nil,   nil,   nil,   498,   498,   nil,   598,   nil,
+   nil,   598,   nil,   nil,   598,   598,   nil,   nil,   598,   nil,
+   598,   498,   nil,   498,   598,   498,   498,   498,   498,   498,
+   498,   498,   598,   498,   nil,   nil,   nil,   598,   598,   598,
+   598,   598,   598,   nil,   nil,   nil,   598,   598,   nil,   nil,
+   nil,   nil,   nil,   nil,   598,   nil,   nil,   598,   598,   598,
+   nil,   598,   598,   660,   660,   660,   660,   660,   660,   nil,
+   nil,   nil,   660,   660,   nil,   nil,   nil,   660,   nil,   660,
+   660,   660,   660,   660,   660,   660,   nil,   nil,   nil,   nil,
+   nil,   660,   660,   660,   660,   660,   660,   660,   nil,   nil,
+   660,   nil,   nil,   nil,   nil,   nil,   660,   660,   660,   660,
+   660,   660,   660,   660,   660,   660,   660,   660,   nil,   660,
+   660,   660,   nil,   660,   660,   nil,   660,   660,   660,   499,
+   499,   499,   499,   499,   499,   499,   nil,   nil,   499,   499,
+   nil,   nil,   nil,   nil,   nil,   499,   499,   nil,   660,   nil,
+   nil,   660,   nil,   nil,   660,   660,   nil,   nil,   660,   nil,
+   660,   499,   nil,   499,   660,   499,   499,   499,   499,   499,
+   499,   499,   660,   499,   nil,   nil,   nil,   660,   660,   660,
+   660,   660,   660,   nil,   nil,   nil,   660,   660,   nil,   nil,
+   nil,   nil,   nil,   nil,   660,   nil,   nil,   660,   660,   660,
+   nil,   660,   660,   759,   759,   759,   759,   759,   759,   nil,
+   nil,   nil,   759,   759,   nil,   nil,   nil,   759,   nil,   759,
+   759,   759,   759,   759,   759,   759,   nil,   nil,   nil,   nil,
+   nil,   759,   759,   759,   759,   759,   759,   759,   nil,   nil,
+   759,   nil,   nil,   nil,   nil,   nil,   759,   759,   759,   759,
+   759,   759,   759,   759,   759,   759,   759,   759,   nil,   759,
+   759,   759,   nil,   759,   759,   nil,   759,   759,   759,   500,
+   500,   500,   500,   500,   500,   500,   nil,   nil,   500,   500,
+   nil,   nil,   nil,   nil,   nil,   500,   500,   nil,   759,   nil,
+   nil,   759,   nil,   nil,   759,   759,   nil,   nil,   759,   nil,
+   759,   500,   nil,   500,   759,   500,   500,   500,   500,   500,
+   500,   500,   759,   500,   nil,   nil,   nil,   759,   759,   759,
+   759,   759,   759,   nil,   nil,   nil,   759,   759,   nil,   nil,
+   nil,   nil,   nil,   nil,   759,   nil,   nil,   759,   759,   759,
+   nil,   759,   759,   764,   764,   764,   764,   764,   764,   nil,
+   nil,   nil,   764,   764,   nil,   nil,   nil,   764,   nil,   764,
+   764,   764,   764,   764,   764,   764,   nil,   nil,   nil,   nil,
+   nil,   764,   764,   764,   764,   764,   764,   764,   nil,   nil,
+   764,   nil,   nil,   nil,   nil,   nil,   764,   764,   764,   764,
+   764,   764,   764,   764,   764,   764,   764,   764,   nil,   764,
+   764,   764,   nil,   764,   764,   nil,   764,   764,   764,   501,
+   501,   501,   501,   501,   501,   501,   nil,   nil,   501,   501,
+   nil,   nil,   nil,   nil,   nil,   501,   501,   nil,   764,   nil,
+   nil,   764,   nil,   nil,   764,   764,   nil,   nil,   764,   nil,
+   764,   501,   nil,   501,   764,   501,   501,   501,   501,   501,
+   501,   501,   764,   501,   nil,   nil,   nil,   764,   764,   764,
+   764,   764,   764,   nil,   nil,   nil,   764,   764,   nil,   nil,
+   nil,   nil,   nil,   nil,   764,   nil,   nil,   764,   764,   764,
+   nil,   764,   764,   768,   768,   768,   768,   768,   768,   nil,
+   nil,   nil,   768,   768,   nil,   nil,   nil,   768,   nil,   768,
+   768,   768,   768,   768,   768,   768,   nil,   nil,   nil,   nil,
+   nil,   768,   768,   768,   768,   768,   768,   768,   nil,   nil,
+   768,   nil,   nil,   nil,   nil,   nil,   768,   768,   768,   768,
+   768,   768,   768,   768,   768,   768,   768,   768,   nil,   768,
+   768,   768,   nil,   768,   768,   nil,   768,   768,   768,   502,
+   502,   502,   502,   502,   502,   502,   nil,   nil,   502,   502,
+   nil,   nil,   nil,   nil,   nil,   502,   502,   nil,   768,   nil,
+   nil,   768,   nil,   nil,   768,   768,   nil,   nil,   768,   nil,
+   768,   502,   nil,   502,   768,   502,   502,   502,   502,   502,
+   502,   502,   768,   502,   nil,   nil,   nil,   768,   768,   768,
+   768,   768,   768,   nil,   nil,   nil,   768,   768,   nil,   nil,
+   nil,   nil,   nil,   nil,   768,   nil,   nil,   768,   768,   768,
+   nil,   768,   768,   798,   798,   798,   798,   798,   798,   nil,
+   nil,   nil,   798,   798,   nil,   nil,   nil,   798,   nil,   798,
+   798,   798,   798,   798,   798,   798,   nil,   nil,   nil,   nil,
+   nil,   798,   798,   798,   798,   798,   798,   798,   nil,   nil,
+   798,   nil,   nil,   nil,   nil,   nil,   798,   798,   798,   798,
+   798,   798,   798,   798,   798,   798,   798,   798,   nil,   798,
+   798,   798,   nil,   798,   798,   nil,   798,   798,   798,   505,
+   505,   505,   505,   505,   505,   505,   nil,   nil,   505,   505,
+   nil,   nil,   nil,   nil,   nil,   505,   505,   nil,   798,   nil,
+   nil,   798,   nil,   nil,   798,   798,   nil,   nil,   798,   nil,
+   798,   505,   nil,   505,   798,   505,   505,   505,   505,   505,
+   505,   505,   798,   505,   nil,   nil,   nil,   798,   798,   798,
+   798,   798,   798,   nil,   nil,   nil,   798,   798,   nil,   nil,
+   nil,   nil,   nil,   nil,   798,   nil,   nil,   798,   798,   798,
+   nil,   798,   798,   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,
+   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,   nil,   838,
+   838,   838,   nil,   838,   838,   nil,   838,   838,   838,   506,
+   506,   506,   506,   506,   506,   506,   506,   nil,   506,   506,
+   nil,   nil,   nil,   nil,   nil,   506,   506,   nil,   838,   nil,
+   nil,   838,   nil,   nil,   838,   838,   nil,   nil,   838,   nil,
+   838,   506,   nil,   506,   838,   506,   506,   506,   506,   506,
+   506,   506,   838,   506,   nil,   nil,   nil,   838,   838,   838,
+   838,   838,   838,   nil,   nil,   nil,   838,   838,   nil,   nil,
+   nil,   nil,   nil,   nil,   838,   nil,   nil,   838,   838,   838,
+   nil,   838,   838,   856,   856,   856,   856,   856,   856,   nil,
+   nil,   nil,   856,   856,   nil,   nil,   nil,   856,   nil,   856,
+   856,   856,   856,   856,   856,   856,   nil,   nil,   nil,   nil,
+   nil,   856,   856,   856,   856,   856,   856,   856,   nil,   nil,
+   856,   nil,   nil,   nil,   nil,   nil,   856,   856,   856,   856,
+   856,   856,   856,   856,   856,   856,   856,   856,   nil,   856,
+   856,   856,   nil,   856,   856,   nil,   856,   856,   856,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   856,   nil,
+   nil,   856,   nil,   nil,   856,   856,   nil,   nil,   856,   nil,
+   856,   nil,   nil,   nil,   856,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   856,   nil,   nil,   nil,   nil,   856,   856,   856,
+   856,   856,   856,   nil,   nil,   nil,   856,   856,   nil,   nil,
+   nil,   nil,   nil,   nil,   856,   nil,   nil,   856,   856,   856,
+   nil,   856,   856,   868,   868,   868,   868,   868,   868,   nil,
+   nil,   nil,   868,   868,   nil,   nil,   nil,   868,   nil,   868,
+   868,   868,   868,   868,   868,   868,   nil,   nil,   nil,   nil,
+   nil,   868,   868,   868,   868,   868,   868,   868,   nil,   nil,
+   868,   nil,   nil,   nil,   nil,   nil,   868,   868,   868,   868,
+   868,   868,   868,   868,   868,   868,   868,   868,   nil,   868,
+   868,   868,   nil,   868,   868,   nil,   868,   868,   868,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   868,   nil,
+   nil,   868,   nil,   nil,   868,   868,   nil,   nil,   868,   nil,
+   868,   nil,   nil,   nil,   868,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   868,   nil,   nil,   nil,   nil,   868,   868,   868,
+   868,   868,   868,   nil,   nil,   nil,   868,   868,   nil,   nil,
+   nil,   nil,   nil,   nil,   868,   nil,   nil,   868,   868,   868,
+   nil,   868,   868,   888,   888,   888,   888,   888,   888,   nil,
+   nil,   nil,   888,   888,   nil,   nil,   nil,   888,   nil,   888,
+   888,   888,   888,   888,   888,   888,   nil,   nil,   nil,   nil,
+   nil,   888,   888,   888,   888,   888,   888,   888,   nil,   nil,
+   888,   nil,   nil,   nil,   nil,   nil,   888,   888,   888,   888,
+   888,   888,   888,   888,   888,   888,   888,   888,   nil,   888,
+   888,   888,   nil,   888,   888,   nil,   888,   888,   888,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   888,   nil,
+   nil,   888,   nil,   nil,   888,   888,   nil,   nil,   888,   nil,
+   888,   nil,   nil,   nil,   888,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   888,   nil,   nil,   nil,   nil,   888,   888,   888,
+   888,   888,   888,   nil,   nil,   nil,   888,   888,   nil,   nil,
+   nil,   nil,   nil,   nil,   888,   nil,   nil,   888,   888,   888,
+   nil,   888,   888,   889,   889,   889,   889,   889,   889,   nil,
+   nil,   nil,   889,   889,   nil,   nil,   nil,   889,   nil,   889,
+   889,   889,   889,   889,   889,   889,   nil,   nil,   nil,   nil,
+   nil,   889,   889,   889,   889,   889,   889,   889,   nil,   nil,
+   889,   nil,   nil,   nil,   nil,   nil,   889,   889,   889,   889,
+   889,   889,   889,   889,   889,   889,   889,   889,   nil,   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,
+   889,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   889,   nil,   nil,   889,   889,   889,
+   nil,   889,   889,   939,   939,   939,   939,   939,   939,   nil,
+   nil,   nil,   939,   939,   nil,   nil,   nil,   939,   nil,   939,
+   939,   939,   939,   939,   939,   939,   nil,   nil,   nil,   nil,
+   nil,   939,   939,   939,   939,   939,   939,   939,   nil,   nil,
+   939,   nil,   nil,   nil,   nil,   nil,   939,   939,   939,   939,
+   939,   939,   939,   939,   939,   939,   939,   939,   nil,   939,
+   939,   939,   nil,   939,   939,   nil,   939,   939,   939,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   939,   nil,
+   nil,   939,   nil,   nil,   939,   939,   nil,   nil,   939,   nil,
+   939,   nil,   nil,   nil,   939,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   939,   nil,   nil,   nil,   nil,   939,   939,   939,
+   939,   939,   939,   nil,   nil,   nil,   939,   939,   nil,   nil,
+   nil,   nil,   nil,   nil,   939,   nil,   nil,   939,   939,   939,
+   nil,   939,   939,   940,   940,   940,   940,   940,   940,   nil,
+   nil,   nil,   940,   940,   nil,   nil,   nil,   940,   nil,   940,
+   940,   940,   940,   940,   940,   940,   nil,   nil,   nil,   nil,
+   nil,   940,   940,   940,   940,   940,   940,   940,   nil,   nil,
+   940,   nil,   nil,   nil,   nil,   nil,   940,   940,   940,   940,
+   940,   940,   940,   940,   940,   940,   940,   940,   nil,   940,
+   940,   940,   nil,   940,   940,   nil,   940,   940,   940,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   940,   nil,
+   nil,   940,   nil,   nil,   940,   940,   nil,   nil,   940,   nil,
+   940,   nil,   nil,   nil,   940,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   940,   nil,   nil,   nil,   nil,   940,   940,   940,
+   940,   940,   940,   nil,   nil,   nil,   940,   940,   nil,   nil,
+   nil,   nil,   nil,   nil,   940,   nil,   nil,   940,   940,   940,
+   nil,   940,   940,   952,   952,   952,   952,   952,   952,   nil,
+   nil,   nil,   952,   952,   nil,   nil,   nil,   952,   nil,   952,
+   952,   952,   952,   952,   952,   952,   nil,   nil,   nil,   nil,
+   nil,   952,   952,   952,   952,   952,   952,   952,   nil,   nil,
+   952,   nil,   nil,   nil,   nil,   nil,   952,   952,   952,   952,
+   952,   952,   952,   952,   952,   952,   952,   952,   nil,   952,
+   952,   952,   nil,   952,   952,   nil,   952,   952,   952,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   952,   nil,
+   nil,   952,   nil,   nil,   952,   952,   nil,   nil,   952,   nil,
+   952,   nil,   nil,   nil,   952,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   952,   nil,   nil,   nil,   nil,   952,   952,   952,
+   952,   952,   952,   nil,   nil,   nil,   952,   952,   nil,   nil,
+   nil,   nil,   nil,   nil,   952,   nil,   nil,   952,   952,   952,
+   nil,   952,   952,   956,   956,   956,   956,   956,   956,   nil,
+   nil,   nil,   956,   956,   nil,   nil,   nil,   956,   nil,   956,
+   956,   956,   956,   956,   956,   956,   nil,   nil,   nil,   nil,
+   nil,   956,   956,   956,   956,   956,   956,   956,   nil,   nil,
+   956,   nil,   nil,   nil,   nil,   nil,   956,   956,   956,   956,
+   956,   956,   956,   956,   956,   956,   956,   956,   nil,   956,
+   956,   956,   nil,   956,   956,   nil,   956,   956,   956,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   956,   nil,
+   nil,   956,   nil,   nil,   956,   956,   nil,   nil,   956,   nil,
+   956,   nil,   nil,   nil,   956,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   956,   nil,   nil,   nil,   nil,   956,   956,   956,
+   956,   956,   956,   nil,   nil,   nil,   956,   956,   nil,   nil,
+   nil,   nil,   nil,   nil,   956,   nil,   nil,   956,   956,   956,
+   nil,   956,   956,   997,   997,   997,   997,   997,   997,   nil,
+   nil,   nil,   997,   997,   nil,   nil,   nil,   997,   nil,   997,
+   997,   997,   997,   997,   997,   997,   nil,   nil,   nil,   nil,
+   nil,   997,   997,   997,   997,   997,   997,   997,   nil,   nil,
+   997,   nil,   nil,   nil,   nil,   nil,   997,   997,   997,   997,
+   997,   997,   997,   997,   997,   997,   997,   997,   nil,   997,
+   997,   997,   nil,   997,   997,   nil,   997,   997,   997,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   997,   nil,
+   nil,   997,   nil,   nil,   997,   997,   nil,   nil,   997,   nil,
+   997,   nil,   nil,   nil,   997,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   997,   nil,   nil,   nil,   nil,   997,   997,   997,
+   997,   997,   997,   nil,   nil,   nil,   997,   997,   nil,   nil,
+   nil,   nil,   nil,   nil,   997,   nil,   nil,   997,   997,   997,
+   nil,   997,   997,  1004,  1004,  1004,  1004,  1004,  1004,   nil,
+   nil,   nil,  1004,  1004,   nil,   nil,   nil,  1004,   nil,  1004,
+  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,   nil,   nil,
+   nil,  1004,  1004,  1004,  1004,  1004,  1004,  1004,   nil,   nil,
+  1004,   nil,   nil,   nil,   nil,   nil,  1004,  1004,  1004,  1004,
+  1004,  1004,  1004,  1004,  1004,  1004,  1004,  1004,   nil,  1004,
+  1004,  1004,   nil,  1004,  1004,   nil,  1004,  1004,  1004,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1004,   nil,
+   nil,  1004,   nil,   nil,  1004,  1004,   nil,   nil,  1004,   nil,
+  1004,   nil,   nil,   nil,  1004,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1004,   nil,   nil,   nil,   nil,  1004,  1004,  1004,
+  1004,  1004,  1004,   nil,   nil,   nil,  1004,  1004,   nil,   nil,
+   nil,   nil,   nil,   nil,  1004,   nil,   nil,  1004,  1004,  1004,
+   nil,  1004,  1004,  1009,  1009,  1009,  1009,  1009,  1009,   nil,
+   nil,   nil,  1009,  1009,   nil,   nil,   nil,  1009,   nil,  1009,
+  1009,  1009,  1009,  1009,  1009,  1009,   nil,   nil,   nil,   nil,
+   nil,  1009,  1009,  1009,  1009,  1009,  1009,  1009,   nil,   nil,
+  1009,   nil,   nil,   nil,   nil,   nil,  1009,  1009,  1009,  1009,
+  1009,  1009,  1009,  1009,  1009,  1009,  1009,  1009,   nil,  1009,
+  1009,  1009,   nil,  1009,  1009,   nil,  1009,  1009,  1009,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1009,   nil,
+   nil,  1009,   nil,   nil,  1009,  1009,   nil,   nil,  1009,   nil,
+  1009,   nil,   nil,   nil,  1009,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1009,   nil,   nil,   nil,   nil,  1009,  1009,  1009,
+  1009,  1009,  1009,   nil,   nil,   nil,  1009,  1009,   nil,   nil,
+   nil,   nil,   nil,   nil,  1009,   nil,   nil,  1009,  1009,  1009,
+   nil,  1009,  1009,     8,     8,     8,     8,     8,   nil,   nil,
+   nil,     8,     8,   nil,   nil,   nil,     8,   nil,     8,     8,
+     8,     8,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,
+     8,     8,     8,     8,     8,     8,     8,   nil,   nil,     8,
+   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,     8,
+     8,     8,     8,     8,     8,     8,     8,   nil,     8,     8,
+     8,   nil,     8,     8,   nil,     8,     8,     8,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
+     8,   nil,   nil,     8,     8,   nil,   nil,     8,   nil,     8,
+   nil,   nil,   nil,     8,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,     8,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,   nil,   nil,   nil,     8,     8,   nil,   nil,   nil,
+   nil,   nil,   nil,     8,   nil,   nil,     8,     8,     8,   nil,
+     8,     8,    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,   nil,    23,
+    23,    23,    23,    23,    23,    23,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,    23,    23,
+    23,    23,    23,    23,    23,    23,   nil,    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,   nil,   nil,
+   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,    23,    23,    23,   nil,    23,
+    23,    32,    32,    32,   nil,    32,   nil,   nil,   nil,    32,
+    32,   nil,   nil,   nil,    32,   nil,    32,    32,    32,    32,
+    32,    32,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,
+    32,    32,    32,    32,    32,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,    32,   nil,   nil,    32,    32,    32,
+    32,    32,    32,    32,    32,    32,    32,    32,    32,   nil,
+    32,    32,   nil,    32,    32,    32,   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,    32,    32,   nil,   nil,    32,   nil,    32,   nil,    32,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,
+   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,    32,   nil,    32,    32,    32,    32,   nil,    32,    32,
+    33,    33,    33,   nil,    33,   nil,   nil,   nil,    33,    33,
+   nil,   nil,   nil,    33,   nil,    33,    33,    33,    33,    33,
+    33,    33,   nil,   nil,   nil,   nil,   nil,    33,    33,    33,
+    33,    33,    33,    33,   nil,   nil,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,    33,   nil,   nil,    33,    33,    33,    33,
+    33,    33,    33,    33,    33,    33,    33,    33,   nil,    33,
+    33,   nil,    33,    33,    33,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    33,   nil,   nil,    33,   nil,   nil,
+    33,    33,   nil,   nil,    33,   nil,    33,   nil,    33,   nil,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,
+   nil,   nil,   nil,    33,    33,    33,    33,    33,    33,   nil,
+   nil,   nil,    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,    33,    33,    33,    33,   nil,    33,    33,    34,
+    34,    34,   nil,    34,   nil,   nil,   nil,    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,    34,    34,    34,    34,   nil,    34,    34,
+   nil,    34,    34,    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,    34,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,    34,    34,    34,    34,    34,    34,   nil,   nil,
+   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,    34,    34,    34,    34,   nil,    34,    34,    37,    37,
+    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,   nil,
+   nil,    37,   nil,    37,    37,    37,    37,    37,    37,    37,
+   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
+    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,
+   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,    37,
+    37,    37,   nil,    37,    37,    37,   nil,    37,    37,   nil,
+   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,   972,   nil,
+   972,   972,   972,   972,   972,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    37,   nil,   972,    37,   nil,   nil,    37,    37,
+   nil,   nil,    37,   nil,    37,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   972,   nil,   nil,   nil,
+   nil,    37,    37,    37,    37,    37,    37,   972,   972,   nil,
+    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
+   nil,    37,    37,    37,   nil,    37,    37,    38,    38,    38,
+   nil,    38,   nil,   nil,   nil,    38,    38,   nil,   nil,   nil,
+    38,   972,    38,    38,    38,    38,    38,    38,    38,   nil,
+   nil,   nil,   nil,   nil,    38,    38,    38,    38,    38,    38,
+    38,   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,
+    38,   nil,   nil,    38,    38,    38,    38,    38,    38,    38,
+    38,   nil,    38,    38,    38,   nil,    38,    38,   nil,   nil,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   988,   nil,   988,
+   988,   988,   988,   988,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   988,    38,   nil,   nil,    38,    38,   nil,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   988,   nil,   nil,   nil,   nil,
+    38,    38,    38,    38,    38,    38,   988,   988,   nil,    38,
+    38,   nil,   nil,   nil,    38,   nil,   nil,    38,   nil,   nil,
+    38,    38,    38,   nil,    38,    38,    45,    45,    45,   nil,
+    45,   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,    45,
+   988,    45,    45,    45,    45,    45,    45,    45,   nil,   nil,
+   nil,   nil,   nil,    45,    45,    45,    45,    45,    45,    45,
+   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,    45,
+   nil,   nil,    45,    45,    45,    45,    45,    45,    45,    45,
+   nil,    45,    45,    45,   nil,    45,    45,   nil,    45,    45,
+    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    45,   nil,   nil,    45,   nil,   nil,    45,    45,   nil,   nil,
+    45,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    45,   nil,   nil,   nil,   nil,    45,
+    45,    45,    45,    45,    45,   nil,   nil,   nil,    45,    45,
+   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,
+    45,    45,   nil,    45,    45,    46,    46,    46,   nil,    46,
+   nil,   nil,   nil,    46,    46,   nil,   nil,   nil,    46,   nil,
+    46,    46,    46,    46,    46,    46,    46,   nil,   nil,   nil,
+   nil,   nil,    46,    46,    46,    46,    46,    46,    46,   nil,
+   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,
+   nil,    46,    46,    46,    46,    46,    46,    46,    46,   nil,
+    46,    46,    46,   nil,    46,    46,   nil,    46,    46,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,    46,   nil,   nil,    46,    46,   nil,   nil,    46,
+   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    46,   nil,   nil,   nil,   nil,    46,    46,
+    46,    46,    46,    46,   nil,   nil,   nil,    46,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,
+    46,   nil,    46,    46,    48,    48,    48,   nil,    48,   nil,
+   nil,   nil,    48,    48,   nil,   nil,   nil,    48,   nil,    48,
+    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,   nil,
+   nil,    48,    48,    48,    48,    48,    48,    48,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+    48,    48,    48,    48,    48,    48,    48,    48,   nil,    48,
+    48,    48,   nil,    48,    48,   nil,    48,    48,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,    48,   nil,   nil,    48,    48,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,    48,    48,    48,
+    48,    48,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,
+   nil,    48,    48,    62,    62,    62,    62,    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,    62,    62,   nil,    62,    62,
+    62,    62,    62,    62,    62,    62,    62,   nil,    62,    62,
+    62,   nil,    62,    62,   nil,    62,    62,    62,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    62,   nil,   nil,
+    62,   nil,   nil,    62,    62,   nil,   nil,    62,   nil,    62,
+   nil,   nil,   nil,    62,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    62,   nil,   nil,   nil,   nil,    62,    62,    62,    62,
+    62,    62,   nil,   nil,   nil,    62,    62,   nil,   nil,   nil,
+   nil,   nil,   nil,    62,   nil,   nil,    62,    62,    62,   nil,
+    62,    62,    67,    67,    67,   nil,    67,   nil,   nil,   nil,
+    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,
+    67,   nil,   nil,   nil,   nil,    67,    67,    67,    67,    67,
+    67,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,    67,    67,    67,   nil,    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,    68,    68,    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,   nil,   nil,   nil,
+   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,    68,    68,    68,    68,    68,    68,
+   nil,   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,   nil,
+   nil,    68,   nil,   nil,    68,    68,    68,   nil,    68,    68,
+    71,    71,    71,   nil,    71,   nil,   nil,   nil,    71,    71,
+   nil,   nil,   nil,    71,   nil,    71,    71,    71,    71,    71,
+    71,    71,   nil,   nil,   nil,   nil,   nil,    71,    71,    71,
+    71,    71,    71,    71,   nil,   nil,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,    71,   nil,   nil,    71,    71,    71,    71,
+    71,    71,    71,    71,   nil,    71,    71,    71,   nil,    71,
+    71,   nil,    71,    71,    71,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    71,   nil,   nil,    71,   nil,   nil,
+    71,    71,   nil,   nil,    71,   nil,   nil,   nil,   nil,   nil,
+    71,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    71,   nil,
+   nil,   nil,   nil,    71,    71,    71,    71,    71,    71,   nil,
+   nil,   nil,    71,    71,    71,   nil,   nil,   nil,   nil,    71,
+    71,   nil,   nil,    71,    71,    71,   nil,    71,    71,    72,
+    72,    72,   nil,    72,   nil,   nil,   nil,    72,    72,   nil,
+   nil,   nil,    72,   nil,    72,    72,    72,    72,    72,    72,
+    72,   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,
+    72,    72,    72,   nil,   nil,    72,   nil,   nil,   nil,   nil,
+   nil,   nil,    72,   nil,   nil,    72,    72,    72,    72,    72,
+    72,    72,    72,   nil,    72,    72,    72,   nil,    72,    72,
+   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,  1050,
+   nil,  1050,  1050,  1050,  1050,  1050,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    72,   nil,  1050,    72,   nil,   nil,    72,
+    72,   nil,   nil,    72,   nil,    72,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1050,   nil,   nil,
+   nil,   nil,    72,    72,    72,    72,    72,    72,  1050,  1050,
+   nil,    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,
+   nil,   nil,    72,    72,    72,   nil,    72,    72,    73,    73,
+    73,   nil,    73,   nil,   nil,   nil,    73,    73,   nil,   nil,
+   nil,    73,  1050,    73,    73,    73,    73,    73,    73,    73,
+   nil,   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,
+    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,    73,    73,    73,    73,    73,    73,
+    73,    73,   nil,    73,    73,    73,   nil,    73,    73,   nil,
+   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,  1059,   nil,
+  1059,  1059,  1059,  1059,  1059,   nil,   nil,   nil,   nil,    73,
+   nil,   nil,    73,   nil,  1059,    73,   nil,   nil,    73,    73,
+   nil,   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1059,   nil,   nil,   nil,
+   nil,    73,    73,    73,    73,    73,    73,  1059,  1059,   nil,
+    73,    73,   nil,   nil,   nil,   nil,   nil,   nil,    73,   nil,
+   nil,    73,    73,    73,   nil,    73,    73,    74,    74,    74,
+   nil,    74,   nil,   nil,   nil,    74,    74,   nil,   nil,   nil,
+    74,  1059,    74,    74,    74,    74,    74,    74,    74,   nil,
+   nil,   nil,   nil,   nil,    74,    74,    74,    74,    74,    74,
+    74,   nil,   nil,    74,   nil,   nil,   nil,   nil,   nil,   nil,
+    74,   nil,   nil,    74,    74,    74,    74,    74,    74,    74,
+    74,   nil,    74,    74,    74,   nil,    74,    74,   nil,   nil,
+   nil,    74,   nil,   nil,   nil,   nil,   nil,  1061,   nil,  1061,
+  1061,  1061,  1061,  1061,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    74,   nil,  1061,    74,   nil,   nil,    74,    74,   nil,
+   nil,    74,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1061,   nil,   nil,   nil,   nil,
+    74,    74,    74,    74,    74,    74,  1061,  1061,   nil,    74,
+    74,   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,   nil,
+    74,    74,    74,   nil,    74,    74,   128,   128,   128,   128,
+   128,   nil,   nil,   nil,   128,   128,   nil,   nil,   nil,   128,
+  1061,   128,   128,   128,   128,   128,   128,   128,   nil,   nil,
+   nil,   nil,   nil,   128,   128,   128,   128,   128,   128,   128,
+   nil,   nil,   128,   nil,   nil,   nil,   nil,   nil,   128,   128,
+   128,   128,   128,   128,   128,   128,   128,   128,   128,   128,
+   nil,   128,   128,   128,   nil,   128,   128,   nil,   128,   128,
+   128,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   128,   nil,   nil,   128,   nil,   nil,   128,   128,   nil,   nil,
+   128,   nil,   128,   nil,   nil,   nil,   128,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   128,   nil,   nil,   nil,   nil,   128,
+   128,   128,   128,   128,   128,   nil,   nil,   nil,   128,   128,
+   nil,   nil,   nil,   nil,   nil,   128,   128,   nil,   nil,   128,
+   128,   128,   nil,   128,   128,   133,   133,   133,   nil,   133,
+   nil,   nil,   nil,   133,   133,   nil,   nil,   nil,   133,   nil,
+   133,   133,   133,   133,   133,   133,   133,   nil,   nil,   nil,
+   nil,   nil,   133,   133,   133,   133,   133,   133,   133,   nil,
+   nil,   133,   nil,   nil,   nil,   nil,   nil,   nil,   133,   nil,
+   nil,   133,   133,   133,   133,   133,   133,   133,   133,   nil,
+   133,   133,   133,   nil,   133,   133,   nil,   133,   133,   133,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   133,
+   nil,   nil,   133,   nil,   nil,   133,   133,   nil,   nil,   133,
+   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   133,   nil,   nil,   nil,   nil,   133,   133,
+   133,   133,   133,   133,   nil,   nil,   nil,   133,   133,   nil,
+   nil,   nil,   nil,   nil,   nil,   133,   nil,   nil,   133,   133,
+   133,   nil,   133,   133,   134,   134,   134,   nil,   134,   nil,
+   nil,   nil,   134,   134,   nil,   nil,   nil,   134,   nil,   134,
+   134,   134,   134,   134,   134,   134,   nil,   nil,   nil,   nil,
+   nil,   134,   134,   134,   134,   134,   134,   134,   nil,   nil,
+   134,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,   nil,
+   134,   134,   134,   134,   134,   134,   134,   134,   nil,   134,
+   134,   134,   nil,   134,   134,   nil,   134,   134,   134,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   134,   nil,
+   nil,   134,   nil,   nil,   134,   134,   nil,   nil,   134,   nil,
+   nil,   nil,   nil,   nil,   134,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   134,   nil,   nil,   nil,   nil,   134,   134,   134,
+   134,   134,   134,   nil,   nil,   nil,   134,   134,   nil,   nil,
+   nil,   nil,   nil,   nil,   134,   nil,   nil,   134,   134,   134,
+   nil,   134,   134,   135,   135,   135,   nil,   135,   nil,   nil,
+   nil,   135,   135,   nil,   nil,   nil,   135,   nil,   135,   135,
+   135,   135,   135,   135,   135,   nil,   nil,   nil,   nil,   nil,
+   135,   135,   135,   135,   135,   135,   135,   nil,   nil,   135,
+   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   135,
+   135,   135,   135,   135,   135,   135,   135,   nil,   135,   135,
+   135,   nil,   135,   135,   nil,   135,   135,   135,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
+   135,   nil,   nil,   135,   135,   nil,   nil,   135,   nil,   nil,
+   nil,   nil,   nil,   135,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   135,   nil,   nil,   nil,   nil,   135,   135,   135,   135,
+   135,   135,   nil,   nil,   nil,   135,   135,   nil,   nil,   nil,
+   nil,   nil,   nil,   135,   nil,   nil,   135,   135,   135,   nil,
+   135,   135,   136,   136,   136,   nil,   136,   nil,   nil,   nil,
+   136,   136,   nil,   nil,   nil,   136,   nil,   136,   136,   136,
+   136,   136,   136,   136,   nil,   nil,   nil,   nil,   nil,   136,
+   136,   136,   136,   136,   136,   136,   nil,   nil,   136,   nil,
+   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   136,
+   136,   136,   136,   136,   136,   136,   nil,   136,   136,   136,
+   nil,   136,   136,   nil,   136,   136,   136,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,
+   nil,   nil,   136,   136,   nil,   nil,   136,   nil,   nil,   nil,
+   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   136,   nil,   nil,   nil,   nil,   136,   136,   136,   136,   136,
+   136,   nil,   nil,   nil,   136,   136,   nil,   nil,   nil,   nil,
+   nil,   nil,   136,   nil,   nil,   136,   136,   136,   nil,   136,
+   136,   137,   137,   137,   137,   137,   nil,   nil,   nil,   137,
+   137,   nil,   nil,   nil,   137,   nil,   137,   137,   137,   137,
+   137,   137,   137,   nil,   nil,   nil,   nil,   nil,   137,   137,
+   137,   137,   137,   137,   137,   nil,   nil,   137,   nil,   nil,
+   nil,   nil,   nil,   137,   137,   nil,   137,   137,   137,   137,
+   137,   137,   137,   137,   137,   nil,   137,   137,   137,   nil,
+   137,   137,   nil,   137,   137,   137,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,
+   nil,   137,   137,   nil,   nil,   137,   nil,   137,   nil,   nil,
+   nil,   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,
+   nil,   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,
+   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,
+   nil,   137,   nil,   nil,   137,   137,   137,   nil,   137,   137,
+   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,   nil,   222,   222,   222,
+   222,   222,   222,   222,   nil,   nil,   222,   nil,   nil,   nil,
+   nil,   nil,   nil,   222,   nil,   nil,   222,   222,   222,   222,
+   222,   222,   222,   222,   nil,   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,   222,   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,   nil,   nil,   nil,
+   222,   nil,   nil,   222,   222,   222,   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,   nil,   223,   223,   223,   223,
+   223,   223,   223,   nil,   nil,   223,   nil,   nil,   nil,   nil,
+   nil,   nil,   223,   nil,   nil,   223,   223,   223,   223,   223,
+   223,   223,   223,   nil,   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,   223,   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,   nil,   nil,   nil,   223,
+   nil,   nil,   223,   223,   223,   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,   nil,   224,   224,   224,   224,   224,
+   224,   224,   nil,   nil,   224,   nil,   nil,   nil,   nil,   nil,
+   nil,   224,   nil,   nil,   224,   224,   224,   224,   224,   224,
+   224,   224,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   224,   nil,
+   nil,   224,   224,   224,   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,   nil,   225,   225,   225,   225,   225,   225,
+   225,   nil,   nil,   225,   nil,   nil,   nil,   nil,   nil,   nil,
+   225,   nil,   nil,   225,   225,   225,   225,   225,   225,   225,
+   225,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,   nil,
+   225,   225,   225,   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,   nil,   226,   226,   226,   226,   226,   226,   226,
+   nil,   nil,   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,
+   nil,   nil,   226,   226,   226,   226,   226,   226,   226,   226,
+   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,   nil,   226,
+   226,   226,   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,   nil,   227,   227,   227,   227,   227,   227,   227,   nil,
+   nil,   227,   nil,   nil,   nil,   nil,   nil,   nil,   227,   nil,
+   nil,   227,   227,   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,   227,   nil,   227,   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,   nil,   nil,   nil,   227,   nil,   227,   227,   227,
+   227,   nil,   227,   227,   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,
+   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,   232,   nil,   nil,   nil,   nil,   232,   232,   232,
+   232,   232,   232,   nil,   nil,   nil,   232,   232,   nil,   nil,
+   nil,   nil,   nil,   nil,   232,   nil,   nil,   232,   232,   232,
+   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,   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,   233,   nil,   nil,   nil,   nil,   233,   233,   233,   233,
+   233,   233,   nil,   nil,   nil,   233,   233,   nil,   nil,   nil,
+   nil,   nil,   nil,   233,   nil,   nil,   233,   233,   233,   nil,
+   233,   233,   234,   234,   234,   nil,   234,   nil,   nil,   nil,
+   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,
+   234,   nil,   nil,   nil,   nil,   234,   234,   234,   234,   234,
+   234,   nil,   nil,   nil,   234,   234,   234,   nil,   nil,   nil,
+   nil,   nil,   234,   nil,   nil,   234,   234,   234,   nil,   234,
+   234,   245,   245,   245,   nil,   245,   nil,   nil,   nil,   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,   245,
+   nil,   nil,   nil,   nil,   245,   245,   245,   245,   245,   245,
+   nil,   nil,   nil,   245,   245,   nil,   nil,   nil,   nil,   nil,
+   nil,   245,   nil,   nil,   245,   245,   245,   nil,   245,   245,
+   248,   248,   248,   nil,   248,   nil,   nil,   nil,   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,   248,   nil,
+   nil,   nil,   nil,   248,   248,   248,   248,   248,   248,   nil,
+   nil,   nil,   248,   248,   nil,   nil,   nil,   nil,   nil,   nil,
+   248,   nil,   nil,   248,   248,   248,   nil,   248,   248,   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,   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,   249,   nil,   nil,
+   nil,   nil,   249,   249,   249,   249,   249,   249,   nil,   nil,
+   nil,   249,   249,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   249,   249,   249,   nil,   249,   249,   250,   250,
+   250,   nil,   250,   nil,   nil,   nil,   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,   250,   nil,   nil,   nil,
+   nil,   250,   250,   250,   250,   250,   250,   nil,   nil,   nil,
+   250,   250,   nil,   nil,   nil,   nil,   nil,   nil,   250,   nil,
+   nil,   250,   250,   250,   nil,   250,   250,   251,   251,   251,
+   nil,   251,   nil,   nil,   nil,   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,   251,   nil,   nil,   nil,   nil,
+   251,   251,   251,   251,   251,   251,   nil,   nil,   nil,   251,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,   251,   nil,   nil,
+   251,   251,   251,   nil,   251,   251,   252,   252,   252,   nil,
+   252,   nil,   nil,   nil,   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,   252,   nil,   nil,   nil,   nil,   252,
+   252,   252,   252,   252,   252,   nil,   nil,   nil,   252,   252,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   252,
+   252,   252,   nil,   252,   252,   253,   253,   253,   nil,   253,
+   nil,   nil,   nil,   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,   253,   nil,   nil,   nil,   nil,   253,   253,
+   253,   253,   253,   253,   nil,   nil,   nil,   253,   253,   nil,
+   nil,   nil,   nil,   nil,   nil,   253,   nil,   nil,   253,   253,
+   253,   nil,   253,   253,   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,
+   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,   254,   nil,   nil,   nil,   nil,   254,   254,   254,
+   254,   254,   254,   nil,   nil,   nil,   254,   254,   nil,   nil,
+   nil,   nil,   nil,   nil,   254,   nil,   nil,   254,   254,   254,
+   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,   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,   255,   nil,   nil,   nil,   nil,   255,   255,   255,   255,
+   255,   255,   nil,   nil,   nil,   255,   255,   nil,   nil,   nil,
+   nil,   nil,   nil,   255,   nil,   nil,   255,   255,   255,   nil,
+   255,   255,   256,   256,   256,   nil,   256,   nil,   nil,   nil,
+   256,   256,   nil,   nil,   nil,   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,
+   256,   256,   256,   256,   256,   256,   nil,   256,   256,   256,
+   nil,   256,   256,   nil,   256,   256,   256,   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,   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,   nil,
+   nil,   nil,   256,   nil,   nil,   256,   256,   256,   nil,   256,
+   256,   257,   257,   257,   nil,   257,   nil,   nil,   nil,   257,
+   257,   nil,   nil,   nil,   257,   nil,   257,   257,   257,   257,
+   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   257,   257,
+   257,   257,   257,   257,   257,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   257,   257,
+   257,   257,   257,   257,   257,   nil,   257,   257,   257,   nil,
+   257,   257,   nil,   257,   257,   257,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,
+   nil,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,   257,
+   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   257,   257,   257,   nil,   257,   257,
+   258,   258,   258,   nil,   258,   nil,   nil,   nil,   258,   258,
+   nil,   nil,   nil,   258,   nil,   258,   258,   258,   258,   258,
+   258,   258,   nil,   nil,   nil,   nil,   nil,   258,   258,   258,
+   258,   258,   258,   258,   nil,   nil,   258,   nil,   nil,   nil,
+   nil,   nil,   nil,   258,   nil,   nil,   258,   258,   258,   258,
+   258,   258,   258,   258,   nil,   258,   258,   258,   nil,   258,
+   258,   nil,   258,   258,   258,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,   nil,   nil,
+   258,   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,
+   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,
+   nil,   nil,   nil,   258,   258,   258,   258,   258,   258,   nil,
+   nil,   nil,   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,
+   258,   nil,   nil,   258,   258,   258,   nil,   258,   258,   259,
+   259,   259,   nil,   259,   nil,   nil,   nil,   259,   259,   nil,
+   nil,   nil,   259,   nil,   259,   259,   259,   259,   259,   259,
+   259,   nil,   nil,   nil,   nil,   nil,   259,   259,   259,   259,
+   259,   259,   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,
+   nil,   nil,   259,   nil,   nil,   259,   259,   259,   259,   259,
+   259,   259,   259,   nil,   259,   259,   259,   nil,   259,   259,
+   nil,   259,   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   259,   nil,   nil,   259,   nil,   nil,   259,
+   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   259,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,
+   nil,   nil,   259,   259,   259,   259,   259,   259,   nil,   nil,
+   nil,   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,
+   nil,   nil,   259,   259,   259,   nil,   259,   259,   260,   260,
+   260,   nil,   260,   nil,   nil,   nil,   260,   260,   nil,   nil,
+   nil,   260,   nil,   260,   260,   260,   260,   260,   260,   260,
+   nil,   nil,   nil,   nil,   nil,   260,   260,   260,   260,   260,
+   260,   260,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,
+   nil,   260,   nil,   nil,   260,   260,   260,   260,   260,   260,
+   260,   260,   nil,   260,   260,   260,   nil,   260,   260,   nil,
+   260,   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   260,   nil,   nil,   260,   nil,   nil,   260,   260,
+   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   260,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   nil,
+   nil,   260,   260,   260,   260,   260,   260,   nil,   nil,   nil,
+   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,
+   nil,   260,   260,   260,   nil,   260,   260,   261,   261,   261,
+   nil,   261,   nil,   nil,   nil,   261,   261,   nil,   nil,   nil,
+   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,   261,   261,   261,   261,   261,
+   261,   nil,   261,   261,   261,   nil,   261,   261,   nil,   261,
+   261,   261,   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,   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,   nil,   nil,   nil,   261,   nil,   nil,
+   261,   261,   261,   nil,   261,   261,   262,   262,   262,   nil,
+   262,   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   262,
+   nil,   262,   262,   262,   262,   262,   262,   262,   nil,   nil,
+   nil,   nil,   nil,   262,   262,   262,   262,   262,   262,   262,
+   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,
+   nil,   nil,   262,   262,   262,   262,   262,   262,   262,   262,
+   nil,   262,   262,   262,   nil,   262,   262,   nil,   262,   262,
+   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   262,   nil,   nil,   262,   nil,   nil,   262,   262,   nil,   nil,
+   262,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,
+   262,   262,   262,   262,   262,   nil,   nil,   nil,   262,   262,
+   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,
+   262,   262,   nil,   262,   262,   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,   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,   nil,
+   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,   nil,   nil,   nil,   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   263,   nil,   nil,   263,   263,
+   263,   nil,   263,   263,   264,   264,   264,   nil,   264,   nil,
+   nil,   nil,   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,   nil,   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,
+   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   264,   nil,   nil,   nil,   nil,   264,   264,   264,
+   264,   264,   264,   nil,   nil,   nil,   264,   264,   nil,   nil,
+   nil,   nil,   nil,   nil,   264,   nil,   nil,   264,   264,   264,
+   nil,   264,   264,   265,   265,   265,   nil,   265,   nil,   nil,
+   nil,   265,   265,   nil,   nil,   nil,   265,   nil,   265,   265,
+   265,   265,   265,   265,   265,   nil,   nil,   nil,   nil,   nil,
+   265,   265,   265,   265,   265,   265,   265,   nil,   nil,   265,
+   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,
+   265,   265,   265,   265,   265,   265,   265,   nil,   265,   265,
+   265,   nil,   265,   265,   nil,   265,   265,   265,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,
+   265,   nil,   nil,   265,   265,   nil,   nil,   265,   nil,   nil,
+   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   265,   nil,   nil,   nil,   nil,   265,   265,   265,   265,
+   265,   265,   nil,   nil,   nil,   265,   265,   nil,   nil,   nil,
+   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,   nil,
+   265,   265,   266,   266,   266,   nil,   266,   nil,   nil,   nil,
+   266,   266,   nil,   nil,   nil,   266,   nil,   266,   266,   266,
+   266,   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   266,
+   266,   266,   266,   266,   266,   266,   nil,   nil,   266,   nil,
+   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   266,
+   266,   266,   266,   266,   266,   266,   nil,   266,   266,   266,
+   nil,   266,   266,   nil,   266,   266,   266,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,
+   nil,   nil,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,
+   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   266,   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,
+   266,   nil,   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,
+   nil,   nil,   266,   nil,   nil,   266,   266,   266,   nil,   266,
+   266,   267,   267,   267,   nil,   267,   nil,   nil,   nil,   267,
+   267,   nil,   nil,   nil,   267,   nil,   267,   267,   267,   267,
+   267,   267,   267,   nil,   nil,   nil,   nil,   nil,   267,   267,
+   267,   267,   267,   267,   267,   nil,   nil,   267,   nil,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,
+   267,   267,   267,   267,   267,   nil,   267,   267,   267,   nil,
+   267,   267,   nil,   267,   267,   267,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,
+   nil,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,
+   nil,   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,
+   nil,   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,
+   nil,   nil,   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,
+   nil,   267,   nil,   nil,   267,   267,   267,   nil,   267,   267,
+   268,   268,   268,   nil,   268,   nil,   nil,   nil,   268,   268,
+   nil,   nil,   nil,   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,   268,   268,
+   268,   268,   268,   268,   nil,   268,   268,   268,   nil,   268,
+   268,   nil,   268,   268,   268,   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,   268,   nil,   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,
+   268,   nil,   nil,   268,   268,   268,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,
+   269,   269,   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,
+   nil,   nil,   269,   nil,   nil,   269,   269,   269,   269,   269,
+   269,   269,   269,   nil,   269,   269,   269,   nil,   269,   269,
+   nil,   269,   269,   269,   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,
+   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,
+   nil,   nil,   269,   269,   269,   nil,   269,   269,   274,   274,
+   274,   nil,   274,   nil,   nil,   nil,   274,   274,   nil,   nil,
+   nil,   274,   nil,   274,   274,   274,   274,   274,   274,   274,
+   nil,   nil,   nil,   nil,   nil,   274,   274,   274,   274,   274,
+   274,   274,   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,
+   nil,   274,   nil,   nil,   274,   274,   274,   274,   274,   274,
+   274,   274,   nil,   274,   274,   274,   nil,   274,   274,   nil,
+   274,   274,   274,   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,   274,   274,
+   nil,   nil,   274,   nil,   nil,   nil,   nil,   nil,   274,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,
+   nil,   274,   274,   274,   274,   274,   274,   nil,   nil,   nil,
+   274,   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,
+   nil,   274,   274,   274,   nil,   274,   274,   282,   282,   282,
+   nil,   282,   nil,   nil,   nil,   282,   282,   nil,   nil,   nil,
+   282,   nil,   282,   282,   282,   282,   282,   282,   282,   nil,
+   nil,   nil,   nil,   nil,   282,   282,   282,   282,   282,   282,
+   282,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   282,   nil,   nil,   282,   282,   282,   282,   282,   282,   282,
+   282,   282,   282,   282,   282,   nil,   282,   282,   nil,   282,
+   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   282,   nil,   nil,   282,   nil,   nil,   282,   282,   nil,
+   nil,   282,   nil,   282,   nil,   282,   nil,   282,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   282,   282,   282,   282,   282,   282,   nil,   nil,   nil,   282,
+   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   282,
+   282,   282,   282,   nil,   282,   282,   283,   283,   283,   nil,
+   283,   nil,   nil,   nil,   283,   283,   nil,   nil,   nil,   283,
+   nil,   283,   283,   283,   283,   283,   283,   283,   nil,   nil,
+   nil,   nil,   nil,   283,   283,   283,   283,   283,   283,   283,
+   nil,   nil,   283,   nil,   nil,   nil,   nil,   nil,   nil,   283,
+   nil,   nil,   283,   283,   283,   283,   283,   283,   283,   283,
+   283,   283,   283,   283,   nil,   283,   283,   nil,   283,   283,
+   283,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   283,   nil,   nil,   283,   nil,   nil,   283,   283,   nil,   nil,
+   283,   nil,   283,   nil,   283,   nil,   283,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   283,   nil,   nil,   nil,   nil,   283,
+   283,   283,   283,   283,   283,   nil,   nil,   nil,   283,   283,
+   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   283,   283,
+   283,   283,   nil,   283,   283,   292,   292,   292,   nil,   292,
+   nil,   nil,   nil,   292,   292,   nil,   nil,   nil,   292,   nil,
+   292,   292,   292,   292,   292,   292,   292,   nil,   nil,   nil,
+   nil,   nil,   292,   292,   292,   292,   292,   292,   292,   nil,
+   nil,   292,   nil,   nil,   nil,   nil,   nil,   nil,   292,   nil,
+   nil,   292,   292,   292,   292,   292,   292,   292,   292,   292,
+   292,   292,   292,   nil,   292,   292,   nil,   292,   292,   292,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   292,
+   nil,   nil,   292,   nil,   nil,   292,   292,   nil,   nil,   292,
+   nil,   292,   nil,   292,   nil,   292,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   292,   nil,   nil,   nil,   nil,   292,   292,
+   292,   292,   292,   292,   nil,   nil,   nil,   292,   292,   292,
+   nil,   nil,   nil,   nil,   nil,   292,   nil,   292,   292,   292,
+   292,   nil,   292,   292,   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,
+   nil,   299,   299,   299,   299,   299,   299,   299,   nil,   nil,
+   299,   nil,   nil,   nil,   nil,   nil,   nil,   299,   nil,   nil,
+   299,   299,   299,   299,   299,   299,   299,   299,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   299,   nil,   nil,   299,   299,   299,
+   nil,   299,   299,   301,   301,   301,   nil,   301,   nil,   nil,
+   nil,   301,   301,   nil,   nil,   nil,   301,   nil,   301,   301,
+   301,   301,   301,   301,   301,   nil,   nil,   nil,   nil,   nil,
+   301,   301,   301,   301,   301,   301,   301,   nil,   nil,   301,
+   nil,   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,   301,
+   301,   301,   301,   301,   301,   301,   301,   nil,   301,   301,
+   301,   nil,   301,   301,   nil,   301,   301,   301,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   301,   nil,   nil,
+   301,   nil,   nil,   301,   301,   nil,   nil,   301,   nil,   nil,
+   nil,   nil,   nil,   301,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   301,   nil,   nil,   nil,   nil,   301,   301,   301,   301,
+   301,   301,   nil,   nil,   nil,   301,   301,   nil,   nil,   nil,
+   nil,   nil,   nil,   301,   nil,   nil,   301,   301,   301,   nil,
+   301,   301,   304,   304,   304,   nil,   304,   nil,   nil,   nil,
+   304,   304,   nil,   nil,   nil,   304,   nil,   304,   304,   304,
+   304,   304,   304,   304,   nil,   nil,   nil,   nil,   nil,   304,
+   304,   304,   304,   304,   304,   304,   nil,   nil,   304,   nil,
+   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,   304,
+   304,   304,   304,   304,   304,   304,   nil,   304,   304,   304,
+   nil,   304,   304,   nil,   304,   304,   304,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,
+   nil,   nil,   304,   304,   nil,   nil,   304,   nil,   nil,   nil,
+   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   304,   nil,   nil,   nil,   nil,   304,   304,   304,   304,   304,
+   304,   nil,   nil,   nil,   304,   304,   nil,   nil,   nil,   nil,
+   nil,   nil,   304,   nil,   nil,   304,   304,   304,   nil,   304,
+   304,   305,   305,   305,   nil,   305,   nil,   nil,   nil,   305,
+   305,   nil,   nil,   nil,   305,   nil,   305,   305,   305,   305,
+   305,   305,   305,   nil,   nil,   nil,   nil,   nil,   305,   305,
+   305,   305,   305,   305,   305,   nil,   nil,   305,   nil,   nil,
+   nil,   nil,   nil,   nil,   305,   nil,   nil,   305,   305,   305,
+   305,   305,   305,   305,   305,   nil,   305,   305,   305,   nil,
+   305,   305,   nil,   305,   305,   305,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,   305,   nil,
+   nil,   305,   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,
+   nil,   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   305,
+   nil,   nil,   nil,   nil,   305,   305,   305,   305,   305,   305,
+   nil,   nil,   nil,   305,   305,   nil,   nil,   nil,   nil,   nil,
+   nil,   305,   nil,   nil,   305,   305,   305,   nil,   305,   305,
+   311,   311,   311,   311,   311,   nil,   nil,   nil,   311,   311,
+   nil,   nil,   nil,   311,   nil,   311,   311,   311,   311,   311,
+   311,   311,   nil,   nil,   nil,   nil,   nil,   311,   311,   311,
+   311,   311,   311,   311,   nil,   nil,   311,   nil,   nil,   nil,
+   nil,   nil,   311,   311,   nil,   311,   311,   311,   311,   311,
+   311,   311,   311,   311,   nil,   311,   311,   311,   nil,   311,
+   311,   nil,   311,   311,   311,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   311,   nil,   nil,   311,   nil,   nil,
+   311,   311,   nil,   nil,   311,   nil,   311,   nil,   nil,   nil,
+   311,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   311,   nil,
+   nil,   nil,   nil,   311,   311,   311,   311,   311,   311,   nil,
+   nil,   nil,   311,   311,   nil,   nil,   nil,   nil,   nil,   nil,
+   311,   nil,   nil,   311,   311,   311,   nil,   311,   311,   319,
+   319,   319,   nil,   319,   nil,   nil,   nil,   319,   319,   nil,
+   nil,   nil,   319,   nil,   319,   319,   319,   319,   319,   319,
+   319,   nil,   nil,   nil,   nil,   nil,   319,   319,   319,   319,
+   319,   319,   319,   nil,   nil,   319,   nil,   nil,   nil,   nil,
+   nil,   nil,   319,   nil,   nil,   319,   319,   319,   319,   319,
+   319,   319,   319,   nil,   319,   319,   319,   nil,   319,   319,
+   nil,   nil,   nil,   319,   nil,   nil,   nil,   nil,   nil,  1063,
+   nil,  1063,  1063,  1063,  1063,  1063,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   319,   nil,  1063,   319,   nil,   nil,   319,
+   319,   nil,   nil,   319,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1063,   nil,   nil,
+   nil,   nil,   319,   319,   319,   319,   319,   319,  1063,  1063,
+   nil,   319,   319,   nil,   nil,   nil,   319,   nil,   nil,   319,
+   nil,   nil,   319,   319,   319,   nil,   319,   319,   336,   336,
+   336,   nil,   336,   nil,   nil,   nil,   336,   336,   nil,   nil,
+   nil,   336,  1063,   336,   336,   336,   336,   336,   336,   336,
+   nil,   nil,   nil,   nil,   nil,   336,   336,   336,   336,   336,
+   336,   336,   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,
+   nil,   336,   nil,   nil,   336,   336,   336,   336,   336,   336,
+   336,   336,   nil,   336,   336,   336,   nil,   336,   336,   nil,
+   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,  1084,   nil,
+  1084,  1084,  1084,  1084,  1084,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   336,   nil,  1084,   336,   nil,   nil,   336,   336,
+   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1084,   nil,   nil,   nil,
+   nil,   336,   336,   336,   336,   336,   336,  1084,  1084,   nil,
+   336,   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,
+   nil,   336,   336,   336,   nil,   336,   336,   343,   343,   343,
+   nil,   343,   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,
+   343,  1084,   343,   343,   343,   343,   343,   343,   343,   nil,
+   nil,   nil,   nil,   nil,   343,   343,   343,   343,   343,   343,
+   343,   nil,   nil,   343,   nil,   nil,   nil,   nil,   nil,   nil,
+   343,   nil,   nil,   343,   343,   343,   343,   343,   343,   343,
+   343,   nil,   343,   343,   343,   nil,   343,   343,   nil,   343,
+   343,   343,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   343,   nil,   nil,   343,   nil,   nil,   343,   343,   nil,
+   nil,   343,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,
+   343,   343,   343,   343,   343,   343,   nil,   nil,   nil,   343,
+   343,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,
+   343,   343,   343,   nil,   343,   343,   345,   345,   345,   nil,
+   345,   nil,   nil,   nil,   345,   345,   nil,   nil,   nil,   345,
+   nil,   345,   345,   345,   345,   345,   345,   345,   nil,   nil,
+   nil,   nil,   nil,   345,   345,   345,   345,   345,   345,   345,
+   nil,   nil,   345,   nil,   nil,   nil,   nil,   nil,   nil,   345,
+   nil,   nil,   345,   345,   345,   345,   345,   345,   345,   345,
+   nil,   345,   345,   345,   nil,   345,   345,   nil,   345,   345,
+   345,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   345,   nil,   nil,   345,   345,   nil,   345,   345,   nil,   nil,
+   345,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   345,   nil,   nil,   nil,   nil,   345,
+   345,   345,   345,   345,   345,   nil,   nil,   nil,   345,   345,
+   nil,   nil,   nil,   nil,   nil,   nil,   345,   nil,   nil,   345,
+   345,   345,   nil,   345,   345,   349,   349,   349,   nil,   349,
+   nil,   nil,   nil,   349,   349,   nil,   nil,   nil,   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,   349,   349,   349,   349,   349,   349,   349,
+   349,   349,   349,   nil,   349,   349,   nil,   349,   349,   349,
+   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,   349,   nil,   nil,   349,
+   nil,   349,   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,   nil,   nil,   nil,   349,   nil,   349,   349,   349,
+   349,   nil,   349,   349,   350,   350,   350,   nil,   350,   nil,
+   nil,   nil,   350,   350,   nil,   nil,   nil,   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,   350,   350,   350,   350,   350,   350,   350,   350,
+   350,   350,   nil,   350,   350,   nil,   350,   350,   350,   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,   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,   nil,   nil,   nil,   350,   nil,   350,   350,   350,   350,
+   nil,   350,   350,   355,   355,   355,   nil,   355,   nil,   nil,
+   nil,   355,   355,   nil,   nil,   nil,   355,   nil,   355,   355,
+   355,   355,   355,   355,   355,   nil,   nil,   nil,   nil,   nil,
+   355,   355,   355,   355,   355,   355,   355,   nil,   nil,   355,
+   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,   355,
+   355,   355,   355,   355,   355,   355,   355,   nil,   355,   355,
+   355,   nil,   355,   355,   nil,   355,   355,   355,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,
+   355,   nil,   nil,   355,   355,   nil,   nil,   355,   nil,   nil,
+   nil,   nil,   nil,   355,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   355,   nil,   nil,   nil,   nil,   355,   355,   355,   355,
+   355,   355,   nil,   nil,   nil,   355,   355,   nil,   nil,   nil,
+   nil,   nil,   nil,   355,   nil,   nil,   355,   355,   355,   nil,
+   355,   355,   376,   376,   376,   nil,   376,   nil,   nil,   nil,
+   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,
+   376,   nil,   nil,   nil,   nil,   376,   376,   376,   376,   376,
+   376,   nil,   nil,   nil,   376,   376,   nil,   nil,   nil,   nil,
+   nil,   nil,   376,   nil,   nil,   376,   376,   376,   nil,   376,
+   376,   437,   437,   437,   nil,   437,   nil,   nil,   nil,   437,
+   437,   nil,   nil,   nil,   437,   nil,   437,   437,   437,   437,
+   437,   437,   437,   nil,   nil,   nil,   nil,   nil,   437,   437,
+   437,   437,   437,   437,   437,   nil,   nil,   437,   nil,   nil,
+   nil,   nil,   nil,   nil,   437,   nil,   nil,   437,   437,   437,
+   437,   437,   437,   437,   437,   nil,   437,   437,   437,   nil,
+   437,   437,   nil,   437,   437,   437,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   437,   nil,   nil,   437,   nil,
+   nil,   437,   437,   nil,   nil,   437,   nil,   nil,   nil,   nil,
+   nil,   437,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   437,
+   nil,   nil,   nil,   nil,   437,   437,   437,   437,   437,   437,
+   nil,   nil,   nil,   437,   437,   nil,   nil,   nil,   nil,   nil,
+   nil,   437,   nil,   nil,   437,   437,   437,   nil,   437,   437,
+   481,   481,   481,   nil,   481,   nil,   nil,   nil,   481,   481,
+   nil,   nil,   nil,   481,   nil,   481,   481,   481,   481,   481,
+   481,   481,   nil,   nil,   nil,   nil,   nil,   481,   481,   481,
+   481,   481,   481,   481,   nil,   nil,   481,   nil,   nil,   nil,
+   nil,   nil,   nil,   481,   nil,   nil,   481,   481,   481,   481,
+   481,   481,   481,   481,   481,   481,   481,   481,   nil,   481,
+   481,   nil,   481,   481,   481,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   481,   nil,   nil,   481,   nil,   nil,
+   481,   481,   nil,   nil,   481,   nil,   481,   nil,   481,   nil,
+   481,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   481,   nil,
+   nil,   nil,   nil,   481,   481,   481,   481,   481,   481,   nil,
+   nil,   nil,   481,   481,   nil,   nil,   nil,   nil,   nil,   nil,
+   481,   nil,   481,   481,   481,   481,   nil,   481,   481,   483,
+   483,   483,   nil,   483,   nil,   nil,   nil,   483,   483,   nil,
+   nil,   nil,   483,   nil,   483,   483,   483,   483,   483,   483,
+   483,   nil,   nil,   nil,   nil,   nil,   483,   483,   483,   483,
+   483,   483,   483,   nil,   nil,   483,   nil,   nil,   nil,   nil,
+   nil,   nil,   483,   nil,   nil,   483,   483,   483,   483,   483,
+   483,   483,   483,   nil,   483,   483,   483,   nil,   483,   483,
+   nil,   483,   483,   483,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   483,   nil,   nil,   483,   nil,   nil,   483,
+   483,   nil,   nil,   483,   nil,   nil,   nil,   nil,   nil,   483,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   483,   nil,   nil,
+   nil,   nil,   483,   483,   483,   483,   483,   483,   nil,   nil,
+   nil,   483,   483,   nil,   nil,   nil,   nil,   nil,   nil,   483,
+   nil,   nil,   483,   483,   483,   nil,   483,   483,   484,   484,
+   484,   nil,   484,   nil,   nil,   nil,   484,   484,   nil,   nil,
+   nil,   484,   nil,   484,   484,   484,   484,   484,   484,   484,
+   nil,   nil,   nil,   nil,   nil,   484,   484,   484,   484,   484,
+   484,   484,   nil,   nil,   484,   nil,   nil,   nil,   nil,   nil,
+   nil,   484,   nil,   nil,   484,   484,   484,   484,   484,   484,
+   484,   484,   nil,   484,   484,   484,   nil,   484,   484,   nil,
+   484,   484,   484,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   484,   nil,   nil,   484,   nil,   nil,   484,   484,
+   nil,   nil,   484,   nil,   nil,   nil,   nil,   nil,   484,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,   nil,   nil,
+   nil,   484,   484,   484,   484,   484,   484,   nil,   nil,   nil,
+   484,   484,   nil,   nil,   nil,   nil,   nil,   nil,   484,   nil,
+   nil,   484,   484,   484,   nil,   484,   484,   485,   485,   485,
+   nil,   485,   nil,   nil,   nil,   485,   485,   nil,   nil,   nil,
+   485,   nil,   485,   485,   485,   485,   485,   485,   485,   nil,
+   nil,   nil,   nil,   nil,   485,   485,   485,   485,   485,   485,
+   485,   nil,   nil,   485,   nil,   nil,   nil,   nil,   nil,   nil,
+   485,   nil,   nil,   485,   485,   485,   485,   485,   485,   485,
+   485,   nil,   485,   485,   485,   nil,   485,   485,   nil,   485,
+   485,   485,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   485,   nil,   nil,   485,   nil,   nil,   485,   485,   nil,
+   nil,   485,   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,   nil,   nil,
+   485,   485,   485,   485,   485,   485,   nil,   nil,   nil,   485,
+   485,   nil,   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,
+   485,   485,   485,   nil,   485,   485,   523,   523,   523,   nil,
+   523,   nil,   nil,   nil,   523,   523,   nil,   nil,   nil,   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,   523,   523,   523,   523,   523,   523,
+   523,   523,   523,   523,   nil,   523,   523,   nil,   523,   523,
+   523,   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,   523,   nil,   nil,
+   523,   nil,   523,   nil,   523,   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,   nil,   nil,   nil,   523,   nil,   523,   523,
+   523,   523,   nil,   523,   523,   526,   526,   526,   nil,   526,
+   nil,   nil,   nil,   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,   nil,   nil,   526,   nil,   526,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   526,   nil,   nil,   nil,   nil,   526,   526,
+   526,   526,   526,   526,   nil,   nil,   nil,   526,   526,   nil,
+   nil,   nil,   nil,   nil,   nil,   526,   nil,   526,   526,   526,
+   526,   nil,   526,   526,   528,   528,   528,   nil,   528,   nil,
+   nil,   nil,   528,   528,   nil,   nil,   nil,   528,   nil,   528,
+   528,   528,   528,   528,   528,   528,   nil,   nil,   nil,   nil,
+   nil,   528,   528,   528,   528,   528,   528,   528,   nil,   nil,
+   528,   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,   nil,
+   528,   528,   528,   528,   528,   528,   528,   528,   nil,   528,
+   528,   528,   nil,   528,   528,   nil,   528,   528,   528,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   528,   nil,
+   nil,   528,   nil,   nil,   528,   528,   nil,   nil,   528,   nil,
+   nil,   nil,   nil,   nil,   528,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   528,   nil,   nil,   nil,   nil,   528,   528,   528,
+   528,   528,   528,   nil,   nil,   nil,   528,   528,   nil,   nil,
+   nil,   nil,   nil,   nil,   528,   nil,   nil,   528,   528,   528,
+   nil,   528,   528,   534,   534,   534,   534,   534,   nil,   nil,
+   nil,   534,   534,   nil,   nil,   nil,   534,   nil,   534,   534,
+   534,   534,   534,   534,   534,   nil,   nil,   nil,   nil,   nil,
+   534,   534,   534,   534,   534,   534,   534,   nil,   nil,   534,
+   nil,   nil,   nil,   nil,   nil,   534,   534,   534,   534,   534,
+   534,   534,   534,   534,   534,   534,   534,   nil,   534,   534,
+   534,   nil,   534,   534,   nil,   534,   534,   534,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   534,   nil,   nil,
+   534,   nil,   nil,   534,   534,   nil,   nil,   534,   nil,   534,
+   nil,   nil,   nil,   534,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   534,   nil,   nil,   nil,   nil,   534,   534,   534,   534,
+   534,   534,   nil,   nil,   nil,   534,   534,   nil,   nil,   nil,
+   nil,   nil,   534,   534,   nil,   nil,   534,   534,   534,   nil,
+   534,   534,   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,   nil,   542,
+   542,   542,   542,   542,   542,   542,   nil,   nil,   542,   nil,
+   nil,   nil,   nil,   nil,   nil,   542,   nil,   nil,   542,   542,
+   542,   542,   542,   542,   542,   542,   nil,   542,   542,   542,
+   nil,   542,   542,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   542,   542,   542,   542,   542,
+   542,   nil,   nil,   nil,   542,   542,   nil,   nil,   nil,   nil,
+   nil,   nil,   542,   nil,   nil,   542,   542,   542,   nil,   542,
+   542,   544,   544,   544,   nil,   544,   nil,   nil,   nil,   544,
+   544,   nil,   nil,   nil,   544,   nil,   544,   544,   544,   544,
+   544,   544,   544,   nil,   nil,   nil,   nil,   nil,   544,   544,
+   544,   544,   544,   544,   544,   nil,   nil,   544,   nil,   nil,
+   nil,   nil,   nil,   nil,   544,   nil,   nil,   544,   544,   544,
+   544,   544,   544,   544,   544,   544,   544,   544,   544,   nil,
+   544,   544,   nil,   544,   544,   544,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   544,   nil,
+   nil,   544,   544,   nil,   nil,   544,   nil,   544,   nil,   544,
+   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   544,
+   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,   544,
+   nil,   nil,   nil,   544,   544,   nil,   nil,   nil,   nil,   nil,
+   nil,   544,   nil,   544,   544,   544,   544,   nil,   544,   544,
+   550,   550,   550,   nil,   550,   nil,   nil,   nil,   550,   550,
+   nil,   nil,   nil,   550,   nil,   550,   550,   550,   550,   550,
+   550,   550,   nil,   nil,   nil,   nil,   nil,   550,   550,   550,
+   550,   550,   550,   550,   nil,   nil,   550,   nil,   nil,   nil,
+   nil,   nil,   nil,   550,   nil,   nil,   550,   550,   550,   550,
+   550,   550,   550,   550,   nil,   550,   550,   550,   nil,   550,
+   550,   nil,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   550,   nil,   nil,   550,   nil,   nil,
+   550,   550,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   550,   550,   550,   550,   550,   550,   nil,
+   nil,   nil,   550,   550,   nil,   nil,   nil,   nil,   nil,   nil,
+   550,   nil,   nil,   550,   550,   550,   nil,   550,   550,   553,
+   553,   553,   nil,   553,   nil,   nil,   nil,   553,   553,   nil,
+   nil,   nil,   553,   nil,   553,   553,   553,   553,   553,   553,
+   553,   nil,   nil,   nil,   nil,   nil,   553,   553,   553,   553,
+   553,   553,   553,   nil,   nil,   553,   nil,   nil,   nil,   nil,
+   nil,   nil,   553,   nil,   nil,   553,   553,   553,   553,   553,
+   553,   553,   553,   nil,   553,   553,   553,   nil,   553,   553,
+   nil,   553,   553,   553,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   553,   nil,   nil,   553,   nil,   nil,   553,
+   553,   nil,   nil,   553,   nil,   nil,   nil,   nil,   nil,   553,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,
+   nil,   nil,   553,   553,   553,   553,   553,   553,   nil,   nil,
+   nil,   553,   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,
+   nil,   nil,   553,   553,   553,   nil,   553,   553,   554,   554,
+   554,   nil,   554,   nil,   nil,   nil,   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,   554,   nil,   nil,   nil,
+   nil,   554,   554,   554,   554,   554,   554,   nil,   nil,   nil,
+   554,   554,   nil,   nil,   nil,   nil,   nil,   nil,   554,   nil,
+   nil,   554,   554,   554,   nil,   554,   554,   559,   559,   559,
+   nil,   559,   nil,   nil,   nil,   559,   559,   nil,   nil,   nil,
+   559,   nil,   559,   559,   559,   559,   559,   559,   559,   nil,
+   nil,   nil,   nil,   nil,   559,   559,   559,   559,   559,   559,
+   559,   nil,   nil,   559,   nil,   nil,   nil,   nil,   nil,   nil,
+   559,   nil,   nil,   559,   559,   559,   559,   559,   559,   559,
+   559,   nil,   559,   559,   559,   nil,   559,   559,   nil,   559,
+   559,   559,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   559,   nil,   nil,   559,   nil,   nil,   559,   559,   nil,
+   nil,   559,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,   nil,   nil,
+   559,   559,   559,   559,   559,   559,   nil,   nil,   nil,   559,
+   559,   nil,   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,
+   559,   559,   559,   nil,   559,   559,   583,   583,   583,   nil,
+   583,   nil,   nil,   nil,   583,   583,   nil,   nil,   nil,   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,   583,   583,   583,   583,   583,   583,
+   583,   583,   583,   583,   nil,   583,   583,   nil,   583,   583,
+   583,   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,   583,   nil,   nil,
+   583,   nil,   583,   nil,   583,   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,   nil,   nil,   nil,   583,   nil,   583,   583,
+   583,   583,   nil,   583,   583,   593,   593,   593,   nil,   593,
+   nil,   nil,   nil,   593,   593,   nil,   nil,   nil,   593,   nil,
+   593,   593,   593,   593,   593,   593,   593,   nil,   nil,   nil,
+   nil,   nil,   593,   593,   593,   593,   593,   593,   593,   nil,
+   nil,   593,   nil,   nil,   nil,   nil,   nil,   nil,   593,   nil,
+   nil,   593,   593,   593,   593,   593,   593,   593,   593,   593,
+   593,   593,   593,   nil,   593,   593,   nil,   593,   593,   593,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   593,
+   nil,   nil,   593,   nil,   nil,   593,   593,   nil,   nil,   593,
+   nil,   593,   nil,   593,   nil,   593,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   593,   nil,   nil,   nil,   nil,   593,   593,
+   593,   593,   593,   593,   nil,   nil,   nil,   593,   593,   nil,
+   nil,   nil,   nil,   nil,   nil,   593,   nil,   593,   593,   593,
+   593,   nil,   593,   593,   603,   603,   603,   nil,   603,   nil,
+   nil,   nil,   603,   603,   nil,   nil,   nil,   603,   nil,   603,
+   603,   603,   603,   603,   603,   603,   nil,   nil,   nil,   nil,
+   nil,   603,   603,   603,   603,   603,   603,   603,   nil,   nil,
+   603,   nil,   nil,   nil,   nil,   nil,   nil,   603,   nil,   nil,
+   603,   603,   603,   603,   603,   603,   603,   603,   nil,   603,
+   603,   603,   nil,   603,   603,   nil,   603,   603,   603,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   603,   nil,
+   nil,   603,   nil,   nil,   603,   603,   nil,   nil,   603,   nil,
+   nil,   nil,   nil,   nil,   603,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   603,   nil,   nil,   nil,   nil,   603,   603,   603,
+   603,   603,   603,   nil,   nil,   nil,   603,   603,   nil,   nil,
+   nil,   nil,   nil,   nil,   603,   nil,   nil,   603,   603,   603,
+   nil,   603,   603,   625,   625,   625,   nil,   625,   nil,   nil,
+   nil,   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,   625,   nil,   nil,   nil,   nil,   625,   625,   625,   625,
+   625,   625,   nil,   nil,   nil,   625,   625,   nil,   nil,   nil,
+   nil,   nil,   nil,   625,   nil,   nil,   625,   625,   625,   nil,
+   625,   625,   665,   665,   665,   nil,   665,   nil,   nil,   nil,
+   665,   665,   nil,   nil,   nil,   665,   nil,   665,   665,   665,
+   665,   665,   665,   665,   nil,   nil,   nil,   nil,   nil,   665,
+   665,   665,   665,   665,   665,   665,   nil,   nil,   665,   nil,
+   nil,   nil,   nil,   nil,   nil,   665,   nil,   nil,   665,   665,
+   665,   665,   665,   665,   665,   665,   nil,   665,   665,   665,
+   nil,   665,   665,   nil,   665,   665,   665,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   665,   nil,   nil,   665,
+   nil,   nil,   665,   665,   nil,   nil,   665,   nil,   665,   nil,
+   nil,   nil,   665,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   665,   nil,   nil,   nil,   nil,   665,   665,   665,   665,   665,
+   665,   nil,   nil,   nil,   665,   665,   nil,   nil,   nil,   nil,
+   nil,   nil,   665,   nil,   nil,   665,   665,   665,   nil,   665,
+   665,   666,   666,   666,   nil,   666,   nil,   nil,   nil,   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,   666,   666,   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,   666,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   666,
+   nil,   nil,   nil,   nil,   666,   666,   666,   666,   666,   666,
+   nil,   nil,   nil,   666,   666,   nil,   nil,   nil,   nil,   nil,
+   nil,   666,   nil,   nil,   666,   666,   666,   nil,   666,   666,
+   667,   667,   667,   nil,   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,   nil,   667,   nil,   nil,   667,   667,   667,   667,
+   667,   667,   667,   667,   667,   667,   667,   667,   nil,   667,
+   667,   nil,   667,   667,   667,   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,   667,   nil,   nil,   667,   nil,   667,   nil,   667,   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,   nil,   nil,   nil,
+   667,   nil,   667,   667,   667,   667,   nil,   667,   667,   670,
+   670,   670,   670,   670,   nil,   nil,   nil,   670,   670,   nil,
+   nil,   nil,   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,   670,   670,   nil,   670,   670,   670,   670,   670,   670,
+   670,   670,   670,   nil,   670,   670,   670,   nil,   670,   670,
+   nil,   670,   670,   670,   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,
+   670,   nil,   nil,   670,   nil,   670,   nil,   nil,   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,   nil,   nil,   nil,   670,
+   nil,   nil,   670,   670,   670,   nil,   670,   670,   671,   671,
+   671,   nil,   671,   nil,   nil,   nil,   671,   671,   nil,   nil,
+   nil,   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,   671,   671,   671,   671,
+   671,   671,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   671,   nil,
+   nil,   671,   671,   671,   nil,   671,   671,   674,   674,   674,
+   nil,   674,   nil,   nil,   nil,   674,   674,   nil,   nil,   nil,
+   674,   nil,   674,   674,   674,   674,   674,   674,   674,   nil,
+   nil,   nil,   nil,   nil,   674,   674,   674,   674,   674,   674,
+   674,   nil,   nil,   674,   nil,   nil,   nil,   nil,   nil,   nil,
+   674,   nil,   nil,   674,   674,   674,   674,   674,   674,   674,
+   674,   674,   674,   674,   674,   nil,   674,   674,   nil,   674,
+   674,   674,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   674,   nil,   nil,   674,   nil,   nil,   674,   674,   nil,
+   nil,   674,   nil,   674,   nil,   674,   nil,   674,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,   nil,   nil,
+   674,   674,   674,   674,   674,   674,   nil,   nil,   nil,   674,
+   674,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   674,
+   674,   674,   674,   nil,   674,   674,   675,   675,   675,   nil,
+   675,   nil,   nil,   nil,   675,   675,   nil,   nil,   nil,   675,
+   nil,   675,   675,   675,   675,   675,   675,   675,   nil,   nil,
+   nil,   nil,   nil,   675,   675,   675,   675,   675,   675,   675,
+   nil,   nil,   675,   nil,   nil,   nil,   nil,   nil,   nil,   675,
+   nil,   nil,   675,   675,   675,   675,   675,   675,   675,   675,
+   675,   675,   675,   675,   nil,   675,   675,   nil,   675,   675,
+   675,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   675,   nil,   nil,   675,   nil,   nil,   675,   675,   nil,   nil,
+   675,   nil,   nil,   nil,   675,   nil,   675,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   675,   nil,   nil,   nil,   nil,   675,
+   675,   675,   675,   675,   675,   nil,   nil,   nil,   675,   675,
+   nil,   nil,   nil,   nil,   nil,   nil,   675,   nil,   675,   675,
+   675,   675,   nil,   675,   675,   676,   676,   676,   nil,   676,
+   nil,   nil,   nil,   676,   676,   nil,   nil,   nil,   676,   nil,
+   676,   676,   676,   676,   676,   676,   676,   nil,   nil,   nil,
+   nil,   nil,   676,   676,   676,   676,   676,   676,   676,   nil,
+   nil,   676,   nil,   nil,   nil,   nil,   nil,   nil,   676,   nil,
+   nil,   676,   676,   676,   676,   676,   676,   676,   676,   nil,
+   676,   676,   676,   nil,   676,   676,   nil,   676,   676,   676,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   676,
+   nil,   nil,   676,   nil,   nil,   676,   676,   nil,   nil,   676,
+   nil,   nil,   nil,   nil,   nil,   676,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   676,   nil,   nil,   nil,   nil,   676,   676,
+   676,   676,   676,   676,   nil,   nil,   nil,   676,   676,   nil,
+   nil,   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   676,
+   676,   nil,   676,   676,   677,   677,   677,   nil,   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,   nil,   677,   nil,   nil,
+   677,   677,   677,   677,   677,   677,   677,   677,   nil,   677,
+   677,   677,   nil,   677,   677,   nil,   677,   677,   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,   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,   677,   677,
+   nil,   677,   677,   682,   682,   682,   nil,   682,   nil,   nil,
+   nil,   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,   nil,
+   nil,   nil,   nil,   682,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   682,   nil,   nil,   nil,   nil,   682,   682,   682,   682,
+   682,   682,   nil,   nil,   nil,   682,   682,   nil,   nil,   nil,
+   nil,   nil,   nil,   682,   nil,   nil,   682,   682,   682,   nil,
+   682,   682,   683,   683,   683,   nil,   683,   nil,   nil,   nil,
+   683,   683,   nil,   nil,   nil,   683,   nil,   683,   683,   683,
+   683,   683,   683,   683,   nil,   nil,   nil,   nil,   nil,   683,
+   683,   683,   683,   683,   683,   683,   nil,   nil,   683,   nil,
+   nil,   nil,   nil,   nil,   nil,   683,   nil,   nil,   683,   683,
+   683,   683,   683,   683,   683,   683,   nil,   683,   683,   683,
+   nil,   683,   683,   nil,   683,   683,   683,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   683,   nil,   nil,   683,
+   nil,   nil,   683,   683,   nil,   nil,   683,   nil,   nil,   nil,
+   nil,   nil,   683,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   683,   nil,   nil,   nil,   nil,   683,   683,   683,   683,   683,
+   683,   nil,   nil,   nil,   683,   683,   nil,   nil,   nil,   nil,
+   nil,   nil,   683,   nil,   nil,   683,   683,   683,   nil,   683,
+   683,   707,   707,   707,   nil,   707,   nil,   nil,   nil,   707,
+   707,   nil,   nil,   nil,   707,   nil,   707,   707,   707,   707,
+   707,   707,   707,   nil,   nil,   nil,   nil,   nil,   707,   707,
+   707,   707,   707,   707,   707,   nil,   nil,   707,   nil,   nil,
+   nil,   nil,   nil,   nil,   707,   nil,   nil,   707,   707,   707,
+   707,   707,   707,   707,   707,   nil,   707,   707,   707,   nil,
+   707,   707,   nil,   707,   707,   707,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,   707,   nil,
+   nil,   707,   707,   nil,   nil,   707,   nil,   nil,   nil,   nil,
+   nil,   707,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   707,
+   nil,   nil,   nil,   nil,   707,   707,   707,   707,   707,   707,
+   nil,   nil,   nil,   707,   707,   nil,   nil,   nil,   nil,   nil,
+   nil,   707,   nil,   nil,   707,   707,   707,   nil,   707,   707,
+   710,   710,   710,   nil,   710,   nil,   nil,   nil,   710,   710,
+   nil,   nil,   nil,   710,   nil,   710,   710,   710,   710,   710,
+   710,   710,   nil,   nil,   nil,   nil,   nil,   710,   710,   710,
+   710,   710,   710,   710,   nil,   nil,   710,   nil,   nil,   nil,
+   nil,   nil,   nil,   710,   nil,   nil,   710,   710,   710,   710,
+   710,   710,   710,   710,   nil,   710,   710,   710,   nil,   710,
+   710,   nil,   710,   710,   710,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   710,   nil,   nil,   710,   nil,   nil,
+   710,   710,   nil,   nil,   710,   nil,   nil,   nil,   nil,   nil,
+   710,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   710,   nil,
+   nil,   nil,   nil,   710,   710,   710,   710,   710,   710,   nil,
+   nil,   nil,   710,   710,   nil,   nil,   nil,   nil,   nil,   nil,
+   710,   nil,   nil,   710,   710,   710,   nil,   710,   710,   714,
+   714,   714,   nil,   714,   nil,   nil,   nil,   714,   714,   nil,
+   nil,   nil,   714,   nil,   714,   714,   714,   714,   714,   714,
+   714,   nil,   nil,   nil,   nil,   nil,   714,   714,   714,   714,
+   714,   714,   714,   nil,   nil,   714,   nil,   nil,   nil,   nil,
+   nil,   nil,   714,   nil,   nil,   714,   714,   714,   714,   714,
+   714,   714,   714,   nil,   714,   714,   714,   nil,   714,   714,
+   nil,   nil,   nil,   714,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   714,   nil,   nil,   714,   nil,   nil,   714,
+   714,   nil,   nil,   714,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   714,   714,   714,   714,   714,   714,   nil,   nil,
+   nil,   714,   714,   nil,   nil,   nil,   nil,   nil,   nil,   714,
+   nil,   nil,   714,   714,   714,   nil,   714,   714,   725,   725,
+   725,   nil,   725,   nil,   nil,   nil,   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,
+   nil,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   725,   725,   725,   725,   725,   725,   nil,   nil,   nil,
+   725,   725,   nil,   nil,   nil,   nil,   nil,   nil,   725,   nil,
+   nil,   725,   725,   725,   nil,   725,   725,   731,   731,   731,
+   nil,   731,   nil,   nil,   nil,   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,   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,   nil,   nil,   nil,   731,   nil,   nil,
+   731,   731,   731,   nil,   731,   731,   736,   736,   736,   nil,
+   736,   nil,   nil,   nil,   736,   736,   nil,   nil,   nil,   736,
+   nil,   736,   736,   736,   736,   736,   736,   736,   nil,   nil,
+   nil,   nil,   nil,   736,   736,   736,   736,   736,   736,   736,
+   nil,   nil,   736,   nil,   nil,   nil,   nil,   nil,   nil,   736,
+   nil,   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   736,   nil,   736,   736,
+   736,   736,   nil,   736,   736,   739,   739,   739,   nil,   739,
+   nil,   nil,   nil,   739,   739,   nil,   nil,   nil,   739,   nil,
+   739,   739,   739,   739,   739,   739,   739,   nil,   nil,   nil,
+   nil,   nil,   739,   739,   739,   739,   739,   739,   739,   nil,
+   nil,   739,   nil,   nil,   nil,   nil,   nil,   nil,   739,   nil,
+   nil,   739,   739,   739,   739,   739,   739,   739,   739,   739,
+   739,   739,   739,   nil,   739,   739,   nil,   739,   739,   739,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   739,
+   nil,   nil,   739,   nil,   nil,   739,   739,   nil,   nil,   739,
+   nil,   nil,   nil,   nil,   nil,   739,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   739,   nil,   nil,   nil,   nil,   739,   739,
+   739,   739,   739,   739,   nil,   nil,   nil,   739,   739,   nil,
+   nil,   nil,   nil,   nil,   nil,   739,   nil,   739,   739,   739,
+   739,   nil,   739,   739,   753,   753,   753,   nil,   753,   nil,
+   nil,   nil,   753,   753,   nil,   nil,   nil,   753,   nil,   753,
+   753,   753,   753,   753,   753,   753,   nil,   nil,   nil,   nil,
+   nil,   753,   753,   753,   753,   753,   753,   753,   nil,   nil,
+   753,   nil,   nil,   nil,   nil,   nil,   nil,   753,   nil,   nil,
+   753,   753,   753,   753,   753,   753,   753,   753,   nil,   753,
+   753,   753,   nil,   753,   753,   nil,   753,   753,   753,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   753,   nil,
+   nil,   753,   nil,   nil,   753,   753,   nil,   nil,   753,   nil,
+   753,   nil,   nil,   nil,   753,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   753,   nil,   nil,   nil,   nil,   753,   753,   753,
+   753,   753,   753,   nil,   nil,   nil,   753,   753,   nil,   nil,
+   nil,   nil,   nil,   nil,   753,   nil,   nil,   753,   753,   753,
+   nil,   753,   753,   765,   765,   765,   nil,   765,   nil,   nil,
+   nil,   765,   765,   nil,   nil,   nil,   765,   nil,   765,   765,
+   765,   765,   765,   765,   765,   nil,   nil,   nil,   nil,   nil,
+   765,   765,   765,   765,   765,   765,   765,   nil,   nil,   765,
+   nil,   nil,   nil,   nil,   nil,   nil,   765,   nil,   nil,   765,
+   765,   765,   765,   765,   765,   765,   765,   nil,   765,   765,
+   765,   nil,   765,   765,   nil,   765,   765,   765,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   765,   nil,   nil,
+   765,   nil,   nil,   765,   765,   nil,   nil,   765,   nil,   nil,
+   nil,   nil,   nil,   765,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   765,   nil,   nil,   nil,   nil,   765,   765,   765,   765,
+   765,   765,   nil,   nil,   nil,   765,   765,   nil,   nil,   nil,
+   nil,   nil,   nil,   765,   nil,   nil,   765,   765,   765,   nil,
+   765,   765,   785,   785,   785,   nil,   785,   nil,   nil,   nil,
+   785,   785,   nil,   nil,   nil,   785,   nil,   785,   785,   785,
+   785,   785,   785,   785,   nil,   nil,   nil,   nil,   nil,   785,
+   785,   785,   785,   785,   785,   785,   nil,   nil,   785,   nil,
+   nil,   nil,   nil,   nil,   nil,   785,   nil,   nil,   785,   785,
+   785,   785,   785,   785,   785,   785,   nil,   785,   785,   785,
+   nil,   785,   785,   nil,   785,   785,   785,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   785,   nil,   nil,   785,
+   nil,   nil,   785,   785,   nil,   nil,   785,   nil,   nil,   nil,
+   nil,   nil,   785,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   785,   nil,   nil,   nil,   nil,   785,   785,   785,   785,   785,
+   785,   nil,   nil,   nil,   785,   785,   nil,   nil,   nil,   nil,
+   nil,   nil,   785,   nil,   nil,   785,   785,   785,   nil,   785,
+   785,   807,   807,   807,   nil,   807,   nil,   nil,   nil,   807,
+   807,   nil,   nil,   nil,   807,   nil,   807,   807,   807,   807,
+   807,   807,   807,   nil,   nil,   nil,   nil,   nil,   807,   807,
+   807,   807,   807,   807,   807,   nil,   nil,   807,   nil,   nil,
+   nil,   nil,   nil,   nil,   807,   nil,   nil,   807,   807,   807,
+   807,   807,   807,   807,   807,   nil,   807,   807,   807,   nil,
+   807,   807,   nil,   807,   807,   807,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,   807,   nil,
+   nil,   807,   807,   nil,   nil,   807,   nil,   nil,   nil,   nil,
+   nil,   807,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   807,
+   nil,   nil,   nil,   nil,   807,   807,   807,   807,   807,   807,
+   nil,   nil,   nil,   807,   807,   nil,   nil,   nil,   nil,   nil,
+   nil,   807,   nil,   nil,   807,   807,   807,   nil,   807,   807,
+   815,   815,   815,   nil,   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,   nil,   815,   nil,   nil,   nil,
+   nil,   nil,   nil,   815,   nil,   nil,   815,   815,   815,   815,
+   815,   815,   815,   815,   nil,   815,   815,   815,   nil,   815,
+   815,   nil,   815,   815,   815,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   815,   nil,   nil,   815,   nil,   nil,
+   815,   815,   nil,   nil,   815,   nil,   nil,   nil,   nil,   nil,
+   815,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   815,   nil,
+   nil,   nil,   nil,   815,   815,   815,   815,   815,   815,   nil,
+   nil,   nil,   815,   815,   nil,   nil,   nil,   nil,   nil,   nil,
+   815,   nil,   nil,   815,   815,   815,   nil,   815,   815,   828,
+   828,   828,   nil,   828,   nil,   nil,   nil,   828,   828,   nil,
+   nil,   nil,   828,   nil,   828,   828,   828,   828,   828,   828,
+   828,   nil,   nil,   nil,   nil,   nil,   828,   828,   828,   828,
+   828,   828,   828,   nil,   nil,   828,   nil,   nil,   nil,   nil,
+   nil,   nil,   828,   nil,   nil,   828,   828,   828,   828,   828,
+   828,   828,   828,   nil,   828,   828,   828,   nil,   828,   828,
+   nil,   828,   828,   828,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   828,   nil,   nil,   828,   nil,   nil,   828,
+   828,   nil,   nil,   828,   nil,   nil,   nil,   nil,   nil,   828,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   828,   nil,   nil,
+   nil,   nil,   828,   828,   828,   828,   828,   828,   nil,   nil,
+   nil,   828,   828,   nil,   nil,   nil,   nil,   nil,   nil,   828,
+   nil,   nil,   828,   828,   828,   nil,   828,   828,   829,   829,
+   829,   nil,   829,   nil,   nil,   nil,   829,   829,   nil,   nil,
+   nil,   829,   nil,   829,   829,   829,   829,   829,   829,   829,
+   nil,   nil,   nil,   nil,   nil,   829,   829,   829,   829,   829,
+   829,   829,   nil,   nil,   829,   nil,   nil,   nil,   nil,   nil,
+   nil,   829,   nil,   nil,   829,   829,   829,   829,   829,   829,
+   829,   829,   nil,   829,   829,   829,   nil,   829,   829,   nil,
+   829,   829,   829,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   829,   nil,   nil,   829,   nil,   nil,   829,   829,
+   nil,   nil,   829,   nil,   nil,   nil,   nil,   nil,   829,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,   nil,
+   nil,   829,   829,   829,   829,   829,   829,   nil,   nil,   nil,
+   829,   829,   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,
+   nil,   829,   829,   829,   nil,   829,   829,   830,   830,   830,
+   nil,   830,   nil,   nil,   nil,   830,   830,   nil,   nil,   nil,
+   830,   nil,   830,   830,   830,   830,   830,   830,   830,   nil,
+   nil,   nil,   nil,   nil,   830,   830,   830,   830,   830,   830,
+   830,   nil,   nil,   830,   nil,   nil,   nil,   nil,   nil,   nil,
+   830,   nil,   nil,   830,   830,   830,   830,   830,   830,   830,
+   830,   nil,   830,   830,   830,   nil,   830,   830,   nil,   830,
+   830,   830,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   830,   nil,   nil,   830,   nil,   nil,   830,   830,   nil,
+   nil,   830,   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,   nil,   nil,
+   830,   830,   830,   830,   830,   830,   nil,   nil,   nil,   830,
+   830,   nil,   nil,   nil,   nil,   nil,   nil,   830,   nil,   nil,
+   830,   830,   830,   nil,   830,   830,   831,   831,   831,   nil,
+   831,   nil,   nil,   nil,   831,   831,   nil,   nil,   nil,   831,
+   nil,   831,   831,   831,   831,   831,   831,   831,   nil,   nil,
+   nil,   nil,   nil,   831,   831,   831,   831,   831,   831,   831,
+   nil,   nil,   831,   nil,   nil,   nil,   nil,   nil,   nil,   831,
+   nil,   nil,   831,   831,   831,   831,   831,   831,   831,   831,
+   nil,   831,   831,   831,   nil,   831,   831,   nil,   831,   831,
+   831,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   831,   nil,   nil,   831,   nil,   nil,   831,   831,   nil,   nil,
+   831,   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   831,   nil,   nil,   nil,   nil,   831,
+   831,   831,   831,   831,   831,   nil,   nil,   nil,   831,   831,
+   nil,   nil,   nil,   nil,   nil,   nil,   831,   nil,   nil,   831,
+   831,   831,   nil,   831,   831,   833,   833,   833,   nil,   833,
+   nil,   nil,   nil,   833,   833,   nil,   nil,   nil,   833,   nil,
+   833,   833,   833,   833,   833,   833,   833,   nil,   nil,   nil,
+   nil,   nil,   833,   833,   833,   833,   833,   833,   833,   nil,
+   nil,   833,   nil,   nil,   nil,   nil,   nil,   nil,   833,   nil,
+   nil,   833,   833,   833,   833,   833,   833,   833,   833,   nil,
+   833,   833,   833,   nil,   833,   833,   nil,   833,   833,   833,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   833,
+   nil,   nil,   833,   nil,   nil,   833,   833,   nil,   nil,   833,
+   nil,   nil,   nil,   nil,   nil,   833,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   833,   nil,   nil,   nil,   nil,   833,   833,
+   833,   833,   833,   833,   nil,   nil,   nil,   833,   833,   nil,
+   nil,   nil,   nil,   nil,   nil,   833,   nil,   nil,   833,   833,
+   833,   nil,   833,   833,   866,   866,   866,   nil,   866,   nil,
+   nil,   nil,   866,   866,   nil,   nil,   nil,   866,   nil,   866,
+   866,   866,   866,   866,   866,   866,   nil,   nil,   nil,   nil,
+   nil,   866,   866,   866,   866,   866,   866,   866,   nil,   nil,
+   866,   nil,   nil,   nil,   nil,   nil,   nil,   866,   nil,   nil,
+   866,   866,   866,   866,   866,   866,   866,   866,   nil,   866,
+   866,   866,   nil,   866,   866,   nil,   866,   866,   866,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   866,   nil,
+   nil,   866,   nil,   nil,   866,   866,   nil,   nil,   866,   nil,
+   nil,   nil,   nil,   nil,   866,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   866,   nil,   nil,   nil,   nil,   866,   866,   866,
+   866,   866,   866,   nil,   nil,   nil,   866,   866,   nil,   nil,
+   nil,   nil,   nil,   nil,   866,   nil,   nil,   866,   866,   866,
+   nil,   866,   866,   873,   873,   873,   nil,   873,   nil,   nil,
+   nil,   873,   873,   nil,   nil,   nil,   873,   nil,   873,   873,
+   873,   873,   873,   873,   873,   nil,   nil,   nil,   nil,   nil,
+   873,   873,   873,   873,   873,   873,   873,   nil,   nil,   873,
+   nil,   nil,   nil,   nil,   nil,   nil,   873,   nil,   nil,   873,
+   873,   873,   873,   873,   873,   873,   873,   nil,   873,   873,
+   873,   nil,   873,   873,   nil,   873,   873,   873,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   873,   nil,   nil,
+   873,   nil,   nil,   873,   873,   nil,   nil,   873,   nil,   nil,
+   nil,   nil,   nil,   873,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   873,   nil,   nil,   nil,   nil,   873,   873,   873,   873,
+   873,   873,   nil,   nil,   nil,   873,   873,   nil,   nil,   nil,
+   nil,   nil,   nil,   873,   nil,   nil,   873,   873,   873,   nil,
+   873,   873,   921,   921,   921,   nil,   921,   nil,   nil,   nil,
+   921,   921,   nil,   nil,   nil,   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,
+   921,   921,   921,   921,   921,   921,   921,   921,   921,   921,
+   nil,   921,   921,   nil,   921,   921,   921,   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,   921,   nil,   nil,   921,   nil,   nil,   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,   921,   921,   921,   921,   nil,   921,
+   921,   922,   922,   922,   nil,   922,   nil,   nil,   nil,   922,
+   922,   nil,   nil,   nil,   922,   nil,   922,   922,   922,   922,
+   922,   922,   922,   nil,   nil,   nil,   nil,   nil,   922,   922,
+   922,   922,   922,   922,   922,   nil,   nil,   922,   nil,   nil,
+   nil,   nil,   nil,   nil,   922,   nil,   nil,   922,   922,   922,
+   922,   922,   922,   922,   922,   nil,   922,   922,   922,   nil,
+   922,   922,   nil,   922,   922,   922,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   922,   nil,   nil,   922,   nil,
+   nil,   922,   922,   nil,   nil,   922,   nil,   nil,   nil,   nil,
+   nil,   922,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   922,
+   nil,   nil,   nil,   nil,   922,   922,   922,   922,   922,   922,
+   nil,   nil,   nil,   922,   922,   nil,   nil,   nil,   nil,   nil,
+   nil,   922,   nil,   nil,   922,   922,   922,   nil,   922,   922,
+   934,   934,   934,   nil,   934,   nil,   nil,   nil,   934,   934,
+   nil,   nil,   nil,   934,   nil,   934,   934,   934,   934,   934,
+   934,   934,   nil,   nil,   nil,   nil,   nil,   934,   934,   934,
+   934,   934,   934,   934,   nil,   nil,   934,   nil,   nil,   nil,
+   nil,   nil,   nil,   934,   nil,   nil,   934,   934,   934,   934,
+   934,   934,   934,   934,   nil,   934,   934,   934,   nil,   934,
+   934,   nil,   nil,   nil,   934,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   934,   nil,   nil,   934,   nil,   nil,
+   934,   934,   nil,   nil,   934,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   934,   934,   934,   934,   934,   934,   nil,
+   nil,   nil,   934,   934,   nil,   nil,   nil,   nil,   nil,   nil,
+   934,   nil,   nil,   934,   934,   934,   nil,   934,   934,   943,
+   943,   943,   nil,   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,   nil,   943,   nil,   nil,   943,   943,   943,   943,   943,
+   943,   943,   943,   nil,   943,   943,   943,   nil,   943,   943,
+   nil,   nil,   nil,   943,   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,
+   943,   nil,   nil,   943,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   943,   943,   943,   943,   943,   943,   nil,   nil,
+   nil,   943,   943,   nil,   nil,   nil,   nil,   nil,   nil,   943,
+   nil,   nil,   943,   943,   943,   nil,   943,   943,   951,   951,
+   951,   nil,   951,   nil,   nil,   nil,   951,   951,   nil,   nil,
+   nil,   951,   nil,   951,   951,   951,   951,   951,   951,   951,
+   nil,   nil,   nil,   nil,   nil,   951,   951,   951,   951,   951,
+   951,   951,   nil,   nil,   951,   nil,   nil,   nil,   nil,   nil,
+   nil,   951,   nil,   nil,   951,   951,   951,   951,   951,   951,
+   951,   951,   nil,   951,   951,   951,   nil,   951,   951,   nil,
+   951,   951,   951,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   951,   nil,   nil,   951,   nil,   nil,   951,   951,
+   nil,   nil,   951,   nil,   951,   nil,   nil,   nil,   951,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   951,   nil,   nil,   nil,
+   nil,   951,   951,   951,   951,   951,   951,   nil,   nil,   nil,
+   951,   951,   nil,   nil,   nil,   nil,   nil,   nil,   951,   nil,
+   nil,   951,   951,   951,   nil,   951,   951,   992,   992,   992,
+   nil,   992,   nil,   nil,   nil,   992,   992,   nil,   nil,   nil,
+   992,   nil,   992,   992,   992,   992,   992,   992,   992,   nil,
+   nil,   nil,   nil,   nil,   992,   992,   992,   992,   992,   992,
+   992,   nil,   nil,   992,   nil,   nil,   nil,   nil,   nil,   nil,
+   992,   nil,   nil,   992,   992,   992,   992,   992,   992,   992,
+   992,   nil,   992,   992,   992,   nil,   992,   992,   nil,   nil,
+   nil,   992,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   992,   nil,   nil,   992,   nil,   nil,   992,   992,   nil,
+   nil,   992,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   992,   992,   992,   992,   992,   992,   nil,   nil,   nil,   992,
+   992,   nil,   nil,   nil,   nil,   nil,   nil,   992,   nil,   nil,
+   992,   992,   992,   nil,   992,   992,  1006,  1006,  1006,   nil,
+  1006,   nil,   nil,   nil,  1006,  1006,   nil,   nil,   nil,  1006,
+   nil,  1006,  1006,  1006,  1006,  1006,  1006,  1006,   nil,   nil,
+   nil,   nil,   nil,  1006,  1006,  1006,  1006,  1006,  1006,  1006,
+   nil,   nil,  1006,   nil,   nil,   nil,   nil,   nil,   nil,  1006,
+   nil,   nil,  1006,  1006,  1006,  1006,  1006,  1006,  1006,  1006,
+   nil,  1006,  1006,  1006,   nil,  1006,  1006,   nil,  1006,  1006,
+  1006,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1006,   nil,   nil,  1006,   nil,   nil,  1006,  1006,   nil,   nil,
+  1006,   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1006,   nil,   nil,   nil,   nil,  1006,
+  1006,  1006,  1006,  1006,  1006,   nil,   nil,   nil,  1006,  1006,
+   nil,   nil,   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,
+  1006,  1006,   nil,  1006,  1006,  1037,  1037,  1037,   nil,  1037,
+   nil,   nil,   nil,  1037,  1037,   nil,   nil,   nil,  1037,   nil,
+  1037,  1037,  1037,  1037,  1037,  1037,  1037,   nil,   nil,   nil,
+   nil,   nil,  1037,  1037,  1037,  1037,  1037,  1037,  1037,   nil,
+   nil,  1037,   nil,   nil,   nil,   nil,   nil,   nil,  1037,   nil,
+   nil,  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,  1037,
+  1037,  1037,  1037,   nil,  1037,  1037,   nil,  1037,  1037,  1037,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1037,
+   nil,   nil,  1037,   nil,   nil,  1037,  1037,   nil,   nil,  1037,
+   nil,  1037,   nil,  1037,   nil,  1037,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1037,   nil,   nil,   nil,   nil,  1037,  1037,
+  1037,  1037,  1037,  1037,   nil,   nil,   nil,  1037,  1037,   nil,
+   nil,   nil,   nil,   nil,   nil,  1037,   nil,  1037,  1037,  1037,
+  1037,   nil,  1037,  1037,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,   nil,   nil,
+   nil,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,   nil,   nil,   nil,   nil,   nil,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,   nil,    11,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,    11,
+    11,    11,    11,    11,    11,    11,   nil,   nil,    11,    11,
+   nil,   nil,   nil,    11,    11,    11,    11,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    11,    11,   nil,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    11,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,   nil,   nil,   nil,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,   nil,   nil,   nil,   nil,   nil,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,   nil,   nil,
+    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,
+    12,   nil,    12,    12,    12,    12,    12,    12,    12,   nil,
+   nil,    12,    12,   nil,   nil,   nil,    12,    12,    12,    12,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    12,    12,   nil,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,   nil,   nil,    12,
+    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,   nil,   nil,   nil,    75,    75,    75,
+    75,    75,    75,    75,    75,    75,    75,   nil,   nil,   nil,
+   nil,   nil,    75,    75,    75,    75,    75,    75,    75,    75,
+    75,    75,    75,    75,   nil,    75,   nil,   nil,   nil,   nil,
+   nil,   nil,    75,    75,   nil,    75,    75,    75,    75,    75,
+    75,    75,   nil,   nil,    75,    75,   nil,   nil,   nil,    75,
+    75,    75,    75,   nil,   nil,   nil,   nil,   nil,    75,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    75,    75,   nil,    75,
+    75,    75,    75,    75,    75,    75,    75,    75,    75,    75,
+   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    75,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   nil,   nil,   nil,
+   105,   105,   105,   105,   105,   105,   105,   105,   105,   105,
+   nil,   nil,   nil,   nil,   nil,   105,   105,   105,   105,   105,
+   105,   105,   105,   105,   105,   105,   105,   nil,   105,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,   105,   105,
+   105,   105,   105,   105,   105,   nil,   nil,   105,   105,   nil,
+   nil,   nil,   105,   105,   105,   105,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,
+   105,   nil,   105,   105,   105,   105,   105,   105,   105,   105,
+   105,   105,   105,   nil,   nil,   105,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,   428,   428,   428,   428,
+   428,   428,   428,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   428,   428,   428,   428,   428,   428,   428,
+   nil,   nil,   nil,   428,   428,   428,   428,   428,   428,   428,
+   428,   428,   428,   nil,   nil,   nil,   nil,   nil,   428,   428,
+   428,   428,   428,   428,   428,   428,   428,   nil,   nil,   428,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   428,   428,
+   nil,   428,   428,   428,   428,   428,   428,   428,   nil,   nil,
+   428,   428,   nil,   nil,   nil,   428,   428,   428,   428,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   428,   428,   nil,   428,   428,   428,   428,   428,
+   428,   428,   428,   428,   428,   428,   nil,   nil,   428,   428,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   428,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   428,   662,
+   662,   662,   662,   662,   662,   662,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   662,   662,   662,   662,
+   662,   662,   662,   nil,   nil,   nil,   662,   662,   662,   662,
+   662,   662,   662,   662,   662,   662,   nil,   nil,   nil,   nil,
+   nil,   662,   662,   662,   662,   662,   662,   662,   662,   662,
+   nil,   nil,   662,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   662,   662,   nil,   662,   662,   662,   662,   662,   662,
+   662,   nil,   nil,   662,   662,   nil,   nil,   nil,   662,   662,
+   662,   662,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   662,   662,   nil,   662,   662,
+   662,   662,   662,   662,   662,   662,   662,   662,   662,   nil,
+   nil,   662,   662,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   662,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   662,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   771,   771,   771,   771,   771,   nil,   nil,   nil,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   nil,
+   nil,   nil,   nil,   nil,   771,   771,   771,   771,   771,   771,
+   771,   771,   771,   nil,   nil,   771,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   771,   771,   nil,   771,   771,   771,
+   771,   771,   771,   771,   nil,   nil,   771,   771,   nil,   nil,
+   nil,   771,   771,   771,   771,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   771,   771,
+   nil,   771,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   771,   nil,   nil,   771,   nil,   nil,   nil,   nil,   228,
+   228,   nil,   nil,   228,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   228,   228,   771,   228,   228,   228,   228,   228,
+   228,   228,   nil,   nil,   228,   228,   nil,   nil,   nil,   228,
+   228,   228,   228,   nil,   nil,   nil,   nil,   nil,   228,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   228,   228,   nil,   228,
+   228,   228,   228,   228,   228,   228,   228,   228,   228,   228,
+   nil,   nil,   228,   nil,   nil,   nil,   nil,   229,   229,   nil,
+   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   229,   229,   228,   229,   229,   229,   229,   229,   229,   229,
+   nil,   nil,   229,   229,   nil,   nil,   nil,   229,   229,   229,
+   229,   nil,   nil,   nil,   nil,   nil,   229,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   229,   229,   nil,   229,   229,   229,
+   229,   229,   229,   229,   229,   229,   229,   229,   nil,   nil,
+   229,   nil,   nil,   nil,   nil,   479,   479,   nil,   nil,   479,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   479,   479,
+   229,   479,   479,   479,   479,   479,   479,   479,   nil,   nil,
+   479,   479,   nil,   nil,   nil,   479,   479,   479,   479,   nil,
+   nil,   nil,   nil,   nil,   479,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   479,   479,   nil,   479,   479,   479,   479,   479,
+   479,   479,   479,   479,   479,   479,   nil,   nil,   479,   nil,
+   nil,   nil,   nil,   480,   480,   nil,   nil,   480,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   480,   480,   479,   480,
+   480,   480,   480,   480,   480,   480,   nil,   nil,   480,   480,
+   nil,   nil,   nil,   480,   480,   480,   480,   nil,   nil,   nil,
+   nil,   nil,   480,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   480,   480,   nil,   480,   480,   480,   480,   480,   480,   480,
+   480,   480,   480,   480,   nil,   nil,   480,   nil,   nil,   nil,
+   nil,   545,   545,   nil,   nil,   545,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   545,   545,   480,   545,   545,   545,
+   545,   545,   545,   545,   nil,   nil,   545,   545,   nil,   nil,
+   nil,   545,   545,   545,   545,   nil,   nil,   nil,   nil,   nil,
+   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   545,   545,
+   nil,   545,   545,   545,   545,   545,   545,   545,   545,   545,
+   545,   545,   nil,   nil,   545,   nil,   nil,   nil,   nil,   546,
+   546,   nil,   nil,   546,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   546,   546,   545,   546,   546,   546,   546,   546,
+   546,   546,   nil,   nil,   546,   546,   nil,   nil,   nil,   546,
+   546,   546,   546,   nil,   nil,   nil,   nil,   nil,   546,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   546,   546,   nil,   546,
+   546,   546,   546,   546,   546,   546,   546,   546,   546,   546,
+   nil,   nil,   546,   nil,   nil,   nil,   nil,   555,   555,   nil,
+   nil,   555,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   555,   555,   546,   555,   555,   555,   555,   555,   555,   555,
+   nil,   nil,   555,   555,   nil,   nil,   nil,   555,   555,   555,
+   555,   nil,   nil,   nil,   nil,   nil,   555,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   555,   555,   nil,   555,   555,   555,
+   555,   555,   555,   555,   555,   555,   555,   555,   nil,   nil,
+   555,   nil,   nil,   nil,   nil,   556,   556,   nil,   nil,   556,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   556,   556,
+   555,   556,   556,   556,   556,   556,   556,   556,   nil,   nil,
+   556,   556,   nil,   nil,   nil,   556,   556,   556,   556,   nil,
+   nil,   nil,   nil,   nil,   556,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   556,   556,   nil,   556,   556,   556,   556,   556,
+   556,   556,   556,   556,   556,   556,   nil,   nil,   556,   nil,
+   nil,   nil,   nil,   584,   584,   nil,   nil,   584,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   584,   584,   556,   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,   nil,   nil,   584,   nil,   nil,   nil,
+   nil,   585,   585,   nil,   nil,   585,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   585,   585,   584,   585,   585,   585,
+   585,   585,   585,   585,   nil,   nil,   585,   585,   nil,   nil,
+   nil,   585,   585,   585,   585,   nil,   nil,   nil,   nil,   nil,
+   585,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   585,   585,
+   nil,   585,   585,   585,   585,   585,   585,   585,   585,   585,
+   585,   585,   nil,   nil,   585,   nil,   nil,   nil,   nil,   591,
+   591,   nil,   nil,   591,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   591,   591,   585,   591,   591,   591,   591,   591,
+   591,   591,   nil,   nil,   591,   591,   nil,   nil,   nil,   591,
+   591,   591,   591,   nil,   nil,   nil,   nil,   nil,   591,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   591,   591,   nil,   591,
+   591,   591,   591,   591,   591,   591,   591,   591,   591,   591,
+   nil,   nil,   591,   nil,   nil,   nil,   nil,   592,   592,   nil,
+   nil,   592,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   592,   592,   591,   592,   592,   592,   592,   592,   592,   592,
+   nil,   nil,   592,   592,   nil,   nil,   nil,   592,   592,   592,
+   592,   nil,   nil,   nil,   nil,   nil,   592,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   592,   592,   nil,   592,   592,   592,
+   592,   592,   592,   592,   592,   592,   592,   592,   nil,   nil,
+   592,   nil,   nil,   nil,   nil,   668,   668,   nil,   nil,   668,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   668,   668,
+   592,   668,   668,   668,   668,   668,   668,   668,   nil,   nil,
+   668,   668,   nil,   nil,   nil,   668,   668,   668,   668,   nil,
+   nil,   nil,   nil,   nil,   668,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   668,   668,   nil,   668,   668,   668,   668,   668,
+   668,   668,   668,   668,   668,   668,   nil,   nil,   668,   nil,
+   nil,   nil,   nil,   669,   669,   nil,   nil,   669,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   669,   669,   668,   669,
+   669,   669,   669,   669,   669,   669,   nil,   nil,   669,   669,
+   nil,   nil,   nil,   669,   669,   669,   669,   nil,   nil,   nil,
+   nil,   nil,   669,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   669,   669,   nil,   669,   669,   669,   669,   669,   669,   669,
+   669,   669,   669,   669,   nil,   983,   669,   983,   983,   983,
+   983,   983,   986,   nil,   986,   986,   986,   986,   986,   nil,
+   nil,   983,   nil,   nil,   nil,   nil,   669,   nil,   986,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   983,   nil,   nil,   nil,   nil,   nil,   nil,
+   986,   nil,   983,   983,   983,   983,   nil,   nil,   nil,   986,
+   986,   986,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1033,  1033,   nil,   nil,  1033,   nil,   nil,   nil,   983,   nil,
+   nil,   nil,   nil,  1033,  1033,   986,  1033,  1033,  1033,  1033,
+  1033,  1033,  1033,   nil,   nil,  1033,  1033,   nil,   nil,   nil,
+  1033,  1033,  1033,  1033,   nil,   nil,   nil,   nil,   nil,  1033,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1033,  1033,   nil,
+  1033,  1033,  1033,  1033,  1033,  1033,  1033,  1033,  1033,  1033,
+  1033,   nil,   nil,  1033,   nil,   nil,   nil,   nil,  1038,  1038,
+   nil,   nil,  1038,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1038,  1038,  1033,  1038,  1038,  1038,  1038,  1038,  1038,
+  1038,   nil,   nil,  1038,  1038,   nil,   nil,   nil,  1038,  1038,
+  1038,  1038,   nil,   nil,   nil,   nil,   nil,  1038,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1038,  1038,   nil,  1038,  1038,
+  1038,  1038,  1038,  1038,  1038,  1038,  1038,  1038,  1038,   nil,
+   nil,  1038,   nil,   nil,   nil,   nil,  1039,  1039,   nil,   nil,
+  1039,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1039,
+  1039,  1038,  1039,  1039,  1039,  1039,  1039,  1039,  1039,   nil,
+   nil,  1039,  1039,   nil,   nil,   nil,  1039,  1039,  1039,  1039,
+   nil,   nil,   nil,   nil,   nil,  1039,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1039,  1039,   nil,  1039,  1039,  1039,  1039,
+  1039,  1039,  1039,  1039,  1039,  1039,  1039,   nil,  1057,  1039,
+  1057,  1057,  1057,  1057,  1057,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1057,   nil,   nil,   nil,   nil,  1039,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1057,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1057,  1057,  1057,  1057,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1057 ]
+
+racc_action_pointer = [
+   nil,    96,  2022,    98,   nil,   142,   nil,   nil,  6081,    17,
+   nil, 24012, 24145,     2,   nil,    42,    76,    -4,   145,   242,
+   344,   nil,   -65,  6220,  2302,   209,   nil,   -40,   nil,   165,
+  1088,  1220,  6359,  6498,  6637,   nil,  2162,  6776,  6915,   nil,
+   119,   377,   480,   199,   164,  7054,  7193,   878,  7332,   164,
+   312,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1352,   nil,  7471,   nil,   nil,   -22,   nil,  7610,  7749,   nil,
+   nil,  7888,  8027,  8166,  8305, 24278,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   180,
+   195,   208,   232,   nil,   nil, 24411,   nil,   nil,   nil,   nil,
+   nil,   nil,     0,   nil,   nil,   136,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  8444,   nil,
+   nil,   nil,   nil,  8583,  8722,  8861,  9000,  9139,   258,   nil,
+   143,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   245,
+   nil,  2302,  9278,  9417,  9556,  9695,  9834,  9973, 24878, 24946,
+   nil,   nil, 10112, 10251, 10390,   nil,   nil,   326,   -21,   104,
+   331,   147,   254,   339,   nil, 10529,  2442,   344, 10668, 10807,
+ 10946, 11085, 11224, 11363, 11502, 11641, 11780, 11919, 12058, 12197,
+ 12336, 12475, 12614, 12753, 12892, 13031, 13170, 13309, 13448, 13587,
+   nil,   nil,   nil,   nil, 13726,   nil,   nil,   nil,  1880,   nil,
+   nil,   343, 13865, 14004,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil, 14143,   nil,  2442,   nil,   326,   328,   nil, 14282,
+   373, 14421,   nil,   nil, 14560, 14699,   nil,   nil,   202,   nil,
+   nil, 14838,  1170,   nil,   323,  2582,   392,   433,   403, 14977,
+  2722,   358,   368,   380,   481,   448,   nil,   459,   438,   193,
+   nil,   nil,   nil,   488,   167,   462, 15116,   nil,   513,   540,
+   504,   nil,   567, 15255,   nil, 15394,  2862,  1182,   528, 15533,
+ 15672,   nil,   703,    -8,     8, 15811,  3002,  3142,   203,   645,
+   543,   -19,    -7,   516,   624,    24,   657,   nil,   nil,   347,
+   483,   -20,   nil,   591,   nil,   576, 15950,   nil,   nil,   nil,
+   378,   382,   416,   460,   462,   470,   481,   514,   518,   nil,
+   552,   nil,   nil,   745,   nil,   307,   nil,   375,   nil,   349,
+   nil,   568,   382,   nil,   572,   483,   nil,   576,   -59,   nil,
+   587,   -58,   nil,   580,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 24544,   nil,
+   nil,   nil,   nil,   602,   nil,   nil,   600, 16089,   603,   nil,
+   nil,   595,   nil,   620,   151,   723,   nil,   nil,  2022,   nil,
+   nil,   nil,   nil,   nil,  2162,   650,   nil,   nil,   661,   675,
+   597,   649,  1484,   nil,   nil,   nil,   272,   408,   724,   nil,
+   nil,  1616,  1748,   nil,   nil,   nil,   -26,   nil,   726, 25014,
+ 25082, 16228,   170, 16367, 16506, 16645,  3142,  3282,   738,   761,
+   760,   764,   769,   781,  1170,  1302,  1434,  3422,  3562,  3702,
+  3842,  3982,  4122,  1178,  1310,  4262,  4402,  2582,   900,   841,
+   nil,  1880,   nil,   nil,   nil,   nil,   725,   nil,   nil,   nil,
+   735,   nil,   nil, 16784,   nil,   nil, 16923,   nil, 17062,   nil,
+   196,   nil,   nil,   nil, 17201,  1302,   754,   742,   741,   nil,
+   nil,   743, 17340,   750, 17479, 25150, 25218,   640,   790,   nil,
+ 17618,   752,   nil, 17757, 17896, 25286, 25354,  1038,  2722, 18035,
+   875,   889,   786,   nil,   nil,   436,   450,   787,   801,   nil,
+   507,   828,  3282,   916,   nil,  3422,    63,   921,   922,   917,
+   930,   nil,   nil, 18174, 25422, 25490,    26,   nil,   nil,   650,
+   nil, 25558, 25626, 18313,   nil,   nil,   nil,   733,  3562,   851,
+   nil,   nil,   nil, 18452,   nil,   881,   nil,   815,   817,   nil,
+   824,   826,   827,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   811,   820,   nil,   nil, 18591,   nil,   nil,   nil,   912,
+   nil,   nil,   nil,   913,   nil,   nil,   923,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   200,   nil,
+   nil,   266,   nil,   nil,   nil,   846,   nil,   nil,   848,   nil,
+  3702,   nil, 24677,   nil,   858, 18730, 18869, 19008, 25694, 25762,
+ 19147, 19286,   651,   895, 19425, 19564, 19703, 19842,   899,   nil,
+   nil,   nil, 19981, 20120,   900,   nil,   nil,   nil,   215,   236,
+   544,   680,   872,   872,   nil,   -57,   975,   -19,   nil,   nil,
+   895,   nil,  1001,   nil,   883,   nil,   925, 20259,   nil,   nil,
+ 20398,   nil,   nil,   -95, 20537,   885,   nil,   891,    -9,    -5,
+   928,    25,   652,   943,   905, 20676,   nil,   978,   -14,   185,
+   nil, 20815,   nil,   nil,   nil,   nil, 20954,   nil,   nil, 21093,
+   nil,   nil,   nil,   759,   nil,  1033,   nil,   nil,   nil,   nil,
+   nil,  1039,   nil, 21232,   923,    29,    30,   162,   163,  3842,
+   619,   725,   nil,   924,  3982, 21371,   227,  1043,  4122,  1018,
+  1151, 24810,    -7,    34,   928,   231,   nil,   nil,   720,  1283,
+   nil,  1415,   nil,   338,   nil, 21510,   nil,   851,   nil,   933,
+   937,  1055,   941,   nil,   nil,   nil,   nil,  1185,  4262,   nil,
+   nil,   nil,   nil,   nil,   955,   nil,   941, 21649,   951,   267,
+   273,   816,   952,   nil,  2862, 21788,   nil,   951,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 21927, 22066,
+ 22205, 22344,   277, 22483,   nil,   nil,  1547,   nil,  4402,   nil,
+   nil,   969,   nil,   108,   nil,   nil,   nil,   nil,   955,    39,
+   nil,   nil,   nil,   nil,   nil,   nil,  4542,   nil,   957,   999,
+   nil,   nil,   534,  1080,   nil,   nil, 22622,   nil,  4682,  1082,
+   nil,   nil,   nil, 22761,    69,    68,  1083,   nil,  1084,   462,
+   nil,   nil,  1090,   977,   471,   nil,   nil,   nil,  4822,  4962,
+   980,   994,   994,   nil,   nil,   nil,   997,  1004,   nil,  1011,
+  1016,   nil,  1017,   nil,   nil,  1022,   918,   987,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1012,   nil,  1022,   320,   nil,
+   nil, 22900, 23039,  3002,  1024,  1025,   nil,  1040,  1045,  1046,
+   nil,  1068,  1054,  1035, 23178,   nil,   nil,   nil,   nil,  5102,
+  5242,   nil,     9, 23317,   nil,   nil,   nil,    35,   nil,   nil,
+   nil, 23456,  5382,   nil,   nil,   nil,  5522,   nil,   nil,   nil,
+  1094,  1073,  1179,  1345,   nil,   nil,  1679,   nil,   474,   nil,
+   611,   nil,  6797,   nil,   nil,   nil,   nil,  1061,  1069,   nil,
+   268,   nil,   nil, 25824,   nil,   nil, 25831,   nil,  6936,   nil,
+   nil,  1094, 23595,   755,  1161,   nil,  1223,  5662,    43,   120,
+   769,  1180,   135,   nil,  5802,   nil, 23734,    30,  1232,  5942,
+   nil,   nil,   598,   nil,   nil,   nil,  1119,  1126,  1129,  1136,
+  1081,  1213,  1143,   nil,   nil,  1149,  1150,  1151,  1157,   nil,
+  1172,   nil,   784, 25899,   nil,   nil,  1299, 23873, 25967, 26035,
+   144,   825,   nil,   nil,   nil,   nil,   nil,  1298,   nil,  1477,
+  8048,   nil,   nil,   nil,   nil,  1180,   nil, 26097,   nil,  8187,
+   nil,  8326,   nil, 14998,   nil,   nil,  1222,  1223,   nil,  1190,
+   145,   158,   168,   169,   nil,   nil,   nil,  1189,  1191,  1193,
+  1201,  1203,   170,   nil, 15137,   nil,   nil,   nil,   nil,  1206,
+   nil ]
+
+racc_action_default = [
+    -1,  -648,  -647,  -648,    -2,  -634,    -4,    -5,  -648,    -8,
+    -9,  -648,  -648,  -648,   -36,  -648,  -648,   -40,  -648,  -648,
+  -294,   -52,  -636,  -648,   -57,   -62,   -63,   -64,   -68,  -271,
+  -271,  -271,  -309,  -339,  -340,   -80,  -647,   -84,   -92,   -94,
+  -648,  -535,  -536,  -648,  -648,  -648,  -648,  -230,  -648,  -636,
+  -244,  -285,  -286,  -287,  -288,  -289,  -290,  -291,  -292,  -293,
+  -620,  -296,  -298,  -305,  -307,  -317,  -319,  -648,  -648,   -59,
+   -59,  -634,  -648,  -648,  -648,  -648,  -341,  -342,  -344,  -345,
+  -346,  -347,  -348,  -349,  -350,  -351,  -352,  -353,  -362,  -417,
+  -465,  -466,  -467,  -468,  -469,  -647,  -472,  -647,  -647,  -647,
+  -647,  -647,  -647,  -508,  -509,  -647,  -511,  -517,  -519,  -520,
+  -521,  -522,  -618,  -524,  -525,  -619,  -527,  -528,  -529,  -530,
+  -531,  -532,  -533,  -534,  -539,  -540,  1091,    -3,  -635,  -643,
+  -644,  -645,    -7,  -648,  -648,  -648,  -648,  -648,  -648,   -24,
+  -648,  -123,  -124,  -125,  -126,  -127,  -128,  -129,  -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,  -194,
+  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,   -29,
+  -130,  -647,  -648,  -648,  -648,  -648,  -648,  -647,  -648,  -648,
+  -630,  -631,  -648,  -648,  -636,  -637,   -56,  -648,  -535,  -536,
+  -648,  -294,  -648,  -648,  -236,  -648,  -647,  -648,  -215,  -216,
+  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,
+  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,  -648,
+  -245,  -246,  -247,  -248,  -648,  -355,  -445,  -425,  -648,  -632,
+  -633,   -69,  -647,  -648,  -316,  -354,  -429,  -438,  -440,   -75,
+  -435,   -76,  -636,   -77,  -251,  -266,  -647,  -647,  -270,  -648,
+  -276,  -648,  -647,  -612,  -648,  -648,   -78,   -79,  -634,   -17,
+   -18,  -648,   -21,   -22,   -82,  -647,  -636,  -648,   -85,   -88,
+  -647,  -100,  -101,  -648,  -648,  -108,  -309,  -312,  -636,  -648,
+  -339,  -340,  -343,  -436,  -648,   -90,  -648,   -96,  -304,  -518,
+  -648,  -224,  -225,  -648,  -237,  -648,  -647,  -300,  -636,  -647,
+  -647,  -318,   -58,  -648,  -648,  -648,  -647,  -647,  -634,  -648,
+  -635,  -535,  -536,  -648,  -648,  -294,  -648,  -372,  -373,  -118,
+  -119,  -648,  -121,  -648,  -294,  -647,  -648,  -535,  -536,  -332,
+  -123,  -124,  -163,  -164,  -165,  -181,  -186,  -193,  -196,  -334,
+  -648,  -607,  -608,  -567,  -470,  -648,  -493,  -648,  -495,  -648,
+  -497,  -648,  -648,  -477,  -648,  -648,  -483,  -648,  -648,  -489,
+  -648,  -648,  -491,  -648,  -510,  -512,  -513,  -514,  -515,    -6,
+  -646,   -30,   -31,   -32,   -33,   -34,   -10,   -11,  -648,   -26,
+   -27,   -28,  -131,  -648,   -37,   -39,  -281,  -648,  -648,  -280,
+   -38,  -648,   -41,  -648,  -294,   -49,   -51,  -204,  -256,  -276,
+   -53,   -54,   -42,  -205,  -256,  -636,  -261,  -262,  -647,  -647,
+  -621,  -622,  -271,  -433,  -623,  -624,  -622,  -621,  -271,  -432,
+  -434,  -623,  -624,   -48,  -212,   -55,  -636,  -315,  -648,  -648,
+  -648,  -647,  -304,  -648,  -648,  -648,  -213,  -214,  -217,  -218,
+  -219,  -220,  -221,  -222,  -226,  -227,  -228,  -229,  -231,  -232,
+  -233,  -234,  -235,  -238,  -239,  -240,  -241,  -636,  -249,  -648,
+  -446,  -271,  -621,  -622,   -66,   -70,  -636,  -272,  -442,  -445,
+  -636,  -311,  -267,  -648,  -275,  -268,  -648,  -273,  -648,  -277,
+  -648,  -615,  -617,   -16,  -635,   -20,  -648,  -636,   -81,  -302,
+   -97,   -86,  -648,  -636,  -647,  -648,  -648,  -107,  -648,  -518,
+  -648,   -93,   -98,  -648,  -648,  -648,  -648,  -250,  -242,  -648,
+  -457,  -648,  -636,  -299,  -252,  -640,  -640,  -636,  -648,  -610,
+  -640,  -648,  -647,  -363,  -364,  -647,  -648,  -648,  -648,  -648,
+  -648,  -358,  -452,  -647,  -648,  -648,  -304,   -59,  -118,  -119,
+  -120,  -648,  -648,  -647,  -327,  -541,  -543,  -329,  -647,  -545,
+  -336,  -628,  -629,  -648,  -418,  -567,  -421,  -606,  -606,  -550,
+  -552,  -552,  -552,  -566,  -568,  -569,  -570,  -571,  -572,  -573,
+  -574,  -575,  -648,  -577,  -579,  -581,  -586,  -588,  -589,  -591,
+  -596,  -598,  -599,  -601,  -602,  -603,  -648,  -471,  -494,  -499,
+  -500,  -502,  -473,  -496,  -474,  -498,  -475,  -476,  -648,  -479,
+  -481,  -648,  -482,  -485,  -486,  -648,  -487,  -488,  -648,  -516,
+  -647,   -25,  -648,   -35,  -284,  -648,  -648,  -647,  -648,  -648,
+  -648,  -648,  -437,  -648,  -263,  -265,  -648,  -648,   -71,  -259,
+  -260,  -430,  -648,  -648,   -73,  -431,  -314,  -638,  -621,  -622,
+  -621,  -622,  -636,  -648,  -424,  -647,   -65,  -426,  -442,  -258,
+  -648,  -443,  -648,  -310,  -647,  -274,  -278,  -648,  -613,  -614,
+  -648,   -19,   -23,   -83,  -648,   -89,   -95,  -636,  -621,  -622,
+  -647,  -625,  -106,  -648,   -91,  -648,  -211,  -223,  -636,  -647,
+  -356,  -647,  -297,  -361,  -301,  -253,  -642,  -641,  -255,  -642,
+  -306,  -308,  -611,  -647,  -365,  -647,   -60,  -366,  -367,  -322,
+  -323,  -648,  -325,  -648,  -636,  -621,  -622,  -625,  -303,  -647,
+  -118,  -119,  -122,  -636,  -647,  -648,  -648,  -648,  -647,  -567,
+  -567,  -648,  -636,  -648,  -636,  -648,  -548,  -549,  -648,  -648,
+  -559,  -648,  -562,  -648,  -564,  -648,  -374,  -648,  -376,  -378,
+  -381,  -384,  -636,  -580,  -590,  -600,  -604,  -648,  -647,  -478,
+  -480,  -484,  -490,  -492,  -648,  -132,  -282,  -648,  -636,  -621,
+  -622,  -622,  -621,   -50,  -257,  -648,  -639,  -647,   -44,  -207,
+   -45,  -208,   -72,   -46,  -210,   -47,  -209,   -74,  -648,  -648,
+  -648,  -648,  -437,  -648,  -406,  -407,  -636,  -409,  -647,  -428,
+  -427,  -648,  -439,  -647,  -441,  -269,  -279,  -616,   -87,  -437,
+   -99,  -313,   -13,   -15,  -357,  -359,  -647,  -464,  -458,  -647,
+  -459,  -460,  -640,  -648,  -360,  -368,  -648,  -370,  -647,  -648,
+   -61,  -324,  -448,  -648,  -648,  -437,  -648,  -437,  -648,  -648,
+  -330,  -333,  -648,  -636,  -648,  -337,  -609,  -419,  -647,  -647,
+  -411,  -636,  -606,  -587,  -605,  -551,  -552,  -552,  -578,  -552,
+  -552,  -597,  -552,  -575,  -592,  -636,  -648,  -648,  -383,  -576,
+  -501,  -504,  -505,  -506,  -507,  -648,   -12,  -283,  -437,   -43,
+  -206,  -264,  -648,  -243,  -606,  -606,  -388,  -647,  -647,  -647,
+  -405,  -648,  -636,  -575,  -583,  -584,  -594,  -447,   -67,  -647,
+  -647,  -463,  -648,  -648,  -462,  -254,  -320,  -648,  -371,  -321,
+  -449,  -648,  -647,  -326,  -328,  -542,  -647,  -335,  -544,  -546,
+  -545,  -648,  -648,  -648,  -420,  -547,  -648,  -555,  -648,  -557,
+  -648,  -560,  -648,  -563,  -565,  -375,  -377,  -379,  -382,  -503,
+  -648,  -386,  -387,  -396,  -390,  -398,  -648,  -401,  -648,  -403,
+  -408,  -648,  -648,  -582,  -648,  -444,  -647,  -647,  -535,  -536,
+  -648,  -648,  -294,  -461,  -647,  -450,  -648,  -647,  -648,  -647,
+  -422,  -423,  -636,  -413,  -415,  -416,  -552,  -552,  -552,  -552,
+  -648,  -648,  -606,  -585,  -389,  -647,  -647,  -647,  -647,  -595,
+  -647,  -410,  -593,  -648,  -304,   -14,  -457,  -647,  -648,  -648,
+  -304,  -647,  -451,  -453,  -454,  -455,  -331,  -648,  -412,  -648,
+  -648,  -553,  -556,  -558,  -561,  -380,  -385,  -648,  -393,  -648,
+  -395,  -648,  -399,  -648,  -402,  -404,  -303,  -625,  -456,  -636,
+  -621,  -622,  -625,  -303,  -369,  -338,  -414,  -552,  -647,  -647,
+  -647,  -647,  -437,  -554,  -648,  -391,  -394,  -397,  -400,  -647,
+  -392 ]
+
+racc_goto_table = [
+     6,   228,   236,   233,   389,   295,   295,   295,   318,   279,
+   277,     4,   580,   286,   290,   351,   144,   144,   455,     9,
+   452,   515,   131,   525,   729,     9,   473,   139,   220,   426,
+   345,   128,   332,   332,   415,   621,   768,   551,   353,   354,
+   462,   468,   358,   446,   572,   575,   446,   590,   317,   352,
+   352,   339,   446,   352,   314,   296,   296,   296,   606,   297,
+   297,   297,   356,   357,   708,   147,   147,   332,   332,   332,
+   439,   440,   863,   516,   869,   776,   777,   509,   127,   347,
+   144,   281,   289,   291,   335,   978,   705,   316,   131,   705,
+   511,   613,   672,   396,   786,   398,   400,   403,   406,   409,
+   412,   436,   449,   396,   421,   422,   423,   424,   901,   792,
+   144,   395,   838,   853,   928,   352,   352,   352,   352,   735,
+   738,   413,   700,  1013,   742,   976,  1029,   891,  1015,   648,
+   375,   379,   651,     1,     2,   138,   897,   132,   899,   293,
+   306,   307,   660,   852,   359,     9,   940,   643,   711,   645,
+   536,   219,   649,   368,   425,   649,   435,   428,   746,   870,
+   278,   698,   662,   343,   567,   697,   391,   568,   366,   594,
+   390,   600,   346,   348,   562,   349,   350,   764,   527,   766,
+   529,   956,   598,   531,   532,   525,   599,   771,   960,   931,
+   898,   977,   930,   929,   932,  1012,   604,  1029,  1055,   887,
+   295,   434,   445,   393,   740,   445,   450,   451,   773,  1076,
+   518,   445,   463,   708,  1015,   475,   476,   519,    19,   479,
+   843,   561,   874,   695,    19,   456,  1043,   753,   859,   571,
+   942,   394,   751,   433,   472,   397,   399,   705,   705,   237,
+   976,   402,   405,   715,   408,   438,   438,   621,   237,   237,
+   237,   724,    19,   323,   323,   295,   295,   419,   317,   786,
+   939,  1025,   411,   908,   910,   295,   797,   762,   798,   414,
+   774,   765,   692,   896,   905,   893,  1023,   708,    19,   603,
+   456,   nil,   nil,   237,   237,   991,   nil,   237,   363,   373,
+   373,   462,   468,   901,   524,   524,   nil,   nil,   nil,   nil,
+   396,   nil,   841,   613,   nil,   545,   296,   552,   nil,   548,
+   297,   nil,   nil,   286,   332,   296,   664,   290,   530,   297,
+   702,   nil,   555,  1016,   nil,   131,   576,   317,   535,   832,
+   nil,   332,   317,   314,   534,   717,  1044,   352,   314,   nil,
+  1026,   549,   nil,  1027,    19,   584,   nil,   564,   569,   237,
+   237,   237,   237,    19,   849,   453,   nil,   720,   597,   nil,
+   965,   474,   nil,   nil,   nil,   541,   537,   720,   577,   578,
+  1074,   543,   565,   596,   754,   131,   566,   570,   786,   786,
+  1035,   533,   nil,   898,   763,   nil,   nil,   nil,   nil,   nil,
+   517,   875,   981,   982,   898,   nil,   720,  1009,   800,   520,
+   877,   800,   706,   nil,   720,   571,   nil,   709,   nil,   nil,
+   nil,   621,   621,   nil,  1078,   848,   945,   nil,   822,   nil,
+   nil,   621,   nil,   621,   827,   668,   nil,   712,   nil,   nil,
+   845,   579,   nil,   144,   883,   884,   673,    19,   237,   443,
+   237,   237,   443,   237,   661,   918,   680,   nil,   443,   237,
+   237,   nil,   685,   nil,   295,   nil,   524,   524,   808,   708,
+   679,   nil,    19,   463,   nil,   nil,   nil,   613,   613,   nil,
+   818,   820,   nil,   767,   898,   nil,   823,   825,   933,   456,
+   462,   468,   147,   nil,   705,   472,   446,   nil,   693,   nil,
+  1056,   nil,   786,   786,   nil,   680,   446,   446,   237,   237,
+  1068,   nil,   446,   446,   793,   nil,   nil,   nil,   237,   679,
+   nil,   nil,   nil,   552,   678,   nil,   nil,   295,   nil,   nil,
+   684,   552,   nil,   nil,   nil,   nil,   nil,    19,   nil,   463,
+   nil,    19,   nil,   nil,   nil,   323,    19,   332,   nil,   463,
+   nil,   728,   456,   845,   806,   332,   nil,   nil,   673,   nil,
+   704,   472,   323,   706,   571,   nil,   295,   nil,   nil,   nil,
+   nil,   472,    19,   696,   nil,   952,   295,   nil,   463,   nil,
+   nil,   237,    19,    19,   nil,   nil,   463,   nil,   nil,   860,
+   759,   456,   nil,   nil,   743,   772,   846,   745,   nil,   847,
+   472,   456,   237,   747,   nil,   nil,   472,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   621,   919,
+   858,   nil,   474,   nil,   453,   706,   nil,   nil,   571,   nil,
+   nil,   nil,   nil,   nil,   nil,   933,   nil,   nil,   933,   nil,
+   nil,   nil,   872,   997,   nil,   446,   nil,   477,  1004,   878,
+   295,   nil,   nil,   882,   nil,   445,   934,   840,   nil,   nil,
+   nil,   nil,   463,   nil,   nil,   445,   445,   nil,     6,   nil,
+  1045,   445,   445,   nil,   904,   456,   nil,   144,   nil,   804,
+   nil,   nil,   nil,   673,   472,   732,   nil,     9,   805,   nil,
+   nil,   839,   726,   nil,   nil,   552,   917,   813,   nil,   nil,
+   nil,   749,   750,   834,   752,   521,   850,   237,   673,   933,
+   885,   817,   524,   nil,   680,   nil,  1082,   685,   nil,   332,
+   nil,   nil,   nil,   937,   nil,   nil,   147,   nil,   679,   538,
+   332,   nil,   nil,   nil,   nil,   nil,   nil,   857,   nil,   861,
+   nil,   nil,   nil,   nil,   nil,   673,   879,   nil,   nil,   nil,
+   nil,   867,   nil,   867,   673,   nil,   nil,   352,   nil,   nil,
+    19,   563,   950,   nil,   438,   890,   nil,   nil,   323,   nil,
+   237,   892,   nil,   862,   962,   nil,   323,   nil,   nil,   nil,
+   nil,   876,   780,   782,   784,   237,   144,   nil,   nil,   nil,
+   nil,   nil,   nil,   880,   nil,   nil,   nil,   nil,    19,   673,
+   934,    19,   nil,   934,   445,   nil,   934,   nil,   934,   237,
+   571,   nil,   nil,   nil,   nil,   819,   821,   nil,   nil,   237,
+   915,   824,   826,   nil,    19,   524,   nil,   890,   nil,   237,
+   nil,   nil,   925,   nil,   nil,   nil,   nil,   nil,  1069,   894,
+  1005,  1008,   894,   nil,   nil,   nil,   nil,   947,   nil,   nil,
+   nil,   834,   nil,   nil,   nil,   nil,   nil,   nil,   352,   nil,
+   720,   nil,   nil,   nil,   nil,   nil,   nil,   944,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   871,   nil,   934,   941,   934,
+   nil,   934,   nil,   934,   nil,   nil,    19,   nil,   nil,   686,
+   948,   881,   443,   237,  1047,  1042,    19,   nil,   nil,   nil,
+   926,   nil,   443,   443,   934,   nil,   955,   nil,   443,   443,
+   961,   959,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   890,   nil,   nil,   nil,   nil,   nil,   699,
+   nil,   nil,   nil,   703,   nil,   984,   984,   984,   nil,   332,
+   323,   nil,   nil,   nil,   900,   nil,   902,   nil,   332,   nil,
+   713,   323,   nil,   nil,   920,   nil,   716,   nil,   nil,   nil,
+   nil,   995,   996,   nil,   nil,   nil,   nil,   819,   821,   826,
+   824,   nil,   nil,   nil,  1007,   734,  1022,    29,   nil,   925,
+   nil,   nil,   925,    29,   925,    19,   nil,   946,   nil,   nil,
+    19,   237,  1038,   949,    19,   nil,   nil,   332,    29,   927,
+   953,   nil,   954,  1048,   857,   nil,   957,    29,    29,    29,
+   nil,    29,   nil,   nil,   nil,   867,   nil,   nil,   nil,  1036,
+   295,   nil,   nil,   nil,    19,   nil,  1041,   nil,   nil,   nil,
+   nil,   nil,   463,   984,   984,   984,   984,    29,   984,   nil,
+   nil,   443,    29,    29,   894,   456,    29,   926,   472,   867,
+   926,   nil,   926,   925,   472,   925,   nil,   925,   nil,   925,
+   673,   920,   nil,   nil,    19,   nil,   nil,   nil,   967,   969,
+   nil,   971,   973,   nil,   974,   nil,   nil,   nil,   nil,   nil,
+   925,   nil,    19,   nil,   nil,   nil,   984,   984,   984,   984,
+   nil,   nil,   237,   nil,    19,   nil,   nil,   984,   nil,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,    29,
+    29,    29,    29,   nil,    19,    19,   nil,   nil,   nil,   nil,
+   nil,   926,   nil,   926,   nil,   926,   nil,   926,   nil,  1017,
+   nil,  1018,  1046,  1019,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   851,   nil,   nil,   nil,   nil,   nil,   nil,   926,  1028,
+   nil,  1030,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   993,   985,   987,   989,   nil,    19,    19,   nil,   nil,  1000,
+   nil,  1075,   nil,   nil,   nil,   nil,   nil,   nil,    19,   nil,
+   nil,   nil,    19,   nil,   nil,   886,   nil,   nil,  1051,  1052,
+  1053,  1054,   nil,   nil,   nil,   nil,    29,    29,    29,    29,
+    29,    29,    29,   nil,   nil,   909,   nil,    29,    29,    29,
+   nil,   nil,   nil,  1077,   nil,   nil,   nil,   nil,  1032,   nil,
+  1079,    29,  1080,    19,  1081,   nil,   nil,   nil,   nil,   nil,
+    19,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1089,   nil,  1083,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,    29,  1058,
+  1060,  1062,  1064,   237,  1065,   nil,   nil,    29,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,    29,   nil,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,    29,   958,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   964,   nil,    32,    32,    32,   nil,
+    32,   nil,  1085,  1086,  1087,  1088,   nil,   nil,   975,   nil,
+   nil,    29,   nil,  1090,   nil,   nil,   nil,   nil,   nil,   nil,
+    29,    29,    29,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,    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,   nil,   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,    32,    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,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
+    32,    32,   nil,   nil,   nil,   nil,    32,    32,    32,    29,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+    32,   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,    29,   nil,   nil,
+    29,   nil,   nil,   nil,   nil,   nil,    32,    32,    29,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,    29,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    32,
+   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,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,
+    32,    32,   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+   nil,    29,    29,   nil,   nil,    29,   nil,   nil,   nil,   nil,
+    32,    29,    29,   nil,   nil,   nil,   nil,    29,    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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   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,   nil,   nil,   nil,    29,
+    29,   nil,   nil,    29,   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,    29,   nil,   nil,   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,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,    29,   nil,   nil,    32,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,    29,    29,   244,   nil,    32,   nil,   nil,
+   nil,   nil,    32,   nil,   294,   294,   294,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   341,   342,   nil,
+   344,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    29,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,   nil,   nil,
+   nil,    29,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+    32,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+    32,    32,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,    29,
+   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   367,   nil,
+   nil,   nil,   nil,   nil,   294,   448,   nil,   nil,   454,   294,
+   nil,   nil,    32,   nil,   454,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,    32,
+   486,   487,   488,   489,   490,   491,   492,   493,   494,   495,
+   496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
+   506,   507,    32,   nil,    16,    18,   508,   nil,   nil,   nil,
+   nil,    18,   nil,    16,   294,   294,   nil,   nil,   nil,   nil,
+    32,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,   nil,
+    32,   294,    32,   294,   nil,   nil,   294,   294,   nil,    18,
+   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,    18,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   557,   nil,   558,   nil,   nil,
+   nil,   294,   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,   441,
+   nil,   nil,   441,    32,    32,   nil,   nil,   nil,   441,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+    32,   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,    32,   294,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   325,   325,   nil,    16,   nil,   nil,
+   nil,    16,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   294,   nil,   454,   454,   454,   nil,   365,
+   374,   374,    16,   nil,    18,   nil,    18,   nil,   nil,    18,
+   nil,   nil,    16,    16,   nil,    18,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,   294,   nil,
+   294,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    20,   294,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   454,   727,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,    18,   294,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,    18,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   321,   321,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,    18,
+    18,   nil,   nil,   nil,   nil,    41,   nil,   nil,    20,   nil,
+   444,   nil,   nil,   444,   nil,   361,   377,   377,   377,   444,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   294,   454,   294,
+   nil,   nil,   nil,   814,   nil,   nil,   294,   294,   454,   454,
+    16,   nil,   nil,   nil,   454,   454,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,
+    41,   nil,   294,   nil,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,    16,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,    20,   294,   nil,   nil,   325,    20,   294,   nil,
+   nil,   294,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   325,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   294,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    16,    18,   nil,   294,
+   nil,   nil,   441,   nil,   nil,   nil,    16,   454,   nil,    41,
+   nil,   nil,   441,   441,   nil,   nil,   nil,   nil,   441,   441,
+   454,   454,   454,   454,   nil,   923,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   294,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   321,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   321,
+    16,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   294,   454,   nil,   nil,   nil,   nil,    41,
+    41,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,    18,    16,   nil,   nil,   nil,   nil,    18,
+    18,    20,   nil,   294,   nil,    18,    18,   nil,   nil,   325,
+   nil,   441,   nil,   nil,   nil,   nil,   nil,   325,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,    20,
+    42,   nil,    20,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,   294,   nil,
+   nil,   nil,   nil,   nil,    16,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   322,   322,   nil,   nil,   nil,
+   nil,   nil,    18,   nil,    16,    16,   nil,    18,   nil,   294,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   362,   378,   378,   378,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
+   nil,   nil,   nil,   444,   nil,    16,    16,    20,    18,  1003,
+   nil,   nil,   nil,   444,   444,   nil,   nil,   nil,    16,   444,
+   444,   nil,    16,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   321,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   321,   nil,    42,   nil,   nil,   nil,    18,
+   nil,   325,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   325,    16,   nil,    41,   nil,   nil,    41,   nil,
+    16,   nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,
+   nil,    18,    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,
+   nil,    20,   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,   nil,    42,
+   nil,   nil,    18,    18,   914,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,    18,
+   nil,   nil,   444,    41,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,   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,
+    18,   nil,   nil,    20,   nil,   nil,   nil,    18,   nil,   nil,
+   nil,   nil,    18,   nil,   nil,    20,   nil,   321,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,    42,
+   nil,   nil,   nil,    42,   nil,    20,    20,   322,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,    42,   nil,   nil,    41,   nil,   nil,
+   nil,    41,   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,
+   nil,   374,   nil,   nil,   nil,   nil,    20,    20,   nil,   nil,
+  1002,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,    41,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   374,
+   nil,    41,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,    20,   nil,   nil,    41,
+   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,   nil,   nil,   nil,   nil,
+   nil,    41,    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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   377,   nil,   nil,
+   nil,   nil,    41,    41,   nil,   nil,   998,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,    41,   nil,   nil,   nil,    41,
+   322,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,    42,   nil,   377,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   322,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   378,   nil,   nil,   nil,   nil,    42,    42,   nil,
+   nil,   999,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,    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,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   378,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,    42 ]
+
+racc_goto_check = [
+     6,    38,    27,    40,    70,    46,    46,    46,    63,    38,
+   168,     2,   113,    85,    85,   102,    71,    71,    36,     9,
+    33,    52,   118,    87,    15,     9,    33,    22,    22,    10,
+    40,     8,    78,    78,    70,   206,   121,    65,    24,    24,
+    50,    50,    24,    25,   106,   106,    25,    68,    14,    31,
+    31,    76,    25,    31,    59,    82,    82,    82,   167,    84,
+    84,    84,    42,    42,   217,    73,    73,    78,    78,    78,
+    29,    29,   107,    36,   109,   150,   150,   169,     5,     9,
+    71,    51,    51,    51,    64,   145,    88,    60,   118,    88,
+    50,   201,    37,     6,   143,     6,     6,     6,     6,     6,
+     6,    80,    80,     6,    24,    24,    24,    24,   212,   144,
+    71,   185,   157,    17,   155,    31,    31,    31,    31,    83,
+    83,   185,    53,   161,    83,   142,   213,   159,   162,   189,
+    69,    69,   189,     1,     3,    11,   156,     7,   156,    58,
+    58,    58,    13,    16,     5,     9,    18,   190,    20,   190,
+    21,    23,   190,    26,     9,   190,    30,    32,    43,    45,
+    49,    55,    74,    79,    81,    86,    98,   101,   115,   117,
+   122,   123,   124,   125,   126,   127,   128,   129,    80,   130,
+    80,   131,   132,    80,    80,    87,   133,   134,   135,   159,
+   207,   146,   147,   156,   153,   160,   163,   213,   145,   164,
+    46,    27,    27,   165,    37,    27,    31,    31,   166,   161,
+   171,    27,    85,   217,   162,    31,    31,   172,    35,    38,
+   174,    12,   175,   177,    35,     6,   178,   179,   180,    80,
+   181,   184,   113,    14,    71,   186,   187,    88,    88,    35,
+   142,   188,   191,    65,   192,    82,    82,   206,    35,    35,
+    35,    65,    35,    35,    35,    46,    46,     7,    14,   143,
+   157,   155,   193,   143,   194,    46,   195,    68,   196,   199,
+   167,   200,    36,   205,   144,   209,   210,   217,    35,   216,
+     6,   nil,   nil,    35,    35,   159,   nil,    35,    35,    35,
+    35,    50,    50,   212,     6,     6,   nil,   nil,   nil,   nil,
+     6,   nil,    53,   201,   nil,    38,    82,    63,   nil,    40,
+    84,   nil,   nil,    85,    78,    82,    80,    85,   185,    84,
+   169,   nil,    38,   156,   nil,   118,    24,    14,     9,    37,
+   nil,    78,    14,    59,     8,    36,   109,    31,    59,   nil,
+   156,    76,   nil,   156,    35,    38,   nil,     6,     6,    35,
+    35,    35,    35,    35,    37,    75,   nil,    50,    31,   nil,
+   150,    75,   nil,   nil,   nil,    64,    60,    50,    14,    14,
+   107,    60,    82,     6,    36,   118,    84,    84,   143,   143,
+    17,     5,   nil,   207,    36,   nil,   nil,   nil,   nil,   nil,
+    58,    37,   150,   150,   207,   nil,    50,   121,   190,    58,
+    37,   190,    80,   nil,    50,    80,   nil,    80,   nil,   nil,
+   nil,   206,   206,   nil,   156,    65,    83,   nil,    52,   nil,
+   nil,   206,   nil,   206,    52,    38,   nil,    10,   nil,   nil,
+    87,     5,   nil,    71,   167,   167,    40,    35,    35,    35,
+    35,    35,    35,    35,    22,    37,    85,   nil,    35,    35,
+    35,   nil,    85,   nil,    46,   nil,     6,     6,    36,   217,
+     6,   nil,    35,    85,   nil,   nil,   nil,   201,   201,   nil,
+    33,    33,   nil,    12,   207,   nil,    33,    33,   206,     6,
+    50,    50,    73,   nil,    88,    71,    25,   nil,    40,   nil,
+   150,   nil,   143,   143,   nil,    85,    25,    25,    35,    35,
+    15,   nil,    25,    25,    80,   nil,   nil,   nil,    35,     6,
+   nil,   nil,   nil,    63,    51,   nil,   nil,    46,   nil,   nil,
+    51,    63,   nil,   nil,   nil,   nil,   nil,    35,   nil,    85,
+   nil,    35,   nil,   nil,   nil,    35,    35,    78,   nil,    85,
+   nil,    31,     6,    87,    80,    78,   nil,   nil,    40,   nil,
+    84,    71,    35,    80,    80,   nil,    46,   nil,   nil,   nil,
+   nil,    71,    35,    51,   nil,   106,    46,   nil,    85,   nil,
+   nil,    35,    35,    35,   nil,   nil,    85,   nil,   nil,    29,
+    42,     6,   nil,   nil,    14,    31,    80,    14,   nil,    80,
+    71,     6,    35,   118,   nil,   nil,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   206,    33,
+    80,   nil,    75,   nil,    75,    80,   nil,   nil,    80,   nil,
+   nil,   nil,   nil,   nil,   nil,   206,   nil,   nil,   206,   nil,
+   nil,   nil,    80,   106,   nil,    25,   nil,    61,   106,    12,
+    46,   nil,   nil,    12,   nil,    27,   208,   102,   nil,   nil,
+   nil,   nil,    85,   nil,   nil,    27,    27,   nil,     6,   nil,
+   113,    27,    27,   nil,    80,     6,   nil,    71,   nil,     2,
+   nil,   nil,   nil,    40,    71,   100,   nil,     9,    22,   nil,
+   nil,   168,    75,   nil,   nil,    63,    80,     9,   nil,   nil,
+   nil,   100,   100,     6,   100,    61,    63,    35,    40,   206,
+    70,    84,     6,   nil,    85,   nil,    37,    85,   nil,    78,
+   nil,   nil,   nil,    12,   nil,   nil,    73,   nil,     6,    61,
+    78,   nil,   nil,   nil,   nil,   nil,   nil,     6,   nil,     6,
+   nil,   nil,   nil,   nil,   nil,    40,    24,   nil,   nil,   nil,
+   nil,     6,   nil,     6,    40,   nil,   nil,    31,   nil,   nil,
+    35,    61,    80,   nil,    82,    40,   nil,   nil,    35,   nil,
+    35,   149,   nil,    84,    12,   nil,    35,   nil,   nil,   nil,
+   nil,    14,   204,   204,   204,    35,    71,   nil,   nil,   nil,
+   nil,   nil,   nil,   118,   nil,   nil,   nil,   nil,    35,    40,
+   208,    35,   nil,   208,    27,   nil,   208,   nil,   208,    35,
+    80,   nil,   nil,   nil,   nil,    75,    75,   nil,   nil,    35,
+    14,    75,    75,   nil,    35,     6,   nil,    40,   nil,    35,
+   nil,   nil,   149,   nil,   nil,   nil,   nil,   nil,    36,   151,
+    80,    12,   151,   nil,   nil,   nil,   nil,    24,   nil,   nil,
+   nil,     6,   nil,   nil,   nil,   nil,   nil,   nil,    31,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,     6,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   100,   nil,   208,    14,   208,
+   nil,   208,   nil,   208,   nil,   nil,    35,   nil,   nil,    61,
+    14,   100,    35,    35,    12,    80,    35,   nil,   nil,   nil,
+   151,   nil,    35,    35,   208,   nil,   118,   nil,    35,    35,
+    14,   118,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,    61,
+   nil,   nil,   nil,    61,   nil,     6,     6,     6,   nil,    78,
+    35,   nil,   nil,   nil,   154,   nil,   154,   nil,    78,   nil,
+    61,    35,   nil,   nil,    75,   nil,    61,   nil,   nil,   nil,
+   nil,    14,    14,   nil,   nil,   nil,   nil,    75,    75,    75,
+    75,   nil,   nil,   nil,    14,    61,   149,    54,   nil,   149,
+   nil,   nil,   149,    54,   149,    35,   nil,   100,   nil,   nil,
+    35,    35,    38,   100,    35,   nil,   nil,    78,    54,   154,
+   100,   nil,   100,    40,     6,   nil,   100,    54,    54,    54,
+   nil,    54,   nil,   nil,   nil,     6,   nil,   nil,   nil,    14,
+    46,   nil,   nil,   nil,    35,   nil,    14,   nil,   nil,   nil,
+   nil,   nil,    85,     6,     6,     6,     6,    54,     6,   nil,
+   nil,    35,    54,    54,   151,     6,    54,   151,    71,     6,
+   151,   nil,   151,   149,    71,   149,   nil,   149,   nil,   149,
+    40,    75,   nil,   nil,    35,   nil,   nil,   nil,   204,   204,
+   nil,   204,   204,   nil,   204,   nil,   nil,   nil,   nil,   nil,
+   149,   nil,    35,   nil,   nil,   nil,     6,     6,     6,     6,
+   nil,   nil,    35,   nil,    35,   nil,   nil,     6,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,    54,
+    54,    54,    54,   nil,    35,    35,   nil,   nil,   nil,   nil,
+   nil,   151,   nil,   151,   nil,   151,   nil,   151,   nil,   154,
+   nil,   154,   100,   154,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    61,   nil,   nil,   nil,   nil,   nil,   nil,   151,   154,
+   nil,   154,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   152,   152,   152,   nil,    35,    35,   nil,   nil,    35,
+   nil,   100,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,
+   nil,   nil,    35,   nil,   nil,    61,   nil,   nil,   204,   204,
+   204,   204,   nil,   nil,   nil,   nil,    54,    54,    54,    54,
+    54,    54,    54,   nil,   nil,    61,   nil,    54,    54,    54,
+   nil,   nil,   nil,   154,   nil,   nil,   nil,   nil,    35,   nil,
+   154,    54,   154,    35,   154,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   154,   nil,   204,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,    54,   152,
+   152,   152,   152,    35,   152,   nil,   nil,    54,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,    54,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,    54,    61,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,    61,   nil,    57,    57,    57,   nil,
+    57,   nil,   152,   152,   152,   152,   nil,   nil,    61,   nil,
+   nil,    54,   nil,   152,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,    54,    54,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+   nil,    57,    57,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,    57,    57,
+    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,    57,    57,    57,    57,
+    57,    57,   nil,   nil,   nil,   nil,    57,    57,    57,    54,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   nil,    57,    57,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,    54,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
+    57,    57,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+   nil,    54,    54,   nil,   nil,    54,   nil,   nil,   nil,   nil,
+    57,    54,    54,   nil,   nil,   nil,   nil,    54,    54,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    54,
+    54,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   nil,   nil,    57,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,    54,   nil,   nil,    57,   nil,   nil,    57,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,
+   nil,   nil,   nil,    54,    54,    41,   nil,    57,   nil,   nil,
+   nil,   nil,    57,   nil,    41,    41,    41,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   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,    54,    54,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   nil,    54,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+    57,    57,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,
+    57,    57,   nil,   nil,   nil,   nil,    57,    57,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   nil,   nil,    54,   nil,   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,    54,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,    57,    57,
+   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,    41,    41,
+   nil,   nil,    57,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    57,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    57,   nil,    28,    34,    41,   nil,   nil,   nil,
+   nil,    34,   nil,    28,    41,    41,   nil,   nil,   nil,   nil,
+    57,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+    57,    41,    57,    41,   nil,   nil,    41,    41,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    57,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,   nil,   nil,
+   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,    28,
+   nil,   nil,    28,    57,    57,   nil,   nil,   nil,    28,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    57,   nil,   nil,   nil,
+    57,   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,    57,    41,
+   nil,   nil,   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,    39,    39,   nil,    28,   nil,   nil,
+   nil,    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,
+   nil,    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,    41,   nil,    41,    41,    41,   nil,    39,
+    39,    39,    28,   nil,    34,   nil,    34,   nil,   nil,    34,
+   nil,   nil,    28,    28,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,    41,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    39,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,    41,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,    34,    41,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    34,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,
+    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    34,
+    34,   nil,   nil,   nil,   nil,    66,   nil,   nil,    39,   nil,
+    39,   nil,   nil,    39,   nil,    66,    66,    66,    66,    39,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,   nil,    41,    41,    41,
+   nil,   nil,   nil,    41,   nil,   nil,    41,    41,    41,    41,
+    28,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+    66,   nil,    41,   nil,   nil,   nil,   nil,   nil,    28,   nil,
+   nil,    28,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,    39,    41,   nil,   nil,    39,    39,    41,   nil,
+   nil,    41,   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    28,    34,   nil,    41,
+   nil,   nil,    28,   nil,   nil,   nil,    28,    41,   nil,    66,
+   nil,   nil,    28,    28,   nil,   nil,   nil,   nil,    28,    28,
+    41,    41,    41,    41,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    66,   nil,   nil,   nil,    66,   nil,
+   nil,   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,    66,
+    28,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,    66,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,    66,
+    66,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,    34,    28,   nil,   nil,   nil,   nil,    34,
+    34,    39,   nil,    41,   nil,    34,    34,   nil,   nil,    39,
+   nil,    28,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,    39,
+    67,   nil,    39,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,    28,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,    28,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,    67,    67,   nil,   nil,   nil,
+   nil,   nil,    34,   nil,    28,    28,   nil,    34,   nil,    41,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,    67,    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,    28,    28,    39,    34,    28,
+   nil,   nil,   nil,    39,    39,   nil,   nil,   nil,    28,    39,
+    39,   nil,    28,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,    66,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,   nil,    67,   nil,   nil,   nil,    34,
+   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,    39,    28,   nil,    66,   nil,   nil,    66,   nil,
+    28,   nil,   nil,   nil,   nil,    28,   nil,   nil,   nil,   nil,
+   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
+   nil,    39,   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,    67,
+   nil,   nil,    34,    34,    39,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,    34,
+   nil,   nil,    39,    66,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    66,   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,
+    34,   nil,   nil,    39,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,    34,   nil,   nil,    39,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,    67,
+   nil,   nil,   nil,    67,   nil,    39,    39,    67,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    66,   nil,    67,   nil,   nil,    66,   nil,   nil,
+   nil,    66,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,    39,    39,   nil,   nil,
+    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,
+   nil,    66,   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,    39,
+   nil,    66,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,    39,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    66,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,    66,    66,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,    66,   nil,   nil,   nil,    66,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,    67,   nil,    66,   nil,   nil,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,    66,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,    67,    67,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,    67 ]
+
+racc_goto_pointer = [
+   nil,   133,     9,   134,   nil,    73,    -2,   129,    26,    17,
+  -109,   125,  -125,  -285,    12,  -536,  -586,  -616,  -706,   nil,
+  -386,  -163,    16,   139,   -29,  -180,    81,   -21,  1976,  -152,
+   -66,   -18,    18,  -206,  2103,   216,  -209,  -363,   -18,  2247,
+   -19,  1832,    -7,  -418,   nil,  -587,   -27,   nil,   nil,   133,
+  -188,    52,  -260,  -396,   965,  -353,   nil,  1264,   107,    18,
+    51,   403,   nil,   -29,    46,  -299,  2403,  2818,  -324,    57,
+   -71,     5,   nil,    54,  -270,   129,     7,   nil,    -5,   116,
+  -121,  -185,    23,  -446,    27,   -16,  -346,  -274,  -437,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   114,  -183,   -50,   nil,   nil,   nil,  -309,  -671,   nil,  -671,
+   nil,   nil,   nil,  -347,   nil,    96,   nil,  -206,    17,   nil,
+   nil,  -563,    95,  -219,   111,   111,  -173,   112,   112,  -417,
+  -418,  -699,  -197,  -203,  -413,  -697,   nil,   nil,   nil,   nil,
+   nil,   nil,  -781,  -528,  -513,  -822,  -715,  -644,   nil,   -14,
+  -532,    54,   224,  -642,   153,  -722,  -643,  -583,   nil,  -647,
+  -768,  -840,  -835,  -197,  -574,   114,  -396,  -335,   -15,  -199,
+   nil,   -77,   -71,   nil,  -481,  -531,   nil,  -287,  -781,  -355,
+  -503,  -629,   nil,   nil,   139,    16,   138,   138,   142,  -273,
+  -250,   142,   143,   160,  -533,  -374,  -373,   nil,   nil,   164,
+  -324,  -302,   nil,   nil,   162,  -506,  -358,  -589,  -190,  -500,
+  -704,   nil,  -673,  -860,   nil,   nil,  -113,  -462 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   309,     7,   360,   312,
+   nil,   nil,   nil,   nil,   560,   nil,   nil,   nil,   nil,   308,
+   310,   nil,   nil,   nil,   nil,    14,    15,    21,   242,   nil,
+   nil,    17,   nil,   442,   243,   340,   nil,   nil,   592,   241,
+   478,    24,   nil,   nil,   355,   nil,    25,    26,    27,   nil,
+   723,   nil,   nil,   nil,   329,   nil,    28,   326,   457,    35,
+   nil,   nil,    37,    40,    39,   nil,   238,   239,   372,   nil,
+   146,   465,   145,    91,   nil,   447,   107,    47,    50,   274,
+   300,   nil,   458,   nil,   459,   470,   681,   522,   298,   283,
+    51,    52,    53,    54,    55,    56,    57,    58,    59,    61,
+   nil,   nil,   284,    65,    66,    67,   nil,   nil,    68,   865,
+    69,    70,    71,   nil,    72,   nil,    73,   nil,   573,    74,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   288,   276,   731,   856,
+   582,   866,   788,   620,   nil,   789,   790,  1024,   924,   608,
+   nil,   609,   nil,   nil,   610,   nil,   612,   nil,   835,   nil,
+   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   469,   nil,   nil,   701,   nil,   nil,   510,   nil,   nil,   nil,
+   nil,   nil,    90,    92,    94,   nil,   nil,   nil,   nil,   nil,
+   638,   nil,   nil,   nil,   nil,   nil,   nil,   103,   104,   nil,
+   nil,   895,   770,   607,   nil,   611,   903,   623,   625,   626,
+   935,   629,   630,   936,   633,   636,   nil,   303 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 150, :_reduce_1,
+  2, 148, :_reduce_2,
+  2, 149, :_reduce_3,
+  1, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  3, 151, :_reduce_6,
+  2, 151, :_reduce_none,
+  1, 154, :_reduce_none,
+  0, 158, :_reduce_9,
+  3, 154, :_reduce_10,
+  0, 160, :_reduce_11,
+  4, 157, :_reduce_12,
+  0, 165, :_reduce_13,
+  6, 159, :_reduce_14,
+  3, 159, :_reduce_15,
+  2, 161, :_reduce_16,
+  1, 166, :_reduce_none,
+  1, 166, :_reduce_none,
+  3, 166, :_reduce_19,
+  2, 166, :_reduce_20,
+  1, 167, :_reduce_none,
+  0, 168, :_reduce_22,
+  3, 167, :_reduce_23,
+  0, 179, :_reduce_24,
+  4, 156, :_reduce_25,
+  3, 156, :_reduce_26,
+  3, 156, :_reduce_27,
+  3, 156, :_reduce_28,
+  2, 156, :_reduce_29,
+  3, 156, :_reduce_30,
+  3, 156, :_reduce_31,
+  3, 156, :_reduce_32,
+  3, 156, :_reduce_33,
+  3, 156, :_reduce_34,
+  4, 156, :_reduce_35,
+  1, 156, :_reduce_none,
+  3, 156, :_reduce_37,
+  3, 156, :_reduce_38,
+  3, 156, :_reduce_39,
+  1, 156, :_reduce_none,
+  3, 172, :_reduce_41,
+  3, 172, :_reduce_42,
+  6, 172, :_reduce_43,
+  5, 172, :_reduce_44,
+  5, 172, :_reduce_45,
+  5, 172, :_reduce_46,
+  5, 172, :_reduce_47,
+  3, 172, :_reduce_48,
+  1, 180, :_reduce_49,
+  3, 180, :_reduce_50,
+  1, 180, :_reduce_none,
+  1, 178, :_reduce_none,
+  3, 178, :_reduce_53,
+  3, 178, :_reduce_54,
+  3, 178, :_reduce_55,
+  2, 178, :_reduce_56,
+  1, 178, :_reduce_none,
+  1, 171, :_reduce_58,
+  0, 191, :_reduce_59,
+  0, 192, :_reduce_60,
+  4, 189, :_reduce_61,
+  1, 174, :_reduce_none,
+  1, 174, :_reduce_none,
+  1, 194, :_reduce_none,
+  4, 194, :_reduce_65,
+  0, 202, :_reduce_66,
+  4, 199, :_reduce_67,
+  1, 201, :_reduce_68,
+  2, 193, :_reduce_69,
+  3, 193, :_reduce_70,
+  4, 193, :_reduce_71,
+  5, 193, :_reduce_72,
+  4, 193, :_reduce_73,
+  5, 193, :_reduce_74,
+  2, 193, :_reduce_75,
+  2, 193, :_reduce_76,
+  2, 193, :_reduce_77,
+  2, 193, :_reduce_78,
+  2, 193, :_reduce_79,
+  1, 173, :_reduce_none,
+  3, 173, :_reduce_81,
+  1, 207, :_reduce_none,
+  3, 207, :_reduce_83,
+  1, 206, :_reduce_84,
+  2, 206, :_reduce_85,
+  3, 206, :_reduce_86,
+  5, 206, :_reduce_87,
+  2, 206, :_reduce_88,
+  4, 206, :_reduce_89,
+  2, 206, :_reduce_90,
+  4, 206, :_reduce_91,
+  1, 206, :_reduce_92,
+  3, 206, :_reduce_93,
+  1, 210, :_reduce_none,
+  3, 210, :_reduce_95,
+  2, 209, :_reduce_96,
+  3, 209, :_reduce_97,
+  1, 212, :_reduce_98,
+  3, 212, :_reduce_99,
+  1, 211, :_reduce_100,
+  1, 211, :_reduce_101,
+  4, 211, :_reduce_102,
+  3, 211, :_reduce_103,
+  3, 211, :_reduce_104,
+  3, 211, :_reduce_105,
+  3, 211, :_reduce_106,
+  2, 211, :_reduce_107,
+  1, 211, :_reduce_108,
+  1, 175, :_reduce_109,
+  1, 175, :_reduce_110,
+  4, 175, :_reduce_111,
+  3, 175, :_reduce_112,
+  3, 175, :_reduce_113,
+  3, 175, :_reduce_114,
+  3, 175, :_reduce_115,
+  2, 175, :_reduce_116,
+  1, 175, :_reduce_117,
+  1, 215, :_reduce_118,
+  1, 215, :_reduce_none,
+  2, 216, :_reduce_120,
+  1, 216, :_reduce_121,
+  3, 216, :_reduce_122,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_none,
+  1, 217, :_reduce_126,
+  1, 217, :_reduce_none,
+  1, 169, :_reduce_128,
+  1, 169, :_reduce_none,
+  1, 170, :_reduce_130,
+  0, 221, :_reduce_131,
+  4, 170, :_reduce_132,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 218, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  3, 188, :_reduce_204,
+  3, 188, :_reduce_205,
+  6, 188, :_reduce_206,
+  5, 188, :_reduce_207,
+  5, 188, :_reduce_208,
+  5, 188, :_reduce_209,
+  5, 188, :_reduce_210,
+  4, 188, :_reduce_211,
+  3, 188, :_reduce_212,
+  3, 188, :_reduce_213,
+  3, 188, :_reduce_214,
+  2, 188, :_reduce_215,
+  2, 188, :_reduce_216,
+  3, 188, :_reduce_217,
+  3, 188, :_reduce_218,
+  3, 188, :_reduce_219,
+  3, 188, :_reduce_220,
+  3, 188, :_reduce_221,
+  3, 188, :_reduce_222,
+  4, 188, :_reduce_223,
+  2, 188, :_reduce_224,
+  2, 188, :_reduce_225,
+  3, 188, :_reduce_226,
+  3, 188, :_reduce_227,
+  3, 188, :_reduce_228,
+  3, 188, :_reduce_229,
+  1, 188, :_reduce_none,
+  3, 188, :_reduce_231,
+  3, 188, :_reduce_232,
+  3, 188, :_reduce_233,
+  3, 188, :_reduce_234,
+  3, 188, :_reduce_235,
+  2, 188, :_reduce_236,
+  2, 188, :_reduce_237,
+  3, 188, :_reduce_238,
+  3, 188, :_reduce_239,
+  3, 188, :_reduce_240,
+  3, 188, :_reduce_241,
+  3, 188, :_reduce_242,
+  6, 188, :_reduce_243,
+  1, 188, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  1, 226, :_reduce_none,
+  3, 224, :_reduce_249,
+  3, 224, :_reduce_250,
+  1, 227, :_reduce_251,
+  1, 228, :_reduce_none,
+  2, 228, :_reduce_253,
+  4, 228, :_reduce_254,
+  2, 228, :_reduce_255,
+  1, 222, :_reduce_none,
+  3, 222, :_reduce_257,
+  3, 232, :_reduce_258,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 183, :_reduce_none,
+  1, 183, :_reduce_none,
+  2, 183, :_reduce_263,
+  4, 183, :_reduce_264,
+  2, 183, :_reduce_265,
+  1, 205, :_reduce_266,
+  2, 205, :_reduce_267,
+  2, 205, :_reduce_268,
+  4, 205, :_reduce_269,
+  1, 205, :_reduce_270,
+  0, 236, :_reduce_271,
+  2, 198, :_reduce_272,
+  2, 235, :_reduce_273,
+  2, 234, :_reduce_274,
+  1, 234, :_reduce_none,
+  1, 229, :_reduce_276,
+  2, 229, :_reduce_277,
+  3, 229, :_reduce_278,
+  4, 229, :_reduce_279,
+  1, 177, :_reduce_280,
+  1, 177, :_reduce_281,
+  3, 176, :_reduce_282,
+  4, 176, :_reduce_283,
+  2, 176, :_reduce_284,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_295,
+  0, 271, :_reduce_296,
+  4, 225, :_reduce_297,
+  0, 272, :_reduce_298,
+  3, 225, :_reduce_299,
+  0, 273, :_reduce_300,
+  4, 225, :_reduce_301,
+  3, 225, :_reduce_302,
+  3, 225, :_reduce_303,
+  2, 225, :_reduce_304,
+  0, 274, :_reduce_305,
+  4, 225, :_reduce_306,
+  0, 275, :_reduce_307,
+  4, 225, :_reduce_308,
+  1, 225, :_reduce_309,
+  4, 225, :_reduce_310,
+  3, 225, :_reduce_311,
+  1, 225, :_reduce_312,
+  5, 225, :_reduce_313,
+  4, 225, :_reduce_314,
+  3, 225, :_reduce_315,
+  2, 225, :_reduce_316,
+  1, 225, :_reduce_none,
+  2, 225, :_reduce_318,
+  1, 225, :_reduce_319,
+  6, 225, :_reduce_320,
+  6, 225, :_reduce_321,
+  4, 225, :_reduce_322,
+  4, 225, :_reduce_323,
+  5, 225, :_reduce_324,
+  4, 225, :_reduce_325,
+  6, 225, :_reduce_326,
+  0, 276, :_reduce_327,
+  6, 225, :_reduce_328,
+  0, 277, :_reduce_329,
+  0, 278, :_reduce_330,
+  8, 225, :_reduce_331,
+  0, 279, :_reduce_332,
+  5, 225, :_reduce_333,
+  0, 280, :_reduce_334,
+  6, 225, :_reduce_335,
+  0, 281, :_reduce_336,
+  0, 282, :_reduce_337,
+  9, 225, :_reduce_338,
+  1, 225, :_reduce_339,
+  1, 225, :_reduce_340,
+  1, 225, :_reduce_341,
+  1, 225, :_reduce_342,
+  1, 182, :_reduce_343,
+  1, 246, :_reduce_none,
+  1, 252, :_reduce_none,
+  1, 255, :_reduce_none,
+  1, 257, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 259, :_reduce_none,
+  1, 261, :_reduce_none,
+  1, 263, :_reduce_351,
+  1, 266, :_reduce_352,
+  1, 267, :_reduce_353,
+  1, 283, :_reduce_none,
+  1, 284, :_reduce_none,
+  1, 285, :_reduce_none,
+  1, 286, :_reduce_none,
+  1, 287, :_reduce_none,
+  1, 163, :_reduce_none,
+  1, 288, :_reduce_none,
+  1, 247, :_reduce_none,
+  1, 204, :_reduce_none,
+  1, 253, :_reduce_none,
+  1, 253, :_reduce_none,
+  2, 253, :_reduce_none,
+  1, 190, :_reduce_none,
+  1, 190, :_reduce_none,
+  1, 254, :_reduce_none,
+  5, 254, :_reduce_369,
+  1, 256, :_reduce_none,
+  2, 256, :_reduce_371,
+  1, 262, :_reduce_none,
+  1, 262, :_reduce_373,
+  1, 289, :_reduce_none,
+  3, 289, :_reduce_375,
+  1, 292, :_reduce_376,
+  3, 292, :_reduce_377,
+  1, 291, :_reduce_378,
+  3, 291, :_reduce_379,
+  5, 291, :_reduce_380,
+  1, 291, :_reduce_381,
+  3, 291, :_reduce_382,
+  2, 293, :_reduce_383,
+  1, 293, :_reduce_384,
+  4, 294, :_reduce_385,
+  2, 294, :_reduce_386,
+  2, 294, :_reduce_387,
+  1, 294, :_reduce_388,
+  2, 299, :_reduce_389,
+  1, 299, :_reduce_none,
+  6, 300, :_reduce_391,
+  8, 300, :_reduce_392,
+  4, 300, :_reduce_393,
+  6, 300, :_reduce_394,
+  4, 300, :_reduce_395,
+  2, 300, :_reduce_396,
+  6, 300, :_reduce_397,
+  2, 300, :_reduce_398,
+  4, 300, :_reduce_399,
+  6, 300, :_reduce_400,
+  2, 300, :_reduce_401,
+  4, 300, :_reduce_402,
+  2, 300, :_reduce_403,
+  4, 300, :_reduce_404,
+  1, 300, :_reduce_405,
+  1, 304, :_reduce_406,
+  1, 304, :_reduce_407,
+  3, 305, :_reduce_408,
+  1, 305, :_reduce_409,
+  4, 305, :_reduce_410,
+  1, 306, :_reduce_none,
+  4, 306, :_reduce_412,
+  1, 307, :_reduce_413,
+  3, 307, :_reduce_414,
+  1, 308, :_reduce_415,
+  1, 308, :_reduce_none,
+  0, 312, :_reduce_417,
+  0, 313, :_reduce_418,
+  5, 251, :_reduce_419,
+  4, 310, :_reduce_420,
+  1, 310, :_reduce_421,
+  3, 311, :_reduce_422,
+  3, 311, :_reduce_423,
+  3, 315, :_reduce_424,
+  2, 195, :_reduce_425,
+  4, 195, :_reduce_426,
+  5, 195, :_reduce_427,
+  5, 195, :_reduce_428,
+  2, 250, :_reduce_429,
+  4, 250, :_reduce_430,
+  4, 250, :_reduce_431,
+  3, 250, :_reduce_432,
+  3, 250, :_reduce_433,
+  3, 250, :_reduce_434,
+  2, 250, :_reduce_435,
+  1, 250, :_reduce_436,
+  4, 250, :_reduce_437,
+  0, 318, :_reduce_438,
+  4, 249, :_reduce_439,
+  0, 319, :_reduce_440,
+  4, 249, :_reduce_441,
+  0, 320, :_reduce_442,
+  0, 321, :_reduce_443,
+  4, 200, :_reduce_444,
+  0, 323, :_reduce_445,
+  0, 324, :_reduce_446,
+  4, 316, :_reduce_447,
+  1, 322, :_reduce_448,
+  2, 322, :_reduce_449,
+  3, 322, :_reduce_450,
+  4, 322, :_reduce_451,
+  0, 326, :_reduce_452,
+  6, 260, :_reduce_453,
+  1, 325, :_reduce_none,
+  1, 325, :_reduce_none,
+  6, 162, :_reduce_456,
+  0, 162, :_reduce_457,
+  1, 327, :_reduce_458,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  2, 328, :_reduce_461,
+  1, 328, :_reduce_none,
+  2, 164, :_reduce_463,
+  1, 164, :_reduce_none,
+  1, 237, :_reduce_465,
+  1, 237, :_reduce_none,
+  1, 238, :_reduce_467,
+  1, 330, :_reduce_468,
+  1, 330, :_reduce_none,
+  2, 330, :_reduce_470,
+  3, 331, :_reduce_471,
+  1, 331, :_reduce_472,
+  3, 239, :_reduce_473,
+  3, 240, :_reduce_474,
+  3, 241, :_reduce_475,
+  3, 241, :_reduce_476,
+  1, 335, :_reduce_477,
+  3, 335, :_reduce_478,
+  1, 336, :_reduce_none,
+  2, 336, :_reduce_480,
+  3, 243, :_reduce_481,
+  3, 243, :_reduce_482,
+  1, 338, :_reduce_483,
+  3, 338, :_reduce_484,
+  3, 242, :_reduce_485,
+  3, 242, :_reduce_486,
+  3, 244, :_reduce_487,
+  3, 244, :_reduce_488,
+  1, 339, :_reduce_489,
+  3, 339, :_reduce_490,
+  1, 340, :_reduce_491,
+  3, 340, :_reduce_492,
+  1, 332, :_reduce_493,
+  2, 332, :_reduce_494,
+  1, 333, :_reduce_495,
+  2, 333, :_reduce_496,
+  1, 334, :_reduce_497,
+  2, 334, :_reduce_498,
+  1, 337, :_reduce_499,
+  0, 342, :_reduce_500,
+  3, 337, :_reduce_501,
+  0, 343, :_reduce_502,
+  4, 337, :_reduce_503,
+  1, 341, :_reduce_504,
+  1, 341, :_reduce_505,
+  1, 341, :_reduce_506,
+  1, 341, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  2, 344, :_reduce_510,
+  1, 344, :_reduce_511,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  3, 345, :_reduce_516,
+  1, 329, :_reduce_none,
+  2, 329, :_reduce_518,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 214, :_reduce_528,
+  1, 214, :_reduce_529,
+  1, 214, :_reduce_530,
+  1, 214, :_reduce_531,
+  1, 214, :_reduce_532,
+  1, 214, :_reduce_533,
+  1, 214, :_reduce_534,
+  1, 245, :_reduce_535,
+  1, 245, :_reduce_536,
+  1, 181, :_reduce_537,
+  1, 181, :_reduce_538,
+  1, 186, :_reduce_539,
+  1, 186, :_reduce_540,
+  0, 347, :_reduce_541,
+  4, 264, :_reduce_542,
+  1, 264, :_reduce_543,
+  3, 268, :_reduce_544,
+  0, 349, :_reduce_545,
+  3, 268, :_reduce_546,
+  4, 348, :_reduce_547,
+  2, 348, :_reduce_548,
+  2, 348, :_reduce_549,
+  1, 348, :_reduce_none,
+  2, 351, :_reduce_551,
+  0, 351, :_reduce_552,
+  6, 314, :_reduce_553,
+  8, 314, :_reduce_554,
+  4, 314, :_reduce_555,
+  6, 314, :_reduce_556,
+  4, 314, :_reduce_557,
+  6, 314, :_reduce_558,
+  2, 314, :_reduce_559,
+  4, 314, :_reduce_560,
+  6, 314, :_reduce_561,
+  2, 314, :_reduce_562,
+  4, 314, :_reduce_563,
+  2, 314, :_reduce_564,
+  4, 314, :_reduce_565,
+  1, 314, :_reduce_566,
+  0, 314, :_reduce_567,
+  1, 309, :_reduce_568,
+  1, 309, :_reduce_569,
+  1, 309, :_reduce_570,
+  1, 309, :_reduce_571,
+  1, 290, :_reduce_none,
+  1, 290, :_reduce_573,
+  1, 353, :_reduce_none,
+  1, 354, :_reduce_none,
+  3, 354, :_reduce_576,
+  1, 301, :_reduce_577,
+  3, 301, :_reduce_578,
+  1, 355, :_reduce_none,
+  2, 356, :_reduce_580,
+  1, 356, :_reduce_581,
+  2, 357, :_reduce_582,
+  1, 357, :_reduce_583,
+  1, 295, :_reduce_none,
+  3, 295, :_reduce_585,
+  1, 350, :_reduce_none,
+  3, 350, :_reduce_587,
+  1, 358, :_reduce_none,
+  1, 358, :_reduce_none,
+  2, 296, :_reduce_590,
+  1, 296, :_reduce_591,
+  3, 359, :_reduce_592,
+  3, 360, :_reduce_593,
+  1, 302, :_reduce_594,
+  3, 302, :_reduce_595,
+  1, 352, :_reduce_596,
+  3, 352, :_reduce_597,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  2, 303, :_reduce_600,
+  1, 303, :_reduce_601,
+  1, 362, :_reduce_none,
+  1, 362, :_reduce_none,
+  2, 298, :_reduce_604,
+  2, 297, :_reduce_605,
+  0, 297, :_reduce_606,
+  1, 269, :_reduce_none,
+  0, 363, :_reduce_608,
+  4, 269, :_reduce_609,
+  1, 248, :_reduce_610,
+  2, 248, :_reduce_none,
+  1, 231, :_reduce_none,
+  3, 231, :_reduce_613,
+  3, 364, :_reduce_614,
+  2, 364, :_reduce_615,
+  4, 364, :_reduce_616,
+  2, 364, :_reduce_617,
+  1, 203, :_reduce_none,
+  1, 203, :_reduce_none,
+  1, 203, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 317, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  0, 152, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 187, :_reduce_none,
+  1, 187, :_reduce_none,
+  2, 208, :_reduce_638,
+  2, 184, :_reduce_639,
+  0, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 265, :_reduce_643,
+  1, 265, :_reduce_none,
+  1, 155, :_reduce_none,
+  2, 155, :_reduce_646,
+  0, 153, :_reduce_647 ]
+
+racc_reduce_n = 648
+
+racc_shift_n = 1091
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLONELY => 142,
+  :tBDOT2 => 143,
+  :tBDOT3 => 144,
+  :tLOWEST => 145,
+  :tEQL => 146 }
+
+racc_nt_base = 147
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLONELY",
+  "tBDOT2",
+  "tBDOT3",
+  "tLOWEST",
+  "tEQL",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "@3",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@4",
+  "stmts",
+  "stmt_or_begin",
+  "@5",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@6",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "backref",
+  "opt_nl",
+  "arg",
+  "expr_value_do",
+  "do",
+  "@7",
+  "@8",
+  "command",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@9",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "fname",
+  "op",
+  "reswords",
+  "symbol",
+  "@10",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@11",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "k_def",
+  "f_arglist",
+  "singleton",
+  "dot_or_colon",
+  "@12",
+  "@13",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "@22",
+  "@23",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "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",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@24",
+  "@25",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@26",
+  "@27",
+  "@28",
+  "@29",
+  "case_args",
+  "@30",
+  "@31",
+  "cases",
+  "@32",
+  "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",
+  "@33",
+  "@34",
+  "ssym",
+  "dsym",
+  "sym",
+  "@35",
+  "args_tail",
+  "@36",
+  "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",
+  "@37",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 11
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      _, line, stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      res = _values[-2]
+                      # TODO: move down to main match so I can just use val
+
+                      yyerror "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_16(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 17 omitted
+
+# reduce 18 omitted
+
+def _reduce_19(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_20(val, _values, result)
+                      result = val[1]
+                      debug 12
+
+    result
+end
+
+# reduce 21 omitted
+
+def _reduce_22(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_35(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 13
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 36 omitted
+
+def _reduce_37(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+def _reduce_50(val, _values, result)
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+
+    result
+end
+
+# reduce 51 omitted
+
+# reduce 52 omitted
+
+def _reduce_53(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_55(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_56(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+# reduce 57 omitted
+
+def _reduce_58(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_61(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 62 omitted
+
+# reduce 63 omitted
+
+# reduce 64 omitted
+
+def _reduce_65(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_66(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_74(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_75(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_76(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_77(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_79(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 80 omitted
+
+def _reduce_81(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 82 omitted
+
+def _reduce_83(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_92(val, _values, result)
+                      l = lexer.lineno
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_93(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 94 omitted
+
+def _reduce_95(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_106(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 14
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_107(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 15
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 16
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 17
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 18
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_118(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 119 omitted
+
+def _reduce_120(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_122(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 123 omitted
+
+# reduce 124 omitted
+
+# reduce 125 omitted
+
+def _reduce_126(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 127 omitted
+
+def _reduce_128(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 129 omitted
+
+def _reduce_130(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_131(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_132(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+# reduce 203 omitted
+
+def _reduce_204(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_205(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_206(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_207(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_208(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_209(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_210(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_211(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_212(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_213(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_214(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_215(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot2, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_216(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot3, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_227(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_228(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_229(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 230 omitted
+
+def _reduce_231(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_241(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_242(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_243(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+# reduce 244 omitted
+
+# reduce 245 omitted
+
+# reduce 246 omitted
+
+# reduce 247 omitted
+
+# reduce 248 omitted
+
+def _reduce_249(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_250(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_251(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 252 omitted
+
+def _reduce_253(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_254(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_255(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 256 omitted
+
+def _reduce_257(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_258(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+# reduce 259 omitted
+
+# reduce 260 omitted
+
+# reduce 261 omitted
+
+# reduce 262 omitted
+
+def _reduce_263(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_264(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_265(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_266(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_267(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_270(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_271(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_272(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_273(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_274(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 275 omitted
+
+def _reduce_276(val, _values, result)
+                      arg, = val
+                      lineno = arg.line || lexer.lineno # HACK
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_279(val, _values, result)
+                      # TODO: the line number from tSTAR has been dropped
+                      args, _, _, id = val
+                      line = lexer.lineno
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_280(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_281(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_282(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_283(val, _values, result)
+                      # TODO: make all tXXXX terminals include lexer.lineno
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_284(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 285 omitted
+
+# reduce 286 omitted
+
+# reduce 287 omitted
+
+# reduce 288 omitted
+
+# reduce 289 omitted
+
+# reduce 290 omitted
+
+# reduce 291 omitted
+
+# reduce 292 omitted
+
+# reduce 293 omitted
+
+# reduce 294 omitted
+
+def _reduce_295(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_296(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_297(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+                      result = lexer.lineno
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      _, line, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+                      _, stmt, _ = val
+                      result = stmt
+                      result ||= s(:nil).line lexer.lineno
+                      result.paren = true
+
+    result
+end
+
+def _reduce_303(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      _, line, args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_308(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_309(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_310(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_311(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_312(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_313(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_314(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_315(val, _values, result)
+                      debug 20
+
+    result
+end
+
+def _reduce_316(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 317 omitted
+
+def _reduce_318(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      result = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      result = self.in_def
+
+                      self.in_single += 1 # TODO: remove?
+
+                      self.in_def = true # local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
+                      # =>
+                      # [kdef, recv, (name, line), in_def, args, body, kend]
+
+                      val.delete_at 3
+                      val.delete_at 2
+
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_341(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_342(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_343(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 344 omitted
+
+# reduce 345 omitted
+
+# reduce 346 omitted
+
+# reduce 347 omitted
+
+# reduce 348 omitted
+
+# reduce 349 omitted
+
+# reduce 350 omitted
+
+def _reduce_351(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_352(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_353(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 354 omitted
+
+# reduce 355 omitted
+
+# reduce 356 omitted
+
+# reduce 357 omitted
+
+# reduce 358 omitted
+
+# reduce 359 omitted
+
+# reduce 360 omitted
+
+# reduce 361 omitted
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+# reduce 366 omitted
+
+# reduce 367 omitted
+
+# reduce 368 omitted
+
+def _reduce_369(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 370 omitted
+
+def _reduce_371(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 372 omitted
+
+def _reduce_373(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+# reduce 374 omitted
+
+def _reduce_375(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_376(val, _values, result)
+                      sym, = val
+
+                      result = s(:array, sym).line lexer.lineno
+
+    result
+end
+
+def _reduce_377(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_378(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_379(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_380(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_381(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_382(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_383(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_384(val, _values, result)
+                      result = args [:*]
+                      result.line lexer.lineno # FIX: tSTAR -> line
+
+    result
+end
+
+def _reduce_385(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_386(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_387(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_388(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_389(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 390 omitted
+
+def _reduce_391(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      result = args(val) << nil
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_404(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_405(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_406(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_407(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_408(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+def _reduce_409(val, _values, result)
+                      result = s(:args).line lexer.lineno
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+# reduce 411 omitted
+
+def _reduce_412(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_413(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_414(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_415(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 416 omitted
+
+def _reduce_417(val, _values, result)
+                      self.env.extend :dynamic
+                      result = [lexer.lineno, lexer.lpar_beg]
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      _, (line, lpar), args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      result = s(:zsuper).line lexer.lineno
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_440(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_441(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_442(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_443(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_446(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_451(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_452(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_453(val, _values, result)
+                      result = new_when(val[2], val[4])
+                      result.line val[1]
+                      result << val[5] if val[5]
+
+    result
+end
+
+# reduce 454 omitted
+
+# reduce 455 omitted
+
+def _reduce_456(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_457(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_458(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 459 omitted
+
+# reduce 460 omitted
+
+def _reduce_461(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 462 omitted
+
+def _reduce_463(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 464 omitted
+
+def _reduce_465(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 466 omitted
+
+def _reduce_467(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_468(val, _values, result)
+                      debug 37
+
+    result
+end
+
+# reduce 469 omitted
+
+def _reduce_470(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_471(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_476(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_477(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_478(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 479 omitted
+
+def _reduce_480(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_483(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_484(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_485(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_486(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_488(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_489(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_494(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_495(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_496(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_497(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_498(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_499(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_500(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_501(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                                lexer.lineno,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      _, memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 38
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_504(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_505(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_506(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 507 omitted
+
+# reduce 508 omitted
+
+# reduce 509 omitted
+
+def _reduce_510(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_511(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 512 omitted
+
+# reduce 513 omitted
+
+# reduce 514 omitted
+
+# reduce 515 omitted
+
+def _reduce_516(val, _values, result)
+                      _, result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line lexer.lineno
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 39
+                      end
+
+    result
+end
+
+# reduce 517 omitted
+
+def _reduce_518(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 519 omitted
+
+# reduce 520 omitted
+
+# reduce 521 omitted
+
+# reduce 522 omitted
+
+# reduce 523 omitted
+
+# reduce 524 omitted
+
+# reduce 525 omitted
+
+# reduce 526 omitted
+
+# reduce 527 omitted
+
+def _reduce_528(val, _values, result)
+ result = s(:nil).line lexer.lineno
+    result
+end
+
+def _reduce_529(val, _values, result)
+ result = s(:self).line lexer.lineno
+    result
+end
+
+def _reduce_530(val, _values, result)
+ result = s(:true).line lexer.lineno
+    result
+end
+
+def _reduce_531(val, _values, result)
+ result = s(:false).line lexer.lineno
+    result
+end
+
+def _reduce_532(val, _values, result)
+ result = s(:str, self.file).line lexer.lineno
+    result
+end
+
+def _reduce_533(val, _values, result)
+ result = s(:lit, lexer.lineno).line lexer.lineno
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      l = lexer.lineno
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+                      result.line line
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 40
+
+    result
+end
+
+def _reduce_539(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_540(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_547(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_548(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_549(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 550 omitted
+
+def _reduce_551(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_555(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_556(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_557(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_558(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_560(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_561(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_562(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_563(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_564(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      result = args val
+                      # result.line lexer.lineno
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_569(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_570(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_571(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 572 omitted
+
+def _reduce_573(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 574 omitted
+
+# reduce 575 omitted
+
+def _reduce_576(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_577(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_578(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+# reduce 579 omitted
+
+def _reduce_580(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_581(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_582(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_583(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 584 omitted
+
+def _reduce_585(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 586 omitted
+
+def _reduce_587(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 588 omitted
+
+# reduce 589 omitted
+
+def _reduce_590(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_591(val, _values, result)
+                      id = :"**"
+                      self.env[id] = :lvar # TODO: needed?!?
+                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_595(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_596(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_597(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 598 omitted
+
+# reduce 599 omitted
+
+def _reduce_600(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_601(val, _values, result)
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
+
+    result
+end
+
+# reduce 602 omitted
+
+# reduce 603 omitted
+
+def _reduce_604(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_605(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 607 omitted
+
+def _reduce_608(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_609(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_610(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 611 omitted
+
+# reduce 612 omitted
+
+def _reduce_613(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_614(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_615(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_616(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_617(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 618 omitted
+
+# reduce 619 omitted
+
+# reduce 620 omitted
+
+# reduce 621 omitted
+
+# reduce 622 omitted
+
+# reduce 623 omitted
+
+# reduce 624 omitted
+
+# reduce 625 omitted
+
+# reduce 626 omitted
+
+# reduce 627 omitted
+
+# reduce 628 omitted
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+# reduce 631 omitted
+
+# reduce 632 omitted
+
+# reduce 633 omitted
+
+# reduce 634 omitted
+
+# reduce 635 omitted
+
+# reduce 636 omitted
+
+# reduce 637 omitted
+
+def _reduce_638(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_639(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 640 omitted
+
+# reduce 641 omitted
+
+# reduce 642 omitted
+
+def _reduce_643(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 644 omitted
+
+# reduce 645 omitted
+
+def _reduce_646(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_647(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby26Parser
diff -pruN 3.20.0-2/lib/ruby_parser27.rb 3.21.1-1/lib/ruby_parser27.rb
--- 3.20.0-2/lib/ruby_parser27.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser27.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,12960 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby27Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -623,   665,   668,   288,   583,  -112,   288,  -623,  -623,  -623,
+   226,   227,  -623,  -623,  -623,  -106,  -623,  -113,  1095,  -108,
+   583,   583,   226,   227,  -623,   879,  -623,  -623,  -623,   226,
+   227,   597,     3,   838,  1100,   598,  -623,  -623,   232,  -623,
+  -623,  -623,  -623,  -623,   -98,   283,  -741,   583,  -120,  -107,
+  -119,   839,  1099,  -115,  -117,   583,   597,   879,   128,   237,
+   897,   -84,   961,  -105,   664,   667,  -516,  -623,  -623,  -623,
+  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -623,   583,  -106,  -623,  -623,  -623,  -108,  -623,  -623,   789,
+   290,  -623,  -114,   290,  -623,  -623,  1096,  -623,  1135,  -623,
+   237,  -623,   233,  -623,  -623,  -623,  -623,  -623,  -623,  -623,
+  -103,  -623,   237,  -623,  1012,  -726,  -107,  -106,   132,   237,
+  -106,  -108,  -104,   131,  -108,   637,  -623,  -623,  -623,  -623,
+  -105,  -623,  -112,  -623,   132,   132,  -626,  -106,  -623,   131,
+   131,  -108,  -623,  -626,  -626,  -626,  -623,  -113,  -626,  -626,
+  -626,  -107,  -626,  -111,  -107,  -110,  -120,  -119,  -106,  -108,
+  -626,   132,  -626,  -626,  -626,  -105,   131,   960,  -105,   132,
+  -115,  -107,  -626,  -626,   131,  -626,  -626,  -626,  -626,  -626,
+  -117,  -116,  1155,  -114,   223,  -105,  -116,  -118,   903,   132,
+   288,  -637,   638,    97,   131,   132,   236,  -105,  1058,  -638,
+   131,    98,   903,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
+  -626,  -626,  -626,  -626,  -626,  -626,  -626,   224,   288,  -626,
+  -626,  -626,   902,  -626,  -626,   110,   111,  -626,   110,   111,
+  -626,  -626,   237,  -626,   488,  -626,   902,  -626,   225,  -626,
+  -626,  -626,  -626,  -626,  -626,  -626,  -112,  -626,  -118,  -626,
+  -112,  -112,  -726,  -727,   228,   285,   649,  1012,  -113,  -726,
+  1156,  -113,  -626,  -626,  -626,  -626,  -113,  -626,   637,  -626,
+  -120,  -119,  -310,   278,  -626,  -120,  -119,   290,  -626,  -310,
+  -310,  -310,  -626,   285,  -115,  -310,  -310,   634,  -310,  -115,
+  -741,  -107,  -109,  -120,  -117,  -116,  -310,  -114,   637,  -117,
+  -116,   234,  -114,   112,   113,   290,   112,   113,  -310,  -310,
+   562,  -310,  -310,  -310,  -310,  -310,   340,   651,   650,   647,
+   232,   237,  -623,   874,   935,   649,  -727,   231,   132,  -623,
+   875,   645,   644,   131,   794,   638,   229,   751,   687,  -310,
+  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
+  -310,  -310,  -310,   688,   234,  -310,  -310,  -310,   649,   693,
+  -120,   634,  -118,  -310,   995,   638,  -310,  -118,   649,  -119,
+   597,  -310,   637,  -310,   897,  -310,  -310,  -310,  -310,  -310,
+  -310,  -310,  -115,  -310,   233,  -310,   651,   650,   629,  -117,
+   626,   625,   624,   634,   627,   844,  -111,  -115,  -310,  -310,
+   861,  -109,   885,  -310,   637,   645,   644,   881,  -730,  -741,
+  -310,   882,  -117,  -120,  -310,  -730,  -730,  -730,  -118,   651,
+   650,  -730,  -730,  -114,  -730,   341,   632,   614,   846,   651,
+   650,   647,  -730,  -730,  -626,   642,   641,   645,   644,   638,
+   237,  -626,   649,   237,  -730,  -730,  -351,  -730,  -730,  -730,
+  -730,  -730,   590,  -351,   232,   935,   406,   590,  -635,  -114,
+   794,   485,  -351,   649,  -637,  -635,   654,   434,   226,   227,
+   486,   638,   436,   435,  -635,  -730,  -730,  -730,  -730,  -730,
+  -730,  -730,  -730,  -730,  -730,  -730,  -730,  -730,  -730,   409,
+  -633,  -730,  -730,  -730,  -632,   694,  -638,  -633,   412,  -730,
+   649,  -632,  -730,   651,   650,   652,  -103,  -730,   415,  -730,
+  -351,  -730,  -730,  -730,  -730,  -730,  -730,  -730,   233,  -730,
+  -730,  -730,  -635,  -112,   651,   650,   629,   432,   626,   625,
+   624,   634,   627,  -636,  -730,  -730,   562,  -107,  -104,  -730,
+  -636,   649,   637,   132,  -730,   649,  -730,   437,   131,  -636,
+  -730,  -730,  -730,  -730,  -116,  -113,  -730,  -730,  -730,  -634,
+  -730,   651,   650,   657,   632,   487,  -634,   489,  -730,  -730,
+  -730,  -730,  -730,   642,   641,   645,   644,   490,  -110,   236,
+  -730,  -730,   232,  -730,  -730,  -730,  -730,  -730,   132,   555,
+   275,   276,  -631,   131,  -301,  -119,   520,  -636,   553,  -631,
+   687,  -301,   651,   650,   662,   532,   651,   650,   669,   638,
+  -301,  -730,  -730,  -730,  -730,  -730,  -730,  -730,  -730,  -730,
+  -730,  -730,  -730,  -730,  -730,   274,   273,  -730,  -730,  -730,
+  -628,   876,  -730,  -629,   535,  -730,   537,  -628,  -730,  -730,
+  -629,  -730,  -106,  -730,   -83,  -730,   233,  -730,  -730,  -730,
+  -730,  -730,  -730,  -730,  -630,  -730,  -730,  -730,  -301,  -115,
+   778,  -630,   629,   777,   626,   625,   624,   634,   627,   232,
+  -730,  -730,  -730,  -730,   610,  -730,   564,  -730,   637,   237,
+  -310,   611,  -730,   548,   688,   486,  -730,  -310,  -310,  -310,
+  -116,   921,  -310,  -310,  -310,   549,  -310,   922,   232,   778,
+   632,   556,   780,   295,  -310,   594,  -310,  -310,  -310,   642,
+   641,   645,   644,   237,   592,   285,  -310,  -310,   232,  -310,
+  -310,  -310,  -310,  -310,   132,   600,  -108,   132,   232,   131,
+  -311,   861,   131,   233,   602,   680,   629,  -311,   626,   625,
+   624,   559,   627,  -117,   678,   638,  -311,  -310,  -310,  -310,
+  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
+  -310,   132,   233,  -310,  -310,  -310,   131,   877,  -310,   778,
+   565,  -310,   780,  -105,  -310,  -310,   258,  -310,   237,  -310,
+   590,  -310,   233,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
+  -114,  -310,   233,  -310,  -311,   425,   629,   595,   626,   625,
+   624,   634,   627,  -311,   226,   227,  -310,  -310,  -310,  -310,
+  -311,  -310,   637,  -310,   778,   596,  -310,   780,  -310,  -311,
+   226,   227,  -310,  -310,  -310,  -310,  -118,   604,   879,  -310,
+  -310,  1105,  -310,   237,   632,   629,  1195,   626,   625,   624,
+  -310,   627,   656,   642,   641,   645,   644,   135,   136,   137,
+   138,   139,  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
+   660,  -310,  -310,   663,   232,   666,  -727,  -311,   673,  -310,
+  -310,  1174,   258,   831,  -727,   892,   893,   674,  -310,   638,
+   602,  -283,   835,  -310,  -310,  -310,  -310,  -310,  -310,  -310,
+  -310,  -310,  -310,  -310,  -310,  -310,  -310,   931,   935,  -310,
+  -310,  -310,   676,   693,   255,   645,   644,  -310,   257,   256,
+  -310,  1133,  1134,   931,   935,  -310,   677,  -310,  -310,  -310,
+  -310,  -310,  -310,  -310,  -310,  -310,  -310,  -310,   233,  -310,
+   681,   237,   685,   686,   629,   285,   626,   625,   624,   634,
+   627,   232,  -310,  -310,   698,  -310,   258,  -310,  1180,   258,
+   637,   258,  -730,   258,  -310,   733,   237,  1178,  -310,  -730,
+  -730,  -730,  -118,   739,   258,  -730,  -730,  1146,  -730,   626,
+   625,   624,   632,   627,   237,   258,  -730,  -730,   237,   432,
+  -723,   642,   641,   645,   644,   237,   -98,   755,  -730,  -730,
+   232,  -730,  -730,  -730,  -730,  -730,   255,  1174,   237,   568,
+   257,   256,   253,   254,   766,   233,   602,   255,   771,   774,
+   237,   257,   256,   253,   254,   237,   782,   638,   537,  -730,
+  -730,  -730,  -730,  -730,  -730,  -730,  -730,  -730,  -730,  -730,
+  -730,  -730,  -730,  -623,   785,  -730,  -730,  -730,   774,   694,
+  -623,   774,   774,  -730,   812,  -723,  -730,   818,   821,  -623,
+   821,  -730,   823,  -730,   233,  -730,  -730,  -730,  -730,  -730,
+  -730,  -730,   825,  -730,  -730,  -730,   827,  -723,   629,   829,
+   626,   625,   624,   840,   627,   841,   847,   848,  -730,  -730,
+  -284,  -730,   862,  -730,   520,   629,   520,   626,   625,   624,
+  -730,   627,   237,   879,  -730,   880,   896,  -623,  -116,     8,
+    87,    88,    89,    12,    80,   899,   831,   278,    81,    82,
+   909,   911,  -724,    85,  -730,    83,    84,    86,    33,    34,
+    78,    79,   535,   831,   537,   766,   237,    90,    31,    30,
+   120,   119,   121,   122,   258,   629,    22,   626,   625,   624,
+   285,   627,    11,    51,    10,    13,   124,   123,   125,   114,
+    62,   116,   115,   117,   285,   118,   126,   127,   766,   110,
+   111,   258,    47,    48,    46,  -626,   255,  -730,   935,   774,
+   257,   256,  -626,   831,  -730,   774,   237,  -724,   237,  -726,
+   774,  -626,   835,  -730,    43,   237,   979,    36,   258,   980,
+    64,    65,   237,   989,    66,  -285,    38,   237,   994,  -724,
+    50,  -730,   728,   998,   268,   269,   984,   985,    23,  1019,
+   986,   126,   127,   107,    97,    99,   100,   101,   103,  1039,
+   255,   237,    98,   108,   257,   256,   253,   254,   766,  -626,
+    91,  -730,  -283,    95,   102,   104,  1045,   112,   113,   774,
+   774,    44,    45,   314,    87,    88,    89,    12,    80,   774,
+   774,   774,    81,    82,   237,  1066,   237,    85,  1072,    83,
+    84,    86,    33,    34,    78,    79,   250,   237,   821,   839,
+  1075,    90,    31,    30,   120,   119,   121,   122,  1077,  1146,
+    22,   626,   625,   624,  1079,   627,    11,    51,   316,    13,
+   124,   123,   125,   114,    62,   116,   115,   117,  1081,   118,
+   126,   127,  1081,   110,   111,   237,    47,    48,    46,   258,
+   262,   263,   264,   265,   275,   276,   270,   271,   266,   267,
+  1088,   251,   252,  -286,  1089,   268,   269,  1090,    43,  1094,
+  1097,   318,   237,   237,    64,    65,   237,   237,    66,  1106,
+    38,   255,   821,   261,    50,   257,   256,   253,   254,   274,
+   273,   259,    23,   260,   821,  1110,  1113,   107,    97,    99,
+   100,   101,   103,  1115,  1117,   237,    98,   108,  1119,   272,
+   812,  1142,  1143,  1152,    91,  1153,   879,    95,   102,   104,
+  1154,   112,   113,  1157,   879,    44,    45,   314,    87,    88,
+    89,    12,    80,  1172,  1175,   921,    81,    82,  1181,   774,
+   237,    85,  1196,    83,    84,    86,    33,    34,    78,    79,
+   135,   136,   137,   138,   139,    90,    31,    30,   120,   119,
+   121,   122,  1081,  1081,    22,  1081,  1202,  1205,   821,   682,
+    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
+   115,   117,  1207,   118,   126,   127,  1209,   110,   111,  1211,
+    47,    48,    46,   258,   262,   263,   264,   265,   275,   276,
+   270,   271,   266,   267,  1213,   251,   252,  1213,   771,   268,
+   269,   774,    43,  1153,  1205,    36,  1205,  -727,    64,    65,
+  -726,   237,    66,  1081,    38,   255,  1205,   261,    50,   257,
+   256,   253,   254,   274,   273,   259,    23,   260,  1240,  1213,
+  1213,   107,    97,    99,   100,   101,   103,  1213,  1213,   nil,
+    98,   108,   nil,   272,   nil,  -256,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   135,   136,   137,   138,   139,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   682,    11,    51,   316,    13,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   258,   262,   263,
+   264,   265,   275,   276,   270,   271,   266,   267,   nil,   251,
+   252,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
+   nil,   261,    50,   257,   256,   253,   254,   274,   273,   259,
+    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   272,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   135,   136,
+   137,   138,   139,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,
+   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   258,   262,   263,   264,   265,   275,   276,   270,   271,
+   266,   267,   nil,   251,   252,   nil,   nil,   268,   269,   nil,
+    43,   nil,   nil,   318,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,    38,   255,   nil,   261,    50,   257,   256,   253,
+   254,   274,   273,   259,    23,   260,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   272,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
+    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   258,   262,   263,   264,   265,
+   275,   276,   270,   271,   266,   267,   nil,   251,   252,   nil,
+   nil,   268,   269,   nil,    43,   nil,   nil,   318,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
+    50,   257,   256,   253,   254,   274,   273,   259,    23,   260,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   237,   272,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,   314,    87,    88,    89,    12,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   316,    13,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   258,
+   262,   263,   264,   265,   275,   276,   270,   271,   266,   267,
+   nil,   251,   252,   nil,   nil,   268,   269,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+    38,   255,   nil,   261,    50,   257,   256,   253,   254,   274,
+   273,   259,    23,   260,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   272,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,   314,    87,    88,
+    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   258,   262,   263,   264,   265,   275,   276,
+   270,   271,   266,   267,   nil,   251,   252,   nil,   nil,   268,
+   269,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,    38,   255,   nil,   261,    50,   257,
+   256,   253,   254,   274,   273,   259,    23,   260,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   272,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   258,   262,   263,
+   264,   265,   275,   276,   270,   271,   266,   267,   nil,   251,
+   252,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
+   nil,   261,    50,   257,   256,   253,   254,   274,   273,   259,
+    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   272,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   629,    22,   626,   625,   624,   nil,   627,    11,    51,
+   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   629,   nil,   626,   625,   624,   nil,   627,   nil,   831,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   835,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,    38,   nil,   nil,   nil,    50,   nil,   nil,   831,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
+    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   258,   262,   263,   264,   265,
+   275,   276,   270,   271,   266,   267,   nil,  -754,  -754,   nil,
+   nil,   268,   269,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
+    50,   257,   256,   253,   254,   274,   273,   259,    23,   260,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,   314,    87,    88,    89,    12,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   316,    13,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   258,
+   262,   263,   264,   265,   275,   276,   270,   271,   266,   267,
+   nil,  -754,  -754,   nil,   nil,   268,   269,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+    38,   255,   nil,   261,    50,   257,   256,   253,   254,   274,
+   273,   259,    23,   260,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,     8,    87,    88,
+    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    51,    10,    13,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   258,   262,   263,   264,   265,   275,   276,
+   270,   271,   266,   267,   nil,  -754,  -754,   nil,   nil,   268,
+   269,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,    38,   255,   nil,   261,    50,   257,
+   256,   253,   254,   274,   273,   259,    23,   260,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   258,   262,   263,
+   264,   265,   275,   276,   270,   271,   266,   267,   nil,  -754,
+  -754,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
+   nil,   261,    50,   257,   256,   253,   254,   274,   273,   259,
+    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,
+   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   258,  -754,  -754,  -754,  -754,   275,   276,   nil,   nil,
+  -754,  -754,   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,    38,   255,   nil,   261,    50,   257,   256,   253,
+   254,   274,   273,   259,    23,   260,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
+    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   258,  -754,  -754,  -754,  -754,
+   275,   276,   nil,   nil,  -754,  -754,   nil,   nil,   nil,   nil,
+   nil,   268,   269,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
+    50,   257,   256,   253,   254,   274,   273,   259,    23,   260,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,   314,    87,    88,    89,    12,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   316,    13,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   258,
+  -754,  -754,  -754,  -754,   275,   276,   nil,   nil,  -754,  -754,
+   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+    38,   255,   nil,   261,    50,   257,   256,   253,   254,   274,
+   273,   259,    23,   260,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,   314,    87,    88,
+    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   258,  -754,  -754,  -754,  -754,   275,   276,
+   nil,   nil,  -754,  -754,   nil,   nil,   nil,   nil,   nil,   268,
+   269,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,    38,   255,   nil,   261,    50,   257,
+   256,   253,   254,   274,   273,   259,    23,   260,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   258,  -754,  -754,
+  -754,  -754,   275,   276,   nil,   nil,  -754,  -754,   nil,   nil,
+   nil,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
+   nil,   261,    50,   257,   256,   253,   254,   274,   273,   259,
+    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,
+   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   258,  -754,  -754,  -754,  -754,   275,   276,   nil,   nil,
+  -754,  -754,   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,    38,   255,   nil,   261,    50,   257,   256,   253,
+   254,   274,   273,   259,    23,   260,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
+    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   258,   262,   263,   264,   265,
+   275,   276,   nil,   nil,   266,   267,   nil,   nil,   nil,   nil,
+   nil,   268,   269,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
+    50,   257,   256,   253,   254,   274,   273,   259,    23,   260,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,   314,    87,    88,    89,    12,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   316,    13,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   258,
+   262,   263,   264,   265,   275,   276,   270,   nil,   266,   267,
+   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+    38,   255,   nil,   261,    50,   257,   256,   253,   254,   274,
+   273,   259,    23,   260,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,   314,    87,    88,
+    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   258,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   268,
+   269,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,    38,   255,   nil,   261,    50,   257,
+   256,   253,   254,   nil,   nil,   259,    23,   260,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   258,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   268,   269,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   255,
+   nil,   261,    50,   257,   256,   253,   254,   nil,   nil,   259,
+    23,   260,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,
+   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   268,   269,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,    38,   255,   nil,   261,    50,   257,   256,   253,
+   254,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,   314,
+    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    51,   316,    13,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   258,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   268,   269,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,    38,   255,   nil,   261,
+    50,   257,   256,   253,   254,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,   314,    87,    88,    89,    12,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    51,   316,    13,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+    38,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,   314,    87,    88,
+    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    51,   316,    13,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,    38,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,   314,    87,    88,    89,    12,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,   314,    87,    88,    89,    12,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    51,
+   316,    13,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,    36,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,    38,   nil,   nil,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,
+   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    51,    10,    13,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,    38,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,  -445,   112,
+   113,   nil,   nil,    44,    45,  -445,  -445,  -445,   nil,   nil,
+  -445,  -445,  -445,   629,  -445,   626,   625,   624,   634,   627,
+   nil,   nil,  -445,  -445,  -445,  -445,   nil,   nil,   nil,   637,
+   nil,   nil,   nil,   nil,  -445,  -445,   nil,  -445,  -445,  -445,
+  -445,  -445,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   632,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   645,   644,   nil,  -445,  -445,  -445,  -445,  -445,
+  -445,  -445,  -445,  -445,  -445,  -445,  -445,  -445,  -445,   nil,
+   nil,  -445,  -445,  -445,   nil,   nil,  -445,   nil,   285,  -445,
+   nil,   nil,  -445,  -445,   nil,  -445,   638,  -445,   nil,  -445,
+   nil,  -445,  -445,  -445,  -445,  -445,  -445,  -445,   nil,  -445,
+  -445,  -445,   629,   nil,   626,   625,   624,   634,   627,   nil,
+   nil,   nil,   nil,   nil,  -445,  -445,   nil,  -445,   637,  -445,
+  -319,   nil,   nil,   nil,   nil,   nil,  -445,  -319,  -319,  -319,
+  -445,   nil,  -319,  -319,  -319,   nil,  -319,   nil,   nil,   nil,
+   632,   nil,   nil,   nil,  -319,   nil,  -319,  -319,   nil,   642,
+   641,   645,   644,   nil,   nil,   nil,  -319,  -319,   nil,  -319,
+  -319,  -319,  -319,  -319,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   638,   nil,  -319,  -319,  -319,
+  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,
+  -319,   nil,   nil,  -319,  -319,  -319,   nil,   nil,  -319,   nil,
+   295,  -319,   nil,   nil,  -319,  -319,   nil,  -319,   nil,  -319,
+   nil,  -319,   nil,  -319,  -319,  -319,  -319,  -319,  -319,  -319,
+   nil,  -319,   nil,  -319,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  -319,  -319,   nil,  -319,
+   nil,  -319,    87,    88,    89,   nil,    80,   nil,  -319,   nil,
+    81,    82,  -319,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   307,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   304,   nil,
+   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   307,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   304,   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   307,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   304,   nil,   302,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   107,   305,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   308,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
+   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
+   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
+   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,  -302,
+   112,   113,   nil,   nil,    44,    45,  -302,  -302,  -302,   nil,
+   nil,  -302,  -302,  -302,   629,  -302,   626,   625,   624,   634,
+   627,   nil,   nil,  -302,   nil,  -302,  -302,  -302,   nil,   nil,
+   637,   120,   119,   121,   122,  -302,  -302,   nil,  -302,  -302,
+  -302,  -302,  -302,   nil,   nil,   nil,   nil,   124,   123,   125,
+   nil,   nil,   632,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   110,   111,   nil,   645,   644,   337,  -302,  -302,  -302,  -302,
+  -302,  -302,  -302,  -302,  -302,  -302,  -302,  -302,  -302,  -302,
+   nil,   nil,  -302,  -302,  -302,   nil,   nil,  -302,   nil,   nil,
+  -302,   nil,   nil,  -302,  -302,   nil,  -302,   638,  -302,   nil,
+  -302,   nil,  -302,  -302,  -302,  -302,  -302,  -302,  -302,   nil,
+  -302,   nil,  -302,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,  -302,  -302,  -302,  -302,   nil,
+  -302,    91,  -302,   nil,    95,   102,   104,  -302,   112,   113,
+  -753,  -302,    87,    88,    89,    12,    80,  -753,  -753,  -753,
+    81,    82,  -753,  -753,  -753,    85,  -753,    83,    84,    86,
+    33,    34,    78,    79,  -753,  -753,  -753,  -753,   nil,    90,
+    31,    30,   120,   119,   121,   122,  -753,  -753,    22,  -753,
+  -753,  -753,  -753,  -753,    11,    51,   nil,    13,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,  -753,  -753,  -753,
+  -753,  -753,  -753,  -753,  -753,  -753,  -753,  -753,  -753,  -753,
+  -753,   nil,   nil,  -753,  -753,  -753,    43,   nil,  -753,    36,
+   285,  -753,    64,    65,  -753,  -753,    66,  -753,    38,  -753,
+   nil,  -753,    50,  -753,  -753,  -753,  -753,  -753,  -753,  -753,
+    23,  -753,  -753,  -753,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,  -753,  -753,   nil,  -753,
+   nil,  -753,    91,   nil,   nil,    95,   102,   104,  -753,   112,
+   113,   nil,  -753,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
+    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
+    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   132,   nil,   nil,   nil,   nil,
+   131,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,    12,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    51,    10,    13,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,    36,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+    38,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   425,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
+   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,    31,    30,   120,   119,   121,   122,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,
+   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    51,   nil,    13,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,    38,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   442,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   442,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
+    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
+    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   307,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   304,   nil,   302,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   107,   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,    31,    30,   120,   119,   121,   122,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   237,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
+   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
+   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
+   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
+   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
+   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
+   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
+    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
+    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   307,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   304,   nil,   302,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,   522,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   307,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   304,   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   307,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   304,   nil,   302,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   107,   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   237,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
+   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,    12,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    51,   nil,    13,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,    38,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   568,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
+   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
+   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   307,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   304,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   307,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
+   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,  -731,
+   112,   113,   nil,   nil,    44,    45,  -731,  -731,  -731,   nil,
+   nil,  -731,  -731,  -731,   629,  -731,   626,   625,   624,   634,
+   627,   nil,   nil,  -731,  -731,  -731,  -731,  -731,   nil,   nil,
+   637,   nil,   nil,   nil,   nil,  -731,  -731,   nil,  -731,  -731,
+  -731,  -731,  -731,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   632,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   642,   641,   645,   644,   nil,  -731,  -731,  -731,  -731,
+  -731,  -731,  -731,  -731,  -731,  -731,  -731,  -731,  -731,  -731,
+   nil,   nil,  -731,  -731,  -731,   nil,   nil,  -731,   nil,   nil,
+  -731,   nil,   nil,  -731,  -731,   nil,  -731,   638,  -731,   nil,
+  -731,   nil,  -731,  -731,  -731,  -731,  -731,  -731,  -731,   nil,
+  -731,  -731,  -731,   629,   nil,   626,   625,   624,   634,   627,
+   nil,   nil,   nil,   nil,   nil,  -731,  -731,  -731,  -731,   637,
+  -731,  -732,  -731,   nil,   nil,   nil,   nil,  -731,  -732,  -732,
+  -732,  -731,   nil,  -732,  -732,  -732,   nil,  -732,   nil,   nil,
+   nil,   632,   nil,   nil,   nil,  -732,  -732,  -732,  -732,  -732,
+   nil,   nil,   645,   644,   nil,   nil,   nil,  -732,  -732,   nil,
+  -732,  -732,  -732,  -732,  -732,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   638,   nil,  -732,  -732,
+  -732,  -732,  -732,  -732,  -732,  -732,  -732,  -732,  -732,  -732,
+  -732,  -732,   nil,   nil,  -732,  -732,  -732,   nil,   nil,  -732,
+   nil,   nil,  -732,   nil,   nil,  -732,  -732,   nil,  -732,   nil,
+  -732,   nil,  -732,   nil,  -732,  -732,  -732,  -732,  -732,  -732,
+  -732,   nil,  -732,  -732,  -732,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -732,  -732,  -732,
+  -732,   nil,  -732,   nil,  -732,   nil,    87,    88,    89,  -732,
+    80,   nil,   nil,  -732,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   307,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   304,   nil,   302,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
+   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,  -753,   112,   113,   nil,   nil,    44,    45,  -753,  -753,
+  -753,   nil,   nil,  -753,  -753,  -753,   nil,  -753,   120,   119,
+   121,   122,   nil,   nil,   nil,  -753,  -753,  -753,   nil,   nil,
+   nil,   nil,   nil,   nil,   124,   123,   125,  -753,  -753,   nil,
+  -753,  -753,  -753,  -753,  -753,   nil,   nil,   110,   111,   nil,
+   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   629,   nil,
+   626,   625,   624,   634,   627,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   637,   nil,   nil,   nil,   nil,  -753,
+   nil,   nil,   nil,   nil,   nil,   nil,  -753,   nil,   nil,   nil,
+   nil,   285,  -753,   nil,   nil,   nil,   632,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   645,   644,   nil,
+    98,   108,   nil,  -753,  -753,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,  -753,   nil,    87,
+    88,    89,  -753,    80,   nil,   nil,   nil,    81,    82,  -753,
+   nil,   638,    85,  -753,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   307,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   748,   nil,
+   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,   305,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   308,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   307,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
+    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
+    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,    11,    51,   316,    13,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,    38,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   425,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   307,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   304,   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
+   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,    31,    30,   120,   119,   121,   122,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   307,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   304,   nil,   302,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
+   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   307,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   304,   nil,   302,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,   305,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   308,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,    12,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    51,   nil,    13,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,    38,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
+   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
+   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   853,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   307,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   304,   nil,   302,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   107,   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,    12,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    51,   nil,    13,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,    36,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,    38,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   307,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   748,   nil,   302,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
+   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   307,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   302,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,   305,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   308,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,    33,    34,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,
+    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,
+    30,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   307,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   748,   nil,   302,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,   305,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   308,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,   522,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
+   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   442,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   307,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   748,   nil,   nil,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
+   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   307,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,   305,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   308,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   942,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,    31,    30,   120,   119,   121,   122,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
+   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
+   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,    33,    34,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,    31,    30,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
+   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+    33,    34,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+    31,    30,   120,   119,   121,   122,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,
+    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   124,   123,   125,   114,    62,   116,   115,   117,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,    47,    48,    46,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   307,   118,   126,   127,   nil,   110,   111,   nil,
+    47,    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   302,   nil,    50,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,
+   nil,   107,   305,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   308,    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,
+    45,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
+   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
+   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,
+    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,
+   nil,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+  1137,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,    44,    45,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,    33,    34,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,
+   122,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,    47,
+    48,    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,    33,    34,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,    31,    30,
+   120,   119,   121,   122,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,    47,    48,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   242,   nil,   nil,   248,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,    44,    45,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,    47,    48,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   242,   nil,   nil,
+   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   247,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,    44,    45,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,    33,    34,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,    31,    30,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   307,   118,   126,   127,   nil,   110,   111,   nil,    47,    48,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   242,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   304,   nil,   302,   nil,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   247,   nil,   nil,   nil,   nil,   107,
+   305,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   308,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,    44,    45,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,   331,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   629,
+   nil,   626,   625,   624,   634,   627,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   327,   nil,   637,   323,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   322,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   632,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   645,   644,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   638,    83,    84,    86,   333,   334,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,   331,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   629,   nil,
+   626,   625,   624,   634,   627,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   327,   nil,   637,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   632,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   645,   644,   nil,
+    98,   108,   nil,   nil,   nil,   339,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   638,    83,    84,    86,   333,   334,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+   331,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,   nil,
+   nil,   337,   nil,   nil,   nil,   nil,   nil,   629,   nil,   626,
+   625,   624,   634,   627,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   369,   nil,   637,    36,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   632,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   645,   644,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   638,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,   331,
+   nil,   nil,   124,   123,   125,   374,    62,   116,   115,   375,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,   nil,   nil,
+   337,   nil,   nil,   nil,   nil,   nil,   629,   nil,   626,   625,
+   624,   634,   627,   nil,   nil,   nil,   nil,   381,   nil,   nil,
+   376,   nil,   637,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   632,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   645,   644,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,    87,    88,    89,   nil,    80,
+   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   638,
+    83,    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,
+   nil,   nil,    90,   330,   336,   120,   119,   121,   122,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,
+   nil,   124,   123,   125,   374,    62,   116,   115,   375,   nil,
+   118,   126,   127,   nil,   110,   111,   nil,   nil,   nil,   337,
+   nil,   nil,   nil,   nil,   nil,   629,   nil,   626,   625,   624,
+   634,   627,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   376,
+   nil,   637,   248,   nil,   nil,    64,    65,   nil,   nil,    66,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   632,   nil,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   645,   644,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,    87,    88,    89,   nil,    80,   nil,
+   nil,   nil,    81,    82,   nil,   nil,   nil,    85,   638,    83,
+    84,    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,
+   nil,    90,   330,   336,   120,   119,   121,   122,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,
+   124,   123,   125,   114,    62,   116,   115,   117,   nil,   118,
+   126,   127,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,
+   nil,   nil,   nil,   nil,   629,   nil,   626,   625,   624,   634,
+   627,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,
+   637,   248,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   632,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   645,   644,   nil,    98,   108,   nil,   nil,
+   nil,   551,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,    87,    88,    89,   nil,    80,   nil,   nil,
+   nil,    81,    82,   nil,   nil,   nil,    85,   638,    83,    84,
+    86,   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,
+    90,   330,   336,   120,   119,   121,   122,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,   124,
+   123,   125,   114,    62,   116,   115,   117,   nil,   118,   126,
+   127,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,
+   323,   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,    87,    88,    89,   nil,    80,   nil,   nil,   nil,
+    81,    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,
+   333,   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,
+   330,   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,   124,   123,
+   125,   114,    62,   116,   115,   117,   nil,   118,   126,   127,
+   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,   323,
+   nil,   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,
+    82,   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,
+   334,    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,
+   336,   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,   331,   nil,   nil,   124,   123,   125,
+   114,    62,   116,   115,   117,   nil,   118,   126,   127,   nil,
+   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   327,   nil,   nil,   323,   nil,
+   nil,    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+    87,    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,
+   nil,   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,
+    78,    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,
+   120,   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   nil,   nil,   331,   nil,   nil,   124,   123,   125,   114,
+    62,   116,   115,   117,   nil,   118,   126,   127,   nil,   110,
+   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   327,   nil,   nil,   323,   nil,   nil,
+    64,    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,    87,
+    88,    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,
+   nil,   nil,    85,   nil,    83,    84,    86,   333,   334,    78,
+    79,   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,
+   119,   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,   331,   nil,   nil,   124,   123,   125,   114,    62,
+   116,   115,   117,   nil,   118,   126,   127,   nil,   110,   111,
+   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   327,   nil,   nil,   323,   nil,   nil,    64,
+    65,   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,    87,    88,
+    89,   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,
+   nil,    85,   nil,    83,    84,    86,   333,   334,    78,    79,
+   nil,   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,
+   121,   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,   331,   nil,   nil,   124,   123,   125,   114,    62,   116,
+   115,   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,
+   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1121,   nil,   nil,   248,   nil,   nil,    64,    65,
+   nil,   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   nil,    95,   102,   104,   nil,   112,   113,    87,    88,    89,
+   nil,    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,
+    85,   nil,    83,    84,    86,   333,   334,    78,    79,   nil,
+   nil,   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,
+   122,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,
+   331,   nil,   nil,   124,   123,   125,   114,    62,   116,   115,
+   117,   nil,   118,   126,   127,   nil,   110,   111,   nil,   nil,
+   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1128,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,
+   nil,    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,    87,    88,    89,   nil,
+    80,   nil,   nil,   nil,    81,    82,   nil,   nil,   nil,    85,
+   nil,    83,    84,    86,   333,   334,    78,    79,   nil,   nil,
+   nil,   nil,   nil,    90,   330,   336,   120,   119,   121,   122,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,   331,
+   nil,   nil,   124,   123,   125,   114,    62,   116,   115,   117,
+   nil,   118,   126,   127,   nil,   110,   111,   nil,   nil,   nil,
+   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1121,   nil,   nil,   248,   nil,   nil,    64,    65,   nil,   nil,
+    66,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   190,   201,   191,   214,   187,
+   207,   197,   196,   217,   218,   212,   195,   194,   189,   215,
+   219,   220,   199,   188,   202,   206,   208,   200,   193,   nil,
+   nil,   nil,   209,   216,   211,   210,   203,   213,   198,   186,
+   205,   204,   nil,   nil,   nil,   nil,   nil,   185,   192,   183,
+   184,   180,   181,   182,   143,   145,   142,   nil,   144,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   nil,
+   171,   153,   154,   155,   162,   159,   161,   nil,   nil,   156,
+   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   168,   167,   nil,   152,   174,   170,   169,   165,   166,
+   160,   158,   150,   173,   151,   nil,   nil,   179,   107,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   172,   190,   201,
+   191,   214,   187,   207,   197,   196,   217,   218,   212,   195,
+   194,   189,   215,   219,   220,   199,   188,   202,   206,   208,
+   200,   193,   nil,   nil,   nil,   209,   216,   211,   210,   203,
+   213,   198,   186,   205,   204,   nil,   nil,   nil,   nil,   nil,
+   185,   192,   183,   184,   180,   181,   182,   143,   145,   nil,
+   nil,   144,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   175,   176,   nil,   171,   153,   154,   155,   162,   159,   161,
+   nil,   nil,   156,   157,   nil,   nil,   nil,   177,   178,   163,
+   164,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,
+   169,   165,   166,   160,   158,   150,   173,   151,   nil,   nil,
+   179,   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   108,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   172,   190,   201,   191,   214,   187,   207,   197,   196,   217,
+   218,   212,   195,   194,   189,   215,   219,   220,   199,   188,
+   202,   206,   208,   200,   193,   nil,   nil,   nil,   209,   216,
+   211,   392,   391,   393,   390,   186,   205,   204,   nil,   nil,
+   nil,   nil,   nil,   185,   192,   183,   184,   387,   388,   389,
+   385,   145,   116,   115,   386,   nil,   118,   nil,   nil,   nil,
+   nil,   nil,   nil,   175,   176,   nil,   171,   153,   154,   155,
+   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,
+   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   397,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,
+   152,   174,   170,   169,   165,   166,   160,   158,   150,   173,
+   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   172,   190,   201,   191,   214,   187,   207,
+   197,   196,   217,   218,   212,   195,   194,   189,   215,   219,
+   220,   199,   188,   202,   206,   208,   200,   193,   nil,   nil,
+   nil,   209,   216,   211,   210,   203,   213,   198,   186,   205,
+   204,   nil,   nil,   nil,   nil,   nil,   185,   192,   183,   184,
+   180,   181,   182,   143,   145,   422,   421,   144,   nil,   423,
+   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   nil,   171,
+   153,   154,   155,   162,   159,   161,   nil,   nil,   156,   157,
+   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   168,   167,   nil,   152,   174,   170,   169,   165,   166,   160,
+   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   172,   190,   201,   191,
+   214,   187,   207,   197,   196,   217,   218,   212,   195,   194,
+   189,   215,   219,   220,   199,   188,   202,   206,   208,   200,
+   193,   nil,   nil,   nil,   209,   216,   211,   210,   203,   213,
+   198,   186,   205,   204,   nil,   nil,   nil,   nil,   nil,   185,
+   192,   183,   184,   180,   181,   182,   143,   145,   nil,   nil,
+   144,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,
+   176,   nil,   171,   153,   154,   155,   162,   159,   161,   nil,
+   nil,   156,   157,   nil,   nil,   nil,   177,   178,   163,   164,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,
+   165,   166,   160,   158,   150,   173,   151,   nil,   nil,   179,
+   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   172,
+   190,   201,   191,   214,   187,   207,   197,   196,   217,   218,
+   212,   195,   194,   189,   215,   219,   220,   199,   188,   202,
+   206,   208,   200,   193,   nil,   nil,   nil,   209,   216,   211,
+   210,   203,   213,   198,   186,   205,   204,   nil,   nil,   nil,
+   nil,   nil,   185,   192,   183,   184,   180,   181,   182,   143,
+   145,   nil,   nil,   144,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   175,   176,   nil,   171,   153,   154,   155,   162,
+   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,   177,
+   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,   152,
+   174,   170,   169,   165,   166,   160,   158,   150,   173,   151,
+   nil,   nil,   179,   107,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   172,   190,   201,   191,   214,   187,   207,   197,
+   196,   217,   218,   212,   195,   194,   189,   215,   219,   220,
+   199,   188,   202,   206,   208,   200,   193,   nil,   nil,   nil,
+   209,   216,   211,   210,   203,   213,   198,   186,   205,   204,
+   nil,   nil,   nil,   nil,   nil,   185,   192,   183,   184,   180,
+   181,   182,   143,   145,   nil,   nil,   144,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   175,   176,   nil,   171,   153,
+   154,   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,
+   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,
+   167,   nil,   152,   174,   170,   169,   165,   166,   160,   158,
+   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,
+   120,   119,   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   172,   124,   123,   125,   728,
+   nil,   nil,   nil,   731,   nil,   nil,   nil,   nil,   nil,   110,
+   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   730,   nil,   nil,   712,   nil,   nil,
+   nil,   710,   nil,   nil,   711,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   729,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,   716,   717,   120,   119,   121,   122,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,
+   123,   125,   728,   nil,   nil,   nil,   731,   nil,   nil,   nil,
+   nil,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   730,   nil,   nil,
+   712,   nil,   nil,   nil,   710,   nil,   nil,   711,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   729,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,   716,   717,   120,   119,   121,   122,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   124,   123,   125,   728,   nil,   nil,   nil,   731,
+  1012,   nil,   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,
+   337,   637,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   730,   nil,   nil,   712,   nil,   nil,   nil,   710,   nil,   nil,
+   711,   nil,  1006,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   729,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   638,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,   716,   717,   120,
+   119,   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   124,   123,   125,   728,   nil,
+   nil,   nil,   731,  1012,   nil,   nil,   nil,   nil,   110,   111,
+   nil,   nil,   nil,   337,   637,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   730,   nil,   nil,   712,   nil,   nil,   nil,
+   710,   nil,   nil,   711,   nil,  1006,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   638,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+   716,   717,   120,   119,   121,   122,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,   123,
+   125,   728,   nil,   nil,   nil,   731,   nil,   nil,   nil,   nil,
+   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   730,   nil,   nil,   712,
+   nil,   nil,   nil,   710,   nil,   nil,   711,   nil,  1006,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   729,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,   716,   717,   120,   119,   121,   122,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   124,   123,   125,   728,   nil,   nil,   nil,   731,   nil,
+   nil,   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,   337,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   730,
+   nil,   nil,   712,   nil,   nil,   nil,   710,   nil,   nil,   711,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   729,   nil,   nil,   nil,   107,    97,
+    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,
+   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,
+   104,   nil,   112,   113,   nil,   nil,   716,   717,   120,   119,
+   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   124,   123,   125,   728,   nil,   nil,
+   nil,   731,  1012,   nil,   nil,   nil,   nil,   110,   111,   nil,
+   nil,   nil,   337,   637,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   730,   nil,   nil,   712,   nil,   nil,   nil,   710,
+   nil,   nil,   711,   nil,  1006,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   638,    95,   102,   104,   nil,   112,   113,   nil,   nil,   716,
+   717,   120,   119,   121,   122,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,   123,   125,
+   728,   nil,   nil,   nil,   731,   nil,   nil,   nil,   nil,   nil,
+   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   730,   nil,   nil,   712,   nil,
+   nil,   nil,   710,   nil,   nil,   711,   nil,  1093,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   729,   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,
+   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,
+   nil,   nil,   716,   717,   120,   119,   121,   122,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   124,   123,   125,   728,   nil,   nil,   nil,   731,   nil,   nil,
+   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   730,   nil,
+   nil,   712,   nil,   nil,   nil,   710,   nil,   nil,   711,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   729,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   nil,   716,   717,   120,   119,   121,
+   122,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   124,   123,   125,   728,   nil,   nil,   nil,
+   731,   nil,   nil,   nil,   nil,   nil,   110,   111,   nil,   nil,
+   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   730,   nil,   nil,   712,   nil,   nil,   nil,   710,   nil,
+   nil,   711,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,   nil,   nil,
+   107,    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,
+   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,
+    95,   102,   104,   nil,   112,   113,   nil,   nil,   716,   717,
+   120,   119,   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   124,   123,   125,   728,
+   nil,   nil,   nil,   731,   nil,   nil,   nil,   nil,   nil,   110,
+   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   730,   nil,   nil,   712,   nil,   nil,
+   nil,   710,   nil,   nil,   711,   nil,  1006,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   729,
+   nil,   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,
+   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+    91,   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,
+   nil,   716,   717,   120,   119,   121,   122,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,
+   123,   125,   728,   nil,   nil,   nil,   731,   nil,   nil,   nil,
+   nil,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   730,   nil,   nil,
+   712,   nil,   nil,   nil,   710,   nil,   nil,   711,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   729,   nil,   nil,   nil,   107,    97,    99,   100,
+   101,   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,
+   112,   113,   nil,   nil,   716,   717,   120,   119,   121,   122,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   124,   123,   125,   728,   nil,   nil,   nil,   731,
+   nil,   nil,   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,
+   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   730,   nil,   nil,   712,   nil,   nil,   nil,   710,   nil,   nil,
+   711,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   729,   nil,   nil,   nil,   107,
+    97,    99,   100,   101,   103,   nil,   nil,   nil,    98,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,   nil,    95,
+   102,   104,   nil,   112,   113,   nil,   nil,   716,   717,   120,
+   119,   121,   122,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   124,   123,   125,   728,   nil,
+   nil,   nil,   731,   nil,   nil,   nil,   nil,   nil,   110,   111,
+   nil,   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   730,   nil,   nil,   712,   nil,   nil,   nil,
+   710,   nil,   nil,   711,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   729,   nil,
+   nil,   nil,   107,    97,    99,   100,   101,   103,   nil,   nil,
+   nil,    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,
+   nil,   nil,    95,   102,   104,   nil,   112,   113,   nil,   nil,
+   716,   717,   120,   119,   121,   122,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,   123,
+   125,   728,   nil,   nil,   nil,   731,   nil,   nil,   nil,   nil,
+   nil,   110,   111,   nil,   nil,   nil,   337,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   120,   119,   121,   122,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   730,   nil,   nil,   712,
+   124,   123,   125,   710,   nil,   nil,   711,   nil,   nil,   nil,
+   nil,   nil,   nil,   110,   111,   nil,   nil,   nil,   337,   nil,
+   nil,   729,   nil,   nil,   nil,   107,    97,    99,   100,   101,
+   103,   nil,   nil,   nil,    98,   108,   nil,   nil,   nil,   nil,
+   nil,   nil,    91,   nil,   nil,    95,   102,   104,   nil,   112,
+   113,   nil,   nil,   716,   717,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   107,    97,    99,
+   100,   101,   103,   nil,   nil,   nil,    98,   108,   120,   119,
+   121,   122,   nil,   nil,    91,   nil,   nil,    95,   102,   104,
+   nil,   112,   113,   nil,   124,   123,   125,   629,   nil,   626,
+   625,   624,   634,   627,   nil,   nil,   nil,   110,   111,   nil,
+   nil,   nil,   337,   637,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   632,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   642,   641,   645,   644,   nil,   nil,
+   nil,   629,   nil,   626,   625,   624,   634,   627,   nil,   nil,
+   nil,   107,    97,    99,   100,   101,   103,   637,   nil,   nil,
+    98,   108,   nil,   nil,   nil,   nil,   nil,   nil,    91,   nil,
+   638,    95,   102,   104,   nil,   112,   113,   nil,   nil,   632,
+   955,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   642,   641,
+   645,   644,   nil,   nil,   nil,   nil,   465,   469,   nil,   nil,
+   466,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,
+   176,   nil,   171,   153,   154,   155,   162,   159,   161,   nil,
+   nil,   156,   157,   nil,   638,   nil,   177,   178,   163,   164,
+   nil,   nil,   nil,   nil,   955,   285,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,
+   165,   166,   160,   158,   150,   173,   151,   nil,   nil,   179,
+   nil,   nil,   nil,   nil,   472,   476,   nil,   nil,   471,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   172,
+   171,   153,   154,   155,   162,   159,   161,   nil,   nil,   156,
+   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,
+   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   168,   167,   nil,   152,   174,   170,   169,   165,   166,
+   160,   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,
+   nil,   nil,   518,   469,   nil,   nil,   519,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   175,   176,   172,   171,   153,
+   154,   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,
+   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,
+   167,   nil,   152,   174,   170,   169,   165,   166,   160,   158,
+   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,
+   699,   469,   nil,   nil,   700,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   175,   176,   172,   171,   153,   154,   155,
+   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,
+   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   285,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,
+   152,   174,   170,   169,   165,   166,   160,   158,   150,   173,
+   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,   701,   476,
+   nil,   nil,   702,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   175,   176,   172,   171,   153,   154,   155,   162,   159,
+   161,   nil,   nil,   156,   157,   nil,   nil,   nil,   177,   178,
+   163,   164,   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,   152,   174,
+   170,   169,   165,   166,   160,   158,   150,   173,   151,   nil,
+   nil,   179,   nil,   nil,   nil,   nil,   759,   469,   nil,   nil,
+   760,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,
+   176,   172,   171,   153,   154,   155,   162,   159,   161,   nil,
+   nil,   156,   157,   nil,   nil,   nil,   177,   178,   163,   164,
+   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,
+   165,   166,   160,   158,   150,   173,   151,   nil,   nil,   179,
+   nil,   nil,   nil,   nil,   762,   476,   nil,   nil,   763,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   172,
+   171,   153,   154,   155,   162,   159,   161,   nil,   nil,   156,
+   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,
+   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   168,   167,   nil,   152,   174,   170,   169,   165,   166,
+   160,   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,
+   nil,   nil,   699,   469,   nil,   nil,   700,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   175,   176,   172,   171,   153,
+   154,   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,
+   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,
+   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,
+   167,   nil,   152,   174,   170,   169,   165,   166,   160,   158,
+   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,
+   701,   476,   nil,   nil,   702,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   175,   176,   172,   171,   153,   154,   155,
+   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,
+   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   285,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,
+   152,   174,   170,   169,   165,   166,   160,   158,   150,   173,
+   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,   798,   469,
+   nil,   nil,   799,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   175,   176,   172,   171,   153,   154,   155,   162,   159,
+   161,   nil,   nil,   156,   157,   nil,   nil,   nil,   177,   178,
+   163,   164,   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,   152,   174,
+   170,   169,   165,   166,   160,   158,   150,   173,   151,   nil,
+   nil,   179,   nil,   nil,   nil,   nil,   800,   476,   nil,   nil,
+   801,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,
+   176,   172,   171,   153,   154,   155,   162,   159,   161,   nil,
+   nil,   156,   157,   nil,   nil,   nil,   177,   178,   163,   164,
+   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,
+   165,   166,   160,   158,   150,   173,   151,   nil,   nil,   179,
+   nil,   nil,   nil,   nil,   803,   476,   nil,   nil,   804,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   172,
+   171,   153,   154,   155,   162,   159,   161,   nil,   nil,   156,
+   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,
+   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   168,   167,   nil,   152,   174,   170,   169,   165,   166,
+   160,   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,
+   nil,   nil,   518,   469,   nil,   nil,   519,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   175,   176,   172,   171,   153,
+   154,   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,
+   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,
+   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,
+   167,   nil,   152,   174,   170,   169,   165,   166,   160,   158,
+   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,
+   855,   469,   nil,   nil,   856,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   175,   176,   172,   171,   153,   154,   155,
+   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,   nil,
+   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,   285,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,
+   152,   174,   170,   169,   165,   166,   160,   158,   150,   173,
+   151,   nil,   nil,   179,   nil,   nil,   nil,   nil,   858,   476,
+   nil,   nil,   857,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   175,   176,   172,   171,   153,   154,   155,   162,   159,
+   161,   nil,   nil,   156,   157,   nil,   nil,   nil,   177,   178,
+   163,   164,   nil,   nil,   nil,   nil,   nil,   285,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   168,   167,   nil,   152,   174,
+   170,   169,   165,   166,   160,   158,   150,   173,   151,   nil,
+   629,   179,   626,   625,   624,   634,   627,   629,   nil,   626,
+   625,   624,   634,   627,   nil,   nil,   637,   nil,   nil,   nil,
+   nil,   172,   nil,   637,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   632,   nil,
+   nil,   nil,   nil,   nil,   nil,   632,   nil,   642,   641,   645,
+   644,   nil,   nil,   nil,   642,   641,   645,   644,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1217,   476,   nil,   nil,  1216,
+   nil,   nil,   nil,   638,   nil,   nil,   nil,   nil,   175,   176,
+   638,   171,   153,   154,   155,   162,   159,   161,   nil,   nil,
+   156,   157,   nil,   nil,   nil,   177,   178,   163,   164,   nil,
+   nil,   nil,   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   168,   167,   nil,   152,   174,   170,   169,   165,
+   166,   160,   158,   150,   173,   151,   nil,   nil,   179,   nil,
+   nil,   nil,   nil,  1220,   469,   nil,   nil,  1221,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   175,   176,   172,   171,
+   153,   154,   155,   162,   159,   161,   nil,   nil,   156,   157,
+   nil,   nil,   nil,   177,   178,   163,   164,   nil,   nil,   nil,
+   nil,   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   168,   167,   nil,   152,   174,   170,   169,   165,   166,   160,
+   158,   150,   173,   151,   nil,   nil,   179,   nil,   nil,   nil,
+   nil,  1222,   476,   nil,   nil,  1223,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   175,   176,   172,   171,   153,   154,
+   155,   162,   159,   161,   nil,   nil,   156,   157,   nil,   nil,
+   nil,   177,   178,   163,   164,   nil,   nil,   nil,   nil,   nil,
+   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   168,   167,
+   nil,   152,   174,   170,   169,   165,   166,   160,   158,   150,
+   173,   151,   nil,   629,   179,   626,   625,   624,   634,   627,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   637,
+   nil,   nil,   nil,   nil,   172,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   632,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   642,   641,   645,   644,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   638 ]
+
+racc_action_check = [
+   114,   413,   416,    67,   358,   366,   736,   114,   114,   114,
+   481,   481,   114,   114,   114,   759,   114,   367,  1006,   760,
+   359,  1044,   769,   769,   114,  1000,   114,   114,   114,   815,
+   815,   376,     1,   639,  1013,   376,   114,   114,    27,   114,
+   114,   114,   114,   114,   754,    27,   711,  1049,   370,   762,
+   595,   639,  1013,   798,   799,  1052,   730,  1054,     3,   711,
+   730,   754,   816,   916,   413,   416,  1000,   114,   114,   114,
+   114,   114,   114,   114,   114,   114,   114,   114,   114,   114,
+   114,   943,   759,   114,   114,   114,   760,   114,   114,   585,
+    67,   114,   944,   736,   114,   114,  1006,   114,  1054,   114,
+   481,   114,    27,   114,   114,   114,   114,   114,   114,   114,
+   366,   114,   769,   114,   888,   762,   762,   759,   358,   815,
+   759,   760,   367,   358,   760,   888,   114,   114,   114,   114,
+   916,   114,  1125,   114,   359,  1044,   117,   759,   114,   359,
+  1044,   760,   114,   117,   117,   117,   114,  1126,   117,   117,
+   117,   762,   117,   370,   762,   595,  1129,  1181,   798,   799,
+   117,  1049,   117,   117,   117,   916,  1049,   816,   916,  1052,
+  1220,   762,   117,   117,  1052,   117,   117,   117,   117,   117,
+  1221,  1222,  1093,  1235,    13,   916,   800,   801,   734,   585,
+    29,   240,   888,    94,   585,   943,    22,   944,   943,   241,
+   943,    94,   910,   117,   117,   117,   117,   117,   117,   117,
+   117,   117,   117,   117,   117,   117,   117,    15,   332,   117,
+   117,   117,   734,   117,   117,    46,    46,   117,   337,   337,
+   117,   117,    22,   117,   243,   117,   910,   117,    16,   117,
+   117,   117,   117,   117,   117,   117,  1125,   117,  1223,   117,
+   240,  1125,   800,   801,    18,    29,   539,  1097,   241,  1222,
+  1093,  1126,   117,   117,   117,   117,  1126,   117,  1097,   117,
+  1129,  1181,   471,    25,   117,  1129,  1181,    29,   117,   471,
+   471,   471,   117,   332,  1220,   471,   471,   818,   471,  1220,
+   710,   800,   801,   243,  1221,  1222,   471,  1235,   818,  1221,
+  1222,   449,  1235,    46,    46,   332,   337,   337,   471,   471,
+   487,   471,   471,   471,   471,   471,    40,   539,   539,   539,
+    19,   710,   385,   699,  1225,   658,  1223,    19,     5,   385,
+   700,   818,   818,     5,  1225,  1097,    19,   539,   855,   471,
+   471,   471,   471,   471,   471,   471,   471,   471,   471,   471,
+   471,   471,   471,   856,    20,   471,   471,   471,   661,   471,
+   449,  1106,  1223,   471,   878,   818,   471,  1223,   400,   487,
+   885,   471,  1106,   471,   885,   471,   471,   471,   471,   471,
+   471,   471,   699,   471,    19,   471,   658,   658,   398,   700,
+   398,   398,   398,   398,   398,   658,    20,   855,   471,   471,
+   991,   471,   709,   471,   398,  1106,  1106,   709,   472,   882,
+   471,   709,   856,    20,   471,   472,   472,   472,   471,   661,
+   661,   472,   472,   878,   472,    43,   398,   398,   661,   400,
+   400,   400,   472,   472,   386,   398,   398,   398,   398,  1106,
+   882,   386,   402,    51,   472,   472,    52,   472,   472,   472,
+   472,   472,   588,    52,   239,  1138,   101,  1138,   324,   991,
+   588,   239,    52,   404,    41,   324,   404,   142,    17,    17,
+   239,   398,   142,   142,   324,   472,   472,   472,   472,   472,
+   472,   472,   472,   472,   472,   472,   472,   472,   472,   102,
+   387,   472,   472,   472,   388,   472,    42,   387,   103,   472,
+   407,   388,   472,   402,   402,   402,    41,   472,   104,   472,
+    52,   472,   472,   472,   472,   472,   472,   472,   239,   472,
+   472,   472,   324,    41,   404,   404,   614,   140,   614,   614,
+   614,   614,   614,   325,   472,   472,   341,   472,    42,   472,
+   325,   410,   614,   311,   701,   418,   472,   221,   311,   325,
+   472,   701,   701,   701,   472,    42,   701,   701,   701,   389,
+   701,   407,   407,   407,   614,   242,   389,   244,   701,   701,
+   701,   701,   701,   614,   614,   614,   614,   245,   341,   249,
+   701,   701,   326,   701,   701,   701,   701,   701,   363,   326,
+    49,    49,   390,   363,   328,   341,   284,   325,   326,   390,
+   465,   328,   410,   410,   410,   299,   418,   418,   418,   614,
+   328,   701,   701,   701,   701,   701,   701,   701,   701,   701,
+   701,   701,   701,   701,   701,    49,    49,   701,   701,   701,
+   391,   701,   701,   392,   300,   701,   303,   391,   701,   701,
+   392,   701,   465,   701,   317,   701,   326,   701,   701,   701,
+   701,   701,   701,   701,   393,   701,   701,   701,   328,   465,
+   574,   393,   813,   574,   813,   813,   813,   813,   813,   342,
+   701,   701,   701,   701,   395,   701,   342,   701,   813,   319,
+   702,   395,   701,   320,   466,   342,   701,   702,   702,   702,
+   701,   770,   702,   702,   702,   321,   702,   770,   368,   575,
+   813,   327,   575,   330,   702,   368,   702,   702,   702,   813,
+   813,   813,   813,   331,   368,   336,   702,   702,   378,   702,
+   702,   702,   702,   702,   809,   378,   466,   948,   448,   809,
+   556,   683,   948,   342,   378,   448,   835,   556,   835,   835,
+   835,   338,   835,   466,   448,   813,   556,   702,   702,   702,
+   702,   702,   702,   702,   702,   702,   702,   702,   702,   702,
+   702,   956,   368,   702,   702,   702,   956,   702,   702,   579,
+   345,   702,   579,   683,   702,   702,   347,   702,   353,   702,
+   364,   702,   378,   702,   702,   702,   702,   702,   702,   702,
+   683,   702,   448,   702,   556,   365,   823,   369,   823,   823,
+   823,   823,   823,   598,   357,   357,   702,   702,   702,   702,
+   598,   702,   823,   702,   929,   371,   857,   929,   702,   598,
+   606,   606,   702,   857,   857,   857,   702,   380,  1020,   857,
+   857,  1020,   857,  1144,   823,   632,  1144,   632,   632,   632,
+   857,   632,   406,   823,   823,   823,   823,     9,     9,     9,
+     9,     9,   857,   857,   763,   857,   857,   857,   857,   857,
+   409,   763,   804,   412,  1120,   415,   763,   598,   438,   804,
+   763,  1120,   494,   632,   804,   713,   713,   440,   804,   823,
+  1120,   441,   632,   857,   857,   857,   857,   857,   857,   857,
+   857,   857,   857,   857,   857,   857,   857,   784,   784,   857,
+   857,   857,   443,   857,   494,   821,   821,   857,   494,   494,
+   857,  1053,  1053,  1182,  1182,   857,   446,   857,   763,   857,
+   857,   857,   857,   857,   857,   857,   804,   857,  1120,   857,
+   450,   460,   463,   464,   825,   473,   825,   825,   825,   825,
+   825,  1127,   857,   857,   483,   857,   496,   857,  1127,   497,
+   825,   498,   858,   499,   857,   515,   523,  1127,   857,   858,
+   858,   858,   857,   524,   509,   858,   858,  1072,   858,  1072,
+  1072,  1072,   825,  1072,   525,   510,   858,   858,   529,   545,
+   374,   825,   825,   825,   825,   546,   547,   550,   858,   858,
+  1173,   858,   858,   858,   858,   858,   509,  1173,   552,   557,
+   509,   509,   509,   509,   560,  1127,  1173,   510,   569,   570,
+   571,   510,   510,   510,   510,   576,   577,   825,   580,   858,
+   858,   858,   858,   858,   858,   858,   858,   858,   858,   858,
+   858,   858,   858,   374,   582,   858,   858,   858,   586,   858,
+   374,   587,   589,   858,   608,   374,   858,   616,   617,   374,
+   618,   858,   620,   858,  1173,   858,   858,   858,   858,   858,
+   858,   858,   621,   858,   858,   858,   622,   374,   980,   631,
+   980,   980,   980,   643,   980,   646,   665,   668,   858,   858,
+   675,   858,   684,   858,   689,  1152,   695,  1152,  1152,  1152,
+   858,  1152,   703,   704,   858,   706,   729,   374,   858,     2,
+     2,     2,     2,     2,     2,   732,   980,   735,     2,     2,
+   741,   743,   375,     2,   803,     2,     2,     2,     2,     2,
+     2,     2,   745,  1152,   747,   756,   758,     2,     2,     2,
+     2,     2,     2,     2,   495,   831,     2,   831,   831,   831,
+   761,   831,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,   764,     2,     2,     2,   765,     2,
+     2,   768,     2,     2,     2,   375,   495,   803,   786,   792,
+   495,   495,   375,   831,   803,   793,   797,   375,   806,   803,
+   810,   375,   831,   803,     2,   817,   833,     2,   502,   834,
+     2,     2,   836,   849,     2,   852,     2,   854,   863,   375,
+     2,   803,   879,   881,   502,   502,   842,   842,     2,   890,
+   842,   842,   842,     2,     2,     2,     2,     2,     2,   907,
+   502,   908,     2,     2,   502,   502,   502,   502,   915,   375,
+     2,   803,   925,     2,     2,     2,   926,     2,     2,   930,
+   936,     2,     2,    36,    36,    36,    36,    36,    36,   945,
+   947,   951,    36,    36,   952,   953,   954,    36,   962,    36,
+    36,    36,    36,    36,    36,    36,    24,   963,   964,   966,
+   969,    36,    36,    36,    36,    36,    36,    36,   970,  1195,
+    36,  1195,  1195,  1195,   972,  1195,    36,    36,    36,    36,
+    36,    36,    36,    36,    36,    36,    36,    36,   973,    36,
+    36,    36,   975,    36,    36,   978,    36,    36,    36,    24,
+    24,    24,    24,    24,    24,    24,    24,    24,    24,    24,
+   988,    24,    24,   990,  1001,    24,    24,  1002,    36,  1005,
+  1007,    36,  1014,  1015,    36,    36,  1017,  1018,    36,  1024,
+    36,    24,  1025,    24,    36,    24,    24,    24,    24,    24,
+    24,    24,    36,    24,  1026,  1028,  1029,    36,    36,    36,
+    36,    36,    36,  1030,  1032,  1033,    36,    36,  1034,    24,
+  1069,  1070,  1071,  1086,    36,  1087,  1091,    36,    36,    36,
+  1092,    36,    36,  1095,  1098,    36,    36,   223,   223,   223,
+   223,   223,   223,  1118,  1121,  1123,   223,   223,  1128,  1139,
+  1140,   223,  1148,   223,   223,   223,   223,   223,   223,   223,
+   315,   315,   315,   315,   315,   223,   223,   223,   223,   223,
+   223,   223,  1149,  1150,   223,  1151,  1155,  1158,  1163,   453,
+   223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
+   223,   223,  1166,   223,   223,   223,  1167,   223,   223,  1168,
+   223,   223,   223,   453,   453,   453,   453,   453,   453,   453,
+   453,   453,   453,   453,  1169,   453,   453,  1171,  1177,   453,
+   453,  1193,   223,  1201,  1203,   223,  1204,  1216,   223,   223,
+  1217,  1219,   223,  1228,   223,   453,  1229,   453,   223,   453,
+   453,   453,   453,   453,   453,   453,   223,   453,  1231,  1232,
+  1233,   223,   223,   223,   223,   223,   223,  1234,  1245,   nil,
+   223,   223,   nil,   453,   nil,   453,   nil,   nil,   223,   nil,
+   nil,   223,   223,   223,   nil,   223,   223,   nil,   nil,   223,
+   223,   248,   248,   248,   248,   248,   248,   nil,   nil,   nil,
+   248,   248,   nil,   nil,   nil,   248,   nil,   248,   248,   248,
+   248,   248,   248,   248,   352,   352,   352,   352,   352,   248,
+   248,   248,   248,   248,   248,   248,   nil,   nil,   248,   nil,
+   nil,   nil,   nil,   459,   248,   248,   248,   248,   248,   248,
+   248,   248,   248,   248,   248,   248,   nil,   248,   248,   248,
+   nil,   248,   248,   nil,   248,   248,   248,   459,   459,   459,
+   459,   459,   459,   459,   459,   459,   459,   459,   nil,   459,
+   459,   nil,   nil,   459,   459,   nil,   248,   nil,   nil,   248,
+   nil,   nil,   248,   248,   nil,   nil,   248,   nil,   248,   459,
+   nil,   459,   248,   459,   459,   459,   459,   459,   459,   459,
+   248,   459,   nil,   nil,   nil,   248,   248,   248,   248,   248,
+   248,   nil,   nil,   nil,   248,   248,   nil,   459,   nil,   nil,
+   nil,   nil,   248,   nil,   nil,   248,   248,   248,   nil,   248,
+   248,   nil,   nil,   248,   248,   318,   318,   318,   318,   318,
+   318,   nil,   nil,   nil,   318,   318,   nil,   nil,   nil,   318,
+   nil,   318,   318,   318,   318,   318,   318,   318,   544,   544,
+   544,   544,   544,   318,   318,   318,   318,   318,   318,   318,
+   nil,   nil,   318,   nil,   nil,   nil,   nil,   nil,   318,   318,
+   318,   318,   318,   318,   318,   318,   318,   318,   318,   318,
+   nil,   318,   318,   318,   nil,   318,   318,   nil,   318,   318,
+   318,   297,   297,   297,   297,   297,   297,   297,   297,   297,
+   297,   297,   nil,   297,   297,   nil,   nil,   297,   297,   nil,
+   318,   nil,   nil,   318,   nil,   nil,   318,   318,   nil,   nil,
+   318,   nil,   318,   297,   nil,   297,   318,   297,   297,   297,
+   297,   297,   297,   297,   318,   297,   nil,   nil,   nil,   318,
+   318,   318,   318,   318,   318,   nil,   nil,   nil,   318,   318,
+   nil,   297,   nil,   nil,   nil,   nil,   318,   nil,   nil,   318,
+   318,   318,   nil,   318,   318,   nil,   nil,   318,   318,   323,
+   323,   323,   323,   323,   323,   nil,   nil,   nil,   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,   323,   323,   323,   323,   323,   323,   323,   323,
+   323,   323,   323,   323,   nil,   323,   323,   323,   nil,   323,
+   323,   nil,   323,   323,   323,   513,   513,   513,   513,   513,
+   513,   513,   513,   513,   513,   513,   nil,   513,   513,   nil,
+   nil,   513,   513,   nil,   323,   nil,   nil,   323,   nil,   nil,
+   323,   323,   nil,   nil,   323,   nil,   323,   513,   nil,   513,
+   323,   513,   513,   513,   513,   513,   513,   513,   323,   513,
+   nil,   nil,   nil,   323,   323,   323,   323,   323,   323,   nil,
+   nil,   nil,   323,   323,   513,   513,   nil,   nil,   nil,   nil,
+   323,   nil,   nil,   323,   323,   323,   nil,   323,   323,   nil,
+   nil,   323,   323,   351,   351,   351,   351,   351,   351,   nil,
+   nil,   nil,   351,   351,   nil,   nil,   nil,   351,   nil,   351,
+   351,   351,   351,   351,   351,   351,   nil,   nil,   nil,   nil,
+   nil,   351,   351,   351,   351,   351,   351,   351,   nil,   nil,
+   351,   nil,   nil,   nil,   nil,   nil,   351,   351,   351,   351,
+   351,   351,   351,   351,   351,   351,   351,   351,   nil,   351,
+   351,   351,   nil,   351,   351,   nil,   351,   351,   351,   567,
+   567,   567,   567,   567,   567,   567,   567,   567,   567,   567,
+   nil,   567,   567,   nil,   nil,   567,   567,   nil,   351,   nil,
+   nil,   351,   nil,   nil,   351,   351,   nil,   nil,   351,   nil,
+   351,   567,   nil,   567,   351,   567,   567,   567,   567,   567,
+   567,   567,   351,   567,   nil,   nil,   nil,   351,   351,   351,
+   351,   351,   351,   nil,   nil,   nil,   351,   351,   nil,   567,
+   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,   351,   351,
+   nil,   351,   351,   nil,   nil,   351,   351,   361,   361,   361,
+   361,   361,   361,   nil,   nil,   nil,   361,   361,   nil,   nil,
+   nil,   361,   nil,   361,   361,   361,   361,   361,   361,   361,
+   nil,   nil,   nil,   nil,   nil,   361,   361,   361,   361,   361,
+   361,   361,   nil,   nil,   361,   nil,   nil,   nil,   nil,   nil,
+   361,   361,   361,   361,   361,   361,   361,   361,   361,   361,
+   361,   361,   nil,   361,   361,   361,   nil,   361,   361,   nil,
+   361,   361,   361,   860,   860,   860,   860,   860,   860,   860,
+   860,   860,   860,   860,   nil,   860,   860,   nil,   nil,   860,
+   860,   nil,   361,   nil,   nil,   361,   nil,   nil,   361,   361,
+   nil,   nil,   361,   nil,   361,   860,   nil,   860,   361,   860,
+   860,   860,   860,   860,   860,   860,   361,   860,   nil,   nil,
+   nil,   361,   361,   361,   361,   361,   361,   nil,   nil,   nil,
+   361,   361,   nil,   860,   nil,   nil,   nil,   nil,   361,   nil,
+   nil,   361,   361,   361,   nil,   361,   361,   nil,   nil,   361,
+   361,   362,   362,   362,   362,   362,   362,   nil,   nil,   nil,
+   362,   362,   nil,   nil,   nil,   362,   nil,   362,   362,   362,
+   362,   362,   362,   362,   nil,   nil,   nil,   nil,   nil,   362,
+   362,   362,   362,   362,   362,   362,   nil,   nil,   362,   nil,
+   nil,   nil,   nil,   nil,   362,   362,   362,   362,   362,   362,
+   362,   362,   362,   362,   362,   362,   nil,   362,   362,   362,
+   nil,   362,   362,   nil,   362,   362,   362,  1023,  1023,  1023,
+  1023,  1023,  1023,  1023,  1023,  1023,  1023,  1023,   nil,  1023,
+  1023,   nil,   nil,  1023,  1023,   nil,   362,   nil,   nil,   362,
+   nil,   nil,   362,   362,   nil,   nil,   362,   nil,   362,  1023,
+   nil,  1023,   362,  1023,  1023,  1023,  1023,  1023,  1023,  1023,
+   362,  1023,   nil,   nil,   nil,   362,   362,   362,   362,   362,
+   362,   nil,   nil,   nil,   362,   362,   nil,  1023,   nil,   nil,
+   nil,   nil,   362,   nil,   nil,   362,   362,   362,   nil,   362,
+   362,   nil,   nil,   362,   362,   581,   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,   979,   581,   979,   979,   979,   nil,   979,   581,   581,
+   581,   581,   581,   581,   581,   581,   581,   581,   581,   581,
+   nil,   581,   581,   581,   nil,   581,   581,   nil,   581,   581,
+   581,  1153,   nil,  1153,  1153,  1153,   nil,  1153,   nil,   979,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   979,   nil,
+   581,   nil,   nil,   581,   nil,   nil,   581,   581,   nil,   nil,
+   581,   nil,   581,   nil,   nil,   nil,   581,   nil,   nil,  1153,
+   nil,   nil,   nil,   nil,   581,   nil,   nil,   nil,   nil,   581,
+   581,   581,   581,   581,   581,   nil,   nil,   nil,   581,   581,
+   nil,   nil,   nil,   nil,   nil,   nil,   581,   nil,   nil,   581,
+   581,   581,   nil,   581,   581,   nil,   nil,   581,   581,   584,
+   584,   584,   584,   584,   584,   nil,   nil,   nil,   584,   584,
+   nil,   nil,   nil,   584,   nil,   584,   584,   584,   584,   584,
+   584,   584,   nil,   nil,   nil,   nil,   nil,   584,   584,   584,
+   584,   584,   584,   584,   nil,   nil,   584,   nil,   nil,   nil,
+   nil,   nil,   584,   584,   584,   584,   584,   584,   584,   584,
+   584,   584,   584,   584,   nil,   584,   584,   584,   nil,   584,
+   584,   nil,   584,   584,   584,   343,   343,   343,   343,   343,
+   343,   343,   343,   343,   343,   343,   nil,   343,   343,   nil,
+   nil,   343,   343,   nil,   584,   nil,   nil,   584,   nil,   nil,
+   584,   584,   nil,   nil,   584,   nil,   584,   343,   nil,   343,
+   584,   343,   343,   343,   343,   343,   343,   343,   584,   343,
+   nil,   nil,   nil,   584,   584,   584,   584,   584,   584,   nil,
+   nil,   nil,   584,   584,   nil,   nil,   nil,   nil,   nil,   nil,
+   584,   nil,   nil,   584,   584,   584,   nil,   584,   584,   nil,
+   nil,   584,   584,   607,   607,   607,   607,   607,   607,   nil,
+   nil,   nil,   607,   607,   nil,   nil,   nil,   607,   nil,   607,
+   607,   607,   607,   607,   607,   607,   nil,   nil,   nil,   nil,
+   nil,   607,   607,   607,   607,   607,   607,   607,   nil,   nil,
+   607,   nil,   nil,   nil,   nil,   nil,   607,   607,   607,   607,
+   607,   607,   607,   607,   607,   607,   607,   607,   nil,   607,
+   607,   607,   nil,   607,   607,   nil,   607,   607,   607,   344,
+   344,   344,   344,   344,   344,   344,   344,   344,   344,   344,
+   nil,   344,   344,   nil,   nil,   344,   344,   nil,   607,   nil,
+   nil,   607,   nil,   nil,   607,   607,   nil,   nil,   607,   nil,
+   607,   344,   nil,   344,   607,   344,   344,   344,   344,   344,
+   344,   344,   607,   344,   nil,   nil,   nil,   607,   607,   607,
+   607,   607,   607,   nil,   nil,   nil,   607,   607,   nil,   nil,
+   nil,   nil,   nil,   nil,   607,   nil,   nil,   607,   607,   607,
+   nil,   607,   607,   nil,   nil,   607,   607,   670,   670,   670,
+   670,   670,   670,   nil,   nil,   nil,   670,   670,   nil,   nil,
+   nil,   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,
+   670,   670,   670,   670,   670,   670,   670,   670,   670,   670,
+   670,   670,   nil,   670,   670,   670,   nil,   670,   670,   nil,
+   670,   670,   670,   492,   492,   492,   492,   492,   492,   492,
+   492,   492,   492,   492,   nil,   492,   492,   nil,   nil,   492,
+   492,   nil,   670,   nil,   nil,   670,   nil,   nil,   670,   670,
+   nil,   nil,   670,   nil,   670,   492,   nil,   492,   670,   492,
+   492,   492,   492,   492,   492,   492,   670,   492,   nil,   nil,
+   nil,   670,   670,   670,   670,   670,   670,   nil,   nil,   nil,
+   670,   670,   nil,   nil,   nil,   nil,   nil,   nil,   670,   nil,
+   nil,   670,   670,   670,   nil,   670,   670,   nil,   nil,   670,
+   670,   802,   802,   802,   802,   802,   802,   nil,   nil,   nil,
+   802,   802,   nil,   nil,   nil,   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,   802,   802,   802,   802,   802,   802,
+   802,   802,   802,   802,   802,   802,   nil,   802,   802,   802,
+   nil,   802,   802,   nil,   802,   802,   802,   493,   493,   493,
+   493,   493,   493,   493,   493,   493,   493,   493,   nil,   493,
+   493,   nil,   nil,   493,   493,   nil,   802,   nil,   nil,   802,
+   nil,   nil,   802,   802,   nil,   nil,   802,   nil,   802,   493,
+   nil,   493,   802,   493,   493,   493,   493,   493,   493,   493,
+   802,   493,   nil,   nil,   nil,   802,   802,   802,   802,   802,
+   802,   nil,   nil,   nil,   802,   802,   nil,   nil,   nil,   nil,
+   nil,   nil,   802,   nil,   nil,   802,   802,   802,   nil,   802,
+   802,   nil,   nil,   802,   802,   807,   807,   807,   807,   807,
+   807,   nil,   nil,   nil,   807,   807,   nil,   nil,   nil,   807,
+   nil,   807,   807,   807,   807,   807,   807,   807,   nil,   nil,
+   nil,   nil,   nil,   807,   807,   807,   807,   807,   807,   807,
+   nil,   nil,   807,   nil,   nil,   nil,   nil,   nil,   807,   807,
+   807,   807,   807,   807,   807,   807,   807,   807,   807,   807,
+   nil,   807,   807,   807,   nil,   807,   807,   nil,   807,   807,
+   807,   503,   503,   503,   503,   503,   503,   503,   nil,   nil,
+   503,   503,   nil,   nil,   nil,   nil,   nil,   503,   503,   nil,
+   807,   nil,   nil,   807,   nil,   nil,   807,   807,   nil,   nil,
+   807,   nil,   807,   503,   nil,   503,   807,   503,   503,   503,
+   503,   503,   503,   503,   807,   503,   nil,   nil,   nil,   807,
+   807,   807,   807,   807,   807,   nil,   nil,   nil,   807,   807,
+   nil,   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,   807,
+   807,   807,   nil,   807,   807,   nil,   nil,   807,   807,   811,
+   811,   811,   811,   811,   811,   nil,   nil,   nil,   811,   811,
+   nil,   nil,   nil,   811,   nil,   811,   811,   811,   811,   811,
+   811,   811,   nil,   nil,   nil,   nil,   nil,   811,   811,   811,
+   811,   811,   811,   811,   nil,   nil,   811,   nil,   nil,   nil,
+   nil,   nil,   811,   811,   811,   811,   811,   811,   811,   811,
+   811,   811,   811,   811,   nil,   811,   811,   811,   nil,   811,
+   811,   nil,   811,   811,   811,   504,   504,   504,   504,   504,
+   504,   504,   nil,   nil,   504,   504,   nil,   nil,   nil,   nil,
+   nil,   504,   504,   nil,   811,   nil,   nil,   811,   nil,   nil,
+   811,   811,   nil,   nil,   811,   nil,   811,   504,   nil,   504,
+   811,   504,   504,   504,   504,   504,   504,   504,   811,   504,
+   nil,   nil,   nil,   811,   811,   811,   811,   811,   811,   nil,
+   nil,   nil,   811,   811,   nil,   nil,   nil,   nil,   nil,   nil,
+   811,   nil,   nil,   811,   811,   811,   nil,   811,   811,   nil,
+   nil,   811,   811,   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,   505,
+   505,   505,   505,   505,   505,   505,   nil,   nil,   505,   505,
+   nil,   nil,   nil,   nil,   nil,   505,   505,   nil,   843,   nil,
+   nil,   843,   nil,   nil,   843,   843,   nil,   nil,   843,   nil,
+   843,   505,   nil,   505,   843,   505,   505,   505,   505,   505,
+   505,   505,   843,   505,   nil,   nil,   nil,   843,   843,   843,
+   843,   843,   843,   nil,   nil,   nil,   843,   843,   nil,   nil,
+   nil,   nil,   nil,   nil,   843,   nil,   nil,   843,   843,   843,
+   nil,   843,   843,   nil,   nil,   843,   843,   904,   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,   904,   904,   904,   904,   904,   904,   904,   904,
+   904,   904,   nil,   904,   904,   904,   nil,   904,   904,   nil,
+   904,   904,   904,   506,   506,   506,   506,   506,   506,   506,
+   nil,   nil,   506,   506,   nil,   nil,   nil,   nil,   nil,   506,
+   506,   nil,   904,   nil,   nil,   904,   nil,   nil,   904,   904,
+   nil,   nil,   904,   nil,   904,   506,   nil,   506,   904,   506,
+   506,   506,   506,   506,   506,   506,   904,   506,   nil,   nil,
+   nil,   904,   904,   904,   904,   904,   904,   nil,   nil,   nil,
+   904,   904,   nil,   nil,   nil,   nil,   nil,   nil,   904,   nil,
+   nil,   904,   904,   904,   nil,   904,   904,   nil,   nil,   904,
+   904,   923,   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,   923,   923,   923,   923,
+   923,   923,   923,   923,   923,   923,   nil,   923,   923,   923,
+   nil,   923,   923,   nil,   923,   923,   923,   507,   507,   507,
+   507,   507,   507,   507,   nil,   nil,   507,   507,   nil,   nil,
+   nil,   nil,   nil,   507,   507,   nil,   923,   nil,   nil,   923,
+   nil,   nil,   923,   923,   nil,   nil,   923,   nil,   923,   507,
+   nil,   507,   923,   507,   507,   507,   507,   507,   507,   507,
+   923,   507,   nil,   nil,   nil,   923,   923,   923,   923,   923,
+   923,   nil,   nil,   nil,   923,   923,   nil,   nil,   nil,   nil,
+   nil,   nil,   923,   nil,   nil,   923,   923,   923,   nil,   923,
+   923,   nil,   nil,   923,   923,   935,   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,
+   935,   935,   935,   935,   935,   935,   935,   935,   935,   935,
+   nil,   935,   935,   935,   nil,   935,   935,   nil,   935,   935,
+   935,   508,   508,   508,   508,   508,   508,   508,   nil,   nil,
+   508,   508,   nil,   nil,   nil,   nil,   nil,   508,   508,   nil,
+   935,   nil,   nil,   935,   nil,   nil,   935,   935,   nil,   nil,
+   935,   nil,   935,   508,   nil,   508,   935,   508,   508,   508,
+   508,   508,   508,   508,   935,   508,   nil,   nil,   nil,   935,
+   935,   935,   935,   935,   935,   nil,   nil,   nil,   935,   935,
+   nil,   nil,   nil,   nil,   nil,   nil,   935,   nil,   nil,   935,
+   935,   935,   nil,   935,   935,   nil,   nil,   935,   935,   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,   511,   511,   511,   511,   511,
+   511,   511,   nil,   nil,   511,   511,   nil,   nil,   nil,   nil,
+   nil,   511,   511,   nil,   960,   nil,   nil,   960,   nil,   nil,
+   960,   960,   nil,   nil,   960,   nil,   960,   511,   nil,   511,
+   960,   511,   511,   511,   511,   511,   511,   511,   960,   511,
+   nil,   nil,   nil,   960,   960,   960,   960,   960,   960,   nil,
+   nil,   nil,   960,   960,   nil,   nil,   nil,   nil,   nil,   nil,
+   960,   nil,   nil,   960,   960,   960,   nil,   960,   960,   nil,
+   nil,   960,   960,   961,   961,   961,   961,   961,   961,   nil,
+   nil,   nil,   961,   961,   nil,   nil,   nil,   961,   nil,   961,
+   961,   961,   961,   961,   961,   961,   nil,   nil,   nil,   nil,
+   nil,   961,   961,   961,   961,   961,   961,   961,   nil,   nil,
+   961,   nil,   nil,   nil,   nil,   nil,   961,   961,   961,   961,
+   961,   961,   961,   961,   961,   961,   961,   961,   nil,   961,
+   961,   961,   nil,   961,   961,   nil,   961,   961,   961,   512,
+   512,   512,   512,   512,   512,   512,   512,   nil,   512,   512,
+   nil,   nil,   nil,   nil,   nil,   512,   512,   nil,   961,   nil,
+   nil,   961,   nil,   nil,   961,   961,   nil,   nil,   961,   nil,
+   961,   512,   nil,   512,   961,   512,   512,   512,   512,   512,
+   512,   512,   961,   512,   nil,   nil,   nil,   961,   961,   961,
+   961,   961,   961,   nil,   nil,   nil,   961,   961,   nil,   nil,
+   nil,   nil,   nil,   nil,   961,   nil,   nil,   961,   961,   961,
+   nil,   961,   961,   nil,   nil,   961,   961,  1041,  1041,  1041,
+  1041,  1041,  1041,   nil,   nil,   nil,  1041,  1041,   nil,   nil,
+   nil,  1041,   nil,  1041,  1041,  1041,  1041,  1041,  1041,  1041,
+   nil,   nil,   nil,   nil,   nil,  1041,  1041,  1041,  1041,  1041,
+  1041,  1041,   nil,   nil,  1041,   nil,   nil,   nil,   nil,   nil,
+  1041,  1041,  1041,  1041,  1041,  1041,  1041,  1041,  1041,  1041,
+  1041,  1041,   nil,  1041,  1041,  1041,   nil,  1041,  1041,   nil,
+  1041,  1041,  1041,   514,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   514,
+   514,   nil,  1041,   nil,   nil,  1041,   nil,   nil,  1041,  1041,
+   nil,   nil,  1041,   nil,  1041,   514,   nil,   514,  1041,   514,
+   514,   514,   514,   nil,   nil,   514,  1041,   514,   nil,   nil,
+   nil,  1041,  1041,  1041,  1041,  1041,  1041,   nil,   nil,   nil,
+  1041,  1041,   nil,   nil,   nil,   nil,   nil,   nil,  1041,   nil,
+   nil,  1041,  1041,  1041,   nil,  1041,  1041,   nil,   nil,  1041,
+  1041,  1042,  1042,  1042,  1042,  1042,  1042,   nil,   nil,   nil,
+  1042,  1042,   nil,   nil,   nil,  1042,   nil,  1042,  1042,  1042,
+  1042,  1042,  1042,  1042,   nil,   nil,   nil,   nil,   nil,  1042,
+  1042,  1042,  1042,  1042,  1042,  1042,   nil,   nil,  1042,   nil,
+   nil,   nil,   nil,   nil,  1042,  1042,  1042,  1042,  1042,  1042,
+  1042,  1042,  1042,  1042,  1042,  1042,   nil,  1042,  1042,  1042,
+   nil,  1042,  1042,   nil,  1042,  1042,  1042,   566,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   566,   566,   nil,  1042,   nil,   nil,  1042,
+   nil,   nil,  1042,  1042,   nil,   nil,  1042,   nil,  1042,   566,
+   nil,   566,  1042,   566,   566,   566,   566,   nil,   nil,   566,
+  1042,   566,   nil,   nil,   nil,  1042,  1042,  1042,  1042,  1042,
+  1042,   nil,   nil,   nil,  1042,  1042,   nil,   nil,   nil,   nil,
+   nil,   nil,  1042,   nil,   nil,  1042,  1042,  1042,   nil,  1042,
+  1042,   nil,   nil,  1042,  1042,  1059,  1059,  1059,  1059,  1059,
+  1059,   nil,   nil,   nil,  1059,  1059,   nil,   nil,   nil,  1059,
+   nil,  1059,  1059,  1059,  1059,  1059,  1059,  1059,   nil,   nil,
+   nil,   nil,   nil,  1059,  1059,  1059,  1059,  1059,  1059,  1059,
+   nil,   nil,  1059,   nil,   nil,   nil,   nil,   nil,  1059,  1059,
+  1059,  1059,  1059,  1059,  1059,  1059,  1059,  1059,  1059,  1059,
+   nil,  1059,  1059,  1059,   nil,  1059,  1059,   nil,  1059,  1059,
+  1059,   500,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   500,   500,   nil,
+  1059,   nil,   nil,  1059,   nil,   nil,  1059,  1059,   nil,   nil,
+  1059,   nil,  1059,   500,   nil,   500,  1059,   500,   500,   500,
+   500,   nil,   nil,   nil,  1059,   nil,   nil,   nil,   nil,  1059,
+  1059,  1059,  1059,  1059,  1059,   nil,   nil,   nil,  1059,  1059,
+   nil,   nil,   nil,   nil,   nil,   nil,  1059,   nil,   nil,  1059,
+  1059,  1059,   nil,  1059,  1059,   nil,   nil,  1059,  1059,  1063,
+  1063,  1063,  1063,  1063,  1063,   nil,   nil,   nil,  1063,  1063,
+   nil,   nil,   nil,  1063,   nil,  1063,  1063,  1063,  1063,  1063,
+  1063,  1063,   nil,   nil,   nil,   nil,   nil,  1063,  1063,  1063,
+  1063,  1063,  1063,  1063,   nil,   nil,  1063,   nil,   nil,   nil,
+   nil,   nil,  1063,  1063,  1063,  1063,  1063,  1063,  1063,  1063,
+  1063,  1063,  1063,  1063,   nil,  1063,  1063,  1063,   nil,  1063,
+  1063,   nil,  1063,  1063,  1063,   501,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   501,   501,   nil,  1063,   nil,   nil,  1063,   nil,   nil,
+  1063,  1063,   nil,   nil,  1063,   nil,  1063,   501,   nil,   501,
+  1063,   501,   501,   501,   501,   nil,   nil,   nil,  1063,   nil,
+   nil,   nil,   nil,  1063,  1063,  1063,  1063,  1063,  1063,   nil,
+   nil,   nil,  1063,  1063,   nil,   nil,   nil,   nil,   nil,   nil,
+  1063,   nil,   nil,  1063,  1063,  1063,   nil,  1063,  1063,   nil,
+   nil,  1063,  1063,  1124,  1124,  1124,  1124,  1124,  1124,   nil,
+   nil,   nil,  1124,  1124,   nil,   nil,   nil,  1124,   nil,  1124,
+  1124,  1124,  1124,  1124,  1124,  1124,   nil,   nil,   nil,   nil,
+   nil,  1124,  1124,  1124,  1124,  1124,  1124,  1124,   nil,   nil,
+  1124,   nil,   nil,   nil,   nil,   nil,  1124,  1124,  1124,  1124,
+  1124,  1124,  1124,  1124,  1124,  1124,  1124,  1124,   nil,  1124,
+  1124,  1124,   nil,  1124,  1124,   nil,  1124,  1124,  1124,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1124,   nil,
+   nil,  1124,   nil,   nil,  1124,  1124,   nil,   nil,  1124,   nil,
+  1124,   nil,   nil,   nil,  1124,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1124,   nil,   nil,   nil,   nil,  1124,  1124,  1124,
+  1124,  1124,  1124,   nil,   nil,   nil,  1124,  1124,   nil,   nil,
+   nil,   nil,   nil,   nil,  1124,   nil,   nil,  1124,  1124,  1124,
+   nil,  1124,  1124,   nil,   nil,  1124,  1124,  1131,  1131,  1131,
+  1131,  1131,  1131,   nil,   nil,   nil,  1131,  1131,   nil,   nil,
+   nil,  1131,   nil,  1131,  1131,  1131,  1131,  1131,  1131,  1131,
+   nil,   nil,   nil,   nil,   nil,  1131,  1131,  1131,  1131,  1131,
+  1131,  1131,   nil,   nil,  1131,   nil,   nil,   nil,   nil,   nil,
+  1131,  1131,  1131,  1131,  1131,  1131,  1131,  1131,  1131,  1131,
+  1131,  1131,   nil,  1131,  1131,  1131,   nil,  1131,  1131,   nil,
+  1131,  1131,  1131,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1131,   nil,   nil,  1131,   nil,   nil,  1131,  1131,
+   nil,   nil,  1131,   nil,  1131,   nil,   nil,   nil,  1131,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1131,   nil,   nil,   nil,
+   nil,  1131,  1131,  1131,  1131,  1131,  1131,   nil,   nil,   nil,
+  1131,  1131,   nil,   nil,   nil,   nil,   nil,   nil,  1131,   nil,
+   nil,  1131,  1131,  1131,   nil,  1131,  1131,   nil,   nil,  1131,
+  1131,  1141,  1141,  1141,  1141,  1141,  1141,   nil,   nil,   nil,
+  1141,  1141,   nil,   nil,   nil,  1141,   nil,  1141,  1141,  1141,
+  1141,  1141,  1141,  1141,   nil,   nil,   nil,   nil,   nil,  1141,
+  1141,  1141,  1141,  1141,  1141,  1141,   nil,   nil,  1141,   nil,
+   nil,   nil,   nil,   nil,  1141,  1141,  1141,  1141,  1141,  1141,
+  1141,  1141,  1141,  1141,  1141,  1141,   nil,  1141,  1141,  1141,
+   nil,  1141,  1141,   nil,  1141,  1141,  1141,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1141,   nil,   nil,  1141,
+   nil,   nil,  1141,  1141,   nil,   nil,  1141,   nil,  1141,   nil,
+   nil,   nil,  1141,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1141,   nil,   nil,   nil,   nil,  1141,  1141,  1141,  1141,  1141,
+  1141,   nil,   nil,   nil,  1141,  1141,   nil,   nil,   nil,   nil,
+   nil,   nil,  1141,   nil,   nil,  1141,  1141,  1141,   nil,  1141,
+  1141,   nil,   nil,  1141,  1141,  1183,  1183,  1183,  1183,  1183,
+  1183,   nil,   nil,   nil,  1183,  1183,   nil,   nil,   nil,  1183,
+   nil,  1183,  1183,  1183,  1183,  1183,  1183,  1183,   nil,   nil,
+   nil,   nil,   nil,  1183,  1183,  1183,  1183,  1183,  1183,  1183,
+   nil,   nil,  1183,   nil,   nil,   nil,   nil,   nil,  1183,  1183,
+  1183,  1183,  1183,  1183,  1183,  1183,  1183,  1183,  1183,  1183,
+   nil,  1183,  1183,  1183,   nil,  1183,  1183,   nil,  1183,  1183,
+  1183,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1183,   nil,   nil,  1183,   nil,   nil,  1183,  1183,   nil,   nil,
+  1183,   nil,  1183,   nil,   nil,   nil,  1183,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1183,   nil,   nil,   nil,   nil,  1183,
+  1183,  1183,  1183,  1183,  1183,   nil,   nil,   nil,  1183,  1183,
+   nil,   nil,   nil,   nil,   nil,   nil,  1183,   nil,   nil,  1183,
+  1183,  1183,   nil,  1183,  1183,   nil,   nil,  1183,  1183,     8,
+     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
+   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
+     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
+   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
+     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
+   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
+   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
+   nil,   nil,     8,     8,     8,   nil,     8,     8,   nil,   nil,
+     8,     8,    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,   nil,    23,
+    23,    23,    23,    23,    23,    23,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,    23,    23,
+    23,    23,    23,    23,    23,    23,   nil,    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,   nil,   nil,
+   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,    23,    23,    23,    30,    23,
+    23,   nil,   nil,    23,    23,    30,    30,    30,   nil,   nil,
+    30,    30,    30,   827,    30,   827,   827,   827,   827,   827,
+   nil,   nil,    30,    30,    30,    30,   nil,   nil,   nil,   827,
+   nil,   nil,   nil,   nil,    30,    30,   nil,    30,    30,    30,
+    30,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   827,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   827,   827,   nil,    30,    30,    30,    30,    30,
+    30,    30,    30,    30,    30,    30,    30,    30,    30,   nil,
+   nil,    30,    30,    30,   nil,   nil,    30,   nil,    30,    30,
+   nil,   nil,    30,    30,   nil,    30,   827,    30,   nil,    30,
+   nil,    30,    30,    30,    30,    30,    30,    30,   nil,    30,
+    30,    30,   902,   nil,   902,   902,   902,   902,   902,   nil,
+   nil,   nil,   nil,   nil,    30,    30,   nil,    30,   902,    30,
+    31,   nil,   nil,   nil,   nil,   nil,    30,    31,    31,    31,
+    30,   nil,    31,    31,    31,   nil,    31,   nil,   nil,   nil,
+   902,   nil,   nil,   nil,    31,   nil,    31,    31,   nil,   902,
+   902,   902,   902,   nil,   nil,   nil,    31,    31,   nil,    31,
+    31,    31,    31,    31,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   902,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   902,   nil,    31,    31,    31,
+    31,    31,    31,    31,    31,    31,    31,    31,    31,    31,
+    31,   nil,   nil,    31,    31,    31,   nil,   nil,    31,   nil,
+    31,    31,   nil,   nil,    31,    31,   nil,    31,   nil,    31,
+   nil,    31,   nil,    31,    31,    31,    31,    31,    31,    31,
+   nil,    31,   nil,    31,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    31,    31,   nil,    31,
+   nil,    31,    32,    32,    32,   nil,    32,   nil,    31,   nil,
+    32,    32,    31,   nil,   nil,    32,   nil,    32,    32,    32,
+    32,    32,    32,    32,   nil,   nil,   nil,   nil,   nil,    32,
+    32,    32,    32,    32,    32,    32,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,    32,    32,
+    32,    32,    32,    32,    32,    32,    32,    32,    32,    32,
+   nil,    32,    32,   nil,    32,    32,    32,   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,    32,    32,   nil,   nil,    32,   nil,    32,   nil,
+    32,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    32,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
+    32,   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,    32,    32,    32,    32,   nil,    32,
+    32,   nil,   nil,    32,    32,    33,    33,    33,   nil,    33,
+   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,    33,   nil,
+    33,    33,    33,    33,    33,    33,    33,   nil,   nil,   nil,
+   nil,   nil,    33,    33,    33,    33,    33,    33,    33,   nil,
+   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,
+   nil,    33,    33,    33,    33,    33,    33,    33,    33,    33,
+    33,    33,    33,   nil,    33,    33,   nil,    33,    33,    33,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,
+   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,    33,
+   nil,    33,   nil,    33,   nil,    33,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,    33,
+    33,    33,    33,    33,   nil,   nil,   nil,    33,    33,   nil,
+   nil,   nil,   nil,   nil,   nil,    33,   nil,    33,    33,    33,
+    33,   nil,    33,    33,   nil,   nil,    33,    33,    34,    34,
+    34,   nil,    34,   nil,   nil,   nil,    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,    34,    34,    34,    34,   nil,    34,    34,   nil,
+    34,    34,    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,    34,   nil,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
+   nil,    34,    34,    34,    34,    34,    34,   nil,   nil,   nil,
+    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
+    34,    34,    34,    34,   nil,    34,    34,   nil,   nil,    34,
+    34,    44,    44,    44,   nil,    44,   nil,   nil,   nil,    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,    44,
+   nil,   nil,   nil,   nil,    44,    44,    44,    44,    44,    44,
+   nil,   nil,   nil,    44,    44,   nil,   nil,   nil,   nil,   nil,
+   nil,    44,   nil,   nil,    44,    44,    44,   nil,    44,    44,
+   nil,   nil,    44,    44,    45,    45,    45,   nil,    45,   nil,
+   nil,   nil,    45,    45,   nil,   nil,   nil,    45,   nil,    45,
+    45,    45,    45,    45,    45,    45,   nil,   nil,   nil,   nil,
+   nil,    45,    45,    45,    45,    45,    45,    45,   nil,   nil,
+    45,   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,
+    45,    45,    45,    45,    45,    45,    45,    45,   nil,    45,
+    45,    45,   nil,    45,    45,   nil,    45,    45,    45,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,   nil,
+   nil,    45,   nil,   nil,    45,    45,   nil,   nil,    45,   nil,
+   nil,   nil,   nil,   nil,    45,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    45,   nil,   nil,   nil,   nil,    45,    45,    45,
+    45,    45,    45,   nil,   nil,   nil,    45,    45,   nil,   nil,
+   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,    45,
+   nil,    45,    45,   nil,   nil,    45,    45,    47,    47,    47,
+   nil,    47,   nil,   nil,   nil,    47,    47,   nil,   nil,   nil,
+    47,   nil,    47,    47,    47,    47,    47,    47,    47,   nil,
+   nil,   nil,   nil,   nil,    47,    47,    47,    47,    47,    47,
+    47,   nil,   nil,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+    47,   nil,   nil,    47,    47,    47,    47,    47,    47,    47,
+    47,   nil,    47,    47,    47,   nil,    47,    47,   nil,    47,
+    47,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    47,   nil,   nil,    47,   nil,   nil,    47,    47,   nil,
+   nil,    47,   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,   nil,   nil,
+    47,    47,    47,    47,    47,    47,   nil,   nil,   nil,    47,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,
+    47,    47,    47,   nil,    47,    47,   nil,   nil,    47,    47,
+    48,    48,    48,   nil,    48,   nil,   nil,   nil,    48,    48,
+   nil,   nil,   nil,    48,   nil,    48,    48,    48,    48,    48,
+    48,    48,   nil,   nil,   nil,   nil,   nil,    48,    48,    48,
+    48,    48,    48,    48,   nil,   nil,    48,   nil,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,    48,
+    48,    48,    48,    48,   nil,    48,    48,    48,   nil,    48,
+    48,   nil,    48,    48,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,   nil,   nil,
+    48,    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,   nil,
+   nil,   nil,    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,    48,    48,    48,   nil,    48,    48,   nil,
+   nil,    48,    48,    50,    50,    50,   nil,    50,   nil,   nil,
+   nil,    50,    50,   nil,   nil,   nil,    50,   nil,    50,    50,
+    50,    50,    50,    50,    50,   nil,   nil,   nil,   nil,   nil,
+    50,    50,    50,    50,    50,    50,    50,   nil,   nil,    50,
+   nil,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,    50,
+    50,    50,    50,    50,    50,    50,    50,   nil,    50,    50,
+    50,   nil,    50,    50,   nil,    50,    50,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+    50,   nil,   nil,    50,    50,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,    50,    50,    50,    50,
+    50,    50,   nil,   nil,   nil,    50,    50,   nil,   nil,   nil,
+   nil,   nil,   nil,    50,   nil,   nil,    50,    50,    50,    62,
+    50,    50,   nil,   nil,    50,    50,    62,    62,    62,   nil,
+   nil,    62,    62,    62,  1077,    62,  1077,  1077,  1077,  1077,
+  1077,   nil,   nil,    62,   nil,    62,    62,    62,   nil,   nil,
+  1077,   716,   716,   716,   716,    62,    62,   nil,    62,    62,
+    62,    62,    62,   nil,   nil,   nil,   nil,   716,   716,   716,
+   nil,   nil,  1077,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   716,   716,   nil,  1077,  1077,   716,    62,    62,    62,    62,
+    62,    62,    62,    62,    62,    62,    62,    62,    62,    62,
+   nil,   nil,    62,    62,    62,   nil,   nil,    62,   nil,   nil,
+    62,   nil,   nil,    62,    62,   nil,    62,  1077,    62,   nil,
+    62,   nil,    62,    62,    62,    62,    62,    62,    62,   nil,
+    62,   nil,    62,   nil,   716,   716,   716,   716,   716,   716,
+   nil,   nil,   nil,   716,   716,    62,    62,    62,    62,   nil,
+    62,   716,    62,   nil,   716,   716,   716,    62,   716,   716,
+   467,    62,    64,    64,    64,    64,    64,   467,   467,   467,
+    64,    64,   467,   467,   467,    64,   467,    64,    64,    64,
+    64,    64,    64,    64,   467,   467,   467,   467,   nil,    64,
+    64,    64,    64,    64,    64,    64,   467,   467,    64,   467,
+   467,   467,   467,   467,    64,    64,   nil,    64,    64,    64,
+    64,    64,    64,    64,    64,    64,   nil,    64,    64,    64,
+   nil,    64,    64,   nil,    64,    64,    64,   467,   467,   467,
+   467,   467,   467,   467,   467,   467,   467,   467,   467,   467,
+   467,   nil,   nil,   467,   467,   467,    64,   nil,   467,    64,
+   467,   467,    64,    64,   467,   467,    64,   467,    64,   467,
+   nil,   467,    64,   467,   467,   467,   467,   467,   467,   467,
+    64,   467,   467,   467,   nil,    64,    64,    64,    64,    64,
+    64,   nil,   nil,   nil,    64,    64,   467,   467,   nil,   467,
+   nil,   467,    64,   nil,   nil,    64,    64,    64,   467,    64,
+    64,   nil,   467,    64,    64,    69,    69,    69,   nil,    69,
+   nil,   nil,   nil,    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,    69,    69,    69,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    69,
+   nil,   nil,    69,   nil,   nil,    69,    69,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    69,   nil,   nil,   nil,   nil,    69,    69,
+    69,    69,    69,    69,   nil,   nil,   nil,    69,    69,   nil,
+   nil,   nil,   nil,   nil,   nil,    69,   nil,   nil,    69,    69,
+    69,   nil,    69,    69,   nil,   nil,    69,    69,    70,    70,
+    70,   nil,    70,   nil,   nil,   nil,    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,
+    70,    70,    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,   nil,   nil,   nil,   nil,    70,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    70,   nil,   nil,   nil,
+   nil,    70,    70,    70,    70,    70,    70,   nil,   nil,   nil,
+    70,    70,   nil,   nil,   nil,   nil,   nil,   nil,    70,   nil,
+   nil,    70,    70,    70,   nil,    70,    70,   nil,   nil,    70,
+    70,    73,    73,    73,   nil,    73,   nil,   nil,   nil,    73,
+    73,   nil,   nil,   nil,    73,   nil,    73,    73,    73,    73,
+    73,    73,    73,   nil,   nil,   nil,   nil,   nil,    73,    73,
+    73,    73,    73,    73,    73,   nil,   nil,    73,   nil,   nil,
+   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
+    73,    73,    73,    73,    73,   nil,    73,    73,    73,   nil,
+    73,    73,   nil,    73,    73,    73,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
+   nil,    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    73,
+   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,    73,
+   nil,   nil,   nil,    73,    73,    73,   nil,   nil,   nil,   nil,
+    73,    73,   nil,   nil,    73,    73,    73,   nil,    73,    73,
+   nil,   nil,    73,    73,   130,   130,   130,   130,   130,   nil,
+   nil,   nil,   130,   130,   nil,   nil,   nil,   130,   nil,   130,
+   130,   130,   130,   130,   130,   130,   nil,   nil,   nil,   nil,
+   nil,   130,   130,   130,   130,   130,   130,   130,   nil,   nil,
+   130,   nil,   nil,   nil,   nil,   nil,   130,   130,   130,   130,
+   130,   130,   130,   130,   130,   130,   130,   130,   nil,   130,
+   130,   130,   nil,   130,   130,   nil,   130,   130,   130,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   130,   nil,
+   nil,   130,   nil,   nil,   130,   130,   nil,   nil,   130,   nil,
+   130,   nil,   nil,   nil,   130,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   130,   nil,   nil,   nil,   nil,   130,   130,   130,
+   130,   130,   130,   nil,   nil,   nil,   130,   130,   nil,   nil,
+   nil,   nil,   nil,   130,   130,   nil,   nil,   130,   130,   130,
+   nil,   130,   130,   nil,   nil,   130,   130,   135,   135,   135,
+   nil,   135,   nil,   nil,   nil,   135,   135,   nil,   nil,   nil,
+   135,   nil,   135,   135,   135,   135,   135,   135,   135,   nil,
+   nil,   nil,   nil,   nil,   135,   135,   135,   135,   135,   135,
+   135,   nil,   nil,   135,   nil,   nil,   nil,   nil,   nil,   nil,
+   135,   nil,   nil,   135,   135,   135,   135,   135,   135,   135,
+   135,   nil,   135,   135,   135,   nil,   135,   135,   nil,   135,
+   135,   135,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   135,   nil,   nil,   135,   nil,   nil,   135,   135,   nil,
+   nil,   135,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,   nil,   nil,
+   135,   135,   135,   135,   135,   135,   nil,   nil,   nil,   135,
+   135,   nil,   nil,   nil,   nil,   nil,   nil,   135,   nil,   nil,
+   135,   135,   135,   nil,   135,   135,   nil,   nil,   135,   135,
+   136,   136,   136,   nil,   136,   nil,   nil,   nil,   136,   136,
+   nil,   nil,   nil,   136,   nil,   136,   136,   136,   136,   136,
+   136,   136,   nil,   nil,   nil,   nil,   nil,   136,   136,   136,
+   136,   136,   136,   136,   nil,   nil,   136,   nil,   nil,   nil,
+   nil,   nil,   nil,   136,   nil,   nil,   136,   136,   136,   136,
+   136,   136,   136,   136,   nil,   136,   136,   136,   nil,   136,
+   136,   nil,   136,   136,   136,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   136,   nil,   nil,   136,   nil,   nil,
+   136,   136,   nil,   nil,   136,   nil,   nil,   nil,   nil,   nil,
+   136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   136,   nil,
+   nil,   nil,   nil,   136,   136,   136,   136,   136,   136,   nil,
+   nil,   nil,   136,   136,   nil,   nil,   nil,   nil,   nil,   nil,
+   136,   nil,   nil,   136,   136,   136,   nil,   136,   136,   nil,
+   nil,   136,   136,   137,   137,   137,   nil,   137,   nil,   nil,
+   nil,   137,   137,   nil,   nil,   nil,   137,   nil,   137,   137,
+   137,   137,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,
+   137,   137,   137,   137,   137,   137,   137,   nil,   nil,   137,
+   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,   137,
+   137,   137,   137,   137,   137,   137,   137,   nil,   137,   137,
+   137,   nil,   137,   137,   nil,   137,   137,   137,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,   nil,
+   137,   nil,   nil,   137,   137,   nil,   nil,   137,   nil,   nil,
+   nil,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   137,   nil,   nil,   nil,   nil,   137,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   137,   137,   nil,   nil,   nil,
+   nil,   nil,   nil,   137,   nil,   nil,   137,   137,   137,   nil,
+   137,   137,   nil,   nil,   137,   137,   138,   138,   138,   nil,
+   138,   nil,   nil,   nil,   138,   138,   nil,   nil,   nil,   138,
+   nil,   138,   138,   138,   138,   138,   138,   138,   nil,   nil,
+   nil,   nil,   nil,   138,   138,   138,   138,   138,   138,   138,
+   nil,   nil,   138,   nil,   nil,   nil,   nil,   nil,   nil,   138,
+   nil,   nil,   138,   138,   138,   138,   138,   138,   138,   138,
+   nil,   138,   138,   138,   nil,   138,   138,   nil,   138,   138,
+   138,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   138,   nil,   nil,   138,   nil,   nil,   138,   138,   nil,   nil,
+   138,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   138,   nil,   nil,   nil,   nil,   138,
+   138,   138,   138,   138,   138,   nil,   nil,   nil,   138,   138,
+   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,   138,
+   138,   138,   nil,   138,   138,   nil,   nil,   138,   138,   139,
+   139,   139,   139,   139,   nil,   nil,   nil,   139,   139,   nil,
+   nil,   nil,   139,   nil,   139,   139,   139,   139,   139,   139,
+   139,   nil,   nil,   nil,   nil,   nil,   139,   139,   139,   139,
+   139,   139,   139,   nil,   nil,   139,   nil,   nil,   nil,   nil,
+   nil,   139,   139,   nil,   139,   139,   139,   139,   139,   139,
+   139,   139,   139,   nil,   139,   139,   139,   nil,   139,   139,
+   nil,   139,   139,   139,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   139,   nil,   nil,   139,   nil,   nil,   139,
+   139,   nil,   nil,   139,   nil,   139,   nil,   nil,   nil,   139,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,
+   nil,   nil,   139,   139,   139,   139,   139,   139,   nil,   nil,
+   nil,   139,   139,   nil,   nil,   nil,   nil,   nil,   nil,   139,
+   nil,   nil,   139,   139,   139,   nil,   139,   139,   nil,   nil,
+   139,   139,   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,   nil,   224,
+   224,   224,   224,   224,   224,   224,   nil,   nil,   224,   nil,
+   nil,   nil,   nil,   nil,   nil,   224,   nil,   nil,   224,   224,
+   224,   224,   224,   224,   224,   224,   nil,   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,   224,   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,   nil,
+   nil,   nil,   224,   nil,   nil,   224,   224,   224,   nil,   224,
+   224,   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,   nil,   225,   225,   225,   225,   225,   225,   225,   nil,
+   nil,   225,   nil,   nil,   nil,   nil,   nil,   nil,   225,   nil,
+   nil,   225,   225,   225,   225,   225,   225,   225,   225,   nil,
+   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,   225,   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,   nil,   nil,   nil,   225,   nil,   nil,   225,   225,
+   225,   nil,   225,   225,   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,   nil,   226,   226,   226,   226,   226,
+   226,   226,   nil,   nil,   226,   nil,   nil,   nil,   nil,   nil,
+   nil,   226,   nil,   nil,   226,   226,   226,   226,   226,   226,
+   226,   226,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,
+   nil,   226,   226,   226,   nil,   226,   226,   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,   nil,   227,   227,
+   227,   227,   227,   227,   227,   nil,   nil,   227,   nil,   nil,
+   nil,   nil,   nil,   nil,   227,   nil,   nil,   227,   227,   227,
+   227,   227,   227,   227,   227,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   227,   nil,   nil,   227,   227,   227,   nil,   227,   227,
+   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,
+   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,   228,   nil,   nil,   nil,   nil,   228,   228,   228,
+   228,   228,   228,   nil,   nil,   nil,   228,   228,   nil,   nil,
+   nil,   nil,   nil,   nil,   228,   nil,   nil,   228,   228,   228,
+   nil,   228,   228,   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,   nil,   229,   229,   229,   229,   229,   229,
+   229,   nil,   nil,   229,   nil,   nil,   nil,   nil,   nil,   nil,
+   229,   nil,   nil,   229,   229,   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,   229,   nil,   229,   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,   nil,   nil,   nil,   229,   nil,   229,
+   229,   229,   229,   nil,   229,   229,   nil,   nil,   229,   229,
+   234,   234,   234,   nil,   234,   nil,   nil,   nil,   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,   234,   nil,
+   nil,   nil,   nil,   234,   234,   234,   234,   234,   234,   nil,
+   nil,   nil,   234,   234,   nil,   nil,   nil,   nil,   nil,   nil,
+   234,   nil,   nil,   234,   234,   234,   nil,   234,   234,   nil,
+   nil,   234,   234,   235,   235,   235,   nil,   235,   nil,   nil,
+   nil,   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,   235,   nil,   nil,   nil,   nil,   235,   235,   235,   235,
+   235,   235,   nil,   nil,   nil,   235,   235,   nil,   nil,   nil,
+   nil,   nil,   nil,   235,   nil,   nil,   235,   235,   235,   nil,
+   235,   235,   nil,   nil,   235,   235,   236,   236,   236,   nil,
+   236,   nil,   nil,   nil,   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,   236,   nil,   nil,   nil,   nil,   236,
+   236,   236,   236,   236,   236,   nil,   nil,   nil,   236,   236,
+   236,   nil,   nil,   nil,   nil,   nil,   236,   nil,   nil,   236,
+   236,   236,   nil,   236,   236,   nil,   nil,   236,   236,   247,
+   247,   247,   nil,   247,   nil,   nil,   nil,   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,   247,   nil,   nil,
+   nil,   nil,   247,   247,   247,   247,   247,   247,   nil,   nil,
+   nil,   247,   247,   nil,   nil,   nil,   nil,   nil,   nil,   247,
+   nil,   nil,   247,   247,   247,   nil,   247,   247,   nil,   nil,
+   247,   247,   251,   251,   251,   nil,   251,   nil,   nil,   nil,
+   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,
+   251,   nil,   nil,   nil,   nil,   251,   251,   251,   251,   251,
+   251,   nil,   nil,   nil,   251,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,   251,   nil,   nil,   251,   251,   251,   nil,   251,
+   251,   nil,   nil,   251,   251,   252,   252,   252,   nil,   252,
+   nil,   nil,   nil,   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,   252,   nil,   nil,   nil,   nil,   252,   252,
+   252,   252,   252,   252,   nil,   nil,   nil,   252,   252,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   252,   252,
+   252,   nil,   252,   252,   nil,   nil,   252,   252,   253,   253,
+   253,   nil,   253,   nil,   nil,   nil,   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,   253,   nil,   nil,   nil,
+   nil,   253,   253,   253,   253,   253,   253,   nil,   nil,   nil,
+   253,   253,   nil,   nil,   nil,   nil,   nil,   nil,   253,   nil,
+   nil,   253,   253,   253,   nil,   253,   253,   nil,   nil,   253,
+   253,   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,   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,   254,
+   nil,   nil,   nil,   nil,   254,   254,   254,   254,   254,   254,
+   nil,   nil,   nil,   254,   254,   nil,   nil,   nil,   nil,   nil,
+   nil,   254,   nil,   nil,   254,   254,   254,   nil,   254,   254,
+   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,
+   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,   255,   nil,   nil,   nil,   nil,   255,   255,   255,
+   255,   255,   255,   nil,   nil,   nil,   255,   255,   nil,   nil,
+   nil,   nil,   nil,   nil,   255,   nil,   nil,   255,   255,   255,
+   nil,   255,   255,   nil,   nil,   255,   255,   256,   256,   256,
+   nil,   256,   nil,   nil,   nil,   256,   256,   nil,   nil,   nil,
+   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,   256,   256,   256,   256,   256,
+   256,   nil,   256,   256,   256,   nil,   256,   256,   nil,   256,
+   256,   256,   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,   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,   nil,   nil,   nil,   256,   nil,   nil,
+   256,   256,   256,   nil,   256,   256,   nil,   nil,   256,   256,
+   257,   257,   257,   nil,   257,   nil,   nil,   nil,   257,   257,
+   nil,   nil,   nil,   257,   nil,   257,   257,   257,   257,   257,
+   257,   257,   nil,   nil,   nil,   nil,   nil,   257,   257,   257,
+   257,   257,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   257,   257,   257,   257,
+   257,   257,   257,   257,   nil,   257,   257,   257,   nil,   257,
+   257,   nil,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   nil,   nil,
+   257,   257,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   257,   257,   257,   257,   257,   257,   nil,
+   nil,   nil,   257,   257,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   257,   257,   257,   nil,   257,   257,   nil,
+   nil,   257,   257,   258,   258,   258,   nil,   258,   nil,   nil,
+   nil,   258,   258,   nil,   nil,   nil,   258,   nil,   258,   258,
+   258,   258,   258,   258,   258,   nil,   nil,   nil,   nil,   nil,
+   258,   258,   258,   258,   258,   258,   258,   nil,   nil,   258,
+   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   258,
+   258,   258,   258,   258,   258,   258,   258,   nil,   258,   258,
+   258,   nil,   258,   258,   nil,   258,   258,   258,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,
+   258,   nil,   nil,   258,   258,   nil,   nil,   258,   nil,   nil,
+   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   258,   nil,   nil,   nil,   nil,   258,   258,   258,   258,
+   258,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,   nil,
+   nil,   nil,   nil,   258,   nil,   nil,   258,   258,   258,   nil,
+   258,   258,   nil,   nil,   258,   258,   259,   259,   259,   nil,
+   259,   nil,   nil,   nil,   259,   259,   nil,   nil,   nil,   259,
+   nil,   259,   259,   259,   259,   259,   259,   259,   nil,   nil,
+   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,   259,
+   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,   nil,   259,
+   nil,   nil,   259,   259,   259,   259,   259,   259,   259,   259,
+   nil,   259,   259,   259,   nil,   259,   259,   nil,   259,   259,
+   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   259,   nil,   nil,   259,   nil,   nil,   259,   259,   nil,   nil,
+   259,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   259,   nil,   nil,   nil,   nil,   259,
+   259,   259,   259,   259,   259,   nil,   nil,   nil,   259,   259,
+   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,
+   259,   259,   nil,   259,   259,   nil,   nil,   259,   259,   260,
+   260,   260,   nil,   260,   nil,   nil,   nil,   260,   260,   nil,
+   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,   260,
+   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,   260,
+   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,   nil,
+   nil,   nil,   260,   nil,   nil,   260,   260,   260,   260,   260,
+   260,   260,   260,   nil,   260,   260,   260,   nil,   260,   260,
+   nil,   260,   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   260,   nil,   nil,   260,   nil,   nil,   260,
+   260,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   260,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,
+   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,   nil,
+   nil,   260,   260,   nil,   nil,   nil,   nil,   nil,   nil,   260,
+   nil,   nil,   260,   260,   260,   nil,   260,   260,   nil,   nil,
+   260,   260,   261,   261,   261,   nil,   261,   nil,   nil,   nil,
+   261,   261,   nil,   nil,   nil,   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,
+   261,   261,   261,   261,   261,   261,   nil,   261,   261,   261,
+   nil,   261,   261,   nil,   261,   261,   261,   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,   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,   nil,
+   nil,   nil,   261,   nil,   nil,   261,   261,   261,   nil,   261,
+   261,   nil,   nil,   261,   261,   262,   262,   262,   nil,   262,
+   nil,   nil,   nil,   262,   262,   nil,   nil,   nil,   262,   nil,
+   262,   262,   262,   262,   262,   262,   262,   nil,   nil,   nil,
+   nil,   nil,   262,   262,   262,   262,   262,   262,   262,   nil,
+   nil,   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,
+   nil,   262,   262,   262,   262,   262,   262,   262,   262,   nil,
+   262,   262,   262,   nil,   262,   262,   nil,   262,   262,   262,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,
+   nil,   nil,   262,   nil,   nil,   262,   262,   nil,   nil,   262,
+   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   262,   nil,   nil,   nil,   nil,   262,   262,
+   262,   262,   262,   262,   nil,   nil,   nil,   262,   262,   nil,
+   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,   262,   262,
+   262,   nil,   262,   262,   nil,   nil,   262,   262,   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,   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,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   263,   nil,
+   nil,   263,   263,   263,   nil,   263,   263,   nil,   nil,   263,
+   263,   264,   264,   264,   nil,   264,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,
+   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   264,
+   nil,   nil,   nil,   nil,   264,   264,   264,   264,   264,   264,
+   nil,   nil,   nil,   264,   264,   nil,   nil,   nil,   nil,   nil,
+   nil,   264,   nil,   nil,   264,   264,   264,   nil,   264,   264,
+   nil,   nil,   264,   264,   265,   265,   265,   nil,   265,   nil,
+   nil,   nil,   265,   265,   nil,   nil,   nil,   265,   nil,   265,
+   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,   nil,
+   nil,   265,   265,   265,   265,   265,   265,   265,   nil,   nil,
+   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,
+   265,   265,   265,   265,   265,   265,   265,   265,   nil,   265,
+   265,   265,   nil,   265,   265,   nil,   265,   265,   265,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   265,   nil,   nil,   265,   265,   nil,   nil,   265,   nil,
+   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   nil,   nil,   265,   265,   265,
+   265,   265,   265,   nil,   nil,   nil,   265,   265,   nil,   nil,
+   nil,   nil,   nil,   nil,   265,   nil,   nil,   265,   265,   265,
+   nil,   265,   265,   nil,   nil,   265,   265,   266,   266,   266,
+   nil,   266,   nil,   nil,   nil,   266,   266,   nil,   nil,   nil,
+   266,   nil,   266,   266,   266,   266,   266,   266,   266,   nil,
+   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,
+   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,   nil,   nil,
+   266,   nil,   nil,   266,   266,   266,   266,   266,   266,   266,
+   266,   nil,   266,   266,   266,   nil,   266,   266,   nil,   266,
+   266,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   266,   nil,   nil,   266,   266,   nil,
+   nil,   266,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   nil,   nil,
+   266,   266,   266,   266,   266,   266,   nil,   nil,   nil,   266,
+   266,   nil,   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,
+   266,   266,   266,   nil,   266,   266,   nil,   nil,   266,   266,
+   267,   267,   267,   nil,   267,   nil,   nil,   nil,   267,   267,
+   nil,   nil,   nil,   267,   nil,   267,   267,   267,   267,   267,
+   267,   267,   nil,   nil,   nil,   nil,   nil,   267,   267,   267,
+   267,   267,   267,   267,   nil,   nil,   267,   nil,   nil,   nil,
+   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,   267,
+   267,   267,   267,   267,   nil,   267,   267,   267,   nil,   267,
+   267,   nil,   267,   267,   267,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   nil,   nil,
+   267,   267,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,
+   267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,
+   nil,   nil,   nil,   267,   267,   267,   267,   267,   267,   nil,
+   nil,   nil,   267,   267,   nil,   nil,   nil,   nil,   nil,   nil,
+   267,   nil,   nil,   267,   267,   267,   nil,   267,   267,   nil,
+   nil,   267,   267,   268,   268,   268,   nil,   268,   nil,   nil,
+   nil,   268,   268,   nil,   nil,   nil,   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,   268,   268,   268,   268,   268,   268,   nil,   268,   268,
+   268,   nil,   268,   268,   nil,   268,   268,   268,   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,   268,   nil,   nil,   268,   nil,   nil,
+   nil,   nil,   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,
+   nil,   nil,   nil,   268,   nil,   nil,   268,   268,   268,   nil,
+   268,   268,   nil,   nil,   268,   268,   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,   nil,   269,   269,   269,   269,   269,   269,   269,
+   nil,   nil,   269,   nil,   nil,   nil,   nil,   nil,   nil,   269,
+   nil,   nil,   269,   269,   269,   269,   269,   269,   269,   269,
+   nil,   269,   269,   269,   nil,   269,   269,   nil,   269,   269,
+   269,   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,   269,   nil,   nil,
+   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   269,   nil,   nil,   269,
+   269,   269,   nil,   269,   269,   nil,   nil,   269,   269,   270,
+   270,   270,   nil,   270,   nil,   nil,   nil,   270,   270,   nil,
+   nil,   nil,   270,   nil,   270,   270,   270,   270,   270,   270,
+   270,   nil,   nil,   nil,   nil,   nil,   270,   270,   270,   270,
+   270,   270,   270,   nil,   nil,   270,   nil,   nil,   nil,   nil,
+   nil,   nil,   270,   nil,   nil,   270,   270,   270,   270,   270,
+   270,   270,   270,   nil,   270,   270,   270,   nil,   270,   270,
+   nil,   270,   270,   270,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   270,   nil,   nil,   270,   nil,   nil,   270,
+   270,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,   270,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,
+   nil,   nil,   270,   270,   270,   270,   270,   270,   nil,   nil,
+   nil,   270,   270,   nil,   nil,   nil,   nil,   nil,   nil,   270,
+   nil,   nil,   270,   270,   270,   nil,   270,   270,   nil,   nil,
+   270,   270,   271,   271,   271,   nil,   271,   nil,   nil,   nil,
+   271,   271,   nil,   nil,   nil,   271,   nil,   271,   271,   271,
+   271,   271,   271,   271,   nil,   nil,   nil,   nil,   nil,   271,
+   271,   271,   271,   271,   271,   271,   nil,   nil,   271,   nil,
+   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,   271,
+   271,   271,   271,   271,   271,   271,   nil,   271,   271,   271,
+   nil,   271,   271,   nil,   271,   271,   271,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,
+   nil,   nil,   271,   271,   nil,   nil,   271,   nil,   nil,   nil,
+   nil,   nil,   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   271,   nil,   nil,   nil,   nil,   271,   271,   271,   271,   271,
+   271,   nil,   nil,   nil,   271,   271,   nil,   nil,   nil,   nil,
+   nil,   nil,   271,   nil,   nil,   271,   271,   271,   nil,   271,
+   271,   nil,   nil,   271,   271,   272,   272,   272,   nil,   272,
+   nil,   nil,   nil,   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,   nil,
+   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,   nil,   nil,   nil,   nil,   272,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   272,   nil,   nil,   nil,   nil,   272,   272,
+   272,   272,   272,   272,   nil,   nil,   nil,   272,   272,   nil,
+   nil,   nil,   nil,   nil,   nil,   272,   nil,   nil,   272,   272,
+   272,   nil,   272,   272,   nil,   nil,   272,   272,   277,   277,
+   277,   nil,   277,   nil,   nil,   nil,   277,   277,   nil,   nil,
+   nil,   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,   277,   277,   277,   277,
+   277,   277,   nil,   277,   277,   277,   nil,   277,   277,   nil,
+   277,   277,   277,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   277,   nil,   nil,   277,   nil,   nil,   277,   277,
+   nil,   nil,   277,   nil,   nil,   nil,   nil,   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,   277,   277,   nil,   277,   277,   nil,   nil,   277,
+   277,   285,   285,   285,   nil,   285,   nil,   nil,   nil,   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,   285,   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,   285,   nil,   285,
+   nil,   285,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   285,
+   nil,   nil,   nil,   nil,   285,   285,   285,   285,   285,   285,
+   nil,   nil,   nil,   285,   285,   nil,   nil,   nil,   nil,   nil,
+   nil,   285,   nil,   285,   285,   285,   285,   nil,   285,   285,
+   nil,   nil,   285,   285,   286,   286,   286,   nil,   286,   nil,
+   nil,   nil,   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,   nil,   286,   nil,   nil,
+   286,   286,   286,   286,   286,   286,   286,   286,   286,   286,
+   286,   286,   nil,   286,   286,   nil,   286,   286,   286,   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,   286,   nil,   nil,   286,   nil,
+   286,   nil,   286,   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,   nil,   nil,   nil,   286,   nil,   286,   286,   286,   286,
+   nil,   286,   286,   nil,   nil,   286,   286,   295,   295,   295,
+   nil,   295,   nil,   nil,   nil,   295,   295,   nil,   nil,   nil,
+   295,   nil,   295,   295,   295,   295,   295,   295,   295,   nil,
+   nil,   nil,   nil,   nil,   295,   295,   295,   295,   295,   295,
+   295,   nil,   nil,   295,   nil,   nil,   nil,   nil,   nil,   nil,
+   295,   nil,   nil,   295,   295,   295,   295,   295,   295,   295,
+   295,   295,   295,   295,   295,   nil,   295,   295,   nil,   295,
+   295,   295,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   295,   nil,   nil,   295,   nil,   nil,   295,   295,   nil,
+   nil,   295,   nil,   295,   nil,   295,   nil,   295,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   295,   nil,   nil,   nil,   nil,
+   295,   295,   295,   295,   295,   295,   nil,   nil,   nil,   295,
+   295,   295,   nil,   nil,   nil,   nil,   nil,   295,   nil,   295,
+   295,   295,   295,   nil,   295,   295,   nil,   nil,   295,   295,
+   302,   302,   302,   nil,   302,   nil,   nil,   nil,   302,   302,
+   nil,   nil,   nil,   302,   nil,   302,   302,   302,   302,   302,
+   302,   302,   nil,   nil,   nil,   nil,   nil,   302,   302,   302,
+   302,   302,   302,   302,   nil,   nil,   302,   nil,   nil,   nil,
+   nil,   nil,   nil,   302,   nil,   nil,   302,   302,   302,   302,
+   302,   302,   302,   302,   nil,   302,   302,   302,   nil,   302,
+   302,   nil,   302,   302,   302,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   302,   nil,   nil,   302,   nil,   nil,
+   302,   302,   nil,   nil,   302,   nil,   nil,   nil,   nil,   nil,
+   302,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   302,   nil,
+   nil,   nil,   nil,   302,   302,   302,   302,   302,   302,   nil,
+   nil,   nil,   302,   302,   nil,   nil,   nil,   nil,   nil,   nil,
+   302,   nil,   nil,   302,   302,   302,   nil,   302,   302,   nil,
+   nil,   302,   302,   304,   304,   304,   nil,   304,   nil,   nil,
+   nil,   304,   304,   nil,   nil,   nil,   304,   nil,   304,   304,
+   304,   304,   304,   304,   304,   nil,   nil,   nil,   nil,   nil,
+   304,   304,   304,   304,   304,   304,   304,   nil,   nil,   304,
+   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   304,
+   304,   304,   304,   304,   304,   304,   304,   nil,   304,   304,
+   304,   nil,   304,   304,   nil,   304,   304,   304,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,
+   304,   nil,   nil,   304,   304,   nil,   nil,   304,   nil,   nil,
+   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   304,   nil,   nil,   nil,   nil,   304,   304,   304,   304,
+   304,   304,   nil,   nil,   nil,   304,   304,   nil,   nil,   nil,
+   nil,   nil,   nil,   304,   nil,   nil,   304,   304,   304,   nil,
+   304,   304,   nil,   nil,   304,   304,   307,   307,   307,   nil,
+   307,   nil,   nil,   nil,   307,   307,   nil,   nil,   nil,   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,   307,   307,   307,   307,   307,   307,
+   nil,   307,   307,   307,   nil,   307,   307,   nil,   307,   307,
+   307,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   307,   nil,   nil,   307,   nil,   nil,   307,   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,
+   307,   307,   nil,   307,   307,   nil,   nil,   307,   307,   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,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   308,
+   nil,   nil,   308,   308,   308,   nil,   308,   308,   nil,   nil,
+   308,   308,   314,   314,   314,   314,   314,   nil,   nil,   nil,
+   314,   314,   nil,   nil,   nil,   314,   nil,   314,   314,   314,
+   314,   314,   314,   314,   nil,   nil,   nil,   nil,   nil,   314,
+   314,   314,   314,   314,   314,   314,   nil,   nil,   314,   nil,
+   nil,   nil,   nil,   nil,   314,   314,   nil,   314,   314,   314,
+   314,   314,   314,   314,   314,   314,   nil,   314,   314,   314,
+   nil,   314,   314,   nil,   314,   314,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,
+   nil,   nil,   314,   314,   nil,   nil,   314,   nil,   314,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   314,   314,   314,   314,   314,
+   314,   nil,   nil,   nil,   314,   314,   nil,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   314,   314,   314,   nil,   314,
+   314,   nil,   nil,   314,   314,   348,   348,   348,   nil,   348,
+   nil,   nil,   nil,   348,   348,   nil,   nil,   nil,   348,   nil,
+   348,   348,   348,   348,   348,   348,   348,   nil,   nil,   nil,
+   nil,   nil,   348,   348,   348,   348,   348,   348,   348,   nil,
+   nil,   348,   nil,   nil,   nil,   nil,   nil,   nil,   348,   nil,
+   nil,   348,   348,   348,   348,   348,   348,   348,   348,   nil,
+   348,   348,   348,   nil,   348,   348,   nil,   348,   348,   348,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   348,
+   nil,   nil,   348,   nil,   nil,   348,   348,   nil,   nil,   348,
+   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   348,   nil,   nil,   nil,   nil,   348,   348,
+   348,   348,   348,   348,   nil,   nil,   nil,   348,   348,   nil,
+   nil,   nil,   nil,   nil,   nil,   348,   nil,   nil,   348,   348,
+   348,   nil,   348,   348,   nil,   nil,   348,   348,   350,   350,
+   350,   nil,   350,   nil,   nil,   nil,   350,   350,   nil,   nil,
+   nil,   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,   350,   350,   350,   350,
+   350,   350,   nil,   350,   350,   350,   nil,   350,   350,   nil,
+   350,   350,   350,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   350,   nil,   nil,   350,   350,   nil,   350,   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,   nil,   nil,   nil,   350,   nil,
+   nil,   350,   350,   350,   nil,   350,   350,   nil,   nil,   350,
+   350,   354,   354,   354,   nil,   354,   nil,   nil,   nil,   354,
+   354,   nil,   nil,   nil,   354,   nil,   354,   354,   354,   354,
+   354,   354,   354,   nil,   nil,   nil,   nil,   nil,   354,   354,
+   354,   354,   354,   354,   354,   nil,   nil,   354,   nil,   nil,
+   nil,   nil,   nil,   nil,   354,   nil,   nil,   354,   354,   354,
+   354,   354,   354,   354,   354,   354,   354,   354,   354,   nil,
+   354,   354,   nil,   354,   354,   354,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   354,   nil,   nil,   354,   nil,
+   nil,   354,   354,   nil,   nil,   354,   nil,   354,   nil,   nil,
+   nil,   354,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   354,
+   nil,   nil,   nil,   nil,   354,   354,   354,   354,   354,   354,
+   nil,   nil,   nil,   354,   354,   nil,   nil,   nil,   nil,   nil,
+   nil,   354,   nil,   354,   354,   354,   354,   nil,   354,   354,
+   nil,   nil,   354,   354,   355,   355,   355,   nil,   355,   nil,
+   nil,   nil,   355,   355,   nil,   nil,   nil,   355,   nil,   355,
+   355,   355,   355,   355,   355,   355,   nil,   nil,   nil,   nil,
+   nil,   355,   355,   355,   355,   355,   355,   355,   nil,   nil,
+   355,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,
+   355,   355,   355,   355,   355,   355,   355,   355,   355,   355,
+   355,   355,   nil,   355,   355,   nil,   355,   355,   355,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,
+   nil,   355,   nil,   nil,   355,   355,   nil,   nil,   355,   nil,
+   nil,   nil,   nil,   nil,   355,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   355,   nil,   nil,   nil,   nil,   355,   355,   355,
+   355,   355,   355,   nil,   nil,   nil,   355,   355,   nil,   nil,
+   nil,   nil,   nil,   nil,   355,   nil,   355,   355,   355,   355,
+   nil,   355,   355,   nil,   nil,   355,   355,   360,   360,   360,
+   nil,   360,   nil,   nil,   nil,   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,   360,   nil,   nil,   nil,   nil,
+   360,   360,   360,   360,   360,   360,   nil,   nil,   nil,   360,
+   360,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
+   360,   360,   360,   nil,   360,   360,   nil,   nil,   360,   360,
+   381,   381,   381,   nil,   381,   nil,   nil,   nil,   381,   381,
+   nil,   nil,   nil,   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,   381,   381,
+   381,   381,   381,   381,   nil,   381,   381,   381,   nil,   381,
+   381,   nil,   381,   381,   381,   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,   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,   nil,   nil,   nil,
+   381,   nil,   nil,   381,   381,   381,   nil,   381,   381,   nil,
+   nil,   381,   381,   442,   442,   442,   nil,   442,   nil,   nil,
+   nil,   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,   nil,   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,   nil,
+   nil,   nil,   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,
+   nil,   nil,   nil,   442,   nil,   nil,   442,   442,   442,   476,
+   442,   442,   nil,   nil,   442,   442,   476,   476,   476,   nil,
+   nil,   476,   476,   476,  1075,   476,  1075,  1075,  1075,  1075,
+  1075,   nil,   nil,   476,   476,   476,   476,   476,   nil,   nil,
+  1075,   nil,   nil,   nil,   nil,   476,   476,   nil,   476,   476,
+   476,   476,   476,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1075,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1075,  1075,  1075,  1075,   nil,   476,   476,   476,   476,
+   476,   476,   476,   476,   476,   476,   476,   476,   476,   476,
+   nil,   nil,   476,   476,   476,   nil,   nil,   476,   nil,   nil,
+   476,   nil,   nil,   476,   476,   nil,   476,  1075,   476,   nil,
+   476,   nil,   476,   476,   476,   476,   476,   476,   476,   nil,
+   476,   476,   476,  1079,   nil,  1079,  1079,  1079,  1079,  1079,
+   nil,   nil,   nil,   nil,   nil,   476,   476,   476,   476,  1079,
+   476,   477,   476,   nil,   nil,   nil,   nil,   476,   477,   477,
+   477,   476,   nil,   477,   477,   477,   nil,   477,   nil,   nil,
+   nil,  1079,   nil,   nil,   nil,   477,   477,   477,   477,   477,
+   nil,   nil,  1079,  1079,   nil,   nil,   nil,   477,   477,   nil,
+   477,   477,   477,   477,   477,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1079,   nil,   477,   477,
+   477,   477,   477,   477,   477,   477,   477,   477,   477,   477,
+   477,   477,   nil,   nil,   477,   477,   477,   nil,   nil,   477,
+   nil,   nil,   477,   nil,   nil,   477,   477,   nil,   477,   nil,
+   477,   nil,   477,   nil,   477,   477,   477,   477,   477,   477,
+   477,   nil,   477,   477,   477,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   477,   477,   477,
+   477,   nil,   477,   nil,   477,   nil,   486,   486,   486,   477,
+   486,   nil,   nil,   477,   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,   nil,
+   nil,   nil,   nil,   nil,   486,   nil,   nil,   nil,   nil,   486,
+   486,   486,   486,   486,   486,   nil,   nil,   nil,   486,   486,
+   nil,   nil,   nil,   nil,   nil,   nil,   486,   nil,   486,   486,
+   486,   486,   nil,   486,   486,   nil,   nil,   486,   486,   488,
+   488,   488,   nil,   488,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   488,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   488,   nil,   nil,
+   nil,   nil,   488,   488,   488,   488,   488,   488,   nil,   nil,
+   nil,   488,   488,   nil,   nil,   nil,   nil,   nil,   nil,   488,
+   nil,   nil,   488,   488,   488,   nil,   488,   488,   nil,   nil,
+   488,   488,   489,   489,   489,   nil,   489,   nil,   nil,   nil,
+   489,   489,   nil,   nil,   nil,   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,
+   489,   489,   489,   489,   489,   489,   nil,   489,   489,   489,
+   nil,   489,   489,   nil,   489,   489,   489,   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,   489,   nil,   nil,   489,   nil,   nil,   nil,
+   nil,   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,   nil,
+   nil,   nil,   489,   nil,   nil,   489,   489,   489,   nil,   489,
+   489,   nil,   nil,   489,   489,   490,   490,   490,   nil,   490,
+   nil,   nil,   nil,   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,   490,   nil,   nil,   nil,   nil,   490,   490,
+   490,   490,   490,   490,   nil,   nil,   nil,   490,   490,   nil,
+   nil,   nil,   nil,   nil,   nil,   490,   nil,   nil,   490,   490,
+   490,   517,   490,   490,   nil,   nil,   490,   490,   517,   517,
+   517,   nil,   nil,   517,   517,   517,   nil,   517,   717,   717,
+   717,   717,   nil,   nil,   nil,   517,   517,   517,   nil,   nil,
+   nil,   nil,   nil,   nil,   717,   717,   717,   517,   517,   nil,
+   517,   517,   517,   517,   517,   nil,   nil,   717,   717,   nil,
+   nil,   nil,   717,   nil,   nil,   nil,   nil,   nil,  1081,   nil,
+  1081,  1081,  1081,  1081,  1081,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1081,   nil,   nil,   nil,   nil,   517,
+   nil,   nil,   nil,   nil,   nil,   nil,   517,   nil,   nil,   nil,
+   nil,   517,   517,   nil,   nil,   nil,  1081,   nil,   nil,   nil,
+   nil,   717,   717,   717,   717,   717,   717,  1081,  1081,   nil,
+   717,   717,   nil,   517,   517,   nil,   nil,   nil,   717,   nil,
+   nil,   717,   717,   717,   nil,   717,   717,   517,   nil,   522,
+   522,   522,   517,   522,   nil,   nil,   nil,   522,   522,   517,
+   nil,  1081,   522,   517,   522,   522,   522,   522,   522,   522,
+   522,   nil,   nil,   nil,   nil,   nil,   522,   522,   522,   522,
+   522,   522,   522,   nil,   nil,   522,   nil,   nil,   nil,   nil,
+   nil,   nil,   522,   nil,   nil,   522,   522,   522,   522,   522,
+   522,   522,   522,   nil,   522,   522,   522,   nil,   522,   522,
+   nil,   522,   522,   522,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   522,   nil,   nil,   522,   nil,   nil,   522,
+   522,   nil,   nil,   522,   nil,   nil,   nil,   nil,   nil,   522,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   522,   nil,   nil,
+   nil,   nil,   522,   522,   522,   522,   522,   522,   nil,   nil,
+   nil,   522,   522,   nil,   nil,   nil,   nil,   nil,   nil,   522,
+   nil,   nil,   522,   522,   522,   nil,   522,   522,   nil,   nil,
+   522,   522,   532,   532,   532,   nil,   532,   nil,   nil,   nil,
+   532,   532,   nil,   nil,   nil,   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,
+   532,   532,   532,   532,   532,   532,   532,   532,   532,   532,
+   nil,   532,   532,   nil,   532,   532,   532,   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,   532,   nil,   nil,   532,   nil,   532,   nil,
+   532,   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,   nil,
+   nil,   nil,   532,   nil,   532,   532,   532,   532,   nil,   532,
+   532,   nil,   nil,   532,   532,   535,   535,   535,   nil,   535,
+   nil,   nil,   nil,   535,   535,   nil,   nil,   nil,   535,   nil,
+   535,   535,   535,   535,   535,   535,   535,   nil,   nil,   nil,
+   nil,   nil,   535,   535,   535,   535,   535,   535,   535,   nil,
+   nil,   535,   nil,   nil,   nil,   nil,   nil,   nil,   535,   nil,
+   nil,   535,   535,   535,   535,   535,   535,   535,   535,   535,
+   535,   535,   535,   nil,   535,   535,   nil,   535,   535,   535,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   535,
+   nil,   nil,   535,   nil,   nil,   535,   535,   nil,   nil,   535,
+   nil,   nil,   nil,   535,   nil,   535,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   535,   nil,   nil,   nil,   nil,   535,   535,
+   535,   535,   535,   535,   nil,   nil,   nil,   535,   535,   nil,
+   nil,   nil,   nil,   nil,   nil,   535,   nil,   535,   535,   535,
+   535,   nil,   535,   535,   nil,   nil,   535,   535,   537,   537,
+   537,   nil,   537,   nil,   nil,   nil,   537,   537,   nil,   nil,
+   nil,   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,   537,   537,   537,   537,
+   537,   537,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   537,   nil,
+   nil,   537,   537,   537,   nil,   537,   537,   nil,   nil,   537,
+   537,   543,   543,   543,   543,   543,   nil,   nil,   nil,   543,
+   543,   nil,   nil,   nil,   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,   543,   543,   543,   543,   543,   543,   543,
+   543,   543,   543,   543,   543,   nil,   543,   543,   543,   nil,
+   543,   543,   nil,   543,   543,   543,   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,   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,   nil,   nil,
+   543,   543,   nil,   nil,   543,   543,   543,   nil,   543,   543,
+   nil,   nil,   543,   543,   553,   553,   553,   nil,   553,   nil,
+   nil,   nil,   553,   553,   nil,   nil,   nil,   553,   nil,   553,
+   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,   nil,
+   nil,   553,   553,   553,   553,   553,   553,   553,   nil,   nil,
+   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,
+   553,   553,   553,   553,   553,   553,   553,   553,   553,   553,
+   553,   553,   nil,   553,   553,   nil,   553,   553,   553,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,
+   nil,   553,   nil,   nil,   553,   553,   nil,   nil,   553,   nil,
+   553,   nil,   553,   nil,   553,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   553,   nil,   nil,   nil,   nil,   553,   553,   553,
+   553,   553,   553,   nil,   nil,   nil,   553,   553,   nil,   nil,
+   nil,   nil,   nil,   nil,   553,   nil,   553,   553,   553,   553,
+   nil,   553,   553,   nil,   nil,   553,   553,   562,   562,   562,
+   nil,   562,   nil,   nil,   nil,   562,   562,   nil,   nil,   nil,
+   562,   nil,   562,   562,   562,   562,   562,   562,   562,   nil,
+   nil,   nil,   nil,   nil,   562,   562,   562,   562,   562,   562,
+   562,   nil,   nil,   562,   nil,   nil,   nil,   nil,   nil,   nil,
+   562,   nil,   nil,   562,   562,   562,   562,   562,   562,   562,
+   562,   nil,   562,   562,   562,   nil,   562,   562,   nil,   562,
+   562,   562,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   562,   nil,   nil,   562,   nil,   nil,   562,   562,   nil,
+   nil,   562,   nil,   nil,   nil,   nil,   nil,   562,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   562,   nil,   nil,   nil,   nil,
+   562,   562,   562,   562,   562,   562,   nil,   nil,   nil,   562,
+   562,   nil,   nil,   nil,   nil,   nil,   nil,   562,   nil,   nil,
+   562,   562,   562,   nil,   562,   562,   nil,   nil,   562,   562,
+   565,   565,   565,   nil,   565,   nil,   nil,   nil,   565,   565,
+   nil,   nil,   nil,   565,   nil,   565,   565,   565,   565,   565,
+   565,   565,   nil,   nil,   nil,   nil,   nil,   565,   565,   565,
+   565,   565,   565,   565,   nil,   nil,   565,   nil,   nil,   nil,
+   nil,   nil,   nil,   565,   nil,   nil,   565,   565,   565,   565,
+   565,   565,   565,   565,   nil,   565,   565,   565,   nil,   565,
+   565,   nil,   565,   565,   565,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   565,   nil,   nil,   565,   nil,   nil,
+   565,   565,   nil,   nil,   565,   nil,   nil,   nil,   nil,   nil,
+   565,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   565,   nil,
+   nil,   nil,   nil,   565,   565,   565,   565,   565,   565,   nil,
+   nil,   nil,   565,   565,   nil,   nil,   nil,   nil,   nil,   nil,
+   565,   nil,   nil,   565,   565,   565,   nil,   565,   565,   nil,
+   nil,   565,   565,   568,   568,   568,   nil,   568,   nil,   nil,
+   nil,   568,   568,   nil,   nil,   nil,   568,   nil,   568,   568,
+   568,   568,   568,   568,   568,   nil,   nil,   nil,   nil,   nil,
+   568,   568,   568,   568,   568,   568,   568,   nil,   nil,   568,
+   nil,   nil,   nil,   nil,   nil,   nil,   568,   nil,   nil,   568,
+   568,   568,   568,   568,   568,   568,   568,   nil,   568,   568,
+   568,   nil,   568,   568,   nil,   568,   568,   568,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   568,   nil,   nil,
+   568,   nil,   nil,   568,   568,   nil,   nil,   568,   nil,   nil,
+   nil,   nil,   nil,   568,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   568,   nil,   nil,   nil,   nil,   568,   568,   568,   568,
+   568,   568,   nil,   nil,   nil,   568,   568,   nil,   nil,   nil,
+   nil,   nil,   nil,   568,   nil,   nil,   568,   568,   568,   nil,
+   568,   568,   nil,   nil,   568,   568,   592,   592,   592,   nil,
+   592,   nil,   nil,   nil,   592,   592,   nil,   nil,   nil,   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,   592,   592,   592,   592,   592,   592,
+   592,   592,   592,   592,   nil,   592,   592,   nil,   592,   592,
+   592,   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,   592,   nil,   nil,
+   592,   nil,   592,   nil,   592,   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,   nil,   nil,   nil,   592,   nil,   592,   592,
+   592,   592,   nil,   592,   592,   nil,   nil,   592,   592,   602,
+   602,   602,   nil,   602,   nil,   nil,   nil,   602,   602,   nil,
+   nil,   nil,   602,   nil,   602,   602,   602,   602,   602,   602,
+   602,   nil,   nil,   nil,   nil,   nil,   602,   602,   602,   602,
+   602,   602,   602,   nil,   nil,   602,   nil,   nil,   nil,   nil,
+   nil,   nil,   602,   nil,   nil,   602,   602,   602,   602,   602,
+   602,   602,   602,   602,   602,   602,   602,   nil,   602,   602,
+   nil,   602,   602,   602,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   602,   nil,   nil,   602,   nil,   nil,   602,
+   602,   nil,   nil,   602,   nil,   602,   nil,   602,   nil,   602,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   602,   nil,   nil,
+   nil,   nil,   602,   602,   602,   602,   602,   602,   nil,   nil,
+   nil,   602,   602,   nil,   nil,   nil,   nil,   nil,   nil,   602,
+   nil,   602,   602,   602,   602,   nil,   602,   602,   nil,   nil,
+   602,   602,   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,   nil,   612,
+   612,   612,   612,   612,   612,   612,   nil,   nil,   612,   nil,
+   nil,   nil,   nil,   nil,   nil,   612,   nil,   nil,   612,   612,
+   612,   612,   612,   612,   612,   612,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   612,   nil,   nil,   612,   612,   612,   nil,   612,
+   612,   nil,   nil,   612,   612,   635,   635,   635,   nil,   635,
+   nil,   nil,   nil,   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,   635,   nil,   nil,   nil,   nil,   635,   635,
+   635,   635,   635,   635,   nil,   nil,   nil,   635,   635,   nil,
+   nil,   nil,   nil,   nil,   nil,   635,   nil,   nil,   635,   635,
+   635,   nil,   635,   635,   nil,   nil,   635,   635,   674,   674,
+   674,   674,   674,   nil,   nil,   nil,   674,   674,   nil,   nil,
+   nil,   674,   nil,   674,   674,   674,   674,   674,   674,   674,
+   nil,   nil,   nil,   nil,   nil,   674,   674,   674,   674,   674,
+   674,   674,   nil,   nil,   674,   nil,   nil,   nil,   nil,   nil,
+   674,   674,   nil,   674,   674,   674,   674,   674,   674,   674,
+   674,   674,   nil,   674,   674,   674,   nil,   674,   674,   nil,
+   674,   674,   674,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   674,   nil,   nil,   674,   nil,   nil,   674,   674,
+   nil,   nil,   674,   nil,   674,   nil,   nil,   nil,   674,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,   nil,
+   nil,   674,   674,   674,   674,   674,   674,   nil,   nil,   nil,
+   674,   674,   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,
+   nil,   674,   674,   674,   nil,   674,   674,   nil,   nil,   674,
+   674,   676,   676,   676,   nil,   676,   nil,   nil,   nil,   676,
+   676,   nil,   nil,   nil,   676,   nil,   676,   676,   676,   676,
+   676,   676,   676,   nil,   nil,   nil,   nil,   nil,   676,   676,
+   676,   676,   676,   676,   676,   nil,   nil,   676,   nil,   nil,
+   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   676,   676,
+   676,   676,   676,   676,   676,   nil,   676,   676,   676,   nil,
+   676,   676,   nil,   676,   676,   676,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   676,   nil,   nil,   676,   nil,
+   nil,   676,   676,   nil,   nil,   676,   nil,   676,   nil,   nil,
+   nil,   676,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   676,
+   nil,   nil,   nil,   nil,   676,   676,   676,   676,   676,   676,
+   nil,   nil,   nil,   676,   676,   nil,   nil,   nil,   nil,   nil,
+   nil,   676,   nil,   nil,   676,   676,   676,   nil,   676,   676,
+   nil,   nil,   676,   676,   677,   677,   677,   nil,   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,   nil,   677,   nil,   nil,
+   677,   677,   677,   677,   677,   677,   677,   677,   nil,   677,
+   677,   677,   nil,   677,   677,   nil,   677,   677,   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,   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,   677,   677,
+   nil,   677,   677,   nil,   nil,   677,   677,   678,   678,   678,
+   nil,   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,   nil,
+   678,   nil,   nil,   678,   678,   678,   678,   678,   678,   678,
+   678,   678,   678,   678,   678,   nil,   678,   678,   nil,   678,
+   678,   678,   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,   678,   nil,
+   nil,   678,   nil,   678,   nil,   678,   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,   nil,   nil,   nil,   678,   nil,   678,
+   678,   678,   678,   nil,   678,   678,   nil,   nil,   678,   678,
+   681,   681,   681,   681,   681,   nil,   nil,   nil,   681,   681,
+   nil,   nil,   nil,   681,   nil,   681,   681,   681,   681,   681,
+   681,   681,   nil,   nil,   nil,   nil,   nil,   681,   681,   681,
+   681,   681,   681,   681,   nil,   nil,   681,   nil,   nil,   nil,
+   nil,   nil,   681,   681,   nil,   681,   681,   681,   681,   681,
+   681,   681,   681,   681,   nil,   681,   681,   681,   nil,   681,
+   681,   nil,   681,   681,   681,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   681,   nil,   nil,   681,   nil,   nil,
+   681,   681,   nil,   nil,   681,   nil,   681,   nil,   nil,   nil,
+   681,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   681,   nil,
+   nil,   nil,   nil,   681,   681,   681,   681,   681,   681,   nil,
+   nil,   nil,   681,   681,   nil,   nil,   nil,   nil,   nil,   nil,
+   681,   nil,   nil,   681,   681,   681,   nil,   681,   681,   nil,
+   nil,   681,   681,   682,   682,   682,   nil,   682,   nil,   nil,
+   nil,   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,   nil,
+   nil,   nil,   nil,   682,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   682,   nil,   nil,   nil,   nil,   682,   682,   682,   682,
+   682,   682,   nil,   nil,   nil,   682,   682,   nil,   nil,   nil,
+   nil,   nil,   nil,   682,   nil,   nil,   682,   682,   682,   nil,
+   682,   682,   nil,   nil,   682,   682,   685,   685,   685,   nil,
+   685,   nil,   nil,   nil,   685,   685,   nil,   nil,   nil,   685,
+   nil,   685,   685,   685,   685,   685,   685,   685,   nil,   nil,
+   nil,   nil,   nil,   685,   685,   685,   685,   685,   685,   685,
+   nil,   nil,   685,   nil,   nil,   nil,   nil,   nil,   nil,   685,
+   nil,   nil,   685,   685,   685,   685,   685,   685,   685,   685,
+   685,   685,   685,   685,   nil,   685,   685,   nil,   685,   685,
+   685,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   685,   nil,   nil,   685,   nil,   nil,   685,   685,   nil,   nil,
+   685,   nil,   685,   nil,   685,   nil,   685,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   685,   nil,   nil,   nil,   nil,   685,
+   685,   685,   685,   685,   685,   nil,   nil,   nil,   685,   685,
+   nil,   nil,   nil,   nil,   nil,   nil,   685,   nil,   685,   685,
+   685,   685,   nil,   685,   685,   nil,   nil,   685,   685,   686,
+   686,   686,   nil,   686,   nil,   nil,   nil,   686,   686,   nil,
+   nil,   nil,   686,   nil,   686,   686,   686,   686,   686,   686,
+   686,   nil,   nil,   nil,   nil,   nil,   686,   686,   686,   686,
+   686,   686,   686,   nil,   nil,   686,   nil,   nil,   nil,   nil,
+   nil,   nil,   686,   nil,   nil,   686,   686,   686,   686,   686,
+   686,   686,   686,   686,   686,   686,   686,   nil,   686,   686,
+   nil,   686,   686,   686,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   686,   nil,   nil,   686,   nil,   nil,   686,
+   686,   nil,   nil,   686,   nil,   nil,   nil,   686,   nil,   686,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   686,   nil,   nil,
+   nil,   nil,   686,   686,   686,   686,   686,   686,   nil,   nil,
+   nil,   686,   686,   nil,   nil,   nil,   nil,   nil,   nil,   686,
+   nil,   686,   686,   686,   686,   nil,   686,   686,   nil,   nil,
+   686,   686,   687,   687,   687,   nil,   687,   nil,   nil,   nil,
+   687,   687,   nil,   nil,   nil,   687,   nil,   687,   687,   687,
+   687,   687,   687,   687,   nil,   nil,   nil,   nil,   nil,   687,
+   687,   687,   687,   687,   687,   687,   nil,   nil,   687,   nil,
+   nil,   nil,   nil,   nil,   nil,   687,   nil,   nil,   687,   687,
+   687,   687,   687,   687,   687,   687,   nil,   687,   687,   687,
+   nil,   687,   687,   nil,   687,   687,   687,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   687,   nil,   nil,   687,
+   nil,   nil,   687,   687,   nil,   nil,   687,   nil,   nil,   nil,
+   nil,   nil,   687,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   687,   nil,   nil,   nil,   nil,   687,   687,   687,   687,   687,
+   687,   nil,   nil,   nil,   687,   687,   nil,   nil,   nil,   nil,
+   nil,   nil,   687,   nil,   nil,   687,   687,   687,   nil,   687,
+   687,   nil,   nil,   687,   687,   688,   688,   688,   nil,   688,
+   nil,   nil,   nil,   688,   688,   nil,   nil,   nil,   688,   nil,
+   688,   688,   688,   688,   688,   688,   688,   nil,   nil,   nil,
+   nil,   nil,   688,   688,   688,   688,   688,   688,   688,   nil,
+   nil,   688,   nil,   nil,   nil,   nil,   nil,   nil,   688,   nil,
+   nil,   688,   688,   688,   688,   688,   688,   688,   688,   nil,
+   688,   688,   688,   nil,   688,   688,   nil,   688,   688,   688,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   688,
+   nil,   nil,   688,   nil,   nil,   688,   688,   nil,   nil,   688,
+   nil,   nil,   nil,   nil,   nil,   688,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   688,   nil,   nil,   nil,   nil,   688,   688,
+   688,   688,   688,   688,   nil,   nil,   nil,   688,   688,   nil,
+   nil,   nil,   nil,   nil,   nil,   688,   nil,   nil,   688,   688,
+   688,   nil,   688,   688,   nil,   nil,   688,   688,   693,   693,
+   693,   nil,   693,   nil,   nil,   nil,   693,   693,   nil,   nil,
+   nil,   693,   nil,   693,   693,   693,   693,   693,   693,   693,
+   nil,   nil,   nil,   nil,   nil,   693,   693,   693,   693,   693,
+   693,   693,   nil,   nil,   693,   nil,   nil,   nil,   nil,   nil,
+   nil,   693,   nil,   nil,   693,   693,   693,   693,   693,   693,
+   693,   693,   nil,   693,   693,   693,   nil,   693,   693,   nil,
+   693,   693,   693,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   693,   nil,   nil,   693,   nil,   nil,   693,   693,
+   nil,   nil,   693,   nil,   nil,   nil,   nil,   nil,   693,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   693,   nil,   nil,   nil,
+   nil,   693,   693,   693,   693,   693,   693,   nil,   nil,   nil,
+   693,   693,   nil,   nil,   nil,   nil,   nil,   nil,   693,   nil,
+   nil,   693,   693,   693,   nil,   693,   693,   nil,   nil,   693,
+   693,   694,   694,   694,   nil,   694,   nil,   nil,   nil,   694,
+   694,   nil,   nil,   nil,   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,   694,
+   694,   694,   694,   694,   694,   nil,   694,   694,   694,   nil,
+   694,   694,   nil,   694,   694,   694,   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,   694,   nil,   nil,   694,   nil,   nil,   nil,   nil,
+   nil,   694,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   694,
+   nil,   nil,   nil,   nil,   694,   694,   694,   694,   694,   694,
+   nil,   nil,   nil,   694,   694,   nil,   nil,   nil,   nil,   nil,
+   nil,   694,   nil,   nil,   694,   694,   694,   nil,   694,   694,
+   nil,   nil,   694,   694,   739,   739,   739,   nil,   739,   nil,
+   nil,   nil,   739,   739,   nil,   nil,   nil,   739,   nil,   739,
+   739,   739,   739,   739,   739,   739,   nil,   nil,   nil,   nil,
+   nil,   739,   739,   739,   739,   739,   739,   739,   nil,   nil,
+   739,   nil,   nil,   nil,   nil,   nil,   nil,   739,   nil,   nil,
+   739,   739,   739,   739,   739,   739,   739,   739,   739,   739,
+   739,   739,   nil,   739,   739,   nil,   739,   739,   739,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   739,   nil,
+   nil,   739,   nil,   nil,   739,   739,   nil,   nil,   739,   nil,
+   739,   nil,   739,   nil,   739,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   739,   nil,   nil,   nil,   nil,   739,   739,   739,
+   739,   739,   739,   nil,   nil,   nil,   739,   739,   nil,   nil,
+   nil,   nil,   nil,   nil,   739,   nil,   739,   739,   739,   739,
+   nil,   739,   739,   nil,   nil,   739,   739,   748,   748,   748,
+   nil,   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,   nil,
+   748,   nil,   nil,   748,   748,   748,   748,   748,   748,   748,
+   748,   nil,   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,   nil,   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,   nil,   nil,   nil,   748,   nil,   nil,
+   748,   748,   748,   nil,   748,   748,   nil,   nil,   748,   748,
+   751,   751,   751,   nil,   751,   nil,   nil,   nil,   751,   751,
+   nil,   nil,   nil,   751,   nil,   751,   751,   751,   751,   751,
+   751,   751,   nil,   nil,   nil,   nil,   nil,   751,   751,   751,
+   751,   751,   751,   751,   nil,   nil,   751,   nil,   nil,   nil,
+   nil,   nil,   nil,   751,   nil,   nil,   751,   751,   751,   751,
+   751,   751,   751,   751,   nil,   751,   751,   751,   nil,   751,
+   751,   nil,   751,   751,   751,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   751,   nil,   nil,   751,   nil,   nil,
+   751,   751,   nil,   nil,   751,   nil,   nil,   nil,   nil,   nil,
+   751,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   751,   nil,
+   nil,   nil,   nil,   751,   751,   751,   751,   751,   751,   nil,
+   nil,   nil,   751,   751,   nil,   nil,   nil,   nil,   nil,   nil,
+   751,   nil,   nil,   751,   751,   751,   nil,   751,   751,   nil,
+   nil,   751,   751,   772,   772,   772,   nil,   772,   nil,   nil,
+   nil,   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,   772,
+   nil,   nil,   nil,   772,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   772,   nil,   nil,   nil,   nil,   772,   772,   772,   772,
+   772,   772,   nil,   nil,   nil,   772,   772,   nil,   nil,   nil,
+   nil,   nil,   nil,   772,   nil,   nil,   772,   772,   772,   nil,
+   772,   772,   nil,   nil,   772,   772,   777,   777,   777,   nil,
+   777,   nil,   nil,   nil,   777,   777,   nil,   nil,   nil,   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,   777,   777,   777,   777,   777,   777,
+   777,   777,   777,   777,   nil,   777,   777,   nil,   777,   777,
+   777,   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,   777,   nil,   nil,
+   777,   nil,   777,   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,   nil,   nil,   nil,   777,   nil,   777,   777,
+   777,   777,   nil,   777,   777,   nil,   nil,   777,   777,   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,   nil,   780,   780,   780,   780,
+   780,   780,   780,   nil,   nil,   780,   nil,   nil,   nil,   nil,
+   nil,   nil,   780,   nil,   nil,   780,   780,   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,   nil,   nil,   nil,   nil,   nil,   nil,   780,
+   nil,   780,   780,   780,   780,   nil,   780,   780,   nil,   nil,
+   780,   780,   796,   796,   796,   nil,   796,   nil,   nil,   nil,
+   796,   796,   nil,   nil,   nil,   796,   nil,   796,   796,   796,
+   796,   796,   796,   796,   nil,   nil,   nil,   nil,   nil,   796,
+   796,   796,   796,   796,   796,   796,   nil,   nil,   796,   nil,
+   nil,   nil,   nil,   nil,   nil,   796,   nil,   nil,   796,   796,
+   796,   796,   796,   796,   796,   796,   nil,   796,   796,   796,
+   nil,   796,   796,   nil,   796,   796,   796,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   796,   nil,   nil,   796,
+   nil,   nil,   796,   796,   nil,   nil,   796,   nil,   796,   nil,
+   nil,   nil,   796,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   796,   nil,   nil,   nil,   nil,   796,   796,   796,   796,   796,
+   796,   nil,   nil,   nil,   796,   796,   nil,   nil,   nil,   nil,
+   nil,   nil,   796,   nil,   nil,   796,   796,   796,   nil,   796,
+   796,   nil,   nil,   796,   796,   808,   808,   808,   nil,   808,
+   nil,   nil,   nil,   808,   808,   nil,   nil,   nil,   808,   nil,
+   808,   808,   808,   808,   808,   808,   808,   nil,   nil,   nil,
+   nil,   nil,   808,   808,   808,   808,   808,   808,   808,   nil,
+   nil,   808,   nil,   nil,   nil,   nil,   nil,   nil,   808,   nil,
+   nil,   808,   808,   808,   808,   808,   808,   808,   808,   nil,
+   808,   808,   808,   nil,   808,   808,   nil,   808,   808,   808,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   808,
+   nil,   nil,   808,   nil,   nil,   808,   808,   nil,   nil,   808,
+   nil,   nil,   nil,   nil,   nil,   808,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   808,   nil,   nil,   nil,   nil,   808,   808,
+   808,   808,   808,   808,   nil,   nil,   nil,   808,   808,   nil,
+   nil,   nil,   nil,   nil,   nil,   808,   nil,   nil,   808,   808,
+   808,   nil,   808,   808,   nil,   nil,   808,   808,   829,   829,
+   829,   nil,   829,   nil,   nil,   nil,   829,   829,   nil,   nil,
+   nil,   829,   nil,   829,   829,   829,   829,   829,   829,   829,
+   nil,   nil,   nil,   nil,   nil,   829,   829,   829,   829,   829,
+   829,   829,   nil,   nil,   829,   nil,   nil,   nil,   nil,   nil,
+   nil,   829,   nil,   nil,   829,   829,   829,   829,   829,   829,
+   829,   829,   nil,   829,   829,   829,   nil,   829,   829,   nil,
+   829,   829,   829,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   829,   nil,   nil,   829,   nil,   nil,   829,   829,
+   nil,   nil,   829,   nil,   nil,   nil,   nil,   nil,   829,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,   nil,
+   nil,   829,   829,   829,   829,   829,   829,   nil,   nil,   nil,
+   829,   829,   nil,   nil,   nil,   nil,   nil,   nil,   829,   nil,
+   nil,   829,   829,   829,   nil,   829,   829,   nil,   nil,   829,
+   829,   853,   853,   853,   nil,   853,   nil,   nil,   nil,   853,
+   853,   nil,   nil,   nil,   853,   nil,   853,   853,   853,   853,
+   853,   853,   853,   nil,   nil,   nil,   nil,   nil,   853,   853,
+   853,   853,   853,   853,   853,   nil,   nil,   853,   nil,   nil,
+   nil,   nil,   nil,   nil,   853,   nil,   nil,   853,   853,   853,
+   853,   853,   853,   853,   853,   nil,   853,   853,   853,   nil,
+   853,   853,   nil,   853,   853,   853,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   853,   nil,   nil,   853,   nil,
+   nil,   853,   853,   nil,   nil,   853,   nil,   nil,   nil,   nil,
+   nil,   853,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   853,
+   nil,   nil,   nil,   nil,   853,   853,   853,   853,   853,   853,
+   nil,   nil,   nil,   853,   853,   nil,   nil,   nil,   nil,   nil,
+   nil,   853,   nil,   nil,   853,   853,   853,   nil,   853,   853,
+   nil,   nil,   853,   853,   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,
+   nil,   861,   861,   861,   861,   861,   861,   861,   nil,   nil,
+   861,   nil,   nil,   nil,   nil,   nil,   nil,   861,   nil,   nil,
+   861,   861,   861,   861,   861,   861,   861,   861,   nil,   861,
+   861,   861,   nil,   861,   861,   nil,   861,   861,   861,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   861,   nil,
+   nil,   861,   nil,   nil,   861,   861,   nil,   nil,   861,   nil,
+   nil,   nil,   nil,   nil,   861,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   861,   nil,   nil,   nil,   nil,   861,   861,   861,
+   861,   861,   861,   nil,   nil,   nil,   861,   861,   nil,   nil,
+   nil,   nil,   nil,   nil,   861,   nil,   nil,   861,   861,   861,
+   nil,   861,   861,   nil,   nil,   861,   861,   874,   874,   874,
+   nil,   874,   nil,   nil,   nil,   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,   874,
+   874,   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,   874,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   874,   nil,   nil,   nil,   nil,
+   874,   874,   874,   874,   874,   874,   nil,   nil,   nil,   874,
+   874,   nil,   nil,   nil,   nil,   nil,   nil,   874,   nil,   nil,
+   874,   874,   874,   nil,   874,   874,   nil,   nil,   874,   874,
+   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,   nil,   875,   875,   875,
+   875,   875,   875,   875,   nil,   nil,   875,   nil,   nil,   nil,
+   nil,   nil,   nil,   875,   nil,   nil,   875,   875,   875,   875,
+   875,   875,   875,   875,   nil,   875,   875,   875,   nil,   875,
+   875,   nil,   875,   875,   875,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   875,   nil,   nil,   875,   nil,   nil,
+   875,   875,   nil,   nil,   875,   nil,   nil,   nil,   nil,   nil,
+   875,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   875,   nil,
+   nil,   nil,   nil,   875,   875,   875,   875,   875,   875,   nil,
+   nil,   nil,   875,   875,   nil,   nil,   nil,   nil,   nil,   nil,
+   875,   nil,   nil,   875,   875,   875,   nil,   875,   875,   nil,
+   nil,   875,   875,   876,   876,   876,   nil,   876,   nil,   nil,
+   nil,   876,   876,   nil,   nil,   nil,   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,   876,   876,   876,   876,   876,   876,   nil,   876,   876,
+   876,   nil,   876,   876,   nil,   876,   876,   876,   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,   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,
+   nil,   nil,   nil,   876,   nil,   nil,   876,   876,   876,   nil,
+   876,   876,   nil,   nil,   876,   876,   877,   877,   877,   nil,
+   877,   nil,   nil,   nil,   877,   877,   nil,   nil,   nil,   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,   877,   877,   877,   877,   877,   877,
+   nil,   877,   877,   877,   nil,   877,   877,   nil,   877,   877,
+   877,   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,   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,   nil,   nil,   nil,   877,   nil,   nil,   877,
+   877,   877,   nil,   877,   877,   nil,   nil,   877,   877,   899,
+   899,   899,   nil,   899,   nil,   nil,   nil,   899,   899,   nil,
+   nil,   nil,   899,   nil,   899,   899,   899,   899,   899,   899,
+   899,   nil,   nil,   nil,   nil,   nil,   899,   899,   899,   899,
+   899,   899,   899,   nil,   nil,   899,   nil,   nil,   nil,   nil,
+   nil,   nil,   899,   nil,   nil,   899,   899,   899,   899,   899,
+   899,   899,   899,   nil,   899,   899,   899,   nil,   899,   899,
+   nil,   899,   899,   899,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   899,   nil,   nil,   899,   nil,   nil,   899,
+   899,   nil,   nil,   899,   nil,   nil,   nil,   nil,   nil,   899,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   899,   nil,   nil,
+   nil,   nil,   899,   899,   899,   899,   899,   899,   nil,   nil,
+   nil,   899,   899,   nil,   nil,   nil,   nil,   nil,   nil,   899,
+   nil,   nil,   899,   899,   899,   nil,   899,   899,   nil,   nil,
+   899,   899,   933,   933,   933,   nil,   933,   nil,   nil,   nil,
+   933,   933,   nil,   nil,   nil,   933,   nil,   933,   933,   933,
+   933,   933,   933,   933,   nil,   nil,   nil,   nil,   nil,   933,
+   933,   933,   933,   933,   933,   933,   nil,   nil,   933,   nil,
+   nil,   nil,   nil,   nil,   nil,   933,   nil,   nil,   933,   933,
+   933,   933,   933,   933,   933,   933,   nil,   933,   933,   933,
+   nil,   933,   933,   nil,   933,   933,   933,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   933,   nil,   nil,   933,
+   nil,   nil,   933,   933,   nil,   nil,   933,   nil,   nil,   nil,
+   nil,   nil,   933,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   933,   nil,   nil,   nil,   nil,   933,   933,   933,   933,   933,
+   933,   nil,   nil,   nil,   933,   933,   nil,   nil,   nil,   nil,
+   nil,   nil,   933,   nil,   nil,   933,   933,   933,   nil,   933,
+   933,   nil,   nil,   933,   933,   942,   942,   942,   nil,   942,
+   nil,   nil,   nil,   942,   942,   nil,   nil,   nil,   942,   nil,
+   942,   942,   942,   942,   942,   942,   942,   nil,   nil,   nil,
+   nil,   nil,   942,   942,   942,   942,   942,   942,   942,   nil,
+   nil,   942,   nil,   nil,   nil,   nil,   nil,   nil,   942,   nil,
+   nil,   942,   942,   942,   942,   942,   942,   942,   942,   nil,
+   942,   942,   942,   nil,   942,   942,   nil,   942,   942,   942,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   942,
+   nil,   nil,   942,   nil,   nil,   942,   942,   nil,   nil,   942,
+   nil,   nil,   nil,   nil,   nil,   942,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   942,   nil,   nil,   nil,   nil,   942,   942,
+   942,   942,   942,   942,   nil,   nil,   nil,   942,   942,   nil,
+   nil,   nil,   nil,   nil,   nil,   942,   nil,   nil,   942,   942,
+   942,   nil,   942,   942,   nil,   nil,   942,   942,   994,   994,
+   994,   nil,   994,   nil,   nil,   nil,   994,   994,   nil,   nil,
+   nil,   994,   nil,   994,   994,   994,   994,   994,   994,   994,
+   nil,   nil,   nil,   nil,   nil,   994,   994,   994,   994,   994,
+   994,   994,   nil,   nil,   994,   nil,   nil,   nil,   nil,   nil,
+   nil,   994,   nil,   nil,   994,   994,   994,   994,   994,   994,
+   994,   994,   994,   994,   994,   994,   nil,   994,   994,   nil,
+   994,   994,   994,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   994,   nil,   nil,   994,   nil,   nil,   994,   994,
+   nil,   nil,   994,   nil,   nil,   nil,   994,   nil,   994,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   994,   nil,   nil,   nil,
+   nil,   994,   994,   994,   994,   994,   994,   nil,   nil,   nil,
+   994,   994,   nil,   nil,   nil,   nil,   nil,   nil,   994,   nil,
+   994,   994,   994,   994,   nil,   994,   994,   nil,   nil,   994,
+   994,   995,   995,   995,   nil,   995,   nil,   nil,   nil,   995,
+   995,   nil,   nil,   nil,   995,   nil,   995,   995,   995,   995,
+   995,   995,   995,   nil,   nil,   nil,   nil,   nil,   995,   995,
+   995,   995,   995,   995,   995,   nil,   nil,   995,   nil,   nil,
+   nil,   nil,   nil,   nil,   995,   nil,   nil,   995,   995,   995,
+   995,   995,   995,   995,   995,   nil,   995,   995,   995,   nil,
+   995,   995,   nil,   995,   995,   995,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   995,   nil,   nil,   995,   nil,
+   nil,   995,   995,   nil,   nil,   995,   nil,   nil,   nil,   nil,
+   nil,   995,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   995,
+   nil,   nil,   nil,   nil,   995,   995,   995,   995,   995,   995,
+   nil,   nil,   nil,   995,   995,   nil,   nil,   nil,   nil,   nil,
+   nil,   995,   nil,   nil,   995,   995,   995,   nil,   995,   995,
+   nil,   nil,   995,   995,  1058,  1058,  1058,   nil,  1058,   nil,
+   nil,   nil,  1058,  1058,   nil,   nil,   nil,  1058,   nil,  1058,
+  1058,  1058,  1058,  1058,  1058,  1058,   nil,   nil,   nil,   nil,
+   nil,  1058,  1058,  1058,  1058,  1058,  1058,  1058,   nil,   nil,
+  1058,   nil,   nil,   nil,   nil,   nil,   nil,  1058,   nil,   nil,
+  1058,  1058,  1058,  1058,  1058,  1058,  1058,  1058,   nil,  1058,
+  1058,  1058,   nil,  1058,  1058,   nil,  1058,  1058,  1058,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1058,   nil,
+   nil,  1058,   nil,   nil,  1058,  1058,   nil,   nil,  1058,   nil,
+  1058,   nil,   nil,   nil,  1058,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1058,   nil,   nil,   nil,   nil,  1058,  1058,  1058,
+  1058,  1058,  1058,   nil,   nil,   nil,  1058,  1058,   nil,   nil,
+   nil,   nil,   nil,   nil,  1058,   nil,   nil,  1058,  1058,  1058,
+   nil,  1058,  1058,   nil,   nil,  1058,  1058,  1133,  1133,  1133,
+   nil,  1133,   nil,   nil,   nil,  1133,  1133,   nil,   nil,   nil,
+  1133,   nil,  1133,  1133,  1133,  1133,  1133,  1133,  1133,   nil,
+   nil,   nil,   nil,   nil,  1133,  1133,  1133,  1133,  1133,  1133,
+  1133,   nil,   nil,  1133,   nil,   nil,   nil,   nil,   nil,   nil,
+  1133,   nil,   nil,  1133,  1133,  1133,  1133,  1133,  1133,  1133,
+  1133,   nil,  1133,  1133,  1133,   nil,  1133,  1133,   nil,  1133,
+  1133,  1133,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1133,   nil,   nil,  1133,   nil,   nil,  1133,  1133,   nil,
+   nil,  1133,   nil,   nil,   nil,   nil,   nil,  1133,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1133,   nil,   nil,   nil,   nil,
+  1133,  1133,  1133,  1133,  1133,  1133,   nil,   nil,   nil,  1133,
+  1133,   nil,   nil,   nil,   nil,   nil,   nil,  1133,   nil,   nil,
+  1133,  1133,  1133,   nil,  1133,  1133,   nil,   nil,  1133,  1133,
+  1134,  1134,  1134,   nil,  1134,   nil,   nil,   nil,  1134,  1134,
+   nil,   nil,   nil,  1134,   nil,  1134,  1134,  1134,  1134,  1134,
+  1134,  1134,   nil,   nil,   nil,   nil,   nil,  1134,  1134,  1134,
+  1134,  1134,  1134,  1134,   nil,   nil,  1134,   nil,   nil,   nil,
+   nil,   nil,   nil,  1134,   nil,   nil,  1134,  1134,  1134,  1134,
+  1134,  1134,  1134,  1134,   nil,  1134,  1134,  1134,   nil,  1134,
+  1134,   nil,  1134,  1134,  1134,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1134,   nil,   nil,  1134,   nil,   nil,
+  1134,  1134,   nil,   nil,  1134,   nil,   nil,   nil,   nil,   nil,
+  1134,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1134,   nil,
+   nil,   nil,   nil,  1134,  1134,  1134,  1134,  1134,  1134,   nil,
+   nil,   nil,  1134,  1134,   nil,   nil,   nil,   nil,   nil,   nil,
+  1134,   nil,   nil,  1134,  1134,  1134,   nil,  1134,  1134,   nil,
+   nil,  1134,  1134,  1137,  1137,  1137,   nil,  1137,   nil,   nil,
+   nil,  1137,  1137,   nil,   nil,   nil,  1137,   nil,  1137,  1137,
+  1137,  1137,  1137,  1137,  1137,   nil,   nil,   nil,   nil,   nil,
+  1137,  1137,  1137,  1137,  1137,  1137,  1137,   nil,   nil,  1137,
+   nil,   nil,   nil,   nil,   nil,   nil,  1137,   nil,   nil,  1137,
+  1137,  1137,  1137,  1137,  1137,  1137,  1137,   nil,  1137,  1137,
+  1137,   nil,  1137,  1137,   nil,  1137,  1137,  1137,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1137,   nil,   nil,
+  1137,   nil,   nil,  1137,  1137,   nil,   nil,  1137,   nil,   nil,
+   nil,   nil,   nil,  1137,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1137,   nil,   nil,   nil,   nil,  1137,  1137,  1137,  1137,
+  1137,  1137,   nil,   nil,   nil,  1137,  1137,   nil,   nil,   nil,
+   nil,   nil,   nil,  1137,   nil,   nil,  1137,  1137,  1137,   nil,
+  1137,  1137,   nil,   nil,  1137,  1137,  1178,  1178,  1178,   nil,
+  1178,   nil,   nil,   nil,  1178,  1178,   nil,   nil,   nil,  1178,
+   nil,  1178,  1178,  1178,  1178,  1178,  1178,  1178,   nil,   nil,
+   nil,   nil,   nil,  1178,  1178,  1178,  1178,  1178,  1178,  1178,
+   nil,   nil,  1178,   nil,   nil,   nil,   nil,   nil,   nil,  1178,
+   nil,   nil,  1178,  1178,  1178,  1178,  1178,  1178,  1178,  1178,
+  1178,  1178,  1178,  1178,   nil,  1178,  1178,   nil,  1178,  1178,
+  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1178,   nil,   nil,  1178,   nil,   nil,  1178,  1178,   nil,   nil,
+  1178,   nil,  1178,   nil,  1178,   nil,  1178,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1178,   nil,   nil,   nil,   nil,  1178,
+  1178,  1178,  1178,  1178,  1178,   nil,   nil,   nil,  1178,  1178,
+   nil,   nil,   nil,   nil,   nil,   nil,  1178,   nil,  1178,  1178,
+  1178,  1178,   nil,  1178,  1178,   nil,   nil,  1178,  1178,    37,
+    37,    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,
+   nil,   nil,    37,   nil,    37,    37,    37,    37,    37,    37,
+    37,   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,
+    37,    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,
+   nil,   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,
+    37,    37,    37,   nil,    37,    37,    37,   nil,    37,    37,
+   nil,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,  1115,
+   nil,  1115,  1115,  1115,  1115,  1115,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    37,   nil,  1115,    37,   nil,   nil,    37,
+    37,   nil,   nil,    37,   nil,    37,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1115,   nil,   nil,
+   nil,   nil,    37,    37,    37,    37,    37,    37,  1115,  1115,
+   nil,    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,
+   nil,   nil,    37,    37,    37,   nil,    37,    37,    38,    38,
+    38,   nil,    38,   nil,   nil,   nil,    38,    38,   nil,   nil,
+   nil,    38,  1115,    38,    38,    38,    38,    38,    38,    38,
+   nil,   nil,   nil,   nil,   nil,    38,    38,    38,    38,    38,
+    38,    38,   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   nil,    38,    38,    38,    38,    38,    38,
+    38,    38,   nil,    38,    38,    38,   nil,    38,    38,   nil,
+   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,  1196,   nil,
+  1196,  1196,  1196,  1196,  1196,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    38,   nil,  1196,    38,   nil,   nil,    38,    38,
+   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1196,   nil,   nil,   nil,
+   nil,    38,    38,    38,    38,    38,    38,  1196,  1196,   nil,
+    38,    38,   nil,   nil,   nil,    38,   nil,   nil,    38,   nil,
+   nil,    38,    38,    38,   nil,    38,    38,    74,    74,    74,
+   nil,    74,   nil,   nil,   nil,    74,    74,   nil,   nil,   nil,
+    74,  1196,    74,    74,    74,    74,    74,    74,    74,   nil,
+   nil,   nil,   nil,   nil,    74,    74,    74,    74,    74,    74,
+    74,   nil,   nil,    74,   nil,   nil,   nil,   nil,   nil,   nil,
+    74,   nil,   nil,    74,    74,    74,    74,    74,    74,    74,
+    74,   nil,    74,    74,    74,   nil,    74,    74,   nil,   nil,
+   nil,    74,   nil,   nil,   nil,   nil,   nil,  1209,   nil,  1209,
+  1209,  1209,  1209,  1209,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    74,   nil,  1209,    74,   nil,   nil,    74,    74,   nil,
+   nil,    74,   nil,    74,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1209,   nil,   nil,   nil,   nil,
+    74,    74,    74,    74,    74,    74,  1209,  1209,   nil,    74,
+    74,   nil,   nil,   nil,   nil,   nil,   nil,    74,   nil,   nil,
+    74,    74,    74,   nil,    74,    74,    75,    75,    75,   nil,
+    75,   nil,   nil,   nil,    75,    75,   nil,   nil,   nil,    75,
+  1209,    75,    75,    75,    75,    75,    75,    75,   nil,   nil,
+   nil,   nil,   nil,    75,    75,    75,    75,    75,    75,    75,
+   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,   nil,    75,
+   nil,   nil,    75,    75,    75,    75,    75,    75,    75,    75,
+   nil,    75,    75,    75,   nil,    75,    75,   nil,   nil,   nil,
+    75,   nil,   nil,   nil,   nil,   nil,  1211,   nil,  1211,  1211,
+  1211,  1211,  1211,   nil,   nil,   nil,   nil,    75,   nil,   nil,
+    75,   nil,  1211,    75,   nil,   nil,    75,    75,   nil,   nil,
+    75,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1211,   nil,   nil,   nil,   nil,    75,
+    75,    75,    75,    75,    75,  1211,  1211,   nil,    75,    75,
+   nil,   nil,   nil,   nil,   nil,   nil,    75,   nil,   nil,    75,
+    75,    75,   nil,    75,    75,    76,    76,    76,   nil,    76,
+   nil,   nil,   nil,    76,    76,   nil,   nil,   nil,    76,  1211,
+    76,    76,    76,    76,    76,    76,    76,   nil,   nil,   nil,
+   nil,   nil,    76,    76,    76,    76,    76,    76,    76,   nil,
+   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,
+   nil,    76,    76,    76,    76,    76,    76,    76,    76,   nil,
+    76,    76,    76,   nil,    76,    76,   nil,   nil,   nil,    76,
+   nil,   nil,   nil,   nil,   nil,  1213,   nil,  1213,  1213,  1213,
+  1213,  1213,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,
+   nil,  1213,    76,   nil,   nil,    76,    76,   nil,   nil,    76,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1213,   nil,   nil,   nil,   nil,    76,    76,
+    76,    76,    76,    76,  1213,  1213,   nil,    76,    76,   nil,
+   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,    76,    76,
+    76,   nil,    76,    76,   322,   322,   322,   nil,   322,   nil,
+   nil,   nil,   322,   322,   nil,   nil,   nil,   322,  1213,   322,
+   322,   322,   322,   322,   322,   322,   nil,   nil,   nil,   nil,
+   nil,   322,   322,   322,   322,   322,   322,   322,   nil,   nil,
+   322,   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,   nil,
+   322,   322,   322,   322,   322,   322,   322,   322,   nil,   322,
+   322,   322,   nil,   322,   322,   nil,   nil,   nil,   322,   nil,
+   nil,   nil,   nil,   nil,  1240,   nil,  1240,  1240,  1240,  1240,
+  1240,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   322,   nil,
+  1240,   322,   nil,   nil,   322,   322,   nil,   nil,   322,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1240,   nil,   nil,   nil,   nil,   322,   322,   322,
+   322,   322,   322,  1240,  1240,   nil,   322,   322,   nil,   nil,
+   nil,   322,   nil,   nil,   322,   nil,   nil,   322,   322,   322,
+   nil,   322,   322,   339,   339,   339,   nil,   339,   nil,   nil,
+   nil,   339,   339,   nil,   nil,   nil,   339,  1240,   339,   339,
+   339,   339,   339,   339,   339,   nil,   nil,   nil,   nil,   nil,
+   339,   339,   339,   339,   339,   339,   339,   nil,   nil,   339,
+   nil,   nil,   nil,   nil,   nil,   nil,   339,   nil,   nil,   339,
+   339,   339,   339,   339,   339,   339,   339,   nil,   339,   339,
+   339,   nil,   339,   339,   nil,   nil,   nil,   339,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   339,   nil,   nil,
+   339,   nil,   nil,   339,   339,   nil,   nil,   339,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   339,   339,   339,   339,
+   339,   339,   nil,   nil,   nil,   339,   339,   nil,   nil,   nil,
+   nil,   nil,   nil,   339,   nil,   nil,   339,   339,   339,   nil,
+   339,   339,   551,   551,   551,   nil,   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,   nil,   551,   nil,   nil,   551,   551,
+   551,   551,   551,   551,   551,   551,   nil,   551,   551,   551,
+   nil,   551,   551,   nil,   nil,   nil,   551,   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,   551,   nil,   nil,   551,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   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,   551,   551,   nil,   551,
+   551,   559,   559,   559,   nil,   559,   nil,   nil,   nil,   559,
+   559,   nil,   nil,   nil,   559,   nil,   559,   559,   559,   559,
+   559,   559,   559,   nil,   nil,   nil,   nil,   nil,   559,   559,
+   559,   559,   559,   559,   559,   nil,   nil,   559,   nil,   nil,
+   nil,   nil,   nil,   nil,   559,   nil,   nil,   559,   559,   559,
+   559,   559,   559,   559,   559,   nil,   559,   559,   559,   nil,
+   559,   559,   nil,   nil,   nil,   559,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,   559,   nil,
+   nil,   559,   559,   nil,   nil,   559,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   559,   559,   559,   559,   559,   559,
+   nil,   nil,   nil,   559,   559,   nil,   nil,   nil,   nil,   nil,
+   nil,   559,   nil,   nil,   559,   559,   559,   nil,   559,   559,
+   755,   755,   755,   nil,   755,   nil,   nil,   nil,   755,   755,
+   nil,   nil,   nil,   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,   755,   755,
+   755,   755,   755,   755,   nil,   755,   755,   755,   nil,   755,
+   755,   nil,   nil,   nil,   755,   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,   755,   nil,   nil,   755,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   755,   755,   nil,   755,   755,   766,
+   766,   766,   nil,   766,   nil,   nil,   nil,   766,   766,   nil,
+   nil,   nil,   766,   nil,   766,   766,   766,   766,   766,   766,
+   766,   nil,   nil,   nil,   nil,   nil,   766,   766,   766,   766,
+   766,   766,   766,   nil,   nil,   766,   nil,   nil,   nil,   nil,
+   nil,   nil,   766,   nil,   nil,   766,   766,   766,   766,   766,
+   766,   766,   766,   nil,   766,   766,   766,   nil,   766,   766,
+   nil,   nil,   nil,   766,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   766,   nil,   nil,   766,   nil,   nil,   766,
+   766,   nil,   nil,   766,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   766,   766,   766,   766,   766,   766,   nil,   nil,
+   nil,   766,   766,   nil,   nil,   nil,   nil,   nil,   nil,   766,
+   nil,   nil,   766,   766,   766,   nil,   766,   766,  1035,  1035,
+  1035,   nil,  1035,   nil,   nil,   nil,  1035,  1035,   nil,   nil,
+   nil,  1035,   nil,  1035,  1035,  1035,  1035,  1035,  1035,  1035,
+   nil,   nil,   nil,   nil,   nil,  1035,  1035,  1035,  1035,  1035,
+  1035,  1035,   nil,   nil,  1035,   nil,   nil,   nil,   nil,   nil,
+   nil,  1035,   nil,   nil,  1035,  1035,  1035,  1035,  1035,  1035,
+  1035,  1035,   nil,  1035,  1035,  1035,   nil,  1035,  1035,   nil,
+   nil,   nil,  1035,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1035,   nil,   nil,  1035,   nil,   nil,  1035,  1035,
+   nil,   nil,  1035,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1035,  1035,  1035,  1035,  1035,  1035,   nil,   nil,   nil,
+  1035,  1035,   nil,   nil,   nil,   nil,   nil,   nil,  1035,   nil,
+   nil,  1035,  1035,  1035,   nil,  1035,  1035,  1045,  1045,  1045,
+   nil,  1045,   nil,   nil,   nil,  1045,  1045,   nil,   nil,   nil,
+  1045,   nil,  1045,  1045,  1045,  1045,  1045,  1045,  1045,   nil,
+   nil,   nil,   nil,   nil,  1045,  1045,  1045,  1045,  1045,  1045,
+  1045,   nil,   nil,  1045,   nil,   nil,   nil,   nil,   nil,   nil,
+  1045,   nil,   nil,  1045,  1045,  1045,  1045,  1045,  1045,  1045,
+  1045,   nil,  1045,  1045,  1045,   nil,  1045,  1045,   nil,   nil,
+   nil,  1045,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1045,   nil,   nil,  1045,   nil,   nil,  1045,  1045,   nil,
+   nil,  1045,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1045,  1045,  1045,  1045,  1045,  1045,   nil,   nil,   nil,  1045,
+  1045,   nil,   nil,   nil,   nil,   nil,   nil,  1045,   nil,   nil,
+  1045,  1045,  1045,   nil,  1045,  1045,  1119,  1119,  1119,   nil,
+  1119,   nil,   nil,   nil,  1119,  1119,   nil,   nil,   nil,  1119,
+   nil,  1119,  1119,  1119,  1119,  1119,  1119,  1119,   nil,   nil,
+   nil,   nil,   nil,  1119,  1119,  1119,  1119,  1119,  1119,  1119,
+   nil,   nil,  1119,   nil,   nil,   nil,   nil,   nil,   nil,  1119,
+   nil,   nil,  1119,  1119,  1119,  1119,  1119,  1119,  1119,  1119,
+   nil,  1119,  1119,  1119,   nil,  1119,  1119,   nil,   nil,   nil,
+  1119,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1119,   nil,   nil,  1119,   nil,   nil,  1119,  1119,   nil,   nil,
+  1119,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1119,
+  1119,  1119,  1119,  1119,  1119,   nil,   nil,   nil,  1119,  1119,
+   nil,   nil,   nil,   nil,   nil,   nil,  1119,   nil,   nil,  1119,
+  1119,  1119,   nil,  1119,  1119,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
+   nil,   nil,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,   nil,   nil,   nil,   nil,   nil,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,   nil,    11,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,   nil,
+    11,    11,    11,    11,    11,    11,    11,   nil,   nil,    11,
+    11,   nil,   nil,   nil,    11,    11,    11,    11,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    11,    11,   nil,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,   nil,   nil,   nil,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,   nil,   nil,   nil,   nil,   nil,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
+   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    12,    12,   nil,    12,    12,    12,    12,    12,    12,    12,
+   nil,   nil,    12,    12,   nil,   nil,   nil,    12,    12,    12,
+    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    12,    12,   nil,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,   nil,   nil,
+    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    12,    77,    77,    77,    77,    77,    77,    77,    77,    77,
+    77,    77,    77,    77,    77,    77,    77,    77,    77,    77,
+    77,    77,    77,    77,    77,   nil,   nil,   nil,    77,    77,
+    77,    77,    77,    77,    77,    77,    77,    77,   nil,   nil,
+   nil,   nil,   nil,    77,    77,    77,    77,    77,    77,    77,
+    77,    77,    77,    77,    77,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,    77,    77,   nil,    77,    77,    77,    77,
+    77,    77,    77,   nil,   nil,    77,    77,   nil,   nil,   nil,
+    77,    77,    77,    77,   nil,   nil,   nil,   nil,   nil,    77,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,    77,   nil,
+    77,    77,    77,    77,    77,    77,    77,    77,    77,    77,
+    77,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    77,   107,   107,   107,   107,   107,   107,
+   107,   107,   107,   107,   107,   107,   107,   107,   107,   107,
+   107,   107,   107,   107,   107,   107,   107,   107,   nil,   nil,
+   nil,   107,   107,   107,   107,   107,   107,   107,   107,   107,
+   107,   nil,   nil,   nil,   nil,   nil,   107,   107,   107,   107,
+   107,   107,   107,   107,   107,   107,   107,   107,   nil,   107,
+   nil,   nil,   nil,   nil,   nil,   nil,   107,   107,   nil,   107,
+   107,   107,   107,   107,   107,   107,   nil,   nil,   107,   107,
+   nil,   nil,   nil,   107,   107,   107,   107,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   107,   107,   nil,   107,   107,   107,   107,   107,   107,   107,
+   107,   107,   107,   107,   nil,   nil,   107,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   107,   433,   433,   433,
+   433,   433,   433,   433,   433,   433,   433,   433,   433,   433,
+   433,   433,   433,   433,   433,   433,   433,   433,   433,   433,
+   433,   nil,   nil,   nil,   433,   433,   433,   433,   433,   433,
+   433,   433,   433,   433,   nil,   nil,   nil,   nil,   nil,   433,
+   433,   433,   433,   433,   433,   433,   433,   433,   nil,   nil,
+   433,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   433,
+   433,   nil,   433,   433,   433,   433,   433,   433,   433,   nil,
+   nil,   433,   433,   nil,   nil,   nil,   433,   433,   433,   433,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   433,   433,   nil,   433,   433,   433,   433,
+   433,   433,   433,   433,   433,   433,   433,   nil,   nil,   433,
+   433,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   433,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   433,
+   672,   672,   672,   672,   672,   672,   672,   672,   672,   672,
+   672,   672,   672,   672,   672,   672,   672,   672,   672,   672,
+   672,   672,   672,   672,   nil,   nil,   nil,   672,   672,   672,
+   672,   672,   672,   672,   672,   672,   672,   nil,   nil,   nil,
+   nil,   nil,   672,   672,   672,   672,   672,   672,   672,   672,
+   672,   nil,   nil,   672,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   672,   672,   nil,   672,   672,   672,   672,   672,
+   672,   672,   nil,   nil,   672,   672,   nil,   nil,   nil,   672,
+   672,   672,   672,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   672,   672,   nil,   672,
+   672,   672,   672,   672,   672,   672,   672,   672,   672,   672,
+   nil,   nil,   672,   672,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   672,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   672,   814,   814,   814,   814,   814,   814,   814,
+   814,   814,   814,   814,   814,   814,   814,   814,   814,   814,
+   814,   814,   814,   814,   814,   814,   814,   nil,   nil,   nil,
+   814,   814,   814,   814,   814,   814,   814,   814,   814,   814,
+   nil,   nil,   nil,   nil,   nil,   814,   814,   814,   814,   814,
+   814,   814,   814,   814,   nil,   nil,   814,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   814,   814,   nil,   814,   814,
+   814,   814,   814,   814,   814,   nil,   nil,   814,   814,   nil,
+   nil,   nil,   814,   814,   814,   814,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   814,
+   814,   nil,   814,   814,   814,   814,   814,   814,   814,   814,
+   814,   814,   814,   nil,   nil,   814,   nil,   nil,   nil,   nil,
+   491,   491,   491,   491,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   814,   491,   491,   491,   491,
+   nil,   nil,   nil,   491,   nil,   nil,   nil,   nil,   nil,   491,
+   491,   nil,   nil,   nil,   491,   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,
+   nil,   491,   nil,   nil,   491,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   491,
+   nil,   nil,   nil,   491,   491,   491,   491,   491,   491,   nil,
+   nil,   nil,   491,   491,   nil,   nil,   nil,   nil,   nil,   nil,
+   491,   nil,   nil,   491,   491,   491,   nil,   491,   491,   nil,
+   nil,   491,   491,   880,   880,   880,   880,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   880,
+   880,   880,   880,   nil,   nil,   nil,   880,   nil,   nil,   nil,
+   nil,   nil,   880,   880,   nil,   nil,   nil,   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,   nil,   880,   nil,   nil,   880,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   880,   nil,   nil,   nil,   880,   880,   880,   880,
+   880,   880,   nil,   nil,   nil,   880,   880,   nil,   nil,   nil,
+   nil,   nil,   nil,   880,   nil,   nil,   880,   880,   880,   nil,
+   880,   880,   nil,   nil,   880,   880,   883,   883,   883,   883,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   883,   883,   883,   883,   nil,   nil,   nil,   883,
+   883,   nil,   nil,   nil,   nil,   883,   883,   nil,   nil,   nil,
+   883,   883,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   883,   nil,   nil,   883,   nil,   nil,   nil,   883,   nil,   nil,
+   883,   nil,   883,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   883,   nil,   nil,   nil,   883,
+   883,   883,   883,   883,   883,   nil,   nil,   nil,   883,   883,
+   nil,   nil,   nil,   nil,   nil,   nil,   883,   nil,   883,   883,
+   883,   883,   nil,   883,   883,   nil,   nil,   883,   883,   884,
+   884,   884,   884,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   884,   884,   884,   884,   nil,
+   nil,   nil,   884,   884,   nil,   nil,   nil,   nil,   884,   884,
+   nil,   nil,   nil,   884,   884,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   884,   nil,   nil,   884,   nil,   nil,   nil,
+   884,   nil,   nil,   884,   nil,   884,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   884,   nil,
+   nil,   nil,   884,   884,   884,   884,   884,   884,   nil,   nil,
+   nil,   884,   884,   nil,   nil,   nil,   nil,   nil,   nil,   884,
+   nil,   884,   884,   884,   884,   nil,   884,   884,   nil,   nil,
+   884,   884,   886,   886,   886,   886,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   886,   886,
+   886,   886,   nil,   nil,   nil,   886,   nil,   nil,   nil,   nil,
+   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,   nil,   886,   nil,   nil,   886,   nil,   886,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   886,   nil,   nil,   nil,   886,   886,   886,   886,   886,
+   886,   nil,   nil,   nil,   886,   886,   nil,   nil,   nil,   nil,
+   nil,   nil,   886,   nil,   nil,   886,   886,   886,   nil,   886,
+   886,   nil,   nil,   886,   886,   891,   891,   891,   891,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   891,   891,   891,   891,   nil,   nil,   nil,   891,   nil,
+   nil,   nil,   nil,   nil,   891,   891,   nil,   nil,   nil,   891,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   891,
+   nil,   nil,   891,   nil,   nil,   nil,   891,   nil,   nil,   891,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   891,   nil,   nil,   nil,   891,   891,
+   891,   891,   891,   891,   nil,   nil,   nil,   891,   891,   nil,
+   nil,   nil,   nil,   nil,   nil,   891,   nil,   nil,   891,   891,
+   891,   nil,   891,   891,   nil,   nil,   891,   891,   940,   940,
+   940,   940,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   940,   940,   940,   940,   nil,   nil,
+   nil,   940,   940,   nil,   nil,   nil,   nil,   940,   940,   nil,
+   nil,   nil,   940,   940,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   940,   nil,   nil,   940,   nil,   nil,   nil,   940,
+   nil,   nil,   940,   nil,   940,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   940,   nil,   nil,
+   nil,   940,   940,   940,   940,   940,   940,   nil,   nil,   nil,
+   940,   940,   nil,   nil,   nil,   nil,   nil,   nil,   940,   nil,
+   940,   940,   940,   940,   nil,   940,   940,   nil,   nil,   940,
+   940,  1003,  1003,  1003,  1003,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1003,  1003,  1003,
+  1003,   nil,   nil,   nil,  1003,   nil,   nil,   nil,   nil,   nil,
+  1003,  1003,   nil,   nil,   nil,  1003,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1003,   nil,   nil,  1003,   nil,
+   nil,   nil,  1003,   nil,   nil,  1003,   nil,  1003,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1003,   nil,   nil,   nil,  1003,  1003,  1003,  1003,  1003,  1003,
+   nil,   nil,   nil,  1003,  1003,   nil,   nil,   nil,   nil,   nil,
+   nil,  1003,   nil,   nil,  1003,  1003,  1003,   nil,  1003,  1003,
+   nil,   nil,  1003,  1003,  1011,  1011,  1011,  1011,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1011,  1011,  1011,  1011,   nil,   nil,   nil,  1011,   nil,   nil,
+   nil,   nil,   nil,  1011,  1011,   nil,   nil,   nil,  1011,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1011,   nil,
+   nil,  1011,   nil,   nil,   nil,  1011,   nil,   nil,  1011,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1011,   nil,   nil,   nil,  1011,  1011,  1011,
+  1011,  1011,  1011,   nil,   nil,   nil,  1011,  1011,   nil,   nil,
+   nil,   nil,   nil,   nil,  1011,   nil,   nil,  1011,  1011,  1011,
+   nil,  1011,  1011,   nil,   nil,  1011,  1011,  1096,  1096,  1096,
+  1096,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1096,  1096,  1096,  1096,   nil,   nil,   nil,
+  1096,   nil,   nil,   nil,   nil,   nil,  1096,  1096,   nil,   nil,
+   nil,  1096,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1096,   nil,   nil,  1096,   nil,   nil,   nil,  1096,   nil,
+   nil,  1096,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1096,   nil,   nil,   nil,
+  1096,  1096,  1096,  1096,  1096,  1096,   nil,   nil,   nil,  1096,
+  1096,   nil,   nil,   nil,   nil,   nil,   nil,  1096,   nil,   nil,
+  1096,  1096,  1096,   nil,  1096,  1096,   nil,   nil,  1096,  1096,
+  1135,  1135,  1135,  1135,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1135,  1135,  1135,  1135,
+   nil,   nil,   nil,  1135,   nil,   nil,   nil,   nil,   nil,  1135,
+  1135,   nil,   nil,   nil,  1135,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1135,   nil,   nil,  1135,   nil,   nil,
+   nil,  1135,   nil,   nil,  1135,   nil,  1135,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1135,
+   nil,   nil,   nil,  1135,  1135,  1135,  1135,  1135,  1135,   nil,
+   nil,   nil,  1135,  1135,   nil,   nil,   nil,   nil,   nil,   nil,
+  1135,   nil,   nil,  1135,  1135,  1135,   nil,  1135,  1135,   nil,
+   nil,  1135,  1135,  1156,  1156,  1156,  1156,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1156,
+  1156,  1156,  1156,   nil,   nil,   nil,  1156,   nil,   nil,   nil,
+   nil,   nil,  1156,  1156,   nil,   nil,   nil,  1156,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1156,   nil,   nil,
+  1156,   nil,   nil,   nil,  1156,   nil,   nil,  1156,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1156,   nil,   nil,   nil,  1156,  1156,  1156,  1156,
+  1156,  1156,   nil,   nil,   nil,  1156,  1156,   nil,   nil,   nil,
+   nil,   nil,   nil,  1156,   nil,   nil,  1156,  1156,  1156,   nil,
+  1156,  1156,   nil,   nil,  1156,  1156,  1157,  1157,  1157,  1157,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1157,  1157,  1157,  1157,   nil,   nil,   nil,  1157,
+   nil,   nil,   nil,   nil,   nil,  1157,  1157,   nil,   nil,   nil,
+  1157,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1157,   nil,   nil,  1157,   nil,   nil,   nil,  1157,   nil,   nil,
+  1157,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1157,   nil,   nil,   nil,  1157,
+  1157,  1157,  1157,  1157,  1157,   nil,   nil,   nil,  1157,  1157,
+   nil,   nil,   nil,   nil,   nil,   nil,  1157,   nil,   nil,  1157,
+  1157,  1157,   nil,  1157,  1157,   nil,   nil,  1157,  1157,  1202,
+  1202,  1202,  1202,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1202,  1202,  1202,  1202,   nil,
+   nil,   nil,  1202,   nil,   nil,   nil,   nil,   nil,  1202,  1202,
+   nil,   nil,   nil,  1202,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1202,   nil,   nil,  1202,   nil,   nil,   nil,
+  1202,   nil,   nil,  1202,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1202,   nil,
+   nil,   nil,  1202,  1202,  1202,  1202,  1202,  1202,   nil,   nil,
+   nil,  1202,  1202,   nil,   nil,   nil,   nil,   nil,   nil,  1202,
+   nil,   nil,  1202,  1202,  1202,   nil,  1202,  1202,   nil,   nil,
+  1202,  1202,  1205,  1205,  1205,  1205,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1205,  1205,
+  1205,  1205,   nil,   nil,   nil,  1205,   nil,   nil,   nil,   nil,
+   nil,  1205,  1205,   nil,   nil,   nil,  1205,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   892,   892,   892,   892,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1205,   nil,   nil,  1205,
+   892,   892,   892,  1205,   nil,   nil,  1205,   nil,   nil,   nil,
+   nil,   nil,   nil,   892,   892,   nil,   nil,   nil,   892,   nil,
+   nil,  1205,   nil,   nil,   nil,  1205,  1205,  1205,  1205,  1205,
+  1205,   nil,   nil,   nil,  1205,  1205,   nil,   nil,   nil,   nil,
+   nil,   nil,  1205,   nil,   nil,  1205,  1205,  1205,   nil,  1205,
+  1205,   nil,   nil,  1205,  1205,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   892,   892,   892,
+   892,   892,   892,   nil,   nil,   nil,   892,   892,   893,   893,
+   893,   893,   nil,   nil,   892,   nil,   nil,   892,   892,   892,
+   nil,   892,   892,   nil,   893,   893,   893,   812,   nil,   812,
+   812,   812,   812,   812,   nil,   nil,   nil,   893,   893,   nil,
+   nil,   nil,   893,   812,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   812,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   812,   812,   812,   812,   nil,   nil,
+   nil,  1066,   nil,  1066,  1066,  1066,  1066,  1066,   nil,   nil,
+   nil,   893,   893,   893,   893,   893,   893,  1066,   nil,   nil,
+   893,   893,   nil,   nil,   nil,   nil,   nil,   nil,   893,   nil,
+   812,   893,   893,   893,   nil,   893,   893,   nil,   nil,  1066,
+   812,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1066,  1066,
+  1066,  1066,   nil,   nil,   nil,   nil,   230,   230,   nil,   nil,
+   230,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   230,
+   230,   nil,   230,   230,   230,   230,   230,   230,   230,   nil,
+   nil,   230,   230,   nil,  1066,   nil,   230,   230,   230,   230,
+   nil,   nil,   nil,   nil,  1066,   230,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   230,   230,   nil,   230,   230,   230,   230,
+   230,   230,   230,   230,   230,   230,   230,   nil,   nil,   230,
+   nil,   nil,   nil,   nil,   231,   231,   nil,   nil,   231,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   231,   231,   230,
+   231,   231,   231,   231,   231,   231,   231,   nil,   nil,   231,
+   231,   nil,   nil,   nil,   231,   231,   231,   231,   nil,   nil,
+   nil,   nil,   nil,   231,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   231,   231,   nil,   231,   231,   231,   231,   231,   231,
+   231,   231,   231,   231,   231,   nil,   nil,   231,   nil,   nil,
+   nil,   nil,   281,   281,   nil,   nil,   281,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   281,   281,   231,   281,   281,
+   281,   281,   281,   281,   281,   nil,   nil,   281,   281,   nil,
+   nil,   nil,   281,   281,   281,   281,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   281,
+   281,   nil,   281,   281,   281,   281,   281,   281,   281,   281,
+   281,   281,   281,   nil,   nil,   281,   nil,   nil,   nil,   nil,
+   484,   484,   nil,   nil,   484,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   484,   484,   281,   484,   484,   484,   484,
+   484,   484,   484,   nil,   nil,   484,   484,   nil,   nil,   nil,
+   484,   484,   484,   484,   nil,   nil,   nil,   nil,   nil,   484,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   484,   484,   nil,
+   484,   484,   484,   484,   484,   484,   484,   484,   484,   484,
+   484,   nil,   nil,   484,   nil,   nil,   nil,   nil,   485,   485,
+   nil,   nil,   485,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   485,   485,   484,   485,   485,   485,   485,   485,   485,
+   485,   nil,   nil,   485,   485,   nil,   nil,   nil,   485,   485,
+   485,   485,   nil,   nil,   nil,   nil,   nil,   485,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   485,   485,   nil,   485,   485,
+   485,   485,   485,   485,   485,   485,   485,   485,   485,   nil,
+   nil,   485,   nil,   nil,   nil,   nil,   554,   554,   nil,   nil,
+   554,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   554,
+   554,   485,   554,   554,   554,   554,   554,   554,   554,   nil,
+   nil,   554,   554,   nil,   nil,   nil,   554,   554,   554,   554,
+   nil,   nil,   nil,   nil,   nil,   554,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   554,   554,   nil,   554,   554,   554,   554,
+   554,   554,   554,   554,   554,   554,   554,   nil,   nil,   554,
+   nil,   nil,   nil,   nil,   555,   555,   nil,   nil,   555,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   555,   555,   554,
+   555,   555,   555,   555,   555,   555,   555,   nil,   nil,   555,
+   555,   nil,   nil,   nil,   555,   555,   555,   555,   nil,   nil,
+   nil,   nil,   nil,   555,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   555,   555,   nil,   555,   555,   555,   555,   555,   555,
+   555,   555,   555,   555,   555,   nil,   nil,   555,   nil,   nil,
+   nil,   nil,   563,   563,   nil,   nil,   563,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   563,   563,   555,   563,   563,
+   563,   563,   563,   563,   563,   nil,   nil,   563,   563,   nil,
+   nil,   nil,   563,   563,   563,   563,   nil,   nil,   nil,   nil,
+   nil,   563,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   563,
+   563,   nil,   563,   563,   563,   563,   563,   563,   563,   563,
+   563,   563,   563,   nil,   nil,   563,   nil,   nil,   nil,   nil,
+   564,   564,   nil,   nil,   564,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   564,   564,   563,   564,   564,   564,   564,
+   564,   564,   564,   nil,   nil,   564,   564,   nil,   nil,   nil,
+   564,   564,   564,   564,   nil,   nil,   nil,   nil,   nil,   564,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   564,   564,   nil,
+   564,   564,   564,   564,   564,   564,   564,   564,   564,   564,
+   564,   nil,   nil,   564,   nil,   nil,   nil,   nil,   593,   593,
+   nil,   nil,   593,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   593,   593,   564,   593,   593,   593,   593,   593,   593,
+   593,   nil,   nil,   593,   593,   nil,   nil,   nil,   593,   593,
+   593,   593,   nil,   nil,   nil,   nil,   nil,   593,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   593,   593,   nil,   593,   593,
+   593,   593,   593,   593,   593,   593,   593,   593,   593,   nil,
+   nil,   593,   nil,   nil,   nil,   nil,   594,   594,   nil,   nil,
+   594,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   594,
+   594,   593,   594,   594,   594,   594,   594,   594,   594,   nil,
+   nil,   594,   594,   nil,   nil,   nil,   594,   594,   594,   594,
+   nil,   nil,   nil,   nil,   nil,   594,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   594,   594,   nil,   594,   594,   594,   594,
+   594,   594,   594,   594,   594,   594,   594,   nil,   nil,   594,
+   nil,   nil,   nil,   nil,   600,   600,   nil,   nil,   600,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   600,   600,   594,
+   600,   600,   600,   600,   600,   600,   600,   nil,   nil,   600,
+   600,   nil,   nil,   nil,   600,   600,   600,   600,   nil,   nil,
+   nil,   nil,   nil,   600,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   600,   600,   nil,   600,   600,   600,   600,   600,   600,
+   600,   600,   600,   600,   600,   nil,   nil,   600,   nil,   nil,
+   nil,   nil,   601,   601,   nil,   nil,   601,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   601,   601,   600,   601,   601,
+   601,   601,   601,   601,   601,   nil,   nil,   601,   601,   nil,
+   nil,   nil,   601,   601,   601,   601,   nil,   nil,   nil,   nil,
+   nil,   601,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   601,
+   601,   nil,   601,   601,   601,   601,   601,   601,   601,   601,
+   601,   601,   601,   nil,   nil,   601,   nil,   nil,   nil,   nil,
+   679,   679,   nil,   nil,   679,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   679,   679,   601,   679,   679,   679,   679,
+   679,   679,   679,   nil,   nil,   679,   679,   nil,   nil,   nil,
+   679,   679,   679,   679,   nil,   nil,   nil,   nil,   nil,   679,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   679,   679,   nil,
+   679,   679,   679,   679,   679,   679,   679,   679,   679,   679,
+   679,   nil,   nil,   679,   nil,   nil,   nil,   nil,   680,   680,
+   nil,   nil,   680,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   680,   680,   679,   680,   680,   680,   680,   680,   680,
+   680,   nil,   nil,   680,   680,   nil,   nil,   nil,   680,   680,
+   680,   680,   nil,   nil,   nil,   nil,   nil,   680,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   680,   680,   nil,   680,   680,
+   680,   680,   680,   680,   680,   680,   680,   680,   680,   nil,
+  1110,   680,  1110,  1110,  1110,  1110,  1110,  1113,   nil,  1113,
+  1113,  1113,  1113,  1113,   nil,   nil,  1110,   nil,   nil,   nil,
+   nil,   680,   nil,  1113,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1110,   nil,
+   nil,   nil,   nil,   nil,   nil,  1113,   nil,  1110,  1110,  1110,
+  1110,   nil,   nil,   nil,  1113,  1113,  1113,  1113,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1174,  1174,   nil,   nil,  1174,
+   nil,   nil,   nil,  1110,   nil,   nil,   nil,   nil,  1174,  1174,
+  1113,  1174,  1174,  1174,  1174,  1174,  1174,  1174,   nil,   nil,
+  1174,  1174,   nil,   nil,   nil,  1174,  1174,  1174,  1174,   nil,
+   nil,   nil,   nil,   nil,  1174,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1174,  1174,   nil,  1174,  1174,  1174,  1174,  1174,
+  1174,  1174,  1174,  1174,  1174,  1174,   nil,   nil,  1174,   nil,
+   nil,   nil,   nil,  1179,  1179,   nil,   nil,  1179,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1179,  1179,  1174,  1179,
+  1179,  1179,  1179,  1179,  1179,  1179,   nil,   nil,  1179,  1179,
+   nil,   nil,   nil,  1179,  1179,  1179,  1179,   nil,   nil,   nil,
+   nil,   nil,  1179,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1179,  1179,   nil,  1179,  1179,  1179,  1179,  1179,  1179,  1179,
+  1179,  1179,  1179,  1179,   nil,   nil,  1179,   nil,   nil,   nil,
+   nil,  1180,  1180,   nil,   nil,  1180,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1180,  1180,  1179,  1180,  1180,  1180,
+  1180,  1180,  1180,  1180,   nil,   nil,  1180,  1180,   nil,   nil,
+   nil,  1180,  1180,  1180,  1180,   nil,   nil,   nil,   nil,   nil,
+  1180,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1180,  1180,
+   nil,  1180,  1180,  1180,  1180,  1180,  1180,  1180,  1180,  1180,
+  1180,  1180,   nil,  1207,  1180,  1207,  1207,  1207,  1207,  1207,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1207,
+   nil,   nil,   nil,   nil,  1180,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1207,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1207,  1207,  1207,  1207,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1207 ]
+
+racc_action_pointer = [
+   nil,    32,  1098,    58,   nil,   202,   nil,   nil,  5417,   808,
+   nil, 25583, 25716,    72,   nil,    71,    92,   432,   167,   242,
+   267,   nil,   106,  5560,  1242,   246,   nil,   -40,   nil,   165,
+  5698,  5830,  5960,  6103,  6246,   nil,  1242, 23637, 23776,   nil,
+   187,   377,   409,   370,  6389,  6532,   164,  6675,  6818,   518,
+  6961,   317,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  7099,   nil,  7240,   nil,   nil,   -22,   nil,  7383,
+  7526,   nil,   nil,  7669, 23915, 24054, 24193, 25849,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,
+   nil,   326,   359,   368,   378,   nil,   nil, 25982,   nil,   nil,
+   nil,   nil,   nil,   nil,     0,   nil,   nil,   136,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  7812,   nil,   nil,   nil,   nil,  7955,  8098,  8241,  8384,  8527,
+   415,   nil,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   418,   nil,  1386,  8670,  8813,  8956,  9099,  9242,  9385,
+ 28295, 28363,   nil,   nil,  9528,  9671,  9814,   nil,   nil,   376,
+   104,   112,   510,   147,   421,   490,   nil,  9957,  1530,   489,
+   nil, 10100, 10243, 10386, 10529, 10672, 10815, 10958, 11101, 11244,
+ 11387, 11530, 11673, 11816, 11959, 12102, 12245, 12388, 12531, 12674,
+ 12817, 12960, 13103,   nil,   nil,   nil,   nil, 13246,   nil,   nil,
+   nil, 28431,   nil,   nil,   499, 13389, 13532,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil, 13675,   nil,  1674,   nil,   476,
+   505,   nil, 13818,   548, 13961,   nil,   nil, 14104, 14247,   nil,
+   nil,   417,   nil,   nil, 14390,  1371,   nil,   498,  1674,   553,
+   592,   566, 24332,  1818,   380,   455,   504,   646,   516,   nil,
+   613,   587,   193,   nil,   nil,   nil,   625,   167,   612, 24471,
+   nil,   449,   591,  2538,  2682,   703,   nil,   709, 14533,   nil,
+ 14676,  1962,  1515,   652, 14819, 14962,   nil,   768,    -8,     8,
+ 15105,  2106,  2250,   462,   764,   664,   -19,    -7,   620,   742,
+    24,   791,   nil,   nil,   955,  1087,   -20,   nil,   640,   nil,
+   720, 15248,   nil,   nil,   nil,   244,   356,   412,   416,   481,
+   514,   552,   555,   576,   nil,   596,   nil,   nil,   337,   nil,
+   308,   nil,   382,   nil,   403,   nil,   719,   440,   nil,   737,
+   481,   nil,   740,   -59,   nil,   742,   -58,   nil,   485,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil, 26115,   nil,   nil,   nil,   nil,   755,   nil,
+   834,   752, 15391,   773,   nil,   nil,   770,   nil,   650,   214,
+   887,   nil,   nil,  1386,   nil,   nil,   nil,   nil,   nil,  1530,
+   805,   nil,   nil,   803,   804,   513,   597,  7240,   nil,   nil,
+   nil,   272,   408,   845,   nil,   nil, 15529, 15661,   nil,   nil,
+   nil,   -26,   nil,   853, 28499, 28567, 15794,   223, 15937, 16080,
+ 16223, 26468,  2826,  2970,   805,  1067,   879,   882,   884,   886,
+  4554,  4698,  1121,  3114,  3258,  3402,  3546,  3690,  3834,   897,
+   908,  3978,  4122,  1818,  4266,   946,   nil, 16361,   nil,   nil,
+   nil,   nil, 16487,   830,   834,   848,   nil,   nil,   nil,   852,
+   nil,   nil, 16630,   nil,   nil, 16773,   nil, 16916,   nil,   196,
+   nil,   nil,   nil, 17059,  1659,   867,   859,   857,   nil,   nil,
+   858, 24610,   872, 17202, 28635, 28703,   652,   909,   nil, 24749,
+   875,   nil, 17345, 28771, 28839, 17488,  4410,  1962, 17631,  1001,
+  1000,   884,   nil,   nil,   534,   573,   889,   903,   nil,   643,
+   930,  2394,  1022,   nil,  2538,    63,  1029,  1032,   436,  1033,
+   nil,   nil, 17774, 28907, 28975,    26,   nil,   nil,   725,   nil,
+ 29043, 29111, 17917,   nil,   nil,   nil,   784,  2682,   954,   nil,
+   nil,   nil, 18060,   nil,   475,   nil,   918,   919,   921,   nil,
+   923,   933,   937,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   923,   784,   nil,   nil, 18203,   nil,   nil,   nil,     0,
+   nil,   nil,   nil,  1022,   nil,   nil,  1024,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   298,   nil,   nil,   nil,   946,   nil,   nil,   947,   nil,
+  2826,   nil, 26248,   nil, 18346,   951, 18489, 18632, 18775, 29179,
+ 29247, 18918, 19061,   644,   987, 19204, 19347, 19490, 19633,   987,
+   nil,   nil,   nil, 19776, 19919,   989,   nil,   nil,   nil,   236,
+   243,   544,   680,   966,  1005,   nil,   986,   nil,   nil,   317,
+   195,   -67,   nil,   796,   nil,   nil,  7099, 16346,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1045,
+     5,   nil,   977,   nil,   113,  1080,   -19,   nil,   nil, 20062,
+   nil,   997,   nil,  1102,   nil,   993,   nil,  1036, 20205,   nil,
+   nil, 20348,   nil,   nil,   -85, 24888,   996,   nil,  1000,    -9,
+    -5,  1050,    25,   776,  1064,  1029, 25027,   nil,  1094,   -14,
+   683,   nil, 20491,   nil,   nil,   nil,   nil, 20634,   nil,   nil,
+ 20777,   nil,   nil,   nil,   884,   nil,  1154,   nil,   nil,   nil,
+   nil,   nil,  1160,  1166,   nil,   nil, 20920,  1050,    29,    30,
+   162,   163,  2970,  1089,   784,   nil,  1052,  3114, 21063,   598,
+  1171,  3258, 28186,   611, 26381,    -7,    34,  1059,   231,   nil,
+   nil,   805,   nil,   745,   nil,   883,   nil,  5662,   nil, 21206,
+   nil,  1084,   nil,  1057,  1060,   685,  1066,   nil,   nil,   nil,
+   nil,   nil,  1153,  3402,   nil,   nil,   nil,   nil,   nil,  1080,
+   nil,   nil,  1066, 21349,  1071,   251,   266,   816,   952,   nil,
+  2106, 21492,   nil,  1069,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil, 21635, 21778, 21921, 22064,   277,  1151,
+ 26581,  1112,   314, 26694, 26807,   319, 26920,   nil,    58,   nil,
+  1096, 27033, 28092, 28186,   nil,   nil,   nil,   nil,   nil, 22207,
+   nil,   nil,  5761,   nil,  3546,   nil,   nil,  1106,  1095,   nil,
+   127,   nil,   nil,   nil,   nil,  1099,    39,   nil,   nil,   nil,
+   nil,   nil,   nil,  3690,   nil,  1103,  1148,   nil,   nil,   688,
+  1230,   nil,   nil, 22350,   nil,  3834,  1231,   nil,   nil,   nil,
+ 27146,   nil, 22493,    69,    68,  1240,   nil,  1241,   601,   nil,
+   nil,  1242,  1128,  1126,  1130,   nil,   635,   nil,   nil,   nil,
+  3978,  4122,  1127,  1141,  1139,   nil,  1218,   nil,   nil,  1141,
+  1149,   nil,  1155,  1169,   nil,  1173,   nil,   nil,  1179,  2380,
+  1017,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1182,   nil,
+  1194,   313,   nil,   nil, 22636, 22779,   nil,   nil,   nil,   nil,
+   -63,  1233,  1236, 27259,   nil,  1200,   -33,  1201,   nil,   nil,
+   nil, 27372,   nil,     1,  1206,  1207,   nil,  1210,  1211,   nil,
+   740,   nil,   nil,  2250,  1210,  1213,  1225,   nil,  1226,  1227,
+  1234,   nil,  1255,  1239,  1222, 25166,   nil,   nil,   nil,   nil,
+   nil,  4266,  4410,   nil,     9, 25305,   nil,   nil,   nil,    35,
+   nil,   nil,    43,   872,   -31,   nil,   nil,   nil, 22922,  4554,
+   nil,   nil,   nil,  4698,   nil,   nil, 28240,   nil,   nil,  1280,
+  1258,  1363,   916,   nil,   nil, 15493,   nil,  7063,   nil, 15592,
+   nil, 16367,   nil,   nil,   nil,   nil,  1244,  1246,   nil,   nil,
+   nil,  1288,  1251,   131,   nil,  1254, 27485,   201,  1296,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,   nil,
+ 29309,   nil,   nil, 29316,   nil, 23658,   nil,   nil,  1284, 25444,
+   786,  1339,   nil,  1387,  4842,   120,   135,   863,  1343,   144,
+   nil,  4986,   nil, 23065, 23208, 27598,   nil, 23351,   441,  1390,
+  1274,  5130,   nil,   nil,   707,   nil,   nil,   nil,  1273,  1293,
+  1294,  1296,  1034,  2410,   nil,  1297, 27711, 27824,  1298,   nil,
+   nil,   nil,   nil,  1299,   nil,   nil,  1313,  1317,  1320,  1335,
+   nil,  1338,   nil,   912, 29384,   nil,   nil,  1461, 23494, 29452,
+ 29520,   145,   900,  5274,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1462,   nil,  1228, 23797,   nil,   nil,   nil,
+   nil,  1344, 27937,  1345,  1347, 28050,   nil, 29582,   nil, 23936,
+   nil, 24075,   nil, 24214,   nil,   nil,  1387,  1390,   nil,  1355,
+   158,   168,   169,   236,   nil,   310,   nil,   nil,  1354,  1357,
+   nil,  1369,  1370,  1371,  1378,   171,   nil,   nil,   nil,   nil,
+ 24353,   nil,   nil,   nil,   nil,  1379,   nil ]
+
+racc_action_default = [
+    -1,  -754,  -753,  -754,    -2,  -739,    -4,    -5,  -754,    -8,
+    -9,  -754,  -754,  -754,   -36,  -754,  -754,   -41,  -754,  -754,
+  -301,   -53,  -741,  -754,   -60,   -65,   -66,   -67,   -71,  -278,
+  -278,  -278,  -316,  -347,  -348,   -83,  -753,   -87,   -95,   -97,
+  -754,  -635,  -636,  -754,  -754,  -754,  -754,  -754,  -754,  -235,
+  -754,  -741,  -249,  -292,  -293,  -294,  -295,  -296,  -297,  -298,
+  -299,  -300,  -725,  -303,  -305,  -312,  -314,  -324,  -326,  -754,
+  -754,   -62,   -62,  -739,  -754,  -754,  -754,  -754,  -349,  -350,
+  -352,  -353,  -354,  -355,  -356,  -357,  -358,  -359,  -360,  -361,
+  -370,  -426,  -565,  -566,  -567,  -568,  -569,  -753,  -572,  -753,
+  -753,  -753,  -753,  -753,  -753,  -608,  -609,  -753,  -611,  -617,
+  -619,  -620,  -621,  -622,  -723,  -624,  -625,  -724,  -627,  -628,
+  -629,  -630,  -631,  -632,  -633,  -634,  -639,  -640,  1247,    -3,
+  -740,  -749,  -750,  -751,    -7,  -754,  -754,  -754,  -754,  -754,
+  -754,   -24,  -754,  -126,  -127,  -128,  -129,  -130,  -131,  -132,
+  -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,  -194,  -195,
+  -196,  -197,  -198,  -199,  -200,  -201,  -202,  -203,  -204,  -205,
+  -206,   -29,  -133,  -753,  -754,  -754,  -754,  -754,  -754,  -753,
+  -754,  -754,  -735,  -736,  -754,  -754,  -741,  -742,   -57,  -754,
+  -635,  -636,  -754,  -301,  -754,  -754,  -241,  -754,  -753,  -754,
+   -58,  -218,  -219,  -754,  -754,  -754,  -754,  -754,  -754,  -754,
+  -754,  -754,  -754,  -754,  -754,  -754,  -754,  -754,  -754,  -754,
+  -754,  -754,  -754,  -250,  -251,  -252,  -253,  -754,  -363,  -454,
+  -434,  -754,  -737,  -738,   -72,  -753,  -754,  -323,  -362,  -438,
+  -447,  -449,   -78,  -444,   -79,  -741,   -80,  -256,  -273,  -753,
+  -753,  -277,  -754,  -283,  -754,  -753,  -717,  -754,  -754,   -81,
+   -82,  -739,   -17,   -18,  -754,   -21,   -22,   -85,  -753,  -741,
+  -754,   -88,   -91,  -753,  -103,  -104,  -754,  -754,  -111,  -316,
+  -319,  -741,  -754,  -347,  -348,  -351,  -445,  -754,   -93,  -754,
+   -99,  -311,  -754,  -220,  -221,  -618,  -229,  -230,  -754,  -242,
+  -754,  -753,  -307,  -741,  -753,  -753,  -325,   -61,  -754,  -754,
+  -754,  -753,  -753,  -739,  -754,  -740,  -635,  -636,  -754,  -754,
+  -301,  -754,  -380,  -381,  -121,  -122,  -754,  -124,  -754,  -301,
+  -753,  -754,  -635,  -636,  -340,  -126,  -127,  -166,  -167,  -168,
+  -184,  -189,  -196,  -199,  -342,  -754,  -712,  -713,  -670,  -570,
+  -754,  -593,  -754,  -595,  -754,  -597,  -754,  -754,  -577,  -754,
+  -754,  -583,  -754,  -754,  -589,  -754,  -754,  -591,  -754,  -610,
+  -612,  -613,  -614,  -615,    -6,  -752,   -30,   -31,   -32,   -33,
+   -34,   -10,   -11,  -754,   -26,   -27,   -28,  -134,  -754,   -37,
+   -40,  -288,  -754,  -754,  -287,   -38,  -754,   -42,  -754,  -301,
+   -50,   -52,  -207,  -261,  -283,   -54,   -55,   -43,  -208,  -261,
+  -741,  -268,  -269,  -753,  -753,  -726,  -727,  -278,  -442,  -728,
+  -729,  -727,  -726,  -278,  -441,  -443,  -728,  -729,   -49,  -215,
+   -56,  -741,  -322,  -754,  -754,  -754,  -753,  -311,  -754,  -754,
+  -754,  -754,  -216,  -217,  -222,  -223,  -224,  -225,  -226,  -227,
+  -231,  -232,  -233,  -234,  -236,  -237,  -238,  -239,  -240,  -243,
+  -244,  -245,  -246,  -741,  -254,  -754,  -455,  -278,  -726,  -727,
+   -69,   -73,  -671,  -741,  -753,  -741,  -279,  -451,  -454,  -741,
+  -318,  -274,  -754,  -282,  -275,  -754,  -280,  -754,  -284,  -754,
+  -720,  -722,   -16,  -740,   -20,  -754,  -741,   -84,  -309,  -100,
+   -89,  -754,  -741,  -753,  -754,  -754,  -110,  -754,  -618,  -754,
+   -96,  -101,  -754,  -754,  -754,  -754,  -255,  -247,  -754,  -557,
+  -754,  -741,  -306,  -257,  -746,  -746,  -741,  -754,  -715,  -746,
+  -754,  -753,  -371,  -372,  -753,  -754,  -754,  -754,  -754,  -754,
+  -366,  -461,  -753,  -754,  -754,  -311,   -62,  -121,  -122,  -123,
+  -754,  -754,  -753,  -335,  -641,  -643,  -337,  -753,  -647,  -344,
+  -733,  -734,  -754,  -427,  -670,  -430,  -711,  -711,  -711,  -653,
+  -655,  -655,  -655,  -669,  -672,  -673,  -674,  -675,  -676,  -677,
+  -678,  -679,  -754,  -681,  -683,  -685,  -690,  -692,  -693,  -696,
+  -701,  -703,  -704,  -706,  -707,  -708,  -754,  -571,  -594,  -599,
+  -600,  -602,  -573,  -596,  -574,  -598,  -575,  -576,  -754,  -579,
+  -581,  -754,  -582,  -585,  -586,  -754,  -587,  -588,  -754,  -616,
+  -753,   -25,  -754,   -35,  -754,  -291,  -754,  -754,  -753,  -754,
+  -754,  -754,  -754,  -446,  -754,  -270,  -272,  -754,  -754,   -74,
+  -266,  -267,  -439,  -754,  -754,   -76,  -440,  -321,  -743,  -726,
+  -727,  -726,  -727,  -741,   -59,  -478,  -480,  -482,  -485,  -538,
+  -492,  -495,  -498,  -531,  -536,  -537,  -754,  -754,  -541,  -542,
+  -543,  -544,  -545,  -546,  -547,  -548,  -549,  -550,  -551,  -754,
+  -754,  -555,  -754,  -433,  -753,   -68,  -435,  -451,  -263,  -270,
+  -265,  -754,  -452,  -754,  -317,  -753,  -281,  -285,  -754,  -718,
+  -719,  -754,   -19,   -23,   -86,  -754,   -92,   -98,  -741,  -726,
+  -727,  -753,  -730,  -109,  -754,   -94,  -754,  -214,  -228,  -741,
+  -753,  -364,  -753,  -304,  -369,  -308,  -258,  -748,  -747,  -260,
+  -748,  -313,  -315,  -716,  -753,  -373,  -753,   -63,  -374,  -375,
+  -329,  -330,  -754,  -754,  -465,  -332,  -754,  -741,  -726,  -727,
+  -730,  -310,  -753,  -121,  -122,  -125,  -741,  -753,  -754,  -754,
+  -754,  -753,  -670,  -670,  -754,  -741,  -754,  -741,  -754,  -650,
+  -651,  -754,  -652,  -754,  -662,  -754,  -665,  -754,  -667,  -754,
+  -382,  -754,  -384,  -386,  -389,  -392,  -741,  -684,  -694,  -695,
+  -705,  -709,  -754,  -753,  -578,  -580,  -584,  -590,  -592,  -754,
+  -135,   -39,  -289,  -754,  -741,  -726,  -727,  -727,  -726,   -51,
+  -262,  -754,  -744,  -753,   -45,  -210,   -46,  -211,   -75,   -47,
+  -213,   -48,  -212,   -77,  -754,  -754,  -754,  -754,  -446,  -754,
+  -754,  -483,  -484,  -754,  -754,  -754,  -754,  -494,  -754,  -497,
+  -754,  -754,  -534,  -535,  -539,  -540,  -552,  -122,  -553,  -754,
+  -415,  -416,  -741,  -418,  -753,  -437,  -436,  -754,  -741,  -448,
+  -753,  -450,  -276,  -286,  -721,   -90,  -446,  -102,  -320,   -13,
+   -15,  -365,  -367,  -753,  -564,  -558,  -753,  -559,  -560,  -746,
+  -754,  -368,  -376,  -754,  -378,  -753,  -754,   -64,  -331,  -333,
+  -754,  -457,  -754,  -754,  -446,  -754,  -446,  -754,  -754,  -338,
+  -341,  -754,  -741,  -655,  -741,  -671,  -754,  -345,  -714,  -428,
+  -753,  -753,  -420,  -741,  -711,  -691,  -696,  -710,  -654,  -655,
+  -655,  -682,  -655,  -655,  -702,  -655,  -679,  -697,  -741,  -754,
+  -754,  -391,  -680,  -601,  -604,  -605,  -606,  -607,  -754,   -12,
+  -290,  -446,   -44,  -209,  -271,  -754,  -479,  -481,  -488,  -491,
+  -500,  -754,  -754,  -501,  -507,  -754,  -512,  -518,  -520,  -522,
+  -523,  -526,  -527,  -529,  -741,  -741,  -554,  -741,  -741,  -745,
+  -754,  -532,  -533,  -248,  -711,  -711,  -711,  -397,  -753,  -753,
+  -753,  -414,  -754,  -741,  -679,  -687,  -688,  -699,  -456,   -70,
+  -264,  -753,  -753,  -563,  -754,  -754,  -562,  -259,  -327,  -754,
+  -379,  -328,  -754,  -470,  -473,  -476,  -477,  -458,  -754,  -753,
+  -334,  -336,  -642,  -753,  -343,  -644,  -754,  -646,  -648,  -647,
+  -754,  -754,  -754,  -429,  -649,  -754,  -658,  -754,  -660,  -754,
+  -663,  -754,  -666,  -668,  -383,  -385,  -387,  -390,  -603,  -486,
+  -487,  -516,  -502,  -505,  -508,  -510,  -754,  -519,  -525,  -528,
+  -530,  -489,  -490,  -493,  -496,  -499,  -754,  -394,  -395,  -396,
+  -405,  -399,  -407,  -754,  -410,  -754,  -412,  -417,  -754,  -754,
+  -686,  -754,  -453,  -753,  -753,  -635,  -636,  -754,  -754,  -301,
+  -561,  -753,  -466,  -754,  -754,  -474,  -459,  -754,  -753,  -754,
+  -741,  -753,  -431,  -432,  -741,  -422,  -424,  -425,  -655,  -655,
+  -655,  -655,  -754,  -754,  -509,  -503,  -754,  -754,  -513,  -514,
+  -517,  -521,  -524,  -711,  -689,  -398,  -753,  -753,  -753,  -753,
+  -700,  -753,  -419,  -698,  -754,  -311,   -14,  -557,  -753,  -754,
+  -754,  -311,  -753,  -753,  -471,  -472,  -475,  -460,  -462,  -463,
+  -464,  -339,  -645,  -754,  -421,  -754,  -754,  -656,  -659,  -661,
+  -664,  -388,  -754,  -506,  -511,  -754,  -393,  -754,  -402,  -754,
+  -404,  -754,  -408,  -754,  -411,  -413,  -310,  -730,  -556,  -741,
+  -726,  -727,  -730,  -310,  -377,  -753,  -346,  -423,  -655,  -504,
+  -515,  -753,  -753,  -753,  -753,  -446,  -467,  -468,  -469,  -657,
+  -754,  -400,  -403,  -406,  -409,  -753,  -401 ]
+
+racc_goto_table = [
+     6,    42,   298,   298,   298,   525,   321,    42,   230,   589,
+   280,   770,   394,   289,   293,   356,   282,     4,   133,   793,
+   235,   683,   460,   444,   445,   599,   146,   146,   704,   238,
+   811,   141,   222,   457,   431,    42,   325,   325,   930,   478,
+   581,   584,   420,   920,   534,   335,   335,   936,   130,   350,
+   149,   149,   615,   129,   345,   889,   361,   362,   515,   746,
+   749,   317,   746,    42,   358,   359,   623,   969,   363,   570,
+  1029,   830,   338,   367,   383,   383,   383,   741,   523,   560,
+   963,   319,   335,   335,   335,   974,   133,   836,   299,   299,
+   299,   904,   146,   441,   454,   401,   134,   403,   405,   408,
+   411,   414,   417,  1085,   400,   401,   971,   521,   284,   292,
+   294,   467,   473,  1145,   418,  1147,  1087,     1,   296,   309,
+   310,   364,   146,   300,   300,   300,     2,  1170,   140,    42,
+   426,   427,   428,   429,   670,   357,   357,   781,    42,   357,
+   970,   658,   972,   919,   661,   458,  1001,  1014,    16,  1017,
+  1042,   479,   380,   384,    16,   776,   779,   894,   895,   752,
+   783,   545,   517,   221,   373,  1032,   440,   433,   491,  1002,
+  1015,   536,   787,   538,  1018,   937,   540,   541,   819,   820,
+   822,   281,    16,  1158,   737,   672,   348,   631,   320,   576,
+     9,   736,   396,   577,   371,   603,     9,   395,   609,   298,
+   351,   357,   357,   357,   357,   353,   571,   354,   534,   355,
+    16,   749,   746,   746,   468,   807,   809,  1063,   424,  1030,
+   372,  1170,    42,   607,   580,   608,  1056,   461,   484,   814,
+   439,   450,  1069,   792,   450,  1086,  1227,  1031,  1147,  1033,
+   450,  1144,   613,  1203,  1204,   959,   477,    42,   398,   805,
+   451,   816,   352,   451,   527,   298,   298,   528,   910,   451,
+   943,   734,  1188,   796,   878,   298,   746,  1041,   817,  1052,
+   830,   887,  1236,   940,   981,  1183,    16,  1085,  1166,   703,
+   443,   443,   623,   461,  1053,    16,   978,   907,  1201,  1229,
+  1055,   756,   455,   456,   996,   997,  1118,   533,   533,   765,
+   883,   480,   481,   401,   884,   749,   886,   743,   561,   888,
+   969,   675,   539,    42,   891,   554,   289,    42,     9,   916,
+   293,   325,    42,  1160,   133,   810,  1161,   430,  1162,   557,
+   335,   563,   926,  1021,  1022,   974,  1044,   399,   325,   402,
+   404,   524,   299,   317,   407,   558,   758,   335,   317,   971,
+    42,   299,   573,   578,   543,   585,   550,   593,   944,   542,
+    42,    42,  1104,   546,   971,   467,   473,   946,   552,    16,
+   410,   446,   526,   413,   446,   438,   133,   300,   605,   898,
+   446,   529,   416,   970,   983,   797,   300,   842,   843,   419,
+   826,   828,  1148,   971,    16,   806,  1176,   808,  1186,  1189,
+   320,   747,   965,   631,   580,   479,   750,   458,  1164,   612,
+   574,   588,   nil,   nil,   nil,   991,   nil,   nil,   830,   830,
+  1000,  1000,   nil,  1000,   nil,   nil,   357,  1167,  1020,   nil,
+  1168,   nil,   nil,   nil,   nil,   761,  1224,   679,   nil,   753,
+   nil,   nil,   nil,   999,   761,   575,   579,   606,   146,   nil,
+   nil,   691,   nil,   671,   nil,   nil,   298,   696,   684,   908,
+    16,   533,   533,   nil,    16,   690,   952,   956,   468,    16,
+   320,   854,   149,   nil,   761,   320,   nil,  1054,   nil,   767,
+   623,   623,   761,   nil,   461,   nil,  1237,   nil,   nil,   912,
+   726,  1141,   864,   866,   nil,   915,   971,    16,   869,   871,
+   477,   691,   544,   nil,   837,   nil,   nil,    16,    16,   nil,
+  1047,   732,   868,   586,   587,   690,   nil,   nil,   873,   749,
+   561,   746,   533,   298,  1231,   947,  1074,   nil,   561,   951,
+   nil,   653,   954,   655,  1016,   nil,   659,   nil,   468,   659,
+   nil,   nil,    42,   nil,   nil,   852,   689,   468,  1098,   nil,
+   325,   461,   695,   nil,   747,   580,   nil,   nil,   325,   335,
+   467,   473,   298,   nil,   nil,   nil,   nil,   335,   nil,   nil,
+   477,   927,   298,   nil,   684,  1101,  1102,   468,  1103,   477,
+    42,   802,   nil,    42,   nil,   468,  1107,  1108,  1109,   nil,
+   461,   830,   830,   nil,   nil,   nil,   735,   nil,   788,   nil,
+   461,   631,   631,   nil,   865,   867,    42,   912,   747,   477,
+   870,   872,   631,   nil,   631,   477,   nil,   913,   nil,  1218,
+   914,   nil,  1038,   745,   nil,  1059,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   769,   nil,   nil,   nil,   nil,   nil,
+   nil,   925,   nil,   nil,  1092,   nil,   747,   nil,   298,   580,
+   nil,   nil,   nil,   nil,   nil,   nil,  1238,   nil,   nil,   nil,
+   nil,   nil,   nil,   468,   nil,   941,   992,   nil,     6,    42,
+   nil,   nil,  1000,    42,   nil,   nil,   461,   nil,   815,  1071,
+    42,   nil,   nil,   450,   906,   849,   nil,   146,   482,    16,
+   nil,  1034,   850,   450,   450,   477,   nil,   nil,   977,   450,
+   450,   684,   451,   nil,   nil,   nil,   nil,   nil,   684,   890,
+   nil,   149,   451,   451,   nil,   726,   726,    18,   451,   451,
+   905,   nil,   990,    18,   561,  1206,  1124,    16,   nil,   nil,
+    16,  1131,   900,   784,  1132,   917,   786,  1159,  1076,  1078,
+   nil,  1080,  1082,   533,  1083,   691,   nil,   530,   696,   957,
+   nil,    18,   nil,    16,   325,   nil,   684,   nil,   nil,   690,
+   nil,   nil,   nil,   335,   nil,   325,   966,   nil,   924,   nil,
+   928,   547,   nil,   nil,   335,   nil,   863,   nil,   993,    18,
+  1235,  1139,   934,  1190,   934,   nil,  1140,   845,   nil,   nil,
+   845,   865,   867,   872,   870,   684,   nil,  1159,  1159,   nil,
+   nil,    42,   773,   948,   684,   572,    42,   nil,   nil,   nil,
+    42,  1057,   nil,   nil,   nil,   962,    16,   nil,   790,   791,
+    16,   795,   949,   446,   nil,   nil,   nil,    16,   443,   146,
+   863,  1013,  1013,   446,   446,   nil,  1013,   nil,   nil,   446,
+   446,   nil,    42,  1159,   nil,    18,  1230,   nil,   nil,   nil,
+   nil,   nil,   684,   nil,    18,   631,   nil,   953,     9,  1193,
+   nil,   533,   851,   580,   631,   nil,   nil,   450,   929,   859,
+   973,   nil,   975,   nil,   357,   nil,   nil,   nil,   nil,   726,
+   684,   nil,   726,   726,   nil,   726,   451,   nil,  1013,   nil,
+   726,   726,   726,   nil,   nil,   nil,   nil,   nil,   nil,  1034,
+   962,   nil,  1034,    42,   nil,   nil,   nil,   nil,   900,   nil,
+   nil,   nil,   993,   nil,   nil,   nil,   nil,  1197,  1198,  1199,
+  1200,   nil,    42,   nil,  1046,   nil,   nil,  1136,  1049,   nil,
+   nil,   nil,   nil,   697,    42,   nil,   nil,   nil,    18,   726,
+    18,   nil,   nil,    18,   nil,   718,  1026,  1028,    16,    18,
+   nil,   nil,   nil,    16,   945,   nil,   nil,    16,   nil,    42,
+    42,  1062,   nil,    18,   nil,   nil,   nil,   nil,   nil,  1068,
+   nil,  1219,   nil,   nil,   nil,   738,   nil,   740,   nil,   nil,
+   nil,   744,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,
+   nil,   nil,   nil,   nil,   nil,   988,  1034,  1239,   754,   357,
+   nil,   nil,   726,   nil,   757,   nil,  1187,   446,   nil,   nil,
+   726,   nil,   684,   684,   nil,   684,   890,   nil,   nil,   nil,
+   nil,   nil,   nil,   775,   938,   939,  1111,  1111,  1111,    18,
+   nil,   962,   nil,    18,   383,   nil,   nil,   nil,    18,   nil,
+    42,    42,   950,   335,  1126,  1013,   nil,   nil,   nil,   nil,
+    16,   nil,   nil,   335,   966,   nil,   nil,   nil,    42,   nil,
+   761,   nil,    42,   nil,   nil,   nil,    18,   nil,   nil,    16,
+   nil,   nil,   nil,   nil,   nil,  1043,    18,    18,   nil,    19,
+   nil,    16,   nil,   nil,   nil,    19,   nil,  1050,   nil,   964,
+   nil,   nil,   nil,   nil,   719,   726,   nil,   nil,   nil,   nil,
+   239,   nil,   nil,   nil,   nil,   nil,    16,    16,   nil,   239,
+   239,   239,  1070,    19,   326,   326,  1179,   nil,   383,   nil,
+  1149,   924,  1150,    42,  1151,   nil,   nil,   335,  1184,  1185,
+    42,   nil,   nil,   nil,   726,   nil,   934,   nil,   nil,   nil,
+    42,    19,  1194,   nil,   nil,   nil,   239,   239,   298,   nil,
+   239,   368,   378,   378,  1026,   726,   726,  1026,  1169,  1026,
+  1171,   nil,  1048,   468,  1111,  1111,  1111,  1111,  1051,  1111,
+   718,   718,   nil,  1025,   nil,   967,   461,  1060,   967,  1061,
+   934,   nil,    42,  1064,   nil,   720,   nil,    16,    16,   477,
+   nil,  1130,   nil,  1122,  1123,   477,   nil,   nil,   nil,   357,
+   357,   726,   nil,   nil,   726,    16,   nil,    19,   nil,    16,
+   nil,  1138,   239,   239,   239,   239,    19,   684,  1112,  1114,
+  1116,   918,   nil,   934,   nil,   nil,   nil,   nil,   nil,  1111,
+  1111,  1111,  1111,   nil,   nil,   nil,   nil,  1035,   nil,   nil,
+   nil,  1228,   nil,  1111,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1026,  1232,  1026,  1233,  1026,  1234,  1026,    18,  1027,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   958,   nil,   nil,
+    16,   nil,   nil,   nil,   nil,   nil,  1177,    16,   nil,   nil,
+   nil,   nil,   nil,  1182,  1026,  1245,   nil,    16,   982,   nil,
+   nil,   nil,    20,   nil,   nil,   nil,    18,   nil,    20,    18,
+    19,   239,   448,   239,   239,   448,   239,   nil,   nil,   nil,
+   nil,   448,   239,   239,   nil,   nil,   nil,   nil,   nil,   719,
+   719,   nil,    18,   nil,   nil,    19,    20,   328,   328,    16,
+   nil,   nil,   nil,   nil,   718,  1225,   nil,   718,   718,   nil,
+   718,   nil,   nil,   nil,   nil,   718,   718,   718,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   nil,  1208,  1210,  1212,  1214,
+  1040,  1215,   239,   239,   370,   379,   379,   nil,   nil,   nil,
+   nil,  1191,   239,   nil,   nil,   nil,   nil,  1163,   nil,   nil,
+   nil,  1025,   nil,   nil,  1025,    18,  1025,   nil,   nil,    18,
+   nil,    19,    18,   nil,   718,    19,    18,   nil,   nil,   326,
+    19,   nil,    18,    18,  1065,   nil,  1067,   nil,    18,    18,
+   720,   720,   nil,   nil,   nil,  1073,   326,   nil,   nil,   nil,
+    20,  1241,  1242,  1243,  1244,  1226,   nil,   nil,    19,    20,
+  1084,   nil,   nil,   nil,   nil,  1246,   nil,   239,    19,    19,
+   nil,  1035,   nil,   nil,   nil,  1035,   nil,   nil,  1035,   nil,
+  1035,   nil,   nil,   nil,   nil,   nil,   nil,   718,   239,   nil,
+   nil,   nil,   nil,   967,   nil,   718,   nil,  1027,   nil,   nil,
+  1027,   nil,  1027,   nil,   nil,   nil,   nil,   nil,  1025,   nil,
+  1025,   nil,  1025,   719,  1025,   nil,   719,   719,   nil,   719,
+   nil,   nil,   nil,   nil,   719,   719,   719,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1025,   nil,    20,   nil,   449,   nil,    18,   449,   nil,
+   nil,   nil,    18,   nil,   449,   nil,    18,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,  1035,   719,  1035,   nil,  1035,   nil,  1035,   nil,
+   718,   nil,   nil,   nil,   nil,   721,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,   239,  1027,   nil,  1027,   nil,  1027,   nil,
+  1027,   nil,   nil,   nil,   720,  1035,    18,   720,   720,   nil,
+   720,   nil,   nil,   nil,   nil,   720,   720,   720,   nil,   718,
+   nil,   nil,  1192,   nil,   nil,   nil,   nil,  1027,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   nil,   719,   nil,    20,   nil,
+   718,   718,   328,    20,   719,   nil,   nil,   nil,   nil,    18,
+    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   328,
+   239,   nil,   nil,   nil,   720,   nil,   326,   nil,    18,   nil,
+   nil,    20,   nil,   nil,   nil,   239,   nil,   nil,   nil,   nil,
+    18,    20,    20,   nil,   nil,   nil,   718,   nil,    19,   718,
+   nil,    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,
+   nil,   nil,   nil,   nil,   nil,    18,    18,   nil,   nil,   239,
+   nil,   nil,    29,   nil,    19,   nil,   nil,   nil,    29,   239,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   720,   nil,   719,
+   nil,   nil,   nil,    29,   nil,   720,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,    29,    29,   nil,    29,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   719,   nil,
+   nil,   nil,   nil,   nil,    29,   nil,   nil,    19,   nil,    29,
+    29,    19,   nil,    29,   448,   239,    18,    18,    19,   719,
+   719,   nil,   nil,   nil,   448,   448,   nil,   nil,   nil,   nil,
+   448,   448,   nil,   nil,    18,   nil,   nil,   nil,    18,   nil,
+   721,   721,   nil,   nil,   nil,   nil,   nil,   nil,   722,   nil,
+   720,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   719,   nil,   nil,   719,   nil,
+    29,   nil,   nil,   nil,   nil,    29,    29,    29,    29,    29,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   720,
+   nil,   nil,   326,    20,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   328,   nil,   326,   nil,   nil,    18,   nil,   nil,   328,
+   720,   720,   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,    20,   nil,   nil,   nil,   nil,    19,
+   nil,   nil,   nil,   nil,    19,   239,   nil,   nil,    19,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   720,    20,    18,   720,
+   nil,   nil,   nil,    29,    29,    29,    29,    29,    29,    29,
+   nil,   nil,   nil,   nil,    29,    29,    29,   nil,   nil,   nil,
+    19,   nil,   723,   nil,   nil,   nil,   nil,   nil,    29,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   448,   nil,
+   nil,   nil,   nil,   nil,   721,   nil,   nil,   721,   721,   nil,
+   721,   nil,   nil,   nil,   nil,   721,   721,   721,   nil,   nil,
+    20,   nil,   nil,   nil,    20,    29,    29,   449,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,    29,   nil,   449,   449,   nil,
+   nil,    19,   nil,   449,   449,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    29,   nil,   nil,   nil,    29,   nil,
+    19,   nil,   724,    29,   721,   nil,   nil,   nil,   nil,   nil,
+   239,   nil,    19,   722,   722,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,    19,    19,   nil,
+    29,    29,    29,   nil,   nil,   328,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   328,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,   721,   nil,   nil,
+   725,   nil,   nil,   nil,   nil,   721,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,   nil,   nil,   nil,   nil,    20,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1120,   nil,   nil,   nil,   nil,   nil,    19,    19,
+   nil,   nil,  1127,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   987,    20,   nil,   nil,    19,   nil,   nil,   nil,
+    19,   nil,   nil,   nil,   nil,   nil,   nil,   723,   723,   nil,
+   nil,   449,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   721,   nil,   727,   nil,   nil,   nil,    29,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   722,   nil,   nil,
+   722,   722,   nil,   722,   nil,   nil,   nil,   nil,   722,   722,
+   722,   nil,   nil,   nil,    20,   nil,  1173,   nil,   nil,   721,
+   nil,    19,   nil,    41,   324,   324,   nil,   nil,    19,   nil,
+   239,   239,   nil,    20,   nil,   nil,   nil,   nil,    19,   nil,
+   721,   721,   nil,    29,   nil,    20,   nil,   724,   724,   nil,
+   nil,    41,   nil,    29,   nil,   nil,   nil,   722,   nil,   nil,
+   nil,   366,   382,   382,   382,   nil,   nil,   nil,    29,   nil,
+    20,    20,   nil,   nil,   nil,   239,   nil,   nil,   nil,   nil,
+    19,    29,   nil,   nil,    29,   nil,   721,   nil,   nil,   721,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   nil,   nil,    29,   nil,   nil,
+   nil,   nil,    29,   nil,   nil,   725,   725,    41,   nil,   nil,
+   722,   nil,   nil,   nil,   nil,   nil,    41,   nil,   722,   nil,
+   nil,   723,   nil,    32,   723,   723,   nil,   723,   nil,    32,
+   nil,   nil,   723,   723,   723,   379,   nil,   nil,   nil,   nil,
+   nil,    20,    20,   nil,    32,  1129,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,    32,    32,   nil,    32,   nil,    20,
+    29,   nil,   nil,    20,    29,   nil,   nil,    29,    29,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,    29,    29,   nil,
+   nil,   723,   nil,    29,    29,    32,   nil,   nil,   nil,   nil,
+    32,    32,   nil,   nil,    32,   nil,   nil,   727,   727,   nil,
+    41,   724,   nil,   722,   724,   724,   nil,   724,   nil,   nil,
+   nil,   nil,   724,   724,   724,   nil,   nil,   nil,   nil,   379,
+   nil,   nil,   nil,   nil,    20,    41,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   722,   nil,   723,   nil,   nil,   nil,   nil,   nil,
+   nil,    32,   723,   nil,   nil,   nil,    32,    32,    32,    32,
+    32,   724,   nil,   722,   722,   nil,   nil,   nil,   nil,   725,
+   nil,   nil,   725,   725,   nil,   725,   nil,   nil,   nil,   nil,
+   725,   725,   725,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,    29,   nil,   nil,    41,   nil,    29,    29,   324,
+    41,    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   722,
+   nil,   nil,   722,   nil,   nil,   nil,   324,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   724,   nil,   nil,   nil,    41,   725,
+   nil,   nil,   724,    29,   nil,   nil,   nil,   723,    41,    41,
+   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,    32,
+    32,    29,   nil,   nil,   nil,    32,    32,    32,   nil,   nil,
+   nil,   727,   nil,   nil,   727,   727,   nil,   727,   nil,    32,
+   nil,   nil,   727,   727,   727,   nil,   723,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   725,   nil,    29,   nil,   nil,   723,   723,   nil,
+   725,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,
+   nil,   nil,   nil,    29,   nil,   nil,    32,   724,   nil,   nil,
+   nil,   727,   nil,    29,   nil,    29,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    32,
+   nil,   nil,   nil,   723,    32,   nil,   723,   nil,   nil,   nil,
+    29,    29,   nil,   nil,   nil,   nil,   724,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   724,   724,   nil,
+   nil,    32,    32,    32,   727,   725,   nil,   nil,   nil,   nil,
+   nil,   nil,   727,   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,
+    41,   nil,   nil,   724,   725,   nil,   724,   nil,   324,   nil,
+   nil,    29,    29,   nil,   nil,   nil,   324,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   725,   725,   nil,   nil,    29,
+   nil,   nil,   nil,    29,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   727,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   725,   nil,   nil,   725,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,    29,   nil,   727,   nil,   nil,   nil,
+   nil,    29,   nil,    29,    29,   nil,   nil,   nil,   nil,   nil,
+   nil,    29,   nil,   nil,   nil,   nil,   nil,   727,   727,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,    29,   nil,
+   nil,   nil,   nil,    29,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   727,   nil,   nil,   727,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   324,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   324,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   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,    41,   nil,   nil,   nil,    41,   nil,
+   nil,    32,   nil,   nil,   nil,    32,   nil,   nil,    32,    32,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,    32,    32,
+   nil,   nil,   nil,   nil,    32,    32,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   246,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   297,   297,   297,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,   343,   344,   nil,   346,   347,   nil,   349,
+   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,    41,    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,   nil,    32,   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,   382,   nil,   nil,   nil,   nil,   nil,    41,    41,
+   nil,   nil,  1125,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,    32,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   297,   453,   nil,   382,   459,   297,   nil,
+   nil,    41,   nil,   459,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   246,   nil,    41,   nil,
+   492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
+   502,   503,   504,   505,   506,   507,   508,   509,   510,   511,
+   512,   513,   nil,   nil,   nil,   nil,   514,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   297,   297,   nil,   nil,   nil,   nil,
+    41,   nil,    32,    32,   297,   nil,   nil,   nil,   nil,   nil,
+   nil,   297,   nil,   297,   nil,   nil,   297,   297,   nil,   nil,
+    32,   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,   566,   nil,   567,
+   nil,   nil,   nil,   297,   297,   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,    32,   nil,    32,    32,   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,    32,
+   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   297,   nil,   459,   459,   459,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   344,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   297,   nil,   nil,   297,   nil,   297,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   459,   nil,   nil,   768,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   297,   459,   297,   nil,   nil,
+   nil,   860,   nil,   nil,   297,   297,   459,   459,   nil,   nil,
+   nil,   nil,   459,   459,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,
+   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   297,   nil,   nil,   nil,   nil,   297,   nil,   nil,   297,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   459,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   459,   459,   459,   459,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1023,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   297,   459,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   297,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   297 ]
+
+racc_goto_check = [
+     6,    69,    48,    48,    48,    88,    65,    69,    38,   116,
+   173,    15,    72,    87,    87,   105,    38,     2,   122,   117,
+    40,    37,    36,    29,    29,    70,    73,    73,    42,    27,
+   125,    22,    22,    33,    10,    69,    69,    69,   110,    33,
+   109,   109,    72,    17,    90,    80,    80,   112,     8,    40,
+    75,    75,   172,     5,    78,   201,    44,    44,   174,    91,
+   252,    61,    91,    69,    24,    24,   237,   241,    24,    12,
+   160,   147,    66,    69,    69,    69,    69,    55,    36,    67,
+   164,    62,    80,    80,    80,   247,   122,   148,    84,    84,
+    84,   162,    73,    82,    82,     6,     7,     6,     6,     6,
+     6,     6,     6,   146,   221,     6,   243,    54,    53,    53,
+    53,    52,    52,   166,   221,   167,   149,     1,    60,    60,
+    60,     5,    73,    86,    86,    86,     3,   248,    11,    69,
+    24,    24,    24,    24,    13,    31,    31,    37,    69,    31,
+   161,   225,   161,    16,   225,    77,   190,   190,    28,   190,
+    18,    77,    71,    71,    28,    85,    85,   214,   214,    20,
+    85,    21,    52,    23,    26,   164,    30,    32,    43,   192,
+   192,    82,    45,    82,   192,    47,    82,    82,   154,   154,
+   154,    51,    28,   207,    57,    76,    81,   242,    14,    83,
+     9,    89,   101,   104,   119,   121,     9,   126,   127,    48,
+   128,    31,    31,    31,    31,   129,   130,   131,    90,   132,
+    28,   252,    91,    91,    87,   133,   134,   135,     7,   161,
+    28,   248,    69,   136,    82,   137,   192,     6,    38,   138,
+    27,    27,   139,   116,    27,   150,   166,   151,   167,   158,
+    27,   165,   168,   207,   207,   169,    73,    69,   170,    70,
+    25,   171,     9,    25,   176,    48,    48,   177,   179,    25,
+   180,   182,   183,   184,    37,    48,    91,   162,   172,   185,
+   147,    37,   186,   187,   147,   188,    28,   146,   160,    36,
+    84,    84,   237,     6,   189,    28,   148,    55,   149,   207,
+   191,    67,    31,    31,   194,   196,   164,     6,     6,    67,
+   197,    31,    31,     6,   198,   252,   202,   174,    65,   203,
+   241,    82,   221,    69,   204,    38,    87,    69,     9,    37,
+    87,    69,    69,   209,   122,    12,   210,     9,   211,    40,
+    80,    38,   216,   214,   214,   247,   217,   220,    69,   222,
+   223,    84,    84,    61,   224,    78,    36,    80,    61,   243,
+    69,    84,     6,     6,     8,    24,    66,    38,    37,     5,
+    69,    69,   201,    62,   243,    52,    52,    37,    62,    28,
+   227,    28,    60,   228,    28,    14,   122,    86,     6,    70,
+    28,    60,   229,   161,   230,    36,    86,   231,   232,   235,
+   240,   240,   161,   243,    28,    36,    17,   236,   190,   112,
+    14,    82,   245,   242,    82,    77,    82,    77,   246,   251,
+    84,     5,   nil,   nil,   nil,    37,   nil,   nil,   147,   147,
+    42,    42,   nil,    42,   nil,   nil,    31,   161,    42,   nil,
+   161,   nil,   nil,   nil,   nil,    52,   110,    38,   nil,    10,
+   nil,   nil,   nil,    37,    52,    86,    86,    31,    73,   nil,
+   nil,    87,   nil,    22,   nil,   nil,    48,    87,    40,    88,
+    28,     6,     6,   nil,    28,     6,   172,   172,    87,    28,
+    14,    36,    75,   nil,    52,    14,   nil,    42,   nil,    77,
+   237,   237,    52,   nil,     6,   nil,   112,   nil,   nil,    90,
+    69,   125,    33,    33,   nil,    67,   243,    28,    33,    33,
+    73,    87,     9,   nil,    82,   nil,   nil,    28,    28,   nil,
+    85,    40,    54,    14,    14,     6,   nil,   nil,    54,   252,
+    65,    91,     6,    48,   161,    12,   154,   nil,    65,    12,
+   nil,   226,    88,   226,    70,   nil,   226,   nil,    87,   226,
+   nil,   nil,    69,   nil,   nil,    82,    53,    87,    42,   nil,
+    69,     6,    53,   nil,    82,    82,   nil,   nil,    69,    80,
+    52,    52,    48,   nil,   nil,   nil,   nil,    80,   nil,   nil,
+    73,    29,    48,   nil,    40,    37,    37,    87,    37,    73,
+    69,    44,   nil,    69,   nil,    87,   154,   154,   154,   nil,
+     6,   147,   147,   nil,   nil,   nil,    53,   nil,   122,   nil,
+     6,   242,   242,   nil,    77,    77,    69,    90,    82,    73,
+    77,    77,   242,   nil,   242,    73,   nil,    82,   nil,    15,
+    82,   nil,    12,    86,   nil,   109,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    31,   nil,   nil,   nil,   nil,   nil,
+   nil,    82,   nil,   nil,   206,   nil,    82,   nil,    48,    82,
+   nil,   nil,   nil,   nil,   nil,   nil,   117,   nil,   nil,   nil,
+   nil,   nil,   nil,    87,   nil,    82,    33,   nil,     6,    69,
+   nil,   nil,    42,    69,   nil,   nil,     6,   nil,    31,    12,
+    69,   nil,   nil,    27,   105,     2,   nil,    73,    63,    28,
+   nil,   242,    22,    27,    27,    73,   nil,   nil,    82,    27,
+    27,    40,    25,   nil,   nil,   nil,   nil,   nil,    40,    40,
+   nil,    75,    25,    25,   nil,    69,    69,    34,    25,    25,
+   173,   nil,    82,    34,    65,   154,   109,    28,   nil,   nil,
+    28,   109,     6,    14,   109,    65,    14,   206,   240,   240,
+   nil,   240,   240,     6,   240,    87,   nil,    63,    87,    72,
+   nil,    34,   nil,    28,    69,   nil,    40,   nil,   nil,     6,
+   nil,   nil,   nil,    80,   nil,    69,   213,   nil,     6,   nil,
+     6,    63,   nil,   nil,    80,   nil,    86,   nil,    77,    34,
+    37,    12,     6,   116,     6,   nil,    88,   226,   nil,   nil,
+   226,    77,    77,    77,    77,    40,   nil,   206,   206,   nil,
+   nil,    69,   103,    24,    40,    63,    69,   nil,   nil,   nil,
+    69,    82,   nil,   nil,   nil,    40,    28,   nil,   103,   103,
+    28,   103,   122,    28,   nil,   nil,   nil,    28,    84,    73,
+    86,   213,   213,    28,    28,   nil,   213,   nil,   nil,    28,
+    28,   nil,    69,   206,   nil,    34,   206,   nil,   nil,   nil,
+   nil,   nil,    40,   nil,    34,   242,   nil,   159,     9,    12,
+   nil,     6,     9,    82,   242,   nil,   nil,    27,    86,     9,
+   159,   nil,   159,   nil,    31,   nil,   nil,   nil,   nil,    69,
+    40,   nil,    69,    69,   nil,    69,    25,   nil,   213,   nil,
+    69,    69,    69,   nil,   nil,   nil,   nil,   nil,   nil,   242,
+    40,   nil,   242,    69,   nil,   nil,   nil,   nil,     6,   nil,
+   nil,   nil,    77,   nil,   nil,   nil,   nil,   240,   240,   240,
+   240,   nil,    69,   nil,     6,   nil,   nil,    82,    24,   nil,
+   nil,   nil,   nil,    63,    69,   nil,   nil,   nil,    34,    69,
+    34,   nil,   nil,    34,   nil,    93,   155,   159,    28,    34,
+   nil,   nil,   nil,    28,    14,   nil,   nil,    28,   nil,    69,
+    69,   122,   nil,    34,   nil,   nil,   nil,   nil,   nil,   122,
+   nil,    36,   nil,   nil,   nil,    63,   nil,    63,   nil,   nil,
+   nil,    63,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,
+   nil,   nil,   nil,   nil,   nil,    14,   242,   240,    63,    31,
+   nil,   nil,    69,   nil,    63,   nil,    82,    28,   nil,   nil,
+    69,   nil,    40,    40,   nil,    40,    40,   nil,   nil,   nil,
+   nil,   nil,   nil,    63,   103,   103,     6,     6,     6,    34,
+   nil,    40,   nil,    34,    69,   nil,   nil,   nil,    34,   nil,
+    69,    69,   103,    80,    69,   213,   nil,   nil,   nil,   nil,
+    28,   nil,   nil,    80,   213,   nil,   nil,   nil,    69,   nil,
+    52,   nil,    69,   nil,   nil,   nil,    34,   nil,   nil,    28,
+   nil,   nil,   nil,   nil,   nil,    14,    34,    34,   nil,    35,
+   nil,    28,   nil,   nil,   nil,    35,   nil,    14,   nil,   153,
+   nil,   nil,   nil,   nil,    94,    69,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,    35,
+    35,    35,    14,    35,    35,    35,    38,   nil,    69,   nil,
+   159,     6,   159,    69,   159,   nil,   nil,    80,    24,    24,
+    69,   nil,   nil,   nil,    69,   nil,     6,   nil,   nil,   nil,
+    69,    35,    40,   nil,   nil,   nil,    35,    35,    48,   nil,
+    35,    35,    35,    35,   155,    69,    69,   155,   159,   155,
+   159,   nil,   103,    87,     6,     6,     6,     6,   103,     6,
+    93,    93,   nil,   153,   nil,   156,     6,   103,   156,   103,
+     6,   nil,    69,   103,   nil,    95,   nil,    28,    28,    73,
+   nil,    28,   nil,    14,    14,    73,   nil,   nil,   nil,    31,
+    31,    69,   nil,   nil,    69,    28,   nil,    35,   nil,    28,
+   nil,    14,    35,    35,    35,    35,    35,    40,   157,   157,
+   157,    63,   nil,     6,   nil,   nil,   nil,   nil,   nil,     6,
+     6,     6,     6,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   nil,   159,   nil,     6,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   155,   159,   155,   159,   155,   159,   155,    34,   156,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    63,   nil,   nil,
+    28,   nil,   nil,   nil,   nil,   nil,    14,    28,   nil,   nil,
+   nil,   nil,   nil,    14,   155,   159,   nil,    28,    63,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,    34,   nil,    39,    34,
+    35,    35,    35,    35,    35,    35,    35,   nil,   nil,   nil,
+   nil,    35,    35,    35,   nil,   nil,   nil,   nil,   nil,    94,
+    94,   nil,    34,   nil,   nil,    35,    39,    39,    39,    28,
+   nil,   nil,   nil,   nil,    93,    14,   nil,    93,    93,   nil,
+    93,   nil,   nil,   nil,   nil,    93,    93,    93,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,   nil,   157,   157,   157,   157,
+    63,   157,    35,    35,    39,    39,    39,   nil,   nil,   nil,
+   nil,   103,    35,   nil,   nil,   nil,   nil,   153,   nil,   nil,
+   nil,   153,   nil,   nil,   153,    34,   153,   nil,   nil,    34,
+   nil,    35,    34,   nil,    93,    35,    34,   nil,   nil,    35,
+    35,   nil,    34,    34,    63,   nil,    63,   nil,    34,    34,
+    95,    95,   nil,   nil,   nil,    63,    35,   nil,   nil,   nil,
+    39,   157,   157,   157,   157,   103,   nil,   nil,    35,    39,
+    63,   nil,   nil,   nil,   nil,   157,   nil,    35,    35,    35,
+   nil,   244,   nil,   nil,   nil,   244,   nil,   nil,   244,   nil,
+   244,   nil,   nil,   nil,   nil,   nil,   nil,    93,    35,   nil,
+   nil,   nil,   nil,   156,   nil,    93,   nil,   156,   nil,   nil,
+   156,   nil,   156,   nil,   nil,   nil,   nil,   nil,   153,   nil,
+   153,   nil,   153,    94,   153,   nil,    94,    94,   nil,    94,
+   nil,   nil,   nil,   nil,    94,    94,    94,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   153,   nil,    39,   nil,    39,   nil,    34,    39,   nil,
+   nil,   nil,    34,   nil,    39,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,   244,    94,   244,   nil,   244,   nil,   244,   nil,
+    93,   nil,   nil,   nil,   nil,    96,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    35,   156,   nil,   156,   nil,   156,   nil,
+   156,   nil,   nil,   nil,    95,   244,    34,    95,    95,   nil,
+    95,   nil,   nil,   nil,   nil,    95,    95,    95,   nil,    93,
+   nil,   nil,    63,   nil,   nil,   nil,   nil,   156,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,   nil,    94,   nil,    39,   nil,
+    93,    93,    39,    39,    94,   nil,   nil,   nil,   nil,    34,
+    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,    39,
+    35,   nil,   nil,   nil,    95,   nil,    35,   nil,    34,   nil,
+   nil,    39,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
+    34,    39,    39,   nil,   nil,   nil,    93,   nil,    35,    93,
+   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,   nil,    35,
+   nil,   nil,    56,   nil,    35,   nil,   nil,   nil,    56,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    95,   nil,    94,
+   nil,   nil,   nil,    56,   nil,    95,   nil,   nil,   nil,   nil,
+   nil,   nil,    56,    56,    56,   nil,    56,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    94,   nil,
+   nil,   nil,   nil,   nil,    56,   nil,   nil,    35,   nil,    56,
+    56,    35,   nil,    56,    35,    35,    34,    34,    35,    94,
+    94,   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,
+    35,    35,   nil,   nil,    34,   nil,   nil,   nil,    34,   nil,
+    96,    96,   nil,   nil,   nil,   nil,   nil,   nil,    97,   nil,
+    95,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    94,   nil,   nil,    94,   nil,
+    56,   nil,   nil,   nil,   nil,    56,    56,    56,    56,    56,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    95,
+   nil,   nil,    35,    39,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,    39,   nil,    35,   nil,   nil,    34,   nil,   nil,    39,
+    95,    95,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,    39,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,    35,    35,   nil,   nil,    35,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    95,    39,    34,    95,
+   nil,   nil,   nil,    56,    56,    56,    56,    56,    56,    56,
+   nil,   nil,   nil,   nil,    56,    56,    56,   nil,   nil,   nil,
+    35,   nil,    98,   nil,   nil,   nil,   nil,   nil,    56,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,
+   nil,   nil,   nil,   nil,    96,   nil,   nil,    96,    96,   nil,
+    96,   nil,   nil,   nil,   nil,    96,    96,    96,   nil,   nil,
+    39,   nil,   nil,   nil,    39,    56,    56,    39,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,    56,   nil,    39,    39,   nil,
+   nil,    35,   nil,    39,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    56,   nil,   nil,   nil,    56,   nil,
+    35,   nil,    99,    56,    96,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,    35,    97,    97,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    56,   nil,   nil,   nil,   nil,   nil,    35,    35,   nil,
+    56,    56,    56,   nil,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,   nil,   nil,
+   nil,    56,   nil,   nil,   nil,   nil,   nil,    96,   nil,   nil,
+   100,   nil,   nil,   nil,   nil,    96,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,    35,    35,
+   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    39,    39,   nil,   nil,    35,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,   nil,   nil,    98,    98,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    96,   nil,   107,   nil,   nil,   nil,    56,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,    97,   nil,   nil,
+    97,    97,   nil,    97,   nil,   nil,   nil,   nil,    97,    97,
+    97,   nil,   nil,   nil,    39,   nil,    35,   nil,   nil,    96,
+   nil,    35,   nil,    68,    68,    68,   nil,   nil,    35,   nil,
+    35,    35,   nil,    39,   nil,   nil,   nil,   nil,    35,   nil,
+    96,    96,   nil,    56,   nil,    39,   nil,    99,    99,   nil,
+   nil,    68,   nil,    56,   nil,   nil,   nil,    97,   nil,   nil,
+   nil,    68,    68,    68,    68,   nil,   nil,   nil,    56,   nil,
+    39,    39,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,
+    35,    56,   nil,   nil,    56,   nil,    96,   nil,   nil,    96,
+   nil,   nil,    56,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    56,   nil,   nil,   nil,   nil,    56,   nil,   nil,
+   nil,   nil,    56,   nil,   nil,   100,   100,    68,   nil,   nil,
+    97,   nil,   nil,   nil,   nil,   nil,    68,   nil,    97,   nil,
+   nil,    98,   nil,    59,    98,    98,   nil,    98,   nil,    59,
+   nil,   nil,    98,    98,    98,    39,   nil,   nil,   nil,   nil,
+   nil,    39,    39,   nil,    59,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    59,    59,    59,   nil,    59,   nil,    39,
+    56,   nil,   nil,    39,    56,   nil,   nil,    56,    56,   nil,
+   nil,    56,   nil,   nil,   nil,   nil,   nil,    56,    56,   nil,
+   nil,    98,   nil,    56,    56,    59,   nil,   nil,   nil,   nil,
+    59,    59,   nil,   nil,    59,   nil,   nil,   107,   107,   nil,
+    68,    99,   nil,    97,    99,    99,   nil,    99,   nil,   nil,
+   nil,   nil,    99,    99,    99,   nil,   nil,   nil,   nil,    39,
+   nil,   nil,   nil,   nil,    39,    68,   nil,   nil,   nil,   nil,
+   nil,    39,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    39,    97,   nil,    98,   nil,   nil,   nil,   nil,   nil,
+   nil,    59,    98,   nil,   nil,   nil,    59,    59,    59,    59,
+    59,    99,   nil,    97,    97,   nil,   nil,   nil,   nil,   100,
+   nil,   nil,   100,   100,   nil,   100,   nil,   nil,   nil,   nil,
+   100,   100,   100,    39,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    68,    56,   nil,   nil,    68,   nil,    56,    56,    68,
+    68,    56,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    97,
+   nil,   nil,    97,   nil,   nil,   nil,    68,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    99,   nil,   nil,   nil,    68,   100,
+   nil,   nil,    99,    56,   nil,   nil,   nil,    98,    68,    68,
+   nil,   nil,   nil,   nil,    59,    59,    59,    59,    59,    59,
+    59,    56,   nil,   nil,   nil,    59,    59,    59,   nil,   nil,
+   nil,   107,   nil,   nil,   107,   107,   nil,   107,   nil,    59,
+   nil,   nil,   107,   107,   107,   nil,    98,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   100,   nil,    56,   nil,   nil,    98,    98,   nil,
+   100,   nil,   nil,   nil,   nil,   nil,    59,    59,   nil,   nil,
+   nil,   nil,   nil,    56,   nil,   nil,    59,    99,   nil,   nil,
+   nil,   107,   nil,    56,   nil,    56,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    59,   nil,   nil,   nil,    59,
+   nil,   nil,   nil,    98,    59,   nil,    98,   nil,   nil,   nil,
+    56,    56,   nil,   nil,   nil,   nil,    99,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    59,   nil,   nil,   nil,   nil,    99,    99,   nil,
+   nil,    59,    59,    59,   107,   100,   nil,   nil,   nil,   nil,
+   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    59,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    68,   nil,   nil,    99,   100,   nil,    99,   nil,    68,   nil,
+   nil,    56,    56,   nil,   nil,   nil,    68,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   100,   100,   nil,   nil,    56,
+   nil,   nil,   nil,    56,   nil,   nil,   nil,   nil,    68,   nil,
+   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   107,   nil,   nil,
+   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,
+   nil,   100,   nil,   nil,   100,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    59,   nil,   nil,
+   nil,   nil,   nil,   nil,    56,   nil,   107,   nil,   nil,   nil,
+   nil,    56,   nil,    56,    56,   nil,   nil,   nil,   nil,   nil,
+   nil,    56,   nil,   nil,   nil,   nil,   nil,   107,   107,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,
+   nil,   nil,   nil,   nil,    59,   nil,   nil,   nil,    56,   nil,
+   nil,   nil,   nil,    56,    59,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   107,   nil,   nil,   107,   nil,   nil,    59,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    59,   nil,   nil,    59,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    59,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    59,   nil,   nil,   nil,   nil,    59,   nil,
+   nil,   nil,    68,    59,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,    68,   nil,
+   nil,    59,   nil,   nil,   nil,    59,   nil,   nil,    59,    59,
+   nil,   nil,    59,   nil,   nil,   nil,   nil,   nil,    59,    59,
+   nil,   nil,   nil,   nil,    59,    59,   nil,   nil,   nil,   nil,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    68,    41,    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    68,    41,    41,   nil,    41,    41,   nil,    41,
+   nil,   nil,   nil,    59,   nil,   nil,   nil,   nil,    59,    59,
+   nil,   nil,    59,   nil,   nil,   nil,   nil,    68,    68,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    59,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    59,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,    68,    68,
+   nil,   nil,    68,   nil,   nil,    59,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,
+    68,   nil,   nil,   nil,    59,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    59,   nil,    59,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    59,    59,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,    41,   nil,    68,    41,    41,   nil,
+   nil,    68,   nil,    41,   nil,   nil,   nil,   nil,    68,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    68,   nil,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
+    68,   nil,    59,    59,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,    41,   nil,   nil,    41,    41,   nil,   nil,
+    59,   nil,   nil,   nil,    59,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   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,    41,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    59,   nil,   nil,   nil,   nil,
+   nil,   nil,    59,   nil,    59,    59,   nil,   nil,   nil,   nil,
+   nil,   nil,    59,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    59,
+   nil,   nil,   nil,   nil,    59,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,    41,    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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,    41,   nil,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   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,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,    41,    41,   nil,   nil,
+   nil,    41,   nil,   nil,    41,    41,    41,    41,   nil,   nil,
+   nil,   nil,    41,    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,   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,    41,   nil,   nil,
+    41,   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,    41,   nil,   nil,    41,
+   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,
+   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,    41,    41,    41,   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,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,    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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   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,   nil,   nil,   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 ]
+
+racc_goto_pointer = [
+   nil,   117,    15,   126,   nil,    48,    -2,    88,    43,   188,
+  -106,   118,  -282,  -298,   152,  -558,  -627,  -727,  -769,   nil,
+  -384,  -155,    20,   151,    -5,    25,    90,     6,   146,  -201,
+   -58,    66,    26,  -195,   715,  1077,  -207,  -439,   -11,  1290,
+    -2,  3059,  -463,   -82,   -15,  -413,   nil,  -612,   -30,   nil,
+   nil,   154,  -119,    79,  -177,  -450,  1680,  -336,   nil,  2311,
+    86,    25,    45,   452,   nil,   -31,    34,  -260,  2167,    -1,
+  -351,    77,   -65,    15,   nil,    39,  -252,   -83,     8,   nil,
+     8,   137,  -131,  -165,    56,  -419,    91,   -16,  -280,  -326,
+  -256,  -473,   nil,   454,   603,   694,  1064,  1297,  1431,  1511,
+  1579,   115,   nil,   232,  -162,   -52,   nil,  1671,   nil,  -318,
+  -746,   nil,  -739,   nil,   nil,   nil,  -355,  -569,   nil,   120,
+   nil,  -185,    13,   nil,   nil,  -578,   120,  -197,   137,   141,
+  -146,   142,   143,  -388,  -390,  -732,  -161,  -169,  -380,  -725,
+   nil,   nil,   nil,   nil,   nil,   nil,  -876,  -561,  -545,  -864,
+  -744,  -665,   nil,   271,  -438,    44,   357,   190,  -663,    45,
+  -832,  -683,  -643,   nil,  -737,  -831,  -959,  -957,  -156,  -571,
+   157,  -362,  -346,   -15,  -221,   nil,   -36,   -34,   nil,  -484,
+  -536,   nil,  -255,  -876,  -328,  -671,  -953,  -521,  -857,  -656,
+  -737,  -650,  -714,   nil,  -585,   nil,  -585,  -409,  -405,   nil,
+   nil,  -656,  -404,  -402,  -398,   nil,  -359,  -913,   nil,  -774,
+  -771,  -769,   nil,   -52,  -559,   nil,  -440,  -590,   nil,   nil,
+   243,     7,   240,   240,   243,  -266,   129,   268,   270,   278,
+  -458,  -263,  -263,   nil,   nil,   282,  -207,  -332,   nil,   nil,
+  -231,  -756,  -211,  -717,   335,  -416,  -698,  -740,  -986,   nil,
+   nil,    12,  -475 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   312,     7,   365,   315,
+   nil,   nil,   nil,   nil,   569,   nil,   nil,   nil,   nil,   311,
+   313,   nil,   nil,   nil,   nil,    14,    15,    21,   244,   nil,
+   nil,    17,   nil,   447,   245,   342,   nil,   nil,   601,   243,
+   483,    24,  1091,   nil,   nil,   nil,   360,   nil,    25,    26,
+    27,   nil,   764,   nil,   nil,   nil,   332,   nil,    28,   329,
+   462,    35,   nil,   nil,    37,    40,    39,   nil,   240,   241,
+   377,   nil,   148,   470,   147,    93,   nil,   452,   109,    49,
+    52,   277,   303,   nil,   463,   nil,   464,   475,   nil,   692,
+   531,   301,   286,    53,    54,    55,    56,    57,    58,    59,
+    60,    61,    63,   nil,   nil,   287,    67,    68,    69,   nil,
+   nil,    70,   932,    71,    72,    73,   nil,   nil,    74,   nil,
+    75,   nil,   582,    76,    77,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   291,   279,   772,   923,   591,   933,   832,   630,   nil,   833,
+   834,  1165,  1024,   617,   nil,   618,   619,   nil,   nil,   620,
+   nil,   622,   nil,   901,   nil,   nil,   nil,   628,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   474,   nil,   nil,   742,   nil,
+   nil,   516,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1004,   nil,   705,   714,   706,   707,   nil,   nil,   708,
+   709,   nil,   nil,   nil,   nil,  1003,  1005,   nil,  1007,  1008,
+  1009,  1010,  1011,   639,   713,   715,   nil,   nil,    92,    94,
+    96,   nil,   nil,   nil,   nil,   nil,   648,   nil,   nil,   nil,
+   nil,   nil,   nil,   105,   106,   nil,   nil,   968,   813,   616,
+   824,   621,   976,   633,   635,   636,  1036,   640,  1037,   643,
+   646,   nil,   306 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 150, :_reduce_1,
+  2, 148, :_reduce_2,
+  2, 149, :_reduce_3,
+  1, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  3, 151, :_reduce_6,
+  2, 151, :_reduce_none,
+  1, 154, :_reduce_none,
+  0, 158, :_reduce_9,
+  3, 154, :_reduce_10,
+  0, 160, :_reduce_11,
+  4, 157, :_reduce_12,
+  0, 165, :_reduce_13,
+  6, 159, :_reduce_14,
+  3, 159, :_reduce_15,
+  2, 161, :_reduce_16,
+  1, 166, :_reduce_none,
+  1, 166, :_reduce_none,
+  3, 166, :_reduce_19,
+  2, 166, :_reduce_20,
+  1, 167, :_reduce_none,
+  0, 168, :_reduce_22,
+  3, 167, :_reduce_23,
+  0, 179, :_reduce_24,
+  4, 156, :_reduce_25,
+  3, 156, :_reduce_26,
+  3, 156, :_reduce_27,
+  3, 156, :_reduce_28,
+  2, 156, :_reduce_29,
+  3, 156, :_reduce_30,
+  3, 156, :_reduce_31,
+  3, 156, :_reduce_32,
+  3, 156, :_reduce_33,
+  3, 156, :_reduce_34,
+  4, 156, :_reduce_35,
+  1, 156, :_reduce_none,
+  3, 156, :_reduce_37,
+  3, 156, :_reduce_38,
+  5, 156, :_reduce_39,
+  3, 156, :_reduce_40,
+  1, 156, :_reduce_none,
+  3, 172, :_reduce_42,
+  3, 172, :_reduce_43,
+  6, 172, :_reduce_44,
+  5, 172, :_reduce_45,
+  5, 172, :_reduce_46,
+  5, 172, :_reduce_47,
+  5, 172, :_reduce_48,
+  3, 172, :_reduce_49,
+  1, 180, :_reduce_50,
+  3, 180, :_reduce_51,
+  1, 180, :_reduce_none,
+  1, 178, :_reduce_none,
+  3, 178, :_reduce_54,
+  3, 178, :_reduce_55,
+  3, 178, :_reduce_56,
+  2, 178, :_reduce_57,
+  0, 190, :_reduce_58,
+  4, 178, :_reduce_59,
+  1, 178, :_reduce_none,
+  1, 171, :_reduce_61,
+  0, 193, :_reduce_62,
+  0, 194, :_reduce_63,
+  4, 191, :_reduce_64,
+  1, 174, :_reduce_none,
+  1, 174, :_reduce_none,
+  1, 196, :_reduce_none,
+  4, 196, :_reduce_68,
+  0, 204, :_reduce_69,
+  4, 201, :_reduce_70,
+  1, 203, :_reduce_71,
+  2, 195, :_reduce_72,
+  3, 195, :_reduce_73,
+  4, 195, :_reduce_74,
+  5, 195, :_reduce_75,
+  4, 195, :_reduce_76,
+  5, 195, :_reduce_77,
+  2, 195, :_reduce_78,
+  2, 195, :_reduce_79,
+  2, 195, :_reduce_80,
+  2, 195, :_reduce_81,
+  2, 195, :_reduce_82,
+  1, 173, :_reduce_none,
+  3, 173, :_reduce_84,
+  1, 209, :_reduce_none,
+  3, 209, :_reduce_86,
+  1, 208, :_reduce_87,
+  2, 208, :_reduce_88,
+  3, 208, :_reduce_89,
+  5, 208, :_reduce_90,
+  2, 208, :_reduce_91,
+  4, 208, :_reduce_92,
+  2, 208, :_reduce_93,
+  4, 208, :_reduce_94,
+  1, 208, :_reduce_95,
+  3, 208, :_reduce_96,
+  1, 212, :_reduce_none,
+  3, 212, :_reduce_98,
+  2, 211, :_reduce_99,
+  3, 211, :_reduce_100,
+  1, 214, :_reduce_101,
+  3, 214, :_reduce_102,
+  1, 213, :_reduce_103,
+  1, 213, :_reduce_104,
+  4, 213, :_reduce_105,
+  3, 213, :_reduce_106,
+  3, 213, :_reduce_107,
+  3, 213, :_reduce_108,
+  3, 213, :_reduce_109,
+  2, 213, :_reduce_110,
+  1, 213, :_reduce_111,
+  1, 175, :_reduce_112,
+  1, 175, :_reduce_113,
+  4, 175, :_reduce_114,
+  3, 175, :_reduce_115,
+  3, 175, :_reduce_116,
+  3, 175, :_reduce_117,
+  3, 175, :_reduce_118,
+  2, 175, :_reduce_119,
+  1, 175, :_reduce_120,
+  1, 217, :_reduce_121,
+  1, 217, :_reduce_none,
+  2, 218, :_reduce_123,
+  1, 218, :_reduce_124,
+  3, 218, :_reduce_125,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_none,
+  1, 219, :_reduce_129,
+  1, 219, :_reduce_none,
+  1, 169, :_reduce_131,
+  1, 169, :_reduce_none,
+  1, 170, :_reduce_133,
+  0, 223, :_reduce_134,
+  4, 170, :_reduce_135,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 220, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  1, 221, :_reduce_none,
+  3, 188, :_reduce_207,
+  3, 188, :_reduce_208,
+  6, 188, :_reduce_209,
+  5, 188, :_reduce_210,
+  5, 188, :_reduce_211,
+  5, 188, :_reduce_212,
+  5, 188, :_reduce_213,
+  4, 188, :_reduce_214,
+  3, 188, :_reduce_215,
+  3, 188, :_reduce_216,
+  3, 188, :_reduce_217,
+  2, 188, :_reduce_218,
+  2, 188, :_reduce_219,
+  2, 188, :_reduce_220,
+  2, 188, :_reduce_221,
+  3, 188, :_reduce_222,
+  3, 188, :_reduce_223,
+  3, 188, :_reduce_224,
+  3, 188, :_reduce_225,
+  3, 188, :_reduce_226,
+  3, 188, :_reduce_227,
+  4, 188, :_reduce_228,
+  2, 188, :_reduce_229,
+  2, 188, :_reduce_230,
+  3, 188, :_reduce_231,
+  3, 188, :_reduce_232,
+  3, 188, :_reduce_233,
+  3, 188, :_reduce_234,
+  1, 188, :_reduce_none,
+  3, 188, :_reduce_236,
+  3, 188, :_reduce_237,
+  3, 188, :_reduce_238,
+  3, 188, :_reduce_239,
+  3, 188, :_reduce_240,
+  2, 188, :_reduce_241,
+  2, 188, :_reduce_242,
+  3, 188, :_reduce_243,
+  3, 188, :_reduce_244,
+  3, 188, :_reduce_245,
+  3, 188, :_reduce_246,
+  3, 188, :_reduce_247,
+  6, 188, :_reduce_248,
+  1, 188, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  3, 226, :_reduce_254,
+  3, 226, :_reduce_255,
+  1, 229, :_reduce_256,
+  1, 230, :_reduce_none,
+  2, 230, :_reduce_258,
+  4, 230, :_reduce_259,
+  2, 230, :_reduce_260,
+  1, 224, :_reduce_none,
+  3, 224, :_reduce_262,
+  3, 234, :_reduce_263,
+  5, 234, :_reduce_264,
+  3, 234, :_reduce_265,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 183, :_reduce_none,
+  1, 183, :_reduce_none,
+  2, 183, :_reduce_270,
+  4, 183, :_reduce_271,
+  2, 183, :_reduce_272,
+  1, 207, :_reduce_273,
+  2, 207, :_reduce_274,
+  2, 207, :_reduce_275,
+  4, 207, :_reduce_276,
+  1, 207, :_reduce_277,
+  0, 239, :_reduce_278,
+  2, 200, :_reduce_279,
+  2, 238, :_reduce_280,
+  2, 237, :_reduce_281,
+  1, 237, :_reduce_none,
+  1, 231, :_reduce_283,
+  2, 231, :_reduce_284,
+  3, 231, :_reduce_285,
+  4, 231, :_reduce_286,
+  1, 177, :_reduce_287,
+  1, 177, :_reduce_288,
+  3, 176, :_reduce_289,
+  4, 176, :_reduce_290,
+  2, 176, :_reduce_291,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_302,
+  0, 275, :_reduce_303,
+  4, 227, :_reduce_304,
+  0, 276, :_reduce_305,
+  3, 227, :_reduce_306,
+  0, 277, :_reduce_307,
+  4, 227, :_reduce_308,
+  3, 227, :_reduce_309,
+  3, 227, :_reduce_310,
+  2, 227, :_reduce_311,
+  0, 278, :_reduce_312,
+  4, 227, :_reduce_313,
+  0, 279, :_reduce_314,
+  4, 227, :_reduce_315,
+  1, 227, :_reduce_316,
+  4, 227, :_reduce_317,
+  3, 227, :_reduce_318,
+  1, 227, :_reduce_319,
+  5, 227, :_reduce_320,
+  4, 227, :_reduce_321,
+  3, 227, :_reduce_322,
+  2, 227, :_reduce_323,
+  1, 227, :_reduce_none,
+  2, 227, :_reduce_325,
+  1, 227, :_reduce_326,
+  6, 227, :_reduce_327,
+  6, 227, :_reduce_328,
+  4, 227, :_reduce_329,
+  4, 227, :_reduce_330,
+  5, 227, :_reduce_331,
+  4, 227, :_reduce_332,
+  5, 227, :_reduce_333,
+  6, 227, :_reduce_334,
+  0, 280, :_reduce_335,
+  6, 227, :_reduce_336,
+  0, 281, :_reduce_337,
+  0, 282, :_reduce_338,
+  8, 227, :_reduce_339,
+  0, 283, :_reduce_340,
+  5, 227, :_reduce_341,
+  0, 284, :_reduce_342,
+  6, 227, :_reduce_343,
+  0, 285, :_reduce_344,
+  0, 286, :_reduce_345,
+  9, 227, :_reduce_346,
+  1, 227, :_reduce_347,
+  1, 227, :_reduce_348,
+  1, 227, :_reduce_349,
+  1, 227, :_reduce_350,
+  1, 182, :_reduce_351,
+  1, 249, :_reduce_none,
+  1, 255, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 260, :_reduce_none,
+  1, 261, :_reduce_none,
+  1, 262, :_reduce_none,
+  1, 265, :_reduce_none,
+  1, 267, :_reduce_359,
+  1, 270, :_reduce_360,
+  1, 271, :_reduce_361,
+  1, 287, :_reduce_none,
+  1, 288, :_reduce_none,
+  1, 289, :_reduce_none,
+  1, 290, :_reduce_none,
+  1, 291, :_reduce_none,
+  1, 163, :_reduce_none,
+  1, 292, :_reduce_none,
+  1, 250, :_reduce_none,
+  1, 206, :_reduce_none,
+  1, 256, :_reduce_none,
+  1, 256, :_reduce_none,
+  2, 256, :_reduce_none,
+  1, 192, :_reduce_none,
+  1, 192, :_reduce_none,
+  1, 257, :_reduce_none,
+  5, 257, :_reduce_377,
+  1, 259, :_reduce_none,
+  2, 259, :_reduce_379,
+  1, 266, :_reduce_none,
+  1, 266, :_reduce_381,
+  1, 293, :_reduce_none,
+  3, 293, :_reduce_383,
+  1, 296, :_reduce_384,
+  3, 296, :_reduce_385,
+  1, 295, :_reduce_386,
+  3, 295, :_reduce_387,
+  5, 295, :_reduce_388,
+  1, 295, :_reduce_389,
+  3, 295, :_reduce_390,
+  2, 297, :_reduce_391,
+  1, 297, :_reduce_392,
+  4, 298, :_reduce_393,
+  2, 298, :_reduce_394,
+  2, 298, :_reduce_395,
+  2, 298, :_reduce_396,
+  1, 298, :_reduce_397,
+  2, 304, :_reduce_398,
+  1, 304, :_reduce_none,
+  6, 305, :_reduce_400,
+  8, 305, :_reduce_401,
+  4, 305, :_reduce_402,
+  6, 305, :_reduce_403,
+  4, 305, :_reduce_404,
+  2, 305, :_reduce_405,
+  6, 305, :_reduce_406,
+  2, 305, :_reduce_407,
+  4, 305, :_reduce_408,
+  6, 305, :_reduce_409,
+  2, 305, :_reduce_410,
+  4, 305, :_reduce_411,
+  2, 305, :_reduce_412,
+  4, 305, :_reduce_413,
+  1, 305, :_reduce_414,
+  1, 309, :_reduce_415,
+  1, 309, :_reduce_416,
+  3, 310, :_reduce_417,
+  1, 310, :_reduce_418,
+  4, 310, :_reduce_419,
+  1, 311, :_reduce_none,
+  4, 311, :_reduce_421,
+  1, 312, :_reduce_422,
+  3, 312, :_reduce_423,
+  1, 313, :_reduce_424,
+  1, 313, :_reduce_none,
+  0, 317, :_reduce_426,
+  0, 318, :_reduce_427,
+  5, 254, :_reduce_428,
+  4, 315, :_reduce_429,
+  1, 315, :_reduce_430,
+  3, 316, :_reduce_431,
+  3, 316, :_reduce_432,
+  3, 320, :_reduce_433,
+  2, 197, :_reduce_434,
+  4, 197, :_reduce_435,
+  5, 197, :_reduce_436,
+  5, 197, :_reduce_437,
+  2, 253, :_reduce_438,
+  4, 253, :_reduce_439,
+  4, 253, :_reduce_440,
+  3, 253, :_reduce_441,
+  3, 253, :_reduce_442,
+  3, 253, :_reduce_443,
+  2, 253, :_reduce_444,
+  1, 253, :_reduce_445,
+  4, 253, :_reduce_446,
+  0, 323, :_reduce_447,
+  4, 252, :_reduce_448,
+  0, 324, :_reduce_449,
+  4, 252, :_reduce_450,
+  0, 325, :_reduce_451,
+  0, 326, :_reduce_452,
+  4, 202, :_reduce_453,
+  0, 328, :_reduce_454,
+  0, 329, :_reduce_455,
+  4, 321, :_reduce_456,
+  1, 327, :_reduce_457,
+  2, 327, :_reduce_458,
+  3, 327, :_reduce_459,
+  4, 327, :_reduce_460,
+  0, 331, :_reduce_461,
+  6, 263, :_reduce_462,
+  1, 330, :_reduce_none,
+  1, 330, :_reduce_none,
+  0, 334, :_reduce_465,
+  0, 335, :_reduce_466,
+  7, 264, :_reduce_467,
+  1, 333, :_reduce_none,
+  1, 333, :_reduce_none,
+  1, 332, :_reduce_none,
+  3, 332, :_reduce_471,
+  3, 332, :_reduce_472,
+  1, 336, :_reduce_none,
+  2, 336, :_reduce_474,
+  3, 336, :_reduce_475,
+  1, 336, :_reduce_476,
+  1, 336, :_reduce_477,
+  1, 189, :_reduce_none,
+  3, 340, :_reduce_479,
+  1, 340, :_reduce_none,
+  3, 342, :_reduce_481,
+  1, 342, :_reduce_none,
+  1, 344, :_reduce_483,
+  1, 345, :_reduce_484,
+  1, 343, :_reduce_none,
+  4, 343, :_reduce_486,
+  4, 343, :_reduce_487,
+  3, 343, :_reduce_488,
+  4, 343, :_reduce_489,
+  4, 343, :_reduce_490,
+  3, 343, :_reduce_491,
+  0, 349, :_reduce_492,
+  4, 343, :_reduce_493,
+  2, 343, :_reduce_494,
+  0, 350, :_reduce_495,
+  4, 343, :_reduce_496,
+  2, 343, :_reduce_497,
+  0, 351, :_reduce_498,
+  4, 343, :_reduce_499,
+  1, 337, :_reduce_500,
+  1, 337, :_reduce_501,
+  2, 337, :_reduce_502,
+  3, 337, :_reduce_503,
+  5, 337, :_reduce_504,
+  2, 337, :_reduce_505,
+  4, 337, :_reduce_506,
+  1, 337, :_reduce_none,
+  2, 352, :_reduce_508,
+  3, 352, :_reduce_509,
+  2, 338, :_reduce_510,
+  4, 338, :_reduce_511,
+  1, 338, :_reduce_512,
+  3, 338, :_reduce_513,
+  1, 354, :_reduce_none,
+  3, 354, :_reduce_515,
+  1, 353, :_reduce_516,
+  3, 339, :_reduce_517,
+  1, 339, :_reduce_518,
+  2, 339, :_reduce_519,
+  1, 339, :_reduce_520,
+  3, 339, :_reduce_521,
+  1, 339, :_reduce_522,
+  1, 355, :_reduce_none,
+  3, 355, :_reduce_524,
+  2, 358, :_reduce_525,
+  1, 358, :_reduce_526,
+  1, 359, :_reduce_527,
+  2, 356, :_reduce_528,
+  1, 356, :_reduce_529,
+  2, 357, :_reduce_530,
+  1, 346, :_reduce_none,
+  3, 346, :_reduce_532,
+  3, 346, :_reduce_533,
+  2, 346, :_reduce_534,
+  2, 346, :_reduce_535,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  1, 346, :_reduce_none,
+  2, 346, :_reduce_539,
+  2, 346, :_reduce_540,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_545,
+  1, 361, :_reduce_546,
+  1, 361, :_reduce_547,
+  1, 361, :_reduce_548,
+  1, 361, :_reduce_549,
+  1, 361, :_reduce_none,
+  1, 341, :_reduce_551,
+  2, 362, :_reduce_552,
+  2, 347, :_reduce_553,
+  3, 347, :_reduce_554,
+  1, 347, :_reduce_555,
+  6, 162, :_reduce_556,
+  0, 162, :_reduce_557,
+  1, 363, :_reduce_558,
+  1, 363, :_reduce_none,
+  1, 363, :_reduce_none,
+  2, 364, :_reduce_561,
+  1, 364, :_reduce_none,
+  2, 164, :_reduce_563,
+  1, 164, :_reduce_none,
+  1, 240, :_reduce_565,
+  1, 240, :_reduce_none,
+  1, 241, :_reduce_567,
+  1, 366, :_reduce_568,
+  1, 366, :_reduce_none,
+  2, 366, :_reduce_570,
+  3, 367, :_reduce_571,
+  1, 367, :_reduce_572,
+  3, 242, :_reduce_573,
+  3, 243, :_reduce_574,
+  3, 244, :_reduce_575,
+  3, 244, :_reduce_576,
+  1, 371, :_reduce_577,
+  3, 371, :_reduce_578,
+  1, 372, :_reduce_none,
+  2, 372, :_reduce_580,
+  3, 246, :_reduce_581,
+  3, 246, :_reduce_582,
+  1, 374, :_reduce_583,
+  3, 374, :_reduce_584,
+  3, 245, :_reduce_585,
+  3, 245, :_reduce_586,
+  3, 247, :_reduce_587,
+  3, 247, :_reduce_588,
+  1, 375, :_reduce_589,
+  3, 375, :_reduce_590,
+  1, 376, :_reduce_591,
+  3, 376, :_reduce_592,
+  1, 368, :_reduce_593,
+  2, 368, :_reduce_594,
+  1, 369, :_reduce_595,
+  2, 369, :_reduce_596,
+  1, 370, :_reduce_597,
+  2, 370, :_reduce_598,
+  1, 373, :_reduce_599,
+  0, 378, :_reduce_600,
+  3, 373, :_reduce_601,
+  0, 379, :_reduce_602,
+  4, 373, :_reduce_603,
+  1, 377, :_reduce_604,
+  1, 377, :_reduce_605,
+  1, 377, :_reduce_606,
+  1, 377, :_reduce_none,
+  1, 222, :_reduce_none,
+  1, 222, :_reduce_none,
+  2, 380, :_reduce_610,
+  1, 380, :_reduce_611,
+  1, 382, :_reduce_none,
+  1, 382, :_reduce_none,
+  1, 382, :_reduce_none,
+  1, 382, :_reduce_none,
+  3, 381, :_reduce_616,
+  1, 365, :_reduce_none,
+  2, 365, :_reduce_618,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 225, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 216, :_reduce_628,
+  1, 216, :_reduce_629,
+  1, 216, :_reduce_630,
+  1, 216, :_reduce_631,
+  1, 216, :_reduce_632,
+  1, 216, :_reduce_633,
+  1, 216, :_reduce_634,
+  1, 248, :_reduce_635,
+  1, 248, :_reduce_636,
+  1, 181, :_reduce_637,
+  1, 181, :_reduce_638,
+  1, 186, :_reduce_639,
+  1, 186, :_reduce_640,
+  0, 383, :_reduce_641,
+  4, 268, :_reduce_642,
+  1, 268, :_reduce_643,
+  3, 272, :_reduce_644,
+  5, 272, :_reduce_645,
+  3, 272, :_reduce_646,
+  0, 385, :_reduce_647,
+  3, 272, :_reduce_648,
+  4, 384, :_reduce_649,
+  2, 384, :_reduce_650,
+  2, 384, :_reduce_651,
+  2, 384, :_reduce_652,
+  1, 384, :_reduce_none,
+  2, 387, :_reduce_654,
+  0, 387, :_reduce_655,
+  6, 319, :_reduce_656,
+  8, 319, :_reduce_657,
+  4, 319, :_reduce_658,
+  6, 319, :_reduce_659,
+  4, 319, :_reduce_660,
+  6, 319, :_reduce_661,
+  2, 319, :_reduce_662,
+  4, 319, :_reduce_663,
+  6, 319, :_reduce_664,
+  2, 319, :_reduce_665,
+  4, 319, :_reduce_666,
+  2, 319, :_reduce_667,
+  4, 319, :_reduce_668,
+  1, 319, :_reduce_669,
+  0, 319, :_reduce_670,
+  1, 235, :_reduce_671,
+  1, 314, :_reduce_672,
+  1, 314, :_reduce_673,
+  1, 314, :_reduce_674,
+  1, 314, :_reduce_675,
+  1, 294, :_reduce_none,
+  1, 294, :_reduce_677,
+  1, 389, :_reduce_none,
+  1, 390, :_reduce_none,
+  3, 390, :_reduce_680,
+  1, 306, :_reduce_681,
+  3, 306, :_reduce_682,
+  1, 391, :_reduce_none,
+  2, 392, :_reduce_684,
+  1, 392, :_reduce_685,
+  2, 393, :_reduce_686,
+  1, 393, :_reduce_687,
+  1, 299, :_reduce_none,
+  3, 299, :_reduce_689,
+  1, 386, :_reduce_none,
+  3, 386, :_reduce_691,
+  1, 360, :_reduce_none,
+  1, 360, :_reduce_none,
+  2, 302, :_reduce_694,
+  2, 300, :_reduce_695,
+  1, 300, :_reduce_696,
+  3, 394, :_reduce_697,
+  3, 395, :_reduce_698,
+  1, 307, :_reduce_699,
+  3, 307, :_reduce_700,
+  1, 388, :_reduce_701,
+  3, 388, :_reduce_702,
+  1, 396, :_reduce_none,
+  1, 396, :_reduce_none,
+  2, 308, :_reduce_705,
+  1, 308, :_reduce_706,
+  1, 397, :_reduce_none,
+  1, 397, :_reduce_none,
+  2, 303, :_reduce_709,
+  2, 301, :_reduce_710,
+  0, 301, :_reduce_711,
+  1, 273, :_reduce_none,
+  0, 398, :_reduce_713,
+  4, 273, :_reduce_714,
+  1, 251, :_reduce_715,
+  2, 251, :_reduce_none,
+  1, 233, :_reduce_none,
+  3, 233, :_reduce_718,
+  3, 399, :_reduce_719,
+  2, 399, :_reduce_720,
+  4, 399, :_reduce_721,
+  2, 399, :_reduce_722,
+  1, 205, :_reduce_none,
+  1, 205, :_reduce_none,
+  1, 205, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 322, :_reduce_none,
+  1, 322, :_reduce_none,
+  1, 322, :_reduce_none,
+  1, 274, :_reduce_none,
+  1, 274, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 185, :_reduce_none,
+  1, 198, :_reduce_none,
+  1, 198, :_reduce_none,
+  0, 152, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 187, :_reduce_none,
+  1, 187, :_reduce_none,
+  2, 210, :_reduce_743,
+  2, 184, :_reduce_744,
+  2, 348, :_reduce_none,
+  0, 232, :_reduce_none,
+  1, 232, :_reduce_none,
+  1, 232, :_reduce_none,
+  1, 269, :_reduce_749,
+  1, 269, :_reduce_none,
+  1, 155, :_reduce_none,
+  2, 155, :_reduce_752,
+  0, 153, :_reduce_753 ]
+
+racc_reduce_n = 754
+
+racc_shift_n = 1247
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLONELY => 142,
+  :tBDOT2 => 143,
+  :tBDOT3 => 144,
+  :tLOWEST => 145,
+  :tEQL => 146 }
+
+racc_nt_base = 147
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLONELY",
+  "tBDOT2",
+  "tBDOT3",
+  "tLOWEST",
+  "tEQL",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "@3",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@4",
+  "stmts",
+  "stmt_or_begin",
+  "@5",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@6",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "backref",
+  "opt_nl",
+  "arg",
+  "p_expr",
+  "@7",
+  "expr_value_do",
+  "do",
+  "@8",
+  "@9",
+  "command",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@10",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "fname",
+  "op",
+  "reswords",
+  "symbol",
+  "@11",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "args_forward",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@12",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "p_case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "k_def",
+  "f_arglist",
+  "singleton",
+  "dot_or_colon",
+  "@13",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "@22",
+  "@23",
+  "@24",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "block_args_tail",
+  "f_block_kwarg",
+  "f_kwrest",
+  "opt_f_block_arg",
+  "f_no_kwarg",
+  "f_block_arg",
+  "opt_block_args_tail",
+  "block_param",
+  "f_arg",
+  "f_block_optarg",
+  "f_rest_arg",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@25",
+  "@26",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@27",
+  "@28",
+  "@29",
+  "@30",
+  "case_args",
+  "@31",
+  "@32",
+  "cases",
+  "@33",
+  "p_top_expr",
+  "p_cases",
+  "@34",
+  "@35",
+  "p_top_expr_body",
+  "p_args",
+  "p_args_tail",
+  "p_kwargs",
+  "p_as",
+  "p_variable",
+  "p_alt",
+  "p_expr_basic",
+  "p_lparen",
+  "p_lbracket",
+  "p_value",
+  "p_const",
+  "rbrace",
+  "@36",
+  "@37",
+  "@38",
+  "p_args_head",
+  "p_arg",
+  "p_args_post",
+  "p_kwarg",
+  "p_kwrest",
+  "p_kwnorest",
+  "p_kw",
+  "p_kw_label",
+  "kwrest_mark",
+  "p_primitive",
+  "p_var_ref",
+  "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",
+  "@39",
+  "@40",
+  "ssym",
+  "dsym",
+  "sym",
+  "@41",
+  "args_tail",
+  "@42",
+  "f_kwarg",
+  "opt_args_tail",
+  "f_optarg",
+  "f_arg_asgn",
+  "f_arg_item",
+  "f_label",
+  "f_kw",
+  "f_block_kw",
+  "f_opt",
+  "f_block_opt",
+  "restarg_mark",
+  "blkarg_mark",
+  "@43",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 11
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      _, line, stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      res = _values[-2]
+                      # TODO: move down to main match so I can just use val
+
+                      yyerror "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_16(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 17 omitted
+
+# reduce 18 omitted
+
+def _reduce_19(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_20(val, _values, result)
+                      result = val[1]
+                      debug 12
+
+    result
+end
+
+# reduce 21 omitted
+
+def _reduce_22(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_35(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 13
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 36 omitted
+
+def _reduce_37(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      # unwraps s(:to_ary, rhs)
+                      lhs, _, (_, rhs), _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+
+                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
+
+    result
+end
+
+def _reduce_40(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 41 omitted
+
+def _reduce_42(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_50(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+def _reduce_51(val, _values, result)
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+
+    result
+end
+
+# reduce 52 omitted
+
+# reduce 53 omitted
+
+def _reduce_54(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_55(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_56(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_57(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+def _reduce_58(val, _values, result)
+                      # TODO? value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      self.env.unextend
+
+                      expr, _, old_kwarg, pat = val
+
+                      expr = value_expr expr
+
+                      self.in_kwarg = old_kwarg
+                      pat_in = new_in pat, nil, nil, expr.line
+                      result = new_case expr, pat_in, expr.line
+
+    result
+end
+
+# reduce 60 omitted
+
+def _reduce_61(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_62(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_63(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_64(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 65 omitted
+
+# reduce 66 omitted
+
+# reduce 67 omitted
+
+def _reduce_68(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_74(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_75(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_76(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_77(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_79(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_80(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_81(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_82(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 83 omitted
+
+def _reduce_84(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 85 omitted
+
+def _reduce_86(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_92(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_93(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_94(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_95(val, _values, result)
+                      l = lexer.lineno
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 97 omitted
+
+def _reduce_98(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_106(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_107(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 14
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 15
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 16
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_118(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 17
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_119(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 18
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_120(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 122 omitted
+
+def _reduce_123(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_124(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_125(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 126 omitted
+
+# reduce 127 omitted
+
+# reduce 128 omitted
+
+def _reduce_129(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 130 omitted
+
+def _reduce_131(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 132 omitted
+
+def _reduce_133(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_134(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_135(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+# reduce 203 omitted
+
+# reduce 204 omitted
+
+# reduce 205 omitted
+
+# reduce 206 omitted
+
+def _reduce_207(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_208(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_209(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_210(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_211(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_212(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_213(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_214(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_215(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_216(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot2, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot3, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      _, v2, = val
+                      v1 = nil
+
+                      result = s(:dot2, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      _, v2 = val
+                      v1 = nil
+
+                      result = s(:dot3, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_227(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_228(val, _values, result)
+                      _, (num, line), _, arg = val
+                      lit = s(:lit, num).line line
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_229(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 235 omitted
+
+def _reduce_236(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_241(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_242(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_243(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_244(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_245(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_246(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_247(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+# reduce 249 omitted
+
+# reduce 250 omitted
+
+# reduce 251 omitted
+
+# reduce 252 omitted
+
+# reduce 253 omitted
+
+def _reduce_254(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_255(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_256(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 257 omitted
+
+def _reduce_258(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_259(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_260(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 261 omitted
+
+def _reduce_262(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_263(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+def _reduce_264(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+def _reduce_265(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+# reduce 266 omitted
+
+# reduce 267 omitted
+
+# reduce 268 omitted
+
+# reduce 269 omitted
+
+def _reduce_270(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_271(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_272(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_273(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_274(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_275(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_279(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_280(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_281(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 282 omitted
+
+def _reduce_283(val, _values, result)
+                      arg, = val
+                      lineno = arg.line || lexer.lineno # HACK
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_284(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_285(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_286(val, _values, result)
+                      # TODO: the line number from tSTAR has been dropped
+                      args, _, _, id = val
+                      line = lexer.lineno
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_287(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_288(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_289(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_290(val, _values, result)
+                      # TODO: make all tXXXX terminals include lexer.lineno
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_291(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 292 omitted
+
+# reduce 293 omitted
+
+# reduce 294 omitted
+
+# reduce 295 omitted
+
+# reduce 296 omitted
+
+# reduce 297 omitted
+
+# reduce 298 omitted
+
+# reduce 299 omitted
+
+# reduce 300 omitted
+
+# reduce 301 omitted
+
+def _reduce_302(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_303(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+                      result = lexer.lineno
+
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      _, line, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_308(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_309(val, _values, result)
+                      _, stmt, _ = val
+                      result = stmt
+                      result ||= s(:nil).line lexer.lineno
+                      result.paren = true
+
+    result
+end
+
+def _reduce_310(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_311(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_312(val, _values, result)
+ result = lexer.lineno
+    result
+end
+
+def _reduce_313(val, _values, result)
+                      _, line, args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_314(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_315(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_316(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_317(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_318(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      debug 20
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 324 omitted
+
+def _reduce_325(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_341(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_342(val, _values, result)
+                      result = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+    result
+end
+
+def _reduce_343(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_344(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_345(val, _values, result)
+                      result = self.in_def
+
+                      self.in_single += 1 # TODO: remove?
+
+                      self.in_def = true # local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+
+    result
+end
+
+def _reduce_346(val, _values, result)
+                      # [kdef, recv, _, _, (name, line), in_def, args, body, kend]
+                      # =>
+                      # [kdef, recv, (name, line), in_def, args, body, kend]
+
+                      val.delete_at 3
+                      val.delete_at 2
+
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_347(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_348(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_349(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_351(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 352 omitted
+
+# reduce 353 omitted
+
+# reduce 354 omitted
+
+# reduce 355 omitted
+
+# reduce 356 omitted
+
+# reduce 357 omitted
+
+# reduce 358 omitted
+
+def _reduce_359(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_360(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_361(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+# reduce 366 omitted
+
+# reduce 367 omitted
+
+# reduce 368 omitted
+
+# reduce 369 omitted
+
+# reduce 370 omitted
+
+# reduce 371 omitted
+
+# reduce 372 omitted
+
+# reduce 373 omitted
+
+# reduce 374 omitted
+
+# reduce 375 omitted
+
+# reduce 376 omitted
+
+def _reduce_377(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 378 omitted
+
+def _reduce_379(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 380 omitted
+
+def _reduce_381(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+# reduce 382 omitted
+
+def _reduce_383(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_384(val, _values, result)
+                      sym, = val
+
+                      result = s(:array, sym).line lexer.lineno
+
+    result
+end
+
+def _reduce_385(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_386(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_387(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_388(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_389(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_390(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_391(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      result = args [:*]
+                      result.line lexer.lineno # FIX: tSTAR -> line
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 399 omitted
+
+def _reduce_400(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_404(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_405(val, _values, result)
+                      result = args(val) << nil
+
+    result
+end
+
+def _reduce_406(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_407(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_408(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_409(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_413(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_414(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_415(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = s(:args).line lexer.lineno
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+
+    result
+end
+
+# reduce 420 omitted
+
+def _reduce_421(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 425 omitted
+
+def _reduce_426(val, _values, result)
+                      self.env.extend :dynamic
+                      result = [lexer.lineno, lexer.lpar_beg]
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      _, (line, lpar), args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_440(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_441(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_442(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_443(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      result = s(:zsuper).line lexer.lineno
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      self.env.extend :dynamic
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_451(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_452(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_453(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_454(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_455(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_456(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_457(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_458(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_459(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_460(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_461(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_462(val, _values, result)
+                      result = new_when(val[2], val[4])
+                      result.line val[1]
+                      result << val[5] if val[5]
+
+    result
+end
+
+# reduce 463 omitted
+
+# reduce 464 omitted
+
+def _reduce_465(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      push_pvtbl
+                      push_pktbl
+
+    result
+end
+
+def _reduce_466(val, _values, result)
+                      pop_pktbl
+                      pop_pvtbl
+                      old_kwargs = _values[-3]
+                      self.in_kwarg = old_kwargs
+
+    result
+end
+
+def _reduce_467(val, _values, result)
+                      (_, line), _, pat, _, _, body, cases = val
+
+                      result = new_in pat, body, cases, line
+
+    result
+end
+
+# reduce 468 omitted
+
+# reduce 469 omitted
+
+# reduce 470 omitted
+
+def _reduce_471(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, body, nil).line body.line
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, nil, body).line body.line
+
+    result
+end
+
+# reduce 473 omitted
+
+def _reduce_474(val, _values, result)
+                      expr, _ = val
+
+                      tail = new_array_pattern_tail nil, true, nil, nil
+                      result = new_array_pattern nil, expr, tail, expr.line
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      expr, _, args = val
+
+                      result = new_array_pattern nil, expr, args, expr.line
+
+    result
+end
+
+def _reduce_476(val, _values, result)
+                      args, = val
+                      result = new_array_pattern nil, nil, args, args.line
+
+    result
+end
+
+def _reduce_477(val, _values, result)
+                      kwargs, = val
+                      result = new_hash_pattern nil, kwargs, kwargs.line
+
+    result
+end
+
+# reduce 478 omitted
+
+def _reduce_479(val, _values, result)
+                      # NODE *n = NEW_LIST($1, &@$);
+                      # n = list_append(p, n, $3);
+                      # $$ = new_hash(p, n, &@$);
+
+                      expr, _, var = val
+
+                      id = var.last
+
+                      self.env[id] = :lvar # HACK: need to extend env
+                      lhs = s(:lasgn, id).line var.line
+
+                      result = new_assign lhs, expr
+
+    result
+end
+
+# reduce 480 omitted
+
+def _reduce_481(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = s(:or, lhs, rhs).line lhs.line
+
+    result
+end
+
+# reduce 482 omitted
+
+def _reduce_483(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_484(val, _values, result)
+ push_pktbl
+    result
+end
+
+# reduce 485 omitted
+
+def _reduce_486(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern(lhs, nil, args, lhs.line)
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      lhs, _, kwargs, _ = val
+
+                      pop_pktbl
+                      result = new_hash_pattern(lhs, kwargs, lhs.line)
+
+    result
+end
+
+def _reduce_488(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_489(val, _values, result)
+                      const, _, pre_arg, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern const, nil, pre_arg, const.line
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      const, _, kwargs, _ = val
+
+                      result = new_hash_pattern const, kwargs, const.line
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      _, _, pat, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern nil, nil, pat, pat.line
+
+    result
+end
+
+def _reduce_494(val, _values, result)
+                      (_, line), _ = val
+
+                      result = s(:array_pat).line line
+
+    result
+end
+
+def _reduce_495(val, _values, result)
+                      push_pktbl
+                      result = self.in_kwarg
+                      self.in_kwarg = false
+
+    result
+end
+
+def _reduce_496(val, _values, result)
+                      _, in_kwarg, kwargs, _ = val
+
+                      pop_pktbl
+                      self.in_kwarg = in_kwarg
+
+                      result = new_hash_pattern(nil, kwargs, kwargs.line)
+
+    result
+end
+
+def _reduce_497(val, _values, result)
+                      (_, line), _ = val
+
+                      tail = new_hash_pattern_tail nil, nil, line
+                      result = new_hash_pattern nil, tail, line
+
+    result
+end
+
+def _reduce_498(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_499(val, _values, result)
+                      _, _, expr, _ = val
+
+                      pop_pktbl
+                      result = expr
+
+    result
+end
+
+def _reduce_500(val, _values, result)
+                      expr, = val
+
+                      ary = s(:array_TAIL, expr).line expr.line
+                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
+
+    result
+end
+
+def _reduce_501(val, _values, result)
+                      head, = val
+
+                      result = new_array_pattern_tail head, true, nil, nil
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      head, tail = val
+
+                      both = array_pat_concat head, tail
+
+                      result = new_array_pattern_tail both, nil, nil, nil
+                      result.line head.line
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      head, _, (id, _line) = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, nil
+                      result.line head.line
+
+    result
+end
+
+def _reduce_504(val, _values, result)
+                      head, _, (id, _line), _, post = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, post
+                      result.line head.line
+
+    result
+end
+
+def _reduce_505(val, _values, result)
+                      expr, _ = val
+
+                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
+
+    result
+end
+
+def _reduce_506(val, _values, result)
+                      head, _, _, post = val
+
+                      result = new_array_pattern_tail(head, true, nil, post).line head.line
+
+    result
+end
+
+# reduce 507 omitted
+
+def _reduce_508(val, _values, result)
+                      arg, _ = val
+                      result = arg
+
+    result
+end
+
+def _reduce_509(val, _values, result)
+                      head, tail, _ = val
+
+                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
+                      result.line head.line
+
+    result
+end
+
+def _reduce_510(val, _values, result)
+                      _, (id, line) = val
+
+                      result = new_array_pattern_tail nil, true, id.to_sym, nil
+                      result.line line
+
+    result
+end
+
+def _reduce_511(val, _values, result)
+                      _, (id, line), _, rhs = val
+
+                      result = new_array_pattern_tail nil, true, id.to_sym, rhs
+                      result.line line
+
+    result
+end
+
+def _reduce_512(val, _values, result)
+                      (_, line), = val
+
+                      result = new_array_pattern_tail nil, true, nil, nil
+                      result.line line
+
+    result
+end
+
+def _reduce_513(val, _values, result)
+                      (_, line), _, args = val
+
+                      result = new_array_pattern_tail nil, true, nil, args
+                      result.line line
+
+    result
+end
+
+# reduce 514 omitted
+
+def _reduce_515(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = array_pat_concat lhs, rhs
+
+    result
+end
+
+def _reduce_516(val, _values, result)
+                      expr, = val
+                      expr = s(:array_TAIL, expr).line expr.line unless
+                        expr.sexp_type == :array_TAIL
+                      result = expr
+
+    result
+end
+
+def _reduce_517(val, _values, result)
+                      kw_arg, _, rest = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
+
+    result
+end
+
+def _reduce_518(val, _values, result)
+                      kwarg, = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_519(val, _values, result)
+                      kwarg, _ = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_520(val, _values, result)
+                      rest, = val
+
+                      result = new_hash_pattern_tail nil, rest, rest.line
+
+    result
+end
+
+def _reduce_521(val, _values, result)
+                      kwarg, _, norest = val
+
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, norest, kwarg.line
+
+    result
+end
+
+def _reduce_522(val, _values, result)
+                      norest, = val
+
+                      result = new_hash_pattern_tail nil, norest, norest.line
+
+    result
+end
+
+# reduce 523 omitted
+
+def _reduce_524(val, _values, result)
+                      kwarg, _, kw = val
+                      kwarg.concat kw.sexp_body
+                      result = kwarg
+
+    result
+end
+
+def _reduce_525(val, _values, result)
+                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
+                      lhs, rhs = val
+
+                      result = s(:PAIR, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_526(val, _values, result)
+                      lhs, = val
+
+                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
+
+                      # TODO: if ($1 && !is_local_id(get_id($1))) {
+                      #     yyerror1(&@1, "key must be valid as local variables");
+                      # }
+
+                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
+                      #                     assignable(p, $1, 0, &@$));
+
+
+                      case lhs.sexp_type
+                      when :lit then
+                        assignable [lhs.value, lhs.line]
+                      else
+                        # TODO or done?
+                        debug 666
+                      end
+
+                      # TODO PAIR -> LIST ?
+                      result = s(:PAIR, lhs, nil).line lhs.line
+
+    result
+end
+
+def _reduce_527(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+def _reduce_528(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = s(:kwrest, :"**#{name}").line line
+
+    result
+end
+
+def _reduce_529(val, _values, result)
+                      (_, line), = val
+
+                      result = s(:kwrest, :"**").line line
+
+    result
+end
+
+def _reduce_530(val, _values, result)
+                      (_, line), _ = val
+
+                      # TODO: or s(:norest)? s(:**nil)?
+                      result = s(:kwrest, :"**nil").line line
+
+    result
+end
+
+# reduce 531 omitted
+
+def _reduce_532(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot2, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_533(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot3, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot2, v1, nil).line v1.line
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot3, v1, nil).line v1.line
+
+    result
+end
+
+# reduce 536 omitted
+
+# reduce 537 omitted
+
+# reduce 538 omitted
+
+def _reduce_539(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot2, nil, v1).line v1.line
+
+    result
+end
+
+def _reduce_540(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot3, nil, v1).line v1.line
+
+    result
+end
+
+# reduce 541 omitted
+
+# reduce 542 omitted
+
+# reduce 543 omitted
+
+# reduce 544 omitted
+
+def _reduce_545(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_547(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_548(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_549(val, _values, result)
+                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
+                      var, = val
+
+                      result = var
+
+    result
+end
+
+# reduce 550 omitted
+
+def _reduce_551(val, _values, result)
+                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
+                      # TODO: assignable(p, $1, 0, &@$);
+                      result = wrap :lasgn, val[0]
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      # TODO: check id against env for lvar or dvar
+                      result = wrap :lvar, val[1]
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      l = lhs.line
+                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_555(val, _values, result)
+                      # TODO $$ = gettable(p, $1, &@$);
+                      result = wrap :const, val[0]
+
+    result
+end
+
+def _reduce_556(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_557(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_558(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 559 omitted
+
+# reduce 560 omitted
+
+def _reduce_561(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 562 omitted
+
+def _reduce_563(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 564 omitted
+
+def _reduce_565(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 566 omitted
+
+def _reduce_567(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      debug 37
+
+    result
+end
+
+# reduce 569 omitted
+
+def _reduce_570(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_571(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_572(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_573(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_574(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_575(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_576(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_577(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_578(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 579 omitted
+
+def _reduce_580(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_581(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_582(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_583(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_584(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_585(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_586(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_587(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_588(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_589(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_590(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_591(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_595(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_596(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_597(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_598(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_599(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_600(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_601(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_602(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                                lexer.lineno,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_603(val, _values, result)
+                      _, memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state, line = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 38
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_604(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_605(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 607 omitted
+
+# reduce 608 omitted
+
+# reduce 609 omitted
+
+def _reduce_610(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_611(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 612 omitted
+
+# reduce 613 omitted
+
+# reduce 614 omitted
+
+# reduce 615 omitted
+
+def _reduce_616(val, _values, result)
+                      _, result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line lexer.lineno
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 39
+                      end
+
+    result
+end
+
+# reduce 617 omitted
+
+def _reduce_618(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 619 omitted
+
+# reduce 620 omitted
+
+# reduce 621 omitted
+
+# reduce 622 omitted
+
+# reduce 623 omitted
+
+# reduce 624 omitted
+
+# reduce 625 omitted
+
+# reduce 626 omitted
+
+# reduce 627 omitted
+
+def _reduce_628(val, _values, result)
+ result = s(:nil).line lexer.lineno
+    result
+end
+
+def _reduce_629(val, _values, result)
+ result = s(:self).line lexer.lineno
+    result
+end
+
+def _reduce_630(val, _values, result)
+ result = s(:true).line lexer.lineno
+    result
+end
+
+def _reduce_631(val, _values, result)
+ result = s(:false).line lexer.lineno
+    result
+end
+
+def _reduce_632(val, _values, result)
+ result = s(:str, self.file).line lexer.lineno
+    result
+end
+
+def _reduce_633(val, _values, result)
+ result = s(:lit, lexer.lineno).line lexer.lineno
+    result
+end
+
+def _reduce_634(val, _values, result)
+                      l = lexer.lineno
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_635(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+                      result.line line
+
+    result
+end
+
+def _reduce_636(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_637(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_638(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 40
+
+    result
+end
+
+def _reduce_639(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_640(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_641(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_642(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_643(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_644(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_645(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_646(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_647(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_648(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_649(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_650(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_651(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_652(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 653 omitted
+
+def _reduce_654(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_655(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_656(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_657(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_658(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_659(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_660(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_661(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_662(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_663(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_664(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_665(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_666(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_667(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_668(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_669(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_670(val, _values, result)
+                      result = args val
+                      # result.line lexer.lineno
+
+    result
+end
+
+def _reduce_671(val, _values, result)
+                      result = s(:forward_args).line lexer.lineno
+
+    result
+end
+
+def _reduce_672(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_673(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_674(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_675(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 676 omitted
+
+def _reduce_677(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 678 omitted
+
+# reduce 679 omitted
+
+def _reduce_680(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_681(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_682(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+# reduce 683 omitted
+
+def _reduce_684(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_685(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_686(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_687(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 688 omitted
+
+def _reduce_689(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 690 omitted
+
+def _reduce_691(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 692 omitted
+
+# reduce 693 omitted
+
+def _reduce_694(val, _values, result)
+                      result = :"**nil"
+
+    result
+end
+
+def _reduce_695(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_696(val, _values, result)
+                      id = :"**"
+                      self.env[id] = :lvar # TODO: needed?!?
+                      result = [id, lexer.lineno] # TODO: tPOW/tDSTAR include lineno
+
+    result
+end
+
+def _reduce_697(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+
+    result
+end
+
+def _reduce_698(val, _values, result)
+                      lhs, _, rhs = val
+                      result = self.assignable lhs, rhs
+
+    result
+end
+
+def _reduce_699(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_700(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_701(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_702(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 703 omitted
+
+# reduce 704 omitted
+
+def _reduce_705(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_706(val, _values, result)
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, lexer.lineno] # FIX: tSTAR to include lineno
+
+    result
+end
+
+# reduce 707 omitted
+
+# reduce 708 omitted
+
+def _reduce_709(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_710(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_711(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 712 omitted
+
+def _reduce_713(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_714(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_715(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 716 omitted
+
+# reduce 717 omitted
+
+def _reduce_718(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_719(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_720(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_721(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_722(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 723 omitted
+
+# reduce 724 omitted
+
+# reduce 725 omitted
+
+# reduce 726 omitted
+
+# reduce 727 omitted
+
+# reduce 728 omitted
+
+# reduce 729 omitted
+
+# reduce 730 omitted
+
+# reduce 731 omitted
+
+# reduce 732 omitted
+
+# reduce 733 omitted
+
+# reduce 734 omitted
+
+# reduce 735 omitted
+
+# reduce 736 omitted
+
+# reduce 737 omitted
+
+# reduce 738 omitted
+
+# reduce 739 omitted
+
+# reduce 740 omitted
+
+# reduce 741 omitted
+
+# reduce 742 omitted
+
+def _reduce_743(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_744(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 745 omitted
+
+# reduce 746 omitted
+
+# reduce 747 omitted
+
+# reduce 748 omitted
+
+def _reduce_749(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 750 omitted
+
+# reduce 751 omitted
+
+def _reduce_752(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_753(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby27Parser
diff -pruN 3.20.0-2/lib/ruby_parser3.yy 3.21.1-1/lib/ruby_parser3.yy
--- 3.20.0-2/lib/ruby_parser3.yy	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser3.yy	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,3609 @@
+# -*- racc -*-
+
+#if V == 30
+class Ruby30Parser
+#elif V == 31
+class Ruby31Parser
+#elif V == 32
+class Ruby32Parser
+#elif V == 33
+class Ruby33Parser
+#else
+fail "version not specified or supported on code generation"
+#endif
+
+token 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
+      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 tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
+      tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND
+      tRATIONAL tIMAGINARY
+      tLABEL_END
+      tLONELY
+      tBDOT2 tBDOT3
+
+preclow
+  nonassoc tLOWEST
+  nonassoc tLBRACE_ARG
+  nonassoc kIF_MOD kUNLESS_MOD kWHILE_MOD kUNTIL_MOD
+  left     kOR kAND
+  right    kNOT
+  nonassoc kDEFINED
+  right    tEQL tOP_ASGN
+  left     kRESCUE_MOD
+  right    tEH tCOLON
+  nonassoc tDOT2 tDOT3 tBDOT2 tBDOT3
+  left     tOROP
+  left     tANDOP
+  nonassoc tCMP tEQ tEQQ tNEQ tMATCH tNMATCH
+  left     tGT tGEQ tLT tLEQ
+  left     tPIPE tCARET
+  left     tAMPER2
+  left     tLSHFT tRSHFT
+  left     tPLUS tMINUS
+  left     tSTAR2 tDIVIDE tPERCENT # TODO: tSTAR2 -> tMULT
+  right    tUMINUS_NUM tUMINUS
+  right    tPOW
+  right    tBANG tTILDE tUPLUS
+prechigh
+
+rule
+
+         program:   {
+                      self.lexer.lex_state = EXPR_BEG
+                    }
+                    top_compstmt
+                    {
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+                    }
+
+    top_compstmt: top_stmts opt_terms
+                    {
+                      stmt, _ = val
+                      result = stmt
+                    }
+
+       top_stmts: none
+                | top_stmt
+                | top_stmts terms top_stmt
+                    {
+                      result = self.block_append val[0], val[2]
+                    }
+                | error top_stmt
+
+        top_stmt: stmt
+                | klBEGIN
+                    {
+                      if (self.in_def || self.in_single > 0) then
+                        debug 1
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+                    }
+                    begin_block
+                    {
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+                    }
+
+     begin_block: tLCURLY top_compstmt tRCURLY
+                    {
+                      (_, line), stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+                    }
+
+        bodystmt: compstmt opt_rescue k_else
+                    {
+                      res = _values[-2]
+                      yyerror "else without rescue is useless" unless res
+                    }
+                    compstmt
+                    opt_ensure
+                    {
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+                    }
+                | compstmt opt_rescue opt_ensure
+                    {
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+                    }
+
+        compstmt: stmts opt_terms
+                    {
+                      result = new_compstmt val
+                    }
+
+           stmts: none
+                | stmt_or_begin # TODO: newline_node ?
+                | stmts terms stmt_or_begin
+                    {
+                      result = self.block_append val[0], val[2]
+                    }
+                | error stmt
+                    {
+                      result = val[1]
+                      debug 2
+                    }
+
+   stmt_or_begin: stmt
+                | klBEGIN
+                    {
+                      yyerror "BEGIN is permitted only at toplevel"
+                    }
+                  begin_block
+                    {
+                      result = val[2] # wtf?
+                    }
+
+            stmt: kALIAS fitem
+                    {
+                      lexer.lex_state = EXPR_FNAME
+                    }
+                    fitem
+                    {
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+                    }
+                | kALIAS tGVAR tGVAR
+                    {
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+                    }
+                | kALIAS tGVAR tBACK_REF
+                    {
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+                    }
+                | kALIAS tGVAR tNTH_REF
+                    {
+                      yyerror "can't make alias for the number variables"
+                    }
+                | kUNDEF undef_list
+                    {
+                      result = val[1]
+                    }
+                | stmt kIF_MOD expr_value
+                    {
+                      t, _, c = val
+                      result = new_if c, t, nil
+                    }
+                | stmt kUNLESS_MOD expr_value
+                    {
+                      f, _, c = val
+                      result = new_if c, nil, f
+                    }
+                | stmt kWHILE_MOD expr_value
+                    {
+                      e, _, c = val
+                      result = new_while e, c, true
+                    }
+                | stmt kUNTIL_MOD expr_value
+                    {
+                      e, _, c = val
+                      result = new_until e, c, true
+                    }
+                | stmt kRESCUE_MOD stmt
+                    {
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+                    }
+                | klEND tLCURLY compstmt tRCURLY
+                    {
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 3
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+                    }
+                | command_asgn
+                | mlhs tEQL command_call
+                    {
+                      result = new_masgn val[0], val[2], :wrap
+                    }
+                | lhs tEQL mrhs
+                    {
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+                    }
+                | mlhs tEQL mrhs_arg kRESCUE_MOD stmt
+                    {
+                      # unwraps s(:to_ary, rhs)
+                      lhs, _, (_, rhs), _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+
+                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
+                    }
+                | mlhs tEQL mrhs_arg
+                    {
+                      result = new_masgn val[0], val[2]
+                    }
+                | expr
+
+    command_asgn: lhs tEQL command_rhs
+                    {
+                      result = new_assign val[0], val[2]
+                    }
+                # | lhs tEQL command_asgn
+                #     {
+                #       result = new_assign val[0], val[2]
+                #     }
+                | var_lhs tOP_ASGN command_rhs
+                    {
+                      result = new_op_asgn val
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN command_rhs
+                    {
+                      result = new_op_asgn1 val
+                    }
+                | primary_value call_op tIDENTIFIER tOP_ASGN command_rhs
+                    {
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+                    }
+                | primary_value call_op tCONSTANT tOP_ASGN command_rhs
+                    {
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+                    }
+                | primary_value tCOLON2 tCONSTANT tOP_ASGN command_rhs
+                    {
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+                    }
+                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN command_rhs
+                    {
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+                    }
+#if V > 30
+                | defn_head f_opt_paren_args tEQL command
+                    {
+                      result = new_endless_defn val
+                    }
+                | defn_head f_opt_paren_args tEQL command kRESCUE_MOD arg
+                    {
+                      result = new_endless_defn val
+                    }
+                | defs_head f_opt_paren_args tEQL command
+                    {
+                      result = new_endless_defs val
+                    }
+                | defs_head f_opt_paren_args tEQL command kRESCUE_MOD arg
+                    {
+                      result = new_endless_defs val
+                    }
+#endif
+                | backref tOP_ASGN command_rhs
+                    {
+                      self.backref_assign_error val[0]
+                    }
+
+     command_rhs: command_call                =tOP_ASGN
+                    {
+                      expr, = val
+                      result = value_expr expr
+                    }
+                | command_call kRESCUE_MOD stmt
+                    {
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+                    }
+                | command_asgn
+
+            expr: command_call
+                | expr kAND expr
+                    {
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+                    }
+                | expr kOR expr
+                    {
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+                    }
+                | kNOT opt_nl expr
+                    {
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+                    }
+                | tBANG command_call
+                    {
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+                    }
+                | arg tASSOC
+                    {
+                      # value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+                    }
+#if V == 30
+                    p_expr
+#else
+                    p_top_expr_body
+#endif
+                    {
+                      lhs, _, in_kwarg, rhs = val
+
+                      self.env.unextend
+                      self.in_kwarg = in_kwarg
+
+                      rhs = new_in rhs, nil, nil, rhs.line
+                      result = new_case lhs, rhs, rhs.line
+                    }
+                | arg
+                    kIN
+                    {
+                      # TODO? value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+                    }
+#if V == 30
+                    p_expr
+#else
+                    p_top_expr_body
+#endif
+                    {
+                      self.env.unextend
+
+                      expr, _, old_kwarg, pat = val
+
+                      expr = value_expr expr
+
+                      self.in_kwarg = old_kwarg
+                      pat_in = new_in pat, nil, nil, expr.line
+                      result = new_case expr, pat_in, expr.line
+                    }
+                | arg                                   =tLBRACE_ARG
+
+        def_name: fname
+                    {
+                      # TODO: numparam_name(p, fname);
+
+                      (id, line), = val
+                      old_in_def = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      result = [id.to_sym, line, old_in_def]
+                    }
+       defn_head: k_def def_name
+                    {
+                      result = val
+                    }
+       defs_head: k_def singleton dot_or_colon
+                    {
+                      lexer.lex_state = EXPR_FNAME
+                      self.in_argdef = true
+                    }
+                    def_name
+                    {
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+                      self.in_single += 1 # TODO: remove?
+
+                      # self.in_def = true # local_push
+                      # self.env.extend
+                      # lexer.cmdarg.push false
+                      # lexer.cond.push false
+
+                      result = val
+                    }
+
+      expr_value: expr
+                    {
+                      result = value_expr(val[0])
+                    }
+
+   expr_value_do:   {
+                      lexer.cond.push true
+                    }
+                    expr_value do
+                    {
+                      lexer.cond.pop
+                    }
+                    {
+                      _, expr, _, _ = val
+                      result = expr
+                    }
+
+    command_call: command
+                | block_command
+
+   block_command: block_call
+                | block_call call_op2 operation2 command_args
+                    {
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+                    }
+
+ cmd_brace_block: tLBRACE_ARG
+                    {
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+                    }
+                    brace_body tRCURLY
+                    {
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+                    }
+
+           fcall: operation
+                    {
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+                    }
+
+         command: fcall command_args =tLOWEST
+                    {
+                      call, args = val
+                      result = call.concat args.sexp_body
+                    }
+                | fcall command_args cmd_brace_block
+                    {
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+                    }
+                | primary_value call_op operation2 command_args =tLOWEST
+                    {
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+                    }
+                | primary_value call_op operation2 command_args cmd_brace_block
+                    {
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+                    }
+                | primary_value tCOLON2 operation2 command_args =tLOWEST
+                    {
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+                    }
+                | primary_value tCOLON2 operation2 command_args cmd_brace_block
+                    {
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+                    }
+                | kSUPER command_args
+                    {
+                      result = new_super val[1]
+                    }
+                | kYIELD command_args
+                    {
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+                    }
+                | k_return call_args
+                    {
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+                    }
+                | kBREAK call_args
+                    {
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+                    }
+                | kNEXT call_args
+                    {
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+                    }
+
+            mlhs: mlhs_basic
+                | tLPAREN mlhs_inner rparen
+                    {
+                      result = val[1]
+                    }
+
+      mlhs_inner: mlhs_basic
+                | tLPAREN mlhs_inner rparen
+                    {
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+                    }
+
+      mlhs_basic: mlhs_head
+                    {
+                      head, = val
+                      result = s(:masgn, head).line head.line
+                    }
+                | mlhs_head mlhs_item
+                    {
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+                    }
+                | mlhs_head tSTAR mlhs_node
+                    {
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+                    }
+                | mlhs_head tSTAR mlhs_node tCOMMA mlhs_post
+                    {
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+                    }
+                | mlhs_head tSTAR
+                    {
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+                    }
+                | mlhs_head tSTAR tCOMMA mlhs_post
+                    {
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+                    }
+                | tSTAR mlhs_node
+                    {
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+                    }
+                | tSTAR mlhs_node tCOMMA mlhs_post
+                    {
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+                    }
+                | tSTAR
+                    {
+                      (_, l), = val
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+                    }
+                | tSTAR tCOMMA mlhs_post
+                    {
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+                    }
+
+       mlhs_item: mlhs_node
+                | tLPAREN mlhs_inner rparen
+                    {
+                      result = val[1]
+                    }
+
+       mlhs_head: mlhs_item tCOMMA
+                    {
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+                    }
+                | mlhs_head mlhs_item tCOMMA
+                    {
+                      result = val[0] << val[1].compact
+                    }
+
+       mlhs_post: mlhs_item
+                    {
+                      item, = val
+                      result = s(:array, item).line item.line
+                    }
+                | mlhs_post tCOMMA mlhs_item
+                    {
+                      result = list_append val[0], val[2]
+                    }
+
+       mlhs_node: user_variable
+                    {
+                      result = self.assignable val[0]
+                    }
+                | keyword_variable
+                    {
+                      result = self.assignable val[0]
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket
+                    {
+                      result = self.aryset val[0], val[2]
+                    }
+                | primary_value call_op tIDENTIFIER
+                    {
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+                    }
+                | primary_value tCOLON2 tIDENTIFIER
+                    {
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+                    }
+                | primary_value call_op tCONSTANT
+                    {
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+                    }
+                | primary_value tCOLON2 tCONSTANT
+                    {
+                      if (self.in_def || self.in_single > 0) then
+                        debug 4
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+                    }
+                | tCOLON3 tCONSTANT
+                    {
+                      if (self.in_def || self.in_single > 0) then
+                        debug 5
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+                    }
+                | backref
+                    {
+                      ref, = val
+
+                      self.backref_assign_error ref
+                    }
+
+             lhs: user_variable
+                    {
+                      var, = val
+
+                      result = self.assignable var
+                    }
+                | keyword_variable
+                    {
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 6
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket
+                    {
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+                    }
+                | primary_value call_op tIDENTIFIER # REFACTOR
+                    {
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+                    }
+                | primary_value tCOLON2 tIDENTIFIER
+                    {
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+                    }
+                | primary_value call_op tCONSTANT # REFACTOR?
+                    {
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+                    }
+                | primary_value tCOLON2 tCONSTANT
+                    {
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 7
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+                    }
+                | tCOLON3 tCONSTANT
+                    {
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 8
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+                    }
+                | backref
+                    {
+                      self.backref_assign_error val[0]
+                    }
+
+           cname: tIDENTIFIER
+                    {
+                      yyerror "class/module name must be CONSTANT"
+                    }
+                | tCONSTANT
+
+           cpath: tCOLON3 cname
+                    {
+                      result = wrap :colon3, val[1]
+                    }
+                | cname
+                    {
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+                    }
+                | primary_value tCOLON2 cname
+                    {
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+                    }
+
+           fname: tIDENTIFIER | tCONSTANT | tFID
+                | op
+                    {
+                      lexer.lex_state = EXPR_END
+                    }
+
+                | reswords
+
+           fitem: fname
+                    {
+                      result = wrap :lit, val[0]
+                    }
+                | symbol
+
+      undef_list: fitem
+                    {
+                      result = new_undef val[0]
+                    }
+                |
+                    undef_list tCOMMA
+                    {
+                      lexer.lex_state = EXPR_FNAME
+                    }
+                    fitem
+                    {
+                      result = new_undef val[0], val[3]
+                    }
+
+                op: tPIPE    | tCARET  | tAMPER2  | tCMP  | tEQ    | tEQQ
+                |   tMATCH   | tNMATCH | tGT      | tGEQ  | tLT    | tLEQ
+                |   tNEQ     | tLSHFT  | tRSHFT   | tPLUS | tMINUS | tSTAR2
+                |   tSTAR    | tDIVIDE | tPERCENT | tPOW  | tDSTAR | tBANG   | tTILDE
+                |   tUPLUS   | tUMINUS | tAREF    | tASET | tBACK_REF2
+
+        reswords: k__LINE__ | k__FILE__ | k__ENCODING__ | klBEGIN | klEND
+                | kALIAS    | kAND      | kBEGIN        | kBREAK  | kCASE
+                | kCLASS    | kDEF      | kDEFINED      | kDO     | kELSE
+                | kELSIF    | kEND      | kENSURE       | kFALSE  | kFOR
+                | kIN       | kMODULE   | kNEXT         | kNIL    | kNOT
+                | kOR       | kREDO     | kRESCUE       | kRETRY  | kRETURN
+                | kSELF     | kSUPER    | kTHEN         | kTRUE   | kUNDEF
+                | kWHEN     | kYIELD    | kIF           | kUNLESS | kWHILE
+                | kUNTIL
+
+             arg: lhs tEQL arg_rhs
+                    {
+                      result = new_assign val[0], val[2]
+                    }
+                | var_lhs tOP_ASGN arg_rhs
+                    {
+                      result = new_op_asgn val
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket tOP_ASGN arg_rhs
+                    {
+                      result = new_op_asgn1 val
+                    }
+                | primary_value call_op tIDENTIFIER tOP_ASGN arg_rhs
+                    {
+                      result = new_op_asgn2 val
+                    }
+                | primary_value call_op tCONSTANT tOP_ASGN arg_rhs
+                    {
+                      result = new_op_asgn2 val
+                    }
+                | primary_value tCOLON2 tIDENTIFIER tOP_ASGN arg_rhs
+                    {
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+                    }
+                | primary_value tCOLON2 tCONSTANT tOP_ASGN arg_rhs
+                    {
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+                    }
+                | tCOLON3 tCONSTANT tOP_ASGN arg_rhs
+                    {
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+                    }
+                | backref tOP_ASGN arg_rhs
+                    {
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+                    }
+                | arg tDOT2 arg
+                    {
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+                    }
+                | arg tDOT3 arg
+                    {
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+                    }
+                | arg tDOT2
+                    {
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot2, v1, v2).line v1.line
+                    }
+                | arg tDOT3
+                    {
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot3, v1, v2).line v1.line
+                    }
+
+                | tBDOT2 arg
+                    {
+                      _, v2, = val
+                      v1 = nil
+
+                      result = s(:dot2, v1, v2).line v2.line
+                    }
+                | tBDOT3 arg
+                    {
+                      _, v2 = val
+                      v1 = nil
+
+                      result = s(:dot3, v1, v2).line v2.line
+                    }
+
+                | arg tPLUS arg
+                    {
+                      result = new_call val[0], :+, argl(val[2])
+                    }
+                | arg tMINUS arg
+                    {
+                      result = new_call val[0], :-, argl(val[2])
+                    }
+                | arg tSTAR2 arg # TODO: rename
+                    {
+                      result = new_call val[0], :*, argl(val[2])
+                    }
+                | arg tDIVIDE arg
+                    {
+                      result = new_call val[0], :"/", argl(val[2])
+                    }
+                | arg tPERCENT arg
+                    {
+                      result = new_call val[0], :"%", argl(val[2])
+                    }
+                | arg tPOW arg
+                    {
+                      result = new_call val[0], :**, argl(val[2])
+                    }
+                | tUMINUS_NUM simple_numeric tPOW arg
+                    {
+                      _, num, _, arg = val
+                      lit = wrap :lit, num
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+                    }
+                | tUPLUS arg
+                    {
+                      result = new_call val[1], :"+@"
+                    }
+                | tUMINUS arg
+                    {
+                      result = new_call val[1], :"-@"
+                    }
+                | arg tPIPE arg
+                    {
+                      result = new_call val[0], :"|", argl(val[2])
+                    }
+                | arg tCARET arg
+                    {
+                      result = new_call val[0], :"^", argl(val[2])
+                    }
+                | arg tAMPER2 arg
+                    {
+                      result = new_call val[0], :"&", argl(val[2])
+                    }
+                | arg tCMP arg
+                    {
+                      result = new_call val[0], :"<=>", argl(val[2])
+                    }
+                | rel_expr                      =tCMP
+                | arg tEQ arg
+                    {
+                      result = new_call val[0], :"==", argl(val[2])
+                    }
+                | arg tEQQ arg
+                    {
+                      result = new_call val[0], :"===", argl(val[2])
+                    }
+                | arg tNEQ arg
+                    {
+                      result = new_call val[0], :"!=", argl(val[2])
+                    }
+                | arg tMATCH arg
+                    {
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+                    }
+                | arg tNMATCH arg
+                    {
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+                    }
+                | tBANG arg
+                    {
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+                    }
+                | tTILDE arg
+                    {
+                      result = new_call value_expr(val[1]), :"~"
+                    }
+                | arg tLSHFT arg
+                    {
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+                    }
+                | arg tRSHFT arg
+                    {
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+                    }
+                | arg tANDOP arg
+                    {
+                      result = logical_op :and, val[0], val[2]
+                    }
+                | arg tOROP arg
+                    {
+                      result = logical_op :or, val[0], val[2]
+                    }
+                | kDEFINED opt_nl arg
+                    {
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+                    }
+                | arg tEH arg opt_nl tCOLON arg
+                    {
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+                    }
+                | defn_head f_opt_paren_args tEQL arg
+                    {
+                      result = new_endless_defn val
+                    }
+                | defn_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
+                    {
+                      result = new_endless_defn val
+                    }
+                | defs_head f_opt_paren_args tEQL arg
+                    {
+                      result = new_endless_defs val
+                    }
+                | defs_head f_opt_paren_args tEQL arg kRESCUE_MOD arg
+                    {
+                      result = new_endless_defs val
+                    }
+                | primary
+
+           relop: tGT
+                | tLT
+                | tGEQ
+                | tLEQ
+
+        rel_expr: arg      relop arg                    =tGT
+                    {
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+                    }
+                | rel_expr relop arg                    =tGT
+                    {
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+                    }
+
+       arg_value: arg
+                    {
+                      result = value_expr(val[0])
+                    }
+
+       aref_args: none
+                | args trailer
+                    {
+                      result = args [val[0]]
+                    }
+                | args tCOMMA assocs trailer
+                    {
+                      result = args [val[0], array_to_hash(val[2])]
+                    }
+                | assocs trailer
+                    {
+                      result = args [array_to_hash(val[0])]
+                    }
+
+         arg_rhs: arg                   =tOP_ASGN
+                | arg kRESCUE_MOD arg
+                    {
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+                    }
+
+      paren_args: tLPAREN2 opt_call_args rparen
+                    {
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+                    }
+                | tLPAREN2 args tCOMMA args_forward rparen
+                    {
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+                    }
+                | tLPAREN2 args_forward rparen
+                    {
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+                    }
+
+  opt_paren_args: none
+                | paren_args
+
+   opt_call_args: none
+                | call_args
+                | args tCOMMA
+                    {
+                      result = args val
+                    }
+                | args tCOMMA assocs tCOMMA
+                    {
+                      result = args [val[0], array_to_hash(val[2])]
+                    }
+                | assocs tCOMMA
+                    {
+                      result = args [array_to_hash(val[0])]
+                    }
+
+       call_args: command
+                    {
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+                    }
+                | args opt_block_arg
+                    {
+                      result = call_args val
+                    }
+                | assocs opt_block_arg
+                    {
+                      result = call_args [array_to_hash(val[0]), val[1]]
+                    }
+                | args tCOMMA assocs opt_block_arg
+                    {
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+                    }
+                | block_arg
+                    {
+                      result = call_args val
+                    }
+
+    command_args:   {
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+                    }
+                      call_args
+                    {
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+                    }
+
+       block_arg: tAMPER arg_value
+                    {
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+                    }
+#if V > 30
+                | tAMPER
+                    {
+                      (_, line), = val
+                      result = s(:block_pass).line line
+                    }
+#endif
+
+   opt_block_arg: tCOMMA block_arg
+                    {
+                      result = val[1]
+                    }
+                | none
+
+            args: arg_value
+                    {
+                      arg, = val
+                      lineno = arg.line
+
+                      result = s(:array, arg).line lineno
+                    }
+                | tSTAR arg_value
+                    {
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+                    }
+#if V >= 32
+                | tSTAR
+                    {
+                      (_, line), = val
+                      result = s(:array, s(:splat).line(line)).line line
+                    }
+#endif
+                | args tCOMMA arg_value
+                    {
+                      args, _, id = val
+                      result = self.list_append args, id
+                    }
+                | args tCOMMA tSTAR arg_value
+                    {
+                      args, _, (_, line), id = val
+                      result = self.list_append args, s(:splat, id).line(line)
+                    }
+#if V >= 32
+                | args tCOMMA tSTAR
+                    {
+                      args, _, (_, line) = val
+                      result = self.list_append args, s(:splat).line(line)
+                    }
+#endif
+
+        mrhs_arg: mrhs
+                    {
+                      result = new_masgn_arg val[0]
+                    }
+                | arg_value
+                    {
+                      result = new_masgn_arg val[0], :wrap
+                    }
+
+            mrhs: args tCOMMA arg_value
+                    {
+                      result = val[0] << val[2]
+                    }
+                | args tCOMMA tSTAR arg_value
+                    {
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+                    }
+                | tSTAR arg_value
+                    {
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+                    }
+
+         primary: literal
+                | strings
+                | xstring
+                | regexp
+                | words
+                | qwords
+                | symbols
+                | qsymbols
+                | var_ref
+                | backref
+                | tFID
+                    {
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+                    }
+                | k_begin
+                    {
+                      lexer.cmdarg.push false
+                    }
+                    bodystmt k_end
+                    {
+                      lexer.cmdarg.pop
+                      result = new_begin val
+                    }
+                | tLPAREN_ARG
+                    {
+                      lexer.lex_state = EXPR_ENDARG
+                    }
+                    rparen
+                    {
+                      (_, line), _, _ = val
+                      result = s(:begin).line line
+                    }
+                | tLPAREN_ARG
+                    stmt
+                    {
+                      lexer.lex_state = EXPR_ENDARG
+                    }
+                    rparen
+                    {
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+                    }
+                | tLPAREN compstmt tRPAREN
+                    {
+                      (_, line), stmt, _ = val
+                      result = stmt || s(:nil).line(line)
+                      result.paren = true
+                    }
+                | primary_value tCOLON2 tCONSTANT
+                    {
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+                    }
+                | tCOLON3 tCONSTANT
+                    {
+                      result = wrap :colon3, val[1]
+                    }
+                | tLBRACK aref_args rbracket
+                    {
+                      (_, line), args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+                    }
+                | tLBRACE
+                    {
+                      result = self.lexer.lineno
+                    }
+                    assoc_list tRCURLY
+                    {
+                      result = new_hash val
+                    }
+                | k_return
+                    {
+                      (_, line), = val
+                      result = s(:return).line line
+                    }
+                | kYIELD tLPAREN2 call_args rparen
+                    {
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+                    }
+                | kYIELD tLPAREN2 rparen
+                    {
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+                    }
+                | kYIELD
+                    {
+                      (_, line), = val
+
+                      result = new_yield.line line
+                    }
+                | kDEFINED opt_nl tLPAREN2 expr rparen
+                    {
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+                    }
+                | kNOT tLPAREN2 expr rparen
+                    {
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+                    }
+                | kNOT tLPAREN2 rparen
+                    {
+                      debug 9
+                    }
+                | fcall brace_block
+                    {
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+                    }
+                | method_call
+                | method_call brace_block
+                    {
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+                    }
+                | lambda
+                    {
+                      expr, = val
+                      result = expr
+                    }
+                | k_if expr_value then compstmt if_tail k_end
+                    {
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+                    }
+                | k_unless expr_value then compstmt opt_else k_end
+                    {
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+                    }
+                | k_while expr_value_do compstmt k_end
+                    {
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+                    }
+                | k_until expr_value_do compstmt k_end
+                    {
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+                    }
+                | k_case expr_value opt_terms case_body k_end
+                    {
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+                    }
+                | k_case            opt_terms case_body k_end
+                    {
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+                    }
+                | k_case expr_value opt_terms p_case_body k_end
+                    {
+                      (_, line), expr, _, body, _ = val
+
+                      result = new_case expr, body, line
+                    }
+                | k_for for_var kIN expr_value_do compstmt k_end
+                    {
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+                    }
+                | k_class
+                    cpath superclass
+                    {
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+                    }
+                    bodystmt k_end
+                    {
+                      result = new_class val
+                      self.env.unextend
+                    }
+                | k_class tLSHFT
+                    expr
+                    {
+                      result = self.in_def
+                      self.in_def = false
+                    }
+                    term
+                    {
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+                    }
+                    bodystmt
+                    k_end
+                    {
+                      result = new_sclass val
+                      self.env.unextend
+                    }
+                | k_module
+                    cpath
+                    {
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+                    }
+                    bodystmt k_end
+                    {
+                      result = new_module val
+                      self.env.unextend
+                    }
+                | defn_head f_arglist bodystmt k_end
+                    {
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+                    }
+                | defs_head f_arglist bodystmt k_end
+                    {
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+                    }
+                | kBREAK
+                    {
+                      (_, line), = val
+                      result = s(:break).line line
+                    }
+                | kNEXT
+                    {
+                      (_, line), = val
+                      result = s(:next).line line
+                    }
+                | kREDO
+                    {
+                      (_, line), = val
+                      result = s(:redo).line line
+                    }
+                | kRETRY
+                    {
+                      (_, line), = val
+                      result = s(:retry).line line
+                    }
+
+   primary_value: primary
+                    {
+                      result = value_expr(val[0])
+                    }
+
+                    # These are really stupid
+         k_begin: kBEGIN
+            k_if: kIF
+        k_unless: kUNLESS
+         k_while: kWHILE
+         k_until: kUNTIL
+          k_case: kCASE
+           k_for: kFOR
+         k_class: kCLASS
+                    {
+                      result << self.lexer.comment
+                    }
+        k_module: kMODULE
+                    {
+                      result << self.lexer.comment
+                    }
+           k_def: kDEF
+                    {
+                      self.in_argdef = true
+                      result << self.lexer.comment
+                    }
+            k_do: kDO
+      k_do_block: kDO_BLOCK
+        k_rescue: kRESCUE
+        k_ensure: kENSURE
+          k_when: kWHEN
+          k_else: kELSE
+         k_elsif: kELSIF
+           k_end: kEND
+        k_return: kRETURN
+
+            then: term
+                | kTHEN
+                | term kTHEN
+
+              do: term
+                | kDO_COND
+
+         if_tail: opt_else
+                | k_elsif expr_value then compstmt if_tail
+                    {
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+                    }
+
+        opt_else: none
+                | kELSE compstmt
+                    {
+                      result = val[1]
+                    }
+
+         for_var: lhs
+                | mlhs
+                    {
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+                    }
+
+          f_marg: f_norm_arg
+                    {
+                      (sym, line), = val
+
+                      result = s(:dummy, sym).line line
+                    }
+                | tLPAREN f_margs rparen
+                    {
+                      _, args, _ = val
+                      result = args
+                    }
+
+     f_marg_list: f_marg
+                    {
+                      arg, = val
+                      line = arg.line
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = s(:array, arg).line line
+                    }
+                | f_marg_list tCOMMA f_marg
+                    {
+                      args, _, arg = val
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = list_append args, arg
+                    }
+
+         f_margs: f_marg_list
+                    {
+                      args, = val
+
+                      result = block_var args
+                    }
+                | f_marg_list tCOMMA f_rest_marg
+                    {
+                      args, _, rest = val
+
+                      result = block_var args, rest
+                    }
+                | f_marg_list tCOMMA f_rest_marg tCOMMA f_marg_list
+                    {
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+                    }
+                | f_rest_marg
+                    {
+                      rest, = val
+
+                      result = block_var rest
+                    }
+                | f_rest_marg tCOMMA f_marg_list
+                    {
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+                    }
+
+     f_rest_marg: tSTAR f_norm_arg
+                    {
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+                    }
+                | tSTAR
+                    {
+                      (_, line), = val
+                      result = args([:*]).line line
+                    }
+
+    f_any_kwrest: f_kwrest
+                | f_no_kwarg
+
+#if V > 30
+            f_eq: { self.in_argdef = false } tEQL
+#endif
+
+ block_args_tail: f_block_kwarg tCOMMA f_kwrest opt_f_block_arg
+                    {
+                      result = call_args val
+                    }
+                | f_block_kwarg opt_f_block_arg
+                    {
+                      result = call_args val
+                    }
+                | f_any_kwrest opt_f_block_arg
+                    {
+                      result = call_args val
+                    }
+                | f_block_arg
+                    {
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+                    }
+
+opt_block_args_tail: tCOMMA block_args_tail
+                    {
+                      result = args val
+                    }
+                | none
+
+  excessed_comma: tCOMMA
+                    {
+                      result = s(:WTF_COMMA!)
+                    }
+
+     block_param: f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_block_optarg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_block_optarg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_rest_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg excessed_comma
+                    {
+                      arg, _ = val
+                      result = arg << nil
+                    }
+                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_block_optarg tCOMMA f_rest_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_block_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_block_optarg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_block_optarg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_rest_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | f_rest_arg tCOMMA f_arg opt_block_args_tail
+                    {
+                      result = args val
+                    }
+                | block_args_tail
+                    {
+                      result = args val
+                    }
+
+ opt_block_param: none { result = 0 }
+                | block_param_def
+                    {
+                      self.lexer.command_start = true
+                    }
+
+ block_param_def: tPIPE opt_bv_decl tPIPE
+                    {
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+                    }
+                | tOROP
+                    {
+                      (_, line), = val
+
+                      result = s(:args).line line
+                    }
+                | tPIPE block_param opt_bv_decl tPIPE
+                    {
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+                    }
+
+     opt_bv_decl: opt_nl
+                | opt_nl tSEMI bv_decls opt_nl
+                    {
+                      result = args val
+                    }
+
+        bv_decls: bvar
+                    {
+                      result = args val
+                    }
+                | bv_decls tCOMMA bvar
+                    {
+                      result = args val
+                    }
+
+            bvar: tIDENTIFIER
+                    {
+                      result = wrap :shadow, val[0]
+                    }
+                | f_bad_arg
+
+          lambda: tLAMBDA
+                    {
+                      self.env.extend :dynamic
+                      result = lexer.lpar_beg
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+                    }
+                    f_larglist
+                    {
+                      lexer.cmdarg.push false
+                    }
+                    lambda_body
+                    {
+                      (_, line), lpar, args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+                    }
+
+     f_larglist: tLPAREN2 f_args opt_bv_decl rparen
+                    {
+                      self.in_argdef = false
+                      result = args val
+                    }
+                | f_args
+                    {
+                      self.in_argdef = false
+                      result = val[0]
+                      result = 0 if result == s(:args)
+                    }
+
+     lambda_body: tLAMBEG compstmt tRCURLY
+                    {
+                      result = val[1]
+                    }
+                | kDO_LAMBDA bodystmt kEND
+                    {
+                      result = val[1]
+                    }
+
+        do_block: k_do_block do_body kEND
+                    {
+                      (_, line), iter, _ = val
+                      result = iter.line line
+                    }
+
+      block_call: command do_block
+                    {
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+                    }
+                | block_call call_op2 operation2 opt_paren_args
+                    {
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                    }
+                | block_call call_op2 operation2 opt_paren_args brace_block
+                    {
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+                    }
+                | block_call call_op2 operation2 command_args do_block
+                    {
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+                    }
+
+     method_call: fcall paren_args
+                    {
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+                    }
+                | primary_value call_op operation2 opt_paren_args
+                    {
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+                    }
+                | primary_value tCOLON2 operation2 paren_args
+                    {
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+                    }
+                | primary_value tCOLON2 operation3
+                    {
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+                    }
+                | primary_value call_op paren_args
+                    {
+                      result = new_call val[0], :call, val[2], val[1]
+                    }
+                | primary_value tCOLON2 paren_args
+                    {
+                      result = new_call val[0], :call, val[2]
+                    }
+                | kSUPER paren_args
+                    {
+                      result = new_super val[1]
+                    }
+                | kSUPER
+                    {
+                      (_, line), = val
+                      result = s(:zsuper).line line
+                    }
+                | primary_value tLBRACK2 opt_call_args rbracket
+                    {
+                      result = new_aref val
+                    }
+
+     brace_block: tLCURLY
+                    {
+                      self.env.extend :dynamic
+                    }
+                    brace_body
+                    tRCURLY
+                    {
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+                    }
+                | k_do
+                    {
+                      self.env.extend :dynamic
+                    }
+                    do_body
+                    kEND
+                    {
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+                    }
+
+      brace_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
+                    { result = lexer.cmdarg.store(false) }
+                    opt_block_param compstmt
+                    {
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+                    }
+
+         do_body:   { self.env.extend :dynamic; result = self.lexer.lineno }
+                    { lexer.cmdarg.push false }
+                    opt_block_param
+                    bodystmt
+                    {
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                    }
+
+       case_args: arg_value
+                    {
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+                    }
+                | tSTAR arg_value
+                    {
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+                    }
+                | case_args tCOMMA arg_value
+                    {
+                      args, _, id = val
+
+                      result = self.list_append args, id
+                    }
+                | case_args tCOMMA tSTAR arg_value
+                    {
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+                    }
+
+       case_body: k_when
+                    case_args then compstmt cases
+                    {
+                      (_, line), case_args, _then, body, cases = val
+
+                      result = new_when case_args, body
+                      result.line line
+                      result << cases if cases
+                    }
+
+           cases: opt_else | case_body
+######################################################################
+
+     p_case_body: kIN
+                    {
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      push_pvtbl
+                      push_pktbl
+                    }
+                    p_top_expr then
+                    {
+                      pop_pktbl
+                      pop_pvtbl
+                      old_kwargs = _values[-3]
+                      self.in_kwarg = old_kwargs
+                    }
+                    compstmt
+                    p_cases
+                    {
+                      (_, line), _, pat, _, _, body, cases = val
+
+                      result = new_in pat, body, cases, line
+                    }
+
+         p_cases: opt_else
+                | p_case_body
+
+      p_top_expr: p_top_expr_body
+                | p_top_expr_body kIF_MOD expr_value
+                    {
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, body, nil).line body.line
+                    }
+                | p_top_expr_body kUNLESS_MOD expr_value
+                    {
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, nil, body).line body.line
+                    }
+
+ p_top_expr_body: p_expr
+                | p_expr tCOMMA
+                    {
+                      expr, _ = val
+
+                      tail = new_array_pattern_tail nil, true, nil, nil
+                      result = new_array_pattern nil, expr, tail, expr.line
+                    }
+                | p_expr tCOMMA p_args
+                    {
+                      expr, _, args = val
+
+                      result = new_array_pattern nil, expr, args, expr.line
+                    }
+                | p_find
+                    {
+                      find, = val
+
+                      result = new_find_pattern nil, find
+                    }
+                | p_args_tail
+                    {
+                      args, = val
+                      result = new_array_pattern nil, nil, args, args.line
+                    }
+                | p_kwargs
+                    {
+                      kwargs, = val
+                      result = new_hash_pattern nil, kwargs, kwargs.line
+                    }
+
+          p_expr: p_as
+
+            p_as: p_expr tASSOC p_variable
+                    {
+                      # NODE *n = NEW_LIST($1, &@$);
+                      # n = list_append(p, n, $3);
+                      # $$ = new_hash(p, n, &@$);
+
+                      expr, _, var = val
+
+                      id = var.last
+
+                      self.env[id] = :lvar # HACK: need to extend env
+                      lhs = s(:lasgn, id).line var.line
+
+                      result = new_assign lhs, expr
+                    }
+                | p_alt
+
+           p_alt: p_alt tPIPE p_expr_basic
+                    {
+                      lhs, _, rhs = val
+
+                      result = s(:or, lhs, rhs).line lhs.line
+                    }
+                | p_expr_basic
+
+        p_lparen: tLPAREN2 { push_pktbl }
+      p_lbracket: tLBRACK2 { push_pktbl }
+
+    p_expr_basic: p_value
+#if V > 30
+                | p_variable
+#endif
+                | p_const p_lparen p_args tRPAREN
+                    {
+                      lhs, _, args, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern(lhs, nil, args, lhs.line)
+                    }
+                | p_const p_lparen p_find tRPAREN
+                    {
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+                    }
+                | p_const p_lparen p_kwargs tRPAREN
+                    {
+                      lhs, _, kwargs, _ = val
+
+                      pop_pktbl
+                      result = new_hash_pattern(lhs, kwargs, lhs.line)
+                    }
+                | p_const tLPAREN2 tRPAREN
+                    {
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+                    }
+                | p_const p_lbracket p_args rbracket
+                    {
+                      const, _, pre_arg, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern const, nil, pre_arg, const.line
+                    }
+                | p_const p_lbracket p_find rbracket
+                    {
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+                    }
+                | p_const p_lbracket p_kwargs rbracket
+                    {
+                      const, _, kwargs, _ = val
+
+                      result = new_hash_pattern const, kwargs, const.line
+                    }
+                | p_const tLBRACK2 rbracket
+                    {
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+                    }
+                | tLBRACK p_args rbracket
+                    {
+                      _, pat, _ = val
+
+                      result = new_array_pattern nil, nil, pat, pat.line
+                    }
+                | tLBRACK p_find rbracket
+                    {
+                      _, find, _ = val
+
+                      result = new_find_pattern nil, find
+                    }
+                | tLBRACK rbracket
+                    {
+                      (_, line), _ = val
+
+                      result = s(:array_pat).line line
+                    }
+                | tLBRACE
+                    {
+                      push_pktbl
+                      result = self.in_kwarg
+                      self.in_kwarg = false
+                    }
+                    p_kwargs rbrace
+                    {
+                      _, in_kwarg, kwargs, _ = val
+
+                      pop_pktbl
+                      self.in_kwarg = in_kwarg
+
+                      result = new_hash_pattern(nil, kwargs, kwargs.line)
+                    }
+                | tLBRACE rbrace
+                    {
+                      (_, line), _ = val
+
+                      tail = new_hash_pattern_tail nil, nil, line
+                      result = new_hash_pattern nil, tail, line
+                    }
+                | tLPAREN { push_pktbl } p_expr tRPAREN
+                    {
+                      _, _, expr, _ = val
+
+                      pop_pktbl
+                      result = expr
+                    }
+
+          p_args: p_expr
+                    {
+                      expr, = val
+
+                      ary = s(:array_TAIL, expr).line expr.line
+                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
+                    }
+                | p_args_head
+                    {
+                      head, = val
+
+                      result = new_array_pattern_tail head, true, nil, nil
+                    }
+                | p_args_head p_arg
+                    {
+                      head, tail = val
+
+                      both = array_pat_concat head, tail
+
+                      result = new_array_pattern_tail both, nil, nil, nil
+                      result.line head.line
+                    }
+#if V < 32
+                | p_args_head tSTAR tIDENTIFIER
+                    {
+                      head, _, (id, _line) = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, nil
+                      result.line head.line
+                    }
+                | p_args_head tSTAR tIDENTIFIER tCOMMA p_args_post
+                    {
+                      head, _, (id, _line), _, post = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, post
+                      result.line head.line
+                    }
+                | p_args_head tSTAR
+                    {
+                      expr, _ = val
+
+                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
+                    }
+                | p_args_head tSTAR tCOMMA p_args_post
+                    {
+                      head, _, _, post = val
+
+                      result = new_array_pattern_tail(head, true, nil, post).line head.line
+                    }
+#else
+                | p_args_head p_rest
+                    {
+                      head, (rest, _) = val
+
+                      result = new_array_pattern_tail(head, true, rest, nil).line head.line
+                    }
+                | p_args_head p_rest tCOMMA p_args_post
+                    {
+                      head, (rest, _), _, post = val
+
+                      result = new_array_pattern_tail(head, true, rest, post).line head.line
+                    }
+#endif
+                | p_args_tail
+
+     p_args_head: p_arg tCOMMA
+                    {
+                      arg, _ = val
+                      result = arg
+                    }
+                | p_args_head p_arg tCOMMA
+                    {
+                      head, tail, _ = val
+
+                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
+                      result.line head.line
+                    }
+
+     p_args_tail: p_rest
+                    {
+                      (id, line), = val
+
+                      result = new_array_pattern_tail nil, true, id, nil
+                      result.line line
+                    }
+                | p_rest tCOMMA p_args_post
+                    {
+                      (id, line), _, rhs = val
+
+                      result = new_array_pattern_tail nil, true, id, rhs
+                      result.line line
+                    }
+
+          p_find:  p_rest tCOMMA p_args_post tCOMMA p_rest
+                    {
+                      lhs, _, mid, _, rhs = val
+
+                      result = new_find_pattern_tail lhs, mid, rhs
+                    }
+
+          p_rest: tSTAR tIDENTIFIER
+                    {
+                      _, (id, line) = val
+
+                      result = [id.to_sym, line]
+                    }
+                | tSTAR
+                    {
+                      (_id, line), = val
+
+                      result = [nil, line]
+                    }
+
+     p_args_post: p_arg
+                | p_args_post tCOMMA p_arg
+                    {
+                      lhs, _, rhs = val
+
+                      result = array_pat_concat lhs, rhs
+                    }
+
+           p_arg: p_expr
+                    {
+                      expr, = val
+                      expr = s(:array_TAIL, expr).line expr.line unless
+                        expr.sexp_type == :array_TAIL
+                      result = expr
+                    }
+
+        p_kwargs: p_kwarg tCOMMA p_any_kwrest
+                    {
+                      kw_arg, _, rest = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
+                    }
+                | p_kwarg
+                    {
+                      kwarg, = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+                    }
+                | p_kwarg tCOMMA
+                    {
+                      kwarg, _ = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+                    }
+                | p_any_kwrest
+                    {
+                      rest, = val
+
+                      result = new_hash_pattern_tail nil, rest, rest.line
+                    }
+
+         p_kwarg: p_kw # TODO? rb_ary_new_from_args(1, $1)
+                | p_kwarg tCOMMA p_kw
+                    {
+                      kwarg, _, kw = val
+                      kwarg.concat kw.sexp_body
+                      result = kwarg
+                    }
+
+            p_kw: p_kw_label p_expr
+                    {
+                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
+                      lhs, rhs = val
+
+                      result = s(:PAIR, lhs, rhs).line lhs.line
+                    }
+                | p_kw_label
+                    {
+                      lhs, = val
+
+                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
+
+                      # TODO: if ($1 && !is_local_id(get_id($1))) {
+                      #     yyerror1(&@1, "key must be valid as local variables");
+                      # }
+
+                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
+                      #                     assignable(p, $1, 0, &@$));
+
+                      case lhs.sexp_type
+                      when :lit then
+                        assignable [lhs.value, lhs.line]
+                      else
+                        # TODO or done?
+                        debug 10
+                      end
+
+                      # TODO PAIR -> LIST ?
+                      result = s(:PAIR, lhs, nil).line lhs.line
+                    }
+
+      p_kw_label: tLABEL
+                    {
+                      result = wrap :lit, val[0]
+                    }
+#if V > 30
+                | tSTRING_BEG string_contents tLABEL_END
+                    {
+                      # you can't actually get here the way I lex labels
+                      debug 11
+                    }
+#endif
+
+        p_kwrest: kwrest_mark tIDENTIFIER
+                    {
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = s(:kwrest, :"**#{name}").line line
+                    }
+                | kwrest_mark
+                    {
+                      (_, line), = val
+
+                      result = s(:kwrest, :"**").line line
+                    }
+
+      p_kwnorest: kwrest_mark kNIL
+                    {
+                      (_, line), _ = val
+
+                      # TODO: or s(:norest)? s(:**nil)?
+                      result = s(:kwrest, :"**nil").line line
+                    }
+
+    p_any_kwrest: p_kwrest
+                | p_kwnorest
+
+         p_value: p_primitive
+                | p_primitive tDOT2 p_primitive
+                    {
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot2, lhs, rhs).line lhs.line
+                    }
+                | p_primitive tDOT3 p_primitive
+                    {
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot3, lhs, rhs).line lhs.line
+                    }
+                | p_primitive tDOT2
+                    {
+                      v1, _ = val
+
+                      result = s(:dot2, v1, nil).line v1.line
+                    }
+                | p_primitive tDOT3
+                    {
+                      v1, _ = val
+
+                      result = s(:dot3, v1, nil).line v1.line
+                    }
+#if V == 30
+                | p_variable
+#endif
+                | p_var_ref
+#if V > 30
+                | p_expr_ref
+#endif
+                | p_const
+                | tBDOT2 p_primitive
+                    {
+                      _, v1 = val
+
+                      result = s(:dot2, nil, v1).line v1.line
+                    }
+                | tBDOT3 p_primitive
+                    {
+                      _, v1 = val
+
+                      result = s(:dot3, nil, v1).line v1.line
+                    }
+
+     p_primitive: literal
+                | strings
+                | xstring
+                | regexp
+                | words
+                    {
+                      result = ary_to_pat val[0]
+                    }
+                | qwords
+                    {
+                      result = ary_to_pat val[0]
+                    }
+                | symbols
+                    {
+                      result = ary_to_pat val[0]
+                    }
+                | qsymbols
+                    {
+                      result = ary_to_pat val[0]
+                    }
+                | keyword_variable
+                    {
+                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
+                      var, = val
+
+                      result = var
+                    }
+                | lambda
+
+      p_variable: tIDENTIFIER
+                    {
+                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
+                      # TODO: assignable(p, $1, 0, &@$);
+                      result = wrap :lasgn, val[0]
+                    }
+
+       p_var_ref: tCARET tIDENTIFIER
+                    {
+                      # TODO: check id against env for lvar or dvar
+                      result = wrap :lvar, val[1]
+                    }
+#if V > 30
+                | tCARET nonlocal_var
+                    {
+                      _, var = val
+                      result = var
+                    }
+#endif
+
+#if V > 30
+      p_expr_ref: tCARET tLPAREN expr_value rparen
+                    {
+                      _, _, expr, _ = val
+                      result = expr # TODO? s(:begin, expr).line expr.line
+                    }
+#endif
+
+         p_const: tCOLON3 cname
+                    {
+                      result = wrap :colon3, val[1]
+                    }
+                | p_const tCOLON2 cname
+                    {
+                      lhs, _, (id, _line) = val
+
+                      l = lhs.line
+                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
+                    }
+                | tCONSTANT
+                    {
+                      # TODO $$ = gettable(p, $1, &@$);
+                      result = wrap :const, val[0]
+                    }
+######################################################################
+
+      opt_rescue: k_rescue exc_list exc_var then compstmt opt_rescue
+                    {
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+                    }
+                |
+                    {
+                      result = nil
+                    }
+
+        exc_list: arg_value
+                    {
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+                    }
+                | mrhs
+                | none
+
+         exc_var: tASSOC lhs
+                    {
+                      result = val[1]
+                    }
+                | none
+
+      opt_ensure: k_ensure compstmt
+                    {
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+                    }
+                | none
+
+         literal: numeric
+                    {
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+                    }
+                | symbol
+
+         strings: string
+                    {
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+                    }
+
+          string: tCHAR
+                    {
+                      debug 12
+                    }
+                | string1
+                | string string1
+                    {
+                      result = self.literal_concat val[0], val[1]
+                    }
+
+         string1: tSTRING_BEG string_contents tSTRING_END
+                    {
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+                    }
+                | tSTRING
+                    {
+                      result = new_string val
+                    }
+
+         xstring: tXSTRING_BEG xstring_contents tSTRING_END
+                    {
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+                    }
+
+          regexp: tREGEXP_BEG regexp_contents tREGEXP_END
+                    {
+                      result = new_regexp val
+                    }
+
+           words: tWORDS_BEG tSPACE tSTRING_END
+                    {
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+                    }
+                | tWORDS_BEG word_list tSTRING_END
+                    {
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+                    }
+
+       word_list: none
+                    {
+                      result = new_word_list
+                    }
+                | word_list word tSPACE
+                    {
+                      result = val[0].dup << new_word_list_entry(val)
+                    }
+
+            word: string_content
+                | word string_content
+                    {
+                      result = self.literal_concat val[0], val[1]
+                    }
+
+         symbols: tSYMBOLS_BEG tSPACE tSTRING_END
+                    {
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+                    }
+                | tSYMBOLS_BEG symbol_list tSTRING_END
+                    {
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+                    }
+
+     symbol_list: none
+                    {
+                      result = new_symbol_list
+                    }
+                | symbol_list word tSPACE
+                    {
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+                    }
+
+          qwords: tQWORDS_BEG tSPACE tSTRING_END
+                    {
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+                    }
+                | tQWORDS_BEG qword_list tSTRING_END
+                    {
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+                    }
+
+        qsymbols: tQSYMBOLS_BEG tSPACE tSTRING_END
+                    {
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+                    }
+                | tQSYMBOLS_BEG qsym_list tSTRING_END
+                    {
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+                    }
+
+      qword_list: none
+                    {
+                      result = new_qword_list
+                    }
+                | qword_list tSTRING_CONTENT tSPACE
+                    {
+                      result = val[0].dup << new_qword_list_entry(val)
+                    }
+
+       qsym_list: none
+                    {
+                      result = new_qsym_list
+                    }
+                | qsym_list tSTRING_CONTENT tSPACE
+                    {
+                      result = val[0].dup << new_qsym_list_entry(val)
+                    }
+
+ string_contents: none
+                    {
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+                    }
+                | string_contents string_content
+                    {
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+                    }
+
+xstring_contents: none
+                    {
+                      result = nil
+                    }
+                | xstring_contents string_content
+                    {
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+                    }
+
+regexp_contents: none
+                    {
+                      result = nil
+                    }
+                | regexp_contents string_content
+                    {
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+                    }
+
+  string_content: tSTRING_CONTENT
+                    {
+                      result = new_string val
+                    }
+                | tSTRING_DVAR
+                    {
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+                    }
+                    string_dvar
+                    {
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+                    }
+                | tSTRING_DBEG
+                    {
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+                    }
+                    compstmt
+                    tSTRING_DEND
+                    {
+                      (_, line), memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 13
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+                    }
+
+     string_dvar: tGVAR
+                    {
+                      result = wrap :gvar, val[0]
+                    }
+                | tIVAR
+                    {
+                      result = wrap :ivar, val[0]
+                    }
+                | tCVAR
+                    {
+                      result = wrap :cvar, val[0]
+                    }
+                | backref
+
+          symbol: ssym
+                | dsym
+
+            ssym: tSYMBEG sym
+                    {
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+                    }
+                | tSYMBOL
+                    {
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+                    }
+
+             sym: fname | tIVAR | tGVAR | tCVAR
+
+            dsym: tSYMBEG string_contents tSTRING_END
+                    {
+                      (_, line), result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line line
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 14
+                      end
+                    }
+
+         numeric: simple_numeric
+                | tUMINUS_NUM simple_numeric            =tLOWEST
+                    {
+                      _, (num, line) = val
+                      result = [-num, line]
+                    }
+
+  simple_numeric: tINTEGER
+                | tFLOAT
+                | tRATIONAL
+                | tIMAGINARY
+
+#if V > 30
+    nonlocal_var: tIVAR { result = wrap :ivar, val[0] }
+                | tGVAR { result = wrap :gvar, val[0] }
+                | tCVAR { result = wrap :cvar, val[0] }
+#endif
+
+   user_variable: tIDENTIFIER
+                | tIVAR
+                | tGVAR
+                | tCONSTANT
+                | tCVAR
+
+keyword_variable: kNIL      { (_, line), = val; result = s(:nil).line line }
+                | kSELF     { (_, line), = val; result = s(:self).line line }
+                | kTRUE     { (_, line), = val; result = s(:true).line line }
+                | kFALSE    { (_, line), = val; result = s(:false).line line }
+                | k__FILE__ { (_, line), = val; result = s(:str, self.file).line line }
+                | k__LINE__ { (_, line), = val; result = s(:lit, line).line line }
+                | k__ENCODING__
+                    {
+                      (_, l), = val
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+                    }
+
+         var_ref: user_variable
+                    {
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+
+                      result.line line
+                    }
+                | keyword_variable
+                    {
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+                    }
+
+         var_lhs: user_variable
+                    {
+                      result = self.assignable val[0]
+                    }
+                | keyword_variable
+                    {
+                      result = self.assignable val[0]
+                      debug 15
+                    }
+
+         backref: tNTH_REF
+                    {
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+                    }
+                | tBACK_REF
+                    {
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+                    }
+
+      superclass: tLT
+                    {
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+                    }
+                    expr_value term
+                    {
+                      result = val[2]
+                    }
+                | none
+                    {
+                      result = nil
+                    }
+
+f_opt_paren_args: f_paren_args
+                | none
+                    {
+                      self.in_argdef = false
+                      result = end_args val
+                    }
+
+    f_paren_args: tLPAREN2 f_args rparen
+                    {
+                      self.in_argdef = false
+                      result = end_args val
+                    }
+#if V == 30
+                | tLPAREN2 f_arg tCOMMA args_forward rparen
+                    {
+                      result = end_args val
+                    }
+                | tLPAREN2 args_forward rparen
+                    {
+                      result = end_args val
+                    }
+#endif
+
+       f_arglist: f_paren_args
+                |   {
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.in_argdef = true
+                      self.lexer.lex_state |= EXPR_LABEL
+                    }
+                    f_args term
+                    {
+                      self.in_argdef = false
+                      result = end_args val
+                    }
+
+       args_tail: f_kwarg tCOMMA f_kwrest opt_f_block_arg
+                    {
+                      result = args val
+                    }
+                | f_kwarg opt_f_block_arg
+                    {
+                      result = args val
+                    }
+                | f_any_kwrest opt_f_block_arg
+                    {
+                      result = args val
+                    }
+                | f_block_arg
+#if V > 30
+                | args_forward
+#endif
+
+   opt_args_tail: tCOMMA args_tail
+                    {
+                      result = val[1]
+                    }
+                |
+                    {
+                      result = nil
+                    }
+
+          f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_optarg              opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_optarg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA            f_rest_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_arg                             opt_args_tail
+                    {
+                      result = args val
+                    }
+                |           f_optarg tCOMMA f_rest_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_optarg tCOMMA f_rest_arg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                |           f_optarg                opt_args_tail
+                    {
+                      result = args val
+                    }
+                | f_optarg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                |                        f_rest_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                |           f_rest_arg tCOMMA f_arg opt_args_tail
+                    {
+                      result = args val
+                    }
+                |                                       args_tail
+                    {
+                      result = args val
+                    }
+                |
+                    {
+                      result = args val
+                    }
+
+    args_forward: tBDOT3
+                    {
+                      (_, line), = val
+                      result = s(:forward_args).line line
+                    }
+
+       f_bad_arg: tCONSTANT
+                    {
+                      yyerror "formal argument cannot be a constant"
+                    }
+                | tIVAR
+                    {
+                      yyerror "formal argument cannot be an instance variable"
+                    }
+                | tGVAR
+                    {
+                      yyerror "formal argument cannot be a global variable"
+                    }
+                | tCVAR
+                    {
+                      yyerror "formal argument cannot be a class variable"
+                    }
+
+      f_norm_arg: f_bad_arg
+                | tIDENTIFIER
+                    {
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+                    }
+
+      f_arg_asgn: f_norm_arg
+
+      f_arg_item: f_arg_asgn
+                | tLPAREN f_margs rparen
+                    {
+                      _, margs, _ = val
+
+                      result = margs
+                    }
+
+           f_arg: f_arg_item
+                    {
+                      result = new_arg val
+                    }
+                | f_arg tCOMMA f_arg_item
+                    {
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+                    }
+
+         f_label: tLABEL
+                    {
+                      label, = val
+                      # arg_var(p, formal_argument(p, $1));
+                      # p->cur_arg = get_id($1);
+                      # p->max_numparam = ORDINAL_PARAM;
+                      self.in_argdef = false
+                      result = label
+                    }
+
+            f_kw: f_label arg_value
+                    {
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+                      self.in_argdef = true
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+                    }
+                | f_label
+                    {
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+                    }
+
+      f_block_kw: f_label primary_value
+                    {
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+                    }
+                | f_label
+                    {
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+                    }
+
+   f_block_kwarg: f_block_kw
+                | f_block_kwarg tCOMMA f_block_kw
+                    {
+                      list, _, item = val
+                      result = list << item.last
+                    }
+
+         f_kwarg: f_kw
+                | f_kwarg tCOMMA f_kw
+                    {
+                      result = args val
+                    }
+
+     kwrest_mark: tPOW
+                | tDSTAR
+
+      f_no_kwarg: kwrest_mark kNIL
+                    {
+                      (_, line), _ = val
+                      result = [:"**nil", line]
+                    }
+
+        f_kwrest: kwrest_mark tIDENTIFIER
+                    {
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+                    }
+                | kwrest_mark
+                    {
+                      (_, line), = val
+                      id = :"**"
+                      self.env[id] = :lvar
+                      result = [id, line]
+                    }
+
+           f_opt: f_arg_asgn
+#if V > 30
+                    f_eq
+#else
+                    tEQL
+#endif
+                    arg_value
+                    {
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+                      # TODO? p->cur_arg = 0;
+                    }
+
+     f_block_opt: f_arg_asgn
+#if V > 30
+                    f_eq
+#else
+                    tEQL
+#endif
+                    primary_value
+                    {
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO? p->cur_arg = 0;
+                    }
+
+  f_block_optarg: f_block_opt
+                    {
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+                    }
+                | f_block_optarg tCOMMA f_block_opt
+                    {
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+                    }
+
+        f_optarg: f_opt
+                    {
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+                    }
+                | f_optarg tCOMMA f_opt
+                    {
+                      result = self.block_append val[0], val[2]
+                    }
+
+    restarg_mark: tSTAR2 | tSTAR
+
+      f_rest_arg: restarg_mark tIDENTIFIER
+                    {
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+                    }
+                | restarg_mark
+                    {
+                      (_, line), = val
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, line]
+                    }
+
+     blkarg_mark: tAMPER2 | tAMPER
+
+     f_block_arg: blkarg_mark tIDENTIFIER
+                    {
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+                    }
+                | blkarg_mark
+                    {
+                      (_, line), = val
+
+                      result = [:&, line]
+                    }
+
+ opt_f_block_arg: tCOMMA f_block_arg
+                    {
+                      _, arg = val
+                      result = arg
+                    }
+                |
+                    {
+                      result = nil
+                    }
+
+       singleton: var_ref
+                | tLPAREN2
+                    {
+                      lexer.lex_state = EXPR_BEG
+                    }
+                    expr rparen
+                    {
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+                    }
+
+      assoc_list: none
+                    {
+                      result = s(:array).line lexer.lineno
+                    }
+                | assocs trailer
+
+          assocs: assoc
+                | assocs tCOMMA assoc
+                    {
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+                    }
+
+           assoc: arg_value tASSOC arg_value
+                    {
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+                    }
+                | tLABEL arg_value
+                    {
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+                    }
+                | tLABEL
+                    {
+                      lit = wrap :lit, val[0]
+                      arg = nil
+
+                      result = s(:array, lit, arg).line lit.line
+                    }
+                | tSTRING_BEG string_contents tLABEL_END arg_value
+                    {
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+                    }
+                | tDSTAR arg_value
+                    {
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+                    }
+#if V >= 32
+                | tDSTAR
+                    {
+                      (_, line), = val
+                      result = s(:array, s(:kwsplat).line(line)).line line
+                    }
+#endif
+
+       operation: tIDENTIFIER | tCONSTANT | tFID
+      operation2: tIDENTIFIER | tCONSTANT | tFID | op
+      operation3: tIDENTIFIER | tFID | op
+    dot_or_colon: tDOT | tCOLON2
+         call_op: tDOT
+                | tLONELY # TODO: rename tANDDOT?
+
+        call_op2: call_op
+                | tCOLON2
+
+       opt_terms:  | terms
+          opt_nl:  | tNL
+          rparen: opt_nl tRPAREN
+                    {
+                      _, close = val # TODO: include lineno in close?
+                      result = [close, lexer.lineno]
+                    }
+        rbracket: opt_nl tRBRACK
+                    {
+                      _, close = val
+                      result = [close, lexer.lineno]
+                    }
+          rbrace: opt_nl tRCURLY
+                    {
+                      _, close = val
+                      result = [close, lexer.lineno]
+                    }
+         trailer:  | tNL | tCOMMA
+
+            term: tSEMI { yyerrok }
+                | tNL
+
+           terms: term
+                | terms tSEMI { yyerrok }
+
+            none: { result = nil; }
+end
+
+---- inner
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
diff -pruN 3.20.0-2/lib/ruby_parser30.rb 3.21.1-1/lib/ruby_parser30.rb
--- 3.20.0-2/lib/ruby_parser30.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser30.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,13292 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby30Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -633,   696,   699,   307,   650,  -117,   307,  -633,  -633,  -633,
+   228,   229,  -633,  -633,  -633,  -111,  -633,  -118,  1136,  -113,
+   650,   650,   228,   229,  -633,   911,  -633,  -633,  -633,   228,
+   229,   664,     3,   830,  1131,   665,  -633,  -633,   234,  -633,
+  -633,  -633,  -633,  -633,  -103,   302,  -755,   650,  -125,  -112,
+  -124,   831,  1130,  -120,  -122,   650,   664,   911,   130,   239,
+   936,   -89,  1016,  -110,   695,   698,  -526,  -633,  -633,  -633,
+  -633,  -633,  -633,  -633,  -633,  -633,  -633,  -633,  -633,  -633,
+  -633,   650,  -111,  -633,  -633,  -633,  -113,  -633,  -633,   849,
+   309,  -633,  -119,   309,  -633,  -633,  1137,  -633,  1177,  -633,
+   239,  -633,   235,  -633,  -633,  -633,  -633,  -633,  -633,  -633,
+  -108,  -633,   239,  -633,  1042,  -740,  -112,  -111,   134,   239,
+  -111,  -113,  -109,   133,  -113,   620,  -633,  -633,  -633,  -633,
+  -110,  -633,  -117,  -633,   134,   134,  -636,  -111,  -633,   133,
+   133,  -113,  -633,  -636,  -636,  -636,  -633,  -118,  -636,  -636,
+  -636,  -112,  -636,  -116,  -112,  -115,  -125,  -124,  -111,  -113,
+  -636,   134,  -636,  -636,  -636,  -110,   133,  1015,  -110,   134,
+  -120,  -112,  -636,  -636,   133,  -636,  -636,  -636,  -636,  -636,
+  -122,  -121,  1042,  -119,   225,  -110,  -121,  -123,   944,   134,
+   307,  -647,   621,   620,   133,   134,   680,  -110,  1005,   685,
+   133,  -755,   238,  -636,  -636,  -636,  -636,  -636,  -636,  -636,
+  -636,  -636,  -636,  -636,  -636,  -636,  -636,   376,   307,  -636,
+  -636,  -636,   943,  -636,  -636,   112,   113,  -636,   112,   113,
+  -636,  -636,   239,  -636,  -648,  -636,   226,  -636,   239,  -636,
+  -636,  -636,  -636,  -636,  -636,  -636,  -117,  -636,  -123,  -636,
+  -117,  -117,  -740,  -741,   376,   304,   680,   682,   681,  -740,
+   621,  -118,  -636,  -636,  -636,  -636,  -118,  -636,   680,  -636,
+  -125,  -124,  -319,  -767,  -636,  -125,  -124,   309,  -636,  -319,
+  -319,  -319,  -636,   304,  -120,  -319,  -319,   617,  -319,  -120,
+   617,  -112,  -114,  -118,  -122,  -121,  -319,  -119,   620,  -122,
+  -121,   620,  -119,   114,   115,   309,   114,   115,  -319,  -319,
+  -767,  -319,  -319,  -319,  -319,  -319,   963,   682,   681,   678,
+   234,   534,   964,   505,   944,   680,  -741,   233,   535,   682,
+   681,   628,   627,   227,   628,   627,   231,   784,   877,  -319,
+  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,
+  -319,  -319,  -319,   230,   236,  -319,  -319,  -319,   943,   723,
+  -319,   585,  -123,  -319,   906,   621,  -319,  -123,   621,   236,
+  -647,  -319,   998,  -319,   657,  -319,  -319,  -319,  -319,  -319,
+  -319,  -319,  -125,  -319,   235,  -319,   682,   681,   612,  -356,
+   609,   608,   607,   617,   610,   879,  -356,   907,  -319,  -319,
+  -648,  -114,   297,  -319,   620,  -356,   680,   717,  -744,   998,
+  -319,  -116,  -108,  -125,  -319,  -744,  -744,  -744,  -123,   854,
+  -124,  -744,  -744,  -120,  -744,   361,   615,  -633,  -125,  -117,
+   585,   717,  -744,  -744,  -633,   625,   624,   628,   627,   234,
+   228,   229,  -109,   680,  -744,  -744,   502,  -744,  -744,  -744,
+  -744,  -744,    99,  -356,  -645,   503,  -122,  -636,  -646,  -118,
+   100,  -645,   680,   362,  -636,  -646,  -120,   682,   681,   678,
+  -645,   621,  -115,  -111,  -646,  -744,  -744,  -744,  -744,  -744,
+  -744,  -744,  -744,  -744,  -744,  -744,  -744,  -744,  -744,  -124,
+  -120,  -744,  -744,  -744,  -643,   724,  -744,   228,   229,  -744,
+   680,  -643,  -744,   235,   682,   681,   683,  -744,   718,  -744,
+   239,  -744,  -744,  -744,  -744,  -744,  -744,  -744,  -645,  -744,
+  -744,  -744,  -646,   682,   681,   688,   612,   423,   609,   608,
+   607,   617,   610,   234,  -744,  -744,   718,  -112,  -642,  -744,
+   577,   680,   620,   426,  -744,  -642,  -744,  1030,   894,   575,
+  -744,  -744,  -744,  -744,  -121,   664,  -744,  -744,  -744,   936,
+  -744,   682,   681,   693,   615,   676,   894,  -122,  -744,  -744,
+  -744,  -744,  -744,   625,   624,   628,   627,   429,  -113,   432,
+  -744,  -744,  -310,  -744,  -744,  -744,  -744,  -744,   134,  -310,
+  -110,   917,  -644,   133,   234,  -122,   913,   235,  -310,  -644,
+   914,   587,   682,   681,   700,   639,  -119,  -119,   638,   621,
+   503,  -744,  -744,  -744,  -744,  -744,  -744,  -744,  -744,  -744,
+  -744,  -744,  -744,  -744,  -744,  -119,   657,  -744,  -744,  -744,
+  -641,   908,  -744,  -638,   854,  -744,   449,  -641,  -744,  -744,
+  -638,  -744,   454,  -744,   504,  -744,  -310,  -744,  -744,  -744,
+  -744,  -744,  -744,  -744,  -639,  -744,  -744,  -744,   235,   506,
+   639,  -639,   612,   641,   609,   608,   607,   617,   610,   234,
+  -744,  -744,  -744,  -744,  -640,  -744,   661,  -744,   620,   134,
+  -319,  -640,  -744,   507,   133,   659,  -744,  -319,  -319,  -319,
+  -121,   238,  -319,  -319,  -319,   261,  -319,   451,   234,   542,
+   615,   554,   453,   452,  -319,   667,  -319,  -319,  -319,   625,
+   624,   628,   627,   557,   669,   559,  -319,  -319,   234,  -319,
+  -319,  -319,  -319,  -319,   134,   711,   -88,   258,  -320,   133,
+  -320,   260,   259,   235,   709,  -320,   612,  -320,   609,   608,
+   607,   239,   610,   570,  -320,   621,  -320,  -319,  -319,  -319,
+  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,
+  -319,   134,   235,  -319,  -319,  -319,   133,   909,  -319,   278,
+   279,  -319,   571,   134,  -319,  -319,   578,  -319,   133,  -319,
+   314,  -319,   235,  -319,  -319,  -319,  -319,  -319,  -319,  -319,
+   134,  -319,  -320,  -319,  -320,   133,   612,   239,   609,   608,
+   607,   617,   610,  -319,   277,   276,  -319,  -319,  -319,  -319,
+  -319,  -319,   620,  -319,   639,  -741,  -319,   641,  -319,  -319,
+   228,   229,  -319,  -319,  -319,  -319,  -123,   376,   639,  -319,
+  -319,   641,  -319,   911,   615,   612,  1141,   609,   608,   607,
+  -319,   610,   376,   625,   624,   628,   627,   137,   138,   139,
+   140,   141,  -319,  -319,  -319,  -319,  -319,  -319,  -319,  -319,
+   239,  -319,   234,  1227,   234,   304,  -741,  -319,   582,  1205,
+  -319,  1211,   588,   823,   931,   932,   261,   261,   669,   621,
+  1209,   592,   827,  -319,  -319,  -319,  -319,  -319,  -319,  -319,
+  -319,  -319,  -319,  -319,  -319,  -319,  -319,   628,   627,  -319,
+  -319,  -319,  -654,   723,  -319,   994,   998,  -319,   258,   632,
+  -319,   239,   260,   259,   239,  -319,   657,  -319,  -319,  -319,
+  -319,  -319,  -319,  -319,  -319,  -319,   235,  -319,   235,  -319,
+  1175,  1176,   612,   234,   609,   608,   607,   617,   610,   442,
+  1205,   662,  -319,  -319,   663,  -319,   671,  -319,   620,   669,
+   994,   998,  -744,   687,  -319,   691,   694,   697,  -319,  -744,
+  -744,  -744,  -123,   704,   705,  -744,  -744,   261,  -744,   612,
+   615,   609,   608,   607,  -292,   610,  -744,  -744,   707,   708,
+   712,   628,   627,   239,   122,   121,   123,   124,  -744,  -744,
+   715,  -744,  -744,  -744,  -744,  -744,   716,   235,   304,   258,
+   126,   125,   127,   260,   259,   256,   257,   823,   137,   138,
+   139,   140,   141,   112,   113,   621,   827,   728,   358,  -744,
+  -744,  -744,  -744,  -744,  -744,  -744,  -744,  -744,  -744,  -744,
+  -744,  -744,  -744,   261,   261,  -744,  -744,  -744,   261,   724,
+  -744,   261,   766,  -744,  1020,  1021,  -744,   239,  1022,   128,
+   129,  -744,   772,  -744,   239,  -744,  -744,  -744,  -744,  -744,
+  -744,  -744,   239,  -744,  -744,  -744,   449,   109,    99,   101,
+   102,   103,   105,   239,  -103,   788,   100,   110,  -744,  -744,
+   239,  -744,   591,  -744,    93,   799,   805,    97,   104,   106,
+  -744,   114,   115,   808,  -744,   239,   810,   239,  -121,     8,
+    89,    90,    91,    12,    82,   813,   816,   817,    83,    84,
+   819,   821,  -737,    87,  -738,    85,    86,    88,    34,    35,
+    80,    81,   137,   138,   139,   140,   141,    92,    32,    31,
+   122,   121,   123,   124,   832,   612,    22,   609,   608,   607,
+   833,   610,    11,    52,    10,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   835,   120,   128,   129,   808,   112,
+   113,   808,    48,    49,    47,  -633,   239,  -636,   841,   842,
+   559,   845,  -633,   823,  -636,   808,   808,  -737,   808,  -738,
+   880,  -633,   827,  -636,    44,   881,   882,    37,   261,  -293,
+    67,    68,   542,   542,    69,   239,    39,   911,   912,  -737,
+    51,  -738,   935,   911,   271,   272,   938,   297,    23,   950,
+   952,   557,   559,   109,    99,   101,   102,   103,   105,   799,
+   258,   239,   100,   110,   260,   259,   256,   257,   304,  -633,
+    93,  -636,   304,    97,   104,   106,   799,   114,   115,   261,
+   987,    45,    46,   333,    89,    90,    91,    12,    82,   988,
+   239,   998,    83,    84,   808,   808,  -744,    87,   239,    85,
+    86,    88,    34,    35,    80,    81,   137,   138,   139,   140,
+   141,    92,    32,    31,   122,   121,   123,   124,   239,   808,
+    22,   261,   239,  -294,   239,  1029,    11,    52,   335,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   758,   120,
+   128,   129,  1033,   112,   113,   239,    48,    49,    47,  -744,
+   239,  1055,  1056,   258,  1057,  1059,  -744,   260,   259,   256,
+   257,  -740,  1078,   239,   799,  -744,  -292,  1085,    44,   239,
+  1088,   337,  1090,   816,    67,    68,   831,  1093,    69,  1095,
+    39,  1095,   239,  -744,    51,   612,   808,   609,   608,   607,
+   808,   610,    23,   808,   808,  1122,   239,   109,    99,   101,
+   102,   103,   105,  1124,  -295,  1125,   100,   110,  1126,  1127,
+  1128,   239,   239,  -744,    93,   239,   911,    97,   104,   106,
+  1135,   114,   115,   823,   239,    45,    46,   333,    89,    90,
+    91,    12,    82,  1142,   816,  1145,    83,    84,  1149,  1151,
+  1153,    87,   239,    85,    86,    88,    34,    35,    80,    81,
+   253,  1155,  1171,  1172,  1183,    92,    32,    31,   122,   121,
+   123,   124,  1184,  1187,    22,   609,   608,   607,   911,   610,
+    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,  1191,   120,   128,   129,  1193,   112,   113,  1203,
+    48,    49,    47,   261,   265,   266,   267,   268,   278,   279,
+   273,   274,   269,   270,  1206,   254,   255,   963,  1212,   271,
+   272,  1213,    44,  1095,   252,    37,  1095,  1095,    67,    68,
+   808,  1229,    69,   816,    39,   258,  1233,   264,    51,   260,
+   259,   256,   257,   277,   276,   262,    23,   263,  1235,  1237,
+  1239,   109,    99,   101,   102,   103,   105,  1239,   805,  1172,
+   100,   110,  1253,   275,  1229,  -741,  -740,   239,    93,  1095,
+  1265,    97,   104,   106,  1239,   114,   115,  1239,  1239,    45,
+    46,   333,    89,    90,    91,    12,    82,  1229,  1239,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   713,    11,    52,   335,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   261,   265,   266,
+   267,   268,   278,   279,   273,   274,   269,   270,   nil,   254,
+   255,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
+   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
+    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   275,   nil,  -265,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   713,    11,    52,
+   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   261,   265,   266,   267,   268,   278,   279,   273,   274,
+   269,   270,   nil,   254,   255,   nil,   nil,   271,   272,   nil,
+    44,   nil,   nil,   337,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
+   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   275,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   960,    11,    52,   335,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   261,   265,   266,   267,   268,
+   278,   279,   273,   274,   269,   270,   nil,   254,   255,   nil,
+   nil,   271,   272,   nil,    44,   nil,   nil,   337,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
+    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   275,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,   333,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   991,    11,    52,   335,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
+   265,   266,   267,   268,   278,   279,   273,   274,   269,   270,
+   nil,   254,   255,   nil,   nil,   271,   272,   nil,    44,   nil,
+   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    39,   258,   nil,   264,    51,   260,   259,   256,   257,   277,
+   276,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   275,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,  1187,    22,   609,   608,   607,   nil,   610,
+    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   261,   265,   266,   267,   268,   278,   279,
+   273,   274,   269,   270,   nil,   254,   255,   nil,   nil,   271,
+   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
+   259,   256,   257,   277,   276,   262,    23,   263,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   275,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    52,   335,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   261,   265,   266,
+   267,   268,   278,   279,   273,   274,   269,   270,   nil,   254,
+   255,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
+   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
+    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   239,   275,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,
+   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   261,   265,   266,   267,   268,   278,   279,   273,   274,
+   269,   270,   nil,   254,   255,   nil,   nil,   271,   272,   nil,
+    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
+   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   275,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    52,   335,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   261,   265,   266,   267,   268,
+   278,   279,   273,   274,   269,   270,   nil,   254,   255,   nil,
+   nil,   271,   272,   nil,    44,   nil,   nil,    37,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
+    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   275,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,     8,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    52,    10,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
+   265,   266,   267,   268,   278,   279,   273,   274,   269,   270,
+   nil,   254,   255,   nil,   nil,   271,   272,   nil,    44,   nil,
+   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    39,   258,   nil,   264,    51,   260,   259,   256,   257,   277,
+   276,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   275,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   261,   265,   266,   267,   268,   278,   279,
+   273,   274,   269,   270,   nil,   254,   255,   nil,   nil,   271,
+   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
+   259,   256,   257,   277,   276,   262,    23,   263,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   275,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    52,   335,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   261,   265,   266,
+   267,   268,   278,   279,   273,   274,   269,   270,   nil,   254,
+   255,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
+   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
+    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   275,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,
+   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   261,   265,   266,   267,   268,   278,   279,   273,   274,
+   269,   270,   nil,  -768,  -768,   nil,   nil,   271,   272,   nil,
+    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
+   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    52,   335,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   261,   265,   266,   267,   268,
+   278,   279,   273,   274,   269,   270,   nil,  -768,  -768,   nil,
+   nil,   271,   272,   nil,    44,   nil,   nil,    37,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
+    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,   333,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   335,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
+   265,   266,   267,   268,   278,   279,   273,   274,   269,   270,
+   nil,  -768,  -768,   nil,   nil,   271,   272,   nil,    44,   nil,
+   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    39,   258,   nil,   264,    51,   260,   259,   256,   257,   277,
+   276,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   261,   265,   266,   267,   268,   278,   279,
+   273,   274,   269,   270,   nil,  -768,  -768,   nil,   nil,   271,
+   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
+   259,   256,   257,   277,   276,   262,    23,   263,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   612,    22,   609,
+   608,   607,   nil,   610,    11,    52,   335,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   261,  -768,  -768,
+  -768,  -768,   278,   279,   nil,   823,  -768,  -768,   nil,   nil,
+   nil,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
+   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
+    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   612,    22,   609,   608,   607,   nil,   610,    11,    52,
+   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   261,  -768,  -768,  -768,  -768,   278,   279,   nil,   823,
+  -768,  -768,   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,
+    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
+   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    52,   335,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   261,  -768,  -768,  -768,  -768,
+   278,   279,   nil,   nil,  -768,  -768,   nil,   nil,   nil,   nil,
+   nil,   271,   272,   nil,    44,   nil,   nil,    37,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
+    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,   333,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   335,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
+  -768,  -768,  -768,  -768,   278,   279,   nil,   nil,  -768,  -768,
+   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,    44,   nil,
+   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    39,   258,   nil,   264,    51,   260,   259,   256,   257,   277,
+   276,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   261,  -768,  -768,  -768,  -768,   278,   279,
+   nil,   nil,  -768,  -768,   nil,   nil,   nil,   nil,   nil,   271,
+   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
+   259,   256,   257,   277,   276,   262,    23,   263,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    52,   335,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   261,  -768,  -768,
+  -768,  -768,   278,   279,   nil,   nil,  -768,  -768,   nil,   nil,
+   nil,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
+   nil,   264,    51,   260,   259,   256,   257,   277,   276,   262,
+    23,   263,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,
+   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   261,   265,   266,   267,   268,   278,   279,   nil,   nil,
+   269,   270,   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,
+    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
+   257,   277,   276,   262,    23,   263,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,   333,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,    11,    52,   335,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   261,   265,   266,   267,   268,
+   278,   279,   273,   nil,   269,   270,   nil,   nil,   nil,   nil,
+   nil,   271,   272,   nil,    44,   nil,   nil,    37,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    39,   258,   nil,   264,
+    51,   260,   259,   256,   257,   277,   276,   262,    23,   263,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,   333,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   335,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,    44,   nil,
+   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    39,   258,   nil,   264,    51,   260,   259,   256,   257,   nil,
+   nil,   262,    23,   263,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,   333,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+    11,    52,   335,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   271,
+   272,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    39,   258,   nil,   264,    51,   260,
+   259,   256,   257,   nil,   nil,   262,    23,   263,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,   333,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    52,   335,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   271,   272,   nil,    44,   nil,   nil,    37,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   258,
+   nil,   264,    51,   260,   259,   256,   257,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,   333,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,
+   335,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   261,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   271,   272,   nil,
+    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    39,   258,   nil,   264,    51,   260,   259,   256,
+   257,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,
+   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,    11,    52,    10,    13,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    44,   nil,   nil,    37,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,    39,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -452,   114,
+   115,   nil,   nil,    45,    46,  -452,  -452,  -452,   nil,   nil,
+  -452,  -452,  -452,   612,  -452,   609,   608,   607,   617,   610,
+   nil,   nil,  -452,  -452,  -452,  -452,   nil,   nil,   nil,   620,
+   nil,   nil,   nil,   nil,  -452,  -452,   nil,  -452,  -452,  -452,
+  -452,  -452,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   615,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   625,   624,   628,   627,   nil,  -452,  -452,  -452,  -452,  -452,
+  -452,  -452,  -452,  -452,  -452,  -452,  -452,  -452,  -452,   nil,
+   nil,  -452,  -452,  -452,   nil,   nil,  -452,   nil,   304,  -452,
+   nil,   nil,  -452,  -452,   nil,  -452,   621,  -452,   nil,  -452,
+   nil,  -452,  -452,  -452,  -452,  -452,  -452,  -452,   nil,  -452,
+  -452,  -452,   612,   nil,   609,   608,   607,   617,   610,   nil,
+   nil,   nil,   nil,   nil,  -452,  -452,   nil,  -452,   620,  -452,
+  -327,   nil,   nil,   nil,   nil,   nil,  -452,  -327,  -327,  -327,
+  -452,   nil,  -327,  -327,  -327,   nil,  -327,   nil,   nil,   nil,
+   615,   nil,   nil,   nil,  -327,   nil,  -327,  -327,   nil,   625,
+   624,   628,   627,   nil,   nil,   nil,  -327,  -327,   nil,  -327,
+  -327,  -327,  -327,  -327,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   239,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   621,   nil,  -327,  -327,  -327,
+  -327,  -327,  -327,  -327,  -327,  -327,  -327,  -327,  -327,  -327,
+  -327,   nil,   nil,  -327,  -327,  -327,   nil,   nil,  -327,   nil,
+   314,  -327,   nil,   nil,  -327,  -327,   nil,  -327,   nil,  -327,
+   nil,  -327,   nil,  -327,  -327,  -327,  -327,  -327,  -327,  -327,
+   nil,  -327,   nil,  -327,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  -327,  -327,   nil,  -327,
+   nil,  -327,    89,    90,    91,   nil,    82,   nil,  -327,   nil,
+    83,    84,  -327,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   326,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   323,   nil,
+   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   326,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   323,   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   326,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   323,   nil,   321,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   327,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   354,   355,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
+   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -311,
+   114,   115,   nil,   nil,    45,    46,  -311,  -311,  -311,   nil,
+   nil,  -311,  -311,  -311,   612,  -311,   609,   608,   607,   617,
+   610,   nil,   nil,  -311,   nil,  -311,  -311,  -311,   nil,   nil,
+   620,   122,   121,   123,   124,  -311,  -311,   nil,  -311,  -311,
+  -311,  -311,  -311,   nil,   nil,   nil,   nil,   126,   125,   127,
+   nil,   nil,   615,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   112,   113,   nil,   628,   627,   358,  -311,  -311,  -311,  -311,
+  -311,  -311,  -311,  -311,  -311,  -311,  -311,  -311,  -311,  -311,
+   nil,   nil,  -311,  -311,  -311,   nil,   nil,  -311,   nil,   nil,
+  -311,   nil,   nil,  -311,  -311,   nil,  -311,   621,  -311,   nil,
+  -311,   nil,  -311,  -311,  -311,  -311,  -311,  -311,  -311,   nil,
+  -311,   nil,  -311,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,  -311,  -311,  -311,  -311,   nil,
+  -311,    93,  -311,   nil,    97,   104,   106,  -311,   114,   115,
+  -767,  -311,    89,    90,    91,    12,    82,  -767,  -767,  -767,
+    83,    84,  -767,  -767,  -767,    87,  -767,    85,    86,    88,
+    34,    35,    80,    81,  -767,  -767,  -767,  -767,   nil,    92,
+    32,    31,   122,   121,   123,   124,  -767,  -767,    22,  -767,
+  -767,  -767,  -767,  -767,    11,    52,   nil,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,  -767,  -767,  -767,
+  -767,  -767,  -767,  -767,  -767,  -767,  -767,  -767,  -767,  -767,
+  -767,   nil,   nil,  -767,  -767,  -767,    44,   nil,  -767,    37,
+   304,  -767,    67,    68,  -767,  -767,    69,  -767,    39,  -767,
+   nil,  -767,    51,  -767,  -767,  -767,  -767,  -767,  -767,  -767,
+    23,  -767,  -767,  -767,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,  -767,  -767,   nil,  -767,
+   nil,  -767,    93,   nil,   nil,    97,   104,   106,  -767,   114,
+   115,   nil,  -767,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   326,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   323,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
+    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
+    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   134,   nil,
+   nil,   nil,   nil,   133,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
+   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,
+    52,    10,    13,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    44,   nil,   nil,    37,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,    39,   nil,   nil,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   442,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    32,    31,   122,   121,   123,   124,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,
+   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,    11,    52,   nil,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,    37,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   459,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   459,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,
+    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,
+    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
+   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   326,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   323,   nil,   321,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   327,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    32,    31,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,
+   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   239,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   354,   355,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
+   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
+   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   354,   355,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
+   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
+   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   326,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   323,   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,   544,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
+   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   326,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   323,   nil,   321,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   326,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   323,   nil,   321,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   239,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   327,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
+   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,    12,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   nil,
+    13,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,
+   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,    39,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   591,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   326,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
+   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -745,
+   114,   115,   nil,   nil,    45,    46,  -745,  -745,  -745,   nil,
+   nil,  -745,  -745,  -745,   612,  -745,   609,   608,   607,   617,
+   610,   nil,   nil,  -745,  -745,  -745,  -745,  -745,   nil,   nil,
+   620,   nil,   nil,   nil,   nil,  -745,  -745,   nil,  -745,  -745,
+  -745,  -745,  -745,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   615,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   625,   624,   628,   627,   nil,  -745,  -745,  -745,  -745,
+  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,  -745,
+   nil,   nil,  -745,  -745,  -745,   nil,   nil,  -745,   nil,   nil,
+  -745,   nil,   nil,  -745,  -745,   nil,  -745,   621,  -745,   nil,
+  -745,   nil,  -745,  -745,  -745,  -745,  -745,  -745,  -745,   nil,
+  -745,  -745,  -745,   612,   nil,   609,   608,   607,   617,   610,
+   nil,   nil,   nil,   nil,   nil,  -745,  -745,  -745,  -745,   620,
+  -745,  -746,  -745,   nil,   nil,   nil,   nil,  -745,  -746,  -746,
+  -746,  -745,   nil,  -746,  -746,  -746,   nil,  -746,   nil,   nil,
+   nil,   615,   nil,   nil,   nil,  -746,  -746,  -746,  -746,  -746,
+   nil,   nil,   628,   627,   nil,   nil,   nil,  -746,  -746,   nil,
+  -746,  -746,  -746,  -746,  -746,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   621,   nil,  -746,  -746,
+  -746,  -746,  -746,  -746,  -746,  -746,  -746,  -746,  -746,  -746,
+  -746,  -746,   nil,   nil,  -746,  -746,  -746,   nil,   nil,  -746,
+   nil,   nil,  -746,   nil,   nil,  -746,  -746,   nil,  -746,   nil,
+  -746,   nil,  -746,   nil,  -746,  -746,  -746,  -746,  -746,  -746,
+  -746,   nil,  -746,  -746,  -746,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -746,  -746,  -746,
+  -746,   nil,  -746,   nil,  -746,   nil,    89,    90,    91,  -746,
+    82,   nil,   nil,  -746,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   326,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   323,   nil,   321,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
+   324,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,  -767,   114,   115,   nil,   nil,    45,
+    46,  -767,  -767,  -767,   nil,   nil,  -767,  -767,  -767,   nil,
+  -767,   122,   121,   123,   124,   nil,   nil,   nil,  -767,  -767,
+  -767,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
+  -767,  -767,   nil,  -767,  -767,  -767,  -767,  -767,   nil,   nil,
+   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,
+   nil,   612,   nil,   609,   608,   607,   617,   610,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,   nil,   nil,
+   nil,   nil,  -767,   nil,   nil,   nil,   nil,   nil,   nil,  -767,
+   nil,   nil,   nil,   nil,   304,  -767,   nil,   nil,   nil,   615,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   628,   627,   nil,   100,   110,   nil,  -767,  -767,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+  -767,   nil,    89,    90,    91,  -767,    82,   nil,   nil,   nil,
+    83,    84,  -767,   nil,   621,    87,  -767,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   326,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   781,   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   326,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   321,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   327,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    32,    31,   122,   121,   123,   124,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   335,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
+   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    39,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   442,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
+   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   326,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   323,   nil,   321,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   326,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   781,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   327,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   326,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   857,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
+   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   326,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   323,   nil,   321,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   327,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   326,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   323,   nil,   321,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   327,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,    12,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    32,    31,   122,   121,   123,   124,   nil,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,    11,    52,   nil,    13,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,
+    37,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    39,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
+   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   886,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   326,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   323,   nil,
+   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,    12,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,    11,    52,   nil,
+    13,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,
+   nil,   nil,    37,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,    39,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   326,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   781,   nil,   321,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,   324,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   327,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   326,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,   324,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   327,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
+   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    34,    35,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    32,    31,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    32,    31,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    34,    35,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,   124,
+   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   326,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   781,   nil,   321,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   109,   324,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   327,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,   544,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   459,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
+   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    32,    31,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
+   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,
+   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    34,    35,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,   123,
+   124,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+    52,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,
+    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,  1114,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   326,   120,   128,
+   129,   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,
+   250,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   321,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   109,   324,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   327,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
+   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,    52,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    48,    49,
+    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   244,   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    45,    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    34,    35,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    32,    31,   122,   121,   123,   124,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    48,    49,    47,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   244,   nil,   nil,   250,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    23,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    45,    46,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    34,    35,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    32,    31,   122,   121,   123,   124,   nil,
+   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    48,    49,    47,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   244,
+   nil,   nil,   250,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    45,    46,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    34,    35,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    32,    31,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,    52,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   326,   120,   128,   129,   nil,   112,   113,   nil,
+    48,    49,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   244,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   323,   nil,   321,   nil,    51,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,
+   nil,   109,   324,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   327,    97,   104,   106,   nil,   114,   115,   nil,   nil,    45,
+    46,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,   350,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,
+   nil,   612,   nil,   609,   608,   607,   617,   610,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   346,   nil,   620,   342,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   341,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   615,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   628,   627,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   621,    85,    86,    88,   354,   355,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,   350,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,
+   612,   nil,   609,   608,   607,   617,   610,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   346,   nil,   620,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   615,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   628,
+   627,   nil,   100,   110,   nil,   nil,   nil,   360,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   621,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,   350,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   612,
+   nil,   609,   608,   607,   617,   610,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   401,   nil,   620,    37,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,    39,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   615,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   628,   627,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   621,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,   350,   nil,   nil,   126,   125,   127,   406,    65,   118,
+   117,   407,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   612,   nil,
+   609,   608,   607,   617,   610,   nil,   nil,   nil,   nil,   413,
+   nil,   nil,   408,   nil,   620,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   615,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   628,   627,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   621,    85,    86,    88,   354,   355,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,
+   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,
+   350,   nil,   nil,   126,   125,   127,   406,    65,   118,   117,
+   407,   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,
+   nil,   358,   nil,   nil,   nil,   nil,   nil,   612,   nil,   609,
+   608,   607,   617,   610,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   408,   nil,   620,   250,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   615,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   628,   627,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   621,    85,    86,    88,   354,   355,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   349,   357,   122,   121,   123,   124,
+   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,   350,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
+   358,   nil,   nil,   nil,   nil,   nil,   612,   nil,   609,   608,
+   607,   617,   610,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   346,   nil,   620,   250,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   615,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   628,   627,   nil,   100,   110,
+   nil,   nil,   nil,   573,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   621,
+    85,    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   349,   357,   122,   121,   123,   124,   nil,
+   nil,   251,   nil,   nil,   nil,   nil,   nil,   nil,   350,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   358,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   346,
+   nil,   nil,   342,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   349,   357,   122,   121,   123,   124,   nil,   nil,
+   251,   nil,   nil,   nil,   nil,   nil,   nil,   350,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,   nil,   nil,   358,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   346,   nil,
+   nil,   342,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   349,   357,   122,   121,   123,   124,   nil,   nil,   251,
+   nil,   nil,   nil,   nil,   nil,   nil,   350,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   346,   nil,   nil,
+   342,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   354,   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   349,   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,
+   nil,   nil,   nil,   nil,   nil,   350,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   346,   nil,   nil,   342,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,
+   355,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,
+   357,   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,
+   nil,   nil,   nil,   nil,   350,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   346,   nil,   nil,   342,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,
+   122,   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,
+   nil,   nil,   nil,   350,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1157,   nil,   nil,   250,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   354,   355,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,
+   121,   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,
+   nil,   nil,   350,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1164,   nil,   nil,   250,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   354,   355,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   349,   357,   122,   121,
+   123,   124,   nil,   nil,   251,   nil,   nil,   nil,   nil,   nil,
+   nil,   350,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1157,   nil,   nil,   250,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   192,   203,   193,
+   216,   189,   209,   199,   198,   219,   220,   214,   197,   196,
+   191,   217,   221,   222,   201,   190,   204,   208,   210,   202,
+   195,   nil,   nil,   nil,   211,   218,   213,   212,   205,   215,
+   200,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,   187,
+   194,   185,   186,   182,   183,   184,   145,   147,   144,   nil,
+   146,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
+   178,   nil,   173,   155,   156,   157,   164,   161,   163,   nil,
+   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
+   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
+   109,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,
+   192,   203,   193,   216,   189,   209,   199,   198,   219,   220,
+   214,   197,   196,   191,   217,   221,   222,   201,   190,   204,
+   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,   213,
+   212,   205,   215,   200,   188,   207,   206,   nil,   nil,   nil,
+   nil,   nil,   187,   194,   185,   186,   182,   183,   184,   145,
+   147,   nil,   nil,   146,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   109,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   174,   192,   203,   193,   216,   189,   209,   199,
+   198,   219,   220,   214,   197,   196,   191,   217,   221,   222,
+   201,   190,   204,   208,   210,   202,   195,   nil,   nil,   nil,
+   211,   218,   213,   291,   290,   292,   289,   188,   207,   206,
+   nil,   nil,   nil,   nil,   nil,   187,   194,   185,   186,   286,
+   287,   288,   284,   147,   118,   117,   285,   nil,   120,   nil,
+   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,
+   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
+   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
+   nil,   296,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
+   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
+   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   174,   192,   203,   193,   216,
+   189,   209,   199,   198,   219,   220,   214,   197,   196,   191,
+   217,   221,   222,   201,   190,   204,   208,   210,   202,   195,
+   nil,   nil,   nil,   211,   218,   213,   212,   205,   215,   200,
+   188,   207,   206,   nil,   nil,   nil,   nil,   nil,   187,   194,
+   185,   186,   182,   183,   184,   145,   147,   439,   438,   146,
+   nil,   440,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   nil,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,
+   203,   193,   216,   189,   209,   199,   198,   219,   220,   214,
+   197,   196,   191,   217,   221,   222,   201,   190,   204,   208,
+   210,   202,   195,   nil,   nil,   nil,   211,   218,   213,   212,
+   205,   215,   200,   188,   207,   206,   nil,   nil,   nil,   nil,
+   nil,   187,   194,   185,   186,   182,   183,   184,   145,   147,
+   nil,   nil,   146,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   177,   178,   nil,   173,   155,   156,   157,   164,   161,
+   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
+   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
+   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
+   nil,   181,   109,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   110,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   174,   192,   203,   193,   216,   189,   209,   199,   198,
+   219,   220,   214,   197,   196,   191,   217,   221,   222,   201,
+   190,   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,
+   218,   213,   212,   205,   215,   200,   188,   207,   206,   nil,
+   nil,   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,
+   184,   145,   147,   nil,   nil,   146,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   109,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,
+   209,   199,   198,   219,   220,   214,   197,   196,   191,   217,
+   221,   222,   201,   190,   204,   208,   210,   202,   195,   nil,
+   nil,   nil,   211,   218,   213,   212,   205,   215,   200,   188,
+   207,   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,
+   186,   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,
+   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
+   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
+   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
+   nil,   nil,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,   126,   125,
+   127,   758,   nil,   nil,   nil,   761,   nil,   nil,   nil,   nil,
+   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,   742,
+   nil,   nil,   nil,   740,   nil,   nil,   741,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   759,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,   746,   747,   122,   121,   123,   124,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   126,   125,   127,   758,   nil,   nil,   nil,   761,   nil,
+   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   358,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   760,
+   nil,   nil,   742,   nil,   nil,   nil,   740,   nil,   nil,   741,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   759,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,   746,   747,   122,   121,
+   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   126,   125,   127,   758,   nil,   nil,
+   nil,   761,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,
+   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   760,   nil,   nil,   742,   nil,   nil,   nil,   740,
+   nil,   nil,   741,   nil,   926,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   759,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   239,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,   746,
+   747,   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
+   758,   nil,   nil,   nil,   761,   nil,   nil,   nil,   nil,   nil,
+   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,   742,   nil,
+   nil,   nil,   740,   nil,   nil,   741,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   759,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,   746,   747,   122,   121,   123,   124,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   126,   125,   127,   758,   nil,   nil,   nil,   761,  1042,   nil,
+   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   358,   620,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   760,   nil,
+   nil,   742,   nil,   nil,   nil,   740,   nil,   nil,   741,   nil,
+   926,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   759,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   621,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,   746,   747,   122,   121,   123,
+   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   126,   125,   127,   758,   nil,   nil,   nil,
+   761,  1042,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
+   nil,   358,   620,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   760,   nil,   nil,   742,   nil,   nil,   nil,   740,   nil,
+   nil,   741,   nil,   926,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   759,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   621,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,   746,   747,
+   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   758,
+   nil,   nil,   nil,   761,   nil,   nil,   nil,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   760,   nil,   nil,   742,   nil,   nil,
+   nil,   740,   nil,   nil,   741,   nil,  1054,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   759,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,   746,   747,   122,   121,   123,   124,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
+   125,   127,   758,   nil,   nil,   nil,   761,   nil,   nil,   nil,
+   nil,   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,
+   742,   nil,   nil,   nil,   740,   nil,   nil,   741,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   759,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,   746,   747,   122,   121,   123,   124,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   126,   125,   127,   758,   nil,   nil,   nil,   761,
+  1042,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
+   358,   620,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   760,   nil,   nil,   742,   nil,   nil,   nil,   740,   nil,   nil,
+   741,   nil,   926,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   759,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   621,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,   746,   747,   122,
+   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   758,   nil,
+   nil,   nil,   761,   nil,   nil,   nil,   nil,   nil,   112,   113,
+   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   760,   nil,   nil,   742,   nil,   nil,   nil,
+   740,   nil,   nil,   741,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   759,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+   746,   747,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
+   127,   758,   nil,   nil,   nil,   761,   nil,   nil,   nil,   nil,
+   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,   742,
+   nil,   nil,   nil,   740,   nil,   nil,   741,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   759,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,   746,   747,   122,   121,   123,   124,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   126,   125,   127,   758,   nil,   nil,   nil,   761,   nil,
+   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   358,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   760,
+   nil,   nil,   742,   nil,   nil,   nil,   740,   nil,   nil,   741,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   759,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,   746,   747,   122,   121,
+   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   126,   125,   127,   758,   nil,   nil,
+   nil,   761,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,
+   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   760,   nil,   nil,   742,   nil,   nil,   nil,   740,
+   nil,   nil,   741,   nil,   926,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   759,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,   746,
+   747,   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
+   758,   nil,   nil,   nil,   761,   nil,   nil,   nil,   nil,   nil,
+   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   760,   nil,   nil,   742,   nil,
+   nil,   nil,   740,   nil,   nil,   741,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   759,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,   746,   747,   122,   121,   123,   124,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   126,   125,   127,   758,   nil,   nil,   nil,   761,   nil,   nil,
+   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   358,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   760,   nil,
+   nil,   742,   nil,   nil,   nil,   740,   nil,   nil,   741,   nil,
+   926,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   759,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,   746,   747,   122,   121,   123,
+   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   126,   125,   127,   758,   nil,   nil,   nil,
+   761,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
+   nil,   358,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   760,   nil,   nil,   742,   nil,   nil,   nil,   740,   nil,
+   nil,   741,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   759,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,   746,   747,
+   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   758,
+   nil,   nil,   nil,   761,   nil,   nil,   nil,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   358,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   760,   nil,   nil,   742,   126,   125,
+   127,   740,   nil,   nil,   741,   nil,   nil,   nil,   nil,   nil,
+   nil,   112,   113,   nil,   nil,   nil,   358,   nil,   nil,   759,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,   746,   747,   nil,   nil,   612,   nil,   609,   608,   607,
+   617,   610,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   620,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   612,   615,   609,   608,   607,   617,   610,   nil,
+   nil,   nil,   625,   624,   628,   627,   nil,   nil,   620,   612,
+   nil,   609,   608,   607,   617,   610,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   620,   nil,   nil,   nil,   nil,
+   615,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   621,   625,
+   624,   628,   627,   nil,   nil,   nil,   nil,   615,   606,   nil,
+   nil,   482,   486,   nil,   nil,   483,   625,   624,   628,   627,
+   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,
+   157,   164,   161,   163,   nil,   621,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   606,   nil,   nil,   nil,   nil,
+   304,   nil,   621,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   489,
+   493,   nil,   nil,   488,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   540,   486,   nil,
+   nil,   541,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   729,   486,   nil,   nil,   730,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   731,   493,   nil,   nil,   732,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,   792,   486,   nil,   nil,   793,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   795,
+   493,   nil,   nil,   796,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   729,   486,   nil,
+   nil,   730,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   731,   493,   nil,   nil,   732,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   860,   486,   nil,   nil,   861,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,   862,   493,   nil,   nil,   863,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   865,
+   493,   nil,   nil,   866,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   540,   486,   nil,
+   nil,   541,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   888,   486,   nil,   nil,   889,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   891,   493,   nil,   nil,   890,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   612,   181,   609,   608,   607,
+   617,   610,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   620,   nil,   nil,   nil,   nil,   174,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   615,  1243,   493,   nil,   nil,  1242,   nil,
+   nil,   nil,   625,   624,   628,   627,   nil,   177,   178,   nil,
+   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
+   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
+   nil,   nil,   nil,   304,   nil,   nil,   nil,   nil,   621,   nil,
+   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
+   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
+   nil,   nil,  1246,   486,   nil,   nil,  1247,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
+   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
+   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
+   nil,   304,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
+   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
+   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
+  1248,   493,   nil,   nil,  1249,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
+   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
+   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   304,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
+   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
+   153,   nil,   612,   181,   609,   608,   607,   617,   610,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   620,   nil,
+   nil,   nil,   nil,   174,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   615,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   625,
+   624,   628,   627,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   621 ]
+
+racc_action_check = [
+   116,   430,   433,    70,   390,   398,   769,   116,   116,   116,
+   498,   498,   116,   116,   116,   792,   116,   399,  1054,   793,
+   391,  1084,   765,   765,   116,   918,   116,   116,   116,   802,
+   802,   408,     1,   622,  1043,   408,   116,   116,    28,   116,
+   116,   116,   116,   116,   787,    28,   741,  1104,   402,   795,
+   662,   622,  1043,   860,   861,  1107,   760,  1109,     3,   741,
+   760,   787,   873,   957,   430,   433,   918,   116,   116,   116,
+   116,   116,   116,   116,   116,   116,   116,   116,   116,   116,
+   116,   858,   792,   116,   116,   116,   793,   116,   116,   652,
+    70,   116,  1007,   769,   116,   116,  1054,   116,  1109,   116,
+   498,   116,    28,   116,   116,   116,   116,   116,   116,   116,
+   398,   116,   765,   116,   927,   795,   795,   792,   390,   802,
+   792,   793,   399,   390,   793,   927,   116,   116,   116,   116,
+   957,   116,  1161,   116,   391,  1084,   119,   792,   116,   391,
+  1084,   793,   116,   119,   119,   119,   116,  1162,   119,   119,
+   119,   795,   119,   402,   795,   662,  1165,  1212,   860,   861,
+   119,  1104,   119,   119,   119,   957,  1104,   873,   957,  1107,
+  1246,   795,   119,   119,  1107,   119,   119,   119,   119,   119,
+  1247,  1248,  1128,  1259,    13,   957,   862,   863,   767,   652,
+    30,   242,   927,  1128,   652,   858,   421,  1007,   858,   421,
+   858,   914,    22,   119,   119,   119,   119,   119,   119,   119,
+   119,   119,   119,   119,   119,   119,   119,    53,   351,   119,
+   119,   119,   767,   119,   119,    47,    47,   119,   358,   358,
+   119,   119,   914,   119,   243,   119,    15,   119,    22,   119,
+   119,   119,   119,   119,   119,   119,  1161,   119,  1249,   119,
+   242,  1161,   862,   863,    54,    30,   561,   421,   421,  1248,
+  1128,  1162,   119,   119,   119,   119,  1162,   119,   689,   119,
+  1165,  1212,   488,    53,   119,  1165,  1212,    30,   119,   488,
+   488,   488,   119,   351,  1246,   488,   488,   813,   488,  1246,
+  1142,   862,   863,   243,  1247,  1248,   488,  1259,   813,  1247,
+  1248,  1142,  1259,    47,    47,   351,   358,   358,   488,   488,
+    54,   488,   488,   488,   488,   488,   804,   561,   561,   561,
+    19,   283,   804,   245,   951,   692,  1249,    19,   283,   689,
+   689,   813,   813,    16,  1142,  1142,    19,   561,   689,   488,
+   488,   488,   488,   488,   488,   488,   488,   488,   488,   488,
+   488,   488,   488,    18,   466,   488,   488,   488,   951,   488,
+   488,   504,  1249,   488,   729,   813,   488,  1249,  1142,    20,
+    42,   488,  1115,   488,  1115,   488,   488,   488,   488,   488,
+   488,   488,   245,   488,    19,   488,   692,   692,   377,    55,
+   377,   377,   377,   377,   377,   692,    55,   730,   488,   488,
+    43,   488,    26,   488,   377,    55,   417,   888,   489,  1252,
+   488,    20,    42,   466,   488,   489,   489,   489,   488,  1252,
+   504,   489,   489,   729,   489,    41,   377,   284,    20,    42,
+   362,   482,   489,   489,   284,   377,   377,   377,   377,   241,
+    17,    17,    43,   419,   489,   489,   241,   489,   489,   489,
+   489,   489,    96,    55,   343,   241,   730,   285,   344,    43,
+    96,   343,   424,    44,   285,   344,   888,   417,   417,   417,
+   343,   377,   362,   482,   344,   489,   489,   489,   489,   489,
+   489,   489,   489,   489,   489,   489,   489,   489,   489,   362,
+   482,   489,   489,   489,   286,   489,   489,   389,   389,   489,
+   427,   286,   489,   241,   419,   419,   419,   489,   889,   489,
+    52,   489,   489,   489,   489,   489,   489,   489,   343,   489,
+   489,   489,   344,   424,   424,   424,   415,   103,   415,   415,
+   415,   415,   415,   345,   489,   489,   483,   489,   287,   489,
+   345,   435,   415,   104,   731,   287,   489,   910,   714,   345,
+   489,   731,   731,   731,   489,   917,   731,   731,   731,   917,
+   731,   427,   427,   427,   415,   415,  1026,   889,   731,   731,
+   731,   731,   731,   415,   415,   415,   415,   105,   483,   106,
+   731,   731,   347,   731,   731,   731,   731,   731,     5,   347,
+   714,   739,   288,     5,   363,   483,   739,   345,   347,   288,
+   739,   363,   435,   435,   435,   384,   910,   714,   384,   415,
+   363,   731,   731,   731,   731,   731,   731,   731,   731,   731,
+   731,   731,   731,   731,   731,  1026,   655,   731,   731,   731,
+   289,   731,   731,   290,   655,   731,   142,   289,   731,   731,
+   290,   731,   223,   731,   244,   731,   347,   731,   731,   731,
+   731,   731,   731,   731,   291,   731,   731,   731,   363,   246,
+   385,   291,   676,   385,   676,   676,   676,   676,   676,   400,
+   731,   731,   731,   731,   292,   731,   400,   731,   676,   330,
+   732,   292,   731,   247,   330,   400,   731,   732,   732,   732,
+   731,   251,   732,   732,   732,   512,   732,   144,   410,   303,
+   676,   318,   144,   144,   732,   410,   732,   732,   732,   676,
+   676,   676,   676,   319,   410,   322,   732,   732,   465,   732,
+   732,   732,   732,   732,   395,   465,   336,   512,   578,   395,
+   665,   512,   512,   400,   465,   578,   827,   665,   827,   827,
+   827,   338,   827,   339,   578,   676,   665,   732,   732,   732,
+   732,   732,   732,   732,   732,   732,   732,   732,   732,   732,
+   732,   630,   410,   732,   732,   732,   630,   732,   732,    50,
+    50,   732,   340,   871,   732,   732,   346,   732,   871,   732,
+   349,   732,   465,   732,   732,   732,   732,   732,   732,   732,
+  1011,   732,   578,   732,   665,  1011,   817,   350,   817,   817,
+   817,   817,   817,   796,    50,    50,   732,   732,   732,   732,
+   796,   732,   817,   732,   646,   796,   890,   646,   732,   796,
+   673,   673,   732,   890,   890,   890,   732,   352,   840,   890,
+   890,   840,   890,  1060,   817,   615,  1060,   615,   615,   615,
+   890,   615,   353,   817,   817,   817,   817,     9,     9,     9,
+     9,     9,   890,   890,   866,   890,   890,   890,   890,   890,
+  1185,   866,  1156,  1185,  1163,   357,   866,   796,   359,  1156,
+   866,  1163,   366,   615,   743,   743,   513,   368,  1156,   817,
+  1163,   372,   615,   890,   890,   890,   890,   890,   890,   890,
+   890,   890,   890,   890,   890,   890,   890,   816,   816,   890,
+   890,   890,   374,   890,   890,   844,   844,   890,   513,   378,
+   890,   382,   513,   513,   386,   890,   396,   890,   866,   890,
+   890,   890,   890,   890,   890,   890,  1156,   890,  1163,   890,
+  1108,  1108,   819,  1204,   819,   819,   819,   819,   819,   397,
+  1204,   401,   890,   890,   403,   890,   412,   890,   819,  1204,
+  1219,  1219,   891,   423,   890,   426,   429,   432,   890,   891,
+   891,   891,   890,   455,   457,   891,   891,   527,   891,   823,
+   819,   823,   823,   823,   458,   823,   891,   891,   460,   463,
+   467,   819,   819,   477,   746,   746,   746,   746,   891,   891,
+   480,   891,   891,   891,   891,   891,   481,  1204,   490,   527,
+   746,   746,   746,   527,   527,   527,   527,   823,   334,   334,
+   334,   334,   334,   746,   746,   819,   823,   500,   746,   891,
+   891,   891,   891,   891,   891,   891,   891,   891,   891,   891,
+   891,   891,   891,   514,   515,   891,   891,   891,   516,   891,
+   891,   517,   537,   891,   875,   875,   891,   545,   875,   875,
+   875,   891,   546,   891,   547,   891,   891,   891,   891,   891,
+   891,   891,   551,   891,   891,   891,   567,   746,   746,   746,
+   746,   746,   746,   568,   569,   572,   746,   746,   891,   891,
+   574,   891,   579,   891,   746,   583,   593,   746,   746,   746,
+   891,   746,   746,   594,   891,   597,   598,   599,   891,     2,
+     2,     2,     2,     2,     2,   600,   601,   603,     2,     2,
+   604,   614,   406,     2,   407,     2,     2,     2,     2,     2,
+     2,     2,   381,   381,   381,   381,   381,     2,     2,     2,
+     2,     2,     2,     2,   626,   987,     2,   987,   987,   987,
+   629,   987,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,   631,     2,     2,     2,   633,     2,
+     2,   634,     2,     2,     2,   406,   635,   407,   643,   644,
+   647,   649,   406,   987,   407,   653,   654,   406,   656,   407,
+   696,   406,   987,   407,     2,   699,   701,     2,   520,   706,
+     2,     2,   719,   725,     2,   733,     2,   734,   736,   406,
+     2,   407,   759,   762,   520,   520,   763,   768,     2,   774,
+   776,   778,   780,     2,     2,     2,     2,     2,     2,   789,
+   520,   791,     2,     2,   520,   520,   520,   520,   794,   406,
+     2,   407,   797,     2,     2,     2,   798,     2,     2,   801,
+   825,     2,     2,    37,    37,    37,    37,    37,    37,   826,
+   828,   846,    37,    37,   852,   853,   865,    37,   859,    37,
+    37,    37,    37,    37,    37,    37,   566,   566,   566,   566,
+   566,    37,    37,    37,    37,    37,    37,    37,   868,   872,
+    37,   528,   874,   885,   887,   895,    37,    37,    37,    37,
+    37,    37,    37,    37,    37,    37,    37,    37,   911,    37,
+    37,    37,   913,    37,    37,   919,    37,    37,    37,   865,
+   920,   924,   925,   528,   926,   929,   865,   528,   528,   528,
+   528,   865,   948,   949,   956,   865,   967,   968,    37,   971,
+   973,    37,   974,   976,    37,    37,   978,   980,    37,   981,
+    37,   983,   986,   865,    37,   988,   993,   988,   988,   988,
+   999,   988,    37,  1008,  1010,  1017,  1018,    37,    37,    37,
+    37,    37,    37,  1024,  1025,  1035,    37,    37,  1036,  1037,
+  1038,  1046,  1047,   865,    37,  1048,  1052,    37,    37,    37,
+  1053,    37,    37,   988,  1058,    37,    37,   225,   225,   225,
+   225,   225,   225,  1064,  1065,  1067,   225,   225,  1068,  1069,
+  1071,   225,  1072,   225,   225,   225,   225,   225,   225,   225,
+    24,  1073,  1100,  1101,  1120,   225,   225,   225,   225,   225,
+   225,   225,  1121,  1122,   225,  1122,  1122,  1122,  1129,  1122,
+   225,   225,   225,   225,   225,   225,   225,   225,   225,   225,
+   225,   225,  1136,   225,   225,   225,  1138,   225,   225,  1154,
+   225,   225,   225,    24,    24,    24,    24,    24,    24,    24,
+    24,    24,    24,    24,  1157,    24,    24,  1159,  1164,    24,
+    24,  1167,   225,  1168,    24,   225,  1169,  1170,   225,   225,
+  1182,  1192,   225,  1194,   225,    24,  1197,    24,   225,    24,
+    24,    24,    24,    24,    24,    24,   225,    24,  1198,  1199,
+  1200,   225,   225,   225,   225,   225,   225,  1202,  1208,  1218,
+   225,   225,  1224,    24,  1228,  1242,  1243,  1245,   225,  1250,
+  1255,   225,   225,   225,  1256,   225,   225,  1257,  1258,   225,
+   225,   250,   250,   250,   250,   250,   250,  1264,  1270,   nil,
+   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,   470,   250,   250,   250,   250,   250,   250,
+   250,   250,   250,   250,   250,   250,   nil,   250,   250,   250,
+   nil,   250,   250,   nil,   250,   250,   250,   470,   470,   470,
+   470,   470,   470,   470,   470,   470,   470,   470,   nil,   470,
+   470,   nil,   nil,   470,   470,   nil,   250,   nil,   nil,   250,
+   nil,   nil,   250,   250,   nil,   nil,   250,   nil,   250,   470,
+   nil,   470,   250,   470,   470,   470,   470,   470,   470,   470,
+   250,   470,   nil,   nil,   nil,   250,   250,   250,   250,   250,
+   250,   nil,   nil,   nil,   250,   250,   nil,   470,   nil,   470,
+   nil,   nil,   250,   nil,   nil,   250,   250,   250,   nil,   250,
+   250,   nil,   nil,   250,   250,   337,   337,   337,   337,   337,
+   337,   nil,   nil,   nil,   337,   337,   nil,   nil,   nil,   337,
+   nil,   337,   337,   337,   337,   337,   337,   337,   nil,   nil,
+   nil,   nil,   nil,   337,   337,   337,   337,   337,   337,   337,
+   nil,   nil,   337,   nil,   nil,   nil,   nil,   476,   337,   337,
+   337,   337,   337,   337,   337,   337,   337,   337,   337,   337,
+   nil,   337,   337,   337,   nil,   337,   337,   nil,   337,   337,
+   337,   476,   476,   476,   476,   476,   476,   476,   476,   476,
+   476,   476,   nil,   476,   476,   nil,   nil,   476,   476,   nil,
+   337,   nil,   nil,   337,   nil,   nil,   337,   337,   nil,   nil,
+   337,   nil,   337,   476,   nil,   476,   337,   476,   476,   476,
+   476,   476,   476,   476,   337,   476,   nil,   nil,   nil,   337,
+   337,   337,   337,   337,   337,   nil,   nil,   nil,   337,   337,
+   nil,   476,   nil,   nil,   nil,   nil,   337,   nil,   nil,   337,
+   337,   337,   nil,   337,   337,   nil,   nil,   337,   337,   342,
+   342,   342,   342,   342,   342,   nil,   nil,   nil,   342,   342,
+   nil,   nil,   nil,   342,   nil,   342,   342,   342,   342,   342,
+   342,   342,   nil,   nil,   nil,   nil,   nil,   342,   342,   342,
+   342,   342,   342,   342,   nil,   nil,   342,   nil,   nil,   nil,
+   nil,   803,   342,   342,   342,   342,   342,   342,   342,   342,
+   342,   342,   342,   342,   nil,   342,   342,   342,   nil,   342,
+   342,   nil,   342,   342,   342,   803,   803,   803,   803,   803,
+   803,   803,   803,   803,   803,   803,   nil,   803,   803,   nil,
+   nil,   803,   803,   nil,   342,   nil,   nil,   342,   nil,   nil,
+   342,   342,   nil,   nil,   342,   nil,   342,   803,   nil,   803,
+   342,   803,   803,   803,   803,   803,   803,   803,   342,   803,
+   nil,   nil,   nil,   342,   342,   342,   342,   342,   342,   nil,
+   nil,   nil,   342,   342,   nil,   803,   nil,   nil,   nil,   nil,
+   342,   nil,   nil,   342,   342,   342,   nil,   342,   342,   nil,
+   nil,   342,   342,   373,   373,   373,   373,   373,   373,   nil,
+   nil,   nil,   373,   373,   nil,   nil,   nil,   373,   nil,   373,
+   373,   373,   373,   373,   373,   373,   nil,   nil,   nil,   nil,
+   nil,   373,   373,   373,   373,   373,   373,   373,   nil,   nil,
+   373,   nil,   nil,   nil,   nil,   836,   373,   373,   373,   373,
+   373,   373,   373,   373,   373,   373,   373,   373,   nil,   373,
+   373,   373,   nil,   373,   373,   nil,   373,   373,   373,   836,
+   836,   836,   836,   836,   836,   836,   836,   836,   836,   836,
+   nil,   836,   836,   nil,   nil,   836,   836,   nil,   373,   nil,
+   nil,   373,   nil,   nil,   373,   373,   nil,   nil,   373,   nil,
+   373,   836,   nil,   836,   373,   836,   836,   836,   836,   836,
+   836,   836,   373,   836,   nil,   nil,   nil,   373,   373,   373,
+   373,   373,   373,   nil,   nil,   nil,   373,   373,   nil,   836,
+   nil,   nil,   nil,   nil,   373,   nil,   nil,   373,   373,   373,
+   nil,   373,   373,   nil,   nil,   373,   373,   379,   379,   379,
+   379,   379,   379,   nil,   nil,   nil,   379,   379,   nil,   nil,
+   nil,   379,   nil,   379,   379,   379,   379,   379,   379,   379,
+   nil,   nil,   nil,   nil,   nil,   379,   379,   379,   379,   379,
+   379,   379,   nil,  1227,   379,  1227,  1227,  1227,   nil,  1227,
+   379,   379,   379,   379,   379,   379,   379,   379,   379,   379,
+   379,   379,   nil,   379,   379,   379,   nil,   379,   379,   nil,
+   379,   379,   379,   316,   316,   316,   316,   316,   316,   316,
+   316,   316,   316,   316,   nil,   316,   316,   nil,   nil,   316,
+   316,   nil,   379,   nil,   nil,   379,   nil,   nil,   379,   379,
+   nil,   nil,   379,   nil,   379,   316,   nil,   316,   379,   316,
+   316,   316,   316,   316,   316,   316,   379,   316,   nil,   nil,
+   nil,   379,   379,   379,   379,   379,   379,   nil,   nil,   nil,
+   379,   379,   nil,   316,   nil,   nil,   nil,   nil,   379,   nil,
+   nil,   379,   379,   379,   nil,   379,   379,   nil,   nil,   379,
+   379,   380,   380,   380,   380,   380,   380,   nil,   nil,   nil,
+   380,   380,   nil,   nil,   nil,   380,   nil,   380,   380,   380,
+   380,   380,   380,   380,   nil,   nil,   nil,   nil,   nil,   380,
+   380,   380,   380,   380,   380,   380,   nil,   nil,   380,   nil,
+   nil,   nil,   nil,   nil,   380,   380,   380,   380,   380,   380,
+   380,   380,   380,   380,   380,   380,   nil,   380,   380,   380,
+   nil,   380,   380,   nil,   380,   380,   380,   531,   531,   531,
+   531,   531,   531,   531,   531,   531,   531,   531,   nil,   531,
+   531,   nil,   nil,   531,   531,   nil,   380,   nil,   nil,   380,
+   nil,   nil,   380,   380,   nil,   nil,   380,   nil,   380,   531,
+   nil,   531,   380,   531,   531,   531,   531,   531,   531,   531,
+   380,   531,   nil,   nil,   nil,   380,   380,   380,   380,   380,
+   380,   nil,   nil,   nil,   380,   380,   531,   531,   nil,   nil,
+   nil,   nil,   380,   nil,   nil,   380,   380,   380,   nil,   380,
+   380,   nil,   nil,   380,   380,   393,   393,   393,   393,   393,
+   393,   nil,   nil,   nil,   393,   393,   nil,   nil,   nil,   393,
+   nil,   393,   393,   393,   393,   393,   393,   393,   nil,   nil,
+   nil,   nil,   nil,   393,   393,   393,   393,   393,   393,   393,
+   nil,   nil,   393,   nil,   nil,   nil,   nil,   nil,   393,   393,
+   393,   393,   393,   393,   393,   393,   393,   393,   393,   393,
+   nil,   393,   393,   393,   nil,   393,   393,   nil,   393,   393,
+   393,   590,   590,   590,   590,   590,   590,   590,   590,   590,
+   590,   590,   nil,   590,   590,   nil,   nil,   590,   590,   nil,
+   393,   nil,   nil,   393,   nil,   nil,   393,   393,   nil,   nil,
+   393,   nil,   393,   590,   nil,   590,   393,   590,   590,   590,
+   590,   590,   590,   590,   393,   590,   nil,   nil,   nil,   393,
+   393,   393,   393,   393,   393,   nil,   nil,   nil,   393,   393,
+   nil,   590,   nil,   nil,   nil,   nil,   393,   nil,   nil,   393,
+   393,   393,   nil,   393,   393,   nil,   nil,   393,   393,   394,
+   394,   394,   394,   394,   394,   nil,   nil,   nil,   394,   394,
+   nil,   nil,   nil,   394,   nil,   394,   394,   394,   394,   394,
+   394,   394,   nil,   nil,   nil,   nil,   nil,   394,   394,   394,
+   394,   394,   394,   394,   nil,   nil,   394,   nil,   nil,   nil,
+   nil,   nil,   394,   394,   394,   394,   394,   394,   394,   394,
+   394,   394,   394,   394,   nil,   394,   394,   394,   nil,   394,
+   394,   nil,   394,   394,   394,   893,   893,   893,   893,   893,
+   893,   893,   893,   893,   893,   893,   nil,   893,   893,   nil,
+   nil,   893,   893,   nil,   394,   nil,   nil,   394,   nil,   nil,
+   394,   394,   nil,   nil,   394,   nil,   394,   893,   nil,   893,
+   394,   893,   893,   893,   893,   893,   893,   893,   394,   893,
+   nil,   nil,   nil,   394,   394,   394,   394,   394,   394,   nil,
+   nil,   nil,   394,   394,   nil,   893,   nil,   nil,   nil,   nil,
+   394,   nil,   nil,   394,   394,   394,   nil,   394,   394,   nil,
+   nil,   394,   394,   449,   449,   449,   449,   449,   449,   nil,
+   nil,   nil,   449,   449,   nil,   nil,   nil,   449,   nil,   449,
+   449,   449,   449,   449,   449,   449,   nil,   nil,   nil,   nil,
+   nil,   449,   449,   449,   449,   449,   449,   449,   nil,   nil,
+   449,   nil,   nil,   nil,   nil,   nil,   449,   449,   449,   449,
+   449,   449,   449,   449,   449,   449,   449,   449,   nil,   449,
+   449,   449,   nil,   449,   449,   nil,   449,   449,   449,  1063,
+  1063,  1063,  1063,  1063,  1063,  1063,  1063,  1063,  1063,  1063,
+   nil,  1063,  1063,   nil,   nil,  1063,  1063,   nil,   449,   nil,
+   nil,   449,   nil,   nil,   449,   449,   nil,   nil,   449,   nil,
+   449,  1063,   nil,  1063,   449,  1063,  1063,  1063,  1063,  1063,
+  1063,  1063,   449,  1063,   nil,   nil,   nil,   449,   449,   449,
+   449,   449,   449,   nil,   nil,   nil,   449,   449,   nil,  1063,
+   nil,   nil,   nil,   nil,   449,   nil,   nil,   449,   449,   449,
+   nil,   449,   449,   nil,   nil,   449,   449,   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,  1081,  1081,  1081,  1081,  1081,  1081,  1081,
+  1081,  1081,  1081,  1081,   nil,  1081,  1081,   nil,   nil,  1081,
+  1081,   nil,   648,   nil,   nil,   648,   nil,   nil,   648,   648,
+   nil,   nil,   648,   nil,   648,  1081,   nil,  1081,   648,  1081,
+  1081,  1081,  1081,  1081,  1081,  1081,   648,  1081,   nil,   nil,
+   nil,   648,   648,   648,   648,   648,   648,   nil,   nil,   nil,
+   648,   648,   nil,  1081,   nil,   nil,   nil,   nil,   648,   nil,
+   nil,   648,   648,   648,   nil,   648,   648,   nil,   nil,   648,
+   648,   651,   651,   651,   651,   651,   651,   nil,   nil,   nil,
+   651,   651,   nil,   nil,   nil,   651,   nil,   651,   651,   651,
+   651,   651,   651,   651,   nil,   nil,   nil,   nil,   nil,   651,
+   651,   651,   651,   651,   651,   651,   nil,   nil,   651,   nil,
+   nil,   nil,   nil,   nil,   651,   651,   651,   651,   651,   651,
+   651,   651,   651,   651,   651,   651,   nil,   651,   651,   651,
+   nil,   651,   651,   nil,   651,   651,   651,  1102,  1102,  1102,
+  1102,  1102,  1102,  1102,  1102,  1102,  1102,  1102,   nil,  1102,
+  1102,   nil,   nil,  1102,  1102,   nil,   651,   nil,   nil,   651,
+   nil,   nil,   651,   651,   nil,   nil,   651,   nil,   651,  1102,
+   nil,  1102,   651,  1102,  1102,  1102,  1102,  1102,  1102,  1102,
+   651,  1102,   nil,   nil,   nil,   651,   651,   651,   651,   651,
+   651,   nil,   nil,   nil,   651,   651,   nil,  1102,   nil,   nil,
+   nil,   nil,   651,   nil,   nil,   651,   651,   651,   nil,   651,
+   651,   nil,   nil,   651,   651,   674,   674,   674,   674,   674,
+   674,   nil,   nil,   nil,   674,   674,   nil,   nil,   nil,   674,
+   nil,   674,   674,   674,   674,   674,   674,   674,   nil,   nil,
+   nil,   nil,   nil,   674,   674,   674,   674,   674,   674,   674,
+   nil,   nil,   674,   nil,   nil,   nil,   nil,   nil,   674,   674,
+   674,   674,   674,   674,   674,   674,   674,   674,   674,   674,
+   nil,   674,   674,   674,   nil,   674,   674,   nil,   674,   674,
+   674,   364,   364,   364,   364,   364,   364,   364,   364,   364,
+   364,   364,   nil,   364,   364,   nil,   nil,   364,   364,   nil,
+   674,   nil,   nil,   674,   nil,   nil,   674,   674,   nil,   nil,
+   674,   nil,   674,   364,   nil,   364,   674,   364,   364,   364,
+   364,   364,   364,   364,   674,   364,   nil,   nil,   nil,   674,
+   674,   674,   674,   674,   674,   nil,   nil,   nil,   674,   674,
+   nil,   nil,   nil,   nil,   nil,   nil,   674,   nil,   nil,   674,
+   674,   674,   nil,   674,   674,   nil,   nil,   674,   674,   864,
+   864,   864,   864,   864,   864,   nil,   nil,   nil,   864,   864,
+   nil,   nil,   nil,   864,   nil,   864,   864,   864,   864,   864,
+   864,   864,   nil,   nil,   nil,   nil,   nil,   864,   864,   864,
+   864,   864,   864,   864,   nil,   nil,   864,   nil,   nil,   nil,
+   nil,   nil,   864,   864,   864,   864,   864,   864,   864,   864,
+   864,   864,   864,   864,   nil,   864,   864,   864,   nil,   864,
+   864,   nil,   864,   864,   864,   365,   365,   365,   365,   365,
+   365,   365,   365,   365,   365,   365,   nil,   365,   365,   nil,
+   nil,   365,   365,   nil,   864,   nil,   nil,   864,   nil,   nil,
+   864,   864,   nil,   nil,   864,   nil,   864,   365,   nil,   365,
+   864,   365,   365,   365,   365,   365,   365,   365,   864,   365,
+   nil,   nil,   nil,   864,   864,   864,   864,   864,   864,   nil,
+   nil,   nil,   864,   864,   nil,   nil,   nil,   nil,   nil,   nil,
+   864,   nil,   nil,   864,   864,   864,   nil,   864,   864,   nil,
+   nil,   864,   864,   869,   869,   869,   869,   869,   869,   nil,
+   nil,   nil,   869,   869,   nil,   nil,   nil,   869,   nil,   869,
+   869,   869,   869,   869,   869,   869,   nil,   nil,   nil,   nil,
+   nil,   869,   869,   869,   869,   869,   869,   869,   nil,   nil,
+   869,   nil,   nil,   nil,   nil,   nil,   869,   869,   869,   869,
+   869,   869,   869,   869,   869,   869,   869,   869,   nil,   869,
+   869,   869,   nil,   869,   869,   nil,   869,   869,   869,   510,
+   510,   510,   510,   510,   510,   510,   510,   510,   510,   510,
+   nil,   510,   510,   nil,   nil,   510,   510,   nil,   869,   nil,
+   nil,   869,   nil,   nil,   869,   869,   nil,   nil,   869,   nil,
+   869,   510,   nil,   510,   869,   510,   510,   510,   510,   510,
+   510,   510,   869,   510,   nil,   nil,   nil,   869,   869,   869,
+   869,   869,   869,   nil,   nil,   nil,   869,   869,   nil,   nil,
+   nil,   nil,   nil,   nil,   869,   nil,   nil,   869,   869,   869,
+   nil,   869,   869,   nil,   nil,   869,   869,   876,   876,   876,
+   876,   876,   876,   nil,   nil,   nil,   876,   876,   nil,   nil,
+   nil,   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,
+   876,   876,   876,   876,   876,   876,   876,   876,   876,   876,
+   876,   876,   nil,   876,   876,   876,   nil,   876,   876,   nil,
+   876,   876,   876,   511,   511,   511,   511,   511,   511,   511,
+   511,   511,   511,   511,   nil,   511,   511,   nil,   nil,   511,
+   511,   nil,   876,   nil,   nil,   876,   nil,   nil,   876,   876,
+   nil,   nil,   876,   nil,   876,   511,   nil,   511,   876,   511,
+   511,   511,   511,   511,   511,   511,   876,   511,   nil,   nil,
+   nil,   876,   876,   876,   876,   876,   876,   nil,   nil,   nil,
+   876,   876,   nil,   nil,   nil,   nil,   nil,   nil,   876,   nil,
+   nil,   876,   876,   876,   nil,   876,   876,   nil,   nil,   876,
+   876,   945,   945,   945,   945,   945,   945,   nil,   nil,   nil,
+   945,   945,   nil,   nil,   nil,   945,   nil,   945,   945,   945,
+   945,   945,   945,   945,   nil,   nil,   nil,   nil,   nil,   945,
+   945,   945,   945,   945,   945,   945,   nil,  1171,   945,  1171,
+  1171,  1171,   nil,  1171,   945,   945,   945,   945,   945,   945,
+   945,   945,   945,   945,   945,   945,   nil,   945,   945,   945,
+   nil,   945,   945,   nil,   945,   945,   945,   521,   521,   521,
+   521,   521,   521,   521,   nil,  1171,   521,   521,   nil,   nil,
+   nil,   nil,   nil,   521,   521,   nil,   945,   nil,   nil,   945,
+   nil,   nil,   945,   945,   nil,   nil,   945,   nil,   945,   521,
+   nil,   521,   945,   521,   521,   521,   521,   521,   521,   521,
+   945,   521,   nil,   nil,   nil,   945,   945,   945,   945,   945,
+   945,   nil,   nil,   nil,   945,   945,   nil,   nil,   nil,   nil,
+   nil,   nil,   945,   nil,   nil,   945,   945,   945,   nil,   945,
+   945,   nil,   nil,   945,   945,   965,   965,   965,   965,   965,
+   965,   nil,   nil,   nil,   965,   965,   nil,   nil,   nil,   965,
+   nil,   965,   965,   965,   965,   965,   965,   965,   nil,   nil,
+   nil,   nil,   nil,   965,   965,   965,   965,   965,   965,   965,
+   nil,  1172,   965,  1172,  1172,  1172,   nil,  1172,   965,   965,
+   965,   965,   965,   965,   965,   965,   965,   965,   965,   965,
+   nil,   965,   965,   965,   nil,   965,   965,   nil,   965,   965,
+   965,   522,   522,   522,   522,   522,   522,   522,   nil,  1172,
+   522,   522,   nil,   nil,   nil,   nil,   nil,   522,   522,   nil,
+   965,   nil,   nil,   965,   nil,   nil,   965,   965,   nil,   nil,
+   965,   nil,   965,   522,   nil,   522,   965,   522,   522,   522,
+   522,   522,   522,   522,   965,   522,   nil,   nil,   nil,   965,
+   965,   965,   965,   965,   965,   nil,   nil,   nil,   965,   965,
+   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,   nil,   965,
+   965,   965,   nil,   965,   965,   nil,   nil,   965,   965,   998,
+   998,   998,   998,   998,   998,   nil,   nil,   nil,   998,   998,
+   nil,   nil,   nil,   998,   nil,   998,   998,   998,   998,   998,
+   998,   998,   nil,   nil,   nil,   nil,   nil,   998,   998,   998,
+   998,   998,   998,   998,   nil,   nil,   998,   nil,   nil,   nil,
+   nil,   nil,   998,   998,   998,   998,   998,   998,   998,   998,
+   998,   998,   998,   998,   nil,   998,   998,   998,   nil,   998,
+   998,   nil,   998,   998,   998,   523,   523,   523,   523,   523,
+   523,   523,   nil,   nil,   523,   523,   nil,   nil,   nil,   nil,
+   nil,   523,   523,   nil,   998,   nil,   nil,   998,   nil,   nil,
+   998,   998,   nil,   nil,   998,   nil,   998,   523,   nil,   523,
+   998,   523,   523,   523,   523,   523,   523,   523,   998,   523,
+   nil,   nil,   nil,   998,   998,   998,   998,   998,   998,   nil,
+   nil,   nil,   998,   998,   nil,   nil,   nil,   nil,   nil,   nil,
+   998,   nil,   nil,   998,   998,   998,   nil,   998,   998,   nil,
+   nil,   998,   998,  1006,  1006,  1006,  1006,  1006,  1006,   nil,
+   nil,   nil,  1006,  1006,   nil,   nil,   nil,  1006,   nil,  1006,
+  1006,  1006,  1006,  1006,  1006,  1006,   nil,   nil,   nil,   nil,
+   nil,  1006,  1006,  1006,  1006,  1006,  1006,  1006,   nil,   nil,
+  1006,   nil,   nil,   nil,   nil,   nil,  1006,  1006,  1006,  1006,
+  1006,  1006,  1006,  1006,  1006,  1006,  1006,  1006,   nil,  1006,
+  1006,  1006,   nil,  1006,  1006,   nil,  1006,  1006,  1006,   524,
+   524,   524,   524,   524,   524,   524,   nil,   nil,   524,   524,
+   nil,   nil,   nil,   nil,   nil,   524,   524,   nil,  1006,   nil,
+   nil,  1006,   nil,   nil,  1006,  1006,   nil,   nil,  1006,   nil,
+  1006,   524,   nil,   524,  1006,   524,   524,   524,   524,   524,
+   524,   524,  1006,   524,   nil,   nil,   nil,  1006,  1006,  1006,
+  1006,  1006,  1006,   nil,   nil,   nil,  1006,  1006,   nil,   nil,
+   nil,   nil,   nil,   nil,  1006,   nil,   nil,  1006,  1006,  1006,
+   nil,  1006,  1006,   nil,   nil,  1006,  1006,  1015,  1015,  1015,
+  1015,  1015,  1015,   nil,   nil,   nil,  1015,  1015,   nil,   nil,
+   nil,  1015,   nil,  1015,  1015,  1015,  1015,  1015,  1015,  1015,
+   nil,   nil,   nil,   nil,   nil,  1015,  1015,  1015,  1015,  1015,
+  1015,  1015,   nil,   nil,  1015,   nil,   nil,   nil,   nil,   nil,
+  1015,  1015,  1015,  1015,  1015,  1015,  1015,  1015,  1015,  1015,
+  1015,  1015,   nil,  1015,  1015,  1015,   nil,  1015,  1015,   nil,
+  1015,  1015,  1015,   525,   525,   525,   525,   525,   525,   525,
+   nil,   nil,   525,   525,   nil,   nil,   nil,   nil,   nil,   525,
+   525,   nil,  1015,   nil,   nil,  1015,   nil,   nil,  1015,  1015,
+   nil,   nil,  1015,   nil,  1015,   525,   nil,   525,  1015,   525,
+   525,   525,   525,   525,   525,   525,  1015,   525,   nil,   nil,
+   nil,  1015,  1015,  1015,  1015,  1015,  1015,   nil,   nil,   nil,
+  1015,  1015,   nil,   nil,   nil,   nil,   nil,   nil,  1015,   nil,
+   nil,  1015,  1015,  1015,   nil,  1015,  1015,   nil,   nil,  1015,
+  1015,  1016,  1016,  1016,  1016,  1016,  1016,   nil,   nil,   nil,
+  1016,  1016,   nil,   nil,   nil,  1016,   nil,  1016,  1016,  1016,
+  1016,  1016,  1016,  1016,   nil,   nil,   nil,   nil,   nil,  1016,
+  1016,  1016,  1016,  1016,  1016,  1016,   nil,   nil,  1016,   nil,
+   nil,   nil,   nil,   nil,  1016,  1016,  1016,  1016,  1016,  1016,
+  1016,  1016,  1016,  1016,  1016,  1016,   nil,  1016,  1016,  1016,
+   nil,  1016,  1016,   nil,  1016,  1016,  1016,   526,   526,   526,
+   526,   526,   526,   526,   nil,   nil,   526,   526,   nil,   nil,
+   nil,   nil,   nil,   526,   526,   nil,  1016,   nil,   nil,  1016,
+   nil,   nil,  1016,  1016,   nil,   nil,  1016,   nil,  1016,   526,
+   nil,   526,  1016,   526,   526,   526,   526,   526,   526,   526,
+  1016,   526,   nil,   nil,   nil,  1016,  1016,  1016,  1016,  1016,
+  1016,   nil,   nil,   nil,  1016,  1016,   nil,   nil,   nil,   nil,
+   nil,   nil,  1016,   nil,   nil,  1016,  1016,  1016,   nil,  1016,
+  1016,   nil,   nil,  1016,  1016,  1080,  1080,  1080,  1080,  1080,
+  1080,   nil,   nil,   nil,  1080,  1080,   nil,   nil,   nil,  1080,
+   nil,  1080,  1080,  1080,  1080,  1080,  1080,  1080,   nil,   nil,
+   nil,   nil,   nil,  1080,  1080,  1080,  1080,  1080,  1080,  1080,
+   nil,   nil,  1080,   nil,   nil,   nil,   nil,   nil,  1080,  1080,
+  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,
+   nil,  1080,  1080,  1080,   nil,  1080,  1080,   nil,  1080,  1080,
+  1080,   529,   529,   529,   529,   529,   529,   529,   nil,   nil,
+   529,   529,   nil,   nil,   nil,   nil,   nil,   529,   529,   nil,
+  1080,   nil,   nil,  1080,   nil,   nil,  1080,  1080,   nil,   nil,
+  1080,   nil,  1080,   529,   nil,   529,  1080,   529,   529,   529,
+   529,   529,   529,   529,  1080,   529,   nil,   nil,   nil,  1080,
+  1080,  1080,  1080,  1080,  1080,   nil,   nil,   nil,  1080,  1080,
+   nil,   nil,   nil,   nil,   nil,   nil,  1080,   nil,   nil,  1080,
+  1080,  1080,   nil,  1080,  1080,   nil,   nil,  1080,  1080,  1082,
+  1082,  1082,  1082,  1082,  1082,   nil,   nil,   nil,  1082,  1082,
+   nil,   nil,   nil,  1082,   nil,  1082,  1082,  1082,  1082,  1082,
+  1082,  1082,   nil,   nil,   nil,   nil,   nil,  1082,  1082,  1082,
+  1082,  1082,  1082,  1082,   nil,   nil,  1082,   nil,   nil,   nil,
+   nil,   nil,  1082,  1082,  1082,  1082,  1082,  1082,  1082,  1082,
+  1082,  1082,  1082,  1082,   nil,  1082,  1082,  1082,   nil,  1082,
+  1082,   nil,  1082,  1082,  1082,   530,   530,   530,   530,   530,
+   530,   530,   530,   nil,   530,   530,   nil,   nil,   nil,   nil,
+   nil,   530,   530,   nil,  1082,   nil,   nil,  1082,   nil,   nil,
+  1082,  1082,   nil,   nil,  1082,   nil,  1082,   530,   nil,   530,
+  1082,   530,   530,   530,   530,   530,   530,   530,  1082,   530,
+   nil,   nil,   nil,  1082,  1082,  1082,  1082,  1082,  1082,   nil,
+   nil,   nil,  1082,  1082,   nil,   nil,   nil,   nil,   nil,   nil,
+  1082,   nil,   nil,  1082,  1082,  1082,   nil,  1082,  1082,   nil,
+   nil,  1082,  1082,  1119,  1119,  1119,  1119,  1119,  1119,   nil,
+   nil,   nil,  1119,  1119,   nil,   nil,   nil,  1119,   nil,  1119,
+  1119,  1119,  1119,  1119,  1119,  1119,   nil,   nil,   nil,   nil,
+   nil,  1119,  1119,  1119,  1119,  1119,  1119,  1119,   nil,   nil,
+  1119,   nil,   nil,   nil,   nil,   nil,  1119,  1119,  1119,  1119,
+  1119,  1119,  1119,  1119,  1119,  1119,  1119,  1119,   nil,  1119,
+  1119,  1119,   nil,  1119,  1119,   nil,  1119,  1119,  1119,   532,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   532,   532,   nil,  1119,   nil,
+   nil,  1119,   nil,   nil,  1119,  1119,   nil,   nil,  1119,   nil,
+  1119,   532,   nil,   532,  1119,   532,   532,   532,   532,   nil,
+   nil,   532,  1119,   532,   nil,   nil,   nil,  1119,  1119,  1119,
+  1119,  1119,  1119,   nil,   nil,   nil,  1119,  1119,   nil,   nil,
+   nil,   nil,   nil,   nil,  1119,   nil,   nil,  1119,  1119,  1119,
+   nil,  1119,  1119,   nil,   nil,  1119,  1119,  1160,  1160,  1160,
+  1160,  1160,  1160,   nil,   nil,   nil,  1160,  1160,   nil,   nil,
+   nil,  1160,   nil,  1160,  1160,  1160,  1160,  1160,  1160,  1160,
+   nil,   nil,   nil,   nil,   nil,  1160,  1160,  1160,  1160,  1160,
+  1160,  1160,   nil,   nil,  1160,   nil,   nil,   nil,   nil,   nil,
+  1160,  1160,  1160,  1160,  1160,  1160,  1160,  1160,  1160,  1160,
+  1160,  1160,   nil,  1160,  1160,  1160,   nil,  1160,  1160,   nil,
+  1160,  1160,  1160,   589,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   589,
+   589,   nil,  1160,   nil,   nil,  1160,   nil,   nil,  1160,  1160,
+   nil,   nil,  1160,   nil,  1160,   589,   nil,   589,  1160,   589,
+   589,   589,   589,   nil,   nil,   589,  1160,   589,   nil,   nil,
+   nil,  1160,  1160,  1160,  1160,  1160,  1160,   nil,   nil,   nil,
+  1160,  1160,   nil,   nil,   nil,   nil,   nil,   nil,  1160,   nil,
+   nil,  1160,  1160,  1160,   nil,  1160,  1160,   nil,   nil,  1160,
+  1160,  1173,  1173,  1173,  1173,  1173,  1173,   nil,   nil,   nil,
+  1173,  1173,   nil,   nil,   nil,  1173,   nil,  1173,  1173,  1173,
+  1173,  1173,  1173,  1173,   nil,   nil,   nil,   nil,   nil,  1173,
+  1173,  1173,  1173,  1173,  1173,  1173,   nil,   nil,  1173,   nil,
+   nil,   nil,   nil,   nil,  1173,  1173,  1173,  1173,  1173,  1173,
+  1173,  1173,  1173,  1173,  1173,  1173,   nil,  1173,  1173,  1173,
+   nil,  1173,  1173,   nil,  1173,  1173,  1173,   518,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   518,   518,   nil,  1173,   nil,   nil,  1173,
+   nil,   nil,  1173,  1173,   nil,   nil,  1173,   nil,  1173,   518,
+   nil,   518,  1173,   518,   518,   518,   518,   nil,   nil,   nil,
+  1173,   nil,   nil,   nil,   nil,  1173,  1173,  1173,  1173,  1173,
+  1173,   nil,   nil,   nil,  1173,  1173,   nil,   nil,   nil,   nil,
+   nil,   nil,  1173,   nil,   nil,  1173,  1173,  1173,   nil,  1173,
+  1173,   nil,   nil,  1173,  1173,  1220,  1220,  1220,  1220,  1220,
+  1220,   nil,   nil,   nil,  1220,  1220,   nil,   nil,   nil,  1220,
+   nil,  1220,  1220,  1220,  1220,  1220,  1220,  1220,   nil,   nil,
+   nil,   nil,   nil,  1220,  1220,  1220,  1220,  1220,  1220,  1220,
+   nil,   nil,  1220,   nil,   nil,   nil,   nil,   nil,  1220,  1220,
+  1220,  1220,  1220,  1220,  1220,  1220,  1220,  1220,  1220,  1220,
+   nil,  1220,  1220,  1220,   nil,  1220,  1220,   nil,  1220,  1220,
+  1220,   519,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   519,   519,   nil,
+  1220,   nil,   nil,  1220,   nil,   nil,  1220,  1220,   nil,   nil,
+  1220,   nil,  1220,   519,   nil,   519,  1220,   519,   519,   519,
+   519,   nil,   nil,   nil,  1220,   nil,   nil,   nil,   nil,  1220,
+  1220,  1220,  1220,  1220,  1220,   nil,   nil,   nil,  1220,  1220,
+   nil,   nil,   nil,   nil,   nil,   nil,  1220,   nil,   nil,  1220,
+  1220,  1220,   nil,  1220,  1220,   nil,   nil,  1220,  1220,     8,
+     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
+   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
+     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
+   nil,     8,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
+     8,   nil,   nil,     8,   nil,     8,   nil,   nil,   nil,     8,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
+   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
+   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
+   nil,   nil,     8,     8,     8,   nil,     8,     8,   nil,   nil,
+     8,     8,    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,   nil,    23,
+    23,    23,    23,    23,    23,    23,   nil,   nil,    23,   nil,
+   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,    23,    23,
+    23,    23,    23,    23,    23,    23,   nil,    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,   nil,   nil,
+   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,    23,   nil,   nil,    23,    23,    23,    31,    23,
+    23,   nil,   nil,    23,    23,    31,    31,    31,   nil,   nil,
+    31,    31,    31,   835,    31,   835,   835,   835,   835,   835,
+   nil,   nil,    31,    31,    31,    31,   nil,   nil,   nil,   835,
+   nil,   nil,   nil,   nil,    31,    31,   nil,    31,    31,    31,
+    31,    31,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   835,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   835,   835,   835,   835,   nil,    31,    31,    31,    31,    31,
+    31,    31,    31,    31,    31,    31,    31,    31,    31,   nil,
+   nil,    31,    31,    31,   nil,   nil,    31,   nil,    31,    31,
+   nil,   nil,    31,    31,   nil,    31,   835,    31,   nil,    31,
+   nil,    31,    31,    31,    31,    31,    31,    31,   nil,    31,
+    31,    31,   943,   nil,   943,   943,   943,   943,   943,   nil,
+   nil,   nil,   nil,   nil,    31,    31,   nil,    31,   943,    31,
+    32,   nil,   nil,   nil,   nil,   nil,    31,    32,    32,    32,
+    31,   nil,    32,    32,    32,   nil,    32,   nil,   nil,   nil,
+   943,   nil,   nil,   nil,    32,   nil,    32,    32,   nil,   943,
+   943,   943,   943,   nil,   nil,   nil,    32,    32,   nil,    32,
+    32,    32,    32,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   943,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   943,   nil,    32,    32,    32,
+    32,    32,    32,    32,    32,    32,    32,    32,    32,    32,
+    32,   nil,   nil,    32,    32,    32,   nil,   nil,    32,   nil,
+    32,    32,   nil,   nil,    32,    32,   nil,    32,   nil,    32,
+   nil,    32,   nil,    32,    32,    32,    32,    32,    32,    32,
+   nil,    32,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,   nil,    32,
+   nil,    32,    33,    33,    33,   nil,    33,   nil,    32,   nil,
+    33,    33,    32,   nil,   nil,    33,   nil,    33,    33,    33,
+    33,    33,    33,    33,   nil,   nil,   nil,   nil,   nil,    33,
+    33,    33,    33,    33,    33,    33,   nil,   nil,    33,   nil,
+   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,    33,    33,
+    33,    33,    33,    33,    33,    33,    33,    33,    33,    33,
+   nil,    33,    33,   nil,    33,    33,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,    33,
+   nil,   nil,    33,    33,   nil,   nil,    33,   nil,    33,   nil,
+    33,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,   nil,   nil,   nil,    33,    33,    33,    33,    33,
+    33,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,   nil,
+   nil,   nil,    33,   nil,    33,    33,    33,    33,   nil,    33,
+    33,   nil,   nil,    33,    33,    34,    34,    34,   nil,    34,
+   nil,   nil,   nil,    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,    34,
+    34,    34,    34,   nil,    34,    34,   nil,    34,    34,    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,    34,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,    34,
+    34,    34,    34,    34,   nil,   nil,   nil,    34,    34,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,    34,    34,
+    34,   nil,    34,    34,   nil,   nil,    34,    34,    35,    35,
+    35,   nil,    35,   nil,   nil,   nil,    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,    35,    35,    35,    35,   nil,    35,    35,   nil,
+    35,    35,    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,    35,   nil,    35,   nil,    35,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,
+   nil,    35,    35,    35,    35,    35,    35,   nil,   nil,   nil,
+    35,    35,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,
+    35,    35,    35,    35,   nil,    35,    35,   nil,   nil,    35,
+    35,    45,    45,    45,   nil,    45,   nil,   nil,   nil,    45,
+    45,   nil,   nil,   nil,    45,   nil,    45,    45,    45,    45,
+    45,    45,    45,   nil,   nil,   nil,   nil,   nil,    45,    45,
+    45,    45,    45,    45,    45,   nil,   nil,    45,   nil,   nil,
+   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,    45,    45,
+    45,    45,    45,    45,    45,   nil,    45,    45,    45,   nil,
+    45,    45,   nil,    45,    45,    45,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,    45,   nil,
+   nil,    45,    45,   nil,   nil,    45,   nil,   nil,   nil,   nil,
+   nil,    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    45,
+   nil,   nil,   nil,   nil,    45,    45,    45,    45,    45,    45,
+   nil,   nil,   nil,    45,    45,   nil,   nil,   nil,   nil,   nil,
+   nil,    45,   nil,   nil,    45,    45,    45,   nil,    45,    45,
+   nil,   nil,    45,    45,    46,    46,    46,   nil,    46,   nil,
+   nil,   nil,    46,    46,   nil,   nil,   nil,    46,   nil,    46,
+    46,    46,    46,    46,    46,    46,   nil,   nil,   nil,   nil,
+   nil,    46,    46,    46,    46,    46,    46,    46,   nil,   nil,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
+    46,    46,    46,    46,    46,    46,    46,    46,   nil,    46,
+    46,    46,   nil,    46,    46,   nil,    46,    46,    46,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,
+   nil,    46,   nil,   nil,    46,    46,   nil,   nil,    46,   nil,
+   nil,   nil,   nil,   nil,    46,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    46,   nil,   nil,   nil,   nil,    46,    46,    46,
+    46,    46,    46,   nil,   nil,   nil,    46,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,    46,   nil,   nil,    46,    46,    46,
+   nil,    46,    46,   nil,   nil,    46,    46,    48,    48,    48,
+   nil,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,   nil,
+    48,   nil,    48,    48,    48,    48,    48,    48,    48,   nil,
+   nil,   nil,   nil,   nil,    48,    48,    48,    48,    48,    48,
+    48,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,   nil,
+    48,   nil,   nil,    48,    48,    48,    48,    48,    48,    48,
+    48,   nil,    48,    48,    48,   nil,    48,    48,   nil,    48,
+    48,    48,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    48,   nil,   nil,    48,   nil,   nil,    48,    48,   nil,
+   nil,    48,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,
+    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,    48,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+    48,    48,    48,   nil,    48,    48,   nil,   nil,    48,    48,
+    49,    49,    49,   nil,    49,   nil,   nil,   nil,    49,    49,
+   nil,   nil,   nil,    49,   nil,    49,    49,    49,    49,    49,
+    49,    49,   nil,   nil,   nil,   nil,   nil,    49,    49,    49,
+    49,    49,    49,    49,   nil,   nil,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,    49,   nil,   nil,    49,    49,    49,    49,
+    49,    49,    49,    49,   nil,    49,    49,    49,   nil,    49,
+    49,   nil,    49,    49,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    49,   nil,   nil,    49,   nil,   nil,
+    49,    49,   nil,   nil,    49,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,
+   nil,   nil,   nil,    49,    49,    49,    49,    49,    49,   nil,
+   nil,   nil,    49,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+    49,   nil,   nil,    49,    49,    49,   nil,    49,    49,   nil,
+   nil,    49,    49,    51,    51,    51,   nil,    51,   nil,   nil,
+   nil,    51,    51,   nil,   nil,   nil,    51,   nil,    51,    51,
+    51,    51,    51,    51,    51,   nil,   nil,   nil,   nil,   nil,
+    51,    51,    51,    51,    51,    51,    51,   nil,   nil,    51,
+   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,    51,
+    51,    51,    51,    51,    51,    51,    51,   nil,    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,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    51,   nil,   nil,   nil,   nil,    51,    51,    51,    51,
+    51,    51,   nil,   nil,   nil,    51,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,    51,    51,    51,    65,
+    51,    51,   nil,   nil,    51,    51,    65,    65,    65,   nil,
+   nil,    65,    65,    65,  1090,    65,  1090,  1090,  1090,  1090,
+  1090,   nil,   nil,    65,   nil,    65,    65,    65,   nil,   nil,
+  1090,   747,   747,   747,   747,    65,    65,   nil,    65,    65,
+    65,    65,    65,   nil,   nil,   nil,   nil,   747,   747,   747,
+   nil,   nil,  1090,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   747,   747,   nil,  1090,  1090,   747,    65,    65,    65,    65,
+    65,    65,    65,    65,    65,    65,    65,    65,    65,    65,
+   nil,   nil,    65,    65,    65,   nil,   nil,    65,   nil,   nil,
+    65,   nil,   nil,    65,    65,   nil,    65,  1090,    65,   nil,
+    65,   nil,    65,    65,    65,    65,    65,    65,    65,   nil,
+    65,   nil,    65,   nil,   747,   747,   747,   747,   747,   747,
+   nil,   nil,   nil,   747,   747,    65,    65,    65,    65,   nil,
+    65,   747,    65,   nil,   747,   747,   747,    65,   747,   747,
+   484,    65,    67,    67,    67,    67,    67,   484,   484,   484,
+    67,    67,   484,   484,   484,    67,   484,    67,    67,    67,
+    67,    67,    67,    67,   484,   484,   484,   484,   nil,    67,
+    67,    67,    67,    67,    67,    67,   484,   484,    67,   484,
+   484,   484,   484,   484,    67,    67,   nil,    67,    67,    67,
+    67,    67,    67,    67,    67,    67,   nil,    67,    67,    67,
+   nil,    67,    67,   nil,    67,    67,    67,   484,   484,   484,
+   484,   484,   484,   484,   484,   484,   484,   484,   484,   484,
+   484,   nil,   nil,   484,   484,   484,    67,   nil,   484,    67,
+   484,   484,    67,    67,   484,   484,    67,   484,    67,   484,
+   nil,   484,    67,   484,   484,   484,   484,   484,   484,   484,
+    67,   484,   484,   484,   nil,    67,    67,    67,    67,    67,
+    67,   nil,   nil,   nil,    67,    67,   484,   484,   nil,   484,
+   nil,   484,    67,   nil,   nil,    67,    67,    67,   484,    67,
+    67,   nil,   484,    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,    68,
+    68,    68,    68,   nil,    68,    68,   nil,    68,    68,    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,    68,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,    68,    68,
+    68,    68,    68,    68,   nil,   nil,   nil,    68,    68,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,    68,    68,    68,
+    68,   nil,    68,    68,   nil,   nil,    68,    68,    72,    72,
+    72,   nil,    72,   nil,   nil,   nil,    72,    72,   nil,   nil,
+   nil,    72,   nil,    72,    72,    72,    72,    72,    72,    72,
+   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,    72,
+    72,    72,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,
+   nil,    72,   nil,   nil,    72,    72,    72,    72,    72,    72,
+    72,    72,   nil,    72,    72,    72,   nil,    72,    72,   nil,
+    72,    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    72,   nil,   nil,    72,   nil,   nil,    72,    72,
+   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,   nil,
+   nil,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
+    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,    72,    72,    72,   nil,    72,    72,   nil,   nil,    72,
+    72,    73,    73,    73,   nil,    73,   nil,   nil,   nil,    73,
+    73,   nil,   nil,   nil,    73,   nil,    73,    73,    73,    73,
+    73,    73,    73,   nil,   nil,   nil,   nil,   nil,    73,    73,
+    73,    73,    73,    73,    73,   nil,   nil,    73,   nil,   nil,
+   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
+    73,    73,    73,    73,    73,   nil,    73,    73,    73,   nil,
+    73,    73,   nil,    73,    73,    73,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
+   nil,    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    73,
+   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,    73,
+   nil,   nil,   nil,    73,    73,   nil,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,    73,    73,    73,   nil,    73,    73,
+   nil,   nil,    73,    73,    76,    76,    76,   nil,    76,   nil,
+   nil,   nil,    76,    76,   nil,   nil,   nil,    76,   nil,    76,
+    76,    76,    76,    76,    76,    76,   nil,   nil,   nil,   nil,
+   nil,    76,    76,    76,    76,    76,    76,    76,   nil,   nil,
+    76,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,
+    76,    76,    76,    76,    76,    76,    76,    76,   nil,    76,
+    76,    76,   nil,    76,    76,   nil,    76,    76,    76,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,
+   nil,    76,   nil,   nil,    76,    76,   nil,   nil,    76,   nil,
+   nil,   nil,   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    76,   nil,   nil,   nil,   nil,    76,    76,    76,
+    76,    76,    76,   nil,   nil,   nil,    76,    76,    76,   nil,
+   nil,   nil,   nil,    76,    76,   nil,   nil,    76,    76,    76,
+   nil,    76,    76,   nil,   nil,    76,    76,   132,   132,   132,
+   132,   132,   nil,   nil,   nil,   132,   132,   nil,   nil,   nil,
+   132,   nil,   132,   132,   132,   132,   132,   132,   132,   nil,
+   nil,   nil,   nil,   nil,   132,   132,   132,   132,   132,   132,
+   132,   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,   132,
+   132,   132,   132,   132,   132,   132,   132,   132,   132,   132,
+   132,   nil,   132,   132,   132,   nil,   132,   132,   nil,   132,
+   132,   132,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   132,   nil,   nil,   132,   nil,   nil,   132,   132,   nil,
+   nil,   132,   nil,   132,   nil,   nil,   nil,   132,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   132,   nil,   nil,   nil,   nil,
+   132,   132,   132,   132,   132,   132,   nil,   nil,   nil,   132,
+   132,   nil,   nil,   nil,   nil,   nil,   132,   132,   nil,   nil,
+   132,   132,   132,   nil,   132,   132,   nil,   nil,   132,   132,
+   137,   137,   137,   nil,   137,   nil,   nil,   nil,   137,   137,
+   nil,   nil,   nil,   137,   nil,   137,   137,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   nil,   nil,   137,   137,   137,
+   137,   137,   137,   137,   nil,   nil,   137,   nil,   nil,   nil,
+   nil,   nil,   nil,   137,   nil,   nil,   137,   137,   137,   137,
+   137,   137,   137,   137,   nil,   137,   137,   137,   nil,   137,
+   137,   nil,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,   nil,
+   137,   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,
+   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,
+   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,   nil,
+   nil,   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,
+   137,   nil,   nil,   137,   137,   137,   nil,   137,   137,   nil,
+   nil,   137,   137,   138,   138,   138,   nil,   138,   nil,   nil,
+   nil,   138,   138,   nil,   nil,   nil,   138,   nil,   138,   138,
+   138,   138,   138,   138,   138,   nil,   nil,   nil,   nil,   nil,
+   138,   138,   138,   138,   138,   138,   138,   nil,   nil,   138,
+   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,   138,
+   138,   138,   138,   138,   138,   138,   138,   nil,   138,   138,
+   138,   nil,   138,   138,   nil,   138,   138,   138,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,
+   138,   nil,   nil,   138,   138,   nil,   nil,   138,   nil,   nil,
+   nil,   nil,   nil,   138,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   138,   nil,   nil,   nil,   nil,   138,   138,   138,   138,
+   138,   138,   nil,   nil,   nil,   138,   138,   nil,   nil,   nil,
+   nil,   nil,   nil,   138,   nil,   nil,   138,   138,   138,   nil,
+   138,   138,   nil,   nil,   138,   138,   139,   139,   139,   nil,
+   139,   nil,   nil,   nil,   139,   139,   nil,   nil,   nil,   139,
+   nil,   139,   139,   139,   139,   139,   139,   139,   nil,   nil,
+   nil,   nil,   nil,   139,   139,   139,   139,   139,   139,   139,
+   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,   139,
+   nil,   nil,   139,   139,   139,   139,   139,   139,   139,   139,
+   nil,   139,   139,   139,   nil,   139,   139,   nil,   139,   139,
+   139,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   139,   nil,   nil,   139,   nil,   nil,   139,   139,   nil,   nil,
+   139,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   139,   nil,   nil,   nil,   nil,   139,
+   139,   139,   139,   139,   139,   nil,   nil,   nil,   139,   139,
+   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   139,
+   139,   139,   nil,   139,   139,   nil,   nil,   139,   139,   140,
+   140,   140,   nil,   140,   nil,   nil,   nil,   140,   140,   nil,
+   nil,   nil,   140,   nil,   140,   140,   140,   140,   140,   140,
+   140,   nil,   nil,   nil,   nil,   nil,   140,   140,   140,   140,
+   140,   140,   140,   nil,   nil,   140,   nil,   nil,   nil,   nil,
+   nil,   nil,   140,   nil,   nil,   140,   140,   140,   140,   140,
+   140,   140,   140,   nil,   140,   140,   140,   nil,   140,   140,
+   nil,   140,   140,   140,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   140,   nil,   nil,   140,   nil,   nil,   140,
+   140,   nil,   nil,   140,   nil,   nil,   nil,   nil,   nil,   140,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,
+   nil,   nil,   140,   140,   140,   140,   140,   140,   nil,   nil,
+   nil,   140,   140,   nil,   nil,   nil,   nil,   nil,   nil,   140,
+   nil,   nil,   140,   140,   140,   nil,   140,   140,   nil,   nil,
+   140,   140,   141,   141,   141,   141,   141,   nil,   nil,   nil,
+   141,   141,   nil,   nil,   nil,   141,   nil,   141,   141,   141,
+   141,   141,   141,   141,   nil,   nil,   nil,   nil,   nil,   141,
+   141,   141,   141,   141,   141,   141,   nil,   nil,   141,   nil,
+   nil,   nil,   nil,   nil,   141,   141,   nil,   141,   141,   141,
+   141,   141,   141,   141,   141,   141,   nil,   141,   141,   141,
+   nil,   141,   141,   nil,   141,   141,   141,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   141,   nil,   nil,   141,
+   nil,   nil,   141,   141,   nil,   nil,   141,   nil,   141,   nil,
+   nil,   nil,   141,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   141,   nil,   nil,   nil,   nil,   141,   141,   141,   141,   141,
+   141,   nil,   nil,   nil,   141,   141,   nil,   nil,   nil,   nil,
+   nil,   nil,   141,   nil,   nil,   141,   141,   141,   nil,   141,
+   141,   nil,   nil,   141,   141,   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,   nil,   226,   226,   226,   226,   226,   226,   226,   nil,
+   nil,   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,
+   nil,   226,   226,   226,   226,   226,   226,   226,   226,   nil,
+   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,   226,   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,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
+   226,   nil,   226,   226,   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,   nil,   227,   227,   227,   227,   227,
+   227,   227,   nil,   nil,   227,   nil,   nil,   nil,   nil,   nil,
+   nil,   227,   nil,   nil,   227,   227,   227,   227,   227,   227,
+   227,   227,   nil,   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,   227,   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,   nil,   nil,   nil,   227,   nil,
+   nil,   227,   227,   227,   nil,   227,   227,   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,   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,   228,
+   nil,   nil,   nil,   nil,   228,   228,   228,   228,   228,   228,
+   nil,   nil,   nil,   228,   228,   nil,   nil,   nil,   nil,   nil,
+   nil,   228,   nil,   nil,   228,   228,   228,   nil,   228,   228,
+   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,
+   nil,   229,   229,   229,   229,   229,   229,   229,   nil,   nil,
+   229,   nil,   nil,   nil,   nil,   nil,   nil,   229,   nil,   nil,
+   229,   229,   229,   229,   229,   229,   229,   229,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   229,   nil,   nil,   229,   229,   229,
+   nil,   229,   229,   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,   nil,   230,   230,   230,   230,   230,   230,
+   230,   nil,   nil,   230,   nil,   nil,   nil,   nil,   nil,   nil,
+   230,   nil,   nil,   230,   230,   230,   230,   230,   230,   230,
+   230,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   230,   nil,   nil,
+   230,   230,   230,   nil,   230,   230,   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,   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,   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,   231,   nil,   231,   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,   nil,   nil,   nil,
+   231,   nil,   231,   231,   231,   231,   nil,   231,   231,   nil,
+   nil,   231,   231,   236,   236,   236,   nil,   236,   nil,   nil,
+   nil,   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,   236,   nil,   nil,   nil,   nil,   236,   236,   236,   236,
+   236,   236,   nil,   nil,   nil,   236,   236,   nil,   nil,   nil,
+   nil,   nil,   nil,   236,   nil,   nil,   236,   236,   236,   nil,
+   236,   236,   nil,   nil,   236,   236,   237,   237,   237,   nil,
+   237,   nil,   nil,   nil,   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,   237,   nil,   nil,   nil,   nil,   237,
+   237,   237,   237,   237,   237,   nil,   nil,   nil,   237,   237,
+   nil,   nil,   nil,   nil,   nil,   nil,   237,   nil,   nil,   237,
+   237,   237,   nil,   237,   237,   nil,   nil,   237,   237,   238,
+   238,   238,   nil,   238,   nil,   nil,   nil,   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,   238,   nil,   nil,
+   nil,   nil,   238,   238,   238,   238,   238,   238,   nil,   nil,
+   nil,   238,   238,   238,   nil,   nil,   nil,   nil,   nil,   238,
+   nil,   nil,   238,   238,   238,   nil,   238,   238,   nil,   nil,
+   238,   238,   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,   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,
+   249,   nil,   nil,   nil,   nil,   249,   249,   249,   249,   249,
+   249,   nil,   nil,   nil,   249,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,   249,   nil,   nil,   249,   249,   249,   nil,   249,
+   249,   nil,   nil,   249,   249,   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,   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,   254,   nil,   nil,   nil,   nil,   254,   254,
+   254,   254,   254,   254,   nil,   nil,   nil,   254,   254,   nil,
+   nil,   nil,   nil,   nil,   nil,   254,   nil,   nil,   254,   254,
+   254,   nil,   254,   254,   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,   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,   255,   nil,   nil,   nil,
+   nil,   255,   255,   255,   255,   255,   255,   nil,   nil,   nil,
+   255,   255,   nil,   nil,   nil,   nil,   nil,   nil,   255,   nil,
+   nil,   255,   255,   255,   nil,   255,   255,   nil,   nil,   255,
+   255,   256,   256,   256,   nil,   256,   nil,   nil,   nil,   256,
+   256,   nil,   nil,   nil,   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,   256,
+   256,   256,   256,   256,   256,   nil,   256,   256,   256,   nil,
+   256,   256,   nil,   256,   256,   256,   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,   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,   nil,   nil,
+   nil,   256,   nil,   nil,   256,   256,   256,   nil,   256,   256,
+   nil,   nil,   256,   256,   257,   257,   257,   nil,   257,   nil,
+   nil,   nil,   257,   257,   nil,   nil,   nil,   257,   nil,   257,
+   257,   257,   257,   257,   257,   257,   nil,   nil,   nil,   nil,
+   nil,   257,   257,   257,   257,   257,   257,   257,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   257,   257,   257,   257,   257,   257,   257,   257,   nil,   257,
+   257,   257,   nil,   257,   257,   nil,   257,   257,   257,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   257,   nil,   nil,   257,   257,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   257,   257,   257,
+   257,   257,   257,   nil,   nil,   nil,   257,   257,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   257,   257,
+   nil,   257,   257,   nil,   nil,   257,   257,   258,   258,   258,
+   nil,   258,   nil,   nil,   nil,   258,   258,   nil,   nil,   nil,
+   258,   nil,   258,   258,   258,   258,   258,   258,   258,   nil,
+   nil,   nil,   nil,   nil,   258,   258,   258,   258,   258,   258,
+   258,   nil,   nil,   258,   nil,   nil,   nil,   nil,   nil,   nil,
+   258,   nil,   nil,   258,   258,   258,   258,   258,   258,   258,
+   258,   nil,   258,   258,   258,   nil,   258,   258,   nil,   258,
+   258,   258,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   258,   nil,   nil,   258,   nil,   nil,   258,   258,   nil,
+   nil,   258,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,   nil,   nil,
+   258,   258,   258,   258,   258,   258,   nil,   nil,   nil,   258,
+   258,   nil,   nil,   nil,   nil,   nil,   nil,   258,   nil,   nil,
+   258,   258,   258,   nil,   258,   258,   nil,   nil,   258,   258,
+   259,   259,   259,   nil,   259,   nil,   nil,   nil,   259,   259,
+   nil,   nil,   nil,   259,   nil,   259,   259,   259,   259,   259,
+   259,   259,   nil,   nil,   nil,   nil,   nil,   259,   259,   259,
+   259,   259,   259,   259,   nil,   nil,   259,   nil,   nil,   nil,
+   nil,   nil,   nil,   259,   nil,   nil,   259,   259,   259,   259,
+   259,   259,   259,   259,   nil,   259,   259,   259,   nil,   259,
+   259,   nil,   259,   259,   259,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   259,   nil,   nil,   259,   nil,   nil,
+   259,   259,   nil,   nil,   259,   nil,   nil,   nil,   nil,   nil,
+   259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   259,   nil,
+   nil,   nil,   nil,   259,   259,   259,   259,   259,   259,   nil,
+   nil,   nil,   259,   259,   nil,   nil,   nil,   nil,   nil,   nil,
+   259,   nil,   nil,   259,   259,   259,   nil,   259,   259,   nil,
+   nil,   259,   259,   260,   260,   260,   nil,   260,   nil,   nil,
+   nil,   260,   260,   nil,   nil,   nil,   260,   nil,   260,   260,
+   260,   260,   260,   260,   260,   nil,   nil,   nil,   nil,   nil,
+   260,   260,   260,   260,   260,   260,   260,   nil,   nil,   260,
+   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,   260,
+   260,   260,   260,   260,   260,   260,   260,   nil,   260,   260,
+   260,   nil,   260,   260,   nil,   260,   260,   260,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   260,   nil,   nil,
+   260,   nil,   nil,   260,   260,   nil,   nil,   260,   nil,   nil,
+   nil,   nil,   nil,   260,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   260,   nil,   nil,   nil,   nil,   260,   260,   260,   260,
+   260,   260,   nil,   nil,   nil,   260,   260,   nil,   nil,   nil,
+   nil,   nil,   nil,   260,   nil,   nil,   260,   260,   260,   nil,
+   260,   260,   nil,   nil,   260,   260,   261,   261,   261,   nil,
+   261,   nil,   nil,   nil,   261,   261,   nil,   nil,   nil,   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,   261,   261,   261,   261,   261,   261,
+   nil,   261,   261,   261,   nil,   261,   261,   nil,   261,   261,
+   261,   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,   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,   nil,   nil,   nil,   261,   nil,   nil,   261,
+   261,   261,   nil,   261,   261,   nil,   nil,   261,   261,   262,
+   262,   262,   nil,   262,   nil,   nil,   nil,   262,   262,   nil,
+   nil,   nil,   262,   nil,   262,   262,   262,   262,   262,   262,
+   262,   nil,   nil,   nil,   nil,   nil,   262,   262,   262,   262,
+   262,   262,   262,   nil,   nil,   262,   nil,   nil,   nil,   nil,
+   nil,   nil,   262,   nil,   nil,   262,   262,   262,   262,   262,
+   262,   262,   262,   nil,   262,   262,   262,   nil,   262,   262,
+   nil,   262,   262,   262,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   262,   nil,   nil,   262,   nil,   nil,   262,
+   262,   nil,   nil,   262,   nil,   nil,   nil,   nil,   nil,   262,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   262,   nil,   nil,
+   nil,   nil,   262,   262,   262,   262,   262,   262,   nil,   nil,
+   nil,   262,   262,   nil,   nil,   nil,   nil,   nil,   nil,   262,
+   nil,   nil,   262,   262,   262,   nil,   262,   262,   nil,   nil,
+   262,   262,   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,   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,   nil,   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,   nil,   nil,
+   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   263,   nil,   nil,   263,   263,   263,   nil,   263,
+   263,   nil,   nil,   263,   263,   264,   264,   264,   nil,   264,
+   nil,   nil,   nil,   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,   nil,
+   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,   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   264,   264,
+   264,   264,   264,   264,   nil,   nil,   nil,   264,   264,   nil,
+   nil,   nil,   nil,   nil,   nil,   264,   nil,   nil,   264,   264,
+   264,   nil,   264,   264,   nil,   nil,   264,   264,   265,   265,
+   265,   nil,   265,   nil,   nil,   nil,   265,   265,   nil,   nil,
+   nil,   265,   nil,   265,   265,   265,   265,   265,   265,   265,
+   nil,   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,
+   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,
+   nil,   265,   nil,   nil,   265,   265,   265,   265,   265,   265,
+   265,   265,   nil,   265,   265,   265,   nil,   265,   265,   nil,
+   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,   265,   265,
+   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,
+   nil,   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,
+   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   265,   265,   265,   nil,   265,   265,   nil,   nil,   265,
+   265,   266,   266,   266,   nil,   266,   nil,   nil,   nil,   266,
+   266,   nil,   nil,   nil,   266,   nil,   266,   266,   266,   266,
+   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   266,   266,
+   266,   266,   266,   266,   266,   nil,   nil,   266,   nil,   nil,
+   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   266,   266,
+   266,   266,   266,   266,   266,   nil,   266,   266,   266,   nil,
+   266,   266,   nil,   266,   266,   266,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   nil,
+   nil,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,
+   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,
+   nil,   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   266,   266,   266,   nil,   266,   266,
+   nil,   nil,   266,   266,   267,   267,   267,   nil,   267,   nil,
+   nil,   nil,   267,   267,   nil,   nil,   nil,   267,   nil,   267,
+   267,   267,   267,   267,   267,   267,   nil,   nil,   nil,   nil,
+   nil,   267,   267,   267,   267,   267,   267,   267,   nil,   nil,
+   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   267,   267,   267,   267,   267,   267,   267,   267,   nil,   267,
+   267,   267,   nil,   267,   267,   nil,   267,   267,   267,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,
+   nil,   267,   nil,   nil,   267,   267,   nil,   nil,   267,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   267,   nil,   nil,   nil,   nil,   267,   267,   267,
+   267,   267,   267,   nil,   nil,   nil,   267,   267,   nil,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,
+   nil,   267,   267,   nil,   nil,   267,   267,   268,   268,   268,
+   nil,   268,   nil,   nil,   nil,   268,   268,   nil,   nil,   nil,
+   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,   268,   268,   268,   268,   268,
+   268,   nil,   268,   268,   268,   nil,   268,   268,   nil,   268,
+   268,   268,   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,   268,   nil,
+   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,
+   268,   268,   268,   nil,   268,   268,   nil,   nil,   268,   268,
+   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,   nil,   269,   269,   269,
+   269,   269,   269,   269,   nil,   nil,   269,   nil,   nil,   nil,
+   nil,   nil,   nil,   269,   nil,   nil,   269,   269,   269,   269,
+   269,   269,   269,   269,   nil,   269,   269,   269,   nil,   269,
+   269,   nil,   269,   269,   269,   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,   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,
+   269,   nil,   nil,   269,   269,   269,   nil,   269,   269,   nil,
+   nil,   269,   269,   270,   270,   270,   nil,   270,   nil,   nil,
+   nil,   270,   270,   nil,   nil,   nil,   270,   nil,   270,   270,
+   270,   270,   270,   270,   270,   nil,   nil,   nil,   nil,   nil,
+   270,   270,   270,   270,   270,   270,   270,   nil,   nil,   270,
+   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,   270,
+   270,   270,   270,   270,   270,   270,   270,   nil,   270,   270,
+   270,   nil,   270,   270,   nil,   270,   270,   270,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,
+   270,   nil,   nil,   270,   270,   nil,   nil,   270,   nil,   nil,
+   nil,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   270,   nil,   nil,   nil,   nil,   270,   270,   270,   270,
+   270,   270,   nil,   nil,   nil,   270,   270,   nil,   nil,   nil,
+   nil,   nil,   nil,   270,   nil,   nil,   270,   270,   270,   nil,
+   270,   270,   nil,   nil,   270,   270,   271,   271,   271,   nil,
+   271,   nil,   nil,   nil,   271,   271,   nil,   nil,   nil,   271,
+   nil,   271,   271,   271,   271,   271,   271,   271,   nil,   nil,
+   nil,   nil,   nil,   271,   271,   271,   271,   271,   271,   271,
+   nil,   nil,   271,   nil,   nil,   nil,   nil,   nil,   nil,   271,
+   nil,   nil,   271,   271,   271,   271,   271,   271,   271,   271,
+   nil,   271,   271,   271,   nil,   271,   271,   nil,   271,   271,
+   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   271,   nil,   nil,   271,   nil,   nil,   271,   271,   nil,   nil,
+   271,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   271,   nil,   nil,   nil,   nil,   271,
+   271,   271,   271,   271,   271,   nil,   nil,   nil,   271,   271,
+   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,
+   271,   271,   nil,   271,   271,   nil,   nil,   271,   271,   272,
+   272,   272,   nil,   272,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   272,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   272,   nil,   nil,
+   nil,   nil,   272,   272,   272,   272,   272,   272,   nil,   nil,
+   nil,   272,   272,   nil,   nil,   nil,   nil,   nil,   nil,   272,
+   nil,   nil,   272,   272,   272,   nil,   272,   272,   nil,   nil,
+   272,   272,   273,   273,   273,   nil,   273,   nil,   nil,   nil,
+   273,   273,   nil,   nil,   nil,   273,   nil,   273,   273,   273,
+   273,   273,   273,   273,   nil,   nil,   nil,   nil,   nil,   273,
+   273,   273,   273,   273,   273,   273,   nil,   nil,   273,   nil,
+   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,   273,
+   273,   273,   273,   273,   273,   273,   nil,   273,   273,   273,
+   nil,   273,   273,   nil,   273,   273,   273,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,
+   nil,   nil,   273,   273,   nil,   nil,   273,   nil,   nil,   nil,
+   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   273,   nil,   nil,   nil,   nil,   273,   273,   273,   273,   273,
+   273,   nil,   nil,   nil,   273,   273,   nil,   nil,   nil,   nil,
+   nil,   nil,   273,   nil,   nil,   273,   273,   273,   nil,   273,
+   273,   nil,   nil,   273,   273,   274,   274,   274,   nil,   274,
+   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   274,   nil,
+   274,   274,   274,   274,   274,   274,   274,   nil,   nil,   nil,
+   nil,   nil,   274,   274,   274,   274,   274,   274,   274,   nil,
+   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,
+   nil,   274,   274,   274,   274,   274,   274,   274,   274,   nil,
+   274,   274,   274,   nil,   274,   274,   nil,   274,   274,   274,
+   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,   274,   274,   nil,   nil,   274,
+   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,   274,
+   274,   274,   274,   274,   nil,   nil,   nil,   274,   274,   nil,
+   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,
+   274,   nil,   274,   274,   nil,   nil,   274,   274,   275,   275,
+   275,   nil,   275,   nil,   nil,   nil,   275,   275,   nil,   nil,
+   nil,   275,   nil,   275,   275,   275,   275,   275,   275,   275,
+   nil,   nil,   nil,   nil,   nil,   275,   275,   275,   275,   275,
+   275,   275,   nil,   nil,   275,   nil,   nil,   nil,   nil,   nil,
+   nil,   275,   nil,   nil,   275,   275,   275,   275,   275,   275,
+   275,   275,   nil,   275,   275,   275,   nil,   275,   275,   nil,
+   275,   275,   275,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   275,   nil,   nil,   275,   nil,   nil,   275,   275,
+   nil,   nil,   275,   nil,   nil,   nil,   nil,   nil,   275,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   nil,
+   nil,   275,   275,   275,   275,   275,   275,   nil,   nil,   nil,
+   275,   275,   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,
+   nil,   275,   275,   275,   nil,   275,   275,   nil,   nil,   275,
+   275,   280,   280,   280,   nil,   280,   nil,   nil,   nil,   280,
+   280,   nil,   nil,   nil,   280,   nil,   280,   280,   280,   280,
+   280,   280,   280,   nil,   nil,   nil,   nil,   nil,   280,   280,
+   280,   280,   280,   280,   280,   nil,   nil,   280,   nil,   nil,
+   nil,   nil,   nil,   nil,   280,   nil,   nil,   280,   280,   280,
+   280,   280,   280,   280,   280,   nil,   280,   280,   280,   nil,
+   280,   280,   nil,   280,   280,   280,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   280,   nil,   nil,   280,   nil,
+   nil,   280,   280,   nil,   nil,   280,   nil,   nil,   nil,   nil,
+   nil,   280,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   280,
+   nil,   nil,   nil,   nil,   280,   280,   280,   280,   280,   280,
+   nil,   nil,   nil,   280,   280,   nil,   nil,   nil,   nil,   nil,
+   nil,   280,   nil,   nil,   280,   280,   280,   nil,   280,   280,
+   nil,   nil,   280,   280,   304,   304,   304,   nil,   304,   nil,
+   nil,   nil,   304,   304,   nil,   nil,   nil,   304,   nil,   304,
+   304,   304,   304,   304,   304,   304,   nil,   nil,   nil,   nil,
+   nil,   304,   304,   304,   304,   304,   304,   304,   nil,   nil,
+   304,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,   nil,
+   304,   304,   304,   304,   304,   304,   304,   304,   304,   304,
+   304,   304,   nil,   304,   304,   nil,   304,   304,   304,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   304,   nil,
+   nil,   304,   nil,   nil,   304,   304,   nil,   nil,   304,   nil,
+   304,   nil,   304,   nil,   304,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   304,   nil,   nil,   nil,   nil,   304,   304,   304,
+   304,   304,   304,   nil,   nil,   nil,   304,   304,   nil,   nil,
+   nil,   nil,   nil,   nil,   304,   nil,   304,   304,   304,   304,
+   nil,   304,   304,   nil,   nil,   304,   304,   305,   305,   305,
+   nil,   305,   nil,   nil,   nil,   305,   305,   nil,   nil,   nil,
+   305,   nil,   305,   305,   305,   305,   305,   305,   305,   nil,
+   nil,   nil,   nil,   nil,   305,   305,   305,   305,   305,   305,
+   305,   nil,   nil,   305,   nil,   nil,   nil,   nil,   nil,   nil,
+   305,   nil,   nil,   305,   305,   305,   305,   305,   305,   305,
+   305,   305,   305,   305,   305,   nil,   305,   305,   nil,   305,
+   305,   305,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   305,   nil,   nil,   305,   nil,   nil,   305,   305,   nil,
+   nil,   305,   nil,   305,   nil,   305,   nil,   305,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   305,   nil,   nil,   nil,   nil,
+   305,   305,   305,   305,   305,   305,   nil,   nil,   nil,   305,
+   305,   nil,   nil,   nil,   nil,   nil,   nil,   305,   nil,   305,
+   305,   305,   305,   nil,   305,   305,   nil,   nil,   305,   305,
+   314,   314,   314,   nil,   314,   nil,   nil,   nil,   314,   314,
+   nil,   nil,   nil,   314,   nil,   314,   314,   314,   314,   314,
+   314,   314,   nil,   nil,   nil,   nil,   nil,   314,   314,   314,
+   314,   314,   314,   314,   nil,   nil,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   314,   nil,   nil,   314,   314,   314,   314,
+   314,   314,   314,   314,   314,   314,   314,   314,   nil,   314,
+   314,   nil,   314,   314,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   nil,   314,   nil,   nil,
+   314,   314,   nil,   nil,   314,   nil,   314,   nil,   314,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   nil,   nil,   314,   314,   314,   314,   314,   314,   nil,
+   nil,   nil,   314,   314,   314,   nil,   nil,   nil,   nil,   nil,
+   314,   nil,   314,   314,   314,   314,   nil,   314,   314,   nil,
+   nil,   314,   314,   321,   321,   321,   nil,   321,   nil,   nil,
+   nil,   321,   321,   nil,   nil,   nil,   321,   nil,   321,   321,
+   321,   321,   321,   321,   321,   nil,   nil,   nil,   nil,   nil,
+   321,   321,   321,   321,   321,   321,   321,   nil,   nil,   321,
+   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,   nil,   321,
+   321,   321,   321,   321,   321,   321,   321,   nil,   321,   321,
+   321,   nil,   321,   321,   nil,   321,   321,   321,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   321,   nil,   nil,
+   321,   nil,   nil,   321,   321,   nil,   nil,   321,   nil,   nil,
+   nil,   nil,   nil,   321,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   321,   nil,   nil,   nil,   nil,   321,   321,   321,   321,
+   321,   321,   nil,   nil,   nil,   321,   321,   nil,   nil,   nil,
+   nil,   nil,   nil,   321,   nil,   nil,   321,   321,   321,   nil,
+   321,   321,   nil,   nil,   321,   321,   323,   323,   323,   nil,
+   323,   nil,   nil,   nil,   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,   nil,   nil,   323,   323,   nil,   nil,
+   323,   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   323,   nil,   nil,   nil,   nil,   323,
+   323,   323,   323,   323,   323,   nil,   nil,   nil,   323,   323,
+   nil,   nil,   nil,   nil,   nil,   nil,   323,   nil,   nil,   323,
+   323,   323,   nil,   323,   323,   nil,   nil,   323,   323,   326,
+   326,   326,   nil,   326,   nil,   nil,   nil,   326,   326,   nil,
+   nil,   nil,   326,   nil,   326,   326,   326,   326,   326,   326,
+   326,   nil,   nil,   nil,   nil,   nil,   326,   326,   326,   326,
+   326,   326,   326,   nil,   nil,   326,   nil,   nil,   nil,   nil,
+   nil,   nil,   326,   nil,   nil,   326,   326,   326,   326,   326,
+   326,   326,   326,   nil,   326,   326,   326,   nil,   326,   326,
+   nil,   326,   326,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   326,   nil,   nil,   326,   nil,   nil,   326,
+   326,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,
+   nil,   nil,   326,   326,   326,   326,   326,   326,   nil,   nil,
+   nil,   326,   326,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   326,   326,   326,   nil,   326,   326,   nil,   nil,
+   326,   326,   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,   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,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   327,   nil,   nil,   327,   327,   327,   nil,   327,
+   327,   nil,   nil,   327,   327,   333,   333,   333,   333,   333,
+   nil,   nil,   nil,   333,   333,   nil,   nil,   nil,   333,   nil,
+   333,   333,   333,   333,   333,   333,   333,   nil,   nil,   nil,
+   nil,   nil,   333,   333,   333,   333,   333,   333,   333,   nil,
+   nil,   333,   nil,   nil,   nil,   nil,   nil,   333,   333,   nil,
+   333,   333,   333,   333,   333,   333,   333,   333,   333,   nil,
+   333,   333,   333,   nil,   333,   333,   nil,   333,   333,   333,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   333,
+   nil,   nil,   333,   nil,   nil,   333,   333,   nil,   nil,   333,
+   nil,   333,   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   333,   333,
+   333,   333,   333,   333,   nil,   nil,   nil,   333,   333,   nil,
+   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   333,   333,
+   333,   nil,   333,   333,   nil,   nil,   333,   333,   369,   369,
+   369,   nil,   369,   nil,   nil,   nil,   369,   369,   nil,   nil,
+   nil,   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,   369,   369,   369,   369,
+   369,   369,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   369,   nil,
+   nil,   369,   369,   369,   nil,   369,   369,   nil,   nil,   369,
+   369,   371,   371,   371,   nil,   371,   nil,   nil,   nil,   371,
+   371,   nil,   nil,   nil,   371,   nil,   371,   371,   371,   371,
+   371,   371,   371,   nil,   nil,   nil,   nil,   nil,   371,   371,
+   371,   371,   371,   371,   371,   nil,   nil,   371,   nil,   nil,
+   nil,   nil,   nil,   nil,   371,   nil,   nil,   371,   371,   371,
+   371,   371,   371,   371,   371,   nil,   371,   371,   371,   nil,
+   371,   371,   nil,   371,   371,   371,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   371,   nil,   nil,   371,   371,
+   nil,   371,   371,   nil,   nil,   371,   nil,   nil,   nil,   nil,
+   nil,   371,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   371,
+   nil,   nil,   nil,   nil,   371,   371,   371,   371,   371,   371,
+   nil,   nil,   nil,   371,   371,   nil,   nil,   nil,   nil,   nil,
+   nil,   371,   nil,   nil,   371,   371,   371,   nil,   371,   371,
+   nil,   nil,   371,   371,   387,   387,   387,   nil,   387,   nil,
+   nil,   nil,   387,   387,   nil,   nil,   nil,   387,   nil,   387,
+   387,   387,   387,   387,   387,   387,   nil,   nil,   nil,   nil,
+   nil,   387,   387,   387,   387,   387,   387,   387,   nil,   nil,
+   387,   nil,   nil,   nil,   nil,   nil,   nil,   387,   nil,   nil,
+   387,   387,   387,   387,   387,   387,   387,   387,   387,   387,
+   387,   387,   nil,   387,   387,   nil,   387,   387,   387,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   387,   nil,
+   nil,   387,   nil,   nil,   387,   387,   nil,   nil,   387,   nil,
+   nil,   nil,   nil,   nil,   387,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   387,   nil,   nil,   nil,   nil,   387,   387,   387,
+   387,   387,   387,   nil,   nil,   nil,   387,   387,   nil,   nil,
+   nil,   nil,   nil,   nil,   387,   nil,   387,   387,   387,   387,
+   nil,   387,   387,   nil,   nil,   387,   387,   392,   392,   392,
+   nil,   392,   nil,   nil,   nil,   392,   392,   nil,   nil,   nil,
+   392,   nil,   392,   392,   392,   392,   392,   392,   392,   nil,
+   nil,   nil,   nil,   nil,   392,   392,   392,   392,   392,   392,
+   392,   nil,   nil,   392,   nil,   nil,   nil,   nil,   nil,   nil,
+   392,   nil,   nil,   392,   392,   392,   392,   392,   392,   392,
+   392,   nil,   392,   392,   392,   nil,   392,   392,   nil,   392,
+   392,   392,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   392,   nil,   nil,   392,   nil,   nil,   392,   392,   nil,
+   nil,   392,   nil,   nil,   nil,   nil,   nil,   392,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   392,   nil,   nil,   nil,   nil,
+   392,   392,   392,   392,   392,   392,   nil,   nil,   nil,   392,
+   392,   nil,   nil,   nil,   nil,   nil,   nil,   392,   nil,   nil,
+   392,   392,   392,   nil,   392,   392,   nil,   nil,   392,   392,
+   413,   413,   413,   nil,   413,   nil,   nil,   nil,   413,   413,
+   nil,   nil,   nil,   413,   nil,   413,   413,   413,   413,   413,
+   413,   413,   nil,   nil,   nil,   nil,   nil,   413,   413,   413,
+   413,   413,   413,   413,   nil,   nil,   413,   nil,   nil,   nil,
+   nil,   nil,   nil,   413,   nil,   nil,   413,   413,   413,   413,
+   413,   413,   413,   413,   nil,   413,   413,   413,   nil,   413,
+   413,   nil,   413,   413,   413,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   413,   nil,   nil,   413,   nil,   nil,
+   413,   413,   nil,   nil,   413,   nil,   nil,   nil,   nil,   nil,
+   413,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   413,   nil,
+   nil,   nil,   nil,   413,   413,   413,   413,   413,   413,   nil,
+   nil,   nil,   413,   413,   nil,   nil,   nil,   nil,   nil,   nil,
+   413,   nil,   nil,   413,   413,   413,   nil,   413,   413,   nil,
+   nil,   413,   413,   459,   459,   459,   nil,   459,   nil,   nil,
+   nil,   459,   459,   nil,   nil,   nil,   459,   nil,   459,   459,
+   459,   459,   459,   459,   459,   nil,   nil,   nil,   nil,   nil,
+   459,   459,   459,   459,   459,   459,   459,   nil,   nil,   459,
+   nil,   nil,   nil,   nil,   nil,   nil,   459,   nil,   nil,   459,
+   459,   459,   459,   459,   459,   459,   459,   nil,   459,   459,
+   459,   nil,   459,   459,   nil,   459,   459,   459,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   459,   nil,   nil,
+   459,   nil,   nil,   459,   459,   nil,   nil,   459,   nil,   nil,
+   nil,   nil,   nil,   459,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   459,   nil,   nil,   nil,   nil,   459,   459,   459,   459,
+   459,   459,   nil,   nil,   nil,   459,   459,   nil,   nil,   nil,
+   nil,   nil,   nil,   459,   nil,   nil,   459,   459,   459,   493,
+   459,   459,   nil,   nil,   459,   459,   493,   493,   493,   nil,
+   nil,   493,   493,   493,  1088,   493,  1088,  1088,  1088,  1088,
+  1088,   nil,   nil,   493,   493,   493,   493,   493,   nil,   nil,
+  1088,   nil,   nil,   nil,   nil,   493,   493,   nil,   493,   493,
+   493,   493,   493,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1088,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1088,  1088,  1088,  1088,   nil,   493,   493,   493,   493,
+   493,   493,   493,   493,   493,   493,   493,   493,   493,   493,
+   nil,   nil,   493,   493,   493,   nil,   nil,   493,   nil,   nil,
+   493,   nil,   nil,   493,   493,   nil,   493,  1088,   493,   nil,
+   493,   nil,   493,   493,   493,   493,   493,   493,   493,   nil,
+   493,   493,   493,  1093,   nil,  1093,  1093,  1093,  1093,  1093,
+   nil,   nil,   nil,   nil,   nil,   493,   493,   493,   493,  1093,
+   493,   494,   493,   nil,   nil,   nil,   nil,   493,   494,   494,
+   494,   493,   nil,   494,   494,   494,   nil,   494,   nil,   nil,
+   nil,  1093,   nil,   nil,   nil,   494,   494,   494,   494,   494,
+   nil,   nil,  1093,  1093,   nil,   nil,   nil,   494,   494,   nil,
+   494,   494,   494,   494,   494,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1093,   nil,   494,   494,
+   494,   494,   494,   494,   494,   494,   494,   494,   494,   494,
+   494,   494,   nil,   nil,   494,   494,   494,   nil,   nil,   494,
+   nil,   nil,   494,   nil,   nil,   494,   494,   nil,   494,   nil,
+   494,   nil,   494,   nil,   494,   494,   494,   494,   494,   494,
+   494,   nil,   494,   494,   494,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   494,   494,   494,
+   494,   nil,   494,   nil,   494,   nil,   503,   503,   503,   494,
+   503,   nil,   nil,   494,   503,   503,   nil,   nil,   nil,   503,
+   nil,   503,   503,   503,   503,   503,   503,   503,   nil,   nil,
+   nil,   nil,   nil,   503,   503,   503,   503,   503,   503,   503,
+   nil,   nil,   503,   nil,   nil,   nil,   nil,   nil,   nil,   503,
+   nil,   nil,   503,   503,   503,   503,   503,   503,   503,   503,
+   503,   503,   503,   503,   nil,   503,   503,   nil,   503,   503,
+   503,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   503,   nil,   nil,   503,   nil,   nil,   503,   503,   nil,   nil,
+   503,   nil,   503,   nil,   503,   nil,   503,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   503,   nil,   nil,   nil,   nil,   503,
+   503,   503,   503,   503,   503,   nil,   nil,   nil,   503,   503,
+   nil,   nil,   nil,   nil,   nil,   nil,   503,   nil,   503,   503,
+   503,   503,   nil,   503,   503,   nil,   nil,   503,   503,   505,
+   505,   505,   nil,   505,   nil,   nil,   nil,   505,   505,   nil,
+   nil,   nil,   505,   nil,   505,   505,   505,   505,   505,   505,
+   505,   nil,   nil,   nil,   nil,   nil,   505,   505,   505,   505,
+   505,   505,   505,   nil,   nil,   505,   nil,   nil,   nil,   nil,
+   nil,   nil,   505,   nil,   nil,   505,   505,   505,   505,   505,
+   505,   505,   505,   nil,   505,   505,   505,   nil,   505,   505,
+   nil,   505,   505,   505,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   505,   nil,   nil,   505,   nil,   nil,   505,
+   505,   nil,   nil,   505,   nil,   nil,   nil,   nil,   nil,   505,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   505,   nil,   nil,
+   nil,   nil,   505,   505,   505,   505,   505,   505,   nil,   nil,
+   nil,   505,   505,   nil,   nil,   nil,   nil,   nil,   nil,   505,
+   nil,   nil,   505,   505,   505,   nil,   505,   505,   nil,   nil,
+   505,   505,   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,   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,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   506,   nil,   nil,   506,   506,   506,   nil,   506,
+   506,   nil,   nil,   506,   506,   507,   507,   507,   nil,   507,
+   nil,   nil,   nil,   507,   507,   nil,   nil,   nil,   507,   nil,
+   507,   507,   507,   507,   507,   507,   507,   nil,   nil,   nil,
+   nil,   nil,   507,   507,   507,   507,   507,   507,   507,   nil,
+   nil,   507,   nil,   nil,   nil,   nil,   nil,   nil,   507,   nil,
+   nil,   507,   507,   507,   507,   507,   507,   507,   507,   nil,
+   507,   507,   507,   nil,   507,   507,   nil,   507,   507,   507,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   507,
+   nil,   nil,   507,   nil,   nil,   507,   507,   nil,   nil,   507,
+   nil,   nil,   nil,   nil,   nil,   507,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   507,   nil,   nil,   nil,   nil,   507,   507,
+   507,   507,   507,   507,   nil,   nil,   nil,   507,   507,   nil,
+   nil,   nil,   nil,   nil,   nil,   507,   nil,   nil,   507,   507,
+   507,   nil,   507,   507,   nil,   nil,   507,   507,   536,   536,
+   536,   nil,   536,   nil,   nil,   nil,   536,   536,   nil,   nil,
+   nil,   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,   536,   536,   536,   536,
+   536,   536,   nil,   536,   536,   536,   nil,   536,   536,   nil,
+   536,   536,   536,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   536,   nil,   nil,   536,   nil,   nil,   536,   536,
+   nil,   nil,   536,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   536,   nil,
+   nil,   536,   536,   536,   539,   536,   536,   nil,   nil,   536,
+   536,   539,   539,   539,   nil,   nil,   539,   539,   539,   nil,
+   539,   931,   931,   931,   931,   nil,   nil,   nil,   539,   539,
+   539,   nil,   nil,   nil,   nil,   nil,   nil,   931,   931,   931,
+   539,   539,   nil,   539,   539,   539,   539,   539,   nil,   nil,
+   931,   931,   nil,   nil,   nil,   931,   nil,   nil,   nil,   nil,
+   nil,  1095,   nil,  1095,  1095,  1095,  1095,  1095,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1095,   nil,   nil,
+   nil,   nil,   539,   nil,   nil,   nil,   nil,   nil,   nil,   539,
+   nil,   nil,   nil,   nil,   539,   539,   nil,   nil,   nil,  1095,
+   nil,   nil,   nil,   nil,   931,   931,   931,   931,   931,   931,
+  1095,  1095,   nil,   931,   931,   nil,   539,   539,   nil,   nil,
+   nil,   931,   nil,   nil,   931,   931,   931,   nil,   931,   931,
+   539,   nil,   544,   544,   544,   539,   544,   nil,   nil,   nil,
+   544,   544,   539,   nil,  1095,   544,   539,   544,   544,   544,
+   544,   544,   544,   544,   nil,   nil,   nil,   nil,   nil,   544,
+   544,   544,   544,   544,   544,   544,   nil,   nil,   544,   nil,
+   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   544,   544,
+   544,   544,   544,   544,   544,   544,   nil,   544,   544,   544,
+   nil,   544,   544,   nil,   544,   544,   544,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   544,   nil,   nil,   544,
+   nil,   nil,   544,   544,   nil,   nil,   544,   nil,   nil,   nil,
+   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   544,   nil,   nil,   nil,   nil,   544,   544,   544,   544,   544,
+   544,   nil,   nil,   nil,   544,   544,   nil,   nil,   nil,   nil,
+   nil,   nil,   544,   nil,   nil,   544,   544,   544,   nil,   544,
+   544,   nil,   nil,   544,   544,   554,   554,   554,   nil,   554,
+   nil,   nil,   nil,   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,   554,
+   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,   554,   nil,   554,   nil,   554,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   554,   nil,   nil,   nil,   nil,   554,   554,
+   554,   554,   554,   554,   nil,   nil,   nil,   554,   554,   nil,
+   nil,   nil,   nil,   nil,   nil,   554,   nil,   554,   554,   554,
+   554,   nil,   554,   554,   nil,   nil,   554,   554,   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,   nil,   557,   557,   557,   557,   557,
+   557,   557,   nil,   nil,   557,   nil,   nil,   nil,   nil,   nil,
+   nil,   557,   nil,   nil,   557,   557,   557,   557,   557,   557,
+   557,   557,   557,   557,   557,   557,   nil,   557,   557,   nil,
+   557,   557,   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,   nil,   nil,   557,   nil,   557,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   557,   nil,   nil,   nil,
+   nil,   557,   557,   557,   557,   557,   557,   nil,   nil,   nil,
+   557,   557,   nil,   nil,   nil,   nil,   nil,   nil,   557,   nil,
+   557,   557,   557,   557,   nil,   557,   557,   nil,   nil,   557,
+   557,   559,   559,   559,   nil,   559,   nil,   nil,   nil,   559,
+   559,   nil,   nil,   nil,   559,   nil,   559,   559,   559,   559,
+   559,   559,   559,   nil,   nil,   nil,   nil,   nil,   559,   559,
+   559,   559,   559,   559,   559,   nil,   nil,   559,   nil,   nil,
+   nil,   nil,   nil,   nil,   559,   nil,   nil,   559,   559,   559,
+   559,   559,   559,   559,   559,   nil,   559,   559,   559,   nil,
+   559,   559,   nil,   559,   559,   559,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   559,   nil,   nil,   559,   nil,
+   nil,   559,   559,   nil,   nil,   559,   nil,   nil,   nil,   nil,
+   nil,   559,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   559,
+   nil,   nil,   nil,   nil,   559,   559,   559,   559,   559,   559,
+   nil,   nil,   nil,   559,   559,   nil,   nil,   nil,   nil,   nil,
+   nil,   559,   nil,   nil,   559,   559,   559,   nil,   559,   559,
+   nil,   nil,   559,   559,   565,   565,   565,   565,   565,   nil,
+   nil,   nil,   565,   565,   nil,   nil,   nil,   565,   nil,   565,
+   565,   565,   565,   565,   565,   565,   nil,   nil,   nil,   nil,
+   nil,   565,   565,   565,   565,   565,   565,   565,   nil,   nil,
+   565,   nil,   nil,   nil,   nil,   nil,   565,   565,   565,   565,
+   565,   565,   565,   565,   565,   565,   565,   565,   nil,   565,
+   565,   565,   nil,   565,   565,   nil,   565,   565,   565,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   565,   nil,
+   nil,   565,   nil,   nil,   565,   565,   nil,   nil,   565,   nil,
+   565,   nil,   nil,   nil,   565,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   565,   nil,   nil,   nil,   nil,   565,   565,   565,
+   565,   565,   565,   nil,   nil,   nil,   565,   565,   nil,   nil,
+   nil,   nil,   nil,   565,   565,   nil,   nil,   565,   565,   565,
+   nil,   565,   565,   nil,   nil,   565,   565,   575,   575,   575,
+   nil,   575,   nil,   nil,   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   575,   nil,   nil,   nil,   nil,
+   575,   575,   575,   575,   575,   575,   nil,   nil,   nil,   575,
+   575,   nil,   nil,   nil,   nil,   nil,   nil,   575,   nil,   575,
+   575,   575,   575,   nil,   575,   575,   nil,   nil,   575,   575,
+   585,   585,   585,   nil,   585,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,
+   585,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   585,   nil,
+   nil,   nil,   nil,   585,   585,   585,   585,   585,   585,   nil,
+   nil,   nil,   585,   585,   nil,   nil,   nil,   nil,   nil,   nil,
+   585,   nil,   nil,   585,   585,   585,   nil,   585,   585,   nil,
+   nil,   585,   585,   588,   588,   588,   nil,   588,   nil,   nil,
+   nil,   588,   588,   nil,   nil,   nil,   588,   nil,   588,   588,
+   588,   588,   588,   588,   588,   nil,   nil,   nil,   nil,   nil,
+   588,   588,   588,   588,   588,   588,   588,   nil,   nil,   588,
+   nil,   nil,   nil,   nil,   nil,   nil,   588,   nil,   nil,   588,
+   588,   588,   588,   588,   588,   588,   588,   nil,   588,   588,
+   588,   nil,   588,   588,   nil,   588,   588,   588,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   588,   nil,   nil,
+   588,   nil,   nil,   588,   588,   nil,   nil,   588,   nil,   nil,
+   nil,   nil,   nil,   588,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   588,   nil,   nil,   nil,   nil,   588,   588,   588,   588,
+   588,   588,   nil,   nil,   nil,   588,   588,   nil,   nil,   nil,
+   nil,   nil,   nil,   588,   nil,   nil,   588,   588,   588,   nil,
+   588,   588,   nil,   nil,   588,   588,   591,   591,   591,   nil,
+   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,   nil,   591,
+   nil,   nil,   591,   591,   591,   591,   591,   591,   591,   591,
+   nil,   591,   591,   591,   nil,   591,   591,   nil,   591,   591,
+   591,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   591,   nil,   nil,   591,   nil,   nil,   591,   591,   nil,   nil,
+   591,   nil,   nil,   nil,   nil,   nil,   591,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   591,   nil,   nil,   nil,   nil,   591,
+   591,   591,   591,   591,   591,   nil,   nil,   nil,   591,   591,
+   nil,   nil,   nil,   nil,   nil,   nil,   591,   nil,   nil,   591,
+   591,   591,   nil,   591,   591,   nil,   nil,   591,   591,   592,
+   592,   592,   nil,   592,   nil,   nil,   nil,   592,   592,   nil,
+   nil,   nil,   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,   592,   592,   592,
+   592,   592,   592,   nil,   592,   592,   592,   nil,   592,   592,
+   nil,   592,   592,   592,   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,
+   592,   nil,   nil,   592,   nil,   nil,   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,   nil,   nil,   nil,   592,
+   nil,   nil,   592,   592,   592,   nil,   592,   592,   nil,   nil,
+   592,   592,   618,   618,   618,   nil,   618,   nil,   nil,   nil,
+   618,   618,   nil,   nil,   nil,   618,   nil,   618,   618,   618,
+   618,   618,   618,   618,   nil,   nil,   nil,   nil,   nil,   618,
+   618,   618,   618,   618,   618,   618,   nil,   nil,   618,   nil,
+   nil,   nil,   nil,   nil,   nil,   618,   nil,   nil,   618,   618,
+   618,   618,   618,   618,   618,   618,   nil,   618,   618,   618,
+   nil,   618,   618,   nil,   618,   618,   618,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   618,   nil,   nil,   618,
+   nil,   nil,   618,   618,   nil,   nil,   618,   nil,   nil,   nil,
+   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   618,   nil,   nil,   nil,   nil,   618,   618,   618,   618,   618,
+   618,   nil,   nil,   nil,   618,   618,   nil,   nil,   nil,   nil,
+   nil,   nil,   618,   nil,   nil,   618,   618,   618,   nil,   618,
+   618,   nil,   nil,   618,   618,   632,   632,   632,   nil,   632,
+   nil,   nil,   nil,   632,   632,   nil,   nil,   nil,   632,   nil,
+   632,   632,   632,   632,   632,   632,   632,   nil,   nil,   nil,
+   nil,   nil,   632,   632,   632,   632,   632,   632,   632,   nil,
+   nil,   632,   nil,   nil,   nil,   nil,   nil,   nil,   632,   nil,
+   nil,   632,   632,   632,   632,   632,   632,   632,   632,   nil,
+   632,   632,   632,   nil,   632,   632,   nil,   632,   632,   632,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   632,
+   nil,   nil,   632,   nil,   nil,   632,   632,   nil,   nil,   632,
+   nil,   nil,   nil,   nil,   nil,   632,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   632,   nil,   nil,   nil,   nil,   632,   632,
+   632,   632,   632,   632,   nil,   nil,   nil,   632,   632,   nil,
+   nil,   nil,   nil,   nil,   nil,   632,   nil,   nil,   632,   632,
+   632,   nil,   632,   632,   nil,   nil,   632,   632,   638,   638,
+   638,   nil,   638,   nil,   nil,   nil,   638,   638,   nil,   nil,
+   nil,   638,   nil,   638,   638,   638,   638,   638,   638,   638,
+   nil,   nil,   nil,   nil,   nil,   638,   638,   638,   638,   638,
+   638,   638,   nil,   nil,   638,   nil,   nil,   nil,   nil,   nil,
+   nil,   638,   nil,   nil,   638,   638,   638,   638,   638,   638,
+   638,   638,   638,   638,   638,   638,   nil,   638,   638,   nil,
+   638,   638,   638,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   638,   nil,   nil,   638,   nil,   nil,   638,   638,
+   nil,   nil,   638,   nil,   638,   nil,   nil,   nil,   638,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   638,   nil,   nil,   nil,
+   nil,   638,   638,   638,   638,   638,   638,   nil,   nil,   nil,
+   638,   638,   nil,   nil,   nil,   nil,   nil,   nil,   638,   nil,
+   638,   638,   638,   638,   nil,   638,   638,   nil,   nil,   638,
+   638,   641,   641,   641,   nil,   641,   nil,   nil,   nil,   641,
+   641,   nil,   nil,   nil,   641,   nil,   641,   641,   641,   641,
+   641,   641,   641,   nil,   nil,   nil,   nil,   nil,   641,   641,
+   641,   641,   641,   641,   641,   nil,   nil,   641,   nil,   nil,
+   nil,   nil,   nil,   nil,   641,   nil,   nil,   641,   641,   641,
+   641,   641,   641,   641,   641,   641,   641,   641,   641,   nil,
+   641,   641,   nil,   641,   641,   641,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   641,   nil,   nil,   641,   nil,
+   nil,   641,   641,   nil,   nil,   641,   nil,   nil,   nil,   nil,
+   nil,   641,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   641,
+   nil,   nil,   nil,   nil,   641,   641,   641,   641,   641,   641,
+   nil,   nil,   nil,   641,   641,   nil,   nil,   nil,   nil,   nil,
+   nil,   641,   nil,   641,   641,   641,   641,   nil,   641,   641,
+   nil,   nil,   641,   641,   658,   658,   658,   nil,   658,   nil,
+   nil,   nil,   658,   658,   nil,   nil,   nil,   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,   658,   658,   658,   658,   658,   658,   nil,   658,
+   658,   658,   nil,   658,   658,   nil,   658,   658,   658,   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,   658,   nil,   nil,   658,   nil,
+   658,   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,   658,   658,
+   nil,   658,   658,   nil,   nil,   658,   658,   659,   659,   659,
+   nil,   659,   nil,   nil,   nil,   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,   659,   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,   659,   nil,   659,   nil,   659,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   659,   nil,   nil,   nil,   nil,
+   659,   659,   659,   659,   659,   659,   nil,   nil,   nil,   659,
+   659,   nil,   nil,   nil,   nil,   nil,   nil,   659,   nil,   659,
+   659,   659,   659,   nil,   659,   659,   nil,   nil,   659,   659,
+   669,   669,   669,   nil,   669,   nil,   nil,   nil,   669,   669,
+   nil,   nil,   nil,   669,   nil,   669,   669,   669,   669,   669,
+   669,   669,   nil,   nil,   nil,   nil,   nil,   669,   669,   669,
+   669,   669,   669,   669,   nil,   nil,   669,   nil,   nil,   nil,
+   nil,   nil,   nil,   669,   nil,   nil,   669,   669,   669,   669,
+   669,   669,   669,   669,   669,   669,   669,   669,   nil,   669,
+   669,   nil,   669,   669,   669,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   669,   nil,   nil,   669,   nil,   nil,
+   669,   669,   nil,   nil,   669,   nil,   669,   nil,   669,   nil,
+   669,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   669,   nil,
+   nil,   nil,   nil,   669,   669,   669,   669,   669,   669,   nil,
+   nil,   nil,   669,   669,   nil,   nil,   nil,   nil,   nil,   nil,
+   669,   nil,   669,   669,   669,   669,   nil,   669,   669,   nil,
+   nil,   669,   669,   705,   705,   705,   705,   705,   nil,   nil,
+   nil,   705,   705,   nil,   nil,   nil,   705,   nil,   705,   705,
+   705,   705,   705,   705,   705,   nil,   nil,   nil,   nil,   nil,
+   705,   705,   705,   705,   705,   705,   705,   nil,   nil,   705,
+   nil,   nil,   nil,   nil,   nil,   705,   705,   nil,   705,   705,
+   705,   705,   705,   705,   705,   705,   705,   nil,   705,   705,
+   705,   nil,   705,   705,   nil,   705,   705,   705,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   705,   nil,   nil,
+   705,   nil,   nil,   705,   705,   nil,   nil,   705,   nil,   705,
+   nil,   nil,   nil,   705,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   705,   nil,   nil,   nil,   nil,   705,   705,   705,   705,
+   705,   705,   nil,   nil,   nil,   705,   705,   nil,   nil,   nil,
+   nil,   nil,   nil,   705,   nil,   nil,   705,   705,   705,   nil,
+   705,   705,   nil,   nil,   705,   705,   707,   707,   707,   nil,
+   707,   nil,   nil,   nil,   707,   707,   nil,   nil,   nil,   707,
+   nil,   707,   707,   707,   707,   707,   707,   707,   nil,   nil,
+   nil,   nil,   nil,   707,   707,   707,   707,   707,   707,   707,
+   nil,   nil,   707,   nil,   nil,   nil,   nil,   nil,   nil,   707,
+   nil,   nil,   707,   707,   707,   707,   707,   707,   707,   707,
+   nil,   707,   707,   707,   nil,   707,   707,   nil,   707,   707,
+   707,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   707,   nil,   nil,   707,   nil,   nil,   707,   707,   nil,   nil,
+   707,   nil,   707,   nil,   nil,   nil,   707,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   707,   nil,   nil,   nil,   nil,   707,
+   707,   707,   707,   707,   707,   nil,   nil,   nil,   707,   707,
+   nil,   nil,   nil,   nil,   nil,   nil,   707,   nil,   nil,   707,
+   707,   707,   nil,   707,   707,   nil,   nil,   707,   707,   708,
+   708,   708,   nil,   708,   nil,   nil,   nil,   708,   708,   nil,
+   nil,   nil,   708,   nil,   708,   708,   708,   708,   708,   708,
+   708,   nil,   nil,   nil,   nil,   nil,   708,   708,   708,   708,
+   708,   708,   708,   nil,   nil,   708,   nil,   nil,   nil,   nil,
+   nil,   nil,   708,   nil,   nil,   708,   708,   708,   708,   708,
+   708,   708,   708,   nil,   708,   708,   708,   nil,   708,   708,
+   nil,   708,   708,   708,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   708,   nil,   nil,   708,   nil,   nil,   708,
+   708,   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,   708,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,   nil,
+   nil,   nil,   708,   708,   708,   708,   708,   708,   nil,   nil,
+   nil,   708,   708,   nil,   nil,   nil,   nil,   nil,   nil,   708,
+   nil,   nil,   708,   708,   708,   nil,   708,   708,   nil,   nil,
+   708,   708,   709,   709,   709,   nil,   709,   nil,   nil,   nil,
+   709,   709,   nil,   nil,   nil,   709,   nil,   709,   709,   709,
+   709,   709,   709,   709,   nil,   nil,   nil,   nil,   nil,   709,
+   709,   709,   709,   709,   709,   709,   nil,   nil,   709,   nil,
+   nil,   nil,   nil,   nil,   nil,   709,   nil,   nil,   709,   709,
+   709,   709,   709,   709,   709,   709,   709,   709,   709,   709,
+   nil,   709,   709,   nil,   709,   709,   709,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   709,   nil,   nil,   709,
+   nil,   nil,   709,   709,   nil,   nil,   709,   nil,   709,   nil,
+   709,   nil,   709,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   709,   nil,   nil,   nil,   nil,   709,   709,   709,   709,   709,
+   709,   nil,   nil,   nil,   709,   709,   nil,   nil,   nil,   nil,
+   nil,   nil,   709,   nil,   709,   709,   709,   709,   nil,   709,
+   709,   nil,   nil,   709,   709,   712,   712,   712,   712,   712,
+   nil,   nil,   nil,   712,   712,   nil,   nil,   nil,   712,   nil,
+   712,   712,   712,   712,   712,   712,   712,   nil,   nil,   nil,
+   nil,   nil,   712,   712,   712,   712,   712,   712,   712,   nil,
+   nil,   712,   nil,   nil,   nil,   nil,   nil,   712,   712,   nil,
+   712,   712,   712,   712,   712,   712,   712,   712,   712,   nil,
+   712,   712,   712,   nil,   712,   712,   nil,   712,   712,   712,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   712,
+   nil,   nil,   712,   nil,   nil,   712,   712,   nil,   nil,   712,
+   nil,   712,   nil,   nil,   nil,   712,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   712,   nil,   nil,   nil,   nil,   712,   712,
+   712,   712,   712,   712,   nil,   nil,   nil,   712,   712,   nil,
+   nil,   nil,   nil,   nil,   nil,   712,   nil,   nil,   712,   712,
+   712,   nil,   712,   712,   nil,   nil,   712,   712,   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,   nil,   713,   713,   713,   713,   713,
+   713,   713,   nil,   nil,   713,   nil,   nil,   nil,   nil,   nil,
+   nil,   713,   nil,   nil,   713,   713,   713,   713,   713,   713,
+   713,   713,   nil,   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,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   713,   nil,
+   nil,   713,   713,   713,   nil,   713,   713,   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,   nil,   715,   715,
+   715,   715,   715,   715,   715,   nil,   nil,   715,   nil,   nil,
+   nil,   nil,   nil,   nil,   715,   nil,   nil,   715,   715,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   715,   nil,   715,   715,   715,   715,   nil,   715,   715,
+   nil,   nil,   715,   715,   716,   716,   716,   nil,   716,   nil,
+   nil,   nil,   716,   716,   nil,   nil,   nil,   716,   nil,   716,
+   716,   716,   716,   716,   716,   716,   nil,   nil,   nil,   nil,
+   nil,   716,   716,   716,   716,   716,   716,   716,   nil,   nil,
+   716,   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,   nil,
+   716,   716,   716,   716,   716,   716,   716,   716,   716,   716,
+   716,   716,   nil,   716,   716,   nil,   716,   716,   716,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,
+   nil,   716,   nil,   nil,   716,   716,   nil,   nil,   716,   nil,
+   nil,   nil,   716,   nil,   716,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   716,   nil,   nil,   nil,   nil,   716,   716,   716,
+   716,   716,   716,   nil,   nil,   nil,   716,   716,   nil,   nil,
+   nil,   nil,   nil,   nil,   716,   nil,   716,   716,   716,   716,
+   nil,   716,   716,   nil,   nil,   716,   716,   717,   717,   717,
+   nil,   717,   nil,   nil,   nil,   717,   717,   nil,   nil,   nil,
+   717,   nil,   717,   717,   717,   717,   717,   717,   717,   nil,
+   nil,   nil,   nil,   nil,   717,   717,   717,   717,   717,   717,
+   717,   nil,   nil,   717,   nil,   nil,   nil,   nil,   nil,   nil,
+   717,   nil,   nil,   717,   717,   717,   717,   717,   717,   717,
+   717,   nil,   717,   717,   717,   nil,   717,   717,   nil,   717,
+   717,   717,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   717,   nil,   nil,   717,   nil,   nil,   717,   717,   nil,
+   nil,   717,   nil,   nil,   nil,   nil,   nil,   717,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   717,   nil,   nil,   nil,   nil,
+   717,   717,   717,   717,   717,   717,   nil,   nil,   nil,   717,
+   717,   nil,   nil,   nil,   nil,   nil,   nil,   717,   nil,   nil,
+   717,   717,   717,   nil,   717,   717,   nil,   nil,   717,   717,
+   718,   718,   718,   nil,   718,   nil,   nil,   nil,   718,   718,
+   nil,   nil,   nil,   718,   nil,   718,   718,   718,   718,   718,
+   718,   718,   nil,   nil,   nil,   nil,   nil,   718,   718,   718,
+   718,   718,   718,   718,   nil,   nil,   718,   nil,   nil,   nil,
+   nil,   nil,   nil,   718,   nil,   nil,   718,   718,   718,   718,
+   718,   718,   718,   718,   nil,   718,   718,   718,   nil,   718,
+   718,   nil,   718,   718,   718,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   718,   nil,   nil,   718,   nil,   nil,
+   718,   718,   nil,   nil,   718,   nil,   nil,   nil,   nil,   nil,
+   718,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   718,   nil,
+   nil,   nil,   nil,   718,   718,   718,   718,   718,   718,   nil,
+   nil,   nil,   718,   718,   nil,   nil,   nil,   nil,   nil,   nil,
+   718,   nil,   nil,   718,   718,   718,   nil,   718,   718,   nil,
+   nil,   718,   718,   723,   723,   723,   nil,   723,   nil,   nil,
+   nil,   723,   723,   nil,   nil,   nil,   723,   nil,   723,   723,
+   723,   723,   723,   723,   723,   nil,   nil,   nil,   nil,   nil,
+   723,   723,   723,   723,   723,   723,   723,   nil,   nil,   723,
+   nil,   nil,   nil,   nil,   nil,   nil,   723,   nil,   nil,   723,
+   723,   723,   723,   723,   723,   723,   723,   nil,   723,   723,
+   723,   nil,   723,   723,   nil,   723,   723,   723,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   723,   nil,   nil,
+   723,   nil,   nil,   723,   723,   nil,   nil,   723,   nil,   nil,
+   nil,   nil,   nil,   723,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   723,   nil,   nil,   nil,   nil,   723,   723,   723,   723,
+   723,   723,   nil,   nil,   nil,   723,   723,   nil,   nil,   nil,
+   nil,   nil,   nil,   723,   nil,   nil,   723,   723,   723,   nil,
+   723,   723,   nil,   nil,   723,   723,   724,   724,   724,   nil,
+   724,   nil,   nil,   nil,   724,   724,   nil,   nil,   nil,   724,
+   nil,   724,   724,   724,   724,   724,   724,   724,   nil,   nil,
+   nil,   nil,   nil,   724,   724,   724,   724,   724,   724,   724,
+   nil,   nil,   724,   nil,   nil,   nil,   nil,   nil,   nil,   724,
+   nil,   nil,   724,   724,   724,   724,   724,   724,   724,   724,
+   nil,   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,   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   724,   nil,   nil,   724,
+   724,   724,   nil,   724,   724,   nil,   nil,   724,   724,   772,
+   772,   772,   nil,   772,   nil,   nil,   nil,   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,   772,   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,   772,   nil,   772,   nil,   772,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   772,   nil,   nil,
+   nil,   nil,   772,   772,   772,   772,   772,   772,   nil,   nil,
+   nil,   772,   772,   nil,   nil,   nil,   nil,   nil,   nil,   772,
+   nil,   772,   772,   772,   772,   nil,   772,   772,   nil,   nil,
+   772,   772,   781,   781,   781,   nil,   781,   nil,   nil,   nil,
+   781,   781,   nil,   nil,   nil,   781,   nil,   781,   781,   781,
+   781,   781,   781,   781,   nil,   nil,   nil,   nil,   nil,   781,
+   781,   781,   781,   781,   781,   781,   nil,   nil,   781,   nil,
+   nil,   nil,   nil,   nil,   nil,   781,   nil,   nil,   781,   781,
+   781,   781,   781,   781,   781,   781,   nil,   781,   781,   781,
+   nil,   781,   781,   nil,   781,   781,   781,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   781,   nil,   nil,   781,
+   nil,   nil,   781,   781,   nil,   nil,   781,   nil,   nil,   nil,
+   nil,   nil,   781,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   781,   nil,   nil,   nil,   nil,   781,   781,   781,   781,   781,
+   781,   nil,   nil,   nil,   781,   781,   nil,   nil,   nil,   nil,
+   nil,   nil,   781,   nil,   nil,   781,   781,   781,   nil,   781,
+   781,   nil,   nil,   781,   781,   784,   784,   784,   nil,   784,
+   nil,   nil,   nil,   784,   784,   nil,   nil,   nil,   784,   nil,
+   784,   784,   784,   784,   784,   784,   784,   nil,   nil,   nil,
+   nil,   nil,   784,   784,   784,   784,   784,   784,   784,   nil,
+   nil,   784,   nil,   nil,   nil,   nil,   nil,   nil,   784,   nil,
+   nil,   784,   784,   784,   784,   784,   784,   784,   784,   nil,
+   784,   784,   784,   nil,   784,   784,   nil,   784,   784,   784,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   784,
+   nil,   nil,   784,   nil,   nil,   784,   784,   nil,   nil,   784,
+   nil,   nil,   nil,   nil,   nil,   784,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   784,   nil,   nil,   nil,   nil,   784,   784,
+   784,   784,   784,   784,   nil,   nil,   nil,   784,   784,   nil,
+   nil,   nil,   nil,   nil,   nil,   784,   nil,   nil,   784,   784,
+   784,   nil,   784,   784,   nil,   nil,   784,   784,   806,   806,
+   806,   nil,   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,   nil,   806,   nil,   nil,   nil,   nil,   nil,
+   nil,   806,   nil,   nil,   806,   806,   806,   806,   806,   806,
+   806,   806,   nil,   806,   806,   806,   nil,   806,   806,   nil,
+   806,   806,   806,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   806,   nil,   nil,   806,   nil,   nil,   806,   806,
+   nil,   nil,   806,   nil,   806,   nil,   nil,   nil,   806,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   806,   nil,   nil,   nil,
+   nil,   806,   806,   806,   806,   806,   806,   nil,   nil,   nil,
+   806,   806,   nil,   nil,   nil,   nil,   nil,   nil,   806,   nil,
+   nil,   806,   806,   806,   nil,   806,   806,   nil,   nil,   806,
+   806,   821,   821,   821,   nil,   821,   nil,   nil,   nil,   821,
+   821,   nil,   nil,   nil,   821,   nil,   821,   821,   821,   821,
+   821,   821,   821,   nil,   nil,   nil,   nil,   nil,   821,   821,
+   821,   821,   821,   821,   821,   nil,   nil,   821,   nil,   nil,
+   nil,   nil,   nil,   nil,   821,   nil,   nil,   821,   821,   821,
+   821,   821,   821,   821,   821,   nil,   821,   821,   821,   nil,
+   821,   821,   nil,   821,   821,   821,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   821,   nil,   nil,   821,   nil,
+   nil,   821,   821,   nil,   nil,   821,   nil,   nil,   nil,   nil,
+   nil,   821,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   821,
+   nil,   nil,   nil,   nil,   821,   821,   821,   821,   821,   821,
+   nil,   nil,   nil,   821,   821,   nil,   nil,   nil,   nil,   nil,
+   nil,   821,   nil,   nil,   821,   821,   821,   nil,   821,   821,
+   nil,   nil,   821,   821,   857,   857,   857,   nil,   857,   nil,
+   nil,   nil,   857,   857,   nil,   nil,   nil,   857,   nil,   857,
+   857,   857,   857,   857,   857,   857,   nil,   nil,   nil,   nil,
+   nil,   857,   857,   857,   857,   857,   857,   857,   nil,   nil,
+   857,   nil,   nil,   nil,   nil,   nil,   nil,   857,   nil,   nil,
+   857,   857,   857,   857,   857,   857,   857,   857,   nil,   857,
+   857,   857,   nil,   857,   857,   nil,   857,   857,   857,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   857,   nil,
+   nil,   857,   nil,   nil,   857,   857,   nil,   nil,   857,   nil,
+   nil,   nil,   nil,   nil,   857,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   857,   nil,   nil,   nil,   nil,   857,   857,   857,
+   857,   857,   857,   nil,   nil,   nil,   857,   857,   nil,   nil,
+   nil,   nil,   nil,   nil,   857,   nil,   nil,   857,   857,   857,
+   nil,   857,   857,   nil,   nil,   857,   857,   870,   870,   870,
+   nil,   870,   nil,   nil,   nil,   870,   870,   nil,   nil,   nil,
+   870,   nil,   870,   870,   870,   870,   870,   870,   870,   nil,
+   nil,   nil,   nil,   nil,   870,   870,   870,   870,   870,   870,
+   870,   nil,   nil,   870,   nil,   nil,   nil,   nil,   nil,   nil,
+   870,   nil,   nil,   870,   870,   870,   870,   870,   870,   870,
+   870,   nil,   870,   870,   870,   nil,   870,   870,   nil,   870,
+   870,   870,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   870,   nil,   nil,   870,   nil,   nil,   870,   870,   nil,
+   nil,   870,   nil,   nil,   nil,   nil,   nil,   870,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   870,   nil,   nil,   nil,   nil,
+   870,   870,   870,   870,   870,   870,   nil,   nil,   nil,   870,
+   870,   nil,   nil,   nil,   nil,   nil,   nil,   870,   nil,   nil,
+   870,   870,   870,   nil,   870,   870,   nil,   nil,   870,   870,
+   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,   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,   886,   886,   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,
+   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,   nil,   nil,   nil,
+   886,   nil,   nil,   886,   886,   886,   nil,   886,   886,   nil,
+   nil,   886,   886,   894,   894,   894,   nil,   894,   nil,   nil,
+   nil,   894,   894,   nil,   nil,   nil,   894,   nil,   894,   894,
+   894,   894,   894,   894,   894,   nil,   nil,   nil,   nil,   nil,
+   894,   894,   894,   894,   894,   894,   894,   nil,   nil,   894,
+   nil,   nil,   nil,   nil,   nil,   nil,   894,   nil,   nil,   894,
+   894,   894,   894,   894,   894,   894,   894,   nil,   894,   894,
+   894,   nil,   894,   894,   nil,   894,   894,   894,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   894,   nil,   nil,
+   894,   nil,   nil,   894,   894,   nil,   nil,   894,   nil,   nil,
+   nil,   nil,   nil,   894,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   894,   nil,   nil,   nil,   nil,   894,   894,   894,   894,
+   894,   894,   nil,   nil,   nil,   894,   894,   nil,   nil,   nil,
+   nil,   nil,   nil,   894,   nil,   nil,   894,   894,   894,   nil,
+   894,   894,   nil,   nil,   894,   894,   906,   906,   906,   nil,
+   906,   nil,   nil,   nil,   906,   906,   nil,   nil,   nil,   906,
+   nil,   906,   906,   906,   906,   906,   906,   906,   nil,   nil,
+   nil,   nil,   nil,   906,   906,   906,   906,   906,   906,   906,
+   nil,   nil,   906,   nil,   nil,   nil,   nil,   nil,   nil,   906,
+   nil,   nil,   906,   906,   906,   906,   906,   906,   906,   906,
+   nil,   906,   906,   906,   nil,   906,   906,   nil,   906,   906,
+   906,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   906,   nil,   nil,   906,   nil,   nil,   906,   906,   nil,   nil,
+   906,   nil,   nil,   nil,   nil,   nil,   906,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   906,   nil,   nil,   nil,   nil,   906,
+   906,   906,   906,   906,   906,   nil,   nil,   nil,   906,   906,
+   nil,   nil,   nil,   nil,   nil,   nil,   906,   nil,   nil,   906,
+   906,   906,   nil,   906,   906,   nil,   nil,   906,   906,   907,
+   907,   907,   nil,   907,   nil,   nil,   nil,   907,   907,   nil,
+   nil,   nil,   907,   nil,   907,   907,   907,   907,   907,   907,
+   907,   nil,   nil,   nil,   nil,   nil,   907,   907,   907,   907,
+   907,   907,   907,   nil,   nil,   907,   nil,   nil,   nil,   nil,
+   nil,   nil,   907,   nil,   nil,   907,   907,   907,   907,   907,
+   907,   907,   907,   nil,   907,   907,   907,   nil,   907,   907,
+   nil,   907,   907,   907,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   907,   nil,   nil,   907,   nil,   nil,   907,
+   907,   nil,   nil,   907,   nil,   nil,   nil,   nil,   nil,   907,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   907,   nil,   nil,
+   nil,   nil,   907,   907,   907,   907,   907,   907,   nil,   nil,
+   nil,   907,   907,   nil,   nil,   nil,   nil,   nil,   nil,   907,
+   nil,   nil,   907,   907,   907,   nil,   907,   907,   nil,   nil,
+   907,   907,   908,   908,   908,   nil,   908,   nil,   nil,   nil,
+   908,   908,   nil,   nil,   nil,   908,   nil,   908,   908,   908,
+   908,   908,   908,   908,   nil,   nil,   nil,   nil,   nil,   908,
+   908,   908,   908,   908,   908,   908,   nil,   nil,   908,   nil,
+   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   908,   908,
+   908,   908,   908,   908,   908,   908,   nil,   908,   908,   908,
+   nil,   908,   908,   nil,   908,   908,   908,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   908,
+   nil,   nil,   908,   908,   nil,   nil,   908,   nil,   nil,   nil,
+   nil,   nil,   908,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   908,   nil,   nil,   nil,   nil,   908,   908,   908,   908,   908,
+   908,   nil,   nil,   nil,   908,   908,   nil,   nil,   nil,   nil,
+   nil,   nil,   908,   nil,   nil,   908,   908,   908,   nil,   908,
+   908,   nil,   nil,   908,   908,   909,   909,   909,   nil,   909,
+   nil,   nil,   nil,   909,   909,   nil,   nil,   nil,   909,   nil,
+   909,   909,   909,   909,   909,   909,   909,   nil,   nil,   nil,
+   nil,   nil,   909,   909,   909,   909,   909,   909,   909,   nil,
+   nil,   909,   nil,   nil,   nil,   nil,   nil,   nil,   909,   nil,
+   nil,   909,   909,   909,   909,   909,   909,   909,   909,   nil,
+   909,   909,   909,   nil,   909,   909,   nil,   909,   909,   909,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   909,
+   nil,   nil,   909,   nil,   nil,   909,   909,   nil,   nil,   909,
+   nil,   nil,   nil,   nil,   nil,   909,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   909,   nil,   nil,   nil,   nil,   909,   909,
+   909,   909,   909,   909,   nil,   nil,   nil,   909,   909,   nil,
+   nil,   nil,   nil,   nil,   nil,   909,   nil,   nil,   909,   909,
+   909,   nil,   909,   909,   nil,   nil,   909,   909,   938,   938,
+   938,   nil,   938,   nil,   nil,   nil,   938,   938,   nil,   nil,
+   nil,   938,   nil,   938,   938,   938,   938,   938,   938,   938,
+   nil,   nil,   nil,   nil,   nil,   938,   938,   938,   938,   938,
+   938,   938,   nil,   nil,   938,   nil,   nil,   nil,   nil,   nil,
+   nil,   938,   nil,   nil,   938,   938,   938,   938,   938,   938,
+   938,   938,   nil,   938,   938,   938,   nil,   938,   938,   nil,
+   938,   938,   938,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   938,   nil,   nil,   938,   nil,   nil,   938,   938,
+   nil,   nil,   938,   nil,   nil,   nil,   nil,   nil,   938,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   938,   nil,   nil,   nil,
+   nil,   938,   938,   938,   938,   938,   938,   nil,   nil,   nil,
+   938,   938,   nil,   nil,   nil,   nil,   nil,   nil,   938,   nil,
+   nil,   938,   938,   938,   nil,   938,   938,   nil,   nil,   938,
+   938,   960,   960,   960,   nil,   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,   nil,   960,   nil,   nil,   960,   960,   960,
+   960,   960,   960,   960,   960,   nil,   960,   960,   960,   nil,
+   960,   960,   nil,   960,   960,   960,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   960,   nil,   nil,   960,   nil,
+   nil,   960,   960,   nil,   nil,   960,   nil,   nil,   nil,   nil,
+   nil,   960,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   960,
+   nil,   nil,   nil,   nil,   960,   960,   960,   960,   960,   960,
+   nil,   nil,   nil,   960,   960,   nil,   nil,   nil,   nil,   nil,
+   nil,   960,   nil,   nil,   960,   960,   960,   nil,   960,   960,
+   nil,   nil,   960,   960,   991,   991,   991,   nil,   991,   nil,
+   nil,   nil,   991,   991,   nil,   nil,   nil,   991,   nil,   991,
+   991,   991,   991,   991,   991,   991,   nil,   nil,   nil,   nil,
+   nil,   991,   991,   991,   991,   991,   991,   991,   nil,   nil,
+   991,   nil,   nil,   nil,   nil,   nil,   nil,   991,   nil,   nil,
+   991,   991,   991,   991,   991,   991,   991,   991,   nil,   991,
+   991,   991,   nil,   991,   991,   nil,   991,   991,   991,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   991,   nil,
+   nil,   991,   nil,   nil,   991,   991,   nil,   nil,   991,   nil,
+   nil,   nil,   nil,   nil,   991,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   991,   nil,   nil,   nil,   nil,   991,   991,   991,
+   991,   991,   991,   nil,   nil,   nil,   991,   991,   nil,   nil,
+   nil,   nil,   nil,   nil,   991,   nil,   nil,   991,   991,   991,
+   nil,   991,   991,   nil,   nil,   991,   991,   996,   996,   996,
+   nil,   996,   nil,   nil,   nil,   996,   996,   nil,   nil,   nil,
+   996,   nil,   996,   996,   996,   996,   996,   996,   996,   nil,
+   nil,   nil,   nil,   nil,   996,   996,   996,   996,   996,   996,
+   996,   nil,   nil,   996,   nil,   nil,   nil,   nil,   nil,   nil,
+   996,   nil,   nil,   996,   996,   996,   996,   996,   996,   996,
+   996,   nil,   996,   996,   996,   nil,   996,   996,   nil,   996,
+   996,   996,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   996,   nil,   nil,   996,   nil,   nil,   996,   996,   nil,
+   nil,   996,   nil,   nil,   nil,   nil,   nil,   996,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   996,   nil,   nil,   nil,   nil,
+   996,   996,   996,   996,   996,   996,   nil,   nil,   nil,   996,
+   996,   nil,   nil,   nil,   nil,   nil,   nil,   996,   nil,   nil,
+   996,   996,   996,   nil,   996,   996,   nil,   nil,   996,   996,
+  1005,  1005,  1005,   nil,  1005,   nil,   nil,   nil,  1005,  1005,
+   nil,   nil,   nil,  1005,   nil,  1005,  1005,  1005,  1005,  1005,
+  1005,  1005,   nil,   nil,   nil,   nil,   nil,  1005,  1005,  1005,
+  1005,  1005,  1005,  1005,   nil,   nil,  1005,   nil,   nil,   nil,
+   nil,   nil,   nil,  1005,   nil,   nil,  1005,  1005,  1005,  1005,
+  1005,  1005,  1005,  1005,   nil,  1005,  1005,  1005,   nil,  1005,
+  1005,   nil,  1005,  1005,  1005,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1005,   nil,   nil,  1005,   nil,   nil,
+  1005,  1005,   nil,   nil,  1005,   nil,  1005,   nil,   nil,   nil,
+  1005,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1005,   nil,
+   nil,   nil,   nil,  1005,  1005,  1005,  1005,  1005,  1005,   nil,
+   nil,   nil,  1005,  1005,   nil,   nil,   nil,   nil,   nil,   nil,
+  1005,   nil,   nil,  1005,  1005,  1005,   nil,  1005,  1005,   nil,
+   nil,  1005,  1005,  1029,  1029,  1029,   nil,  1029,   nil,   nil,
+   nil,  1029,  1029,   nil,   nil,   nil,  1029,   nil,  1029,  1029,
+  1029,  1029,  1029,  1029,  1029,   nil,   nil,   nil,   nil,   nil,
+  1029,  1029,  1029,  1029,  1029,  1029,  1029,   nil,   nil,  1029,
+   nil,   nil,   nil,   nil,   nil,   nil,  1029,   nil,   nil,  1029,
+  1029,  1029,  1029,  1029,  1029,  1029,  1029,  1029,  1029,  1029,
+  1029,   nil,  1029,  1029,   nil,  1029,  1029,  1029,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1029,   nil,   nil,
+  1029,   nil,   nil,  1029,  1029,   nil,   nil,  1029,   nil,   nil,
+   nil,  1029,   nil,  1029,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1029,   nil,   nil,   nil,   nil,  1029,  1029,  1029,  1029,
+  1029,  1029,   nil,   nil,   nil,  1029,  1029,   nil,   nil,   nil,
+   nil,   nil,   nil,  1029,   nil,  1029,  1029,  1029,  1029,   nil,
+  1029,  1029,   nil,   nil,  1029,  1029,  1030,  1030,  1030,   nil,
+  1030,   nil,   nil,   nil,  1030,  1030,   nil,   nil,   nil,  1030,
+   nil,  1030,  1030,  1030,  1030,  1030,  1030,  1030,   nil,   nil,
+   nil,   nil,   nil,  1030,  1030,  1030,  1030,  1030,  1030,  1030,
+   nil,   nil,  1030,   nil,   nil,   nil,   nil,   nil,   nil,  1030,
+   nil,   nil,  1030,  1030,  1030,  1030,  1030,  1030,  1030,  1030,
+   nil,  1030,  1030,  1030,   nil,  1030,  1030,   nil,  1030,  1030,
+  1030,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1030,   nil,   nil,  1030,   nil,   nil,  1030,  1030,   nil,   nil,
+  1030,   nil,   nil,   nil,   nil,   nil,  1030,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1030,   nil,   nil,   nil,   nil,  1030,
+  1030,  1030,  1030,  1030,  1030,   nil,   nil,   nil,  1030,  1030,
+   nil,   nil,   nil,   nil,   nil,   nil,  1030,   nil,   nil,  1030,
+  1030,  1030,   nil,  1030,  1030,   nil,   nil,  1030,  1030,  1114,
+  1114,  1114,   nil,  1114,   nil,   nil,   nil,  1114,  1114,   nil,
+   nil,   nil,  1114,   nil,  1114,  1114,  1114,  1114,  1114,  1114,
+  1114,   nil,   nil,   nil,   nil,   nil,  1114,  1114,  1114,  1114,
+  1114,  1114,  1114,   nil,   nil,  1114,   nil,   nil,   nil,   nil,
+   nil,   nil,  1114,   nil,   nil,  1114,  1114,  1114,  1114,  1114,
+  1114,  1114,  1114,   nil,  1114,  1114,  1114,   nil,  1114,  1114,
+   nil,  1114,  1114,  1114,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1114,   nil,   nil,  1114,   nil,   nil,  1114,
+  1114,   nil,   nil,  1114,   nil,   nil,   nil,   nil,   nil,  1114,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1114,   nil,   nil,
+   nil,   nil,  1114,  1114,  1114,  1114,  1114,  1114,   nil,   nil,
+   nil,  1114,  1114,   nil,   nil,   nil,   nil,   nil,   nil,  1114,
+   nil,   nil,  1114,  1114,  1114,   nil,  1114,  1114,   nil,   nil,
+  1114,  1114,  1175,  1175,  1175,   nil,  1175,   nil,   nil,   nil,
+  1175,  1175,   nil,   nil,   nil,  1175,   nil,  1175,  1175,  1175,
+  1175,  1175,  1175,  1175,   nil,   nil,   nil,   nil,   nil,  1175,
+  1175,  1175,  1175,  1175,  1175,  1175,   nil,   nil,  1175,   nil,
+   nil,   nil,   nil,   nil,   nil,  1175,   nil,   nil,  1175,  1175,
+  1175,  1175,  1175,  1175,  1175,  1175,   nil,  1175,  1175,  1175,
+   nil,  1175,  1175,   nil,  1175,  1175,  1175,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1175,   nil,   nil,  1175,
+   nil,   nil,  1175,  1175,   nil,   nil,  1175,   nil,   nil,   nil,
+   nil,   nil,  1175,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1175,   nil,   nil,   nil,   nil,  1175,  1175,  1175,  1175,  1175,
+  1175,   nil,   nil,   nil,  1175,  1175,   nil,   nil,   nil,   nil,
+   nil,   nil,  1175,   nil,   nil,  1175,  1175,  1175,   nil,  1175,
+  1175,   nil,   nil,  1175,  1175,  1176,  1176,  1176,   nil,  1176,
+   nil,   nil,   nil,  1176,  1176,   nil,   nil,   nil,  1176,   nil,
+  1176,  1176,  1176,  1176,  1176,  1176,  1176,   nil,   nil,   nil,
+   nil,   nil,  1176,  1176,  1176,  1176,  1176,  1176,  1176,   nil,
+   nil,  1176,   nil,   nil,   nil,   nil,   nil,   nil,  1176,   nil,
+   nil,  1176,  1176,  1176,  1176,  1176,  1176,  1176,  1176,   nil,
+  1176,  1176,  1176,   nil,  1176,  1176,   nil,  1176,  1176,  1176,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1176,
+   nil,   nil,  1176,   nil,   nil,  1176,  1176,   nil,   nil,  1176,
+   nil,   nil,   nil,   nil,   nil,  1176,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1176,   nil,   nil,   nil,   nil,  1176,  1176,
+  1176,  1176,  1176,  1176,   nil,   nil,   nil,  1176,  1176,   nil,
+   nil,   nil,   nil,   nil,   nil,  1176,   nil,   nil,  1176,  1176,
+  1176,   nil,  1176,  1176,   nil,   nil,  1176,  1176,  1209,  1209,
+  1209,   nil,  1209,   nil,   nil,   nil,  1209,  1209,   nil,   nil,
+   nil,  1209,   nil,  1209,  1209,  1209,  1209,  1209,  1209,  1209,
+   nil,   nil,   nil,   nil,   nil,  1209,  1209,  1209,  1209,  1209,
+  1209,  1209,   nil,   nil,  1209,   nil,   nil,   nil,   nil,   nil,
+   nil,  1209,   nil,   nil,  1209,  1209,  1209,  1209,  1209,  1209,
+  1209,  1209,  1209,  1209,  1209,  1209,   nil,  1209,  1209,   nil,
+  1209,  1209,  1209,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1209,   nil,   nil,  1209,   nil,   nil,  1209,  1209,
+   nil,   nil,  1209,   nil,  1209,   nil,  1209,   nil,  1209,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1209,   nil,   nil,   nil,
+   nil,  1209,  1209,  1209,  1209,  1209,  1209,   nil,   nil,   nil,
+  1209,  1209,   nil,   nil,   nil,   nil,   nil,   nil,  1209,   nil,
+  1209,  1209,  1209,  1209,   nil,  1209,  1209,   nil,   nil,  1209,
+  1209,    38,    38,    38,   nil,    38,   nil,   nil,   nil,    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,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   nil,    38,   nil,   nil,    38,    38,    38,
+    38,    38,    38,    38,    38,   nil,    38,    38,    38,   nil,
+    38,    38,   nil,   nil,   nil,    38,   nil,   nil,   nil,   nil,
+   nil,  1151,   nil,  1151,  1151,  1151,  1151,  1151,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    38,   nil,  1151,    38,   nil,
+   nil,    38,    38,   nil,   nil,    38,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1151,
+   nil,   nil,   nil,   nil,    38,    38,    38,    38,    38,    38,
+  1151,  1151,   nil,    38,    38,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   nil,    38,    38,    38,   nil,    38,    38,
+    39,    39,    39,   nil,    39,   nil,   nil,   nil,    39,    39,
+   nil,   nil,   nil,    39,  1151,    39,    39,    39,    39,    39,
+    39,    39,   nil,   nil,   nil,   nil,   nil,    39,    39,    39,
+    39,    39,    39,    39,   nil,   nil,    39,   nil,   nil,   nil,
+   nil,   nil,   nil,    39,   nil,   nil,    39,    39,    39,    39,
+    39,    39,    39,    39,   nil,    39,    39,    39,   nil,    39,
+    39,   nil,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
+  1213,   nil,  1213,  1213,  1213,  1213,  1213,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    39,   nil,  1213,    39,   nil,   nil,
+    39,    39,   nil,   nil,    39,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1213,   nil,
+   nil,   nil,   nil,    39,    39,    39,    39,    39,    39,  1213,
+  1213,   nil,    39,    39,   nil,   nil,   nil,    39,   nil,   nil,
+    39,   nil,   nil,    39,    39,    39,   nil,    39,    39,    77,
+    77,    77,   nil,    77,   nil,   nil,   nil,    77,    77,   nil,
+   nil,   nil,    77,  1213,    77,    77,    77,    77,    77,    77,
+    77,   nil,   nil,   nil,   nil,   nil,    77,    77,    77,    77,
+    77,    77,    77,   nil,   nil,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,    77,   nil,   nil,    77,    77,    77,    77,    77,
+    77,    77,    77,   nil,    77,    77,    77,   nil,    77,    77,
+   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,  1235,
+   nil,  1235,  1235,  1235,  1235,  1235,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    77,   nil,  1235,    77,   nil,   nil,    77,
+    77,   nil,   nil,    77,   nil,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1235,   nil,   nil,
+   nil,   nil,    77,    77,    77,    77,    77,    77,  1235,  1235,
+   nil,    77,    77,   nil,   nil,   nil,   nil,   nil,   nil,    77,
+   nil,   nil,    77,    77,    77,   nil,    77,    77,    78,    78,
+    78,   nil,    78,   nil,   nil,   nil,    78,    78,   nil,   nil,
+   nil,    78,  1235,    78,    78,    78,    78,    78,    78,    78,
+   nil,   nil,   nil,   nil,   nil,    78,    78,    78,    78,    78,
+    78,    78,   nil,   nil,    78,   nil,   nil,   nil,   nil,   nil,
+   nil,    78,   nil,   nil,    78,    78,    78,    78,    78,    78,
+    78,    78,   nil,    78,    78,    78,   nil,    78,    78,   nil,
+   nil,   nil,    78,   nil,   nil,   nil,   nil,   nil,  1237,   nil,
+  1237,  1237,  1237,  1237,  1237,   nil,   nil,   nil,   nil,    78,
+   nil,   nil,    78,   nil,  1237,    78,   nil,   nil,    78,    78,
+   nil,   nil,    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1237,   nil,   nil,   nil,
+   nil,    78,    78,    78,    78,    78,    78,  1237,  1237,   nil,
+    78,    78,   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,
+   nil,    78,    78,    78,   nil,    78,    78,    79,    79,    79,
+   nil,    79,   nil,   nil,   nil,    79,    79,   nil,   nil,   nil,
+    79,  1237,    79,    79,    79,    79,    79,    79,    79,   nil,
+   nil,   nil,   nil,   nil,    79,    79,    79,    79,    79,    79,
+    79,   nil,   nil,    79,   nil,   nil,   nil,   nil,   nil,   nil,
+    79,   nil,   nil,    79,    79,    79,    79,    79,    79,    79,
+    79,   nil,    79,    79,    79,   nil,    79,    79,   nil,   nil,
+   nil,    79,   nil,   nil,   nil,   nil,   nil,  1239,   nil,  1239,
+  1239,  1239,  1239,  1239,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    79,   nil,  1239,    79,   nil,   nil,    79,    79,   nil,
+   nil,    79,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1239,   nil,   nil,   nil,   nil,
+    79,    79,    79,    79,    79,    79,  1239,  1239,   nil,    79,
+    79,   nil,   nil,   nil,   nil,   nil,   nil,    79,   nil,   nil,
+    79,    79,    79,   nil,    79,    79,   341,   341,   341,   nil,
+   341,   nil,   nil,   nil,   341,   341,   nil,   nil,   nil,   341,
+  1239,   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,   nil,   nil,
+   341,   nil,   nil,   nil,   nil,   nil,  1265,   nil,  1265,  1265,
+  1265,  1265,  1265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   341,   nil,  1265,   341,   nil,   nil,   341,   341,   nil,   nil,
+   341,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1265,   nil,   nil,   nil,   nil,   341,
+   341,   341,   341,   341,   341,  1265,  1265,   nil,   341,   341,
+   nil,   nil,   nil,   341,   nil,   nil,   341,   nil,   nil,   341,
+   341,   341,   nil,   341,   341,   360,   360,   360,   nil,   360,
+   nil,   nil,   nil,   360,   360,   nil,   nil,   nil,   360,  1265,
+   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,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   360,   360,
+   360,   360,   360,   360,   nil,   nil,   nil,   360,   360,   nil,
+   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   360,   360,
+   360,   nil,   360,   360,   573,   573,   573,   nil,   573,   nil,
+   nil,   nil,   573,   573,   nil,   nil,   nil,   573,   nil,   573,
+   573,   573,   573,   573,   573,   573,   nil,   nil,   nil,   nil,
+   nil,   573,   573,   573,   573,   573,   573,   573,   nil,   nil,
+   573,   nil,   nil,   nil,   nil,   nil,   nil,   573,   nil,   nil,
+   573,   573,   573,   573,   573,   573,   573,   573,   nil,   573,
+   573,   573,   nil,   573,   573,   nil,   nil,   nil,   573,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   573,   nil,
+   nil,   573,   nil,   nil,   573,   573,   nil,   nil,   573,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   573,   573,   573,
+   573,   573,   573,   nil,   nil,   nil,   573,   573,   nil,   nil,
+   nil,   nil,   nil,   nil,   573,   nil,   nil,   573,   573,   573,
+   nil,   573,   573,   582,   582,   582,   nil,   582,   nil,   nil,
+   nil,   582,   582,   nil,   nil,   nil,   582,   nil,   582,   582,
+   582,   582,   582,   582,   582,   nil,   nil,   nil,   nil,   nil,
+   582,   582,   582,   582,   582,   582,   582,   nil,   nil,   582,
+   nil,   nil,   nil,   nil,   nil,   nil,   582,   nil,   nil,   582,
+   582,   582,   582,   582,   582,   582,   582,   nil,   582,   582,
+   582,   nil,   582,   582,   nil,   nil,   nil,   582,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   582,   nil,   nil,
+   582,   nil,   nil,   582,   582,   nil,   nil,   582,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   582,   582,   582,   582,
+   582,   582,   nil,   nil,   nil,   582,   582,   nil,   nil,   nil,
+   nil,   nil,   nil,   582,   nil,   nil,   582,   582,   582,   nil,
+   582,   582,   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,   nil,   788,
+   788,   788,   788,   788,   788,   788,   nil,   nil,   788,   nil,
+   nil,   nil,   nil,   nil,   nil,   788,   nil,   nil,   788,   788,
+   788,   788,   788,   788,   788,   788,   nil,   788,   788,   788,
+   nil,   788,   788,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   788,   788,   788,   788,   788,
+   788,   nil,   nil,   nil,   788,   788,   nil,   nil,   nil,   nil,
+   nil,   nil,   788,   nil,   nil,   788,   788,   788,   nil,   788,
+   788,   799,   799,   799,   nil,   799,   nil,   nil,   nil,   799,
+   799,   nil,   nil,   nil,   799,   nil,   799,   799,   799,   799,
+   799,   799,   799,   nil,   nil,   nil,   nil,   nil,   799,   799,
+   799,   799,   799,   799,   799,   nil,   nil,   799,   nil,   nil,
+   nil,   nil,   nil,   nil,   799,   nil,   nil,   799,   799,   799,
+   799,   799,   799,   799,   799,   nil,   799,   799,   799,   nil,
+   799,   799,   nil,   nil,   nil,   799,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   799,   nil,   nil,   799,   nil,
+   nil,   799,   799,   nil,   nil,   799,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   799,   799,   799,   799,   799,   799,
+   nil,   nil,   nil,   799,   799,   nil,   nil,   nil,   nil,   nil,
+   nil,   799,   nil,   nil,   799,   799,   799,   nil,   799,   799,
+  1074,  1074,  1074,   nil,  1074,   nil,   nil,   nil,  1074,  1074,
+   nil,   nil,   nil,  1074,   nil,  1074,  1074,  1074,  1074,  1074,
+  1074,  1074,   nil,   nil,   nil,   nil,   nil,  1074,  1074,  1074,
+  1074,  1074,  1074,  1074,   nil,   nil,  1074,   nil,   nil,   nil,
+   nil,   nil,   nil,  1074,   nil,   nil,  1074,  1074,  1074,  1074,
+  1074,  1074,  1074,  1074,   nil,  1074,  1074,  1074,   nil,  1074,
+  1074,   nil,   nil,   nil,  1074,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1074,   nil,   nil,  1074,   nil,   nil,
+  1074,  1074,   nil,   nil,  1074,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1074,  1074,  1074,  1074,  1074,  1074,   nil,
+   nil,   nil,  1074,  1074,   nil,   nil,   nil,   nil,   nil,   nil,
+  1074,   nil,   nil,  1074,  1074,  1074,   nil,  1074,  1074,  1085,
+  1085,  1085,   nil,  1085,   nil,   nil,   nil,  1085,  1085,   nil,
+   nil,   nil,  1085,   nil,  1085,  1085,  1085,  1085,  1085,  1085,
+  1085,   nil,   nil,   nil,   nil,   nil,  1085,  1085,  1085,  1085,
+  1085,  1085,  1085,   nil,   nil,  1085,   nil,   nil,   nil,   nil,
+   nil,   nil,  1085,   nil,   nil,  1085,  1085,  1085,  1085,  1085,
+  1085,  1085,  1085,   nil,  1085,  1085,  1085,   nil,  1085,  1085,
+   nil,   nil,   nil,  1085,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1085,   nil,   nil,  1085,   nil,   nil,  1085,
+  1085,   nil,   nil,  1085,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1085,  1085,  1085,  1085,  1085,  1085,   nil,   nil,
+   nil,  1085,  1085,   nil,   nil,   nil,   nil,   nil,   nil,  1085,
+   nil,   nil,  1085,  1085,  1085,   nil,  1085,  1085,  1155,  1155,
+  1155,   nil,  1155,   nil,   nil,   nil,  1155,  1155,   nil,   nil,
+   nil,  1155,   nil,  1155,  1155,  1155,  1155,  1155,  1155,  1155,
+   nil,   nil,   nil,   nil,   nil,  1155,  1155,  1155,  1155,  1155,
+  1155,  1155,   nil,   nil,  1155,   nil,   nil,   nil,   nil,   nil,
+   nil,  1155,   nil,   nil,  1155,  1155,  1155,  1155,  1155,  1155,
+  1155,  1155,   nil,  1155,  1155,  1155,   nil,  1155,  1155,   nil,
+   nil,   nil,  1155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1155,   nil,   nil,  1155,   nil,   nil,  1155,  1155,
+   nil,   nil,  1155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1155,  1155,  1155,  1155,  1155,  1155,   nil,   nil,   nil,
+  1155,  1155,   nil,   nil,   nil,   nil,   nil,   nil,  1155,   nil,
+   nil,  1155,  1155,  1155,   nil,  1155,  1155,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
+    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,
+    11,   nil,    11,    11,    11,    11,    11,    11,    11,   nil,
+   nil,    11,    11,   nil,   nil,   nil,    11,    11,    11,    11,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,   nil,   nil,    11,
+    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    11,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,   nil,   nil,   nil,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,   nil,   nil,   nil,
+   nil,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    12,    12,   nil,    12,    12,    12,    12,    12,
+    12,    12,   nil,   nil,    12,    12,   nil,   nil,   nil,    12,
+    12,    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+   nil,   nil,    12,    12,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    12,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    12,    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,
+    25,    25,    25,    25,    25,    25,    25,    25,    25,    25,
+   nil,   nil,   nil,   nil,   nil,    25,    25,    25,    25,    25,
+    25,    25,    25,    25,    25,    25,    25,   nil,    25,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,    25,   nil,    25,    25,
+    25,    25,    25,    25,    25,   nil,   nil,    25,    25,   nil,
+   nil,   nil,    25,    25,    25,    25,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
+    25,   nil,    25,    25,    25,    25,    25,    25,    25,    25,
+    25,    25,    25,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   nil,   nil,   nil,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   nil,   nil,   nil,   nil,   nil,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   nil,   109,   nil,   nil,   nil,   nil,   nil,   nil,   109,   109,
+   nil,   109,   109,   109,   109,   109,   109,   109,   nil,   nil,
+   109,   109,   nil,   nil,   nil,   109,   109,   109,   109,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   109,   109,   nil,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   109,   nil,   nil,   109,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,   450,
+   450,   450,   450,   450,   450,   450,   450,   450,   450,   450,
+   450,   450,   450,   450,   450,   450,   450,   450,   450,   450,
+   450,   450,   450,   nil,   nil,   nil,   450,   450,   450,   450,
+   450,   450,   450,   450,   450,   450,   nil,   nil,   nil,   nil,
+   nil,   450,   450,   450,   450,   450,   450,   450,   450,   450,
+   nil,   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,   450,   450,
+   450,   450,   nil,   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,   nil,
+   nil,   450,   450,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   450,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   450,   703,   703,   703,   703,   703,   703,   703,   703,
+   703,   703,   703,   703,   703,   703,   703,   703,   703,   703,
+   703,   703,   703,   703,   703,   703,   nil,   nil,   nil,   703,
+   703,   703,   703,   703,   703,   703,   703,   703,   703,   nil,
+   nil,   nil,   nil,   nil,   703,   703,   703,   703,   703,   703,
+   703,   703,   703,   nil,   nil,   703,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   703,   703,   nil,   703,   703,   703,
+   703,   703,   703,   703,   nil,   nil,   703,   703,   nil,   nil,
+   nil,   703,   703,   703,   703,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   703,   703,
+   nil,   703,   703,   703,   703,   703,   703,   703,   703,   703,
+   703,   703,   nil,   nil,   703,   703,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   703,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   703,   764,   764,   764,   764,   764,
+   764,   764,   764,   764,   764,   764,   764,   764,   764,   764,
+   764,   764,   764,   764,   764,   764,   764,   764,   764,   nil,
+   nil,   nil,   764,   764,   764,   764,   764,   764,   764,   764,
+   764,   764,   nil,   nil,   nil,   nil,   nil,   764,   764,   764,
+   764,   764,   764,   764,   764,   764,   nil,   nil,   764,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   764,   764,   nil,
+   764,   764,   764,   764,   764,   764,   764,   nil,   nil,   764,
+   764,   nil,   nil,   nil,   764,   764,   764,   764,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   764,   764,   nil,   764,   764,   764,   764,   764,   764,
+   764,   764,   764,   764,   764,   nil,   nil,   764,   nil,   nil,
+   nil,   nil,   508,   508,   508,   508,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   764,   508,   508,
+   508,   508,   nil,   nil,   nil,   508,   nil,   nil,   nil,   nil,
+   nil,   508,   508,   nil,   nil,   nil,   508,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   508,   nil,   nil,   508,
+   nil,   nil,   nil,   508,   nil,   nil,   508,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   508,   nil,   nil,   nil,   508,   508,   508,   508,   508,
+   508,   nil,   nil,   nil,   508,   508,   nil,   nil,   nil,   nil,
+   nil,   nil,   508,   nil,   nil,   508,   508,   508,   nil,   508,
+   508,   nil,   nil,   508,   508,   509,   509,   509,   509,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   509,   509,   509,   509,   nil,   nil,   nil,   509,   nil,
+   nil,   nil,   nil,   nil,   509,   509,   nil,   nil,   nil,   509,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   509,
+   nil,   nil,   509,   nil,   nil,   nil,   509,   nil,   nil,   509,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   509,   nil,   nil,   nil,   509,   509,
+   509,   509,   509,   509,   nil,   nil,   nil,   509,   509,   nil,
+   nil,   nil,   nil,   nil,   nil,   509,   nil,   nil,   509,   509,
+   509,   nil,   509,   509,   nil,   nil,   509,   509,   740,   740,
+   740,   740,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   740,   740,   740,   740,   nil,   nil,
+   nil,   740,   nil,   nil,   nil,   nil,   nil,   740,   740,   nil,
+   nil,   nil,   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,   nil,   740,
+   nil,   nil,   740,   nil,   740,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   740,   nil,   nil,
+   nil,   740,   740,   740,   740,   740,   740,   nil,   nil,   nil,
+   740,   740,   740,   nil,   nil,   nil,   nil,   nil,   740,   nil,
+   nil,   740,   740,   740,   nil,   740,   740,   nil,   nil,   740,
+   740,   912,   912,   912,   912,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   912,   912,   912,
+   912,   nil,   nil,   nil,   912,   nil,   nil,   nil,   nil,   nil,
+   912,   912,   nil,   nil,   nil,   912,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   912,   nil,   nil,   912,   nil,
+   nil,   nil,   912,   nil,   nil,   912,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   912,   nil,   nil,   nil,   912,   912,   912,   912,   912,   912,
+   nil,   nil,   nil,   912,   912,   nil,   nil,   nil,   nil,   nil,
+   nil,   912,   nil,   nil,   912,   912,   912,   nil,   912,   912,
+   nil,   nil,   912,   912,   915,   915,   915,   915,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   915,   915,   915,   915,   nil,   nil,   nil,   915,   915,   nil,
+   nil,   nil,   nil,   915,   915,   nil,   nil,   nil,   915,   915,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   915,   nil,
+   nil,   915,   nil,   nil,   nil,   915,   nil,   nil,   915,   nil,
+   915,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   915,   nil,   nil,   nil,   915,   915,   915,
+   915,   915,   915,   nil,   nil,   nil,   915,   915,   nil,   nil,
+   nil,   nil,   nil,   nil,   915,   nil,   915,   915,   915,   915,
+   nil,   915,   915,   nil,   nil,   915,   915,   916,   916,   916,
+   916,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   916,   916,   916,   916,   nil,   nil,   nil,
+   916,   916,   nil,   nil,   nil,   nil,   916,   916,   nil,   nil,
+   nil,   916,   916,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   916,   nil,   nil,   916,   nil,   nil,   nil,   916,   nil,
+   nil,   916,   nil,   916,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   916,   nil,   nil,   nil,
+   916,   916,   916,   916,   916,   916,   nil,   nil,   nil,   916,
+   916,   nil,   nil,   nil,   nil,   nil,   nil,   916,   nil,   916,
+   916,   916,   916,   nil,   916,   916,   nil,   nil,   916,   916,
+   922,   922,   922,   922,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   922,   922,   922,   922,
+   nil,   nil,   nil,   922,   nil,   nil,   nil,   nil,   nil,   922,
+   922,   nil,   nil,   nil,   922,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   922,   nil,   nil,   922,   nil,   nil,
+   nil,   922,   nil,   nil,   922,   nil,   922,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   922,
+   nil,   nil,   nil,   922,   922,   922,   922,   922,   922,   nil,
+   nil,   nil,   922,   922,   nil,   nil,   nil,   nil,   nil,   nil,
+   922,   nil,   nil,   922,   922,   922,   nil,   922,   922,   nil,
+   nil,   922,   922,   930,   930,   930,   930,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   930,
+   930,   930,   930,   nil,   nil,   nil,   930,   nil,   nil,   nil,
+   nil,   nil,   930,   930,   nil,   nil,   nil,   930,   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,   nil,   930,   nil,   nil,   930,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   930,   nil,   nil,   nil,   930,   930,   930,   930,
+   930,   930,   nil,   nil,   nil,   930,   930,   nil,   nil,   nil,
+   nil,   nil,   nil,   930,   nil,   nil,   930,   930,   930,   nil,
+   930,   930,   nil,   nil,   930,   930,  1003,  1003,  1003,  1003,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1003,  1003,  1003,  1003,   nil,   nil,   nil,  1003,
+  1003,   nil,   nil,   nil,   nil,  1003,  1003,   nil,   nil,   nil,
+  1003,  1003,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1003,   nil,   nil,  1003,   nil,   nil,   nil,  1003,   nil,   nil,
+  1003,   nil,  1003,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1003,   nil,   nil,   nil,  1003,
+  1003,  1003,  1003,  1003,  1003,   nil,   nil,   nil,  1003,  1003,
+   nil,   nil,   nil,   nil,   nil,   nil,  1003,   nil,  1003,  1003,
+  1003,  1003,   nil,  1003,  1003,   nil,   nil,  1003,  1003,  1041,
+  1041,  1041,  1041,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1041,  1041,  1041,  1041,   nil,
+   nil,   nil,  1041,   nil,   nil,   nil,   nil,   nil,  1041,  1041,
+   nil,   nil,   nil,  1041,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1041,   nil,   nil,  1041,   nil,   nil,   nil,
+  1041,   nil,   nil,  1041,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1041,   nil,
+   nil,   nil,  1041,  1041,  1041,  1041,  1041,  1041,   nil,   nil,
+   nil,  1041,  1041,   nil,   nil,   nil,   nil,   nil,   nil,  1041,
+   nil,   nil,  1041,  1041,  1041,   nil,  1041,  1041,   nil,   nil,
+  1041,  1041,  1056,  1056,  1056,  1056,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1056,  1056,
+  1056,  1056,   nil,   nil,   nil,  1056,   nil,   nil,   nil,   nil,
+   nil,  1056,  1056,   nil,   nil,   nil,  1056,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1056,   nil,   nil,  1056,
+   nil,   nil,   nil,  1056,   nil,   nil,  1056,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1056,   nil,   nil,   nil,  1056,  1056,  1056,  1056,  1056,
+  1056,   nil,   nil,   nil,  1056,  1056,   nil,   nil,   nil,   nil,
+   nil,   nil,  1056,   nil,   nil,  1056,  1056,  1056,   nil,  1056,
+  1056,   nil,   nil,  1056,  1056,  1137,  1137,  1137,  1137,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1137,  1137,  1137,  1137,   nil,   nil,   nil,  1137,   nil,
+   nil,   nil,   nil,   nil,  1137,  1137,   nil,   nil,   nil,  1137,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1137,
+   nil,   nil,  1137,   nil,   nil,   nil,  1137,   nil,   nil,  1137,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1137,   nil,   nil,   nil,  1137,  1137,
+  1137,  1137,  1137,  1137,   nil,   nil,   nil,  1137,  1137,   nil,
+   nil,   nil,   nil,   nil,   nil,  1137,   nil,   nil,  1137,  1137,
+  1137,   nil,  1137,  1137,   nil,   nil,  1137,  1137,  1177,  1177,
+  1177,  1177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1177,  1177,  1177,  1177,   nil,   nil,
+   nil,  1177,   nil,   nil,   nil,   nil,   nil,  1177,  1177,   nil,
+   nil,   nil,  1177,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1177,   nil,   nil,  1177,   nil,   nil,   nil,  1177,
+   nil,   nil,  1177,   nil,  1177,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1177,   nil,   nil,
+   nil,  1177,  1177,  1177,  1177,  1177,  1177,   nil,   nil,   nil,
+  1177,  1177,   nil,   nil,   nil,   nil,   nil,   nil,  1177,   nil,
+   nil,  1177,  1177,  1177,   nil,  1177,  1177,   nil,   nil,  1177,
+  1177,  1191,  1191,  1191,  1191,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1191,  1191,  1191,
+  1191,   nil,   nil,   nil,  1191,   nil,   nil,   nil,   nil,   nil,
+  1191,  1191,   nil,   nil,   nil,  1191,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1191,   nil,   nil,  1191,   nil,
+   nil,   nil,  1191,   nil,   nil,  1191,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1191,   nil,   nil,   nil,  1191,  1191,  1191,  1191,  1191,  1191,
+   nil,   nil,   nil,  1191,  1191,   nil,   nil,   nil,   nil,   nil,
+   nil,  1191,   nil,   nil,  1191,  1191,  1191,   nil,  1191,  1191,
+   nil,   nil,  1191,  1191,  1193,  1193,  1193,  1193,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1193,  1193,  1193,  1193,   nil,   nil,   nil,  1193,   nil,   nil,
+   nil,   nil,   nil,  1193,  1193,   nil,   nil,   nil,  1193,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1193,   nil,
+   nil,  1193,   nil,   nil,   nil,  1193,   nil,   nil,  1193,   nil,
+  1193,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1193,   nil,   nil,   nil,  1193,  1193,  1193,
+  1193,  1193,  1193,   nil,   nil,   nil,  1193,  1193,   nil,   nil,
+   nil,   nil,   nil,   nil,  1193,   nil,   nil,  1193,  1193,  1193,
+   nil,  1193,  1193,   nil,   nil,  1193,  1193,  1229,  1229,  1229,
+  1229,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1229,  1229,  1229,  1229,   nil,   nil,   nil,
+  1229,   nil,   nil,   nil,   nil,   nil,  1229,  1229,   nil,   nil,
+   nil,  1229,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1229,   nil,   nil,  1229,   nil,   nil,   nil,  1229,   nil,
+   nil,  1229,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1229,   nil,   nil,   nil,
+  1229,  1229,  1229,  1229,  1229,  1229,   nil,   nil,   nil,  1229,
+  1229,   nil,   nil,   nil,   nil,   nil,   nil,  1229,   nil,   nil,
+  1229,  1229,  1229,   nil,  1229,  1229,   nil,   nil,  1229,  1229,
+  1253,  1253,  1253,  1253,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1253,  1253,  1253,  1253,
+   nil,   nil,   nil,  1253,   nil,   nil,   nil,   nil,   nil,  1253,
+  1253,   nil,   nil,   nil,  1253,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   932,   932,   932,   932,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1253,   nil,   nil,  1253,   932,   932,
+   932,  1253,   nil,   nil,  1253,   nil,   nil,   nil,   nil,   nil,
+   nil,   932,   932,   nil,   nil,   nil,   932,   nil,   nil,  1253,
+   nil,   nil,   nil,  1253,  1253,  1253,  1253,  1253,  1253,   nil,
+   nil,   nil,  1253,  1253,   nil,   nil,   nil,   nil,   nil,   nil,
+  1253,   nil,   nil,  1253,  1253,  1253,   nil,  1253,  1253,   nil,
+   nil,  1253,  1253,   nil,   nil,   376,   nil,   376,   376,   376,
+   376,   376,   nil,   nil,   nil,   932,   932,   932,   932,   932,
+   932,   376,   nil,   nil,   932,   932,   nil,   nil,   nil,   nil,
+   nil,   nil,   932,   nil,   nil,   932,   932,   932,   nil,   932,
+   932,   nil,   810,   376,   810,   810,   810,   810,   810,   nil,
+   nil,   nil,   376,   376,   376,   376,   nil,   nil,   810,  1145,
+   nil,  1145,  1145,  1145,  1145,  1145,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1145,   nil,   nil,   nil,   nil,
+   810,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   376,   810,
+   810,   810,   810,   nil,   nil,   nil,   nil,  1145,   376,   nil,
+   nil,   232,   232,   nil,   nil,   232,  1145,  1145,  1145,  1145,
+   nil,   nil,   nil,   nil,   232,   232,   nil,   232,   232,   232,
+   232,   232,   232,   232,   nil,   810,   232,   232,   nil,   nil,
+   nil,   232,   232,   232,   232,   810,   nil,   nil,   nil,   nil,
+   232,   nil,  1145,   nil,   nil,   nil,   nil,   nil,   232,   232,
+   nil,   232,   232,   232,   232,   232,   232,   232,   232,   232,
+   232,   232,   nil,   nil,   232,   nil,   nil,   nil,   nil,   233,
+   233,   nil,   nil,   233,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   233,   233,   232,   233,   233,   233,   233,   233,
+   233,   233,   nil,   nil,   233,   233,   nil,   nil,   nil,   233,
+   233,   233,   233,   nil,   nil,   nil,   nil,   nil,   233,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   233,   233,   nil,   233,
+   233,   233,   233,   233,   233,   233,   233,   233,   233,   233,
+   nil,   nil,   233,   nil,   nil,   nil,   nil,   300,   300,   nil,
+   nil,   300,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   300,   300,   233,   300,   300,   300,   300,   300,   300,   300,
+   nil,   nil,   300,   300,   nil,   nil,   nil,   300,   300,   300,
+   300,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   300,   300,   nil,   300,   300,   300,
+   300,   300,   300,   300,   300,   300,   300,   300,   nil,   nil,
+   300,   nil,   nil,   nil,   nil,   501,   501,   nil,   nil,   501,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   501,   501,
+   300,   501,   501,   501,   501,   501,   501,   501,   nil,   nil,
+   501,   501,   nil,   nil,   nil,   501,   501,   501,   501,   nil,
+   nil,   nil,   nil,   nil,   501,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   501,   501,   nil,   501,   501,   501,   501,   501,
+   501,   501,   501,   501,   501,   501,   nil,   nil,   501,   nil,
+   nil,   nil,   nil,   502,   502,   nil,   nil,   502,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   502,   502,   501,   502,
+   502,   502,   502,   502,   502,   502,   nil,   nil,   502,   502,
+   nil,   nil,   nil,   502,   502,   502,   502,   nil,   nil,   nil,
+   nil,   nil,   502,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   502,   502,   nil,   502,   502,   502,   502,   502,   502,   502,
+   502,   502,   502,   502,   nil,   nil,   502,   nil,   nil,   nil,
+   nil,   576,   576,   nil,   nil,   576,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   576,   576,   502,   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,   nil,   nil,   576,   nil,   nil,   nil,   nil,   577,
+   577,   nil,   nil,   577,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   577,   577,   576,   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,
+   nil,   nil,   577,   nil,   nil,   nil,   nil,   586,   586,   nil,
+   nil,   586,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   586,   586,   577,   586,   586,   586,   586,   586,   586,   586,
+   nil,   nil,   586,   586,   nil,   nil,   nil,   586,   586,   586,
+   586,   nil,   nil,   nil,   nil,   nil,   586,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   586,   586,   nil,   586,   586,   586,
+   586,   586,   586,   586,   586,   586,   586,   586,   nil,   nil,
+   586,   nil,   nil,   nil,   nil,   587,   587,   nil,   nil,   587,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   587,   587,
+   586,   587,   587,   587,   587,   587,   587,   587,   nil,   nil,
+   587,   587,   nil,   nil,   nil,   587,   587,   587,   587,   nil,
+   nil,   nil,   nil,   nil,   587,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   587,   587,   nil,   587,   587,   587,   587,   587,
+   587,   587,   587,   587,   587,   587,   nil,   nil,   587,   nil,
+   nil,   nil,   nil,   660,   660,   nil,   nil,   660,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   660,   660,   587,   660,
+   660,   660,   660,   660,   660,   660,   nil,   nil,   660,   660,
+   nil,   nil,   nil,   660,   660,   660,   660,   nil,   nil,   nil,
+   nil,   nil,   660,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   660,   660,   nil,   660,   660,   660,   660,   660,   660,   660,
+   660,   660,   660,   660,   nil,   nil,   660,   nil,   nil,   nil,
+   nil,   661,   661,   nil,   nil,   661,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   661,   661,   660,   661,   661,   661,
+   661,   661,   661,   661,   nil,   nil,   661,   661,   nil,   nil,
+   nil,   661,   661,   661,   661,   nil,   nil,   nil,   nil,   nil,
+   661,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   661,   661,
+   nil,   661,   661,   661,   661,   661,   661,   661,   661,   661,
+   661,   661,   nil,   nil,   661,   nil,   nil,   nil,   nil,   667,
+   667,   nil,   nil,   667,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   667,   667,   661,   667,   667,   667,   667,   667,
+   667,   667,   nil,   nil,   667,   667,   nil,   nil,   nil,   667,
+   667,   667,   667,   nil,   nil,   nil,   nil,   nil,   667,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   667,   667,   nil,   667,
+   667,   667,   667,   667,   667,   667,   667,   667,   667,   667,
+   nil,   nil,   667,   nil,   nil,   nil,   nil,   668,   668,   nil,
+   nil,   668,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   668,   668,   667,   668,   668,   668,   668,   668,   668,   668,
+   nil,   nil,   668,   668,   nil,   nil,   nil,   668,   668,   668,
+   668,   nil,   nil,   nil,   nil,   nil,   668,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   668,   668,   nil,   668,   668,   668,
+   668,   668,   668,   668,   668,   668,   668,   668,   nil,   nil,
+   668,   nil,   nil,   nil,   nil,   710,   710,   nil,   nil,   710,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   710,   710,
+   668,   710,   710,   710,   710,   710,   710,   710,   nil,   nil,
+   710,   710,   nil,   nil,   nil,   710,   710,   710,   710,   nil,
+   nil,   nil,   nil,   nil,   710,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   710,   710,   nil,   710,   710,   710,   710,   710,
+   710,   710,   710,   710,   710,   710,   nil,   nil,   710,   nil,
+   nil,   nil,   nil,   711,   711,   nil,   nil,   711,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   711,   711,   710,   711,
+   711,   711,   711,   711,   711,   711,   nil,   nil,   711,   711,
+   nil,   nil,   nil,   711,   711,   711,   711,   nil,   nil,   nil,
+   nil,   nil,   711,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   711,   711,   nil,   711,   711,   711,   711,   711,   711,   711,
+   711,   711,   711,   711,   nil,  1149,   711,  1149,  1149,  1149,
+  1149,  1149,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1149,   nil,   nil,   nil,   nil,   711,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1149,  1205,  1205,   nil,   nil,  1205,   nil,
+   nil,   nil,  1149,  1149,  1149,  1149,   nil,  1205,  1205,   nil,
+  1205,  1205,  1205,  1205,  1205,  1205,  1205,   nil,   nil,  1205,
+  1205,   nil,   nil,   nil,  1205,  1205,  1205,  1205,   nil,   nil,
+   nil,   nil,   nil,  1205,   nil,   nil,   nil,   nil,  1149,   nil,
+   nil,  1205,  1205,   nil,  1205,  1205,  1205,  1205,  1205,  1205,
+  1205,  1205,  1205,  1205,  1205,   nil,   nil,  1205,   nil,   nil,
+   nil,   nil,  1210,  1210,   nil,   nil,  1210,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1210,  1210,  1205,  1210,  1210,
+  1210,  1210,  1210,  1210,  1210,   nil,   nil,  1210,  1210,   nil,
+   nil,   nil,  1210,  1210,  1210,  1210,   nil,   nil,   nil,   nil,
+   nil,  1210,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1210,
+  1210,   nil,  1210,  1210,  1210,  1210,  1210,  1210,  1210,  1210,
+  1210,  1210,  1210,   nil,   nil,  1210,   nil,   nil,   nil,   nil,
+  1211,  1211,   nil,   nil,  1211,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1211,  1211,  1210,  1211,  1211,  1211,  1211,
+  1211,  1211,  1211,   nil,   nil,  1211,  1211,   nil,   nil,   nil,
+  1211,  1211,  1211,  1211,   nil,   nil,   nil,   nil,   nil,  1211,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1211,  1211,   nil,
+  1211,  1211,  1211,  1211,  1211,  1211,  1211,  1211,  1211,  1211,
+  1211,   nil,  1233,  1211,  1233,  1233,  1233,  1233,  1233,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1233,   nil,
+   nil,   nil,   nil,  1211,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1233,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1233,
+  1233,  1233,  1233,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1233 ]
+
+racc_action_pointer = [
+   nil,    32,  1098,    58,   nil,   462,   nil,   nil,  5417,   808,
+   nil, 26155, 26288,    72,   nil,    90,   187,   404,   266,   242,
+   282,   nil,   112,  5560,  1386, 26421,   375,   nil,   -40,   nil,
+   165,  5698,  5830,  5960,  6103,  6246,   nil,  1242, 24209, 24348,
+   nil,   296,   283,   313,   408,  6389,  6532,   164,  6675,  6818,
+   697,  6961,   384,   127,   164,   311,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  7099,   nil,  7240,  7383,   nil,
+   -22,   nil,  7526,  7669,   nil,   nil,  7812, 24487, 24626, 24765,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,   nil,
+   nil,   nil,   nil,   397,   413,   447,   449,   nil,   nil, 26554,
+   nil,   nil,   nil,   nil,   nil,   nil,     0,   nil,   nil,   136,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  7955,   nil,   nil,   nil,   nil,  8098,  8241,  8384,
+  8527,  8670,   524,   nil,   644,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   513,   nil,  1386,  8813,  8956,  9099,  9242,
+  9385,  9528, 29040, 29108,   nil,   nil,  9671,  9814,  9957,   nil,
+   nil,   361,   104,   147,   589,   236,   513,   596,   nil, 10100,
+  1530,   601,   nil,   nil, 10243, 10386, 10529, 10672, 10815, 10958,
+ 11101, 11244, 11387, 11530, 11673, 11816, 11959, 12102, 12245, 12388,
+ 12531, 12674, 12817, 12960, 13103, 13246,   nil,   nil,   nil,   nil,
+ 13389,   nil,   nil,   243,   349,   379,   416,   460,   514,   552,
+   555,   576,   596,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+ 29176,   nil,   nil,   602, 13532, 13675,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil, 13818,   nil,  2106,   nil,   572,   584,
+   nil, 13961,   627, 14104,   nil,   nil, 14247, 14390,   nil,   nil,
+   553,   nil,   nil, 14533,   969,   nil,   580,  1674,   615,   652,
+   643, 24904,  1818,   376,   380,   455,   721,   504,   nil,   690,
+   671,   193,   737,   752,   nil,   nil,   nil,   775,   167,   739,
+ 25043,   nil,   343,   516,  3114,  3258,   805,   nil,   810, 14676,
+   nil, 14819,   735,  1962,   756,   nil, 28944,   337,   763,  2106,
+  2250,  1083,   785,   nil,   479,   534,   788, 14962,   nil,   461,
+    -8,     8, 15105,  2394,  2538,   598,   900,   808,   -19,    -7,
+   591,   886,    24,   920,   nil,   nil,  1087,  1089,   -20,   nil,
+   620,   nil,   839, 15248,   nil,   475,   nil,   346,   nil,   383,
+   nil,   136,   nil,   830,   402,   nil,   832,   440,   nil,   833,
+   -59,   nil,   834,   -58,   nil,   481,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  2682,
+ 26687,   nil,   nil,   nil,   nil,   850,   nil,   921,   845, 15391,
+   849,   nil,   nil,   833,   nil,   640,   267,   937,   nil,   nil,
+  1530,   nil,   nil,   nil,   nil,   nil,  1674,   857,   nil,   nil,
+   861,   867,   344,   449,  7240,   nil,   nil,   nil,   272,   408,
+   908,   nil,   nil, 15529, 15661,   nil,   nil,   nil,   -26,   nil,
+   926, 29244, 29312, 15794,   274, 15937, 16080, 16223, 27040, 27153,
+  3402,  3546,   628,   809,   966,   967,   971,   974,  5130,  5274,
+  1121,  3690,  3834,  3978,  4122,  4266,  4410,   900,  1214,  4554,
+  4698,  2250,  4842,   nil,   nil,   nil, 16366,  1033,   nil, 16504,
+   nil,   nil,   nil,   nil, 16630,   921,   923,   928,   nil,   nil,
+   nil,   936,   nil,   nil, 16773,   nil,   nil, 16916,   nil, 17059,
+   nil,   196,   nil,   nil,   nil, 17202,  1227,   954,   947,   945,
+   nil,   nil,   946, 25182,   954, 17345, 29380, 29448,   650,   992,
+   nil,   nil, 25321,   956,   nil, 17488, 29516, 29584, 17631,  4986,
+  2394, 17774, 17917,  1079,  1084,   nil,   nil,   969,   967,   971,
+   976,   977,   nil,   978,   981,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   965,   784,   nil,   nil, 18060,   nil,
+   nil,   nil,     0,   nil,   nil,   nil,  1083,   nil,   nil,  1089,
+   635,  1025, 18203,  1149,  1152,  1040,   nil,   nil, 18346,   nil,
+   nil, 18489,   nil,  1073,  1056,   nil,   688,  1082,  2826,  1159,
+   nil,  2970,    63,  1166,  1167,   610,  1169,   nil, 18632, 18775,
+ 29652, 29720,    26,   nil,   nil,   652,   nil, 29788, 29856, 18918,
+   nil,   nil,   nil,   784,  3114,   nil,   611,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   208,
+   nil,   nil,   265,   nil,   nil,   nil,  1050,   nil,   nil,  1055,
+   nil,  1073,   nil, 26820,   nil, 19061,  1060, 19204, 19347, 19490,
+ 29924, 29992, 19633, 19776,   461, 19919, 20062, 20205, 20348,  1095,
+   nil,   nil,   nil, 20491, 20634,  1096,   nil,   nil,   nil,   277,
+   310,   544,   680,  1069,  1109,   nil,  1089,   nil,   nil,   506,
+ 27266,   -67,   nil,   795,   nil,   nil,   952,  7099,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1151,
+     5,   nil,  1115,  1078, 26953,   -14,   nil,   113,  1180,   -19,
+   nil,   nil, 20777,   nil,  1096,   nil,  1201,   nil,  1082,   nil,
+  1124, 20920,   nil,   nil, 21063,   nil,   nil,   -85, 25460,  1090,
+   nil,  1095,    -9,    -5,  1138,    25,   725,  1142,  1107, 25599,
+   nil,  1172,    -7,  1818,   308,   nil, 21206,   nil,   nil,   nil,
+ 28981,   nil,   nil,   231,   nil,   nil,   797,   745,   nil,   881,
+   nil, 21349,   nil,   918,   nil,  1111,  1120,   685,  1124,   nil,
+   nil,   nil,   nil,   nil,   nil,  5662,  1962,   nil,   nil,   nil,
+   702,   nil,   nil,   nil,   892,   nil,  1237,   nil,   nil,   nil,
+   nil,   nil,  1245,  1246,   nil,   nil,   nil, 21492,    69,  1132,
+    29,    30,   162,   163,  3258,  1231,   776,   nil,  1152,  3402,
+ 21635,   647,  1270,    34,  1156,   991,  3546,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1154, 21778,  1158,   320,   421,
+   816,   952,   nil,  2538, 21921,  1156,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil, 22064, 22207, 22350, 22493,
+   460,  1247, 27379,  1211,   106, 27492, 27605,   504,   -63,  1179,
+  1184,   nil, 27718,   nil,  1182,  1183,  1263,    58,   nil,  1202,
+ 27831, 16489, 28890,   nil,   nil,   nil,   nil,   nil, 22636,   nil,
+   nil,   nil,   nil,  5761,   nil,  3690,   nil,   nil,  1209,  1197,
+   nil,   249,   nil,   nil,   nil,   nil,  1195,    39,   nil,   nil,
+ 22779,   nil,   nil,   nil,   nil,  3834,   nil,  1197,  1239,   nil,
+   nil,  1203,   nil,  1201,  1203,   nil,  1204,   nil,  1285,   nil,
+  1208,  1210,   nil,  1212,   nil,   nil,  1216,  1084,  1294,   nil,
+   nil, 22922,   nil,  1337,   nil,   nil, 23065,   nil,  3978,  1341,
+   nil,   nil,   nil, 27944,   nil, 23208,  4122,    68,  1344,   nil,
+  1345,   664,   nil,   nil,   nil,  4266,  4410,  1224,  1230,   nil,
+   nil,   nil,   nil,   nil,  1225,  1235,   479,   nil,   nil, 23351,
+ 23494,   nil,   nil,   nil,   nil,  1274,  1277,  1278,  1241,   nil,
+   nil, 28057,   nil,     1,   nil,   nil,  1245,  1246,  1249,   nil,
+   nil,   nil,  1288,  1251,   -33,   nil, 28170,   nil,  1258,   nil,
+   745,   nil,   nil,  2682,  1264,  1265,   nil,  1266,  1269,  1270,
+   nil,  1291,  1276,  1265, 25738,   nil,   nil,   nil,   nil,   nil,
+  4554,  2826,  4698,   nil,     9, 25877,   nil,   nil, 15493,   nil,
+  7063,   nil,   nil, 15592,   nil, 16510,   nil,   nil,   nil,   nil,
+  1283,  1284,  2970,   nil,    35,   nil,   nil,    43,   891,   -31,
+   nil,   nil,   nil,   nil, 23637,   358,   nil,   nil,   nil,  4842,
+  1301,  1413,  1372,   nil,   nil,   nil,   nil,   nil,   126,  1340,
+   nil,   nil,   nil,   nil,   nil,   nil,  1313, 28283,  1317,   nil,
+   nil,   nil,   234,   nil,   nil, 28998,   nil,   nil,   nil, 30054,
+   nil, 24230,   nil,   nil,  1340, 26016,   784,  1409,   nil,  1459,
+  4986,   120,   135,   786,  1413,   144,   nil,  1342,  1344,  1347,
+  1348,  3676,  3820,  5130,   nil, 23780, 23923, 28396,   nil,   nil,
+   nil,   nil,  1471,   nil,   nil,   734,   nil,   nil,   nil,   nil,
+   nil, 28509,  1352, 28622,  1354,   nil,   nil,  1357,  1369,  1370,
+  1371,   nil,  1378,   nil,   855, 30093,   nil,   nil,  1501, 24066,
+ 30161, 30229,   145, 24369,   nil,   nil,   nil,   nil,  1380,   937,
+  5274,   nil,   nil,   nil,  1383,   nil,   nil,  2092,  1385, 28735,
+   nil,   nil,   nil, 30291,   nil, 24508,   nil, 24647,   nil, 24786,
+   nil,   nil,  1425,  1426,   nil,  1391,   158,   168,   169,   236,
+  1390,   nil,   395, 28848,   nil,  1391,  1395,  1398,  1399,   171,
+   nil,   nil,   nil,   nil,  1408, 24925,   nil,   nil,   nil,   nil,
+  1409,   nil ]
+
+racc_action_default = [
+    -1,  -768,  -767,  -768,    -2,  -753,    -4,    -5,  -768,    -8,
+    -9,  -768,  -768,  -768,   -35,  -768,  -768,   -40,  -768,  -768,
+  -310,   -52,  -755,  -768,   -61,  -768,   -70,   -71,   -72,   -76,
+  -287,  -287,  -287,  -324,  -352,  -353,   -88,  -767,   -92,  -100,
+  -102,  -768,  -645,  -646,  -768,  -768,  -768,  -768,  -768,  -768,
+  -240,  -768,  -755,  -660,  -660,  -258,  -301,  -302,  -303,  -304,
+  -305,  -306,  -307,  -308,  -309,  -739,  -312,  -314,  -767,  -322,
+  -332,  -334,  -768,  -768,   -67,   -67,  -753,  -768,  -768,  -768,
+  -354,  -355,  -357,  -358,  -359,  -360,  -361,  -362,  -363,  -364,
+  -365,  -366,  -375,  -433,  -575,  -576,  -577,  -578,  -579,  -767,
+  -582,  -767,  -767,  -767,  -767,  -767,  -767,  -618,  -619,  -767,
+  -621,  -627,  -629,  -630,  -631,  -632,  -737,  -634,  -635,  -738,
+  -637,  -638,  -639,  -640,  -641,  -642,  -643,  -644,  -649,  -650,
+  1272,    -3,  -754,  -763,  -764,  -765,    -7,  -768,  -768,  -768,
+  -768,  -768,  -768,   -23,  -768,  -131,  -132,  -133,  -134,  -135,
+  -136,  -137,  -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,  -194,  -195,  -196,  -197,  -198,
+  -199,  -200,  -201,  -202,  -203,  -204,  -205,  -206,  -207,  -208,
+  -209,  -210,  -211,   -28,  -138,  -767,  -768,  -768,  -768,  -768,
+  -768,  -767,  -768,  -768,  -749,  -750,  -768,  -768,  -755,  -756,
+   -56,  -768,  -645,  -646,  -768,  -310,  -768,  -768,  -246,  -768,
+  -767,  -768,   -57,   -59,  -223,  -224,  -768,  -768,  -768,  -768,
+  -768,  -768,  -768,  -768,  -768,  -768,  -768,  -768,  -768,  -768,
+  -768,  -768,  -768,  -768,  -768,  -768,  -259,  -260,  -261,  -262,
+  -768,   -62,   -63,  -768,  -131,  -132,  -171,  -172,  -173,  -189,
+  -194,  -201,  -204,  -645,  -646,  -725,  -726,  -368,  -461,  -441,
+  -768,  -751,  -752,   -77,  -767,  -768,  -331,  -367,  -445,  -454,
+  -456,   -83,  -451,   -84,  -755,   -85,  -265,  -282,  -767,  -767,
+  -286,  -768,  -292,  -768,  -767,  -730,  -734,  -768,   -86,   -87,
+  -753,   -16,   -17,  -768,   -20,   -21,   -90,  -767,  -755,  -768,
+   -93,   -96,  -767,  -108,  -109,  -768,  -768,  -116,  -324,  -327,
+  -755,  -768,  -660,  -660,  -352,  -353,  -356,  -452,  -768,   -98,
+  -768,  -104,  -320,  -768,  -225,  -226,  -628,  -234,  -235,  -768,
+  -247,  -768,  -768,  -767,  -659,  -655,  -682,  -682,  -768,  -767,
+  -767,  -316,  -755,  -266,  -760,  -760,  -755,  -767,  -333,   -66,
+  -768,  -768,  -768,  -767,  -767,  -753,  -768,  -754,  -645,  -646,
+  -768,  -768,  -310,  -768,  -385,  -386,  -126,  -127,  -768,  -129,
+  -768,  -310,  -767,  -768,  -348,  -682,  -580,  -768,  -603,  -768,
+  -605,  -768,  -607,  -768,  -768,  -587,  -768,  -768,  -593,  -768,
+  -768,  -599,  -768,  -768,  -601,  -768,  -620,  -622,  -623,  -624,
+  -625,    -6,  -766,   -29,   -30,   -31,   -32,   -33,   -10,  -767,
+  -768,   -25,   -26,   -27,  -139,  -768,   -36,   -39,  -297,  -768,
+  -768,  -296,   -37,  -768,   -41,  -768,  -310,   -49,   -51,  -212,
+  -270,  -292,   -53,   -54,   -42,  -213,  -270,  -755,  -277,  -278,
+  -767,  -767,  -740,  -741,  -287,  -449,  -742,  -743,  -741,  -740,
+  -287,  -448,  -450,  -742,  -743,   -48,  -220,   -55,  -755,  -330,
+  -768,  -768,  -768,  -767,  -320,  -768,  -768,  -768,  -768,  -768,
+  -221,  -222,  -227,  -228,  -229,  -230,  -231,  -232,  -236,  -237,
+  -238,  -239,  -241,  -242,  -243,  -244,  -245,  -248,  -249,  -250,
+  -251,  -755,  -263,   -64,  -747,  -748,  -768,  -768,  -462,  -287,
+  -740,  -741,   -74,   -78,  -683,  -755,  -767,  -755,  -288,  -458,
+  -461,  -755,  -326,  -283,  -768,  -291,  -284,  -768,  -289,  -768,
+  -293,  -768,  -733,  -736,   -15,  -754,   -19,  -768,  -755,   -89,
+  -318,  -105,   -94,  -768,  -755,  -767,  -768,  -768,  -115,  -768,
+  -659,  -628,  -768,  -101,  -106,  -768,  -768,  -768,  -768,  -264,
+  -252,  -768,  -768,  -567,  -768,  -398,  -399,  -755,  -667,  -755,
+  -724,  -724,  -665,  -667,  -667,  -681,  -683,  -684,  -685,  -686,
+  -687,  -688,  -689,  -690,  -691,  -768,  -693,  -695,  -697,  -702,
+  -704,  -705,  -708,  -713,  -715,  -716,  -718,  -719,  -720,  -722,
+  -768,  -667,  -768,  -768,  -768,  -755,  -315,  -267,  -762,  -761,
+  -269,  -762,  -321,  -768,  -768,  -728,  -760,  -768,  -767,  -376,
+  -377,  -767,  -768,  -768,  -768,  -768,  -768,  -371,  -768,  -767,
+  -768,  -768,  -320,   -67,  -126,  -127,  -128,  -768,  -768,  -767,
+  -343,  -651,  -653,  -345,  -767,  -434,  -682,  -437,  -581,  -604,
+  -609,  -610,  -612,  -583,  -606,  -584,  -608,  -585,  -586,  -768,
+  -589,  -591,  -768,  -592,  -595,  -596,  -768,  -597,  -598,  -768,
+  -626,  -768,   -24,  -768,   -34,  -768,  -300,  -768,  -768,  -767,
+  -768,  -768,  -768,  -768,  -453,  -279,  -281,  -768,  -768,   -79,
+  -275,  -276,  -446,  -768,  -768,   -81,  -447,  -329,  -757,  -740,
+  -741,  -740,  -741,  -755,   -58,  -485,  -487,  -489,  -492,  -548,
+  -755,  -504,  -507,  -541,  -546,  -547,  -768,  -768,  -551,  -552,
+  -553,  -554,  -555,  -556,  -557,  -558,  -559,  -560,  -561,  -768,
+  -768,  -565,   -60,  -768,  -768,  -755,  -440,  -767,   -73,  -442,
+  -458,  -272,  -279,  -274,  -768,  -459,  -768,  -325,  -767,  -290,
+  -294,  -768,  -731,  -732,  -768,   -18,   -22,   -91,  -768,   -97,
+  -103,  -755,  -740,  -741,  -767,  -744,  -114,  -768,   -99,  -768,
+  -219,  -233,  -755,  -254,  -767,  -369,  -767,  -350,  -374,  -656,
+  -768,  -674,  -658,  -768,  -663,  -664,  -768,  -768,  -677,  -768,
+  -679,  -768,  -387,  -768,  -389,  -391,  -394,  -397,  -755,  -696,
+  -706,  -707,  -717,  -721,  -661,  -768,  -256,  -351,  -313,  -317,
+  -760,  -758,  -323,  -729,  -767,  -378,  -767,   -68,  -379,  -380,
+  -337,  -338,  -768,  -768,  -471,  -340,  -464,  -768,  -768,  -755,
+  -740,  -741,  -744,  -319,  -767,  -126,  -127,  -130,  -755,  -767,
+  -768,  -768,  -768,  -768,  -755,  -768,  -767,  -588,  -590,  -594,
+  -600,  -602,   -11,  -140,   -38,  -298,  -768,  -755,  -740,  -741,
+  -741,  -740,   -50,  -271,  -768,  -767,   -44,  -215,   -45,  -216,
+   -80,   -46,  -218,   -47,  -217,   -82,  -768,  -768,  -768,  -768,
+  -453,  -768,  -768,  -490,  -491,  -768,  -768,  -768,  -509,  -755,
+  -755,  -503,  -510,  -516,  -768,  -519,  -523,  -768,  -506,  -768,
+  -768,  -544,  -545,  -549,  -550,  -562,  -127,  -563,  -768,   -65,
+  -727,  -422,  -423,  -755,  -425,  -767,  -444,  -443,  -768,  -755,
+  -455,  -767,  -457,  -285,  -295,  -735,   -95,  -453,  -107,  -328,
+  -768,   -12,   -14,  -370,  -372,  -767,  -574,  -568,  -767,  -569,
+  -570,  -755,  -666,  -667,  -667,  -694,  -724,  -703,  -708,  -723,
+  -667,  -667,  -714,  -667,  -691,  -709,  -755,  -768,  -768,  -396,
+  -692,  -768,  -268,  -768,  -373,  -381,  -768,  -383,  -767,  -768,
+   -69,  -339,  -341,  -768,  -465,  -768,  -767,  -453,  -768,  -453,
+  -768,  -768,  -346,  -349,  -435,  -767,  -767,  -427,  -755,  -611,
+  -614,  -615,  -616,  -617,  -768,  -299,  -453,   -43,  -214,  -280,
+  -768,  -486,  -488,  -496,  -500,  -768,  -768,  -768,  -528,  -530,
+  -531,  -534,  -535,  -537,  -539,  -540,  -755,  -755,  -755,  -564,
+  -501,  -502,  -526,  -511,  -514,  -517,  -768,  -522,  -755,  -759,
+  -768,  -542,  -543,  -253,  -724,  -724,  -403,  -767,  -767,  -767,
+  -421,  -768,  -755,  -691,  -699,  -700,  -711,  -463,   -75,  -273,
+  -767,  -255,  -767,  -573,  -768,  -768,  -572,  -657,  -768,  -670,
+  -768,  -672,  -662,  -768,  -675,  -768,  -678,  -680,  -388,  -390,
+  -392,  -395,  -257,  -335,  -768,  -384,  -336,  -768,  -476,  -479,
+  -482,  -483,  -484,  -466,  -768,  -767,  -342,  -344,  -652,  -767,
+  -768,  -768,  -768,  -436,  -613,  -493,  -494,  -495,  -529,  -533,
+  -536,  -538,  -497,  -498,  -499,  -518,  -512,  -768,  -520,  -524,
+  -505,  -508,  -768,  -401,  -402,  -406,  -405,  -412,  -414,  -768,
+  -417,  -768,  -419,  -424,  -768,  -768,  -698,  -768,  -460,  -767,
+  -767,  -645,  -646,  -768,  -768,  -310,  -571,  -667,  -667,  -667,
+  -667,  -768,  -768,  -767,  -472,  -768,  -768,  -480,  -467,  -468,
+  -469,  -470,  -768,  -438,  -439,  -755,  -429,  -431,  -432,  -527,
+  -532,  -768,  -515,  -768,  -724,  -701,  -404,  -767,  -767,  -767,
+  -767,  -712,  -767,  -426,  -710,  -768,  -320,   -13,  -567,  -767,
+  -768,  -768,  -320,  -768,  -668,  -671,  -673,  -676,  -393,  -767,
+  -767,  -477,  -478,  -481,  -519,  -347,  -428,  -768,  -513,  -768,
+  -521,  -525,  -400,  -768,  -409,  -768,  -411,  -768,  -415,  -768,
+  -418,  -420,  -319,  -744,  -566,  -755,  -740,  -741,  -744,  -319,
+  -667,  -382,  -767,  -768,  -430,  -767,  -767,  -767,  -767,  -453,
+  -669,  -473,  -474,  -475,  -520,  -768,  -407,  -410,  -413,  -416,
+  -767,  -408 ]
+
+racc_goto_table = [
+     6,   340,   237,   594,   317,   317,   317,   477,   299,   633,
+   634,   390,   391,   282,   232,   395,   148,   148,   484,   490,
+   388,   308,   312,   301,   135,   666,   318,   318,   318,   281,
+   148,   853,   371,   143,   224,   962,   556,   656,   804,   814,
+   815,   976,   393,   394,   547,   240,     4,   648,   651,   461,
+   462,   375,   375,   993,   928,   151,   151,   637,   640,   782,
+   379,   384,   132,   366,   979,   359,   383,   979,   537,   774,
+   352,   352,   828,   131,   982,   448,   443,   444,   445,   446,
+   545,   919,   642,   598,   336,   945,   539,   920,   319,   319,
+   319,  1018,  1099,   583,  1053,   135,  1186,   418,   543,   420,
+   422,   425,   428,   431,   434,  1201,   338,   418,  1068,   352,
+   352,   352,   417,   437,   148,   136,   599,   597,   630,   999,
+  1101,   779,   435,   385,   779,   303,   311,   313,  1188,  1138,
+   474,    43,   734,   762,   975,     1,   495,    43,   974,   973,
+   315,   328,   329,   782,   396,   980,   353,   353,     2,  1224,
+   689,   605,   605,   692,   294,   142,   677,   412,   414,   975,
+  1071,   614,   614,   974,   973,  1230,    43,   344,   344,   961,
+   822,   933,   934,   714,  1082,     9,   372,   378,   389,   389,
+   785,     9,   389,   580,   580,   353,   353,   353,   468,  1201,
+   605,   468,   567,   223,  1066,   405,    43,   468,   556,   457,
+   614,  1254,   317,   450,   508,   509,   399,   294,   294,   283,
+  1192,   533,  1037,  1048,   764,   847,    16,  1000,   782,   460,
+   460,   300,    16,   485,  1058,   770,   703,   369,  1139,   478,
+   386,   769,   295,  1188,   644,   403,   501,   670,   494,   441,
+   381,   380,   382,   389,   389,   389,   389,   635,   456,   467,
+   387,    16,   467,   869,   356,   356,  1035,  1046,   467,   871,
+  1119,    43,  1036,  1047,  1228,   674,  1100,  1070,  1147,  1080,
+    43,  1069,  1072,  1185,   675,   317,   317,  1099,  1014,   733,
+   986,    16,   779,   779,   867,   317,   415,   484,   490,  1154,
+   948,   404,   873,   356,   356,   356,   852,   546,   318,   549,
+  1112,   550,   478,  1218,   872,     9,   789,   318,   951,  1139,
+  1197,   858,   767,  1179,   447,   798,   555,   555,  1107,   843,
+   776,  1261,   418,   584,  1003,  1220,  1264,  1108,  1111,  1031,
+   579,   652,  1032,   915,   472,   473,   916,   561,   927,   779,
+   576,   930,   308,   497,   498,   982,    16,   339,   312,   135,
+  1110,   791,  1189,  1190,    43,    16,  1061,  1062,   586,   379,
+   319,   968,   794,  1139,   918,  1231,   643,   572,  1084,   319,
+  1194,  1140,   794,   352,   581,   416,   419,   937,   822,    43,
+   421,   424,   989,   427,   336,   645,   430,   565,  1180,   336,
+  1207,   433,   352,   979,  1019,   660,  1066,   875,   564,   876,
+  1066,  1231,  1066,   436,   870,   977,   568,  1195,   536,   nil,
+   672,   574,   548,   nil,   135,  1092,  1167,   874,   684,   975,
+   686,   551,   nil,   690,   nil,  1139,   690,   nil,  1251,   910,
+   nil,   nil,   nil,   nil,   nil,   859,   921,   nil,   nil,    16,
+   nil,   463,   646,   nil,   463,   868,   794,     6,   nil,   353,
+   463,   605,   nil,   nil,   794,   148,   nil,   643,   818,   820,
+   710,   614,    43,   655,    16,   nil,    43,   nil,   353,   975,
+   344,    43,   702,  1198,   317,   721,   nil,  1199,   555,   555,
+   nil,   726,   720,   nil,  1066,   887,  1066,   957,  1066,   344,
+  1066,   nil,   485,   701,   151,   953,   484,   490,   389,  1010,
+   786,   478,    43,  1143,  1144,   nil,   566,   494,    43,    43,
+   nil,   763,   949,   992,   900,  1006,  1066,   nil,  1223,   673,
+   905,   956,    43,    43,   981,  1262,   983,   nil,   nil,   nil,
+   721,   782,   nil,   nil,  1049,   455,   584,   720,   nil,   918,
+   918,   nil,   822,   822,   555,   584,   317,    16,   nil,   nil,
+   971,    16,   nil,   nil,  1060,  1007,    16,   356,   nil,   nil,
+   339,  1255,   nil,   975,  1009,   nil,   nil,   485,   nil,   nil,
+   nil,   nil,   nil,   478,   nil,  1077,   356,   485,    43,   719,
+   nil,   nil,   494,  1026,   nil,   725,   nil,    16,   nil,   nil,
+   nil,   nil,   494,    16,    16,   614,   779,   nil,   nil,   nil,
+   nil,   nil,   614,   nil,   nil,   352,   nil,    16,    16,   778,
+  1034,   nil,   953,   nil,   352,  1050,  1051,   896,   898,   nil,
+   614,   978,     9,   901,   903,   nil,   nil,  1109,  1263,   969,
+   317,   864,   nil,  1232,   768,   nil,   nil,   756,   756,   nil,
+   317,   nil,   765,   nil,   nil,   nil,  1121,   339,   nil,   834,
+  1067,   485,   339,  1244,   nil,   nil,   nil,   478,   nil,   485,
+   nil,   nil,   nil,    16,   nil,  1129,   494,   478,   nil,   468,
+   nil,   848,   494,   nil,   nil,   nil,   nil,   nil,   468,   468,
+   317,   353,   nil,   nil,   468,   468,   nil,   nil,   878,   nil,
+   353,   878,   nil,   840,    43,   nil,   nil,   802,   nil,   nil,
+   nil,   485,   344,   653,   654,   nil,   nil,   478,   148,   nil,
+   nil,   344,   nil,   643,   nil,   nil,   494,   nil,   nil,   947,
+   643,   929,   nil,  1043,  1043,   883,   822,   822,  1073,   nil,
+   467,   nil,   748,   748,   nil,  1043,   nil,   nil,   nil,   467,
+   467,  1160,  1132,  1133,  1134,   467,   467,   151,   nil,  1182,
+   946,   584,   939,   nil,   nil,   nil,  1181,   nil,   nil,   nil,
+   nil,  1173,   958,   nil,  1174,   941,   nil,   nil,   281,   148,
+   895,   643,    18,   nil,   nil,   nil,   555,    43,    18,    16,
+    43,   nil,   nil,   nil,   nil,   721,   nil,   nil,   726,   356,
+   nil,   nil,   720,   nil,  1027,  1168,   nil,  1169,   356,   460,
+  1170,   918,   966,    43,   970,   nil,   nil,    18,   nil,  1011,
+   nil,  1043,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   352,   nil,   nil,   nil,   nil,   nil,   nil,   895,  1089,  1091,
+   nil,   352,   nil,   nil,    43,  1094,  1096,    18,  1097,   643,
+   nil,    43,   997,   nil,   997,   nil,   nil,   nil,   643,   nil,
+   nil,   nil,   nil,   nil,  1017,   468,  1200,   nil,  1202,  1148,
+  1150,  1152,    16,   nil,   nil,    16,   nil,   643,   nil,   756,
+   nil,   nil,   nil,   614,   nil,   756,   756,   nil,   884,   nil,
+   nil,   nil,   nil,   nil,   nil,   892,   nil,   nil,    16,   nil,
+  1012,   nil,   475,   555,   643,   nil,   353,   nil,   496,   643,
+   643,   nil,    18,   nil,   nil,   nil,   nil,   353,   nil,   nil,
+   nil,    18,   nil,   nil,   nil,   nil,   467,   344,   nil,    16,
+  1250,   nil,   463,  1017,   nil,   nil,    16,   nil,   344,   nil,
+  1073,   463,   463,   nil,  1073,  1104,  1043,   463,   463,   nil,
+  1256,  1259,  1257,   nil,  1258,   nil,   nil,   nil,   nil,   941,
+   978,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   844,   nil,
+   nil,   846,   nil,   nil,   748,   nil,  1086,   nil,   nil,   nil,
+   748,   748,  1270,   nil,   nil,   nil,   389,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1245,   nil,   nil,   nil,  1234,
+  1236,  1238,  1240,    43,  1241,    18,   794,    18,    43,   nil,
+    18,   nil,   nil,   nil,   356,    43,    18,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   356,   nil,   nil,  1073,   nil,
+    18,   nil,  1214,  1215,  1216,  1217,   643,   643,   643,   nil,
+  1118,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   929,   nil,
+   nil,   756,   nil,   nil,   756,   756,   nil,  1266,  1267,  1268,
+  1269,   756,  1017,   nil,   nil,   nil,   nil,   nil,   nil,   756,
+   756,   756,  1271,   nil,   nil,  1146,  1146,  1146,   nil,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,    16,   499,   nil,   nil,   nil,   nil,   nil,
+    16,   nil,   nil,   nil,    43,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   389,    18,   nil,  1260,   352,    18,   463,   nil,
+   nil,   nil,    18,   997,  1221,  1222,   nil,   352,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
+   nil,   nil,   756,   nil,   nil,    43,   748,   nil,   nil,   748,
+   748,   nil,   nil,    18,    43,    43,   748,   nil,   nil,    18,
+    18,   nil,   nil,   nil,   748,   748,   748,   966,  1210,    16,
+   552,   nil,  1065,    18,    18,  1226,   nil,   496,   nil,   475,
+   756,   nil,   nil,   nil,  1008,   nil,   nil,   nil,   nil,    16,
+   317,   nil,   353,   nil,   569,   756,  1024,   352,   nil,   nil,
+   nil,   nil,   nil,   353,   nil,  1146,  1146,  1146,  1146,   nil,
+  1146,   485,    19,   294,   nil,   nil,   nil,   478,    19,    43,
+   494,    43,    16,   nil,  1162,   nil,   494,   997,   nil,    18,
+    16,   nil,   nil,   241,   nil,   643,   nil,   748,   636,    16,
+    16,   nil,   nil,   241,   241,   241,   nil,    19,   345,   345,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   800,    43,   nil,
+   997,   nil,   nil,  1146,  1146,  1146,  1146,   nil,   nil,   749,
+   749,   nil,   nil,   353,   nil,   748,   756,    19,  1146,   nil,
+   nil,   nil,   241,   241,   nil,  1083,   241,   400,   410,   410,
+   748,   389,   389,   nil,   294,   nil,   nil,   nil,   807,    43,
+   356,   nil,   nil,  1074,    16,   nil,    16,   nil,   nil,  1166,
+   nil,   356,    43,   nil,   nil,   nil,   756,   nil,  1105,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1115,   nil,   nil,   nil,
+   756,   nil,   756,   nil,   nil,  1120,   nil,   837,   838,   nil,
+    20,   nil,    19,    16,   nil,    18,    20,   241,   241,   241,
+   241,    19,   nil,   nil,   727,   nil,   nil,   850,   851,    43,
+   855,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   756,   nil,
+   nil,   748,   nil,   nil,  1065,    20,   347,   347,  1065,   nil,
+  1065,   356,   nil,   nil,    16,   nil,   nil,   nil,   nil,   897,
+   899,   nil,   756,   nil,   nil,   902,   904,    16,   nil,   nil,
+  1158,   771,  1159,   773,   nil,    20,   nil,   777,   nil,   nil,
+   nil,   748,   nil,   nil,   nil,   402,   411,   411,   nil,   nil,
+   nil,   nil,   750,   750,   787,   748,   nil,   748,    18,   nil,
+   790,    18,   nil,   nil,   nil,    19,   241,   465,   241,   241,
+   465,   241,   nil,   nil,    16,   nil,   465,   241,   241,   751,
+   751,   nil,   nil,   809,    18,   812,   nil,   nil,   nil,   nil,
+    19,   nil,  1065,   748,  1065,   nil,  1065,   nil,  1065,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+  1208,   nil,   nil,   752,   752,    18,   nil,   748,    18,   nil,
+   nil,   839,    18,  1219,  1065,   nil,   nil,    18,    18,   nil,
+   nil,   749,  1074,    18,    18,  1074,   nil,   749,   749,  1074,
+   nil,  1074,   nil,   nil,   241,   241,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   241,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1252,   nil,   nil,    19,   nil,   nil,   nil,    19,   nil,   nil,
+   nil,   345,    19,   nil,   nil,   nil,  1001,  1002,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   466,  1028,   nil,   466,   nil,
+   345,   nil,   nil,   nil,   466,   nil,  1013,   nil,   897,   899,
+   904,   902,   nil,    19,   nil,   nil,   nil,   nil,    20,    19,
+    19,   nil,   nil,  1074,   nil,  1074,   nil,  1074,   nil,  1074,
+   nil,   nil,   241,    19,    19,   nil,   nil,   nil,   nil,   nil,
+   nil,   753,   753,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   940,   nil,   241,   nil,  1074,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    18,   nil,   nil,   nil,   nil,    18,
+   nil,   nil,   nil,   nil,   750,   nil,    18,   nil,   959,    19,
+   750,   750,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   749,    18,    20,   749,   749,   nil,   347,
+    20,   751,   nil,   749,   990,   nil,   nil,   751,   751,   nil,
+   nil,   749,   749,   749,   nil,   nil,   nil,  1103,   347,   nil,
+   nil,   nil,  1028,  1106,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,  1116,   241,  1117,   752,   nil,    20,    20,   nil,
+   nil,   752,   752,   nil,   nil,    18,   nil,   nil,   nil,   nil,
+   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    18,   241,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   749,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    19,   nil,   nil,    18,   nil,
+   nil,   nil,   nil,   345,   nil,   241,    18,    20,   nil,   nil,
+   nil,   nil,   345,   nil,   nil,    18,    18,   nil,   nil,   nil,
+   nil,   241,   749,   nil,   nil,  1079,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   749,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   750,  1087,   nil,   750,
+   750,   nil,   nil,   nil,   nil,   nil,   750,   nil,   nil,   nil,
+   nil,   nil,  1098,   753,   750,   750,   750,   nil,   nil,   753,
+   753,   nil,   nil,   751,   nil,   nil,   751,   751,    19,   nil,
+    18,    19,    18,   751,   nil,   nil,   nil,   nil,   nil,   241,
+   nil,   751,   751,   751,  1123,   nil,   nil,   nil,   nil,   241,
+   nil,   nil,   nil,   nil,    19,   nil,  1225,   752,   nil,   nil,
+   752,   752,   nil,   nil,   nil,   nil,   nil,   752,   749,    18,
+   nil,   nil,   nil,    20,   nil,   752,   752,   752,   nil,   nil,
+   nil,   347,   nil,   nil,   nil,    19,   nil,   750,   465,   241,
+   347,   nil,    19,   nil,   nil,   nil,   nil,   465,   465,   nil,
+   nil,   nil,   nil,   465,   465,   nil,   nil,   nil,   749,   nil,
+    18,   nil,   nil,   nil,   751,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   749,    18,   749,   750,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   750,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   752,   nil,
+   nil,   nil,   751,   nil,   nil,   nil,    20,   nil,   nil,    20,
+   749,   754,   754,   nil,   nil,   nil,   nil,   751,   345,   nil,
+    18,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   345,
+   nil,   nil,    20,   nil,   749,   753,   752,   nil,   753,   753,
+   nil,   nil,   nil,   nil,   nil,   753,   nil,   nil,   nil,   nil,
+   nil,   752,   nil,   753,   753,   753,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   466,   nil,   nil,   nil,
+    20,   750,   nil,   nil,   nil,   466,   466,   nil,   nil,   nil,
+   nil,   466,   466,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,   751,    19,
+   241,   nil,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,
+   nil,   750,   nil,   nil,   nil,   755,   755,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   465,   750,   753,   750,   nil,   nil,
+   nil,   nil,   752,   nil,    30,   nil,   nil,   nil,   751,   nil,
+    30,   nil,   nil,   nil,   nil,   nil,   347,   nil,   nil,   nil,
+   nil,   nil,   751,   nil,   751,    30,   nil,   347,   nil,   nil,
+   nil,   nil,   nil,   750,   753,    30,    30,    30,   nil,    30,
+   nil,   nil,   752,   nil,   nil,    19,   nil,   nil,   nil,   753,
+   nil,   nil,   nil,   nil,   nil,   nil,   752,   750,   752,   nil,
+   751,   nil,   nil,   nil,   nil,    19,   nil,   nil,   nil,    30,
+   nil,   nil,   nil,   nil,    30,    30,   nil,   nil,    30,   757,
+   757,   nil,   nil,   nil,   751,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,   nil,   752,   nil,   241,    20,    19,   nil,
+   nil,   nil,   nil,  1023,    20,   nil,    19,   nil,   nil,   nil,
+   nil,   nil,   nil,   754,   nil,    19,    19,   nil,   752,   754,
+   754,   nil,   466,   nil,   nil,   nil,   nil,   nil,   nil,    33,
+   753,   nil,   nil,   nil,    30,    33,   nil,   nil,   nil,    30,
+    30,    30,    30,    30,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,    33,    33,   nil,    33,   nil,   nil,   nil,   nil,   nil,
+   753,   nil,   nil,    20,  1156,   nil,   nil,   nil,   nil,   nil,
+    19,   nil,    19,   nil,   753,  1163,   753,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,    33,   nil,   nil,   nil,   nil,    33,
+    33,   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   755,   nil,    19,
+   nil,   nil,   753,   755,   755,   nil,    20,    30,    30,    30,
+    30,    30,    30,    30,    20,   nil,   nil,   nil,    30,    30,
+    30,   nil,   nil,    20,    20,   nil,   753,   nil,   nil,   nil,
+   nil,   nil,    30,   nil,   nil,  1204,   nil,   nil,   nil,    33,
+    19,   nil,   nil,   nil,    33,    33,    33,    33,    33,   nil,
+   nil,   nil,   nil,    19,   nil,   241,   241,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   754,   nil,   nil,   754,   754,
+   nil,   nil,   nil,   nil,   nil,   754,   nil,   nil,   nil,   nil,
+   nil,   nil,   411,   754,   754,   754,    30,    30,    20,   241,
+    20,   757,   nil,  1165,   nil,   nil,    30,   757,   757,   nil,
+    19,   nil,   nil,   nil,   458,   471,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,    30,
+   nil,   nil,   nil,   nil,    30,   nil,   nil,    20,   nil,   nil,
+   nil,   nil,    33,    33,    33,    33,    33,    33,    33,   nil,
+   nil,   nil,   nil,    33,    33,    33,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    30,   754,    33,   nil,   nil,
+   nil,    30,    30,   411,   nil,   nil,   nil,   nil,    20,   755,
+   nil,   nil,   755,   755,    30,    30,    30,   nil,   nil,   755,
+   nil,    20,   nil,   nil,   nil,   nil,   nil,   755,   755,   755,
+   nil,   nil,   nil,   nil,   754,    30,   nil,   nil,   nil,   558,
+   nil,   560,   nil,   nil,   562,   563,   nil,   nil,   nil,   754,
+   nil,    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   755,   nil,   nil,   757,   nil,   647,   757,   757,   nil,   nil,
+   nil,   nil,   nil,   757,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   757,   757,   757,   nil,    30,    33,    33,   nil,   nil,
+   754,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   755,    33,
+    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   755,   nil,   nil,   nil,   nil,    30,   nil,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   754,   nil,   nil,   nil,   nil,   nil,   nil,   706,   nil,    42,
+   nil,   nil,   nil,   nil,   754,    42,   754,    30,   nil,   nil,
+   nil,   nil,   nil,   nil,   757,   nil,    33,    30,   nil,   nil,
+   nil,   nil,   293,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    30,    42,   343,   343,   nil,   nil,   nil,
+   nil,   nil,   754,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   757,   nil,   755,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   754,   757,   nil,   nil,
+    33,   nil,   nil,   nil,   398,   293,   293,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    30,   nil,   780,    30,   755,   647,   nil,   783,   nil,   nil,
+   nil,    30,   nil,    33,   nil,   nil,   nil,   nil,   755,   nil,
+   755,    30,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,    42,   nil,
+   nil,   nil,    33,   nil,   nil,   nil,   755,    30,   757,   nil,
+    30,    30,   nil,   nil,    30,   nil,   829,   nil,    33,    30,
+    30,   nil,   nil,   nil,   nil,    30,    30,   nil,   nil,   nil,
+   755,   nil,   nil,   nil,   nil,   nil,   780,   nil,   nil,   647,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   757,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   856,   nil,   nil,   nil,
+   nil,   nil,   757,   nil,   757,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,    33,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,
+   757,    33,   nil,   nil,   nil,   885,   nil,    42,   nil,   nil,
+   nil,   nil,   nil,   780,   647,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   757,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    33,   nil,   nil,    33,    33,   nil,   nil,    33,
+   nil,   nil,   nil,   nil,    33,    33,   nil,   nil,   nil,   nil,
+    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,
+   780,    30,    30,   nil,   nil,   nil,   nil,   nil,    30,   954,
+   nil,   nil,   955,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,    42,   nil,    30,   nil,   343,    42,
+   nil,   nil,   nil,   nil,   967,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,   nil,   985,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,    42,    42,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,
+    42,    42,   nil,   nil,   nil,  1004,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1025,   nil,   nil,   nil,   nil,   nil,
+   nil,    33,   nil,   nil,   nil,   nil,    33,    33,    30,   nil,
+    30,   nil,   nil,    33,   nil,   nil,    42,   nil,    30,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    30,    30,   nil,
+   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    30,   nil,    30,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1113,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    30,    42,    33,   nil,    33,   nil,   647,   nil,   nil,
+   343,   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   343,
+   nil,   nil,    33,    33,   nil,   nil,   248,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   316,   316,   316,   nil,
+   nil,   nil,    30,   nil,   nil,   nil,   nil,   nil,   364,   365,
+   nil,   367,   368,   nil,   370,    30,   nil,    30,    30,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    42,   nil,    33,    42,    33,
+   nil,    30,  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    30,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    33,   nil,    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   343,   nil,    33,   nil,   316,
+   470,   nil,   nil,   476,   316,   nil,   343,   nil,   nil,   476,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   248,   nil,   nil,   nil,   nil,   510,   511,   512,
+   513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
+   523,   524,   525,   526,   527,   528,   529,   530,   531,   nil,
+   nil,   nil,   nil,   532,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,   nil,   nil,   nil,    42,   316,   316,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,   316,   nil,   nil,
+   nil,   nil,   nil,   nil,   316,   nil,   316,   nil,   nil,   316,
+   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   589,   nil,   590,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    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,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,    42,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   316,   nil,   476,   476,
+   476,   293,   nil,   nil,   nil,   nil,   nil,    42,   nil,    42,
+   nil,   nil,  1161,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   365,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    42,   316,   nil,   nil,
+   316,   nil,   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   316,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   476,   nil,
+   nil,   801,   293,   nil,   nil,   803,   nil,    42,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   836,   nil,   nil,   nil,   nil,
+   nil,   316,   nil,   nil,   316,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   316,   316,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   316,   476,   316,   nil,   nil,   nil,   893,   nil,   316,   316,
+   476,   476,   nil,   nil,   nil,   nil,   476,   476,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   316,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   316,   nil,   nil,   316,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   316,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,   316,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   476,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   476,
+   476,   476,   476,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1063,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1081,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1102,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   316,   476,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   316 ]
+
+racc_goto_check = [
+     6,    73,    39,    12,    56,    56,    56,    35,   176,    12,
+    12,    23,    23,    42,    37,    23,    80,    80,    60,    60,
+   113,    95,    95,    37,   130,    78,    92,    92,    92,    45,
+    80,   125,    39,    21,    21,    16,    98,   124,    14,   157,
+   157,   153,    52,    52,    96,    26,     2,   117,   117,    28,
+    28,     6,     6,   118,   204,    82,    82,    93,    93,   257,
+   132,    92,     8,    85,   158,    74,     6,   158,   177,    63,
+    46,    46,   149,     5,   252,    10,    23,    23,    23,    23,
+    35,   192,    36,   162,    69,   165,    60,   193,    94,    94,
+    94,   167,   147,    75,   208,   130,   169,     6,    62,     6,
+     6,     6,     6,     6,     6,   253,    70,     6,   163,    46,
+    46,    46,   225,    45,    80,     7,    96,   175,   175,   120,
+   150,    99,   225,    94,    99,    61,    61,    61,   170,   209,
+    32,    77,    41,    41,   248,     1,    32,    77,   164,   246,
+    68,    68,    68,   257,     5,   164,    48,    48,     3,   210,
+   229,   242,   242,   229,    77,    11,   175,    79,    79,   248,
+   167,   247,   247,   164,   246,   210,    77,    77,    77,    15,
+   148,   218,   218,    36,    17,     9,    87,    87,    30,    30,
+    19,     9,    30,   241,   241,    48,    48,    48,    24,   253,
+   242,    24,    20,    22,   158,    25,    77,    24,    98,    29,
+   247,   169,    56,    31,    43,    44,    77,    77,    77,    49,
+   209,    50,   195,   195,    51,    53,    27,    55,   257,    92,
+    92,    59,    27,    95,   195,    65,    83,    89,   208,     6,
+    91,    97,   109,   170,   112,   127,    37,   129,    80,     7,
+     9,   133,   134,    30,    30,    30,    30,   135,    26,    26,
+   136,    27,    26,   137,    88,    88,   192,   192,    26,   138,
+   139,    77,   193,   193,   209,   140,   151,   155,   160,   165,
+    77,   164,   161,   168,   171,    56,    56,   147,   172,    35,
+   149,    27,    99,    99,    78,    56,   173,    60,    60,   167,
+    63,    27,   174,    88,    88,    88,   124,    92,    92,   179,
+   195,   180,     6,   150,    12,     9,    75,    92,   182,   208,
+   163,   183,   185,   186,     9,    75,     6,     6,   187,    93,
+   177,   188,     6,    73,   189,   190,   209,   191,   194,   197,
+    39,    23,   199,   200,    30,    30,   201,   225,   205,    99,
+    37,   206,    95,    30,    30,   252,    27,    13,    95,   130,
+   193,    35,   212,   213,    77,    27,   218,   218,    37,   132,
+    94,   220,    60,   208,    41,   208,    39,    74,   221,    94,
+   153,   204,    60,    46,    85,   224,   226,    78,   148,    77,
+   227,   228,   148,   231,    69,     6,   232,     8,   120,    69,
+    16,   233,    46,   158,   234,    37,   158,   235,     5,   236,
+   158,   208,   158,   239,   240,   250,    70,   251,   256,   nil,
+     6,    70,    68,   nil,   130,   157,   164,   175,   230,   248,
+   230,    68,   nil,   230,   nil,   208,   230,   nil,   118,    36,
+   nil,   nil,   nil,   nil,   nil,    35,    36,   nil,   nil,    27,
+   nil,    27,    94,   nil,    27,    35,    60,     6,   nil,    48,
+    27,   242,   nil,   nil,    60,    80,   nil,    39,   245,   245,
+    37,   247,    77,     5,    27,   nil,    77,   nil,    48,   248,
+    77,    77,    21,   164,    56,    95,   nil,   164,     6,     6,
+   nil,    95,     6,   nil,   158,    35,   158,    36,   158,    77,
+   158,   nil,    95,     2,    82,    98,    60,    60,    30,    12,
+    10,     6,    77,   157,   157,   nil,     9,    80,    77,    77,
+   nil,    39,    96,    93,    62,   117,   158,   nil,   192,    30,
+    62,    75,    77,    77,   162,   120,   162,   nil,   nil,   nil,
+    95,   257,   nil,   nil,    78,    13,    73,     6,   nil,    41,
+    41,   nil,   148,   148,     6,    73,    56,    27,   nil,   nil,
+    96,    27,   nil,   nil,    41,    36,    27,    88,   nil,   nil,
+    13,   164,   nil,   248,    36,   nil,   nil,    95,   nil,   nil,
+   nil,   nil,   nil,     6,   nil,    12,    88,    95,    77,    61,
+   nil,   nil,    80,    36,   nil,    61,   nil,    27,   nil,   nil,
+   nil,   nil,    80,    27,    27,   247,    99,   nil,   nil,   nil,
+   nil,   nil,   247,   nil,   nil,    46,   nil,    27,    27,    94,
+    36,   nil,    98,   nil,    46,    36,    36,    32,    32,   nil,
+   247,   216,     9,    32,    32,   nil,   nil,    41,   125,    28,
+    56,    52,   nil,   157,    61,   nil,   nil,    77,    77,   nil,
+    56,   nil,    30,   nil,   nil,   nil,    12,    13,   nil,   130,
+   162,    95,    13,    14,   nil,   nil,   nil,     6,   nil,    95,
+   nil,   nil,   nil,    27,   nil,    41,    80,     6,   nil,    24,
+   nil,   130,    80,   nil,   nil,   nil,   nil,   nil,    24,    24,
+    56,    48,   nil,   nil,    24,    24,   nil,   nil,   230,   nil,
+    48,   230,   nil,    94,    77,   nil,   nil,    30,   nil,   nil,
+   nil,    95,    77,    13,    13,   nil,   nil,     6,    80,   nil,
+   nil,    77,   nil,    39,   nil,   nil,    80,   nil,   nil,   113,
+    39,    39,   nil,   216,   216,    21,   148,   148,   247,   nil,
+    26,   nil,   101,   101,   nil,   216,   nil,   nil,   nil,    26,
+    26,   117,    36,    36,    36,    26,    26,    82,   nil,    12,
+   176,    73,    42,   nil,   nil,   nil,   124,   nil,   nil,   nil,
+   nil,   117,    73,   nil,   117,     6,   nil,   nil,    45,    80,
+    94,    39,    33,   nil,   nil,   nil,     6,    77,    33,    27,
+    77,   nil,   nil,   nil,   nil,    95,   nil,   nil,    95,    88,
+   nil,   nil,     6,   nil,    32,   162,   nil,   162,    88,    92,
+   162,    41,     6,    77,     6,   nil,   nil,    33,   nil,    23,
+   nil,   216,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    46,   nil,   nil,   nil,   nil,   nil,   nil,    94,   245,   245,
+   nil,    46,   nil,   nil,    77,   245,   245,    33,   245,    39,
+   nil,    77,     6,   nil,     6,   nil,   nil,   nil,    39,   nil,
+   nil,   nil,   nil,   nil,    39,    24,   162,   nil,   162,   159,
+   159,   159,    27,   nil,   nil,    27,   nil,    39,   nil,    77,
+   nil,   nil,   nil,   247,   nil,    77,    77,   nil,     9,   nil,
+   nil,   nil,   nil,   nil,   nil,     9,   nil,   nil,    27,   nil,
+   130,   nil,    84,     6,    39,   nil,    48,   nil,    84,    39,
+    39,   nil,    33,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+   nil,    33,   nil,   nil,   nil,   nil,    26,    77,   nil,    27,
+   162,   nil,    27,    39,   nil,   nil,    27,   nil,    77,   nil,
+   247,    27,    27,   nil,   247,    23,   216,    27,    27,   nil,
+   162,    36,   162,   nil,   162,   nil,   nil,   nil,   nil,     6,
+   216,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    13,   nil,
+   nil,    13,   nil,   nil,   101,   nil,     6,   nil,   nil,   nil,
+   101,   101,   162,   nil,   nil,   nil,    30,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   159,
+   159,   159,   159,    77,   159,    33,    60,    33,    77,   nil,
+    33,   nil,   nil,   nil,    88,    77,    33,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    88,   nil,   nil,   247,   nil,
+    33,   nil,   245,   245,   245,   245,    39,    39,    39,   nil,
+   130,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    39,   nil,
+   nil,    77,   nil,   nil,    77,    77,   nil,   159,   159,   159,
+   159,    77,    39,   nil,   nil,   nil,   nil,   nil,   nil,    77,
+    77,    77,   159,   nil,   nil,     6,     6,     6,   nil,   nil,
+   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,    27,   nil,
+   nil,   nil,   nil,    27,    71,   nil,   nil,   nil,   nil,   nil,
+    27,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    30,    33,   nil,   245,    46,    33,    27,   nil,
+   nil,   nil,    33,     6,    23,    23,   nil,    46,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
+   nil,   nil,    77,   nil,   nil,    77,   101,   nil,   nil,   101,
+   101,   nil,   nil,    33,    77,    77,   101,   nil,   nil,    33,
+    33,   nil,   nil,   nil,   101,   101,   101,     6,    37,    27,
+    71,   nil,   152,    33,    33,    39,   nil,    84,   nil,    84,
+    77,   nil,   nil,   nil,    13,   nil,   nil,   nil,   nil,    27,
+    56,   nil,    48,   nil,    71,    77,    13,    46,   nil,   nil,
+   nil,   nil,   nil,    48,   nil,     6,     6,     6,     6,   nil,
+     6,    95,    34,    77,   nil,   nil,   nil,     6,    34,    77,
+    80,    77,    27,   nil,    77,   nil,    80,     6,   nil,    33,
+    27,   nil,   nil,    34,   nil,    39,   nil,   101,    71,    27,
+    27,   nil,   nil,    34,    34,    34,   nil,    34,    34,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    84,    77,   nil,
+     6,   nil,   nil,     6,     6,     6,     6,   nil,   nil,   102,
+   102,   nil,   nil,    48,   nil,   101,    77,    34,     6,   nil,
+   nil,   nil,    34,    34,   nil,    13,    34,    34,    34,    34,
+   101,    30,    30,   nil,    77,   nil,   nil,   nil,   111,    77,
+    88,   nil,   nil,   249,    27,   nil,    27,   nil,   nil,    27,
+   nil,    88,    77,   nil,   nil,   nil,    77,   nil,    13,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    13,   nil,   nil,   nil,
+    77,   nil,    77,   nil,   nil,    13,   nil,   111,   111,   nil,
+    38,   nil,    34,    27,   nil,    33,    38,    34,    34,    34,
+    34,    34,   nil,   nil,    71,   nil,   nil,   111,   111,    77,
+   111,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
+   nil,   101,   nil,   nil,   152,    38,    38,    38,   152,   nil,
+   152,    88,   nil,   nil,    27,   nil,   nil,   nil,   nil,    84,
+    84,   nil,    77,   nil,   nil,    84,    84,    27,   nil,   nil,
+    13,    71,    13,    71,   nil,    38,   nil,    71,   nil,   nil,
+   nil,   101,   nil,   nil,   nil,    38,    38,    38,   nil,   nil,
+   nil,   nil,   103,   103,    71,   101,   nil,   101,    33,   nil,
+    71,    33,   nil,   nil,   nil,    34,    34,    34,    34,    34,
+    34,    34,   nil,   nil,    27,   nil,    34,    34,    34,   104,
+   104,   nil,   nil,    71,    33,    71,   nil,   nil,   nil,   nil,
+    34,   nil,   152,   101,   152,   nil,   152,   nil,   152,   nil,
+    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,
+    13,   nil,   nil,   105,   105,    33,   nil,   101,    33,   nil,
+   nil,    71,    33,    13,   152,   nil,   nil,    33,    33,   nil,
+   nil,   102,   249,    33,    33,   249,   nil,   102,   102,   249,
+   nil,   249,   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    13,   nil,   nil,    34,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,    34,    34,   nil,   nil,   nil,   111,   111,   nil,   nil,
+   nil,   nil,   nil,    38,   nil,    38,    84,   nil,    38,   nil,
+    34,   nil,   nil,   nil,    38,   nil,   111,   nil,    84,    84,
+    84,    84,   nil,    34,   nil,   nil,   nil,   nil,    38,    34,
+    34,   nil,   nil,   249,   nil,   249,   nil,   249,   nil,   249,
+   nil,   nil,    34,    34,    34,   nil,   nil,   nil,   nil,   nil,
+   nil,   106,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    71,   nil,    34,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    33,   nil,   nil,   nil,   nil,    33,
+   nil,   nil,   nil,   nil,   103,   nil,    33,   nil,    71,    34,
+   103,   103,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   102,    33,    38,   102,   102,   nil,    38,
+    38,   104,   nil,   102,    71,   nil,   nil,   104,   104,   nil,
+   nil,   102,   102,   102,   nil,   nil,   nil,   111,    38,   nil,
+   nil,   nil,    84,   111,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   111,    34,   111,   105,   nil,    38,    38,   nil,
+   nil,   105,   105,   nil,   nil,    33,   nil,   nil,   nil,   nil,
+   nil,    38,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    33,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   102,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,    33,   nil,
+   nil,   nil,   nil,    34,   nil,    34,    33,    38,   nil,   nil,
+   nil,   nil,    34,   nil,   nil,    33,    33,   nil,   nil,   nil,
+   nil,    34,   102,   nil,   nil,    71,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   102,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   103,    71,   nil,   103,
+   103,   nil,   nil,   nil,   nil,   nil,   103,   nil,   nil,   nil,
+   nil,   nil,    71,   106,   103,   103,   103,   nil,   nil,   106,
+   106,   nil,   nil,   104,   nil,   nil,   104,   104,    34,   nil,
+    33,    34,    33,   104,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   104,   104,   104,    71,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,    34,   nil,   111,   105,   nil,   nil,
+   105,   105,   nil,   nil,   nil,   nil,   nil,   105,   102,    33,
+   nil,   nil,   nil,    38,   nil,   105,   105,   105,   nil,   nil,
+   nil,    38,   nil,   nil,   nil,    34,   nil,   103,    34,    34,
+    38,   nil,    34,   nil,   nil,   nil,   nil,    34,    34,   nil,
+   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,   102,   nil,
+    33,   nil,   nil,   nil,   104,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   102,    33,   102,   103,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   103,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,   nil,
+   nil,   nil,   104,   nil,   nil,   nil,    38,   nil,   nil,    38,
+   102,   107,   107,   nil,   nil,   nil,   nil,   104,    34,   nil,
+    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,    38,   nil,   102,   106,   105,   nil,   106,   106,
+   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,   nil,   nil,
+   nil,   105,   nil,   106,   106,   106,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    38,   nil,   nil,    38,   nil,   nil,   nil,
+    38,   103,   nil,   nil,   nil,    38,    38,   nil,   nil,   nil,
+   nil,    38,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   104,    34,
+    34,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
+   nil,   103,   nil,   nil,   nil,   108,   108,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    34,   103,   106,   103,   nil,   nil,
+   nil,   nil,   105,   nil,    64,   nil,   nil,   nil,   104,   nil,
+    64,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,   nil,
+   nil,   nil,   104,   nil,   104,    64,   nil,    38,   nil,   nil,
+   nil,   nil,   nil,   103,   106,    64,    64,    64,   nil,    64,
+   nil,   nil,   105,   nil,   nil,    34,   nil,   nil,   nil,   106,
+   nil,   nil,   nil,   nil,   nil,   nil,   105,   103,   105,   nil,
+   104,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,    64,    64,   nil,   nil,    64,   115,
+   115,   nil,   nil,   nil,   104,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    38,   nil,   105,   nil,    34,    38,    34,   nil,
+   nil,   nil,   nil,    38,    38,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   107,   nil,    34,    34,   nil,   105,   107,
+   107,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,    67,
+   106,   nil,   nil,   nil,    64,    67,   nil,   nil,   nil,    64,
+    64,    64,    64,    64,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,    67,    67,   nil,    67,   nil,   nil,   nil,   nil,   nil,
+   106,   nil,   nil,    38,    34,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,    34,   nil,   106,    34,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,    38,    67,   nil,   nil,   nil,   nil,    67,
+    67,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,   nil,    34,
+   nil,   nil,   106,   108,   108,   nil,    38,    64,    64,    64,
+    64,    64,    64,    64,    38,   nil,   nil,   nil,    64,    64,
+    64,   nil,   nil,    38,    38,   nil,   106,   nil,   nil,   nil,
+   nil,   nil,    64,   nil,   nil,    34,   nil,   nil,   nil,    67,
+    34,   nil,   nil,   nil,    67,    67,    67,    67,    67,   nil,
+   nil,   nil,   nil,    34,   nil,    34,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   107,   nil,   nil,   107,   107,
+   nil,   nil,   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,
+   nil,   nil,    38,   107,   107,   107,    64,    64,    38,    34,
+    38,   115,   nil,    38,   nil,   nil,    64,   115,   115,   nil,
+    34,   nil,   nil,   nil,    90,    90,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    64,   nil,   nil,   nil,    64,
+   nil,   nil,   nil,   nil,    64,   nil,   nil,    38,   nil,   nil,
+   nil,   nil,    67,    67,    67,    67,    67,    67,    67,   nil,
+   nil,   nil,   nil,    67,    67,    67,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    64,   107,    67,   nil,   nil,
+   nil,    64,    64,    38,   nil,   nil,   nil,   nil,    38,   108,
+   nil,   nil,   108,   108,    64,    64,    64,   nil,   nil,   108,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   108,   108,   108,
+   nil,   nil,   nil,   nil,   107,    64,   nil,   nil,   nil,    90,
+   nil,    90,   nil,   nil,    90,    90,   nil,   nil,   nil,   107,
+   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,
+   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,   nil,   nil,    67,   nil,   nil,   nil,   nil,    67,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   108,   nil,   nil,   115,   nil,    90,   115,   115,   nil,   nil,
+   nil,   nil,   nil,   115,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   115,   115,   115,   nil,    64,    67,    67,   nil,   nil,
+   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,    67,
+    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   108,   nil,   nil,   nil,   nil,    64,   nil,
+    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   107,   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,    76,
+   nil,   nil,   nil,   nil,   107,    76,   107,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   115,   nil,    67,    64,   nil,   nil,
+   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    64,    76,    76,    76,   nil,   nil,   nil,
+   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   115,   nil,   108,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    76,   nil,   107,   115,   nil,   nil,
+    67,   nil,   nil,   nil,    76,    76,    76,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    64,   nil,    90,    64,   108,    90,   nil,    90,   nil,   nil,
+   nil,    64,   nil,    67,   nil,   nil,   nil,   nil,   108,   nil,
+   108,    64,   nil,   nil,   nil,   nil,    64,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,    76,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   108,    64,   115,   nil,
+    64,    64,   nil,   nil,    64,   nil,    90,   nil,    67,    64,
+    64,   nil,   nil,   nil,   nil,    64,    64,   nil,   nil,   nil,
+   108,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,    90,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   115,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,   nil,
+   nil,   nil,   115,   nil,   115,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,    67,   nil,
+   nil,   nil,    76,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   115,    67,   nil,   nil,   nil,    90,   nil,    76,   nil,   nil,
+   nil,   nil,   nil,    90,    90,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   115,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,    67,    67,   nil,   nil,    67,
+   nil,   nil,   nil,   nil,    67,    67,   nil,   nil,   nil,   nil,
+    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    64,   nil,   nil,   nil,
+    90,    64,    64,   nil,   nil,   nil,   nil,   nil,    64,    90,
+   nil,   nil,    90,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    76,   nil,   nil,   nil,    76,   nil,    64,   nil,    76,    76,
+   nil,   nil,   nil,   nil,    90,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,    90,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    76,   nil,   nil,   nil,   nil,   nil,    76,    76,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    64,   nil,   nil,
+    76,    76,   nil,   nil,   nil,    90,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    64,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    90,   nil,   nil,   nil,   nil,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,    67,    67,    64,   nil,
+    64,   nil,   nil,    67,   nil,   nil,    76,   nil,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    64,    64,   nil,
+   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    64,   nil,    64,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    90,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    64,    76,    67,   nil,    67,   nil,    90,   nil,   nil,
+    76,   nil,   nil,    67,   nil,   nil,   nil,   nil,   nil,    76,
+   nil,   nil,    67,    67,   nil,   nil,    40,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    40,    40,    40,   nil,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    40,    40,
+   nil,    40,    40,   nil,    40,    64,   nil,    64,    64,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    76,   nil,    67,    76,    67,
+   nil,    64,    90,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,    76,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    67,   nil,    67,    67,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    67,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    76,   nil,    67,   nil,    40,
+    40,   nil,   nil,    40,    40,   nil,    76,   nil,   nil,    40,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    40,   nil,   nil,   nil,   nil,    40,    40,    40,
+    40,    40,    40,    40,    40,    40,    40,    40,    40,    40,
+    40,    40,    40,    40,    40,    40,    40,    40,    40,   nil,
+   nil,   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    76,   nil,   nil,   nil,   nil,    76,    40,    40,   nil,
+   nil,   nil,   nil,    76,   nil,   nil,   nil,    40,   nil,   nil,
+   nil,   nil,   nil,   nil,    40,   nil,    40,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    40,   nil,    40,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    76,    76,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    40,   nil,    40,    40,
+    40,    76,   nil,   nil,   nil,   nil,   nil,    76,   nil,    76,
+   nil,   nil,    76,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    76,    40,   nil,   nil,
+    40,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    40,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    40,   nil,
+   nil,    40,    76,   nil,   nil,    40,   nil,    76,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    76,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    40,   nil,   nil,   nil,   nil,
+   nil,    40,   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,
+   nil,    40,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    40,    40,    40,   nil,   nil,   nil,    40,   nil,    40,    40,
+    40,    40,   nil,   nil,   nil,   nil,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    40,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    40,   nil,   nil,    40,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    40,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    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,   nil,   nil,   nil,   nil,    40,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    40,   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,   nil,   nil,   nil,
+   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    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,   nil,   nil,
+   nil,   nil,   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    40,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   135,    44,   148,   nil,    68,    -2,   107,    57,   173,
+   -67,   145,  -370,   310,  -555,  -635,  -769,  -787,   nil,  -385,
+  -143,    22,   181,   -61,   -39,   118,    22,   214,  -177,   -27,
+   106,    60,  -100,   770,  1200,  -224,  -304,    -5,  1328,   -20,
+  3223,  -376,   -12,   -48,   -48,     4,    32,   nil,   108,   184,
+   -72,  -319,   -32,  -437,   nil,  -630,   -29,   nil,   nil,   193,
+  -214,    95,  -205,  -480,  2102,  -317,   nil,  2227,   107,    47,
+    69,   846,   nil,   -37,    26,  -267,  2657,   129,  -383,    79,
+     5,   nil,    44,  -228,   662,    16,   nil,   123,   216,   177,
+  2198,   162,    -7,  -327,    55,    -9,  -260,  -308,  -283,  -433,
+   nil,   224,   751,   904,   931,   965,  1093,  1473,  1577,   207,
+   nil,   694,  -153,   -50,   nil,  1671,   nil,  -343,  -791,   nil,
+  -727,   nil,   nil,   nil,  -359,  -624,   nil,   158,   nil,  -175,
+    19,   nil,     6,   175,   175,  -134,   181,  -417,  -414,  -752,
+  -149,   nil,   nil,   nil,   nil,   nil,   nil,  -895,  -445,  -543,
+  -868,  -721,   219,  -772,   nil,  -676,   nil,  -561,  -749,  -208,
+  -799,  -671,  -293,  -835,  -672,  -682,   nil,  -783,  -849, -1026,
+  -994,  -141,  -595,   193,  -383,  -259,   -18,  -230,   nil,   -10,
+    -9,   nil,  -467,  -347,   nil,  -226,  -802,  -685,  -931,  -530,
+  -849,  -676,  -659,  -653,  -675,  -703,   nil,  -582,   nil,  -580,
+  -406,  -403,   nil,   nil,  -687,  -403,  -401,   nil,  -828,  -927,
+ -1028,   nil,  -776,  -775,   nil,   nil,  -192,   nil,  -575,   nil,
+  -445,  -600,   nil,   nil,   279,    13,   275,   278,   278,  -274,
+    -1,   279,   281,   285,  -481,  -284,  -283,   nil,   nil,   294,
+  -267,  -169,  -225,   nil,   nil,  -145,  -671,  -215,  -676,   350,
+  -408,  -735,  -743, -1044,   nil,   nil,   112,  -498 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   331,     7,   397,   334,
+   nil,   nil,   nil,   593,   nil,   nil,   nil,   nil,   330,   332,
+   nil,   nil,   nil,   nil,    14,    15,    21,   246,   nil,   nil,
+    17,   nil,   464,   247,   363,   nil,   nil,   668,   245,   500,
+    24,  1052,   nil,   nil,   nil,   150,    53,    25,    54,   nil,
+   nil,   nil,   nil,   nil,   392,   nil,    26,    27,    28,   nil,
+   797,   nil,   nil,   nil,   351,   nil,    29,   348,   479,    36,
+   nil,   nil,    38,    41,    40,   nil,   242,   243,   409,   nil,
+   487,   149,    95,   nil,   469,   111,    50,   nil,    55,   280,
+   322,   nil,   480,   nil,   481,   492,   nil,   722,   553,   320,
+   305,    56,    57,    58,    59,    60,    61,    62,    63,    64,
+    66,   nil,   nil,   306,    70,    71,    72,   nil,   nil,    73,
+   995,    74,    75,    76,   nil,   nil,    77,   nil,    78,   nil,
+   649,    79,   373,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   310,   298,   806,   965,   658,   996,   824,   613,   nil,
+   825,   826,   601,   595,   596,  1196,  1064,   nil,   602,   nil,
+   nil,   nil,   631,   nil,   604,   nil,   942,   nil,   nil,   nil,
+   611,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   491,   nil,
+   nil,   775,   nil,   nil,   538,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   923,   nil,   735,   744,   736,   737,
+   nil,   nil,   738,   739,   nil,   nil,   nil,   922,   924,   nil,
+   925,  1038,  1039,  1040,  1041,  1044,   622,  1045,   743,   745,
+   nil,   nil,    94,    96,    98,   nil,   nil,   nil,   nil,   nil,
+   679,   nil,   nil,   nil,   nil,   nil,   nil,   107,   108,   nil,
+   nil,   374,   972,   377,   600,   811,   603,   984,   616,   618,
+   619,  1075,   623,  1076,   626,   629,   nil,   325 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 150, :_reduce_1,
+  2, 148, :_reduce_2,
+  2, 149, :_reduce_3,
+  1, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  3, 151, :_reduce_6,
+  2, 151, :_reduce_none,
+  1, 154, :_reduce_none,
+  0, 158, :_reduce_9,
+  3, 154, :_reduce_10,
+  3, 157, :_reduce_11,
+  0, 164, :_reduce_12,
+  6, 159, :_reduce_13,
+  3, 159, :_reduce_14,
+  2, 160, :_reduce_15,
+  1, 165, :_reduce_none,
+  1, 165, :_reduce_none,
+  3, 165, :_reduce_18,
+  2, 165, :_reduce_19,
+  1, 166, :_reduce_none,
+  0, 167, :_reduce_21,
+  3, 166, :_reduce_22,
+  0, 178, :_reduce_23,
+  4, 156, :_reduce_24,
+  3, 156, :_reduce_25,
+  3, 156, :_reduce_26,
+  3, 156, :_reduce_27,
+  2, 156, :_reduce_28,
+  3, 156, :_reduce_29,
+  3, 156, :_reduce_30,
+  3, 156, :_reduce_31,
+  3, 156, :_reduce_32,
+  3, 156, :_reduce_33,
+  4, 156, :_reduce_34,
+  1, 156, :_reduce_none,
+  3, 156, :_reduce_36,
+  3, 156, :_reduce_37,
+  5, 156, :_reduce_38,
+  3, 156, :_reduce_39,
+  1, 156, :_reduce_none,
+  3, 171, :_reduce_41,
+  3, 171, :_reduce_42,
+  6, 171, :_reduce_43,
+  5, 171, :_reduce_44,
+  5, 171, :_reduce_45,
+  5, 171, :_reduce_46,
+  5, 171, :_reduce_47,
+  3, 171, :_reduce_48,
+  1, 179, :_reduce_49,
+  3, 179, :_reduce_50,
+  1, 179, :_reduce_none,
+  1, 177, :_reduce_none,
+  3, 177, :_reduce_53,
+  3, 177, :_reduce_54,
+  3, 177, :_reduce_55,
+  2, 177, :_reduce_56,
+  0, 190, :_reduce_57,
+  4, 177, :_reduce_58,
+  0, 191, :_reduce_59,
+  4, 177, :_reduce_60,
+  1, 177, :_reduce_none,
+  1, 189, :_reduce_62,
+  2, 193, :_reduce_63,
+  0, 198, :_reduce_64,
+  5, 195, :_reduce_65,
+  1, 170, :_reduce_66,
+  0, 201, :_reduce_67,
+  0, 202, :_reduce_68,
+  4, 199, :_reduce_69,
+  1, 173, :_reduce_none,
+  1, 173, :_reduce_none,
+  1, 204, :_reduce_none,
+  4, 204, :_reduce_73,
+  0, 212, :_reduce_74,
+  4, 209, :_reduce_75,
+  1, 211, :_reduce_76,
+  2, 203, :_reduce_77,
+  3, 203, :_reduce_78,
+  4, 203, :_reduce_79,
+  5, 203, :_reduce_80,
+  4, 203, :_reduce_81,
+  5, 203, :_reduce_82,
+  2, 203, :_reduce_83,
+  2, 203, :_reduce_84,
+  2, 203, :_reduce_85,
+  2, 203, :_reduce_86,
+  2, 203, :_reduce_87,
+  1, 172, :_reduce_none,
+  3, 172, :_reduce_89,
+  1, 217, :_reduce_none,
+  3, 217, :_reduce_91,
+  1, 216, :_reduce_92,
+  2, 216, :_reduce_93,
+  3, 216, :_reduce_94,
+  5, 216, :_reduce_95,
+  2, 216, :_reduce_96,
+  4, 216, :_reduce_97,
+  2, 216, :_reduce_98,
+  4, 216, :_reduce_99,
+  1, 216, :_reduce_100,
+  3, 216, :_reduce_101,
+  1, 220, :_reduce_none,
+  3, 220, :_reduce_103,
+  2, 219, :_reduce_104,
+  3, 219, :_reduce_105,
+  1, 222, :_reduce_106,
+  3, 222, :_reduce_107,
+  1, 221, :_reduce_108,
+  1, 221, :_reduce_109,
+  4, 221, :_reduce_110,
+  3, 221, :_reduce_111,
+  3, 221, :_reduce_112,
+  3, 221, :_reduce_113,
+  3, 221, :_reduce_114,
+  2, 221, :_reduce_115,
+  1, 221, :_reduce_116,
+  1, 174, :_reduce_117,
+  1, 174, :_reduce_118,
+  4, 174, :_reduce_119,
+  3, 174, :_reduce_120,
+  3, 174, :_reduce_121,
+  3, 174, :_reduce_122,
+  3, 174, :_reduce_123,
+  2, 174, :_reduce_124,
+  1, 174, :_reduce_125,
+  1, 225, :_reduce_126,
+  1, 225, :_reduce_none,
+  2, 226, :_reduce_128,
+  1, 226, :_reduce_129,
+  3, 226, :_reduce_130,
+  1, 192, :_reduce_none,
+  1, 192, :_reduce_none,
+  1, 192, :_reduce_none,
+  1, 192, :_reduce_134,
+  1, 192, :_reduce_none,
+  1, 168, :_reduce_136,
+  1, 168, :_reduce_none,
+  1, 169, :_reduce_138,
+  0, 230, :_reduce_139,
+  4, 169, :_reduce_140,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 227, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  3, 187, :_reduce_212,
+  3, 187, :_reduce_213,
+  6, 187, :_reduce_214,
+  5, 187, :_reduce_215,
+  5, 187, :_reduce_216,
+  5, 187, :_reduce_217,
+  5, 187, :_reduce_218,
+  4, 187, :_reduce_219,
+  3, 187, :_reduce_220,
+  3, 187, :_reduce_221,
+  3, 187, :_reduce_222,
+  2, 187, :_reduce_223,
+  2, 187, :_reduce_224,
+  2, 187, :_reduce_225,
+  2, 187, :_reduce_226,
+  3, 187, :_reduce_227,
+  3, 187, :_reduce_228,
+  3, 187, :_reduce_229,
+  3, 187, :_reduce_230,
+  3, 187, :_reduce_231,
+  3, 187, :_reduce_232,
+  4, 187, :_reduce_233,
+  2, 187, :_reduce_234,
+  2, 187, :_reduce_235,
+  3, 187, :_reduce_236,
+  3, 187, :_reduce_237,
+  3, 187, :_reduce_238,
+  3, 187, :_reduce_239,
+  1, 187, :_reduce_none,
+  3, 187, :_reduce_241,
+  3, 187, :_reduce_242,
+  3, 187, :_reduce_243,
+  3, 187, :_reduce_244,
+  3, 187, :_reduce_245,
+  2, 187, :_reduce_246,
+  2, 187, :_reduce_247,
+  3, 187, :_reduce_248,
+  3, 187, :_reduce_249,
+  3, 187, :_reduce_250,
+  3, 187, :_reduce_251,
+  3, 187, :_reduce_252,
+  6, 187, :_reduce_253,
+  4, 187, :_reduce_254,
+  6, 187, :_reduce_255,
+  4, 187, :_reduce_256,
+  6, 187, :_reduce_257,
+  1, 187, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  3, 233, :_reduce_263,
+  3, 233, :_reduce_264,
+  1, 237, :_reduce_265,
+  1, 238, :_reduce_none,
+  2, 238, :_reduce_267,
+  4, 238, :_reduce_268,
+  2, 238, :_reduce_269,
+  1, 231, :_reduce_none,
+  3, 231, :_reduce_271,
+  3, 242, :_reduce_272,
+  5, 242, :_reduce_273,
+  3, 242, :_reduce_274,
+  1, 244, :_reduce_none,
+  1, 244, :_reduce_none,
+  1, 182, :_reduce_none,
+  1, 182, :_reduce_none,
+  2, 182, :_reduce_279,
+  4, 182, :_reduce_280,
+  2, 182, :_reduce_281,
+  1, 215, :_reduce_282,
+  2, 215, :_reduce_283,
+  2, 215, :_reduce_284,
+  4, 215, :_reduce_285,
+  1, 215, :_reduce_286,
+  0, 247, :_reduce_287,
+  2, 208, :_reduce_288,
+  2, 246, :_reduce_289,
+  2, 245, :_reduce_290,
+  1, 245, :_reduce_none,
+  1, 239, :_reduce_292,
+  2, 239, :_reduce_293,
+  3, 239, :_reduce_294,
+  4, 239, :_reduce_295,
+  1, 176, :_reduce_296,
+  1, 176, :_reduce_297,
+  3, 175, :_reduce_298,
+  4, 175, :_reduce_299,
+  2, 175, :_reduce_300,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_311,
+  0, 280, :_reduce_312,
+  4, 235, :_reduce_313,
+  0, 281, :_reduce_314,
+  3, 235, :_reduce_315,
+  0, 282, :_reduce_316,
+  4, 235, :_reduce_317,
+  3, 235, :_reduce_318,
+  3, 235, :_reduce_319,
+  2, 235, :_reduce_320,
+  3, 235, :_reduce_321,
+  0, 283, :_reduce_322,
+  4, 235, :_reduce_323,
+  1, 235, :_reduce_324,
+  4, 235, :_reduce_325,
+  3, 235, :_reduce_326,
+  1, 235, :_reduce_327,
+  5, 235, :_reduce_328,
+  4, 235, :_reduce_329,
+  3, 235, :_reduce_330,
+  2, 235, :_reduce_331,
+  1, 235, :_reduce_none,
+  2, 235, :_reduce_333,
+  1, 235, :_reduce_334,
+  6, 235, :_reduce_335,
+  6, 235, :_reduce_336,
+  4, 235, :_reduce_337,
+  4, 235, :_reduce_338,
+  5, 235, :_reduce_339,
+  4, 235, :_reduce_340,
+  5, 235, :_reduce_341,
+  6, 235, :_reduce_342,
+  0, 284, :_reduce_343,
+  6, 235, :_reduce_344,
+  0, 285, :_reduce_345,
+  0, 286, :_reduce_346,
+  8, 235, :_reduce_347,
+  0, 287, :_reduce_348,
+  5, 235, :_reduce_349,
+  4, 235, :_reduce_350,
+  4, 235, :_reduce_351,
+  1, 235, :_reduce_352,
+  1, 235, :_reduce_353,
+  1, 235, :_reduce_354,
+  1, 235, :_reduce_355,
+  1, 181, :_reduce_356,
+  1, 257, :_reduce_none,
+  1, 263, :_reduce_none,
+  1, 266, :_reduce_none,
+  1, 268, :_reduce_none,
+  1, 269, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 273, :_reduce_none,
+  1, 275, :_reduce_364,
+  1, 278, :_reduce_365,
+  1, 194, :_reduce_366,
+  1, 288, :_reduce_none,
+  1, 289, :_reduce_none,
+  1, 290, :_reduce_none,
+  1, 291, :_reduce_none,
+  1, 292, :_reduce_none,
+  1, 162, :_reduce_none,
+  1, 293, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 264, :_reduce_none,
+  1, 264, :_reduce_none,
+  2, 264, :_reduce_none,
+  1, 200, :_reduce_none,
+  1, 200, :_reduce_none,
+  1, 265, :_reduce_none,
+  5, 265, :_reduce_382,
+  1, 267, :_reduce_none,
+  2, 267, :_reduce_384,
+  1, 274, :_reduce_none,
+  1, 274, :_reduce_386,
+  1, 294, :_reduce_387,
+  3, 294, :_reduce_388,
+  1, 297, :_reduce_389,
+  3, 297, :_reduce_390,
+  1, 296, :_reduce_391,
+  3, 296, :_reduce_392,
+  5, 296, :_reduce_393,
+  1, 296, :_reduce_394,
+  3, 296, :_reduce_395,
+  2, 298, :_reduce_396,
+  1, 298, :_reduce_397,
+  1, 299, :_reduce_none,
+  1, 299, :_reduce_none,
+  4, 302, :_reduce_400,
+  2, 302, :_reduce_401,
+  2, 302, :_reduce_402,
+  1, 302, :_reduce_403,
+  2, 306, :_reduce_404,
+  1, 306, :_reduce_none,
+  1, 307, :_reduce_406,
+  6, 308, :_reduce_407,
+  8, 308, :_reduce_408,
+  4, 308, :_reduce_409,
+  6, 308, :_reduce_410,
+  4, 308, :_reduce_411,
+  2, 308, :_reduce_412,
+  6, 308, :_reduce_413,
+  2, 308, :_reduce_414,
+  4, 308, :_reduce_415,
+  6, 308, :_reduce_416,
+  2, 308, :_reduce_417,
+  4, 308, :_reduce_418,
+  2, 308, :_reduce_419,
+  4, 308, :_reduce_420,
+  1, 308, :_reduce_421,
+  1, 312, :_reduce_422,
+  1, 312, :_reduce_423,
+  3, 313, :_reduce_424,
+  1, 313, :_reduce_425,
+  4, 313, :_reduce_426,
+  1, 314, :_reduce_none,
+  4, 314, :_reduce_428,
+  1, 315, :_reduce_429,
+  3, 315, :_reduce_430,
+  1, 316, :_reduce_431,
+  1, 316, :_reduce_none,
+  0, 320, :_reduce_433,
+  0, 321, :_reduce_434,
+  5, 262, :_reduce_435,
+  4, 318, :_reduce_436,
+  1, 318, :_reduce_437,
+  3, 319, :_reduce_438,
+  3, 319, :_reduce_439,
+  3, 323, :_reduce_440,
+  2, 205, :_reduce_441,
+  4, 205, :_reduce_442,
+  5, 205, :_reduce_443,
+  5, 205, :_reduce_444,
+  2, 261, :_reduce_445,
+  4, 261, :_reduce_446,
+  4, 261, :_reduce_447,
+  3, 261, :_reduce_448,
+  3, 261, :_reduce_449,
+  3, 261, :_reduce_450,
+  2, 261, :_reduce_451,
+  1, 261, :_reduce_452,
+  4, 261, :_reduce_453,
+  0, 326, :_reduce_454,
+  4, 260, :_reduce_455,
+  0, 327, :_reduce_456,
+  4, 260, :_reduce_457,
+  0, 328, :_reduce_458,
+  0, 329, :_reduce_459,
+  4, 210, :_reduce_460,
+  0, 331, :_reduce_461,
+  0, 332, :_reduce_462,
+  4, 324, :_reduce_463,
+  1, 330, :_reduce_464,
+  2, 330, :_reduce_465,
+  3, 330, :_reduce_466,
+  4, 330, :_reduce_467,
+  5, 271, :_reduce_468,
+  1, 333, :_reduce_none,
+  1, 333, :_reduce_none,
+  0, 336, :_reduce_471,
+  0, 337, :_reduce_472,
+  7, 272, :_reduce_473,
+  1, 335, :_reduce_none,
+  1, 335, :_reduce_none,
+  1, 334, :_reduce_none,
+  3, 334, :_reduce_477,
+  3, 334, :_reduce_478,
+  1, 338, :_reduce_none,
+  2, 338, :_reduce_480,
+  3, 338, :_reduce_481,
+  1, 338, :_reduce_482,
+  1, 338, :_reduce_483,
+  1, 338, :_reduce_484,
+  1, 188, :_reduce_none,
+  3, 343, :_reduce_486,
+  1, 343, :_reduce_none,
+  3, 345, :_reduce_488,
+  1, 345, :_reduce_none,
+  1, 347, :_reduce_490,
+  1, 348, :_reduce_491,
+  1, 346, :_reduce_none,
+  4, 346, :_reduce_493,
+  4, 346, :_reduce_494,
+  4, 346, :_reduce_495,
+  3, 346, :_reduce_496,
+  4, 346, :_reduce_497,
+  4, 346, :_reduce_498,
+  4, 346, :_reduce_499,
+  3, 346, :_reduce_500,
+  3, 346, :_reduce_501,
+  3, 346, :_reduce_502,
+  2, 346, :_reduce_503,
+  0, 352, :_reduce_504,
+  4, 346, :_reduce_505,
+  2, 346, :_reduce_506,
+  0, 353, :_reduce_507,
+  4, 346, :_reduce_508,
+  1, 339, :_reduce_509,
+  1, 339, :_reduce_510,
+  2, 339, :_reduce_511,
+  3, 339, :_reduce_512,
+  5, 339, :_reduce_513,
+  2, 339, :_reduce_514,
+  4, 339, :_reduce_515,
+  1, 339, :_reduce_none,
+  2, 354, :_reduce_517,
+  3, 354, :_reduce_518,
+  1, 341, :_reduce_519,
+  3, 341, :_reduce_520,
+  5, 340, :_reduce_521,
+  2, 357, :_reduce_522,
+  1, 357, :_reduce_523,
+  1, 356, :_reduce_none,
+  3, 356, :_reduce_525,
+  1, 355, :_reduce_526,
+  3, 342, :_reduce_527,
+  1, 342, :_reduce_528,
+  2, 342, :_reduce_529,
+  1, 342, :_reduce_530,
+  1, 358, :_reduce_none,
+  3, 358, :_reduce_532,
+  2, 360, :_reduce_533,
+  1, 360, :_reduce_534,
+  1, 361, :_reduce_535,
+  2, 362, :_reduce_536,
+  1, 362, :_reduce_537,
+  2, 364, :_reduce_538,
+  1, 359, :_reduce_none,
+  1, 359, :_reduce_none,
+  1, 349, :_reduce_none,
+  3, 349, :_reduce_542,
+  3, 349, :_reduce_543,
+  2, 349, :_reduce_544,
+  2, 349, :_reduce_545,
+  1, 349, :_reduce_none,
+  1, 349, :_reduce_none,
+  1, 349, :_reduce_none,
+  2, 349, :_reduce_549,
+  2, 349, :_reduce_550,
+  1, 365, :_reduce_none,
+  1, 365, :_reduce_none,
+  1, 365, :_reduce_none,
+  1, 365, :_reduce_none,
+  1, 365, :_reduce_555,
+  1, 365, :_reduce_556,
+  1, 365, :_reduce_557,
+  1, 365, :_reduce_558,
+  1, 365, :_reduce_559,
+  1, 365, :_reduce_none,
+  1, 344, :_reduce_561,
+  2, 366, :_reduce_562,
+  2, 350, :_reduce_563,
+  3, 350, :_reduce_564,
+  1, 350, :_reduce_565,
+  6, 161, :_reduce_566,
+  0, 161, :_reduce_567,
+  1, 367, :_reduce_568,
+  1, 367, :_reduce_none,
+  1, 367, :_reduce_none,
+  2, 368, :_reduce_571,
+  1, 368, :_reduce_none,
+  2, 163, :_reduce_573,
+  1, 163, :_reduce_none,
+  1, 248, :_reduce_575,
+  1, 248, :_reduce_none,
+  1, 249, :_reduce_577,
+  1, 370, :_reduce_578,
+  1, 370, :_reduce_none,
+  2, 370, :_reduce_580,
+  3, 371, :_reduce_581,
+  1, 371, :_reduce_582,
+  3, 250, :_reduce_583,
+  3, 251, :_reduce_584,
+  3, 252, :_reduce_585,
+  3, 252, :_reduce_586,
+  1, 375, :_reduce_587,
+  3, 375, :_reduce_588,
+  1, 376, :_reduce_none,
+  2, 376, :_reduce_590,
+  3, 254, :_reduce_591,
+  3, 254, :_reduce_592,
+  1, 378, :_reduce_593,
+  3, 378, :_reduce_594,
+  3, 253, :_reduce_595,
+  3, 253, :_reduce_596,
+  3, 255, :_reduce_597,
+  3, 255, :_reduce_598,
+  1, 379, :_reduce_599,
+  3, 379, :_reduce_600,
+  1, 380, :_reduce_601,
+  3, 380, :_reduce_602,
+  1, 372, :_reduce_603,
+  2, 372, :_reduce_604,
+  1, 373, :_reduce_605,
+  2, 373, :_reduce_606,
+  1, 374, :_reduce_607,
+  2, 374, :_reduce_608,
+  1, 377, :_reduce_609,
+  0, 382, :_reduce_610,
+  3, 377, :_reduce_611,
+  0, 383, :_reduce_612,
+  4, 377, :_reduce_613,
+  1, 381, :_reduce_614,
+  1, 381, :_reduce_615,
+  1, 381, :_reduce_616,
+  1, 381, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  2, 384, :_reduce_620,
+  1, 384, :_reduce_621,
+  1, 386, :_reduce_none,
+  1, 386, :_reduce_none,
+  1, 386, :_reduce_none,
+  1, 386, :_reduce_none,
+  3, 385, :_reduce_626,
+  1, 369, :_reduce_none,
+  2, 369, :_reduce_628,
+  1, 232, :_reduce_none,
+  1, 232, :_reduce_none,
+  1, 232, :_reduce_none,
+  1, 232, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 223, :_reduce_none,
+  1, 224, :_reduce_638,
+  1, 224, :_reduce_639,
+  1, 224, :_reduce_640,
+  1, 224, :_reduce_641,
+  1, 224, :_reduce_642,
+  1, 224, :_reduce_643,
+  1, 224, :_reduce_644,
+  1, 256, :_reduce_645,
+  1, 256, :_reduce_646,
+  1, 180, :_reduce_647,
+  1, 180, :_reduce_648,
+  1, 185, :_reduce_649,
+  1, 185, :_reduce_650,
+  0, 387, :_reduce_651,
+  4, 276, :_reduce_652,
+  1, 276, :_reduce_653,
+  1, 234, :_reduce_none,
+  1, 234, :_reduce_655,
+  3, 388, :_reduce_656,
+  5, 388, :_reduce_657,
+  3, 388, :_reduce_658,
+  1, 279, :_reduce_none,
+  0, 390, :_reduce_660,
+  3, 279, :_reduce_661,
+  4, 389, :_reduce_662,
+  2, 389, :_reduce_663,
+  2, 389, :_reduce_664,
+  1, 389, :_reduce_none,
+  2, 392, :_reduce_666,
+  0, 392, :_reduce_667,
+  6, 322, :_reduce_668,
+  8, 322, :_reduce_669,
+  4, 322, :_reduce_670,
+  6, 322, :_reduce_671,
+  4, 322, :_reduce_672,
+  6, 322, :_reduce_673,
+  2, 322, :_reduce_674,
+  4, 322, :_reduce_675,
+  6, 322, :_reduce_676,
+  2, 322, :_reduce_677,
+  4, 322, :_reduce_678,
+  2, 322, :_reduce_679,
+  4, 322, :_reduce_680,
+  1, 322, :_reduce_681,
+  0, 322, :_reduce_682,
+  1, 243, :_reduce_683,
+  1, 317, :_reduce_684,
+  1, 317, :_reduce_685,
+  1, 317, :_reduce_686,
+  1, 317, :_reduce_687,
+  1, 295, :_reduce_none,
+  1, 295, :_reduce_689,
+  1, 394, :_reduce_none,
+  1, 395, :_reduce_none,
+  3, 395, :_reduce_692,
+  1, 309, :_reduce_693,
+  3, 309, :_reduce_694,
+  1, 396, :_reduce_695,
+  2, 397, :_reduce_696,
+  1, 397, :_reduce_697,
+  2, 398, :_reduce_698,
+  1, 398, :_reduce_699,
+  1, 303, :_reduce_none,
+  3, 303, :_reduce_701,
+  1, 391, :_reduce_none,
+  3, 391, :_reduce_703,
+  1, 363, :_reduce_none,
+  1, 363, :_reduce_none,
+  2, 301, :_reduce_706,
+  2, 300, :_reduce_707,
+  1, 300, :_reduce_708,
+  3, 399, :_reduce_709,
+  3, 400, :_reduce_710,
+  1, 310, :_reduce_711,
+  3, 310, :_reduce_712,
+  1, 393, :_reduce_713,
+  3, 393, :_reduce_714,
+  1, 401, :_reduce_none,
+  1, 401, :_reduce_none,
+  2, 311, :_reduce_717,
+  1, 311, :_reduce_718,
+  1, 402, :_reduce_none,
+  1, 402, :_reduce_none,
+  2, 305, :_reduce_721,
+  1, 305, :_reduce_722,
+  2, 304, :_reduce_723,
+  0, 304, :_reduce_724,
+  1, 196, :_reduce_none,
+  0, 403, :_reduce_726,
+  4, 196, :_reduce_727,
+  1, 259, :_reduce_728,
+  2, 259, :_reduce_none,
+  1, 241, :_reduce_none,
+  3, 241, :_reduce_731,
+  3, 404, :_reduce_732,
+  2, 404, :_reduce_733,
+  1, 404, :_reduce_734,
+  4, 404, :_reduce_735,
+  2, 404, :_reduce_736,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 213, :_reduce_none,
+  1, 207, :_reduce_none,
+  1, 207, :_reduce_none,
+  1, 207, :_reduce_none,
+  1, 207, :_reduce_none,
+  1, 325, :_reduce_none,
+  1, 325, :_reduce_none,
+  1, 325, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 197, :_reduce_none,
+  1, 184, :_reduce_none,
+  1, 184, :_reduce_none,
+  1, 206, :_reduce_none,
+  1, 206, :_reduce_none,
+  0, 152, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 186, :_reduce_none,
+  1, 186, :_reduce_none,
+  2, 218, :_reduce_757,
+  2, 183, :_reduce_758,
+  2, 351, :_reduce_759,
+  0, 240, :_reduce_none,
+  1, 240, :_reduce_none,
+  1, 240, :_reduce_none,
+  1, 277, :_reduce_763,
+  1, 277, :_reduce_none,
+  1, 155, :_reduce_none,
+  2, 155, :_reduce_766,
+  0, 153, :_reduce_767 ]
+
+racc_reduce_n = 768
+
+racc_shift_n = 1272
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLONELY => 142,
+  :tBDOT2 => 143,
+  :tBDOT3 => 144,
+  :tLOWEST => 145,
+  :tEQL => 146 }
+
+racc_nt_base = 147
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLONELY",
+  "tBDOT2",
+  "tBDOT3",
+  "tLOWEST",
+  "tEQL",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@3",
+  "stmts",
+  "stmt_or_begin",
+  "@4",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@5",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "backref",
+  "opt_nl",
+  "arg",
+  "p_expr",
+  "def_name",
+  "@6",
+  "@7",
+  "fname",
+  "defn_head",
+  "k_def",
+  "defs_head",
+  "singleton",
+  "dot_or_colon",
+  "@8",
+  "expr_value_do",
+  "do",
+  "@9",
+  "@10",
+  "command",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@11",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "op",
+  "reswords",
+  "symbol",
+  "@12",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "f_opt_paren_args",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "args_forward",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@13",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "p_case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "f_arglist",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "f_any_kwrest",
+  "f_kwrest",
+  "f_no_kwarg",
+  "block_args_tail",
+  "f_block_kwarg",
+  "opt_f_block_arg",
+  "f_block_arg",
+  "opt_block_args_tail",
+  "excessed_comma",
+  "block_param",
+  "f_arg",
+  "f_block_optarg",
+  "f_rest_arg",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@22",
+  "@23",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@24",
+  "@25",
+  "@26",
+  "@27",
+  "case_args",
+  "@28",
+  "@29",
+  "cases",
+  "p_top_expr",
+  "p_cases",
+  "@30",
+  "@31",
+  "p_top_expr_body",
+  "p_args",
+  "p_find",
+  "p_args_tail",
+  "p_kwargs",
+  "p_as",
+  "p_variable",
+  "p_alt",
+  "p_expr_basic",
+  "p_lparen",
+  "p_lbracket",
+  "p_value",
+  "p_const",
+  "rbrace",
+  "@32",
+  "@33",
+  "p_args_head",
+  "p_arg",
+  "p_args_post",
+  "p_rest",
+  "p_kwarg",
+  "p_any_kwrest",
+  "p_kw",
+  "p_kw_label",
+  "p_kwrest",
+  "kwrest_mark",
+  "p_kwnorest",
+  "p_primitive",
+  "p_var_ref",
+  "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",
+  "@34",
+  "@35",
+  "ssym",
+  "dsym",
+  "sym",
+  "@36",
+  "f_paren_args",
+  "args_tail",
+  "@37",
+  "f_kwarg",
+  "opt_args_tail",
+  "f_optarg",
+  "f_arg_asgn",
+  "f_arg_item",
+  "f_label",
+  "f_kw",
+  "f_block_kw",
+  "f_opt",
+  "f_block_opt",
+  "restarg_mark",
+  "blkarg_mark",
+  "@38",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 1
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+                      (_, line), stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      res = _values[-2]
+                      yyerror "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 16 omitted
+
+# reduce 17 omitted
+
+def _reduce_18(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_19(val, _values, result)
+                      result = val[1]
+                      debug 2
+
+    result
+end
+
+# reduce 20 omitted
+
+def _reduce_21(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_22(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 3
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 35 omitted
+
+def _reduce_36(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_37(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      # unwraps s(:to_ary, rhs)
+                      lhs, _, (_, rhs), _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+
+                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+def _reduce_50(val, _values, result)
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+
+    result
+end
+
+# reduce 51 omitted
+
+# reduce 52 omitted
+
+def _reduce_53(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_55(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_56(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+def _reduce_57(val, _values, result)
+                      # value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+
+    result
+end
+
+def _reduce_58(val, _values, result)
+                      lhs, _, in_kwarg, rhs = val
+
+                      self.env.unextend
+                      self.in_kwarg = in_kwarg
+
+                      rhs = new_in rhs, nil, nil, rhs.line
+                      result = new_case lhs, rhs, rhs.line
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      # TODO? value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      self.env.unextend
+
+                      expr, _, old_kwarg, pat = val
+
+                      expr = value_expr expr
+
+                      self.in_kwarg = old_kwarg
+                      pat_in = new_in pat, nil, nil, expr.line
+                      result = new_case expr, pat_in, expr.line
+
+    result
+end
+
+# reduce 61 omitted
+
+def _reduce_62(val, _values, result)
+                      # TODO: numparam_name(p, fname);
+
+                      (id, line), = val
+                      old_in_def = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      result = [id.to_sym, line, old_in_def]
+
+    result
+end
+
+def _reduce_63(val, _values, result)
+                      result = val
+
+    result
+end
+
+def _reduce_64(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+                      self.in_argdef = true
+
+    result
+end
+
+def _reduce_65(val, _values, result)
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+                      self.in_single += 1 # TODO: remove?
+
+                      # self.in_def = true # local_push
+                      # self.env.extend
+                      # lexer.cmdarg.push false
+                      # lexer.cond.push false
+
+                      result = val
+
+    result
+end
+
+def _reduce_66(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 70 omitted
+
+# reduce 71 omitted
+
+# reduce 72 omitted
+
+def _reduce_73(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_74(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_75(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_76(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_77(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_79(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_80(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_81(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_82(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_83(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 88 omitted
+
+def _reduce_89(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 90 omitted
+
+def _reduce_91(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_92(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_93(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_94(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_95(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      (_, l), = val
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 102 omitted
+
+def _reduce_103(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_106(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_107(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 4
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 5
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_118(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 6
+
+    result
+end
+
+def _reduce_119(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_120(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_122(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_123(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 7
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_124(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 8
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_125(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_126(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 127 omitted
+
+def _reduce_128(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_129(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_130(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 131 omitted
+
+# reduce 132 omitted
+
+# reduce 133 omitted
+
+def _reduce_134(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 135 omitted
+
+def _reduce_136(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 137 omitted
+
+def _reduce_138(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_139(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_140(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+# reduce 203 omitted
+
+# reduce 204 omitted
+
+# reduce 205 omitted
+
+# reduce 206 omitted
+
+# reduce 207 omitted
+
+# reduce 208 omitted
+
+# reduce 209 omitted
+
+# reduce 210 omitted
+
+# reduce 211 omitted
+
+def _reduce_212(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_213(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_214(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_215(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_216(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot2, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot3, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      _, v2, = val
+                      v1 = nil
+
+                      result = s(:dot2, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      _, v2 = val
+                      v1 = nil
+
+                      result = s(:dot3, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_227(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_228(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_229(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      _, num, _, arg = val
+                      lit = wrap :lit, num
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 240 omitted
+
+def _reduce_241(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_242(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_243(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_244(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_245(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_246(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_247(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_249(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_250(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_251(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_252(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_253(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+def _reduce_254(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_255(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_256(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_257(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+# reduce 258 omitted
+
+# reduce 259 omitted
+
+# reduce 260 omitted
+
+# reduce 261 omitted
+
+# reduce 262 omitted
+
+def _reduce_263(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_264(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_265(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 266 omitted
+
+def _reduce_267(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 270 omitted
+
+def _reduce_271(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_272(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+def _reduce_273(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+def _reduce_274(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+# reduce 275 omitted
+
+# reduce 276 omitted
+
+# reduce 277 omitted
+
+# reduce 278 omitted
+
+def _reduce_279(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_280(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_281(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_282(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_283(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_284(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_285(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_286(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_287(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_288(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_289(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_290(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 291 omitted
+
+def _reduce_292(val, _values, result)
+                      arg, = val
+                      lineno = arg.line
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_293(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      args, _, (_, line), id = val
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_296(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_297(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 301 omitted
+
+# reduce 302 omitted
+
+# reduce 303 omitted
+
+# reduce 304 omitted
+
+# reduce 305 omitted
+
+# reduce 306 omitted
+
+# reduce 307 omitted
+
+# reduce 308 omitted
+
+# reduce 309 omitted
+
+# reduce 310 omitted
+
+def _reduce_311(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_312(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_313(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_314(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_315(val, _values, result)
+                      (_, line), _, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_316(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_317(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_318(val, _values, result)
+                      (_, line), stmt, _ = val
+                      result = stmt || s(:nil).line(line)
+                      result.paren = true
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      (_, line), args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      debug 9
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 332 omitted
+
+def _reduce_333(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_341(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_342(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_343(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_344(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_345(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_346(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_347(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_348(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_349(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_351(val, _values, result)
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_352(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_353(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_354(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_355(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_356(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 357 omitted
+
+# reduce 358 omitted
+
+# reduce 359 omitted
+
+# reduce 360 omitted
+
+# reduce 361 omitted
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+def _reduce_364(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_365(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_366(val, _values, result)
+                      self.in_argdef = true
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 367 omitted
+
+# reduce 368 omitted
+
+# reduce 369 omitted
+
+# reduce 370 omitted
+
+# reduce 371 omitted
+
+# reduce 372 omitted
+
+# reduce 373 omitted
+
+# reduce 374 omitted
+
+# reduce 375 omitted
+
+# reduce 376 omitted
+
+# reduce 377 omitted
+
+# reduce 378 omitted
+
+# reduce 379 omitted
+
+# reduce 380 omitted
+
+# reduce 381 omitted
+
+def _reduce_382(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 383 omitted
+
+def _reduce_384(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 385 omitted
+
+def _reduce_386(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+def _reduce_387(val, _values, result)
+                      (sym, line), = val
+
+                      result = s(:dummy, sym).line line
+
+    result
+end
+
+def _reduce_388(val, _values, result)
+                      _, args, _ = val
+                      result = args
+
+    result
+end
+
+def _reduce_389(val, _values, result)
+                      arg, = val
+                      line = arg.line
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = s(:array, arg).line line
+
+    result
+end
+
+def _reduce_390(val, _values, result)
+                      args, _, arg = val
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = list_append args, arg
+
+    result
+end
+
+def _reduce_391(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      (_, line), = val
+                      result = args([:*]).line line
+
+    result
+end
+
+# reduce 398 omitted
+
+# reduce 399 omitted
+
+def _reduce_400(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_404(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 405 omitted
+
+def _reduce_406(val, _values, result)
+                      result = s(:WTF_COMMA!)
+
+    result
+end
+
+def _reduce_407(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_408(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_409(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      arg, _ = val
+                      result = arg << nil
+
+    result
+end
+
+def _reduce_413(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_414(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_415(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      (_, line), = val
+
+                      result = s(:args).line line
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+
+    result
+end
+
+# reduce 427 omitted
+
+def _reduce_428(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 432 omitted
+
+def _reduce_433(val, _values, result)
+                      self.env.extend :dynamic
+                      result = lexer.lpar_beg
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      (_, line), lpar, args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      self.in_argdef = false
+                      result = args val
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      self.in_argdef = false
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_440(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_441(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_442(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_443(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_451(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_452(val, _values, result)
+                      (_, line), = val
+                      result = s(:zsuper).line line
+
+    result
+end
+
+def _reduce_453(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_454(val, _values, result)
+                      self.env.extend :dynamic
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_456(val, _values, result)
+                      self.env.extend :dynamic
+
+    result
+end
+
+def _reduce_457(val, _values, result)
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_458(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_459(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_460(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_461(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_462(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_463(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_464(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_465(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_466(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_467(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_468(val, _values, result)
+                      (_, line), case_args, _then, body, cases = val
+
+                      result = new_when case_args, body
+                      result.line line
+                      result << cases if cases
+
+    result
+end
+
+# reduce 469 omitted
+
+# reduce 470 omitted
+
+def _reduce_471(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      push_pvtbl
+                      push_pktbl
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      pop_pktbl
+                      pop_pvtbl
+                      old_kwargs = _values[-3]
+                      self.in_kwarg = old_kwargs
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      (_, line), _, pat, _, _, body, cases = val
+
+                      result = new_in pat, body, cases, line
+
+    result
+end
+
+# reduce 474 omitted
+
+# reduce 475 omitted
+
+# reduce 476 omitted
+
+def _reduce_477(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, body, nil).line body.line
+
+    result
+end
+
+def _reduce_478(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, nil, body).line body.line
+
+    result
+end
+
+# reduce 479 omitted
+
+def _reduce_480(val, _values, result)
+                      expr, _ = val
+
+                      tail = new_array_pattern_tail nil, true, nil, nil
+                      result = new_array_pattern nil, expr, tail, expr.line
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      expr, _, args = val
+
+                      result = new_array_pattern nil, expr, args, expr.line
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      find, = val
+
+                      result = new_find_pattern nil, find
+
+    result
+end
+
+def _reduce_483(val, _values, result)
+                      args, = val
+                      result = new_array_pattern nil, nil, args, args.line
+
+    result
+end
+
+def _reduce_484(val, _values, result)
+                      kwargs, = val
+                      result = new_hash_pattern nil, kwargs, kwargs.line
+
+    result
+end
+
+# reduce 485 omitted
+
+def _reduce_486(val, _values, result)
+                      # NODE *n = NEW_LIST($1, &@$);
+                      # n = list_append(p, n, $3);
+                      # $$ = new_hash(p, n, &@$);
+
+                      expr, _, var = val
+
+                      id = var.last
+
+                      self.env[id] = :lvar # HACK: need to extend env
+                      lhs = s(:lasgn, id).line var.line
+
+                      result = new_assign lhs, expr
+
+    result
+end
+
+# reduce 487 omitted
+
+def _reduce_488(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = s(:or, lhs, rhs).line lhs.line
+
+    result
+end
+
+# reduce 489 omitted
+
+def _reduce_490(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_491(val, _values, result)
+ push_pktbl
+    result
+end
+
+# reduce 492 omitted
+
+def _reduce_493(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern(lhs, nil, args, lhs.line)
+
+    result
+end
+
+def _reduce_494(val, _values, result)
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+
+    result
+end
+
+def _reduce_495(val, _values, result)
+                      lhs, _, kwargs, _ = val
+
+                      pop_pktbl
+                      result = new_hash_pattern(lhs, kwargs, lhs.line)
+
+    result
+end
+
+def _reduce_496(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_497(val, _values, result)
+                      const, _, pre_arg, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern const, nil, pre_arg, const.line
+
+    result
+end
+
+def _reduce_498(val, _values, result)
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+
+    result
+end
+
+def _reduce_499(val, _values, result)
+                      const, _, kwargs, _ = val
+
+                      result = new_hash_pattern const, kwargs, const.line
+
+    result
+end
+
+def _reduce_500(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_501(val, _values, result)
+                      _, pat, _ = val
+
+                      result = new_array_pattern nil, nil, pat, pat.line
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      _, find, _ = val
+
+                      result = new_find_pattern nil, find
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      (_, line), _ = val
+
+                      result = s(:array_pat).line line
+
+    result
+end
+
+def _reduce_504(val, _values, result)
+                      push_pktbl
+                      result = self.in_kwarg
+                      self.in_kwarg = false
+
+    result
+end
+
+def _reduce_505(val, _values, result)
+                      _, in_kwarg, kwargs, _ = val
+
+                      pop_pktbl
+                      self.in_kwarg = in_kwarg
+
+                      result = new_hash_pattern(nil, kwargs, kwargs.line)
+
+    result
+end
+
+def _reduce_506(val, _values, result)
+                      (_, line), _ = val
+
+                      tail = new_hash_pattern_tail nil, nil, line
+                      result = new_hash_pattern nil, tail, line
+
+    result
+end
+
+def _reduce_507(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_508(val, _values, result)
+                      _, _, expr, _ = val
+
+                      pop_pktbl
+                      result = expr
+
+    result
+end
+
+def _reduce_509(val, _values, result)
+                      expr, = val
+
+                      ary = s(:array_TAIL, expr).line expr.line
+                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
+
+    result
+end
+
+def _reduce_510(val, _values, result)
+                      head, = val
+
+                      result = new_array_pattern_tail head, true, nil, nil
+
+    result
+end
+
+def _reduce_511(val, _values, result)
+                      head, tail = val
+
+                      both = array_pat_concat head, tail
+
+                      result = new_array_pattern_tail both, nil, nil, nil
+                      result.line head.line
+
+    result
+end
+
+def _reduce_512(val, _values, result)
+                      head, _, (id, _line) = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, nil
+                      result.line head.line
+
+    result
+end
+
+def _reduce_513(val, _values, result)
+                      head, _, (id, _line), _, post = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, post
+                      result.line head.line
+
+    result
+end
+
+def _reduce_514(val, _values, result)
+                      expr, _ = val
+
+                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
+
+    result
+end
+
+def _reduce_515(val, _values, result)
+                      head, _, _, post = val
+
+                      result = new_array_pattern_tail(head, true, nil, post).line head.line
+
+    result
+end
+
+# reduce 516 omitted
+
+def _reduce_517(val, _values, result)
+                      arg, _ = val
+                      result = arg
+
+    result
+end
+
+def _reduce_518(val, _values, result)
+                      head, tail, _ = val
+
+                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
+                      result.line head.line
+
+    result
+end
+
+def _reduce_519(val, _values, result)
+                      (id, line), = val
+
+                      result = new_array_pattern_tail nil, true, id, nil
+                      result.line line
+
+    result
+end
+
+def _reduce_520(val, _values, result)
+                      (id, line), _, rhs = val
+
+                      result = new_array_pattern_tail nil, true, id, rhs
+                      result.line line
+
+    result
+end
+
+def _reduce_521(val, _values, result)
+                      lhs, _, mid, _, rhs = val
+
+                      result = new_find_pattern_tail lhs, mid, rhs
+
+    result
+end
+
+def _reduce_522(val, _values, result)
+                      _, (id, line) = val
+
+                      result = [id.to_sym, line]
+
+    result
+end
+
+def _reduce_523(val, _values, result)
+                      (_id, line), = val
+
+                      result = [nil, line]
+
+    result
+end
+
+# reduce 524 omitted
+
+def _reduce_525(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = array_pat_concat lhs, rhs
+
+    result
+end
+
+def _reduce_526(val, _values, result)
+                      expr, = val
+                      expr = s(:array_TAIL, expr).line expr.line unless
+                        expr.sexp_type == :array_TAIL
+                      result = expr
+
+    result
+end
+
+def _reduce_527(val, _values, result)
+                      kw_arg, _, rest = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
+
+    result
+end
+
+def _reduce_528(val, _values, result)
+                      kwarg, = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_529(val, _values, result)
+                      kwarg, _ = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_530(val, _values, result)
+                      rest, = val
+
+                      result = new_hash_pattern_tail nil, rest, rest.line
+
+    result
+end
+
+# reduce 531 omitted
+
+def _reduce_532(val, _values, result)
+                      kwarg, _, kw = val
+                      kwarg.concat kw.sexp_body
+                      result = kwarg
+
+    result
+end
+
+def _reduce_533(val, _values, result)
+                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
+                      lhs, rhs = val
+
+                      result = s(:PAIR, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      lhs, = val
+
+                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
+
+                      # TODO: if ($1 && !is_local_id(get_id($1))) {
+                      #     yyerror1(&@1, "key must be valid as local variables");
+                      # }
+
+                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
+                      #                     assignable(p, $1, 0, &@$));
+
+                      case lhs.sexp_type
+                      when :lit then
+                        assignable [lhs.value, lhs.line]
+                      else
+                        # TODO or done?
+                        debug 10
+                      end
+
+                      # TODO PAIR -> LIST ?
+                      result = s(:PAIR, lhs, nil).line lhs.line
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = s(:kwrest, :"**#{name}").line line
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      (_, line), = val
+
+                      result = s(:kwrest, :"**").line line
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      (_, line), _ = val
+
+                      # TODO: or s(:norest)? s(:**nil)?
+                      result = s(:kwrest, :"**nil").line line
+
+    result
+end
+
+# reduce 539 omitted
+
+# reduce 540 omitted
+
+# reduce 541 omitted
+
+def _reduce_542(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot2, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot3, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot2, v1, nil).line v1.line
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot3, v1, nil).line v1.line
+
+    result
+end
+
+# reduce 546 omitted
+
+# reduce 547 omitted
+
+# reduce 548 omitted
+
+def _reduce_549(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot2, nil, v1).line v1.line
+
+    result
+end
+
+def _reduce_550(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot3, nil, v1).line v1.line
+
+    result
+end
+
+# reduce 551 omitted
+
+# reduce 552 omitted
+
+# reduce 553 omitted
+
+# reduce 554 omitted
+
+def _reduce_555(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_556(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_557(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_558(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
+                      var, = val
+
+                      result = var
+
+    result
+end
+
+# reduce 560 omitted
+
+def _reduce_561(val, _values, result)
+                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
+                      # TODO: assignable(p, $1, 0, &@$);
+                      result = wrap :lasgn, val[0]
+
+    result
+end
+
+def _reduce_562(val, _values, result)
+                      # TODO: check id against env for lvar or dvar
+                      result = wrap :lvar, val[1]
+
+    result
+end
+
+def _reduce_563(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_564(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      l = lhs.line
+                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      # TODO $$ = gettable(p, $1, &@$);
+                      result = wrap :const, val[0]
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 569 omitted
+
+# reduce 570 omitted
+
+def _reduce_571(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 572 omitted
+
+def _reduce_573(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 574 omitted
+
+def _reduce_575(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 576 omitted
+
+def _reduce_577(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_578(val, _values, result)
+                      debug 12
+
+    result
+end
+
+# reduce 579 omitted
+
+def _reduce_580(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_581(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_582(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_583(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_584(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_585(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_586(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_587(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_588(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 589 omitted
+
+def _reduce_590(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_591(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_595(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_596(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_597(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_598(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_599(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_600(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_601(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_602(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_603(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_604(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_605(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_607(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_608(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_609(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_610(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_611(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_612(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_613(val, _values, result)
+                      (_, line), memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 13
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_614(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_615(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_616(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 617 omitted
+
+# reduce 618 omitted
+
+# reduce 619 omitted
+
+def _reduce_620(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_621(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 622 omitted
+
+# reduce 623 omitted
+
+# reduce 624 omitted
+
+# reduce 625 omitted
+
+def _reduce_626(val, _values, result)
+                      (_, line), result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line line
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 14
+                      end
+
+    result
+end
+
+# reduce 627 omitted
+
+def _reduce_628(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+# reduce 631 omitted
+
+# reduce 632 omitted
+
+# reduce 633 omitted
+
+# reduce 634 omitted
+
+# reduce 635 omitted
+
+# reduce 636 omitted
+
+# reduce 637 omitted
+
+def _reduce_638(val, _values, result)
+ (_, line), = val; result = s(:nil).line line
+    result
+end
+
+def _reduce_639(val, _values, result)
+ (_, line), = val; result = s(:self).line line
+    result
+end
+
+def _reduce_640(val, _values, result)
+ (_, line), = val; result = s(:true).line line
+    result
+end
+
+def _reduce_641(val, _values, result)
+ (_, line), = val; result = s(:false).line line
+    result
+end
+
+def _reduce_642(val, _values, result)
+ (_, line), = val; result = s(:str, self.file).line line
+    result
+end
+
+def _reduce_643(val, _values, result)
+ (_, line), = val; result = s(:lit, line).line line
+    result
+end
+
+def _reduce_644(val, _values, result)
+                      (_, l), = val
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_645(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+
+                      result.line line
+
+    result
+end
+
+def _reduce_646(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_647(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_648(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 15
+
+    result
+end
+
+def _reduce_649(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_650(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_651(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_652(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_653(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 654 omitted
+
+def _reduce_655(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+def _reduce_656(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+def _reduce_657(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+def _reduce_658(val, _values, result)
+                      result = end_args val
+
+    result
+end
+
+# reduce 659 omitted
+
+def _reduce_660(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.in_argdef = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_661(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+def _reduce_662(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_663(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_664(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 665 omitted
+
+def _reduce_666(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_667(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_668(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_669(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_670(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_671(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_672(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_673(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_674(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_675(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_676(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_677(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_678(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_679(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_680(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_681(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_682(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_683(val, _values, result)
+                      (_, line), = val
+                      result = s(:forward_args).line line
+
+    result
+end
+
+def _reduce_684(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_685(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_686(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_687(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 688 omitted
+
+def _reduce_689(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 690 omitted
+
+# reduce 691 omitted
+
+def _reduce_692(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_693(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_694(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_695(val, _values, result)
+                      label, = val
+                      # arg_var(p, formal_argument(p, $1));
+                      # p->cur_arg = get_id($1);
+                      # p->max_numparam = ORDINAL_PARAM;
+                      self.in_argdef = false
+                      result = label
+
+    result
+end
+
+def _reduce_696(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+                      self.in_argdef = true
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_697(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_698(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_699(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 700 omitted
+
+def _reduce_701(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 702 omitted
+
+def _reduce_703(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 704 omitted
+
+# reduce 705 omitted
+
+def _reduce_706(val, _values, result)
+                      (_, line), _ = val
+                      result = [:"**nil", line]
+
+    result
+end
+
+def _reduce_707(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_708(val, _values, result)
+                      (_, line), = val
+                      id = :"**"
+                      self.env[id] = :lvar
+                      result = [id, line]
+
+    result
+end
+
+def _reduce_709(val, _values, result)
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+                      # TODO? p->cur_arg = 0;
+
+    result
+end
+
+def _reduce_710(val, _values, result)
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO? p->cur_arg = 0;
+
+    result
+end
+
+def _reduce_711(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_712(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_713(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_714(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 715 omitted
+
+# reduce 716 omitted
+
+def _reduce_717(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_718(val, _values, result)
+                      (_, line), = val
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, line]
+
+    result
+end
+
+# reduce 719 omitted
+
+# reduce 720 omitted
+
+def _reduce_721(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_722(val, _values, result)
+                      (_, line), = val
+
+                      result = [:&, line]
+
+    result
+end
+
+def _reduce_723(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_724(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 725 omitted
+
+def _reduce_726(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_727(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_728(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 729 omitted
+
+# reduce 730 omitted
+
+def _reduce_731(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_732(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_733(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_734(val, _values, result)
+                      lit = wrap :lit, val[0]
+                      arg = nil
+
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_735(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_736(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 737 omitted
+
+# reduce 738 omitted
+
+# reduce 739 omitted
+
+# reduce 740 omitted
+
+# reduce 741 omitted
+
+# reduce 742 omitted
+
+# reduce 743 omitted
+
+# reduce 744 omitted
+
+# reduce 745 omitted
+
+# reduce 746 omitted
+
+# reduce 747 omitted
+
+# reduce 748 omitted
+
+# reduce 749 omitted
+
+# reduce 750 omitted
+
+# reduce 751 omitted
+
+# reduce 752 omitted
+
+# reduce 753 omitted
+
+# reduce 754 omitted
+
+# reduce 755 omitted
+
+# reduce 756 omitted
+
+def _reduce_757(val, _values, result)
+                      _, close = val # TODO: include lineno in close?
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_758(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_759(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 760 omitted
+
+# reduce 761 omitted
+
+# reduce 762 omitted
+
+def _reduce_763(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 764 omitted
+
+# reduce 765 omitted
+
+def _reduce_766(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_767(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby30Parser
diff -pruN 3.20.0-2/lib/ruby_parser31.rb 3.21.1-1/lib/ruby_parser31.rb
--- 3.20.0-2/lib/ruby_parser31.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser31.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,13625 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby31Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -647,   699,   702,   317,   653,  -121,   317,  -647,  -647,  -647,
+   228,   229,  -647,  -647,  -647,  -115,  -647,  -122,  1178,  -117,
+   653,   653,   228,   229,  -647,   246,  -647,  -647,  -647,   228,
+   229,  -768,   642,   758,   992,   641,  -647,  -647,   234,  -647,
+  -647,  -647,  -647,  -647,   247,   312,  1033,   653,  -129,  -116,
+  -128,   759,   991,  -124,  -126,   653,   876,   968,   240,   228,
+   229,   247,  1051,  -114,   698,   701,  -661,  -647,  -647,  -647,
+  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
+  -647,   653,  -115,  -647,  -647,  -647,  -117,  -647,  -647,   871,
+   319,  -647,  -123,   319,  -647,  -647,  1179,  -647,   967,  -647,
+   247,  -647,   235,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
+  -112,  -647,   247,  -647,  -780,  -753,  -116,  -115,   134,   247,
+  -115,  -117,  -113,   133,  -117,  -121,  -647,  -647,  -647,  -647,
+  -114,  -647,  -121,  -647,   134,   134,  -650,  -115,  -647,   133,
+   133,  -117,  -647,  -650,  -650,  -650,  -647,  -122,  -650,  -650,
+  -650,  -116,  -650,  -120,  -116,  -119,  -129,  -128,  -115,  -117,
+  -650,   134,  -650,  -650,  -650,  -114,   133,  1050,  -114,   134,
+  -124,  -116,  -650,  -650,   133,  -650,  -650,  -650,  -650,  -650,
+  -126,  -125,   240,  -123,   968,  -114,  -125,  -127,  1011,   134,
+   317,  -662,  1011,     3,   133,   134,   683,  -114,  1040,   688,
+   133,   548,   130,  -650,  -650,  -650,  -650,  -650,  -650,  -650,
+  -650,  -650,  -650,  -650,  -650,  -650,  -650,   225,   317,  -650,
+  -650,  -650,  1010,  -650,  -650,  -534,  1010,  -650,   112,   113,
+  -650,  -650,   667,  -650,   244,  -650,   668,  -650,  -780,  -650,
+  -650,  -650,  -650,  -650,  -650,  -650,  -121,  -650,  -127,  -650,
+  -122,  -121,  -753,  -754,   226,   314,   683,   685,   684,  -753,
+  -129,  -122,  -650,  -650,  -650,  -650,  -122,  -650,   683,  -650,
+  -129,  -128,  -324,   683,  -650,  -129,  -128,   319,  -650,  -324,
+  -324,  -324,  -650,   314,  -124,  -324,  -324,  -107,  -324,  -124,
+  -768,  -116,  -118,  -129,  -126,  -125,  -324,  -123,   642,  -126,
+  -125,   644,  -123,   683,   -93,   319,   114,   115,  -324,  -324,
+   630,  -324,  -324,  -324,  -324,  -324,   240,   685,   684,   681,
+   134,   247,   795,   227,    99,   133,  -754,   112,   113,   685,
+   684,   240,   100,   525,   685,   684,   681,   841,   899,  -324,
+  -324,  -324,  -324,  -324,  -324,  -324,  -324,  -324,  -324,  -324,
+  -324,  -324,  -324,   660,  1116,  -324,  -324,  -324,   683,   726,
+  -324,   876,  -127,  -324,   685,   684,  -324,  -127,   962,  -128,
+   244,  -324,  -780,  -324,   230,  -324,  -324,  -324,  -324,  -324,
+  -324,  -324,  1109,  -324,  1116,  -324,   522,  -780,   517,   307,
+   514,   513,   512,   522,   515,   234,   795,   525,  -324,  -324,
+   526,  -118,   233,  -324,   525,   114,   115,   525,  -757,   371,
+  -324,   231,  -120,   963,  -324,  -757,  -757,  -757,  -127,   685,
+   684,  -757,  -757,   522,  -757,   372,   520,  -124,   901,  -129,
+   533,   532,  -757,  -757,   525,   530,   529,   533,   532,  -361,
+  1033,   247,   660,   683,  -757,  -757,  -361,  -757,  -757,  -757,
+  -757,  -757,   453,   425,   234,  -361,  1109,   455,   454,   235,
+   974,   545,   683,   247,   526,   970,   579,   533,   532,   971,
+   546,   526,  -126,   580,   526,  -757,  -757,  -757,  -757,  -757,
+  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,   720,
+  -647,  -757,  -757,  -757,   667,   727,  -757,  -647,  1003,  -757,
+   683,   526,  -757,  -361,   685,   684,   681,  -757,   721,  -757,
+   428,  -757,  -757,  -757,  -757,  -757,  -757,  -757,   235,  -757,
+  -757,  -757,   134,   685,   684,   686,   517,   133,   514,   513,
+   512,   522,   515,  -659,  -757,  -757,  -661,  -116,   134,  -757,
+  -659,   683,   525,   133,  -757,   683,  -757,   431,  -124,  -659,
+  -757,  -757,  -757,  -757,  -125,   434,  -757,  -757,  -757,   932,
+  -757,   685,   684,   691,   520,   933,  1088,  -126,  -757,  -757,
+  -757,  -757,  -757,   530,   529,   533,   532,   916,  -112,   451,
+  -757,  -757,  -660,  -757,  -757,  -757,  -757,  -757,   134,  -660,
+   456,   134,  -650,   133,   234,  -121,   133,  -659,  -660,  -650,
+  -662,   622,   685,   684,   696,   497,   685,   684,   703,   526,
+   620,  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,
+  -757,  -757,  -757,  -757,  -757,  -123,  -657,  -757,  -757,  -757,
+  -656,   964,  -757,  -657,  -668,  -757,  -123,  -656,  -757,  -757,
+   667,  -757,  -113,  -757,  1003,  -757,  -660,  -757,  -757,  -757,
+  -757,  -757,  -757,  -757,  -658,  -757,  -757,  -757,   235,  -122,
+   642,  -658,   517,   644,   514,   513,   512,   522,   515,  -315,
+  -757,  -757,  -757,  -757,  -655,  -757,  -315,  -757,   525,   536,
+  -324,  -655,  -757,   547,   630,  -315,  -757,  -324,  -324,  -324,
+  -125,   549,  -324,  -324,  -324,  -652,  -324,   550,   234,   246,
+   520,   587,  -652,   599,  -324,   632,  -324,  -324,  -324,   530,
+   529,   533,   532,   602,   546,   604,  -324,  -324,   234,  -324,
+  -324,  -324,  -324,  -324,   134,   664,  -119,   -92,   234,   133,
+   234,   720,  -653,  -315,   662,   670,   721,   714,   916,  -653,
+   228,   229,   247,  -128,   672,   526,   712,  -324,  -324,  -324,
+  -324,  -324,  -324,  -324,  -324,  -324,  -324,  -324,  -324,  -324,
+  -324,   615,   235,  -324,  -324,  -324,   616,   965,  -324,   288,
+   289,  -324,   623,  -115,  -324,  -324,   324,  -324,  -117,  -324,
+  -114,  -324,   235,  -324,  -324,  -324,  -324,  -324,  -324,  -324,
+  -124,  -324,   235,  -324,   235,  -126,   517,  -123,   514,   513,
+   512,   522,   515,  -325,   287,   286,  -324,  -324,  -324,  -324,
+  -325,  -324,   525,  -324,  -654,   247,  -324,   642,  -324,  -325,
+   644,  -654,  -324,  -324,  -324,  -324,  -127,   240,   968,  -324,
+  -324,  1182,  -324,   247,   520,   517,  1253,   514,   513,   512,
+  -324,   515,   228,   229,  -325,   533,   532,   533,   532,   993,
+   994,  -325,  -324,  -324,  -324,  -324,  -324,  -324,  -324,  -324,
+  -325,  -324,  -324,   240,   234,   314,  -754,  -325,   627,  -324,
+  -324,  1221,   633,   751,  -754,  1029,  1033,   271,  -324,   526,
+  1219,   271,   755,  -324,  -324,  -324,  -324,  -324,  -324,  -324,
+  -324,  -324,  -324,  -324,  -324,  -324,  -324,  1204,  1205,  -324,
+  -324,  -324,   247,   726,  -324,  1029,  1033,  -324,  -325,   268,
+  -324,   247,   660,   270,   269,  -324,   444,  -324,  -324,  -324,
+  -324,  -324,  -324,  -324,  -324,  -324,  -324,  -324,   235,  -324,
+   665,   666,   517,   234,   514,   513,   512,   522,   515,   234,
+  1245,   674,  -324,  -324,   690,  -324,  1245,  -324,   525,   672,
+   694,   697,  -757,   700,  -324,   672,   707,   708,  -324,  -757,
+  -757,  -757,  -127,  -297,   710,  -757,  -757,   711,  -757,   517,
+   520,   514,   513,   512,   715,   515,  -757,  -757,   247,   530,
+   529,   533,   532,   718,   122,   121,   123,   124,  -757,  -757,
+   719,  -757,  -757,  -757,  -757,  -757,   314,   235,   733,   736,
+   126,   125,   127,   235,   247,   738,   997,   751,  1001,  1000,
+   741,   742,  1002,   112,   113,   526,   755,   744,   368,  -757,
+  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,  -757,
+  -757,  -757,  -757,   746,  -405,  -757,  -757,  -757,   760,   727,
+  -757,   761,   736,  -757,   999,   767,  -757,   773,   774,   271,
+   271,  -757,   271,  -757,   271,  -757,  -757,  -757,  -757,  -757,
+  -757,  -757,   823,  -757,  -757,  -757,   247,   109,    99,   101,
+   102,   103,   105,   829,   271,   247,   100,   110,  -757,  -757,
+   247,  -757,   451,  -757,    93,   247,  -107,    97,   104,   106,
+  -757,   114,   115,   845,  -757,   247,   636,   856,  -125,     8,
+    89,    90,    91,    12,    82,   736,   268,   247,    83,    84,
+   270,   269,  -750,    87,  -751,    85,    86,    88,    36,    37,
+    80,    81,   137,   138,   139,   140,   141,    92,    34,    33,
+   122,   121,   123,   124,   863,   517,    24,   514,   513,   512,
+   864,   515,    11,    54,    10,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   604,   120,   128,   129,   867,   112,
+   113,   736,    50,    51,    49,  -647,   736,  -650,   736,   902,
+   903,   904,  -647,   751,  -650,  -298,   587,  -750,   587,  -751,
+   928,  -647,   755,  -650,    46,   953,   956,    39,   271,   957,
+    67,    68,   247,   960,    69,   247,    41,   969,   986,  -750,
+    53,  -751,   987,   988,   281,   282,  1055,  1056,    25,  1005,
+  1057,   128,   129,   109,    99,   101,   102,   103,   105,   307,
+   268,  1017,   100,   110,   270,   269,   266,   267,  1019,  -647,
+    93,  -650,   602,    97,   104,   106,   604,   114,   115,   856,
+   247,    47,    48,   343,    89,    90,    91,    12,    82,   314,
+   314,   856,    83,    84,   271,  1033,  -757,    87,   736,    85,
+    86,    88,    36,    37,    80,    81,   137,   138,   139,   140,
+   141,    92,    34,    33,   122,   121,   123,   124,   736,   247,
+    24,   271,   247,   736,   247,  -299,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   247,   120,
+   128,   129,  1064,   112,   113,  -297,    50,    51,    49,  -757,
+   271,  1070,   741,   268,   759,  1073,  -757,   270,   269,   266,
+   267,  -753,  1075,  1077,  1079,  -757,  1079,   247,    46,   815,
+  1093,   347,   247,   247,    67,    68,  1107,  1110,    69,   968,
+    41,  1135,   268,  -757,    53,   247,   270,   269,   266,   267,
+   856,   736,    25,   736,   736,   736,  1153,   109,    99,   101,
+   102,   103,   105,   247,  1155,  -300,   100,   110,   137,   138,
+   139,   140,   141,  -757,    93,  1168,  1169,    97,   104,   106,
+  1170,   114,   115,  1171,  1172,    47,    48,   343,    89,    90,
+    91,    12,    82,  1173,   247,   247,    83,    84,   247,   968,
+  1177,    87,   247,    85,    86,    88,    36,    37,    80,    81,
+   263,  1183,   247,  1185,   741,    92,    34,    33,   122,   121,
+   123,   124,  1188,   517,    24,   514,   513,   512,  1192,   515,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,  1194,   120,   128,   129,  1196,   112,   113,   247,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,  -405,   264,   265,  1211,  1212,   281,
+   282,   932,    46,  1222,   262,    39,  1223,  1079,    67,    68,
+  1079,  1079,    69,  1230,    41,   268,  1243,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,  1246,   736,
+   733,   109,    99,   101,   102,   103,   105,  1169,  1261,  1261,
+   100,   110,   741,   285,  1264,  1266,  1268,  1270,    93,  1270,
+   247,    97,   104,   106,  1079,   114,   115,  1261,  -754,    47,
+    48,   343,    89,    90,    91,    12,    82,  -753,  1287,  1270,
+    83,    84,  1270,  1270,  1270,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   137,   138,   139,   140,   141,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   716,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
+   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,  -269,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   716,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   929,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
+   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   961,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
+   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,   347,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,  1215,    24,   514,   513,   512,   nil,   515,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,   347,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,  1215,    24,   514,
+   513,   512,   nil,   515,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
+   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   247,   285,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
+   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,     8,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,    11,    54,    10,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
+   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
+   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
+   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
+   nil,  -781,  -781,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,   nil,  -781,  -781,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,  -781,
+  -781,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,  -781,  -781,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   517,    24,   514,   513,   512,
+   nil,   515,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,  -781,  -781,  -781,  -781,
+   288,   289,   nil,   751,  -781,  -781,   nil,   nil,   nil,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   517,
+    24,   514,   513,   512,   nil,   515,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+  -781,  -781,  -781,  -781,   288,   289,   nil,   751,  -781,  -781,
+   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   517,    24,   514,   513,   512,   nil,   515,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,  -781,  -781,  -781,  -781,   288,   289,
+   nil,   751,  -781,  -781,   nil,   nil,   nil,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,  -781,  -781,
+  -781,  -781,   288,   289,   nil,   nil,  -781,  -781,   nil,   nil,
+   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,  -781,  -781,  -781,  -781,   288,   289,   nil,   nil,
+  -781,  -781,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,  -781,  -781,  -781,  -781,
+   288,   289,   nil,   nil,  -781,  -781,   nil,   nil,   nil,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   nil,   nil,   279,   280,
+   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   nil,   279,   280,   nil,   nil,   nil,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   nil,   nil,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
+   nil,    11,    54,    10,    13,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   271,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,
+   270,   269,   266,   267,   nil,   nil,   nil,    25,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   281,   282,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   268,
+   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -459,   114,
+   115,   nil,   nil,    47,    48,  -459,  -459,  -459,   nil,   nil,
+  -459,  -459,  -459,   517,  -459,   514,   513,   512,   522,   515,
+   nil,   nil,  -459,  -459,  -459,  -459,   nil,   nil,   nil,   525,
+   nil,   nil,   nil,   nil,  -459,  -459,   nil,  -459,  -459,  -459,
+  -459,  -459,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   520,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   533,   532,   nil,  -459,  -459,  -459,  -459,  -459,
+  -459,  -459,  -459,  -459,  -459,  -459,  -459,  -459,  -459,   nil,
+   nil,  -459,  -459,  -459,   nil,   nil,  -459,   nil,   314,  -459,
+   nil,   nil,  -459,  -459,   nil,  -459,   526,  -459,   nil,  -459,
+   nil,  -459,  -459,  -459,  -459,  -459,  -459,  -459,   nil,  -459,
+  -459,  -459,   517,   nil,   514,   513,   512,   522,   515,   nil,
+   nil,   nil,   nil,   nil,  -459,  -459,   nil,  -459,   525,  -459,
+  -332,   nil,   nil,   nil,   nil,   nil,  -459,  -332,  -332,  -332,
+  -459,   nil,  -332,  -332,  -332,   nil,  -332,   nil,   nil,   nil,
+   520,   nil,   nil,   nil,  -332,   nil,  -332,  -332,   nil,   nil,
+   nil,   533,   532,   nil,   nil,   nil,  -332,  -332,   nil,  -332,
+  -332,  -332,  -332,  -332,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   526,   nil,  -332,  -332,  -332,
+  -332,  -332,  -332,  -332,  -332,  -332,  -332,  -332,  -332,  -332,
+  -332,   nil,   nil,  -332,  -332,  -332,   nil,   nil,  -332,   nil,
+   324,  -332,   nil,   nil,  -332,  -332,   nil,  -332,   nil,  -332,
+   nil,  -332,   nil,  -332,  -332,  -332,  -332,  -332,  -332,  -332,
+   nil,  -332,   nil,  -332,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  -332,  -332,   nil,  -332,
+   nil,  -332,    89,    90,    91,   nil,    82,   nil,  -332,   nil,
+    83,    84,  -332,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
+   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -316,
+   114,   115,   nil,   nil,    47,    48,  -316,  -316,  -316,   nil,
+   nil,  -316,  -316,  -316,   517,  -316,   514,   513,   512,   522,
+   515,   nil,   nil,  -316,   nil,  -316,  -316,  -316,   nil,   nil,
+   525,   122,   121,   123,   124,  -316,  -316,   nil,  -316,  -316,
+  -316,  -316,  -316,   nil,   nil,   nil,   nil,   126,   125,   127,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   112,   113,   nil,   533,   532,   368,  -316,  -316,  -316,  -316,
+  -316,  -316,  -316,  -316,  -316,  -316,  -316,  -316,  -316,  -316,
+   nil,   nil,  -316,  -316,  -316,   nil,   nil,  -316,   nil,   nil,
+  -316,   nil,   nil,  -316,  -316,   nil,  -316,   526,  -316,   nil,
+  -316,   nil,  -316,  -316,  -316,  -316,  -316,  -316,  -316,   nil,
+  -316,   nil,  -316,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,  -316,  -316,  -316,  -316,   nil,
+  -316,    93,  -316,   nil,    97,   104,   106,  -316,   114,   115,
+  -780,  -316,    89,    90,    91,    12,    82,  -780,  -780,  -780,
+    83,    84,  -780,  -780,  -780,    87,  -780,    85,    86,    88,
+    36,    37,    80,    81,  -780,  -780,  -780,  -780,   nil,    92,
+    34,    33,   122,   121,   123,   124,  -780,  -780,    24,  -780,
+  -780,  -780,  -780,  -780,    11,    54,   nil,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,  -780,  -780,  -780,
+  -780,  -780,  -780,  -780,  -780,  -780,  -780,  -780,  -780,  -780,
+  -780,   nil,   nil,  -780,  -780,  -780,    46,   nil,  -780,    39,
+   314,  -780,    67,    68,  -780,  -780,    69,  -780,    41,  -780,
+   nil,  -780,    53,  -780,  -780,  -780,  -780,  -780,  -780,  -780,
+    25,  -780,  -780,  -780,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,  -780,  -780,   nil,  -780,
+   nil,  -780,    93,   nil,   nil,    97,   104,   106,  -780,   114,
+   115,   nil,  -780,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   333,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
+    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
+    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   134,   nil,
+   nil,   nil,   nil,   133,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,
+    54,    10,    13,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,    41,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   444,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   461,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   461,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
+    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
+    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   247,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,   589,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   247,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,    12,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,
+    13,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,    41,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   636,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -758,
+   114,   115,   nil,   nil,    47,    48,  -758,  -758,  -758,   nil,
+   nil,  -758,  -758,  -758,   517,  -758,   514,   513,   512,   522,
+   515,   nil,   nil,  -758,  -758,  -758,  -758,  -758,   nil,   nil,
+   525,   nil,   nil,   nil,   nil,  -758,  -758,   nil,  -758,  -758,
+  -758,  -758,  -758,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   533,   532,   nil,  -758,  -758,  -758,  -758,
+  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,
+   nil,   nil,  -758,  -758,  -758,   nil,   nil,  -758,   nil,   nil,
+  -758,   nil,   nil,  -758,  -758,   nil,  -758,   526,  -758,   nil,
+  -758,   nil,  -758,  -758,  -758,  -758,  -758,  -758,  -758,   nil,
+  -758,  -758,  -758,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  -758,  -758,  -758,  -758,   nil,
+  -758,  -759,  -758,   nil,   nil,   nil,   nil,  -758,  -759,  -759,
+  -759,  -758,   nil,  -759,  -759,  -759,   nil,  -759,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  -759,  -759,  -759,  -759,  -759,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -759,  -759,   nil,
+  -759,  -759,  -759,  -759,  -759,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -759,  -759,
+  -759,  -759,  -759,  -759,  -759,  -759,  -759,  -759,  -759,  -759,
+  -759,  -759,   nil,   nil,  -759,  -759,  -759,   nil,   nil,  -759,
+   nil,   nil,  -759,   nil,   nil,  -759,  -759,   nil,  -759,   nil,
+  -759,   nil,  -759,   nil,  -759,  -759,  -759,  -759,  -759,  -759,
+  -759,   nil,  -759,  -759,  -759,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -759,  -759,  -759,
+  -759,   nil,  -759,   nil,  -759,   nil,    89,    90,    91,  -759,
+    82,   nil,   nil,  -759,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,  -780,   114,   115,   nil,   nil,    47,    48,
+  -780,  -780,  -780,   nil,   nil,  -780,  -780,  -780,   nil,  -780,
+   122,   121,   123,   124,   nil,   nil,   nil,  -780,  -780,  -780,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,  -780,
+  -780,   nil,  -780,  -780,  -780,  -780,  -780,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
+   517,   nil,   514,   513,   512,   522,   515,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   525,   nil,   nil,   nil,
+   nil,  -780,   nil,   nil,   nil,   nil,   nil,   nil,  -780,   nil,
+   nil,   nil,   nil,   314,  -780,   nil,   nil,   nil,   520,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   533,
+   532,   nil,   100,   110,   nil,  -780,  -780,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,  -780,
+   nil,    89,    90,    91,  -780,    82,   nil,   nil,   nil,    83,
+    84,  -780,   nil,   526,    87,  -780,    85,    86,    88,   364,
+   365,    80,    81,   511,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   838,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   331,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,    12,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
+    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   444,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   336,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   838,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   879,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,    12,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
+    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   908,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
+   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,    12,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,
+    13,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,    41,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   838,   nil,   331,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   461,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   838,   nil,   331,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,   589,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,  1145,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   331,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   336,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,
+   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   517,   nil,   514,   513,
+   512,   522,   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   356,   nil,   525,   352,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   351,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   520,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   533,   532,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   526,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   511,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
+   nil,   nil,   nil,   nil,   nil,   517,   nil,   514,   513,   512,
+   522,   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   356,
+   nil,   525,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   520,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   533,   532,   nil,   100,   110,   nil,
+   nil,   nil,   370,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   526,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   511,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   nil,   nil,   nil,   517,   nil,   514,   513,   512,   522,
+   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   403,   nil,
+   525,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   533,   532,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   526,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   511,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
+   125,   127,   408,    65,   118,   117,   409,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   517,   nil,   514,   513,   512,   522,   515,
+   nil,   nil,   nil,   nil,   415,   nil,   nil,   410,   nil,   525,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   520,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   533,   532,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   526,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   511,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,
+   127,   408,    65,   118,   117,   409,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   410,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   356,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   618,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+   360,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,
+   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1161,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1200,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1200,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   192,   203,   193,   216,   189,   209,   199,   198,
+   219,   220,   214,   197,   196,   191,   217,   221,   222,   201,
+   190,   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,
+   218,   213,   212,   205,   215,   200,   188,   207,   206,   nil,
+   nil,   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,
+   184,   145,   147,   144,   nil,   146,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   109,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,
+   209,   199,   198,   219,   220,   214,   197,   196,   191,   217,
+   221,   222,   201,   190,   204,   208,   210,   202,   195,   nil,
+   nil,   nil,   211,   218,   213,   212,   205,   215,   200,   188,
+   207,   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,
+   186,   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,
+   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
+   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
+   162,   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,
+   193,   216,   189,   209,   199,   198,   219,   220,   214,   197,
+   196,   191,   217,   221,   222,   201,   190,   204,   208,   210,
+   202,   195,   nil,   nil,   nil,   211,   218,   213,   301,   300,
+   302,   299,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,
+   187,   194,   185,   186,   296,   297,   298,   294,   147,   118,
+   117,   295,   nil,   120,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   nil,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   306,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   174,   192,   203,   193,   216,   189,   209,   199,   198,   219,
+   220,   214,   197,   196,   191,   217,   221,   222,   201,   190,
+   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,
+   213,   212,   205,   215,   200,   188,   207,   206,   nil,   nil,
+   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,   184,
+   145,   147,   441,   440,   146,   nil,   442,   nil,   nil,   nil,
+   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,
+   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
+   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
+   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
+   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,   209,
+   199,   198,   219,   220,   214,   197,   196,   191,   217,   221,
+   222,   201,   190,   204,   208,   210,   202,   195,   nil,   nil,
+   nil,   211,   218,   213,   212,   205,   215,   200,   188,   207,
+   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,   186,
+   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,   193,
+   216,   189,   209,   199,   198,   219,   220,   214,   197,   196,
+   191,   217,   221,   222,   201,   190,   204,   208,   210,   202,
+   195,   nil,   nil,   nil,   211,   218,   213,   212,   205,   215,
+   200,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,   187,
+   194,   185,   186,   182,   183,   184,   145,   147,   nil,   nil,
+   146,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
+   178,   nil,   173,   155,   156,   157,   164,   161,   163,   nil,
+   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
+   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
+   109,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,
+   192,   203,   193,   216,   189,   209,   199,   198,   219,   220,
+   214,   197,   196,   191,   217,   221,   222,   201,   190,   204,
+   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,   213,
+   212,   205,   215,   200,   188,   207,   206,   nil,   nil,   nil,
+   nil,   nil,   187,   194,   185,   186,   182,   183,   184,   145,
+   147,   nil,   nil,   146,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   122,   121,   123,
+   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   174,   126,   125,   127,   815,   nil,   nil,   nil,
+   818,   795,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
+   nil,   368,   525,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,
+   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,
+   109,   796,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   526,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,
+   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,
+   nil,   nil,   nil,   818,   795,   nil,   nil,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   368,   525,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,
+   nil,   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,
+   nil,   nil,   nil,   109,   796,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   526,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
+   125,   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,
+   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,
+   788,   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   790,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   247,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,   803,   804,   122,   121,   123,   124,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,
+   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,
+   787,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,   122,
+   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,   nil,
+   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,   112,   113,
+   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,
+   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
+   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,   nil,
+   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,
+   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,   803,   804,   122,   121,   123,   124,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,   795,
+   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,
+   525,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,
+   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,   787,
+   nil,   790,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,   796,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   526,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,   803,   804,   122,   121,
+   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   126,   125,   127,   815,   nil,   nil,
+   nil,   818,   795,   nil,   nil,   nil,   nil,   112,   113,   nil,
+   nil,   nil,   368,   525,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,   786,
+   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,
+   nil,   109,   796,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   526,    97,   104,   106,   nil,   114,   115,   nil,   nil,   803,
+   804,   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
+   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,
+   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,
+   nil,   nil,   786,   nil,   nil,   787,   nil,  1106,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   816,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,   803,   804,   122,   121,   123,   124,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   126,   125,   127,   815,   nil,   nil,   nil,   818,   nil,   nil,
+   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,
+   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,   803,   804,   122,   121,   123,
+   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   126,   125,   127,   815,   nil,   nil,   nil,
+   818,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
+   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,
+   nil,   787,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,
+   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,
+   nil,   nil,   nil,   818,   795,   nil,   nil,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   368,   525,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,
+   nil,   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,
+   nil,   nil,   nil,   109,   796,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   526,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
+   125,   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,
+   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,
+   788,   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,   803,   804,   122,   121,   123,   124,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,
+   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,
+   787,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,   122,
+   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,   nil,
+   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,   112,   113,
+   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,
+   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
+   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,   nil,
+   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,
+   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,   803,   804,   122,   121,   123,   124,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,   nil,
+   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   122,   121,   123,
+   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,
+   nil,   nil,   788,   126,   125,   127,   786,   nil,   nil,   787,
+   nil,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
+   nil,   368,   nil,   nil,   816,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,   803,   804,   nil,   nil,
+   517,   nil,   514,   513,   512,   522,   515,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   525,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   517,   520,   514,
+   513,   512,   522,   515,   nil,   nil,   nil,   530,   529,   533,
+   532,   nil,   517,   525,   514,   513,   512,   522,   515,   nil,
+   517,   nil,   514,   513,   512,   522,   515,   nil,   525,   nil,
+   nil,   nil,   nil,   nil,   nil,   520,   525,   nil,   nil,   nil,
+   nil,   nil,   nil,   526,   530,   529,   533,   532,   nil,   nil,
+   520,   679,   nil,   511,   nil,   nil,   nil,   nil,   520,   530,
+   529,   533,   532,   nil,   nil,   nil,   nil,   530,   529,   533,
+   532,   517,   nil,   514,   513,   512,   522,   515,   nil,   nil,
+   526,   nil,   nil,   nil,   nil,   nil,   nil,   525,   nil,   nil,
+   511,   nil,   nil,   nil,   517,   526,   514,   513,   512,   522,
+   515,   nil,   nil,   526,   nil,   511,   nil,   nil,   nil,   520,
+   525,   nil,   nil,   511,   nil,   nil,   nil,   nil,   530,   529,
+   533,   532,   517,   nil,   514,   513,   512,   522,   515,   nil,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   nil,   525,   nil,
+   nil,   530,   529,   533,   532,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   526,   nil,   nil,   nil,   nil,   nil,
+   520,   nil,   nil,   nil,   511,   nil,   nil,   nil,   nil,   530,
+   529,   533,   532,   nil,   nil,   nil,   nil,   526,   484,   488,
+   nil,   nil,   485,   nil,   nil,   nil,   nil,   511,   nil,   nil,
+   nil,   177,   178,   nil,   173,   155,   156,   157,   164,   161,
+   163,   nil,   nil,   158,   159,   526,   nil,   nil,   179,   180,
+   165,   166,   nil,   nil,   nil,   511,   nil,   314,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
+   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
+   nil,   181,   nil,   nil,   nil,   nil,   491,   495,   nil,   nil,
+   490,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
+   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
+   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
+   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
+   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
+   nil,   nil,   nil,   nil,   585,   488,   nil,   nil,   586,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
+   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
+   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
+   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
+   nil,   nil,   768,   488,   nil,   nil,   769,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
+   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
+   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
+   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
+   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
+   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
+   770,   495,   nil,   nil,   771,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
+   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
+   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
+   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
+   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   849,   488,
+   nil,   nil,   850,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   177,   178,   174,   173,   155,   156,   157,   164,   161,
+   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
+   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
+   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
+   nil,   181,   nil,   nil,   nil,   nil,   852,   495,   nil,   nil,
+   853,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
+   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
+   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
+   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
+   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
+   nil,   nil,   nil,   nil,   768,   488,   nil,   nil,   769,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
+   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
+   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
+   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
+   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
+   nil,   nil,   770,   495,   nil,   nil,   771,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
+   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
+   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
+   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
+   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
+   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
+   882,   488,   nil,   nil,   883,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
+   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
+   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
+   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
+   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   884,   495,
+   nil,   nil,   885,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   177,   178,   174,   173,   155,   156,   157,   164,   161,
+   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
+   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
+   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
+   nil,   181,   nil,   nil,   nil,   nil,   887,   495,   nil,   nil,
+   888,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
+   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
+   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
+   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
+   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
+   nil,   nil,   nil,   nil,   585,   488,   nil,   nil,   586,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
+   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
+   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
+   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
+   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
+   nil,   nil,   910,   488,   nil,   nil,   911,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,
+   156,   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,
+   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,
+   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,
+   169,   nil,   154,   176,   172,   171,   167,   168,   162,   160,
+   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,
+   913,   495,   nil,   nil,   912,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,   157,
+   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
+   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
+   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
+   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,  1256,   488,
+   nil,   nil,  1257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   177,   178,   174,   173,   155,   156,   157,   164,   161,
+   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,
+   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,
+   172,   171,   167,   168,   162,   160,   152,   175,   153,   nil,
+   nil,   181,   nil,   nil,   nil,   nil,  1258,   495,   nil,   nil,
+  1259,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
+   178,   174,   173,   155,   156,   157,   164,   161,   163,   nil,
+   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
+   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
+   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
+   nil,   nil,   nil,   nil,  1274,   495,   nil,   nil,  1273,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,
+   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
+   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
+   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
+   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174 ]
+
+racc_action_check = [
+   116,   432,   435,    70,   392,   400,   826,   116,   116,   116,
+   541,   541,   116,   116,   116,   849,   116,   401,  1106,   850,
+   393,  1069,   822,   822,   116,    24,   116,   116,   116,   859,
+   859,   787,   386,   527,   797,   386,   116,   116,    30,   116,
+   116,   116,   116,   116,   787,    30,  1276,  1139,   404,   852,
+   665,   527,   797,   882,   883,  1142,  1276,   776,    20,    17,
+    17,    24,   895,  1024,   432,   435,   250,   116,   116,   116,
+   116,   116,   116,   116,   116,   116,   116,   116,   116,   116,
+   116,   880,   849,   116,   116,   116,   850,   116,   116,   655,
+    70,   116,  1042,   826,   116,   116,  1106,   116,   776,   116,
+   541,   116,    30,   116,   116,   116,   116,   116,   116,   116,
+   400,   116,   822,   116,    20,   852,   852,   849,   392,   859,
+   849,   850,   401,   392,   850,   250,   116,   116,   116,   116,
+  1024,   116,  1158,   116,   393,  1069,   119,   849,   116,   393,
+  1069,   850,   116,   119,   119,   119,   116,  1159,   119,   119,
+   119,   852,   119,   404,   852,   665,  1162,  1222,   882,   883,
+   119,  1139,   119,   119,   119,  1024,  1139,   895,  1024,  1142,
+  1256,   852,   119,   119,  1142,   119,   119,   119,   119,   119,
+  1257,  1258,    21,  1278,   975,  1024,   884,   885,   824,   655,
+    32,   251,  1018,     1,   655,   880,   423,  1042,   880,   423,
+   880,   253,     3,   119,   119,   119,   119,   119,   119,   119,
+   119,   119,   119,   119,   119,   119,   119,    13,   361,   119,
+   119,   119,   824,   119,   119,   975,  1018,   119,    49,    49,
+   119,   119,   410,   119,   468,   119,   410,   119,    21,   119,
+   119,   119,   119,   119,   119,   119,  1158,   119,  1259,   119,
+   251,  1158,   884,   885,    15,    32,   606,   423,   423,  1258,
+   253,  1159,   119,   119,   119,   119,  1159,   119,   692,   119,
+  1162,  1222,   490,   990,   119,  1162,  1222,    32,   119,   490,
+   490,   490,   119,   361,  1256,   490,   490,   844,   490,  1256,
+   971,   884,   885,   468,  1257,  1258,   490,  1278,   387,  1257,
+  1258,   387,  1278,  1181,   844,   361,    49,    49,   490,   490,
+   547,   490,   490,   490,   490,   490,   258,   606,   606,   606,
+     5,   971,   982,    16,    96,     5,  1259,   368,   368,   692,
+   692,   259,    96,   982,   990,   990,   990,   606,   692,   490,
+   490,   490,   490,   490,   490,   490,   490,   490,   490,   490,
+   490,   490,   490,   658,   990,   490,   490,   490,   695,   490,
+   490,   658,  1259,   490,  1181,  1181,   490,  1259,   768,   547,
+    22,   490,   258,   490,    18,   490,   490,   490,   490,   490,
+   490,   490,   982,   490,  1181,   490,   738,   259,  1010,    28,
+  1010,  1010,  1010,  1010,  1010,    19,   988,   738,   490,   490,
+   982,   490,    19,   490,  1010,   368,   368,   988,   491,    43,
+   490,    19,    22,   769,   490,   491,   491,   491,   490,   695,
+   695,   491,   491,  1185,   491,    46,  1010,   768,   695,    22,
+   738,   738,   491,   491,  1185,  1010,  1010,  1010,  1010,    55,
+  1146,    54,  1146,   419,   491,   491,    55,   491,   491,   491,
+   491,   491,   144,   103,   249,    55,   988,   144,   144,    19,
+   785,   249,   421,  1010,   738,   785,   293,  1185,  1185,   785,
+   249,  1010,   769,   293,   988,   491,   491,   491,   491,   491,
+   491,   491,   491,   491,   491,   491,   491,   491,   491,   910,
+   294,   491,   491,   491,   817,   491,   491,   294,   817,   491,
+   426,  1185,   491,    55,   419,   419,   419,   491,   911,   491,
+   104,   491,   491,   491,   491,   491,   491,   491,   249,   491,
+   491,   491,   340,   421,   421,   421,  1188,   340,  1188,  1188,
+  1188,  1188,  1188,   353,   491,   491,    44,   491,   397,   491,
+   353,   429,  1188,   397,   770,   437,   491,   105,   910,   353,
+   491,   770,   770,   770,   491,   106,   770,   770,   770,   732,
+   770,   426,   426,   426,  1188,   732,   966,   911,   770,   770,
+   770,   770,   770,  1188,  1188,  1188,  1188,  1061,    44,   142,
+   770,   770,   354,   770,   770,   770,   770,   770,   535,   354,
+   223,   893,   295,   535,   355,    44,   893,   353,   354,   295,
+    45,   355,   429,   429,   429,   236,   437,   437,   437,  1188,
+   355,   770,   770,   770,   770,   770,   770,   770,   770,   770,
+   770,   770,   770,   770,   770,   966,   296,   770,   770,   770,
+   297,   770,   770,   296,   238,   770,  1061,   297,   770,   770,
+   974,   770,    45,   770,   974,   770,   354,   770,   770,   770,
+   770,   770,   770,   770,   298,   770,   770,   770,   355,    45,
+   649,   298,  1192,   649,  1192,  1192,  1192,  1192,  1192,   357,
+   770,   770,   770,   770,   299,   770,   357,   770,  1192,   242,
+   771,   299,   770,   252,   372,   357,   770,   771,   771,   771,
+   770,   254,   771,   771,   771,   300,   771,   255,   373,   261,
+  1192,   313,   300,   328,   771,   373,   771,   771,   771,  1192,
+  1192,  1192,  1192,   329,   373,   332,   771,   771,   402,   771,
+   771,   771,   771,   771,  1046,   402,   372,   346,   412,  1046,
+   467,   484,   301,   357,   402,   412,   485,   467,   717,   301,
+   391,   391,   348,   372,   412,  1192,   467,   771,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   349,   373,   771,   771,   771,   350,   771,   771,    52,
+    52,   771,   356,   484,   771,   771,   359,   771,   485,   771,
+   717,   771,   402,   771,   771,   771,   771,   771,   771,   771,
+   484,   771,   412,   771,   467,   485,  1194,   717,  1194,  1194,
+  1194,  1194,  1194,   623,    52,    52,   771,   771,   771,   771,
+   623,   771,  1194,   771,   302,   360,   912,   862,   771,   623,
+   862,   302,   771,   912,   912,   912,   771,   362,  1111,   912,
+   912,  1111,   912,  1213,  1194,   520,  1213,   520,   520,   520,
+   912,   520,   676,   676,   668,  1194,  1194,   741,   741,   800,
+   800,   668,   912,   912,   853,   912,   912,   912,   912,   912,
+   668,   853,   888,   363,  1160,   367,   853,   623,   369,   888,
+   853,  1160,   376,   520,   888,   866,   866,   557,   888,  1194,
+  1160,   378,   520,   912,   912,   912,   912,   912,   912,   912,
+   912,   912,   912,   912,   912,   912,   912,  1143,  1143,   912,
+   912,   912,   384,   912,   912,  1247,  1247,   912,   668,   557,
+   912,   388,   398,   557,   557,   912,   399,   912,   853,   912,
+   912,   912,   912,   912,   912,   912,   888,   912,  1160,   912,
+   403,   405,  1264,  1199,  1264,  1264,  1264,  1264,  1264,  1244,
+  1199,   414,   912,   912,   425,   912,  1244,   912,  1264,  1199,
+   428,   431,   913,   434,   912,  1244,   457,   459,   912,   913,
+   913,   913,   912,   460,   462,   913,   913,   465,   913,   751,
+  1264,   751,   751,   751,   469,   751,   913,   913,   479,  1264,
+  1264,  1264,  1264,   482,   803,   803,   803,   803,   913,   913,
+   483,   913,   913,   913,   913,   913,   492,  1199,   498,   499,
+   803,   803,   803,  1244,   502,   503,   816,   751,   816,   816,
+   504,   507,   816,   803,   803,  1264,   751,   508,   803,   913,
+   913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
+   913,   913,   913,   509,   519,   913,   913,   913,   531,   913,
+   913,   534,   537,   913,   816,   543,   913,   551,   552,   559,
+   560,   913,   561,   913,   562,   913,   913,   913,   913,   913,
+   913,   913,   582,   913,   913,   913,   590,   803,   803,   803,
+   803,   803,   803,   591,   558,   592,   803,   803,   913,   913,
+   596,   913,   612,   913,   803,   613,   614,   803,   803,   803,
+   913,   803,   803,   617,   913,   619,   624,   628,   913,     2,
+     2,     2,     2,     2,     2,   637,   558,   638,     2,     2,
+   558,   558,   408,     2,   409,     2,     2,     2,     2,     2,
+     2,     2,     9,     9,     9,     9,     9,     2,     2,     2,
+     2,     2,     2,     2,   646,   956,     2,   956,   956,   956,
+   647,   956,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,   650,     2,     2,     2,   652,     2,
+     2,   656,     2,     2,     2,   408,   657,   409,   659,   699,
+   702,   704,   408,   956,   409,   709,   722,   408,   728,   409,
+   730,   408,   956,   409,     2,   748,   753,     2,   565,   754,
+     2,     2,   756,   763,     2,   772,     2,   781,   789,   408,
+     2,   409,   790,   791,   565,   565,   897,   897,     2,   820,
+   897,   897,   897,     2,     2,     2,     2,     2,     2,   825,
+   565,   831,     2,     2,   565,   565,   565,   565,   833,   408,
+     2,   409,   835,     2,     2,     2,   837,     2,     2,   846,
+   848,     2,     2,    39,    39,    39,    39,    39,    39,   851,
+   854,   855,    39,    39,   858,   868,   887,    39,   874,    39,
+    39,    39,    39,    39,    39,    39,   344,   344,   344,   344,
+   344,    39,    39,    39,    39,    39,    39,    39,   875,   881,
+    39,   572,   890,   894,   896,   907,    39,    39,    39,    39,
+    39,    39,    39,    39,    39,    39,    39,    39,   909,    39,
+    39,    39,   917,    39,    39,   936,    39,    39,    39,   887,
+   573,   937,   940,   572,   942,   945,   887,   572,   572,   572,
+   572,   887,   946,   948,   949,   887,   951,   955,    39,   968,
+   970,    39,   976,   977,    39,    39,   981,   984,    39,   989,
+    39,  1015,   573,   887,    39,  1016,   573,   573,   573,   573,
+  1023,  1028,    39,  1034,  1043,  1045,  1052,    39,    39,    39,
+    39,    39,    39,  1053,  1059,  1060,    39,    39,   383,   383,
+   383,   383,   383,   887,    39,  1084,  1085,    39,    39,    39,
+  1090,    39,    39,  1095,  1096,    39,    39,   225,   225,   225,
+   225,   225,   225,  1097,  1098,  1099,   225,   225,  1100,  1104,
+  1105,   225,  1108,   225,   225,   225,   225,   225,   225,   225,
+    26,  1112,  1119,  1121,  1122,   225,   225,   225,   225,   225,
+   225,   225,  1124,   755,   225,   755,   755,   755,  1125,   755,
+   225,   225,   225,   225,   225,   225,   225,   225,   225,   225,
+   225,   225,  1126,   225,   225,   225,  1128,   225,   225,  1129,
+   225,   225,   225,    26,    26,    26,    26,    26,    26,    26,
+    26,    26,    26,    26,  1130,    26,    26,  1151,  1152,    26,
+    26,  1156,   225,  1161,    26,   225,  1164,  1165,   225,   225,
+  1166,  1167,   225,  1178,   225,    26,  1197,    26,   225,    26,
+    26,    26,    26,    26,    26,    26,   225,    26,  1200,  1210,
+  1218,   225,   225,   225,   225,   225,   225,  1228,  1229,  1231,
+   225,   225,  1234,    26,  1237,  1238,  1239,  1240,   225,  1242,
+  1255,   225,   225,   225,  1260,   225,   225,  1262,  1273,   225,
+   225,   237,   237,   237,   237,   237,   237,  1274,  1280,  1281,
+   237,   237,  1282,  1283,  1292,   237,   nil,   237,   237,   237,
+   237,   237,   237,   237,   611,   611,   611,   611,   611,   237,
+   237,   237,   237,   237,   237,   237,   nil,   nil,   237,   nil,
+   nil,   nil,   nil,   472,   237,   237,   237,   237,   237,   237,
+   237,   237,   237,   237,   237,   237,   nil,   237,   237,   237,
+   nil,   237,   237,   nil,   237,   237,   237,   472,   472,   472,
+   472,   472,   472,   472,   472,   472,   472,   472,   nil,   472,
+   472,   nil,   nil,   472,   472,   nil,   237,   nil,   nil,   237,
+   nil,   nil,   237,   237,   nil,   nil,   237,   nil,   237,   472,
+   nil,   472,   237,   472,   472,   472,   472,   472,   472,   472,
+   237,   472,   nil,   nil,   nil,   237,   237,   237,   237,   237,
+   237,   nil,   nil,   nil,   237,   237,   nil,   472,   nil,   472,
+   nil,   nil,   237,   nil,   nil,   237,   237,   237,   nil,   237,
+   237,   nil,   nil,   237,   237,   243,   243,   243,   243,   243,
+   243,   nil,   nil,   nil,   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,   478,   243,   243,
+   243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
+   nil,   243,   243,   243,   nil,   243,   243,   nil,   243,   243,
+   243,   478,   478,   478,   478,   478,   478,   478,   478,   478,
+   478,   478,   nil,   478,   478,   nil,   nil,   478,   478,   nil,
+   243,   nil,   nil,   243,   nil,   nil,   243,   243,   nil,   nil,
+   243,   nil,   243,   478,   nil,   478,   243,   478,   478,   478,
+   478,   478,   478,   478,   243,   478,   nil,   nil,   nil,   243,
+   243,   243,   243,   243,   243,   nil,   nil,   nil,   243,   243,
+   nil,   478,   nil,   nil,   nil,   nil,   243,   nil,   nil,   243,
+   243,   243,   nil,   243,   243,   nil,   nil,   243,   243,   260,
+   260,   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,
+   nil,   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,
+   260,   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,
+   260,   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,
+   nil,   731,   260,   260,   260,   260,   260,   260,   260,   260,
+   260,   260,   260,   260,   nil,   260,   260,   260,   nil,   260,
+   260,   nil,   260,   260,   260,   731,   731,   731,   731,   731,
+   731,   731,   731,   731,   731,   731,   nil,   731,   731,   nil,
+   nil,   731,   731,   nil,   260,   nil,   nil,   260,   nil,   nil,
+   260,   260,   nil,   nil,   260,   nil,   260,   731,   nil,   731,
+   260,   731,   731,   731,   731,   731,   731,   731,   260,   731,
+   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,
+   nil,   nil,   260,   260,   nil,   731,   nil,   nil,   nil,   nil,
+   260,   nil,   nil,   260,   260,   260,   nil,   260,   260,   nil,
+   nil,   260,   260,   347,   347,   347,   347,   347,   347,   nil,
+   nil,   nil,   347,   347,   nil,   nil,   nil,   347,   nil,   347,
+   347,   347,   347,   347,   347,   347,   nil,   nil,   nil,   nil,
+   nil,   347,   347,   347,   347,   347,   347,   347,   nil,   nil,
+   347,   nil,   nil,   nil,   nil,   764,   347,   347,   347,   347,
+   347,   347,   347,   347,   347,   347,   347,   347,   nil,   347,
+   347,   347,   nil,   347,   347,   nil,   347,   347,   347,   764,
+   764,   764,   764,   764,   764,   764,   764,   764,   764,   764,
+   nil,   764,   764,   nil,   nil,   764,   764,   nil,   347,   nil,
+   nil,   347,   nil,   nil,   347,   347,   nil,   nil,   347,   nil,
+   347,   764,   nil,   764,   347,   764,   764,   764,   764,   764,
+   764,   764,   347,   764,   nil,   nil,   nil,   347,   347,   347,
+   347,   347,   347,   nil,   nil,   nil,   347,   347,   nil,   764,
+   nil,   nil,   nil,   nil,   347,   nil,   nil,   347,   347,   347,
+   nil,   347,   347,   nil,   nil,   347,   347,   352,   352,   352,
+   352,   352,   352,   nil,   nil,   nil,   352,   352,   nil,   nil,
+   nil,   352,   nil,   352,   352,   352,   352,   352,   352,   352,
+   nil,   nil,   nil,   nil,   nil,   352,   352,   352,   352,   352,
+   352,   352,   nil,  1153,   352,  1153,  1153,  1153,   nil,  1153,
+   352,   352,   352,   352,   352,   352,   352,   352,   352,   352,
+   352,   352,   nil,   352,   352,   352,   nil,   352,   352,   nil,
+   352,   352,   352,   326,   326,   326,   326,   326,   326,   326,
+   326,   326,   326,   326,   nil,   326,   326,   nil,   nil,   326,
+   326,   nil,   352,   nil,   nil,   352,   nil,   nil,   352,   352,
+   nil,   nil,   352,   nil,   352,   326,   nil,   326,   352,   326,
+   326,   326,   326,   326,   326,   326,   352,   326,   nil,   nil,
+   nil,   352,   352,   352,   352,   352,   352,   nil,   nil,   nil,
+   352,   352,   nil,   326,   nil,   nil,   nil,   nil,   352,   nil,
+   nil,   352,   352,   352,   nil,   352,   352,   nil,   nil,   352,
+   352,   382,   382,   382,   382,   382,   382,   nil,   nil,   nil,
+   382,   382,   nil,   nil,   nil,   382,   nil,   382,   382,   382,
+   382,   382,   382,   382,   nil,   nil,   nil,   nil,   nil,   382,
+   382,   382,   382,   382,   382,   382,   nil,  1253,   382,  1253,
+  1253,  1253,   nil,  1253,   382,   382,   382,   382,   382,   382,
+   382,   382,   382,   382,   382,   382,   nil,   382,   382,   382,
+   nil,   382,   382,   nil,   382,   382,   382,   576,   576,   576,
+   576,   576,   576,   576,   576,   576,   576,   576,   nil,   576,
+   576,   nil,   nil,   576,   576,   nil,   382,   nil,   nil,   382,
+   nil,   nil,   382,   382,   nil,   nil,   382,   nil,   382,   576,
+   nil,   576,   382,   576,   576,   576,   576,   576,   576,   576,
+   382,   576,   nil,   nil,   nil,   382,   382,   382,   382,   382,
+   382,   nil,   nil,   nil,   382,   382,   576,   576,   nil,   nil,
+   nil,   nil,   382,   nil,   nil,   382,   382,   382,   nil,   382,
+   382,   nil,   nil,   382,   382,   395,   395,   395,   395,   395,
+   395,   nil,   nil,   nil,   395,   395,   nil,   nil,   nil,   395,
+   nil,   395,   395,   395,   395,   395,   395,   395,   nil,   nil,
+   nil,   nil,   nil,   395,   395,   395,   395,   395,   395,   395,
+   nil,   nil,   395,   nil,   nil,   nil,   nil,   nil,   395,   395,
+   395,   395,   395,   395,   395,   395,   395,   395,   395,   395,
+   nil,   395,   395,   395,   nil,   395,   395,   nil,   395,   395,
+   395,   635,   635,   635,   635,   635,   635,   635,   635,   635,
+   635,   635,   nil,   635,   635,   nil,   nil,   635,   635,   nil,
+   395,   nil,   nil,   395,   nil,   nil,   395,   395,   nil,   nil,
+   395,   nil,   395,   635,   nil,   635,   395,   635,   635,   635,
+   635,   635,   635,   635,   395,   635,   nil,   nil,   nil,   395,
+   395,   395,   395,   395,   395,   nil,   nil,   nil,   395,   395,
+   nil,   635,   nil,   nil,   nil,   nil,   395,   nil,   nil,   395,
+   395,   395,   nil,   395,   395,   nil,   nil,   395,   395,   396,
+   396,   396,   396,   396,   396,   nil,   nil,   nil,   396,   396,
+   nil,   nil,   nil,   396,   nil,   396,   396,   396,   396,   396,
+   396,   396,   nil,   nil,   nil,   nil,   nil,   396,   396,   396,
+   396,   396,   396,   396,   nil,   nil,   396,   nil,   nil,   nil,
+   nil,   nil,   396,   396,   396,   396,   396,   396,   396,   396,
+   396,   396,   396,   396,   nil,   396,   396,   396,   nil,   396,
+   396,   nil,   396,   396,   396,   915,   915,   915,   915,   915,
+   915,   915,   915,   915,   915,   915,   nil,   915,   915,   nil,
+   nil,   915,   915,   nil,   396,   nil,   nil,   396,   nil,   nil,
+   396,   396,   nil,   nil,   396,   nil,   396,   915,   nil,   915,
+   396,   915,   915,   915,   915,   915,   915,   915,   396,   915,
+   nil,   nil,   nil,   396,   396,   396,   396,   396,   396,   nil,
+   nil,   nil,   396,   396,   nil,   915,   nil,   nil,   nil,   nil,
+   396,   nil,   nil,   396,   396,   396,   nil,   396,   396,   nil,
+   nil,   396,   396,   451,   451,   451,   451,   451,   451,   nil,
+   nil,   nil,   451,   451,   nil,   nil,   nil,   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,   451,   451,   451,   451,
+   451,   451,   451,   451,   451,   451,   451,   451,   nil,   451,
+   451,   451,   nil,   451,   451,   nil,   451,   451,   451,  1065,
+  1065,  1065,  1065,  1065,  1065,  1065,  1065,  1065,  1065,  1065,
+   nil,  1065,  1065,   nil,   nil,  1065,  1065,   nil,   451,   nil,
+   nil,   451,   nil,   nil,   451,   451,   nil,   nil,   451,   nil,
+   451,  1065,   nil,  1065,   451,  1065,  1065,  1065,  1065,  1065,
+  1065,  1065,   451,  1065,   nil,   nil,   nil,   451,   451,   451,
+   451,   451,   451,   nil,   nil,   nil,   451,   451,   nil,  1065,
+   nil,   nil,   nil,   nil,   451,   nil,   nil,   451,   451,   451,
+   nil,   451,   451,   nil,   nil,   451,   451,   651,   651,   651,
+   651,   651,   651,   nil,   nil,   nil,   651,   651,   nil,   nil,
+   nil,   651,   nil,   651,   651,   651,   651,   651,   651,   651,
+   nil,   nil,   nil,   nil,   nil,   651,   651,   651,   651,   651,
+   651,   651,   nil,   nil,   651,   nil,   nil,   nil,   nil,   nil,
+   651,   651,   651,   651,   651,   651,   651,   651,   651,   651,
+   651,   651,   nil,   651,   651,   651,   nil,   651,   651,   nil,
+   651,   651,   651,  1066,  1066,  1066,  1066,  1066,  1066,  1066,
+  1066,  1066,  1066,  1066,   nil,  1066,  1066,   nil,   nil,  1066,
+  1066,   nil,   651,   nil,   nil,   651,   nil,   nil,   651,   651,
+   nil,   nil,   651,   nil,   651,  1066,   nil,  1066,   651,  1066,
+  1066,  1066,  1066,  1066,  1066,  1066,   651,  1066,   nil,   nil,
+   nil,   651,   651,   651,   651,   651,   651,   nil,   nil,   nil,
+   651,   651,   nil,  1066,   nil,   nil,   nil,   nil,   651,   nil,
+   nil,   651,   651,   651,   nil,   651,   651,   nil,   nil,   651,
+   651,   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,  1086,  1086,  1086,
+  1086,  1086,  1086,  1086,  1086,  1086,  1086,  1086,   nil,  1086,
+  1086,   nil,   nil,  1086,  1086,   nil,   654,   nil,   nil,   654,
+   nil,   nil,   654,   654,   nil,   nil,   654,   nil,   654,  1086,
+   nil,  1086,   654,  1086,  1086,  1086,  1086,  1086,  1086,  1086,
+   654,  1086,   nil,   nil,   nil,   654,   654,   654,   654,   654,
+   654,   nil,   nil,   nil,   654,   654,   nil,  1086,   nil,   nil,
+   nil,   nil,   654,   nil,   nil,   654,   654,   654,   nil,   654,
+   654,   nil,   nil,   654,   654,   677,   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,
+   677,   677,   677,   677,   677,   677,   677,   677,   677,   677,
+   nil,   677,   677,   677,   nil,   677,   677,   nil,   677,   677,
+   677,  1087,  1087,  1087,  1087,  1087,  1087,  1087,  1087,  1087,
+  1087,  1087,   nil,  1087,  1087,   nil,   nil,  1087,  1087,   nil,
+   677,   nil,   nil,   677,   nil,   nil,   677,   677,   nil,   nil,
+   677,   nil,   677,  1087,   nil,  1087,   677,  1087,  1087,  1087,
+  1087,  1087,  1087,  1087,   677,  1087,   nil,   nil,   nil,   677,
+   677,   677,   677,   677,   677,   nil,   nil,   nil,   677,   677,
+   nil,  1087,   nil,   nil,   nil,   nil,   677,   nil,   nil,   677,
+   677,   677,   nil,   677,   677,   nil,   nil,   677,   677,   886,
+   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,   886,   886,   886,   886,   886,   886,
+   886,   886,   886,   886,   nil,   886,   886,   886,   nil,   886,
+   886,   nil,   886,   886,   886,  1120,  1120,  1120,  1120,  1120,
+  1120,  1120,  1120,  1120,  1120,  1120,   nil,  1120,  1120,   nil,
+   nil,  1120,  1120,   nil,   886,   nil,   nil,   886,   nil,   nil,
+   886,   886,   nil,   nil,   886,   nil,   886,  1120,   nil,  1120,
+   886,  1120,  1120,  1120,  1120,  1120,  1120,  1120,   886,  1120,
+   nil,   nil,   nil,   886,   886,   886,   886,   886,   886,   nil,
+   nil,   nil,   886,   886,   nil,  1120,   nil,   nil,   nil,   nil,
+   886,   nil,   nil,   886,   886,   886,   nil,   886,   886,   nil,
+   nil,   886,   886,   891,   891,   891,   891,   891,   891,   nil,
+   nil,   nil,   891,   891,   nil,   nil,   nil,   891,   nil,   891,
+   891,   891,   891,   891,   891,   891,   nil,   nil,   nil,   nil,
+   nil,   891,   891,   891,   891,   891,   891,   891,   nil,   nil,
+   891,   nil,   nil,   nil,   nil,   nil,   891,   891,   891,   891,
+   891,   891,   891,   891,   891,   891,   891,   891,   nil,   891,
+   891,   891,   nil,   891,   891,   nil,   891,   891,   891,   374,
+   374,   374,   374,   374,   374,   374,   374,   374,   374,   374,
+   nil,   374,   374,   nil,   nil,   374,   374,   nil,   891,   nil,
+   nil,   891,   nil,   nil,   891,   891,   nil,   nil,   891,   nil,
+   891,   374,   nil,   374,   891,   374,   374,   374,   374,   374,
+   374,   374,   891,   374,   nil,   nil,   nil,   891,   891,   891,
+   891,   891,   891,   nil,   nil,   nil,   891,   891,   nil,   nil,
+   nil,   nil,   nil,   nil,   891,   nil,   nil,   891,   891,   891,
+   nil,   891,   891,   nil,   nil,   891,   891,   898,   898,   898,
+   898,   898,   898,   nil,   nil,   nil,   898,   898,   nil,   nil,
+   nil,   898,   nil,   898,   898,   898,   898,   898,   898,   898,
+   nil,   nil,   nil,   nil,   nil,   898,   898,   898,   898,   898,
+   898,   898,   nil,   nil,   898,   nil,   nil,   nil,   nil,   nil,
+   898,   898,   898,   898,   898,   898,   898,   898,   898,   898,
+   898,   898,   nil,   898,   898,   898,   nil,   898,   898,   nil,
+   898,   898,   898,   375,   375,   375,   375,   375,   375,   375,
+   375,   375,   375,   375,   nil,   375,   375,   nil,   nil,   375,
+   375,   nil,   898,   nil,   nil,   898,   nil,   nil,   898,   898,
+   nil,   nil,   898,   nil,   898,   375,   nil,   375,   898,   375,
+   375,   375,   375,   375,   375,   375,   898,   375,   nil,   nil,
+   nil,   898,   898,   898,   898,   898,   898,   nil,   nil,   nil,
+   898,   898,   nil,   nil,   nil,   nil,   nil,   nil,   898,   nil,
+   nil,   898,   898,   898,   nil,   898,   898,   nil,   nil,   898,
+   898,   934,   934,   934,   934,   934,   934,   nil,   nil,   nil,
+   934,   934,   nil,   nil,   nil,   934,   nil,   934,   934,   934,
+   934,   934,   934,   934,   nil,   nil,   nil,   nil,   nil,   934,
+   934,   934,   934,   934,   934,   934,   nil,   nil,   934,   nil,
+   nil,   nil,   nil,   nil,   934,   934,   934,   934,   934,   934,
+   934,   934,   934,   934,   934,   934,   nil,   934,   934,   934,
+   nil,   934,   934,   nil,   934,   934,   934,   555,   555,   555,
+   555,   555,   555,   555,   555,   555,   555,   555,   nil,   555,
+   555,   nil,   nil,   555,   555,   nil,   934,   nil,   nil,   934,
+   nil,   nil,   934,   934,   nil,   nil,   934,   nil,   934,   555,
+   nil,   555,   934,   555,   555,   555,   555,   555,   555,   555,
+   934,   555,   nil,   nil,   nil,   934,   934,   934,   934,   934,
+   934,   nil,   nil,   nil,   934,   934,   nil,   nil,   nil,   nil,
+   nil,   nil,   934,   nil,   nil,   934,   934,   934,   nil,   934,
+   934,   nil,   nil,   934,   934,  1012,  1012,  1012,  1012,  1012,
+  1012,   nil,   nil,   nil,  1012,  1012,   nil,   nil,   nil,  1012,
+   nil,  1012,  1012,  1012,  1012,  1012,  1012,  1012,   nil,   nil,
+   nil,   nil,   nil,  1012,  1012,  1012,  1012,  1012,  1012,  1012,
+   nil,   nil,  1012,   nil,   nil,   nil,   nil,   nil,  1012,  1012,
+  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,
+   nil,  1012,  1012,  1012,   nil,  1012,  1012,   nil,  1012,  1012,
+  1012,   556,   556,   556,   556,   556,   556,   556,   556,   556,
+   556,   556,   nil,   556,   556,   nil,   nil,   556,   556,   nil,
+  1012,   nil,   nil,  1012,   nil,   nil,  1012,  1012,   nil,   nil,
+  1012,   nil,  1012,   556,   nil,   556,  1012,   556,   556,   556,
+   556,   556,   556,   556,  1012,   556,   nil,   nil,   nil,  1012,
+  1012,  1012,  1012,  1012,  1012,   nil,   nil,   nil,  1012,  1012,
+   nil,   nil,   nil,   nil,   nil,   nil,  1012,   nil,   nil,  1012,
+  1012,  1012,   nil,  1012,  1012,   nil,   nil,  1012,  1012,  1033,
+  1033,  1033,  1033,  1033,  1033,   nil,   nil,   nil,  1033,  1033,
+   nil,   nil,   nil,  1033,   nil,  1033,  1033,  1033,  1033,  1033,
+  1033,  1033,   nil,   nil,   nil,   nil,   nil,  1033,  1033,  1033,
+  1033,  1033,  1033,  1033,   nil,   957,  1033,   957,   957,   957,
+   nil,   957,  1033,  1033,  1033,  1033,  1033,  1033,  1033,  1033,
+  1033,  1033,  1033,  1033,   nil,  1033,  1033,  1033,   nil,  1033,
+  1033,   nil,  1033,  1033,  1033,   566,   566,   566,   566,   566,
+   566,   566,   nil,   957,   566,   566,   nil,   nil,   nil,   nil,
+   nil,   566,   566,   nil,  1033,   nil,   nil,  1033,   nil,   nil,
+  1033,  1033,   nil,   nil,  1033,   nil,  1033,   566,   nil,   566,
+  1033,   566,   566,   566,   566,   566,   566,   566,  1033,   566,
+   nil,   nil,   nil,  1033,  1033,  1033,  1033,  1033,  1033,   nil,
+   nil,   nil,  1033,  1033,   nil,   nil,   nil,   nil,   nil,   nil,
+  1033,   nil,   nil,  1033,  1033,  1033,   nil,  1033,  1033,   nil,
+   nil,  1033,  1033,  1041,  1041,  1041,  1041,  1041,  1041,   nil,
+   nil,   nil,  1041,  1041,   nil,   nil,   nil,  1041,   nil,  1041,
+  1041,  1041,  1041,  1041,  1041,  1041,   nil,   nil,   nil,   nil,
+   nil,  1041,  1041,  1041,  1041,  1041,  1041,  1041,   nil,  1168,
+  1041,  1168,  1168,  1168,   nil,  1168,  1041,  1041,  1041,  1041,
+  1041,  1041,  1041,  1041,  1041,  1041,  1041,  1041,   nil,  1041,
+  1041,  1041,   nil,  1041,  1041,   nil,  1041,  1041,  1041,   567,
+   567,   567,   567,   567,   567,   567,   nil,  1168,   567,   567,
+   nil,   nil,   nil,   nil,   nil,   567,   567,   nil,  1041,   nil,
+   nil,  1041,   nil,   nil,  1041,  1041,   nil,   nil,  1041,   nil,
+  1041,   567,   nil,   567,  1041,   567,   567,   567,   567,   567,
+   567,   567,  1041,   567,   nil,   nil,   nil,  1041,  1041,  1041,
+  1041,  1041,  1041,   nil,   nil,   nil,  1041,  1041,   nil,   nil,
+   nil,   nil,   nil,   nil,  1041,   nil,   nil,  1041,  1041,  1041,
+   nil,  1041,  1041,   nil,   nil,  1041,  1041,  1050,  1050,  1050,
+  1050,  1050,  1050,   nil,   nil,   nil,  1050,  1050,   nil,   nil,
+   nil,  1050,   nil,  1050,  1050,  1050,  1050,  1050,  1050,  1050,
+   nil,   nil,   nil,   nil,   nil,  1050,  1050,  1050,  1050,  1050,
+  1050,  1050,   nil,  1169,  1050,  1169,  1169,  1169,   nil,  1169,
+  1050,  1050,  1050,  1050,  1050,  1050,  1050,  1050,  1050,  1050,
+  1050,  1050,   nil,  1050,  1050,  1050,   nil,  1050,  1050,   nil,
+  1050,  1050,  1050,   568,   568,   568,   568,   568,   568,   568,
+   nil,  1169,   568,   568,   nil,   nil,   nil,   nil,   nil,   568,
+   568,   nil,  1050,   nil,   nil,  1050,   nil,   nil,  1050,  1050,
+   nil,   nil,  1050,   nil,  1050,   568,   nil,   568,  1050,   568,
+   568,   568,   568,   568,   568,   568,  1050,   568,   nil,   nil,
+   nil,  1050,  1050,  1050,  1050,  1050,  1050,   nil,   nil,   nil,
+  1050,  1050,   nil,   nil,   nil,   nil,   nil,   nil,  1050,   nil,
+   nil,  1050,  1050,  1050,   nil,  1050,  1050,   nil,   nil,  1050,
+  1050,  1051,  1051,  1051,  1051,  1051,  1051,   nil,   nil,   nil,
+  1051,  1051,   nil,   nil,   nil,  1051,   nil,  1051,  1051,  1051,
+  1051,  1051,  1051,  1051,   nil,   nil,   nil,   nil,   nil,  1051,
+  1051,  1051,  1051,  1051,  1051,  1051,   nil,   nil,  1051,   nil,
+   nil,   nil,   nil,   nil,  1051,  1051,  1051,  1051,  1051,  1051,
+  1051,  1051,  1051,  1051,  1051,  1051,   nil,  1051,  1051,  1051,
+   nil,  1051,  1051,   nil,  1051,  1051,  1051,   569,   569,   569,
+   569,   569,   569,   569,   nil,   nil,   569,   569,   nil,   nil,
+   nil,   nil,   nil,   569,   569,   nil,  1051,   nil,   nil,  1051,
+   nil,   nil,  1051,  1051,   nil,   nil,  1051,   nil,  1051,   569,
+   nil,   569,  1051,   569,   569,   569,   569,   569,   569,   569,
+  1051,   569,   nil,   nil,   nil,  1051,  1051,  1051,  1051,  1051,
+  1051,   nil,   nil,   nil,  1051,  1051,   nil,   nil,   nil,   nil,
+   nil,   nil,  1051,   nil,   nil,  1051,  1051,  1051,   nil,  1051,
+  1051,   nil,   nil,  1051,  1051,  1067,  1067,  1067,  1067,  1067,
+  1067,   nil,   nil,   nil,  1067,  1067,   nil,   nil,   nil,  1067,
+   nil,  1067,  1067,  1067,  1067,  1067,  1067,  1067,   nil,   nil,
+   nil,   nil,   nil,  1067,  1067,  1067,  1067,  1067,  1067,  1067,
+   nil,   nil,  1067,   nil,   nil,   nil,   nil,   nil,  1067,  1067,
+  1067,  1067,  1067,  1067,  1067,  1067,  1067,  1067,  1067,  1067,
+   nil,  1067,  1067,  1067,   nil,  1067,  1067,   nil,  1067,  1067,
+  1067,   570,   570,   570,   570,   570,   570,   570,   nil,   nil,
+   570,   570,   nil,   nil,   nil,   nil,   nil,   570,   570,   nil,
+  1067,   nil,   nil,  1067,   nil,   nil,  1067,  1067,   nil,   nil,
+  1067,   nil,  1067,   570,   nil,   570,  1067,   570,   570,   570,
+   570,   570,   570,   570,  1067,   570,   nil,   nil,   nil,  1067,
+  1067,  1067,  1067,  1067,  1067,   nil,   nil,   nil,  1067,  1067,
+   nil,   nil,   nil,   nil,   nil,   nil,  1067,   nil,   nil,  1067,
+  1067,  1067,   nil,  1067,  1067,   nil,   nil,  1067,  1067,  1137,
+  1137,  1137,  1137,  1137,  1137,   nil,   nil,   nil,  1137,  1137,
+   nil,   nil,   nil,  1137,   nil,  1137,  1137,  1137,  1137,  1137,
+  1137,  1137,   nil,   nil,   nil,   nil,   nil,  1137,  1137,  1137,
+  1137,  1137,  1137,  1137,   nil,   nil,  1137,   nil,   nil,   nil,
+   nil,   nil,  1137,  1137,  1137,  1137,  1137,  1137,  1137,  1137,
+  1137,  1137,  1137,  1137,   nil,  1137,  1137,  1137,   nil,  1137,
+  1137,   nil,  1137,  1137,  1137,   571,   571,   571,   571,   571,
+   571,   571,   nil,   nil,   571,   571,   nil,   nil,   nil,   nil,
+   nil,   571,   571,   nil,  1137,   nil,   nil,  1137,   nil,   nil,
+  1137,  1137,   nil,   nil,  1137,   nil,  1137,   571,   nil,   571,
+  1137,   571,   571,   571,   571,   571,   571,   571,  1137,   571,
+   nil,   nil,   nil,  1137,  1137,  1137,  1137,  1137,  1137,   nil,
+   nil,   nil,  1137,  1137,   nil,   nil,   nil,   nil,   nil,   nil,
+  1137,   nil,   nil,  1137,  1137,  1137,   nil,  1137,  1137,   nil,
+   nil,  1137,  1137,  1150,  1150,  1150,  1150,  1150,  1150,   nil,
+   nil,   nil,  1150,  1150,   nil,   nil,   nil,  1150,   nil,  1150,
+  1150,  1150,  1150,  1150,  1150,  1150,   nil,   nil,   nil,   nil,
+   nil,  1150,  1150,  1150,  1150,  1150,  1150,  1150,   nil,   nil,
+  1150,   nil,   nil,   nil,   nil,   nil,  1150,  1150,  1150,  1150,
+  1150,  1150,  1150,  1150,  1150,  1150,  1150,  1150,   nil,  1150,
+  1150,  1150,   nil,  1150,  1150,   nil,  1150,  1150,  1150,   574,
+   574,   574,   574,   574,   574,   574,   nil,   nil,   574,   574,
+   nil,   nil,   nil,   nil,   nil,   574,   574,   nil,  1150,   nil,
+   nil,  1150,   nil,   nil,  1150,  1150,   nil,   nil,  1150,   nil,
+  1150,   574,   nil,   574,  1150,   574,   574,   574,   574,   574,
+   574,   574,  1150,   574,   nil,   nil,   nil,  1150,  1150,  1150,
+  1150,  1150,  1150,   nil,   nil,   nil,  1150,  1150,   nil,   nil,
+   nil,   nil,   nil,   nil,  1150,   nil,   nil,  1150,  1150,  1150,
+   nil,  1150,  1150,   nil,   nil,  1150,  1150,  1157,  1157,  1157,
+  1157,  1157,  1157,   nil,   nil,   nil,  1157,  1157,   nil,   nil,
+   nil,  1157,   nil,  1157,  1157,  1157,  1157,  1157,  1157,  1157,
+   nil,   nil,   nil,   nil,   nil,  1157,  1157,  1157,  1157,  1157,
+  1157,  1157,   nil,   nil,  1157,   nil,   nil,   nil,   nil,   nil,
+  1157,  1157,  1157,  1157,  1157,  1157,  1157,  1157,  1157,  1157,
+  1157,  1157,   nil,  1157,  1157,  1157,   nil,  1157,  1157,   nil,
+  1157,  1157,  1157,   575,   575,   575,   575,   575,   575,   575,
+   575,   nil,   575,   575,   nil,   nil,   nil,   nil,   nil,   575,
+   575,   nil,  1157,   nil,   nil,  1157,   nil,   nil,  1157,  1157,
+   nil,   nil,  1157,   nil,  1157,   575,   nil,   575,  1157,   575,
+   575,   575,   575,   575,   575,   575,  1157,   575,   nil,   nil,
+   nil,  1157,  1157,  1157,  1157,  1157,  1157,   nil,   nil,   nil,
+  1157,  1157,   nil,   nil,   nil,   nil,   nil,   nil,  1157,   nil,
+   nil,  1157,  1157,  1157,   nil,  1157,  1157,   nil,   nil,  1157,
+  1157,  1202,  1202,  1202,  1202,  1202,  1202,   nil,   nil,   nil,
+  1202,  1202,   nil,   nil,   nil,  1202,   nil,  1202,  1202,  1202,
+  1202,  1202,  1202,  1202,   nil,   nil,   nil,   nil,   nil,  1202,
+  1202,  1202,  1202,  1202,  1202,  1202,   nil,   nil,  1202,   nil,
+   nil,   nil,   nil,   nil,  1202,  1202,  1202,  1202,  1202,  1202,
+  1202,  1202,  1202,  1202,  1202,  1202,   nil,  1202,  1202,  1202,
+   nil,  1202,  1202,   nil,  1202,  1202,  1202,   577,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   577,   577,   nil,  1202,   nil,   nil,  1202,
+   nil,   nil,  1202,  1202,   nil,   nil,  1202,   nil,  1202,   577,
+   nil,   577,  1202,   577,   577,   577,   577,   nil,   nil,   577,
+  1202,   577,   nil,   nil,   nil,  1202,  1202,  1202,  1202,  1202,
+  1202,   nil,   nil,   nil,  1202,  1202,   nil,   nil,   nil,   nil,
+   nil,   nil,  1202,   nil,   nil,  1202,  1202,  1202,   nil,  1202,
+  1202,   nil,   nil,  1202,  1202,  1248,  1248,  1248,  1248,  1248,
+  1248,   nil,   nil,   nil,  1248,  1248,   nil,   nil,   nil,  1248,
+   nil,  1248,  1248,  1248,  1248,  1248,  1248,  1248,   nil,   nil,
+   nil,   nil,   nil,  1248,  1248,  1248,  1248,  1248,  1248,  1248,
+   nil,   nil,  1248,   nil,   nil,   nil,   nil,   nil,  1248,  1248,
+  1248,  1248,  1248,  1248,  1248,  1248,  1248,  1248,  1248,  1248,
+   nil,  1248,  1248,  1248,   nil,  1248,  1248,   nil,  1248,  1248,
+  1248,   634,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   634,   634,   nil,
+  1248,   nil,   nil,  1248,   nil,   nil,  1248,  1248,   nil,   nil,
+  1248,   nil,  1248,   634,   nil,   634,  1248,   634,   634,   634,
+   634,   nil,   nil,   634,  1248,   634,   nil,   nil,   nil,  1248,
+  1248,  1248,  1248,  1248,  1248,   nil,   nil,   nil,  1248,  1248,
+   nil,   nil,   nil,   nil,   nil,   nil,  1248,   nil,   nil,  1248,
+  1248,  1248,   nil,  1248,  1248,   nil,   nil,  1248,  1248,     8,
+     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
+   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
+     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
+   nil,     8,     8,     8,   563,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   563,   563,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
+     8,   nil,   nil,     8,   nil,     8,   563,   nil,   563,     8,
+   563,   563,   563,   563,   nil,   nil,   nil,     8,   nil,   nil,
+   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
+   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
+   nil,   nil,     8,     8,     8,   nil,     8,     8,   nil,   nil,
+     8,     8,    25,    25,    25,   nil,    25,   nil,   nil,   nil,
+    25,    25,   nil,   nil,   nil,    25,   nil,    25,    25,    25,
+    25,    25,    25,    25,   nil,   nil,   nil,   nil,   nil,    25,
+    25,    25,    25,    25,    25,    25,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,    25,    25,
+    25,    25,    25,    25,    25,    25,   nil,    25,    25,    25,
+   nil,    25,    25,   nil,    25,    25,    25,   564,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   564,   564,   nil,    25,   nil,   nil,    25,
+   nil,   nil,    25,    25,   nil,   nil,    25,   nil,   nil,   564,
+   nil,   564,    25,   564,   564,   564,   564,   nil,   nil,   nil,
+    25,   nil,   nil,   nil,   nil,    25,    25,    25,    25,    25,
+    25,   nil,   nil,   nil,    25,    25,   nil,   nil,   nil,   nil,
+   nil,   nil,    25,   nil,   nil,    25,    25,    25,    33,    25,
+    25,   nil,   nil,    25,    25,    33,    33,    33,   nil,   nil,
+    33,    33,    33,  1266,    33,  1266,  1266,  1266,  1266,  1266,
+   nil,   nil,    33,    33,    33,    33,   nil,   nil,   nil,  1266,
+   nil,   nil,   nil,   nil,    33,    33,   nil,    33,    33,    33,
+    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1266,  1266,   nil,    33,    33,    33,    33,    33,
+    33,    33,    33,    33,    33,    33,    33,    33,    33,   nil,
+   nil,    33,    33,    33,   nil,   nil,    33,   nil,    33,    33,
+   nil,   nil,    33,    33,   nil,    33,  1266,    33,   nil,    33,
+   nil,    33,    33,    33,    33,    33,    33,    33,   nil,    33,
+    33,    33,  1268,   nil,  1268,  1268,  1268,  1268,  1268,   nil,
+   nil,   nil,   nil,   nil,    33,    33,   nil,    33,  1268,    33,
+    34,   nil,   nil,   nil,   nil,   nil,    33,    34,    34,    34,
+    33,   nil,    34,    34,    34,   nil,    34,   nil,   nil,   nil,
+  1268,   nil,   nil,   nil,    34,   nil,    34,    34,   nil,   nil,
+   nil,  1268,  1268,   nil,   nil,   nil,    34,    34,   nil,    34,
+    34,    34,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1268,   nil,    34,    34,    34,
+    34,    34,    34,    34,    34,    34,    34,    34,    34,    34,
+    34,   nil,   nil,    34,    34,    34,   nil,   nil,    34,   nil,
+    34,    34,   nil,   nil,    34,    34,   nil,    34,   nil,    34,
+   nil,    34,   nil,    34,    34,    34,    34,    34,    34,    34,
+   nil,    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,    34,
+   nil,    34,    35,    35,    35,   nil,    35,   nil,    34,   nil,
+    35,    35,    34,   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,    35,    35,    35,    35,
+   nil,    35,    35,   nil,    35,    35,    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,    35,   nil,
+    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,    35,    35,    35,    35,    35,
+    35,   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,    35,    35,    35,    35,   nil,    35,
+    35,   nil,   nil,    35,    35,    36,    36,    36,   nil,    36,
+   nil,   nil,   nil,    36,    36,   nil,   nil,   nil,    36,   nil,
+    36,    36,    36,    36,    36,    36,    36,   nil,   nil,   nil,
+   nil,   nil,    36,    36,    36,    36,    36,    36,    36,   nil,
+   nil,    36,   nil,   nil,   nil,   nil,   nil,   nil,    36,   nil,
+   nil,    36,    36,    36,    36,    36,    36,    36,    36,    36,
+    36,    36,    36,   nil,    36,    36,   nil,    36,    36,    36,
+   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,    36,    36,   nil,   nil,    36,
+   nil,    36,   nil,    36,   nil,    36,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    36,   nil,   nil,   nil,   nil,    36,    36,
+    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,   nil,
+   nil,   nil,   nil,   nil,   nil,    36,   nil,    36,    36,    36,
+    36,   nil,    36,    36,   nil,   nil,    36,    36,    37,    37,
+    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,   nil,
+   nil,    37,   nil,    37,    37,    37,    37,    37,    37,    37,
+   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
+    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,
+   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,    37,
+    37,    37,    37,    37,    37,    37,   nil,    37,    37,   nil,
+    37,    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    37,   nil,   nil,    37,   nil,   nil,    37,    37,
+   nil,   nil,    37,   nil,    37,   nil,    37,   nil,    37,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,   nil,
+   nil,    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,
+    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
+    37,    37,    37,    37,   nil,    37,    37,   nil,   nil,    37,
+    37,    47,    47,    47,   nil,    47,   nil,   nil,   nil,    47,
+    47,   nil,   nil,   nil,    47,   nil,    47,    47,    47,    47,
+    47,    47,    47,   nil,   nil,   nil,   nil,   nil,    47,    47,
+    47,    47,    47,    47,    47,   nil,   nil,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,    47,    47,
+    47,    47,    47,    47,    47,   nil,    47,    47,    47,   nil,
+    47,    47,   nil,    47,    47,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,   nil,
+   nil,    47,    47,   nil,   nil,    47,   nil,   nil,   nil,   nil,
+   nil,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    47,
+   nil,   nil,   nil,   nil,    47,    47,    47,    47,    47,    47,
+   nil,   nil,   nil,    47,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,    47,   nil,   nil,    47,    47,    47,   nil,    47,    47,
+   nil,   nil,    47,    47,    48,    48,    48,   nil,    48,   nil,
+   nil,   nil,    48,    48,   nil,   nil,   nil,    48,   nil,    48,
+    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,   nil,
+   nil,    48,    48,    48,    48,    48,    48,    48,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+    48,    48,    48,    48,    48,    48,    48,    48,   nil,    48,
+    48,    48,   nil,    48,    48,   nil,    48,    48,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,    48,   nil,   nil,    48,    48,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,    48,    48,    48,
+    48,    48,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,
+   nil,    48,    48,   nil,   nil,    48,    48,    50,    50,    50,
+   nil,    50,   nil,   nil,   nil,    50,    50,   nil,   nil,   nil,
+    50,   nil,    50,    50,    50,    50,    50,    50,    50,   nil,
+   nil,   nil,   nil,   nil,    50,    50,    50,    50,    50,    50,
+    50,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,    50,    50,    50,    50,    50,    50,    50,
+    50,   nil,    50,    50,    50,   nil,    50,    50,   nil,    50,
+    50,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,    50,   nil,   nil,    50,    50,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+    50,    50,    50,    50,    50,    50,   nil,   nil,   nil,    50,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+    50,    50,    50,   nil,    50,    50,   nil,   nil,    50,    50,
+    51,    51,    51,   nil,    51,   nil,   nil,   nil,    51,    51,
+   nil,   nil,   nil,    51,   nil,    51,    51,    51,    51,    51,
+    51,    51,   nil,   nil,   nil,   nil,   nil,    51,    51,    51,
+    51,    51,    51,    51,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,    51,    51,    51,    51,
+    51,    51,    51,    51,   nil,    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,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,    51,    51,    51,    51,    51,    51,   nil,
+   nil,   nil,    51,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,    51,    51,    51,   nil,    51,    51,   nil,
+   nil,    51,    51,    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,   nil,
+    53,    53,    53,    53,    53,    53,    53,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,    53,
+    53,    53,    53,    53,    53,    53,    53,   nil,    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,   nil,
+   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,   nil,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,    53,    53,    53,    65,
+    53,    53,   nil,   nil,    53,    53,    65,    65,    65,   nil,
+   nil,    65,    65,    65,  1270,    65,  1270,  1270,  1270,  1270,
+  1270,   nil,   nil,    65,   nil,    65,    65,    65,   nil,   nil,
+  1270,   804,   804,   804,   804,    65,    65,   nil,    65,    65,
+    65,    65,    65,   nil,   nil,   nil,   nil,   804,   804,   804,
+   nil,   nil,  1270,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   804,   804,   nil,  1270,  1270,   804,    65,    65,    65,    65,
+    65,    65,    65,    65,    65,    65,    65,    65,    65,    65,
+   nil,   nil,    65,    65,    65,   nil,   nil,    65,   nil,   nil,
+    65,   nil,   nil,    65,    65,   nil,    65,  1270,    65,   nil,
+    65,   nil,    65,    65,    65,    65,    65,    65,    65,   nil,
+    65,   nil,    65,   nil,   804,   804,   804,   804,   804,   804,
+   nil,   nil,   nil,   804,   804,    65,    65,    65,    65,   nil,
+    65,   804,    65,   nil,   804,   804,   804,    65,   804,   804,
+   486,    65,    67,    67,    67,    67,    67,   486,   486,   486,
+    67,    67,   486,   486,   486,    67,   486,    67,    67,    67,
+    67,    67,    67,    67,   486,   486,   486,   486,   nil,    67,
+    67,    67,    67,    67,    67,    67,   486,   486,    67,   486,
+   486,   486,   486,   486,    67,    67,   nil,    67,    67,    67,
+    67,    67,    67,    67,    67,    67,   nil,    67,    67,    67,
+   nil,    67,    67,   nil,    67,    67,    67,   486,   486,   486,
+   486,   486,   486,   486,   486,   486,   486,   486,   486,   486,
+   486,   nil,   nil,   486,   486,   486,    67,   nil,   486,    67,
+   486,   486,    67,    67,   486,   486,    67,   486,    67,   486,
+   nil,   486,    67,   486,   486,   486,   486,   486,   486,   486,
+    67,   486,   486,   486,   nil,    67,    67,    67,    67,    67,
+    67,   nil,   nil,   nil,    67,    67,   486,   486,   nil,   486,
+   nil,   486,    67,   nil,   nil,    67,    67,    67,   486,    67,
+    67,   nil,   486,    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,    68,
+    68,    68,    68,   nil,    68,    68,   nil,    68,    68,    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,    68,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,    68,    68,
+    68,    68,    68,    68,   nil,   nil,   nil,    68,    68,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,    68,    68,    68,
+    68,   nil,    68,    68,   nil,   nil,    68,    68,    72,    72,
+    72,   nil,    72,   nil,   nil,   nil,    72,    72,   nil,   nil,
+   nil,    72,   nil,    72,    72,    72,    72,    72,    72,    72,
+   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,    72,
+    72,    72,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,
+   nil,    72,   nil,   nil,    72,    72,    72,    72,    72,    72,
+    72,    72,   nil,    72,    72,    72,   nil,    72,    72,   nil,
+    72,    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    72,   nil,   nil,    72,   nil,   nil,    72,    72,
+   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,   nil,
+   nil,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
+    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,    72,    72,    72,   nil,    72,    72,   nil,   nil,    72,
+    72,    73,    73,    73,   nil,    73,   nil,   nil,   nil,    73,
+    73,   nil,   nil,   nil,    73,   nil,    73,    73,    73,    73,
+    73,    73,    73,   nil,   nil,   nil,   nil,   nil,    73,    73,
+    73,    73,    73,    73,    73,   nil,   nil,    73,   nil,   nil,
+   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
+    73,    73,    73,    73,    73,   nil,    73,    73,    73,   nil,
+    73,    73,   nil,    73,    73,    73,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
+   nil,    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    73,
+   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,    73,
+   nil,   nil,   nil,    73,    73,   nil,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,    73,    73,    73,   nil,    73,    73,
+   nil,   nil,    73,    73,    76,    76,    76,   nil,    76,   nil,
+   nil,   nil,    76,    76,   nil,   nil,   nil,    76,   nil,    76,
+    76,    76,    76,    76,    76,    76,   nil,   nil,   nil,   nil,
+   nil,    76,    76,    76,    76,    76,    76,    76,   nil,   nil,
+    76,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,
+    76,    76,    76,    76,    76,    76,    76,    76,   nil,    76,
+    76,    76,   nil,    76,    76,   nil,    76,    76,    76,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,
+   nil,    76,   nil,   nil,    76,    76,   nil,   nil,    76,   nil,
+   nil,   nil,   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    76,   nil,   nil,   nil,   nil,    76,    76,    76,
+    76,    76,    76,   nil,   nil,   nil,    76,    76,    76,   nil,
+   nil,   nil,   nil,    76,    76,   nil,   nil,    76,    76,    76,
+   nil,    76,    76,   nil,   nil,    76,    76,   132,   132,   132,
+   132,   132,   nil,   nil,   nil,   132,   132,   nil,   nil,   nil,
+   132,   nil,   132,   132,   132,   132,   132,   132,   132,   nil,
+   nil,   nil,   nil,   nil,   132,   132,   132,   132,   132,   132,
+   132,   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,   132,
+   132,   132,   132,   132,   132,   132,   132,   132,   132,   132,
+   132,   nil,   132,   132,   132,   nil,   132,   132,   nil,   132,
+   132,   132,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   132,   nil,   nil,   132,   nil,   nil,   132,   132,   nil,
+   nil,   132,   nil,   132,   nil,   nil,   nil,   132,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   132,   nil,   nil,   nil,   nil,
+   132,   132,   132,   132,   132,   132,   nil,   nil,   nil,   132,
+   132,   nil,   nil,   nil,   nil,   nil,   132,   132,   nil,   nil,
+   132,   132,   132,   nil,   132,   132,   nil,   nil,   132,   132,
+   137,   137,   137,   nil,   137,   nil,   nil,   nil,   137,   137,
+   nil,   nil,   nil,   137,   nil,   137,   137,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   nil,   nil,   137,   137,   137,
+   137,   137,   137,   137,   nil,   nil,   137,   nil,   nil,   nil,
+   nil,   nil,   nil,   137,   nil,   nil,   137,   137,   137,   137,
+   137,   137,   137,   137,   nil,   137,   137,   137,   nil,   137,
+   137,   nil,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,   nil,
+   137,   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,
+   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,
+   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,   nil,
+   nil,   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,
+   137,   nil,   nil,   137,   137,   137,   nil,   137,   137,   nil,
+   nil,   137,   137,   138,   138,   138,   nil,   138,   nil,   nil,
+   nil,   138,   138,   nil,   nil,   nil,   138,   nil,   138,   138,
+   138,   138,   138,   138,   138,   nil,   nil,   nil,   nil,   nil,
+   138,   138,   138,   138,   138,   138,   138,   nil,   nil,   138,
+   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,   138,
+   138,   138,   138,   138,   138,   138,   138,   nil,   138,   138,
+   138,   nil,   138,   138,   nil,   138,   138,   138,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,
+   138,   nil,   nil,   138,   138,   nil,   nil,   138,   nil,   nil,
+   nil,   nil,   nil,   138,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   138,   nil,   nil,   nil,   nil,   138,   138,   138,   138,
+   138,   138,   nil,   nil,   nil,   138,   138,   nil,   nil,   nil,
+   nil,   nil,   nil,   138,   nil,   nil,   138,   138,   138,   nil,
+   138,   138,   nil,   nil,   138,   138,   139,   139,   139,   nil,
+   139,   nil,   nil,   nil,   139,   139,   nil,   nil,   nil,   139,
+   nil,   139,   139,   139,   139,   139,   139,   139,   nil,   nil,
+   nil,   nil,   nil,   139,   139,   139,   139,   139,   139,   139,
+   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,   139,
+   nil,   nil,   139,   139,   139,   139,   139,   139,   139,   139,
+   nil,   139,   139,   139,   nil,   139,   139,   nil,   139,   139,
+   139,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   139,   nil,   nil,   139,   nil,   nil,   139,   139,   nil,   nil,
+   139,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   139,   nil,   nil,   nil,   nil,   139,
+   139,   139,   139,   139,   139,   nil,   nil,   nil,   139,   139,
+   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   139,
+   139,   139,   nil,   139,   139,   nil,   nil,   139,   139,   140,
+   140,   140,   nil,   140,   nil,   nil,   nil,   140,   140,   nil,
+   nil,   nil,   140,   nil,   140,   140,   140,   140,   140,   140,
+   140,   nil,   nil,   nil,   nil,   nil,   140,   140,   140,   140,
+   140,   140,   140,   nil,   nil,   140,   nil,   nil,   nil,   nil,
+   nil,   nil,   140,   nil,   nil,   140,   140,   140,   140,   140,
+   140,   140,   140,   nil,   140,   140,   140,   nil,   140,   140,
+   nil,   140,   140,   140,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   140,   nil,   nil,   140,   nil,   nil,   140,
+   140,   nil,   nil,   140,   nil,   nil,   nil,   nil,   nil,   140,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,
+   nil,   nil,   140,   140,   140,   140,   140,   140,   nil,   nil,
+   nil,   140,   140,   nil,   nil,   nil,   nil,   nil,   nil,   140,
+   nil,   nil,   140,   140,   140,   nil,   140,   140,   nil,   nil,
+   140,   140,   141,   141,   141,   141,   141,   nil,   nil,   nil,
+   141,   141,   nil,   nil,   nil,   141,   nil,   141,   141,   141,
+   141,   141,   141,   141,   nil,   nil,   nil,   nil,   nil,   141,
+   141,   141,   141,   141,   141,   141,   nil,   nil,   141,   nil,
+   nil,   nil,   nil,   nil,   141,   141,   nil,   141,   141,   141,
+   141,   141,   141,   141,   141,   141,   nil,   141,   141,   141,
+   nil,   141,   141,   nil,   141,   141,   141,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   141,   nil,   nil,   141,
+   nil,   nil,   141,   141,   nil,   nil,   141,   nil,   141,   nil,
+   nil,   nil,   141,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   141,   nil,   nil,   nil,   nil,   141,   141,   141,   141,   141,
+   141,   nil,   nil,   nil,   141,   141,   nil,   nil,   nil,   nil,
+   nil,   nil,   141,   nil,   nil,   141,   141,   141,   nil,   141,
+   141,   nil,   nil,   141,   141,   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,   nil,   226,   226,   226,   226,   226,   226,   226,   nil,
+   nil,   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,
+   nil,   226,   226,   226,   226,   226,   226,   226,   226,   nil,
+   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,   226,   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,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
+   226,   nil,   226,   226,   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,   nil,   227,   227,   227,   227,   227,
+   227,   227,   nil,   nil,   227,   nil,   nil,   nil,   nil,   nil,
+   nil,   227,   nil,   nil,   227,   227,   227,   227,   227,   227,
+   227,   227,   nil,   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,   227,   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,   nil,   nil,   nil,   227,   nil,
+   nil,   227,   227,   227,   nil,   227,   227,   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,   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,   228,
+   nil,   nil,   nil,   nil,   228,   228,   228,   228,   228,   228,
+   nil,   nil,   nil,   228,   228,   nil,   nil,   nil,   nil,   nil,
+   nil,   228,   nil,   nil,   228,   228,   228,   nil,   228,   228,
+   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,
+   nil,   229,   229,   229,   229,   229,   229,   229,   nil,   nil,
+   229,   nil,   nil,   nil,   nil,   nil,   nil,   229,   nil,   nil,
+   229,   229,   229,   229,   229,   229,   229,   229,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   229,   nil,   nil,   229,   229,   229,
+   nil,   229,   229,   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,   nil,   230,   230,   230,   230,   230,   230,
+   230,   nil,   nil,   230,   nil,   nil,   nil,   nil,   nil,   nil,
+   230,   nil,   nil,   230,   230,   230,   230,   230,   230,   230,
+   230,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   230,   nil,   nil,
+   230,   230,   230,   nil,   230,   230,   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,   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,   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,   231,   nil,   231,   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,   nil,   nil,   nil,
+   231,   nil,   231,   231,   231,   231,   nil,   231,   231,   nil,
+   nil,   231,   231,   244,   244,   244,   nil,   244,   nil,   nil,
+   nil,   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,   244,   nil,   nil,   nil,   nil,   244,   244,   244,   244,
+   244,   244,   nil,   nil,   nil,   244,   244,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   244,   244,   244,   nil,
+   244,   244,   nil,   nil,   244,   244,   245,   245,   245,   nil,
+   245,   nil,   nil,   nil,   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,   245,   nil,   nil,   nil,   nil,   245,
+   245,   245,   245,   245,   245,   nil,   nil,   nil,   245,   245,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   245,
+   245,   245,   nil,   245,   245,   nil,   nil,   245,   245,   246,
+   246,   246,   nil,   246,   nil,   nil,   nil,   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,   246,   nil,   nil,
+   nil,   nil,   246,   246,   246,   246,   246,   246,   nil,   nil,
+   nil,   246,   246,   246,   nil,   nil,   nil,   nil,   nil,   246,
+   nil,   nil,   246,   246,   246,   nil,   246,   246,   nil,   nil,
+   246,   246,   257,   257,   257,   nil,   257,   nil,   nil,   nil,
+   257,   257,   nil,   nil,   nil,   257,   nil,   257,   257,   257,
+   257,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   257,
+   257,   257,   257,   257,   257,   257,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   257,
+   257,   257,   257,   257,   257,   257,   nil,   257,   257,   257,
+   nil,   257,   257,   nil,   257,   257,   257,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,
+   nil,   nil,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,
+   257,   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   257,   257,   257,   nil,   257,
+   257,   nil,   nil,   257,   257,   264,   264,   264,   nil,   264,
+   nil,   nil,   nil,   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,   nil,
+   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,   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   264,   264,
+   264,   264,   264,   264,   nil,   nil,   nil,   264,   264,   nil,
+   nil,   nil,   nil,   nil,   nil,   264,   nil,   nil,   264,   264,
+   264,   nil,   264,   264,   nil,   nil,   264,   264,   265,   265,
+   265,   nil,   265,   nil,   nil,   nil,   265,   265,   nil,   nil,
+   nil,   265,   nil,   265,   265,   265,   265,   265,   265,   265,
+   nil,   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,
+   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,
+   nil,   265,   nil,   nil,   265,   265,   265,   265,   265,   265,
+   265,   265,   nil,   265,   265,   265,   nil,   265,   265,   nil,
+   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,   265,   265,
+   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,
+   nil,   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,
+   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   265,   265,   265,   nil,   265,   265,   nil,   nil,   265,
+   265,   266,   266,   266,   nil,   266,   nil,   nil,   nil,   266,
+   266,   nil,   nil,   nil,   266,   nil,   266,   266,   266,   266,
+   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   266,   266,
+   266,   266,   266,   266,   266,   nil,   nil,   266,   nil,   nil,
+   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   266,   266,
+   266,   266,   266,   266,   266,   nil,   266,   266,   266,   nil,
+   266,   266,   nil,   266,   266,   266,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   nil,
+   nil,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,
+   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,
+   nil,   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   266,   266,   266,   nil,   266,   266,
+   nil,   nil,   266,   266,   267,   267,   267,   nil,   267,   nil,
+   nil,   nil,   267,   267,   nil,   nil,   nil,   267,   nil,   267,
+   267,   267,   267,   267,   267,   267,   nil,   nil,   nil,   nil,
+   nil,   267,   267,   267,   267,   267,   267,   267,   nil,   nil,
+   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   267,   267,   267,   267,   267,   267,   267,   267,   nil,   267,
+   267,   267,   nil,   267,   267,   nil,   267,   267,   267,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,
+   nil,   267,   nil,   nil,   267,   267,   nil,   nil,   267,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   267,   nil,   nil,   nil,   nil,   267,   267,   267,
+   267,   267,   267,   nil,   nil,   nil,   267,   267,   nil,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,
+   nil,   267,   267,   nil,   nil,   267,   267,   268,   268,   268,
+   nil,   268,   nil,   nil,   nil,   268,   268,   nil,   nil,   nil,
+   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,   268,   268,   268,   268,   268,
+   268,   nil,   268,   268,   268,   nil,   268,   268,   nil,   268,
+   268,   268,   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,   268,   nil,
+   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,
+   268,   268,   268,   nil,   268,   268,   nil,   nil,   268,   268,
+   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,   nil,   269,   269,   269,
+   269,   269,   269,   269,   nil,   nil,   269,   nil,   nil,   nil,
+   nil,   nil,   nil,   269,   nil,   nil,   269,   269,   269,   269,
+   269,   269,   269,   269,   nil,   269,   269,   269,   nil,   269,
+   269,   nil,   269,   269,   269,   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,   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,
+   269,   nil,   nil,   269,   269,   269,   nil,   269,   269,   nil,
+   nil,   269,   269,   270,   270,   270,   nil,   270,   nil,   nil,
+   nil,   270,   270,   nil,   nil,   nil,   270,   nil,   270,   270,
+   270,   270,   270,   270,   270,   nil,   nil,   nil,   nil,   nil,
+   270,   270,   270,   270,   270,   270,   270,   nil,   nil,   270,
+   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,   270,
+   270,   270,   270,   270,   270,   270,   270,   nil,   270,   270,
+   270,   nil,   270,   270,   nil,   270,   270,   270,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,
+   270,   nil,   nil,   270,   270,   nil,   nil,   270,   nil,   nil,
+   nil,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   270,   nil,   nil,   nil,   nil,   270,   270,   270,   270,
+   270,   270,   nil,   nil,   nil,   270,   270,   nil,   nil,   nil,
+   nil,   nil,   nil,   270,   nil,   nil,   270,   270,   270,   nil,
+   270,   270,   nil,   nil,   270,   270,   271,   271,   271,   nil,
+   271,   nil,   nil,   nil,   271,   271,   nil,   nil,   nil,   271,
+   nil,   271,   271,   271,   271,   271,   271,   271,   nil,   nil,
+   nil,   nil,   nil,   271,   271,   271,   271,   271,   271,   271,
+   nil,   nil,   271,   nil,   nil,   nil,   nil,   nil,   nil,   271,
+   nil,   nil,   271,   271,   271,   271,   271,   271,   271,   271,
+   nil,   271,   271,   271,   nil,   271,   271,   nil,   271,   271,
+   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   271,   nil,   nil,   271,   nil,   nil,   271,   271,   nil,   nil,
+   271,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   271,   nil,   nil,   nil,   nil,   271,
+   271,   271,   271,   271,   271,   nil,   nil,   nil,   271,   271,
+   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,
+   271,   271,   nil,   271,   271,   nil,   nil,   271,   271,   272,
+   272,   272,   nil,   272,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   272,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   272,   nil,   nil,
+   nil,   nil,   272,   272,   272,   272,   272,   272,   nil,   nil,
+   nil,   272,   272,   nil,   nil,   nil,   nil,   nil,   nil,   272,
+   nil,   nil,   272,   272,   272,   nil,   272,   272,   nil,   nil,
+   272,   272,   273,   273,   273,   nil,   273,   nil,   nil,   nil,
+   273,   273,   nil,   nil,   nil,   273,   nil,   273,   273,   273,
+   273,   273,   273,   273,   nil,   nil,   nil,   nil,   nil,   273,
+   273,   273,   273,   273,   273,   273,   nil,   nil,   273,   nil,
+   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,   273,
+   273,   273,   273,   273,   273,   273,   nil,   273,   273,   273,
+   nil,   273,   273,   nil,   273,   273,   273,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,
+   nil,   nil,   273,   273,   nil,   nil,   273,   nil,   nil,   nil,
+   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   273,   nil,   nil,   nil,   nil,   273,   273,   273,   273,   273,
+   273,   nil,   nil,   nil,   273,   273,   nil,   nil,   nil,   nil,
+   nil,   nil,   273,   nil,   nil,   273,   273,   273,   nil,   273,
+   273,   nil,   nil,   273,   273,   274,   274,   274,   nil,   274,
+   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   274,   nil,
+   274,   274,   274,   274,   274,   274,   274,   nil,   nil,   nil,
+   nil,   nil,   274,   274,   274,   274,   274,   274,   274,   nil,
+   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,
+   nil,   274,   274,   274,   274,   274,   274,   274,   274,   nil,
+   274,   274,   274,   nil,   274,   274,   nil,   274,   274,   274,
+   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,   274,   274,   nil,   nil,   274,
+   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,   274,
+   274,   274,   274,   274,   nil,   nil,   nil,   274,   274,   nil,
+   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,
+   274,   nil,   274,   274,   nil,   nil,   274,   274,   275,   275,
+   275,   nil,   275,   nil,   nil,   nil,   275,   275,   nil,   nil,
+   nil,   275,   nil,   275,   275,   275,   275,   275,   275,   275,
+   nil,   nil,   nil,   nil,   nil,   275,   275,   275,   275,   275,
+   275,   275,   nil,   nil,   275,   nil,   nil,   nil,   nil,   nil,
+   nil,   275,   nil,   nil,   275,   275,   275,   275,   275,   275,
+   275,   275,   nil,   275,   275,   275,   nil,   275,   275,   nil,
+   275,   275,   275,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   275,   nil,   nil,   275,   nil,   nil,   275,   275,
+   nil,   nil,   275,   nil,   nil,   nil,   nil,   nil,   275,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   nil,
+   nil,   275,   275,   275,   275,   275,   275,   nil,   nil,   nil,
+   275,   275,   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,
+   nil,   275,   275,   275,   nil,   275,   275,   nil,   nil,   275,
+   275,   276,   276,   276,   nil,   276,   nil,   nil,   nil,   276,
+   276,   nil,   nil,   nil,   276,   nil,   276,   276,   276,   276,
+   276,   276,   276,   nil,   nil,   nil,   nil,   nil,   276,   276,
+   276,   276,   276,   276,   276,   nil,   nil,   276,   nil,   nil,
+   nil,   nil,   nil,   nil,   276,   nil,   nil,   276,   276,   276,
+   276,   276,   276,   276,   276,   nil,   276,   276,   276,   nil,
+   276,   276,   nil,   276,   276,   276,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   276,   nil,   nil,   276,   nil,
+   nil,   276,   276,   nil,   nil,   276,   nil,   nil,   nil,   nil,
+   nil,   276,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   276,
+   nil,   nil,   nil,   nil,   276,   276,   276,   276,   276,   276,
+   nil,   nil,   nil,   276,   276,   nil,   nil,   nil,   nil,   nil,
+   nil,   276,   nil,   nil,   276,   276,   276,   nil,   276,   276,
+   nil,   nil,   276,   276,   277,   277,   277,   nil,   277,   nil,
+   nil,   nil,   277,   277,   nil,   nil,   nil,   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,   277,   277,   277,   277,   277,   277,   nil,   277,
+   277,   277,   nil,   277,   277,   nil,   277,   277,   277,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   277,   nil,
+   nil,   277,   nil,   nil,   277,   277,   nil,   nil,   277,   nil,
+   nil,   nil,   nil,   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,   277,   277,
+   nil,   277,   277,   nil,   nil,   277,   277,   278,   278,   278,
+   nil,   278,   nil,   nil,   nil,   278,   278,   nil,   nil,   nil,
+   278,   nil,   278,   278,   278,   278,   278,   278,   278,   nil,
+   nil,   nil,   nil,   nil,   278,   278,   278,   278,   278,   278,
+   278,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,
+   278,   nil,   nil,   278,   278,   278,   278,   278,   278,   278,
+   278,   nil,   278,   278,   278,   nil,   278,   278,   nil,   278,
+   278,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   278,   nil,   nil,   278,   nil,   nil,   278,   278,   nil,
+   nil,   278,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,
+   278,   278,   278,   278,   278,   278,   nil,   nil,   nil,   278,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
+   278,   278,   278,   nil,   278,   278,   nil,   nil,   278,   278,
+   279,   279,   279,   nil,   279,   nil,   nil,   nil,   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,   279,   nil,
+   nil,   nil,   nil,   279,   279,   279,   279,   279,   279,   nil,
+   nil,   nil,   279,   279,   nil,   nil,   nil,   nil,   nil,   nil,
+   279,   nil,   nil,   279,   279,   279,   nil,   279,   279,   nil,
+   nil,   279,   279,   280,   280,   280,   nil,   280,   nil,   nil,
+   nil,   280,   280,   nil,   nil,   nil,   280,   nil,   280,   280,
+   280,   280,   280,   280,   280,   nil,   nil,   nil,   nil,   nil,
+   280,   280,   280,   280,   280,   280,   280,   nil,   nil,   280,
+   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,   nil,   280,
+   280,   280,   280,   280,   280,   280,   280,   nil,   280,   280,
+   280,   nil,   280,   280,   nil,   280,   280,   280,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,   nil,
+   280,   nil,   nil,   280,   280,   nil,   nil,   280,   nil,   nil,
+   nil,   nil,   nil,   280,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   280,   nil,   nil,   nil,   nil,   280,   280,   280,   280,
+   280,   280,   nil,   nil,   nil,   280,   280,   nil,   nil,   nil,
+   nil,   nil,   nil,   280,   nil,   nil,   280,   280,   280,   nil,
+   280,   280,   nil,   nil,   280,   280,   281,   281,   281,   nil,
+   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,   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,   281,   nil,   nil,   nil,   nil,   281,
+   281,   281,   281,   281,   281,   nil,   nil,   nil,   281,   281,
+   nil,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   281,
+   281,   281,   nil,   281,   281,   nil,   nil,   281,   281,   282,
+   282,   282,   nil,   282,   nil,   nil,   nil,   282,   282,   nil,
+   nil,   nil,   282,   nil,   282,   282,   282,   282,   282,   282,
+   282,   nil,   nil,   nil,   nil,   nil,   282,   282,   282,   282,
+   282,   282,   282,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   282,   282,   282,   282,   282,
+   282,   282,   282,   nil,   282,   282,   282,   nil,   282,   282,
+   nil,   282,   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   nil,   282,   nil,   nil,   282,
+   282,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
+   nil,   nil,   282,   282,   282,   282,   282,   282,   nil,   nil,
+   nil,   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   282,   282,   282,   nil,   282,   282,   nil,   nil,
+   282,   282,   283,   283,   283,   nil,   283,   nil,   nil,   nil,
+   283,   283,   nil,   nil,   nil,   283,   nil,   283,   283,   283,
+   283,   283,   283,   283,   nil,   nil,   nil,   nil,   nil,   283,
+   283,   283,   283,   283,   283,   283,   nil,   nil,   283,   nil,
+   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,   283,
+   283,   283,   283,   283,   283,   283,   nil,   283,   283,   283,
+   nil,   283,   283,   nil,   283,   283,   283,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,
+   nil,   nil,   283,   283,   nil,   nil,   283,   nil,   nil,   nil,
+   nil,   nil,   283,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   283,   nil,   nil,   nil,   nil,   283,   283,   283,   283,   283,
+   283,   nil,   nil,   nil,   283,   283,   nil,   nil,   nil,   nil,
+   nil,   nil,   283,   nil,   nil,   283,   283,   283,   nil,   283,
+   283,   nil,   nil,   283,   283,   284,   284,   284,   nil,   284,
+   nil,   nil,   nil,   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,   284,   nil,   nil,   nil,   nil,   284,   284,
+   284,   284,   284,   284,   nil,   nil,   nil,   284,   284,   nil,
+   nil,   nil,   nil,   nil,   nil,   284,   nil,   nil,   284,   284,
+   284,   nil,   284,   284,   nil,   nil,   284,   284,   285,   285,
+   285,   nil,   285,   nil,   nil,   nil,   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,   285,   nil,   nil,   nil,
+   nil,   285,   285,   285,   285,   285,   285,   nil,   nil,   nil,
+   285,   285,   nil,   nil,   nil,   nil,   nil,   nil,   285,   nil,
+   nil,   285,   285,   285,   nil,   285,   285,   nil,   nil,   285,
+   285,   290,   290,   290,   nil,   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,   nil,   290,   nil,   nil,   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,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   290,   nil,   nil,   290,   290,   290,   nil,   290,   290,
+   nil,   nil,   290,   290,   314,   314,   314,   nil,   314,   nil,
+   nil,   nil,   314,   314,   nil,   nil,   nil,   314,   nil,   314,
+   314,   314,   314,   314,   314,   314,   nil,   nil,   nil,   nil,
+   nil,   314,   314,   314,   314,   314,   314,   314,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
+   314,   314,   314,   314,   314,   314,   314,   314,   314,   314,
+   314,   314,   nil,   314,   314,   nil,   314,   314,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   314,   nil,   nil,   314,   314,   nil,   nil,   314,   nil,
+   314,   nil,   314,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   314,   314,   314,
+   314,   314,   314,   nil,   nil,   nil,   314,   314,   nil,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   314,   314,   314,   314,
+   nil,   314,   314,   nil,   nil,   314,   314,   315,   315,   315,
+   nil,   315,   nil,   nil,   nil,   315,   315,   nil,   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,   315,   315,   315,   315,   nil,   315,   315,   nil,   315,
+   315,   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,   315,   nil,   315,   nil,   315,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   315,   nil,   nil,   nil,   nil,
+   315,   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,
+   315,   nil,   nil,   nil,   nil,   nil,   nil,   315,   nil,   315,
+   315,   315,   315,   nil,   315,   315,   nil,   nil,   315,   315,
+   324,   324,   324,   nil,   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,   nil,   324,   nil,   nil,   324,   324,   324,   324,
+   324,   324,   324,   324,   324,   324,   324,   324,   nil,   324,
+   324,   nil,   324,   324,   324,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   324,   nil,   nil,   324,   nil,   nil,
+   324,   324,   nil,   nil,   324,   nil,   324,   nil,   324,   nil,
+   324,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   nil,   nil,   nil,   324,   324,   324,   324,   324,   324,   nil,
+   nil,   nil,   324,   324,   324,   nil,   nil,   nil,   nil,   nil,
+   324,   nil,   324,   324,   324,   324,   nil,   324,   324,   nil,
+   nil,   324,   324,   331,   331,   331,   nil,   331,   nil,   nil,
+   nil,   331,   331,   nil,   nil,   nil,   331,   nil,   331,   331,
+   331,   331,   331,   331,   331,   nil,   nil,   nil,   nil,   nil,
+   331,   331,   331,   331,   331,   331,   331,   nil,   nil,   331,
+   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,   331,
+   331,   331,   331,   331,   331,   331,   331,   nil,   331,   331,
+   331,   nil,   331,   331,   nil,   331,   331,   331,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,
+   331,   nil,   nil,   331,   331,   nil,   nil,   331,   nil,   nil,
+   nil,   nil,   nil,   331,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   331,   nil,   nil,   nil,   nil,   331,   331,   331,   331,
+   331,   331,   nil,   nil,   nil,   331,   331,   nil,   nil,   nil,
+   nil,   nil,   nil,   331,   nil,   nil,   331,   331,   331,   nil,
+   331,   331,   nil,   nil,   331,   331,   333,   333,   333,   nil,
+   333,   nil,   nil,   nil,   333,   333,   nil,   nil,   nil,   333,
+   nil,   333,   333,   333,   333,   333,   333,   333,   nil,   nil,
+   nil,   nil,   nil,   333,   333,   333,   333,   333,   333,   333,
+   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   333,
+   nil,   nil,   333,   333,   333,   333,   333,   333,   333,   333,
+   nil,   333,   333,   333,   nil,   333,   333,   nil,   333,   333,
+   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   333,   nil,   nil,   333,   nil,   nil,   333,   333,   nil,   nil,
+   333,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   333,
+   333,   333,   333,   333,   333,   nil,   nil,   nil,   333,   333,
+   nil,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   333,
+   333,   333,   nil,   333,   333,   nil,   nil,   333,   333,   336,
+   336,   336,   nil,   336,   nil,   nil,   nil,   336,   336,   nil,
+   nil,   nil,   336,   nil,   336,   336,   336,   336,   336,   336,
+   336,   nil,   nil,   nil,   nil,   nil,   336,   336,   336,   336,
+   336,   336,   336,   nil,   nil,   336,   nil,   nil,   nil,   nil,
+   nil,   nil,   336,   nil,   nil,   336,   336,   336,   336,   336,
+   336,   336,   336,   nil,   336,   336,   336,   nil,   336,   336,
+   nil,   336,   336,   336,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   336,   nil,   nil,   336,   nil,   nil,   336,
+   336,   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,   336,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,
+   nil,   nil,   336,   336,   336,   336,   336,   336,   nil,   nil,
+   nil,   336,   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,
+   nil,   nil,   336,   336,   336,   nil,   336,   336,   nil,   nil,
+   336,   336,   337,   337,   337,   nil,   337,   nil,   nil,   nil,
+   337,   337,   nil,   nil,   nil,   337,   nil,   337,   337,   337,
+   337,   337,   337,   337,   nil,   nil,   nil,   nil,   nil,   337,
+   337,   337,   337,   337,   337,   337,   nil,   nil,   337,   nil,
+   nil,   nil,   nil,   nil,   nil,   337,   nil,   nil,   337,   337,
+   337,   337,   337,   337,   337,   337,   nil,   337,   337,   337,
+   nil,   337,   337,   nil,   337,   337,   337,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   337,   nil,   nil,   337,
+   nil,   nil,   337,   337,   nil,   nil,   337,   nil,   nil,   nil,
+   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   337,   nil,   nil,   nil,   nil,   337,   337,   337,   337,   337,
+   337,   nil,   nil,   nil,   337,   337,   nil,   nil,   nil,   nil,
+   nil,   nil,   337,   nil,   nil,   337,   337,   337,   nil,   337,
+   337,   nil,   nil,   337,   337,   343,   343,   343,   343,   343,
+   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,   343,   nil,
+   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   nil,
+   nil,   nil,   343,   343,   343,   343,   343,   343,   343,   nil,
+   nil,   343,   nil,   nil,   nil,   nil,   nil,   343,   343,   nil,
+   343,   343,   343,   343,   343,   343,   343,   343,   343,   nil,
+   343,   343,   343,   nil,   343,   343,   nil,   343,   343,   343,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,
+   nil,   nil,   343,   nil,   nil,   343,   343,   nil,   nil,   343,
+   nil,   343,   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   343,   343,
+   343,   343,   343,   343,   nil,   nil,   nil,   343,   343,   nil,
+   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,   343,
+   343,   nil,   343,   343,   nil,   nil,   343,   343,   379,   379,
+   379,   nil,   379,   nil,   nil,   nil,   379,   379,   nil,   nil,
+   nil,   379,   nil,   379,   379,   379,   379,   379,   379,   379,
+   nil,   nil,   nil,   nil,   nil,   379,   379,   379,   379,   379,
+   379,   379,   nil,   nil,   379,   nil,   nil,   nil,   nil,   nil,
+   nil,   379,   nil,   nil,   379,   379,   379,   379,   379,   379,
+   379,   379,   nil,   379,   379,   379,   nil,   379,   379,   nil,
+   379,   379,   379,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   379,   nil,   nil,   379,   nil,   nil,   379,   379,
+   nil,   nil,   379,   nil,   nil,   nil,   nil,   nil,   379,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   379,   nil,   nil,   nil,
+   nil,   379,   379,   379,   379,   379,   379,   nil,   nil,   nil,
+   379,   379,   nil,   nil,   nil,   nil,   nil,   nil,   379,   nil,
+   nil,   379,   379,   379,   nil,   379,   379,   nil,   nil,   379,
+   379,   381,   381,   381,   nil,   381,   nil,   nil,   nil,   381,
+   381,   nil,   nil,   nil,   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,   381,
+   381,   381,   381,   381,   381,   nil,   381,   381,   381,   nil,
+   381,   381,   nil,   381,   381,   381,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   381,   nil,   nil,   381,   381,
+   nil,   381,   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,   nil,   nil,
+   nil,   381,   nil,   nil,   381,   381,   381,   nil,   381,   381,
+   nil,   nil,   381,   381,   389,   389,   389,   nil,   389,   nil,
+   nil,   nil,   389,   389,   nil,   nil,   nil,   389,   nil,   389,
+   389,   389,   389,   389,   389,   389,   nil,   nil,   nil,   nil,
+   nil,   389,   389,   389,   389,   389,   389,   389,   nil,   nil,
+   389,   nil,   nil,   nil,   nil,   nil,   nil,   389,   nil,   nil,
+   389,   389,   389,   389,   389,   389,   389,   389,   389,   389,
+   389,   389,   nil,   389,   389,   nil,   389,   389,   389,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   389,   nil,
+   nil,   389,   nil,   nil,   389,   389,   nil,   nil,   389,   nil,
+   nil,   nil,   nil,   nil,   389,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   389,   nil,   nil,   nil,   nil,   389,   389,   389,
+   389,   389,   389,   nil,   nil,   nil,   389,   389,   nil,   nil,
+   nil,   nil,   nil,   nil,   389,   nil,   389,   389,   389,   389,
+   nil,   389,   389,   nil,   nil,   389,   389,   394,   394,   394,
+   nil,   394,   nil,   nil,   nil,   394,   394,   nil,   nil,   nil,
+   394,   nil,   394,   394,   394,   394,   394,   394,   394,   nil,
+   nil,   nil,   nil,   nil,   394,   394,   394,   394,   394,   394,
+   394,   nil,   nil,   394,   nil,   nil,   nil,   nil,   nil,   nil,
+   394,   nil,   nil,   394,   394,   394,   394,   394,   394,   394,
+   394,   nil,   394,   394,   394,   nil,   394,   394,   nil,   394,
+   394,   394,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   394,   nil,   nil,   394,   nil,   nil,   394,   394,   nil,
+   nil,   394,   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,   nil,   nil,
+   394,   394,   394,   394,   394,   394,   nil,   nil,   nil,   394,
+   394,   nil,   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,
+   394,   394,   394,   nil,   394,   394,   nil,   nil,   394,   394,
+   415,   415,   415,   nil,   415,   nil,   nil,   nil,   415,   415,
+   nil,   nil,   nil,   415,   nil,   415,   415,   415,   415,   415,
+   415,   415,   nil,   nil,   nil,   nil,   nil,   415,   415,   415,
+   415,   415,   415,   415,   nil,   nil,   415,   nil,   nil,   nil,
+   nil,   nil,   nil,   415,   nil,   nil,   415,   415,   415,   415,
+   415,   415,   415,   415,   nil,   415,   415,   415,   nil,   415,
+   415,   nil,   415,   415,   415,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   415,   nil,   nil,   415,   nil,   nil,
+   415,   415,   nil,   nil,   415,   nil,   nil,   nil,   nil,   nil,
+   415,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   415,   nil,
+   nil,   nil,   nil,   415,   415,   415,   415,   415,   415,   nil,
+   nil,   nil,   415,   415,   nil,   nil,   nil,   nil,   nil,   nil,
+   415,   nil,   nil,   415,   415,   415,   nil,   415,   415,   nil,
+   nil,   415,   415,   461,   461,   461,   nil,   461,   nil,   nil,
+   nil,   461,   461,   nil,   nil,   nil,   461,   nil,   461,   461,
+   461,   461,   461,   461,   461,   nil,   nil,   nil,   nil,   nil,
+   461,   461,   461,   461,   461,   461,   461,   nil,   nil,   461,
+   nil,   nil,   nil,   nil,   nil,   nil,   461,   nil,   nil,   461,
+   461,   461,   461,   461,   461,   461,   461,   nil,   461,   461,
+   461,   nil,   461,   461,   nil,   461,   461,   461,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   461,   nil,   nil,
+   461,   nil,   nil,   461,   461,   nil,   nil,   461,   nil,   nil,
+   nil,   nil,   nil,   461,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   461,   nil,   nil,   nil,   nil,   461,   461,   461,   461,
+   461,   461,   nil,   nil,   nil,   461,   461,   nil,   nil,   nil,
+   nil,   nil,   nil,   461,   nil,   nil,   461,   461,   461,   495,
+   461,   461,   nil,   nil,   461,   461,   495,   495,   495,   nil,
+   nil,   495,   495,   495,  1287,   495,  1287,  1287,  1287,  1287,
+  1287,   nil,   nil,   495,   495,   495,   495,   495,   nil,   nil,
+  1287,   nil,   nil,   nil,   nil,   495,   495,   nil,   495,   495,
+   495,   495,   495,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1287,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1287,  1287,   nil,   495,   495,   495,   495,
+   495,   495,   495,   495,   495,   495,   495,   495,   495,   495,
+   nil,   nil,   495,   495,   495,   nil,   nil,   495,   nil,   nil,
+   495,   nil,   nil,   495,   495,   nil,   495,  1287,   495,   nil,
+   495,   nil,   495,   495,   495,   495,   495,   495,   495,   nil,
+   495,   495,   495,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   495,   495,   495,   495,   nil,
+   495,   496,   495,   nil,   nil,   nil,   nil,   495,   496,   496,
+   496,   495,   nil,   496,   496,   496,   nil,   496,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   496,   496,   496,   496,   496,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   496,   496,   nil,
+   496,   496,   496,   496,   496,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   496,   496,
+   496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
+   496,   496,   nil,   nil,   496,   496,   496,   nil,   nil,   496,
+   nil,   nil,   496,   nil,   nil,   496,   496,   nil,   496,   nil,
+   496,   nil,   496,   nil,   496,   496,   496,   496,   496,   496,
+   496,   nil,   496,   496,   496,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   496,   496,   496,
+   496,   nil,   496,   nil,   496,   nil,   497,   497,   497,   496,
+   497,   nil,   nil,   496,   497,   497,   nil,   nil,   nil,   497,
+   nil,   497,   497,   497,   497,   497,   497,   497,   nil,   nil,
+   nil,   nil,   nil,   497,   497,   497,   497,   497,   497,   497,
+   nil,   nil,   497,   nil,   nil,   nil,   nil,   nil,   nil,   497,
+   nil,   nil,   497,   497,   497,   497,   497,   497,   497,   497,
+   nil,   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,   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   497,   nil,   nil,   497,
+   497,   497,   nil,   497,   497,   nil,   nil,   497,   497,   523,
+   523,   523,   nil,   523,   nil,   nil,   nil,   523,   523,   nil,
+   nil,   nil,   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,   523,   523,   523,
+   523,   523,   523,   nil,   523,   523,   523,   nil,   523,   523,
+   nil,   523,   523,   523,   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,
+   523,   nil,   nil,   523,   nil,   nil,   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,   nil,   nil,   nil,   523,
+   nil,   nil,   523,   523,   523,   nil,   523,   523,   nil,   nil,
+   523,   523,   536,   536,   536,   nil,   536,   nil,   nil,   nil,
+   536,   536,   nil,   nil,   nil,   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,
+   536,   536,   536,   536,   536,   536,   nil,   536,   536,   536,
+   nil,   536,   536,   nil,   536,   536,   536,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   536,   nil,   nil,   536,
+   nil,   nil,   536,   536,   nil,   nil,   536,   nil,   nil,   nil,
+   nil,   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,   nil,
+   nil,   nil,   536,   nil,   nil,   536,   536,   536,   nil,   536,
+   536,   nil,   nil,   536,   536,   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,   nil,   546,   546,   546,   546,   546,   546,   546,   nil,
+   nil,   546,   nil,   nil,   nil,   nil,   nil,   nil,   546,   nil,
+   nil,   546,   546,   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,   546,   nil,   546,   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,   546,   546,   546,
+   546,   nil,   546,   546,   nil,   nil,   546,   546,   548,   548,
+   548,   nil,   548,   nil,   nil,   nil,   548,   548,   nil,   nil,
+   nil,   548,   nil,   548,   548,   548,   548,   548,   548,   548,
+   nil,   nil,   nil,   nil,   nil,   548,   548,   548,   548,   548,
+   548,   548,   nil,   nil,   548,   nil,   nil,   nil,   nil,   nil,
+   nil,   548,   nil,   nil,   548,   548,   548,   548,   548,   548,
+   548,   548,   nil,   548,   548,   548,   nil,   548,   548,   nil,
+   548,   548,   548,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   548,   nil,   nil,   548,   nil,   nil,   548,   548,
+   nil,   nil,   548,   nil,   nil,   nil,   nil,   nil,   548,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   nil,
+   nil,   548,   548,   548,   548,   548,   548,   nil,   nil,   nil,
+   548,   548,   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,
+   nil,   548,   548,   548,   nil,   548,   548,   nil,   nil,   548,
+   548,   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,   nil,   549,   549,
+   549,   549,   549,   549,   549,   nil,   nil,   549,   nil,   nil,
+   nil,   nil,   nil,   nil,   549,   nil,   nil,   549,   549,   549,
+   549,   549,   549,   549,   549,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   549,   nil,   nil,   549,   549,   549,   nil,   549,   549,
+   nil,   nil,   549,   549,   550,   550,   550,   nil,   550,   nil,
+   nil,   nil,   550,   550,   nil,   nil,   nil,   550,   nil,   550,
+   550,   550,   550,   550,   550,   550,   nil,   nil,   nil,   nil,
+   nil,   550,   550,   550,   550,   550,   550,   550,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,
+   550,   550,   550,   550,   550,   550,   550,   550,   nil,   550,
+   550,   550,   nil,   550,   550,   nil,   550,   550,   550,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,
+   nil,   550,   nil,   nil,   550,   550,   nil,   nil,   550,   nil,
+   nil,   nil,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   550,   nil,   nil,   nil,   nil,   550,   550,   550,
+   550,   550,   550,   nil,   nil,   nil,   550,   550,   nil,   nil,
+   nil,   nil,   nil,   nil,   550,   nil,   nil,   550,   550,   550,
+   nil,   550,   550,   nil,   nil,   550,   550,   581,   581,   581,
+   nil,   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,   nil,
+   581,   nil,   nil,   581,   581,   581,   581,   581,   581,   581,
+   581,   nil,   581,   581,   581,   nil,   581,   581,   nil,   581,
+   581,   581,   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,   581,   nil,
+   nil,   581,   nil,   nil,   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,   nil,   nil,   nil,   581,   nil,   nil,
+   581,   581,   581,   584,   581,   581,   nil,   nil,   581,   581,
+   584,   584,   584,   nil,   nil,   584,   584,   584,   nil,   584,
+   993,   993,   993,   993,   nil,   nil,   nil,   584,   584,   584,
+   nil,   nil,   nil,   nil,   nil,   nil,   993,   993,   993,   584,
+   584,   nil,   584,   584,   584,   584,   584,   nil,   nil,   993,
+   993,   nil,   nil,   nil,   993,   nil,   nil,   nil,   nil,   nil,
+   746,   nil,   746,   746,   746,   746,   746,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   746,   nil,   nil,   nil,
+   nil,   584,   nil,   nil,   nil,   nil,   nil,   nil,   584,   nil,
+   nil,   nil,   nil,   584,   584,   nil,   nil,   nil,   746,   nil,
+   nil,   nil,   nil,   993,   993,   993,   993,   993,   993,   746,
+   746,   nil,   993,   993,   nil,   584,   584,   nil,   nil,   nil,
+   993,   nil,   nil,   993,   993,   993,   nil,   993,   993,   584,
+   nil,   589,   589,   589,   584,   589,   nil,   nil,   nil,   589,
+   589,   584,   nil,   746,   589,   584,   589,   589,   589,   589,
+   589,   589,   589,   746,   nil,   nil,   nil,   nil,   589,   589,
+   589,   589,   589,   589,   589,   nil,   nil,   589,   nil,   nil,
+   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   589,   589,
+   589,   589,   589,   589,   589,   nil,   589,   589,   589,   nil,
+   589,   589,   nil,   589,   589,   589,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   nil,
+   nil,   589,   589,   nil,   nil,   589,   nil,   nil,   nil,   nil,
+   nil,   589,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   589,
+   nil,   nil,   nil,   nil,   589,   589,   589,   589,   589,   589,
+   nil,   nil,   nil,   589,   589,   nil,   nil,   nil,   nil,   nil,
+   nil,   589,   nil,   nil,   589,   589,   589,   nil,   589,   589,
+   nil,   nil,   589,   589,   599,   599,   599,   nil,   599,   nil,
+   nil,   nil,   599,   599,   nil,   nil,   nil,   599,   nil,   599,
+   599,   599,   599,   599,   599,   599,   nil,   nil,   nil,   nil,
+   nil,   599,   599,   599,   599,   599,   599,   599,   nil,   nil,
+   599,   nil,   nil,   nil,   nil,   nil,   nil,   599,   nil,   nil,
+   599,   599,   599,   599,   599,   599,   599,   599,   599,   599,
+   599,   599,   nil,   599,   599,   nil,   599,   599,   599,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   599,   nil,
+   nil,   599,   nil,   nil,   599,   599,   nil,   nil,   599,   nil,
+   599,   nil,   599,   nil,   599,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   599,   nil,   nil,   nil,   nil,   599,   599,   599,
+   599,   599,   599,   nil,   nil,   nil,   599,   599,   nil,   nil,
+   nil,   nil,   nil,   nil,   599,   nil,   599,   599,   599,   599,
+   nil,   599,   599,   nil,   nil,   599,   599,   602,   602,   602,
+   nil,   602,   nil,   nil,   nil,   602,   602,   nil,   nil,   nil,
+   602,   nil,   602,   602,   602,   602,   602,   602,   602,   nil,
+   nil,   nil,   nil,   nil,   602,   602,   602,   602,   602,   602,
+   602,   nil,   nil,   602,   nil,   nil,   nil,   nil,   nil,   nil,
+   602,   nil,   nil,   602,   602,   602,   602,   602,   602,   602,
+   602,   602,   602,   602,   602,   nil,   602,   602,   nil,   602,
+   602,   602,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   602,   nil,   nil,   602,   nil,   nil,   602,   602,   nil,
+   nil,   602,   nil,   nil,   nil,   602,   nil,   602,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   602,   nil,   nil,   nil,   nil,
+   602,   602,   602,   602,   602,   602,   nil,   nil,   nil,   602,
+   602,   nil,   nil,   nil,   nil,   nil,   nil,   602,   nil,   602,
+   602,   602,   602,   nil,   602,   602,   nil,   nil,   602,   602,
+   604,   604,   604,   nil,   604,   nil,   nil,   nil,   604,   604,
+   nil,   nil,   nil,   604,   nil,   604,   604,   604,   604,   604,
+   604,   604,   nil,   nil,   nil,   nil,   nil,   604,   604,   604,
+   604,   604,   604,   604,   nil,   nil,   604,   nil,   nil,   nil,
+   nil,   nil,   nil,   604,   nil,   nil,   604,   604,   604,   604,
+   604,   604,   604,   604,   nil,   604,   604,   604,   nil,   604,
+   604,   nil,   604,   604,   604,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   604,   nil,   nil,   604,   nil,   nil,
+   604,   604,   nil,   nil,   604,   nil,   nil,   nil,   nil,   nil,
+   604,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   604,   nil,
+   nil,   nil,   nil,   604,   604,   604,   604,   604,   604,   nil,
+   nil,   nil,   604,   604,   nil,   nil,   nil,   nil,   nil,   nil,
+   604,   nil,   nil,   604,   604,   604,   nil,   604,   604,   nil,
+   nil,   604,   604,   610,   610,   610,   610,   610,   nil,   nil,
+   nil,   610,   610,   nil,   nil,   nil,   610,   nil,   610,   610,
+   610,   610,   610,   610,   610,   nil,   nil,   nil,   nil,   nil,
+   610,   610,   610,   610,   610,   610,   610,   nil,   nil,   610,
+   nil,   nil,   nil,   nil,   nil,   610,   610,   610,   610,   610,
+   610,   610,   610,   610,   610,   610,   610,   nil,   610,   610,
+   610,   nil,   610,   610,   nil,   610,   610,   610,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   610,   nil,   nil,
+   610,   nil,   nil,   610,   610,   nil,   nil,   610,   nil,   610,
+   nil,   nil,   nil,   610,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   610,   nil,   nil,   nil,   nil,   610,   610,   610,   610,
+   610,   610,   nil,   nil,   nil,   610,   610,   nil,   nil,   nil,
+   nil,   nil,   610,   610,   nil,   nil,   610,   610,   610,   nil,
+   610,   610,   nil,   nil,   610,   610,   620,   620,   620,   nil,
+   620,   nil,   nil,   nil,   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,
+   620,   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,   620,   nil,   620,   nil,   620,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   620,   nil,   nil,   nil,   nil,   620,
+   620,   620,   620,   620,   620,   nil,   nil,   nil,   620,   620,
+   nil,   nil,   nil,   nil,   nil,   nil,   620,   nil,   620,   620,
+   620,   620,   nil,   620,   620,   nil,   nil,   620,   620,   630,
+   630,   630,   nil,   630,   nil,   nil,   nil,   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,   630,   nil,   nil,
+   nil,   nil,   630,   630,   630,   630,   630,   630,   nil,   nil,
+   nil,   630,   630,   nil,   nil,   nil,   nil,   nil,   nil,   630,
+   nil,   nil,   630,   630,   630,   nil,   630,   630,   nil,   nil,
+   630,   630,   633,   633,   633,   nil,   633,   nil,   nil,   nil,
+   633,   633,   nil,   nil,   nil,   633,   nil,   633,   633,   633,
+   633,   633,   633,   633,   nil,   nil,   nil,   nil,   nil,   633,
+   633,   633,   633,   633,   633,   633,   nil,   nil,   633,   nil,
+   nil,   nil,   nil,   nil,   nil,   633,   nil,   nil,   633,   633,
+   633,   633,   633,   633,   633,   633,   nil,   633,   633,   633,
+   nil,   633,   633,   nil,   633,   633,   633,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   633,   nil,   nil,   633,
+   nil,   nil,   633,   633,   nil,   nil,   633,   nil,   nil,   nil,
+   nil,   nil,   633,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   633,   nil,   nil,   nil,   nil,   633,   633,   633,   633,   633,
+   633,   nil,   nil,   nil,   633,   633,   nil,   nil,   nil,   nil,
+   nil,   nil,   633,   nil,   nil,   633,   633,   633,   nil,   633,
+   633,   nil,   nil,   633,   633,   636,   636,   636,   nil,   636,
+   nil,   nil,   nil,   636,   636,   nil,   nil,   nil,   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,   636,   636,   636,   636,   636,   636,   nil,
+   636,   636,   636,   nil,   636,   636,   nil,   636,   636,   636,
+   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,   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,   nil,   nil,   nil,   636,   nil,   nil,   636,   636,
+   636,   nil,   636,   636,   nil,   nil,   636,   636,   641,   641,
+   641,   nil,   641,   nil,   nil,   nil,   641,   641,   nil,   nil,
+   nil,   641,   nil,   641,   641,   641,   641,   641,   641,   641,
+   nil,   nil,   nil,   nil,   nil,   641,   641,   641,   641,   641,
+   641,   641,   nil,   nil,   641,   nil,   nil,   nil,   nil,   nil,
+   nil,   641,   nil,   nil,   641,   641,   641,   641,   641,   641,
+   641,   641,   641,   641,   641,   641,   nil,   641,   641,   nil,
+   641,   641,   641,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   641,   nil,   nil,   641,   nil,   nil,   641,   641,
+   nil,   nil,   641,   nil,   641,   nil,   nil,   nil,   641,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   641,   nil,   nil,   nil,
+   nil,   641,   641,   641,   641,   641,   641,   nil,   nil,   nil,
+   641,   641,   nil,   nil,   nil,   nil,   nil,   nil,   641,   nil,
+   641,   641,   641,   641,   nil,   641,   641,   nil,   nil,   641,
+   641,   644,   644,   644,   nil,   644,   nil,   nil,   nil,   644,
+   644,   nil,   nil,   nil,   644,   nil,   644,   644,   644,   644,
+   644,   644,   644,   nil,   nil,   nil,   nil,   nil,   644,   644,
+   644,   644,   644,   644,   644,   nil,   nil,   644,   nil,   nil,
+   nil,   nil,   nil,   nil,   644,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   644,   nil,   644,   644,   644,   644,   nil,   644,   644,
+   nil,   nil,   644,   644,   661,   661,   661,   nil,   661,   nil,
+   nil,   nil,   661,   661,   nil,   nil,   nil,   661,   nil,   661,
+   661,   661,   661,   661,   661,   661,   nil,   nil,   nil,   nil,
+   nil,   661,   661,   661,   661,   661,   661,   661,   nil,   nil,
+   661,   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,
+   661,   661,   661,   661,   661,   661,   661,   661,   nil,   661,
+   661,   661,   nil,   661,   661,   nil,   661,   661,   661,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,
+   nil,   661,   nil,   nil,   661,   661,   nil,   nil,   661,   nil,
+   661,   nil,   nil,   nil,   661,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   661,   nil,   nil,   nil,   nil,   661,   661,   661,
+   661,   661,   661,   nil,   nil,   nil,   661,   661,   nil,   nil,
+   nil,   nil,   nil,   nil,   661,   nil,   nil,   661,   661,   661,
+   nil,   661,   661,   nil,   nil,   661,   661,   662,   662,   662,
+   nil,   662,   nil,   nil,   nil,   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,   662,   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,   662,   nil,   662,   nil,   662,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   662,   nil,   nil,   nil,   nil,
+   662,   662,   662,   662,   662,   662,   nil,   nil,   nil,   662,
+   662,   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,   662,
+   662,   662,   662,   nil,   662,   662,   nil,   nil,   662,   662,
+   672,   672,   672,   nil,   672,   nil,   nil,   nil,   672,   672,
+   nil,   nil,   nil,   672,   nil,   672,   672,   672,   672,   672,
+   672,   672,   nil,   nil,   nil,   nil,   nil,   672,   672,   672,
+   672,   672,   672,   672,   nil,   nil,   672,   nil,   nil,   nil,
+   nil,   nil,   nil,   672,   nil,   nil,   672,   672,   672,   672,
+   672,   672,   672,   672,   672,   672,   672,   672,   nil,   672,
+   672,   nil,   672,   672,   672,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   672,   nil,   nil,   672,   nil,   nil,
+   672,   672,   nil,   nil,   672,   nil,   672,   nil,   672,   nil,
+   672,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   672,   nil,
+   nil,   nil,   nil,   672,   672,   672,   672,   672,   672,   nil,
+   nil,   nil,   672,   672,   nil,   nil,   nil,   nil,   nil,   nil,
+   672,   nil,   672,   672,   672,   672,   nil,   672,   672,   nil,
+   nil,   672,   672,   708,   708,   708,   708,   708,   nil,   nil,
+   nil,   708,   708,   nil,   nil,   nil,   708,   nil,   708,   708,
+   708,   708,   708,   708,   708,   nil,   nil,   nil,   nil,   nil,
+   708,   708,   708,   708,   708,   708,   708,   nil,   nil,   708,
+   nil,   nil,   nil,   nil,   nil,   708,   708,   nil,   708,   708,
+   708,   708,   708,   708,   708,   708,   708,   nil,   708,   708,
+   708,   nil,   708,   708,   nil,   708,   708,   708,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,   nil,
+   708,   nil,   nil,   708,   708,   nil,   nil,   708,   nil,   708,
+   nil,   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   708,   nil,   nil,   nil,   nil,   708,   708,   708,   708,
+   708,   708,   nil,   nil,   nil,   708,   708,   nil,   nil,   nil,
+   nil,   nil,   nil,   708,   nil,   nil,   708,   708,   708,   nil,
+   708,   708,   nil,   nil,   708,   708,   710,   710,   710,   nil,
+   710,   nil,   nil,   nil,   710,   710,   nil,   nil,   nil,   710,
+   nil,   710,   710,   710,   710,   710,   710,   710,   nil,   nil,
+   nil,   nil,   nil,   710,   710,   710,   710,   710,   710,   710,
+   nil,   nil,   710,   nil,   nil,   nil,   nil,   nil,   nil,   710,
+   nil,   nil,   710,   710,   710,   710,   710,   710,   710,   710,
+   nil,   710,   710,   710,   nil,   710,   710,   nil,   710,   710,
+   710,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   710,   nil,   nil,   710,   nil,   nil,   710,   710,   nil,   nil,
+   710,   nil,   710,   nil,   nil,   nil,   710,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   710,   nil,   nil,   nil,   nil,   710,
+   710,   710,   710,   710,   710,   nil,   nil,   nil,   710,   710,
+   nil,   nil,   nil,   nil,   nil,   nil,   710,   nil,   nil,   710,
+   710,   710,   nil,   710,   710,   nil,   nil,   710,   710,   711,
+   711,   711,   nil,   711,   nil,   nil,   nil,   711,   711,   nil,
+   nil,   nil,   711,   nil,   711,   711,   711,   711,   711,   711,
+   711,   nil,   nil,   nil,   nil,   nil,   711,   711,   711,   711,
+   711,   711,   711,   nil,   nil,   711,   nil,   nil,   nil,   nil,
+   nil,   nil,   711,   nil,   nil,   711,   711,   711,   711,   711,
+   711,   711,   711,   nil,   711,   711,   711,   nil,   711,   711,
+   nil,   711,   711,   711,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   711,   nil,   nil,   711,   nil,   nil,   711,
+   711,   nil,   nil,   711,   nil,   nil,   nil,   nil,   nil,   711,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   711,   nil,   nil,
+   nil,   nil,   711,   711,   711,   711,   711,   711,   nil,   nil,
+   nil,   711,   711,   nil,   nil,   nil,   nil,   nil,   nil,   711,
+   nil,   nil,   711,   711,   711,   nil,   711,   711,   nil,   nil,
+   711,   711,   712,   712,   712,   nil,   712,   nil,   nil,   nil,
+   712,   712,   nil,   nil,   nil,   712,   nil,   712,   712,   712,
+   712,   712,   712,   712,   nil,   nil,   nil,   nil,   nil,   712,
+   712,   712,   712,   712,   712,   712,   nil,   nil,   712,   nil,
+   nil,   nil,   nil,   nil,   nil,   712,   nil,   nil,   712,   712,
+   712,   712,   712,   712,   712,   712,   712,   712,   712,   712,
+   nil,   712,   712,   nil,   712,   712,   712,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   712,   nil,   nil,   712,
+   nil,   nil,   712,   712,   nil,   nil,   712,   nil,   712,   nil,
+   712,   nil,   712,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   712,   nil,   nil,   nil,   nil,   712,   712,   712,   712,   712,
+   712,   nil,   nil,   nil,   712,   712,   nil,   nil,   nil,   nil,
+   nil,   nil,   712,   nil,   712,   712,   712,   712,   nil,   712,
+   712,   nil,   nil,   712,   712,   715,   715,   715,   715,   715,
+   nil,   nil,   nil,   715,   715,   nil,   nil,   nil,   715,   nil,
+   715,   715,   715,   715,   715,   715,   715,   nil,   nil,   nil,
+   nil,   nil,   715,   715,   715,   715,   715,   715,   715,   nil,
+   nil,   715,   nil,   nil,   nil,   nil,   nil,   715,   715,   nil,
+   715,   715,   715,   715,   715,   715,   715,   715,   715,   nil,
+   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,   nil,   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   715,   nil,   nil,   715,   715,
+   715,   nil,   715,   715,   nil,   nil,   715,   715,   716,   716,
+   716,   nil,   716,   nil,   nil,   nil,   716,   716,   nil,   nil,
+   nil,   716,   nil,   716,   716,   716,   716,   716,   716,   716,
+   nil,   nil,   nil,   nil,   nil,   716,   716,   716,   716,   716,
+   716,   716,   nil,   nil,   716,   nil,   nil,   nil,   nil,   nil,
+   nil,   716,   nil,   nil,   716,   716,   716,   716,   716,   716,
+   716,   716,   nil,   716,   716,   716,   nil,   716,   716,   nil,
+   716,   716,   716,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   716,   nil,   nil,   716,   nil,   nil,   716,   716,
+   nil,   nil,   716,   nil,   nil,   nil,   nil,   nil,   716,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,   nil,   nil,
+   nil,   716,   716,   716,   716,   716,   716,   nil,   nil,   nil,
+   716,   716,   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,
+   nil,   716,   716,   716,   nil,   716,   716,   nil,   nil,   716,
+   716,   718,   718,   718,   nil,   718,   nil,   nil,   nil,   718,
+   718,   nil,   nil,   nil,   718,   nil,   718,   718,   718,   718,
+   718,   718,   718,   nil,   nil,   nil,   nil,   nil,   718,   718,
+   718,   718,   718,   718,   718,   nil,   nil,   718,   nil,   nil,
+   nil,   nil,   nil,   nil,   718,   nil,   nil,   718,   718,   718,
+   718,   718,   718,   718,   718,   718,   718,   718,   718,   nil,
+   718,   718,   nil,   718,   718,   718,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   718,   nil,   nil,   718,   nil,
+   nil,   718,   718,   nil,   nil,   718,   nil,   718,   nil,   718,
+   nil,   718,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   718,
+   nil,   nil,   nil,   nil,   718,   718,   718,   718,   718,   718,
+   nil,   nil,   nil,   718,   718,   nil,   nil,   nil,   nil,   nil,
+   nil,   718,   nil,   718,   718,   718,   718,   nil,   718,   718,
+   nil,   nil,   718,   718,   719,   719,   719,   nil,   719,   nil,
+   nil,   nil,   719,   719,   nil,   nil,   nil,   719,   nil,   719,
+   719,   719,   719,   719,   719,   719,   nil,   nil,   nil,   nil,
+   nil,   719,   719,   719,   719,   719,   719,   719,   nil,   nil,
+   719,   nil,   nil,   nil,   nil,   nil,   nil,   719,   nil,   nil,
+   719,   719,   719,   719,   719,   719,   719,   719,   719,   719,
+   719,   719,   nil,   719,   719,   nil,   719,   719,   719,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   719,   nil,
+   nil,   719,   nil,   nil,   719,   719,   nil,   nil,   719,   nil,
+   nil,   nil,   719,   nil,   719,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   719,   nil,   nil,   nil,   nil,   719,   719,   719,
+   719,   719,   719,   nil,   nil,   nil,   719,   719,   nil,   nil,
+   nil,   nil,   nil,   nil,   719,   nil,   719,   719,   719,   719,
+   nil,   719,   719,   nil,   nil,   719,   719,   720,   720,   720,
+   nil,   720,   nil,   nil,   nil,   720,   720,   nil,   nil,   nil,
+   720,   nil,   720,   720,   720,   720,   720,   720,   720,   nil,
+   nil,   nil,   nil,   nil,   720,   720,   720,   720,   720,   720,
+   720,   nil,   nil,   720,   nil,   nil,   nil,   nil,   nil,   nil,
+   720,   nil,   nil,   720,   720,   720,   720,   720,   720,   720,
+   720,   nil,   720,   720,   720,   nil,   720,   720,   nil,   720,
+   720,   720,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   720,   nil,   nil,   720,   nil,   nil,   720,   720,   nil,
+   nil,   720,   nil,   nil,   nil,   nil,   nil,   720,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   720,   nil,   nil,   nil,   nil,
+   720,   720,   720,   720,   720,   720,   nil,   nil,   nil,   720,
+   720,   nil,   nil,   nil,   nil,   nil,   nil,   720,   nil,   nil,
+   720,   720,   720,   nil,   720,   720,   nil,   nil,   720,   720,
+   721,   721,   721,   nil,   721,   nil,   nil,   nil,   721,   721,
+   nil,   nil,   nil,   721,   nil,   721,   721,   721,   721,   721,
+   721,   721,   nil,   nil,   nil,   nil,   nil,   721,   721,   721,
+   721,   721,   721,   721,   nil,   nil,   721,   nil,   nil,   nil,
+   nil,   nil,   nil,   721,   nil,   nil,   721,   721,   721,   721,
+   721,   721,   721,   721,   nil,   721,   721,   721,   nil,   721,
+   721,   nil,   721,   721,   721,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   721,   nil,   nil,   721,   nil,   nil,
+   721,   721,   nil,   nil,   721,   nil,   nil,   nil,   nil,   nil,
+   721,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,
+   nil,   nil,   nil,   721,   721,   721,   721,   721,   721,   nil,
+   nil,   nil,   721,   721,   nil,   nil,   nil,   nil,   nil,   nil,
+   721,   nil,   nil,   721,   721,   721,   nil,   721,   721,   nil,
+   nil,   721,   721,   726,   726,   726,   nil,   726,   nil,   nil,
+   nil,   726,   726,   nil,   nil,   nil,   726,   nil,   726,   726,
+   726,   726,   726,   726,   726,   nil,   nil,   nil,   nil,   nil,
+   726,   726,   726,   726,   726,   726,   726,   nil,   nil,   726,
+   nil,   nil,   nil,   nil,   nil,   nil,   726,   nil,   nil,   726,
+   726,   726,   726,   726,   726,   726,   726,   nil,   726,   726,
+   726,   nil,   726,   726,   nil,   726,   726,   726,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   726,   nil,   nil,
+   726,   nil,   nil,   726,   726,   nil,   nil,   726,   nil,   nil,
+   nil,   nil,   nil,   726,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   726,   nil,   nil,   nil,   nil,   726,   726,   726,   726,
+   726,   726,   nil,   nil,   nil,   726,   726,   nil,   nil,   nil,
+   nil,   nil,   nil,   726,   nil,   nil,   726,   726,   726,   nil,
+   726,   726,   nil,   nil,   726,   726,   727,   727,   727,   nil,
+   727,   nil,   nil,   nil,   727,   727,   nil,   nil,   nil,   727,
+   nil,   727,   727,   727,   727,   727,   727,   727,   nil,   nil,
+   nil,   nil,   nil,   727,   727,   727,   727,   727,   727,   727,
+   nil,   nil,   727,   nil,   nil,   nil,   nil,   nil,   nil,   727,
+   nil,   nil,   727,   727,   727,   727,   727,   727,   727,   727,
+   nil,   727,   727,   727,   nil,   727,   727,   nil,   727,   727,
+   727,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   727,   nil,   nil,   727,   nil,   nil,   727,   727,   nil,   nil,
+   727,   nil,   nil,   nil,   nil,   nil,   727,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   727,   nil,   nil,   nil,   nil,   727,
+   727,   727,   727,   727,   727,   nil,   nil,   nil,   727,   727,
+   nil,   nil,   nil,   nil,   nil,   nil,   727,   nil,   nil,   727,
+   727,   727,   nil,   727,   727,   nil,   nil,   727,   727,   734,
+   734,   734,   nil,   734,   nil,   nil,   nil,   734,   734,   nil,
+   nil,   nil,   734,   nil,   734,   734,   734,   734,   734,   734,
+   734,   nil,   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,   nil,   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,   734,   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,   nil,   nil,   nil,   nil,   nil,   nil,   734,
+   nil,   nil,   734,   734,   734,   nil,   734,   734,   nil,   nil,
+   734,   734,   749,   749,   749,   nil,   749,   nil,   nil,   nil,
+   749,   749,   nil,   nil,   nil,   749,   nil,   749,   749,   749,
+   749,   749,   749,   749,   nil,   nil,   nil,   nil,   nil,   749,
+   749,   749,   749,   749,   749,   749,   nil,   nil,   749,   nil,
+   nil,   nil,   nil,   nil,   nil,   749,   nil,   nil,   749,   749,
+   749,   749,   749,   749,   749,   749,   nil,   749,   749,   749,
+   nil,   749,   749,   nil,   749,   749,   749,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   749,   nil,   nil,   749,
+   nil,   nil,   749,   749,   nil,   nil,   749,   nil,   nil,   nil,
+   nil,   nil,   749,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   749,   nil,   nil,   nil,   nil,   749,   749,   749,   749,   749,
+   749,   nil,   nil,   nil,   749,   749,   nil,   nil,   nil,   nil,
+   nil,   nil,   749,   nil,   nil,   749,   749,   749,   nil,   749,
+   749,   nil,   nil,   749,   749,   773,   773,   773,   nil,   773,
+   nil,   nil,   nil,   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,   773,   nil,   nil,   nil,   nil,   773,   773,
+   773,   773,   773,   773,   nil,   nil,   nil,   773,   773,   nil,
+   nil,   nil,   nil,   nil,   nil,   773,   nil,   nil,   773,   773,
+   773,   nil,   773,   773,   nil,   nil,   773,   773,   774,   774,
+   774,   nil,   774,   nil,   nil,   nil,   774,   774,   nil,   nil,
+   nil,   774,   nil,   774,   774,   774,   774,   774,   774,   774,
+   nil,   nil,   nil,   nil,   nil,   774,   774,   774,   774,   774,
+   774,   774,   nil,   nil,   774,   nil,   nil,   nil,   nil,   nil,
+   nil,   774,   nil,   nil,   774,   774,   774,   774,   774,   774,
+   774,   774,   nil,   774,   774,   774,   nil,   774,   774,   nil,
+   774,   774,   774,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   774,   nil,   nil,   774,   nil,   nil,   774,   774,
+   nil,   nil,   774,   nil,   nil,   nil,   nil,   nil,   774,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   774,   nil,   nil,   nil,
+   nil,   774,   774,   774,   774,   774,   774,   nil,   nil,   nil,
+   774,   774,   nil,   nil,   nil,   nil,   nil,   nil,   774,   nil,
+   nil,   774,   774,   774,   nil,   774,   774,   nil,   nil,   774,
+   774,   829,   829,   829,   nil,   829,   nil,   nil,   nil,   829,
+   829,   nil,   nil,   nil,   829,   nil,   829,   829,   829,   829,
+   829,   829,   829,   nil,   nil,   nil,   nil,   nil,   829,   829,
+   829,   829,   829,   829,   829,   nil,   nil,   829,   nil,   nil,
+   nil,   nil,   nil,   nil,   829,   nil,   nil,   829,   829,   829,
+   829,   829,   829,   829,   829,   829,   829,   829,   829,   nil,
+   829,   829,   nil,   829,   829,   829,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,   829,   nil,
+   nil,   829,   829,   nil,   nil,   829,   nil,   829,   nil,   829,
+   nil,   829,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   829,
+   nil,   nil,   nil,   nil,   829,   829,   829,   829,   829,   829,
+   nil,   nil,   nil,   829,   829,   nil,   nil,   nil,   nil,   nil,
+   nil,   829,   nil,   829,   829,   829,   829,   nil,   829,   829,
+   nil,   nil,   829,   829,   838,   838,   838,   nil,   838,   nil,
+   nil,   nil,   838,   838,   nil,   nil,   nil,   838,   nil,   838,
+   838,   838,   838,   838,   838,   838,   nil,   nil,   nil,   nil,
+   nil,   838,   838,   838,   838,   838,   838,   838,   nil,   nil,
+   838,   nil,   nil,   nil,   nil,   nil,   nil,   838,   nil,   nil,
+   838,   838,   838,   838,   838,   838,   838,   838,   nil,   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,
+   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   838,   nil,   nil,   838,   838,   838,
+   nil,   838,   838,   nil,   nil,   838,   838,   841,   841,   841,
+   nil,   841,   nil,   nil,   nil,   841,   841,   nil,   nil,   nil,
+   841,   nil,   841,   841,   841,   841,   841,   841,   841,   nil,
+   nil,   nil,   nil,   nil,   841,   841,   841,   841,   841,   841,
+   841,   nil,   nil,   841,   nil,   nil,   nil,   nil,   nil,   nil,
+   841,   nil,   nil,   841,   841,   841,   841,   841,   841,   841,
+   841,   nil,   841,   841,   841,   nil,   841,   841,   nil,   841,
+   841,   841,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   841,   nil,   nil,   841,   nil,   nil,   841,   841,   nil,
+   nil,   841,   nil,   nil,   nil,   nil,   nil,   841,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   841,   nil,   nil,   nil,   nil,
+   841,   841,   841,   841,   841,   841,   nil,   nil,   nil,   841,
+   841,   nil,   nil,   nil,   nil,   nil,   nil,   841,   nil,   nil,
+   841,   841,   841,   nil,   841,   841,   nil,   nil,   841,   841,
+   879,   879,   879,   nil,   879,   nil,   nil,   nil,   879,   879,
+   nil,   nil,   nil,   879,   nil,   879,   879,   879,   879,   879,
+   879,   879,   nil,   nil,   nil,   nil,   nil,   879,   879,   879,
+   879,   879,   879,   879,   nil,   nil,   879,   nil,   nil,   nil,
+   nil,   nil,   nil,   879,   nil,   nil,   879,   879,   879,   879,
+   879,   879,   879,   879,   nil,   879,   879,   879,   nil,   879,
+   879,   nil,   879,   879,   879,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   879,   nil,   nil,   879,   nil,   nil,
+   879,   879,   nil,   nil,   879,   nil,   nil,   nil,   nil,   nil,
+   879,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   879,   nil,
+   nil,   nil,   nil,   879,   879,   879,   879,   879,   879,   nil,
+   nil,   nil,   879,   879,   nil,   nil,   nil,   nil,   nil,   nil,
+   879,   nil,   nil,   879,   879,   879,   nil,   879,   879,   nil,
+   nil,   879,   879,   892,   892,   892,   nil,   892,   nil,   nil,
+   nil,   892,   892,   nil,   nil,   nil,   892,   nil,   892,   892,
+   892,   892,   892,   892,   892,   nil,   nil,   nil,   nil,   nil,
+   892,   892,   892,   892,   892,   892,   892,   nil,   nil,   892,
+   nil,   nil,   nil,   nil,   nil,   nil,   892,   nil,   nil,   892,
+   892,   892,   892,   892,   892,   892,   892,   nil,   892,   892,
+   892,   nil,   892,   892,   nil,   892,   892,   892,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   892,   nil,   nil,
+   892,   nil,   nil,   892,   892,   nil,   nil,   892,   nil,   nil,
+   nil,   nil,   nil,   892,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   892,   nil,   nil,   nil,   nil,   892,   892,   892,   892,
+   892,   892,   nil,   nil,   nil,   892,   892,   nil,   nil,   nil,
+   nil,   nil,   nil,   892,   nil,   nil,   892,   892,   892,   nil,
+   892,   892,   nil,   nil,   892,   892,   908,   908,   908,   nil,
+   908,   nil,   nil,   nil,   908,   908,   nil,   nil,   nil,   908,
+   nil,   908,   908,   908,   908,   908,   908,   908,   nil,   nil,
+   nil,   nil,   nil,   908,   908,   908,   908,   908,   908,   908,
+   nil,   nil,   908,   nil,   nil,   nil,   nil,   nil,   nil,   908,
+   nil,   nil,   908,   908,   908,   908,   908,   908,   908,   908,
+   nil,   908,   908,   908,   nil,   908,   908,   nil,   908,   908,
+   908,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   908,   nil,   nil,   908,   nil,   nil,   908,   908,   nil,   nil,
+   908,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   908,   nil,   nil,   nil,   nil,   908,
+   908,   908,   908,   908,   908,   nil,   nil,   nil,   908,   908,
+   nil,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   908,
+   908,   908,   nil,   908,   908,   nil,   nil,   908,   908,   916,
+   916,   916,   nil,   916,   nil,   nil,   nil,   916,   916,   nil,
+   nil,   nil,   916,   nil,   916,   916,   916,   916,   916,   916,
+   916,   nil,   nil,   nil,   nil,   nil,   916,   916,   916,   916,
+   916,   916,   916,   nil,   nil,   916,   nil,   nil,   nil,   nil,
+   nil,   nil,   916,   nil,   nil,   916,   916,   916,   916,   916,
+   916,   916,   916,   nil,   916,   916,   916,   nil,   916,   916,
+   nil,   916,   916,   916,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   916,   nil,   nil,   916,   nil,   nil,   916,
+   916,   nil,   nil,   916,   nil,   nil,   nil,   nil,   nil,   916,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   916,   nil,   nil,
+   nil,   nil,   916,   916,   916,   916,   916,   916,   nil,   nil,
+   nil,   916,   916,   nil,   nil,   nil,   nil,   nil,   nil,   916,
+   nil,   nil,   916,   916,   916,   nil,   916,   916,   nil,   nil,
+   916,   916,   928,   928,   928,   nil,   928,   nil,   nil,   nil,
+   928,   928,   nil,   nil,   nil,   928,   nil,   928,   928,   928,
+   928,   928,   928,   928,   nil,   nil,   nil,   nil,   nil,   928,
+   928,   928,   928,   928,   928,   928,   nil,   nil,   928,   nil,
+   nil,   nil,   nil,   nil,   nil,   928,   nil,   nil,   928,   928,
+   928,   928,   928,   928,   928,   928,   nil,   928,   928,   928,
+   nil,   928,   928,   nil,   928,   928,   928,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   928,   nil,   nil,   928,
+   nil,   nil,   928,   928,   nil,   nil,   928,   nil,   nil,   nil,
+   nil,   nil,   928,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   928,   nil,   nil,   nil,   nil,   928,   928,   928,   928,   928,
+   928,   nil,   nil,   nil,   928,   928,   nil,   nil,   nil,   nil,
+   nil,   nil,   928,   nil,   nil,   928,   928,   928,   nil,   928,
+   928,   nil,   nil,   928,   928,   929,   929,   929,   nil,   929,
+   nil,   nil,   nil,   929,   929,   nil,   nil,   nil,   929,   nil,
+   929,   929,   929,   929,   929,   929,   929,   nil,   nil,   nil,
+   nil,   nil,   929,   929,   929,   929,   929,   929,   929,   nil,
+   nil,   929,   nil,   nil,   nil,   nil,   nil,   nil,   929,   nil,
+   nil,   929,   929,   929,   929,   929,   929,   929,   929,   nil,
+   929,   929,   929,   nil,   929,   929,   nil,   929,   929,   929,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   929,
+   nil,   nil,   929,   nil,   nil,   929,   929,   nil,   nil,   929,
+   nil,   nil,   nil,   nil,   nil,   929,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   929,   nil,   nil,   nil,   nil,   929,   929,
+   929,   929,   929,   929,   nil,   nil,   nil,   929,   929,   nil,
+   nil,   nil,   nil,   nil,   nil,   929,   nil,   nil,   929,   929,
+   929,   nil,   929,   929,   nil,   nil,   929,   929,   960,   960,
+   960,   nil,   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,
+   nil,   960,   nil,   nil,   960,   960,   960,   960,   960,   960,
+   960,   960,   nil,   960,   960,   960,   nil,   960,   960,   nil,
+   960,   960,   960,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   960,   nil,   nil,   960,   nil,   nil,   960,   960,
+   nil,   nil,   960,   nil,   nil,   nil,   nil,   nil,   960,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   960,   nil,   nil,   nil,
+   nil,   960,   960,   960,   960,   960,   960,   nil,   nil,   nil,
+   960,   960,   nil,   nil,   nil,   nil,   nil,   nil,   960,   nil,
+   nil,   960,   960,   960,   nil,   960,   960,   nil,   nil,   960,
+   960,   961,   961,   961,   nil,   961,   nil,   nil,   nil,   961,
+   961,   nil,   nil,   nil,   961,   nil,   961,   961,   961,   961,
+   961,   961,   961,   nil,   nil,   nil,   nil,   nil,   961,   961,
+   961,   961,   961,   961,   961,   nil,   nil,   961,   nil,   nil,
+   nil,   nil,   nil,   nil,   961,   nil,   nil,   961,   961,   961,
+   961,   961,   961,   961,   961,   nil,   961,   961,   961,   nil,
+   961,   961,   nil,   961,   961,   961,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   961,   nil,   nil,   961,   nil,
+   nil,   961,   961,   nil,   nil,   961,   nil,   nil,   nil,   nil,
+   nil,   961,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   961,
+   nil,   nil,   nil,   nil,   961,   961,   961,   961,   961,   961,
+   nil,   nil,   nil,   961,   961,   nil,   nil,   nil,   nil,   nil,
+   nil,   961,   nil,   nil,   961,   961,   961,   nil,   961,   961,
+   nil,   nil,   961,   961,   962,   962,   962,   nil,   962,   nil,
+   nil,   nil,   962,   962,   nil,   nil,   nil,   962,   nil,   962,
+   962,   962,   962,   962,   962,   962,   nil,   nil,   nil,   nil,
+   nil,   962,   962,   962,   962,   962,   962,   962,   nil,   nil,
+   962,   nil,   nil,   nil,   nil,   nil,   nil,   962,   nil,   nil,
+   962,   962,   962,   962,   962,   962,   962,   962,   nil,   962,
+   962,   962,   nil,   962,   962,   nil,   962,   962,   962,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   962,   nil,
+   nil,   962,   nil,   nil,   962,   962,   nil,   nil,   962,   nil,
+   nil,   nil,   nil,   nil,   962,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   962,   nil,   nil,   nil,   nil,   962,   962,   962,
+   962,   962,   962,   nil,   nil,   nil,   962,   962,   nil,   nil,
+   nil,   nil,   nil,   nil,   962,   nil,   nil,   962,   962,   962,
+   nil,   962,   962,   nil,   nil,   962,   962,   963,   963,   963,
+   nil,   963,   nil,   nil,   nil,   963,   963,   nil,   nil,   nil,
+   963,   nil,   963,   963,   963,   963,   963,   963,   963,   nil,
+   nil,   nil,   nil,   nil,   963,   963,   963,   963,   963,   963,
+   963,   nil,   nil,   963,   nil,   nil,   nil,   nil,   nil,   nil,
+   963,   nil,   nil,   963,   963,   963,   963,   963,   963,   963,
+   963,   nil,   963,   963,   963,   nil,   963,   963,   nil,   963,
+   963,   963,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   963,   nil,   nil,   963,   nil,   nil,   963,   963,   nil,
+   nil,   963,   nil,   nil,   nil,   nil,   nil,   963,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   963,   nil,   nil,   nil,   nil,
+   963,   963,   963,   963,   963,   963,   nil,   nil,   nil,   963,
+   963,   nil,   nil,   nil,   nil,   nil,   nil,   963,   nil,   nil,
+   963,   963,   963,   nil,   963,   963,   nil,   nil,   963,   963,
+   964,   964,   964,   nil,   964,   nil,   nil,   nil,   964,   964,
+   nil,   nil,   nil,   964,   nil,   964,   964,   964,   964,   964,
+   964,   964,   nil,   nil,   nil,   nil,   nil,   964,   964,   964,
+   964,   964,   964,   964,   nil,   nil,   964,   nil,   nil,   nil,
+   nil,   nil,   nil,   964,   nil,   nil,   964,   964,   964,   964,
+   964,   964,   964,   964,   nil,   964,   964,   964,   nil,   964,
+   964,   nil,   964,   964,   964,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   964,   nil,   nil,   964,   nil,   nil,
+   964,   964,   nil,   nil,   964,   nil,   nil,   nil,   nil,   nil,
+   964,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,   nil,
+   nil,   nil,   nil,   964,   964,   964,   964,   964,   964,   nil,
+   nil,   nil,   964,   964,   nil,   nil,   nil,   nil,   nil,   nil,
+   964,   nil,   nil,   964,   964,   964,   nil,   964,   964,   nil,
+   nil,   964,   964,   965,   965,   965,   nil,   965,   nil,   nil,
+   nil,   965,   965,   nil,   nil,   nil,   965,   nil,   965,   965,
+   965,   965,   965,   965,   965,   nil,   nil,   nil,   nil,   nil,
+   965,   965,   965,   965,   965,   965,   965,   nil,   nil,   965,
+   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,   nil,   965,
+   965,   965,   965,   965,   965,   965,   965,   nil,   965,   965,
+   965,   nil,   965,   965,   nil,   965,   965,   965,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,   nil,
+   965,   nil,   nil,   965,   965,   nil,   nil,   965,   nil,   nil,
+   nil,   nil,   nil,   965,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   965,   nil,   nil,   nil,   nil,   965,   965,   965,   965,
+   965,   965,   nil,   nil,   nil,   965,   965,   nil,   nil,   nil,
+   nil,   nil,   nil,   965,   nil,   nil,   965,   965,   965,   nil,
+   965,   965,   nil,   nil,   965,   965,   999,   999,   999,   nil,
+   999,   nil,   nil,   nil,   999,   999,   nil,   nil,   nil,   999,
+   nil,   999,   999,   999,   999,   999,   999,   999,   nil,   nil,
+   nil,   nil,   nil,   999,   999,   999,   999,   999,   999,   999,
+   nil,   nil,   999,   nil,   nil,   nil,   nil,   nil,   nil,   999,
+   nil,   nil,   999,   999,   999,   999,   999,   999,   999,   999,
+   nil,   999,   999,   999,   nil,   999,   999,   nil,   999,   999,
+   999,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   999,   nil,   nil,   999,   nil,   nil,   999,   999,   nil,   nil,
+   999,   nil,   nil,   nil,   nil,   nil,   999,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   999,   nil,   nil,   nil,   nil,   999,
+   999,   999,   999,   999,   999,   nil,   nil,   nil,   999,   999,
+   nil,   nil,   nil,   nil,   nil,   nil,   999,   nil,   nil,   999,
+   999,   999,   nil,   999,   999,   nil,   nil,   999,   999,  1005,
+  1005,  1005,   nil,  1005,   nil,   nil,   nil,  1005,  1005,   nil,
+   nil,   nil,  1005,   nil,  1005,  1005,  1005,  1005,  1005,  1005,
+  1005,   nil,   nil,   nil,   nil,   nil,  1005,  1005,  1005,  1005,
+  1005,  1005,  1005,   nil,   nil,  1005,   nil,   nil,   nil,   nil,
+   nil,   nil,  1005,   nil,   nil,  1005,  1005,  1005,  1005,  1005,
+  1005,  1005,  1005,   nil,  1005,  1005,  1005,   nil,  1005,  1005,
+   nil,  1005,  1005,  1005,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1005,   nil,   nil,  1005,   nil,   nil,  1005,
+  1005,   nil,   nil,  1005,   nil,   nil,   nil,   nil,   nil,  1005,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1005,   nil,   nil,
+   nil,   nil,  1005,  1005,  1005,  1005,  1005,  1005,   nil,   nil,
+   nil,  1005,  1005,   nil,   nil,   nil,   nil,   nil,   nil,  1005,
+   nil,   nil,  1005,  1005,  1005,   nil,  1005,  1005,   nil,   nil,
+  1005,  1005,  1031,  1031,  1031,   nil,  1031,   nil,   nil,   nil,
+  1031,  1031,   nil,   nil,   nil,  1031,   nil,  1031,  1031,  1031,
+  1031,  1031,  1031,  1031,   nil,   nil,   nil,   nil,   nil,  1031,
+  1031,  1031,  1031,  1031,  1031,  1031,   nil,   nil,  1031,   nil,
+   nil,   nil,   nil,   nil,   nil,  1031,   nil,   nil,  1031,  1031,
+  1031,  1031,  1031,  1031,  1031,  1031,   nil,  1031,  1031,  1031,
+   nil,  1031,  1031,   nil,  1031,  1031,  1031,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1031,   nil,   nil,  1031,
+   nil,   nil,  1031,  1031,   nil,   nil,  1031,   nil,   nil,   nil,
+   nil,   nil,  1031,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1031,   nil,   nil,   nil,   nil,  1031,  1031,  1031,  1031,  1031,
+  1031,   nil,   nil,   nil,  1031,  1031,   nil,   nil,   nil,   nil,
+   nil,   nil,  1031,   nil,   nil,  1031,  1031,  1031,   nil,  1031,
+  1031,   nil,   nil,  1031,  1031,  1040,  1040,  1040,   nil,  1040,
+   nil,   nil,   nil,  1040,  1040,   nil,   nil,   nil,  1040,   nil,
+  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,   nil,   nil,
+   nil,   nil,  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,
+   nil,  1040,   nil,   nil,   nil,   nil,   nil,   nil,  1040,   nil,
+   nil,  1040,  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,
+  1040,  1040,  1040,   nil,  1040,  1040,   nil,  1040,  1040,  1040,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1040,
+   nil,   nil,  1040,   nil,   nil,  1040,  1040,   nil,   nil,  1040,
+   nil,  1040,   nil,   nil,   nil,  1040,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1040,   nil,   nil,   nil,   nil,  1040,  1040,
+  1040,  1040,  1040,  1040,   nil,   nil,   nil,  1040,  1040,   nil,
+   nil,   nil,   nil,   nil,   nil,  1040,   nil,   nil,  1040,  1040,
+  1040,   nil,  1040,  1040,   nil,   nil,  1040,  1040,  1064,  1064,
+  1064,   nil,  1064,   nil,   nil,   nil,  1064,  1064,   nil,   nil,
+   nil,  1064,   nil,  1064,  1064,  1064,  1064,  1064,  1064,  1064,
+   nil,   nil,   nil,   nil,   nil,  1064,  1064,  1064,  1064,  1064,
+  1064,  1064,   nil,   nil,  1064,   nil,   nil,   nil,   nil,   nil,
+   nil,  1064,   nil,   nil,  1064,  1064,  1064,  1064,  1064,  1064,
+  1064,  1064,  1064,  1064,  1064,  1064,   nil,  1064,  1064,   nil,
+  1064,  1064,  1064,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1064,   nil,   nil,  1064,   nil,   nil,  1064,  1064,
+   nil,   nil,  1064,   nil,   nil,   nil,  1064,   nil,  1064,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1064,   nil,   nil,   nil,
+   nil,  1064,  1064,  1064,  1064,  1064,  1064,   nil,   nil,   nil,
+  1064,  1064,   nil,   nil,   nil,   nil,   nil,   nil,  1064,   nil,
+  1064,  1064,  1064,  1064,   nil,  1064,  1064,   nil,   nil,  1064,
+  1064,  1088,  1088,  1088,   nil,  1088,   nil,   nil,   nil,  1088,
+  1088,   nil,   nil,   nil,  1088,   nil,  1088,  1088,  1088,  1088,
+  1088,  1088,  1088,   nil,   nil,   nil,   nil,   nil,  1088,  1088,
+  1088,  1088,  1088,  1088,  1088,   nil,   nil,  1088,   nil,   nil,
+   nil,   nil,   nil,   nil,  1088,   nil,   nil,  1088,  1088,  1088,
+  1088,  1088,  1088,  1088,  1088,   nil,  1088,  1088,  1088,   nil,
+  1088,  1088,   nil,  1088,  1088,  1088,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1088,   nil,   nil,  1088,   nil,
+   nil,  1088,  1088,   nil,   nil,  1088,   nil,   nil,   nil,   nil,
+   nil,  1088,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1088,
+   nil,   nil,   nil,   nil,  1088,  1088,  1088,  1088,  1088,  1088,
+   nil,   nil,   nil,  1088,  1088,   nil,   nil,   nil,   nil,   nil,
+   nil,  1088,   nil,   nil,  1088,  1088,  1088,   nil,  1088,  1088,
+   nil,   nil,  1088,  1088,  1145,  1145,  1145,   nil,  1145,   nil,
+   nil,   nil,  1145,  1145,   nil,   nil,   nil,  1145,   nil,  1145,
+  1145,  1145,  1145,  1145,  1145,  1145,   nil,   nil,   nil,   nil,
+   nil,  1145,  1145,  1145,  1145,  1145,  1145,  1145,   nil,   nil,
+  1145,   nil,   nil,   nil,   nil,   nil,   nil,  1145,   nil,   nil,
+  1145,  1145,  1145,  1145,  1145,  1145,  1145,  1145,   nil,  1145,
+  1145,  1145,   nil,  1145,  1145,   nil,  1145,  1145,  1145,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1145,   nil,
+   nil,  1145,   nil,   nil,  1145,  1145,   nil,   nil,  1145,   nil,
+   nil,   nil,   nil,   nil,  1145,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1145,   nil,   nil,   nil,   nil,  1145,  1145,  1145,
+  1145,  1145,  1145,   nil,   nil,   nil,  1145,  1145,   nil,   nil,
+   nil,   nil,   nil,   nil,  1145,   nil,   nil,  1145,  1145,  1145,
+   nil,  1145,  1145,   nil,   nil,  1145,  1145,  1204,  1204,  1204,
+   nil,  1204,   nil,   nil,   nil,  1204,  1204,   nil,   nil,   nil,
+  1204,   nil,  1204,  1204,  1204,  1204,  1204,  1204,  1204,   nil,
+   nil,   nil,   nil,   nil,  1204,  1204,  1204,  1204,  1204,  1204,
+  1204,   nil,   nil,  1204,   nil,   nil,   nil,   nil,   nil,   nil,
+  1204,   nil,   nil,  1204,  1204,  1204,  1204,  1204,  1204,  1204,
+  1204,   nil,  1204,  1204,  1204,   nil,  1204,  1204,   nil,  1204,
+  1204,  1204,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1204,   nil,   nil,  1204,   nil,   nil,  1204,  1204,   nil,
+   nil,  1204,   nil,   nil,   nil,   nil,   nil,  1204,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1204,   nil,   nil,   nil,   nil,
+  1204,  1204,  1204,  1204,  1204,  1204,   nil,   nil,   nil,  1204,
+  1204,   nil,   nil,   nil,   nil,   nil,   nil,  1204,   nil,   nil,
+  1204,  1204,  1204,   nil,  1204,  1204,   nil,   nil,  1204,  1204,
+  1205,  1205,  1205,   nil,  1205,   nil,   nil,   nil,  1205,  1205,
+   nil,   nil,   nil,  1205,   nil,  1205,  1205,  1205,  1205,  1205,
+  1205,  1205,   nil,   nil,   nil,   nil,   nil,  1205,  1205,  1205,
+  1205,  1205,  1205,  1205,   nil,   nil,  1205,   nil,   nil,   nil,
+   nil,   nil,   nil,  1205,   nil,   nil,  1205,  1205,  1205,  1205,
+  1205,  1205,  1205,  1205,   nil,  1205,  1205,  1205,   nil,  1205,
+  1205,   nil,  1205,  1205,  1205,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1205,   nil,   nil,  1205,   nil,   nil,
+  1205,  1205,   nil,   nil,  1205,   nil,   nil,   nil,   nil,   nil,
+  1205,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1205,   nil,
+   nil,   nil,   nil,  1205,  1205,  1205,  1205,  1205,  1205,   nil,
+   nil,   nil,  1205,  1205,   nil,   nil,   nil,   nil,   nil,   nil,
+  1205,   nil,   nil,  1205,  1205,  1205,   nil,  1205,  1205,   nil,
+   nil,  1205,  1205,  1219,  1219,  1219,   nil,  1219,   nil,   nil,
+   nil,  1219,  1219,   nil,   nil,   nil,  1219,   nil,  1219,  1219,
+  1219,  1219,  1219,  1219,  1219,   nil,   nil,   nil,   nil,   nil,
+  1219,  1219,  1219,  1219,  1219,  1219,  1219,   nil,   nil,  1219,
+   nil,   nil,   nil,   nil,   nil,   nil,  1219,   nil,   nil,  1219,
+  1219,  1219,  1219,  1219,  1219,  1219,  1219,  1219,  1219,  1219,
+  1219,   nil,  1219,  1219,   nil,  1219,  1219,  1219,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1219,   nil,   nil,
+  1219,   nil,   nil,  1219,  1219,   nil,   nil,  1219,   nil,  1219,
+   nil,  1219,   nil,  1219,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1219,   nil,   nil,   nil,   nil,  1219,  1219,  1219,  1219,
+  1219,  1219,   nil,   nil,   nil,  1219,  1219,   nil,   nil,   nil,
+   nil,   nil,   nil,  1219,   nil,  1219,  1219,  1219,  1219,   nil,
+  1219,  1219,   nil,   nil,  1219,  1219,    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,   nil,    40,    40,    40,    40,    40,    40,    40,
+   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,    40,
+   nil,   nil,    40,    40,    40,    40,    40,    40,    40,    40,
+   nil,    40,    40,    40,   nil,    40,    40,   nil,   nil,   nil,
+    40,   nil,   nil,   nil,   nil,   nil,  1075,   nil,  1075,  1075,
+  1075,  1075,  1075,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    40,   nil,  1075,    40,   nil,   nil,    40,    40,   nil,   nil,
+    40,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1075,   nil,   nil,   nil,   nil,    40,
+    40,    40,    40,    40,    40,  1075,  1075,   nil,    40,    40,
+   nil,   nil,   nil,   nil,   nil,   nil,    40,   nil,   nil,    40,
+    40,    40,   nil,    40,    40,    41,    41,    41,   nil,    41,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,    41,  1075,
+    41,    41,    41,    41,    41,    41,    41,   nil,   nil,  1075,
+   nil,   nil,    41,    41,    41,    41,    41,    41,    41,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,    41,    41,    41,    41,    41,    41,    41,    41,   nil,
+    41,    41,    41,   nil,    41,    41,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,  1077,   nil,  1077,  1077,  1077,
+  1077,  1077,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   nil,  1077,    41,   nil,   nil,    41,    41,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1077,   nil,   nil,   nil,   nil,    41,    41,
+    41,    41,    41,    41,  1077,  1077,   nil,    41,    41,   nil,
+   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,    41,    41,
+    41,   nil,    41,    41,    77,    77,    77,   nil,    77,   nil,
+   nil,   nil,    77,    77,   nil,   nil,   nil,    77,  1077,    77,
+    77,    77,    77,    77,    77,    77,   nil,   nil,  1077,   nil,
+   nil,    77,    77,    77,    77,    77,    77,    77,   nil,   nil,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
+    77,    77,    77,    77,    77,    77,    77,    77,   nil,    77,
+    77,    77,   nil,    77,    77,   nil,   nil,   nil,    77,   nil,
+   nil,   nil,   nil,   nil,  1079,   nil,  1079,  1079,  1079,  1079,
+  1079,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
+  1079,    77,   nil,   nil,    77,    77,   nil,   nil,    77,   nil,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1079,   nil,   nil,   nil,   nil,    77,    77,    77,
+    77,    77,    77,  1079,  1079,   nil,    77,    77,   nil,   nil,
+   nil,   nil,   nil,   nil,    77,   nil,   nil,    77,    77,    77,
+   nil,    77,    77,    78,    78,    78,   nil,    78,   nil,   nil,
+   nil,    78,    78,   nil,   nil,   nil,    78,  1079,    78,    78,
+    78,    78,    78,    78,    78,   nil,   nil,  1079,   nil,   nil,
+    78,    78,    78,    78,    78,    78,    78,   nil,   nil,    78,
+   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,    78,
+    78,    78,    78,    78,    78,    78,    78,   nil,    78,    78,
+    78,   nil,    78,    78,   nil,   nil,   nil,    78,   nil,   nil,
+   nil,   nil,   nil,  1223,   nil,  1223,  1223,  1223,  1223,  1223,
+   nil,   nil,   nil,   nil,    78,   nil,   nil,    78,   nil,  1223,
+    78,   nil,   nil,    78,    78,   nil,   nil,    78,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1223,   nil,   nil,   nil,   nil,    78,    78,    78,    78,
+    78,    78,  1223,  1223,   nil,    78,    78,   nil,   nil,   nil,
+   nil,   nil,   nil,    78,   nil,   nil,    78,    78,    78,   nil,
+    78,    78,    79,    79,    79,   nil,    79,   nil,   nil,   nil,
+    79,    79,   nil,   nil,   nil,    79,  1223,    79,    79,    79,
+    79,    79,    79,    79,   nil,   nil,  1223,   nil,   nil,    79,
+    79,    79,    79,    79,    79,    79,   nil,   nil,    79,   nil,
+   nil,   nil,   nil,   nil,   nil,    79,   nil,   nil,    79,    79,
+    79,    79,    79,    79,    79,    79,   nil,    79,    79,    79,
+   nil,    79,    79,   nil,   nil,   nil,    79,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    79,   nil,   nil,    79,
+   nil,   nil,    79,    79,   nil,   nil,    79,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    79,    79,    79,    79,    79,
+    79,   nil,   nil,   nil,    79,    79,   nil,   nil,   nil,   nil,
+   nil,   nil,    79,   nil,   nil,    79,    79,    79,   nil,    79,
+    79,   351,   351,   351,   nil,   351,   nil,   nil,   nil,   351,
+   351,   nil,   nil,   nil,   351,   nil,   351,   351,   351,   351,
+   351,   351,   351,   nil,   nil,   nil,   nil,   nil,   351,   351,
+   351,   351,   351,   351,   351,   nil,   nil,   351,   nil,   nil,
+   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,   351,   351,
+   351,   351,   351,   351,   351,   nil,   351,   351,   351,   nil,
+   351,   351,   nil,   nil,   nil,   351,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,   nil,
+   nil,   351,   351,   nil,   nil,   351,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   351,   351,   351,   351,   351,   351,
+   nil,   nil,   nil,   351,   351,   nil,   nil,   nil,   351,   nil,
+   nil,   351,   nil,   nil,   351,   351,   351,   nil,   351,   351,
+   370,   370,   370,   nil,   370,   nil,   nil,   nil,   370,   370,
+   nil,   nil,   nil,   370,   nil,   370,   370,   370,   370,   370,
+   370,   370,   nil,   nil,   nil,   nil,   nil,   370,   370,   370,
+   370,   370,   370,   370,   nil,   nil,   370,   nil,   nil,   nil,
+   nil,   nil,   nil,   370,   nil,   nil,   370,   370,   370,   370,
+   370,   370,   370,   370,   nil,   370,   370,   370,   nil,   370,
+   370,   nil,   nil,   nil,   370,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   370,   nil,   nil,   370,   nil,   nil,
+   370,   370,   nil,   nil,   370,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   370,   370,   370,   370,   370,   370,   nil,
+   nil,   nil,   370,   370,   nil,   nil,   nil,   nil,   nil,   nil,
+   370,   nil,   nil,   370,   370,   370,   nil,   370,   370,   618,
+   618,   618,   nil,   618,   nil,   nil,   nil,   618,   618,   nil,
+   nil,   nil,   618,   nil,   618,   618,   618,   618,   618,   618,
+   618,   nil,   nil,   nil,   nil,   nil,   618,   618,   618,   618,
+   618,   618,   618,   nil,   nil,   618,   nil,   nil,   nil,   nil,
+   nil,   nil,   618,   nil,   nil,   618,   618,   618,   618,   618,
+   618,   618,   618,   nil,   618,   618,   618,   nil,   618,   618,
+   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   618,   nil,   nil,   618,   nil,   nil,   618,
+   618,   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   618,   618,   618,   618,   618,   618,   nil,   nil,
+   nil,   618,   618,   nil,   nil,   nil,   nil,   nil,   nil,   618,
+   nil,   nil,   618,   618,   618,   nil,   618,   618,   627,   627,
+   627,   nil,   627,   nil,   nil,   nil,   627,   627,   nil,   nil,
+   nil,   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,   627,   627,   627,   627,
+   627,   627,   nil,   627,   627,   627,   nil,   627,   627,   nil,
+   nil,   nil,   627,   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,   627,
+   nil,   nil,   627,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   627,   627,   627,   627,   627,   627,   nil,   nil,   nil,
+   627,   627,   nil,   nil,   nil,   nil,   nil,   nil,   627,   nil,
+   nil,   627,   627,   627,   nil,   627,   627,   845,   845,   845,
+   nil,   845,   nil,   nil,   nil,   845,   845,   nil,   nil,   nil,
+   845,   nil,   845,   845,   845,   845,   845,   845,   845,   nil,
+   nil,   nil,   nil,   nil,   845,   845,   845,   845,   845,   845,
+   845,   nil,   nil,   845,   nil,   nil,   nil,   nil,   nil,   nil,
+   845,   nil,   nil,   845,   845,   845,   845,   845,   845,   845,
+   845,   nil,   845,   845,   845,   nil,   845,   845,   nil,   nil,
+   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   845,   845,   845,   845,   845,   845,   nil,   nil,   nil,   845,
+   845,   nil,   nil,   nil,   nil,   nil,   nil,   845,   nil,   nil,
+   845,   845,   845,   nil,   845,   845,   856,   856,   856,   nil,
+   856,   nil,   nil,   nil,   856,   856,   nil,   nil,   nil,   856,
+   nil,   856,   856,   856,   856,   856,   856,   856,   nil,   nil,
+   nil,   nil,   nil,   856,   856,   856,   856,   856,   856,   856,
+   nil,   nil,   856,   nil,   nil,   nil,   nil,   nil,   nil,   856,
+   nil,   nil,   856,   856,   856,   856,   856,   856,   856,   856,
+   nil,   856,   856,   856,   nil,   856,   856,   nil,   nil,   nil,
+   856,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   856,   nil,   nil,   856,   nil,   nil,   856,   856,   nil,   nil,
+   856,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   856,
+   856,   856,   856,   856,   856,   nil,   nil,   nil,   856,   856,
+   nil,   nil,   nil,   nil,   nil,   nil,   856,   nil,   nil,   856,
+   856,   856,   nil,   856,   856,  1070,  1070,  1070,   nil,  1070,
+   nil,   nil,   nil,  1070,  1070,   nil,   nil,   nil,  1070,   nil,
+  1070,  1070,  1070,  1070,  1070,  1070,  1070,   nil,   nil,   nil,
+   nil,   nil,  1070,  1070,  1070,  1070,  1070,  1070,  1070,   nil,
+   nil,  1070,   nil,   nil,   nil,   nil,   nil,   nil,  1070,   nil,
+   nil,  1070,  1070,  1070,  1070,  1070,  1070,  1070,  1070,   nil,
+  1070,  1070,  1070,   nil,  1070,  1070,   nil,   nil,   nil,  1070,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1070,
+   nil,   nil,  1070,   nil,   nil,  1070,  1070,   nil,   nil,  1070,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1070,  1070,
+  1070,  1070,  1070,  1070,   nil,   nil,   nil,  1070,  1070,   nil,
+   nil,   nil,   nil,   nil,   nil,  1070,   nil,   nil,  1070,  1070,
+  1070,   nil,  1070,  1070,  1131,  1131,  1131,   nil,  1131,   nil,
+   nil,   nil,  1131,  1131,   nil,   nil,   nil,  1131,   nil,  1131,
+  1131,  1131,  1131,  1131,  1131,  1131,   nil,   nil,   nil,   nil,
+   nil,  1131,  1131,  1131,  1131,  1131,  1131,  1131,   nil,   nil,
+  1131,   nil,   nil,   nil,   nil,   nil,   nil,  1131,   nil,   nil,
+  1131,  1131,  1131,  1131,  1131,  1131,  1131,  1131,   nil,  1131,
+  1131,  1131,   nil,  1131,  1131,   nil,   nil,   nil,  1131,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1131,   nil,
+   nil,  1131,   nil,   nil,  1131,  1131,   nil,   nil,  1131,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1131,  1131,  1131,
+  1131,  1131,  1131,   nil,   nil,   nil,  1131,  1131,   nil,   nil,
+   nil,   nil,   nil,   nil,  1131,   nil,   nil,  1131,  1131,  1131,
+   nil,  1131,  1131,  1198,  1198,  1198,   nil,  1198,   nil,   nil,
+   nil,  1198,  1198,   nil,   nil,   nil,  1198,   nil,  1198,  1198,
+  1198,  1198,  1198,  1198,  1198,   nil,   nil,   nil,   nil,   nil,
+  1198,  1198,  1198,  1198,  1198,  1198,  1198,   nil,   nil,  1198,
+   nil,   nil,   nil,   nil,   nil,   nil,  1198,   nil,   nil,  1198,
+  1198,  1198,  1198,  1198,  1198,  1198,  1198,   nil,  1198,  1198,
+  1198,   nil,  1198,  1198,   nil,   nil,   nil,  1198,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1198,   nil,   nil,
+  1198,   nil,   nil,  1198,  1198,   nil,   nil,  1198,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1198,  1198,  1198,  1198,
+  1198,  1198,   nil,   nil,   nil,  1198,  1198,   nil,   nil,   nil,
+   nil,   nil,   nil,  1198,   nil,   nil,  1198,  1198,  1198,   nil,
+  1198,  1198,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
+   nil,   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,   nil,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,
+    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,
+   nil,    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
+   nil,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    11,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
+   nil,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,   nil,   nil,   nil,   nil,   nil,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,   nil,   nil,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,
+    12,    12,    12,    12,    12,    12,    12,   nil,   nil,    12,
+    12,   nil,   nil,   nil,    12,    12,    12,    12,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    27,    27,
+    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
+    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
+    27,    27,   nil,   nil,   nil,    27,    27,    27,    27,    27,
+    27,    27,    27,    27,    27,   nil,   nil,   nil,   nil,   nil,
+    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
+    27,    27,   nil,    27,   nil,   nil,   nil,   nil,   nil,   nil,
+    27,    27,   nil,    27,    27,    27,    27,    27,    27,    27,
+   nil,   nil,    27,    27,   nil,   nil,   nil,    27,    27,    27,
+    27,   nil,   nil,   nil,   nil,   nil,    27,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    27,    27,   nil,    27,    27,    27,
+    27,    27,    27,    27,    27,    27,    27,    27,   nil,   nil,
+    27,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    27,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   nil,   nil,   nil,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   nil,   nil,
+   nil,   nil,   nil,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   nil,   109,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,   109,   nil,   109,   109,   109,   109,
+   109,   109,   109,   nil,   nil,   109,   109,   nil,   nil,   nil,
+   109,   109,   109,   109,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,   109,   nil,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   nil,   nil,   109,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,   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,   452,   452,   452,   452,   452,   452,   452,   452,   452,
+   452,   nil,   nil,   nil,   nil,   nil,   452,   452,   452,   452,
+   452,   452,   452,   452,   452,   nil,   nil,   452,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   452,   452,   nil,   452,
+   452,   452,   452,   452,   452,   452,   nil,   nil,   452,   452,
+   nil,   nil,   nil,   452,   452,   452,   452,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   452,   452,   nil,   452,   452,   452,   452,   452,   452,   452,
+   452,   452,   452,   452,   nil,   nil,   452,   452,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   452,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   452,   706,   706,   706,
+   706,   706,   706,   706,   706,   706,   706,   706,   706,   706,
+   706,   706,   706,   706,   706,   706,   706,   706,   706,   706,
+   706,   nil,   nil,   nil,   706,   706,   706,   706,   706,   706,
+   706,   706,   706,   706,   nil,   nil,   nil,   nil,   nil,   706,
+   706,   706,   706,   706,   706,   706,   706,   706,   nil,   nil,
+   706,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,
+   706,   nil,   706,   706,   706,   706,   706,   706,   706,   nil,
+   nil,   706,   706,   nil,   nil,   nil,   706,   706,   706,   706,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   706,   706,   nil,   706,   706,   706,   706,
+   706,   706,   706,   706,   706,   706,   706,   nil,   nil,   706,
+   706,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   706,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,
+   821,   821,   821,   821,   821,   821,   821,   821,   821,   821,
+   821,   821,   821,   821,   821,   821,   821,   821,   821,   821,
+   821,   821,   821,   821,   nil,   nil,   nil,   821,   821,   821,
+   821,   821,   821,   821,   821,   821,   821,   nil,   nil,   nil,
+   nil,   nil,   821,   821,   821,   821,   821,   821,   821,   821,
+   821,   nil,   nil,   821,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   821,   821,   nil,   821,   821,   821,   821,   821,
+   821,   821,   nil,   nil,   821,   821,   nil,   nil,   nil,   821,
+   821,   821,   821,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   821,   821,   nil,   821,
+   821,   821,   821,   821,   821,   821,   821,   821,   821,   821,
+   nil,   nil,   821,   nil,   nil,   nil,   nil,   553,   553,   553,
+   553,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   821,   553,   553,   553,   553,   nil,   nil,   nil,
+   553,   553,   nil,   nil,   nil,   nil,   553,   553,   nil,   nil,
+   nil,   553,   553,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   553,   nil,   nil,   553,   nil,   nil,   nil,   553,   nil,
+   nil,   553,   nil,   553,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,
+   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,   553,
+   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   553,
+   553,   553,   553,   nil,   553,   553,   nil,   nil,   553,   553,
+   554,   554,   554,   554,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   554,   554,   554,   554,
+   nil,   nil,   nil,   554,   554,   nil,   nil,   nil,   nil,   554,
+   554,   nil,   nil,   nil,   554,   554,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   554,   nil,   nil,   554,   nil,   nil,
+   nil,   554,   nil,   nil,   554,   nil,   554,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   554,
+   nil,   nil,   nil,   554,   554,   554,   554,   554,   554,   nil,
+   nil,   nil,   554,   554,   nil,   nil,   nil,   nil,   nil,   nil,
+   554,   nil,   554,   554,   554,   554,   nil,   554,   554,   nil,
+   nil,   554,   554,   786,   786,   786,   786,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   786,
+   786,   786,   786,   nil,   nil,   nil,   786,   nil,   nil,   nil,
+   nil,   nil,   786,   786,   nil,   nil,   nil,   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,   nil,   786,   nil,   nil,   786,   nil,   786,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   786,   nil,   nil,   nil,   786,   786,   786,   786,
+   786,   786,   nil,   nil,   nil,   786,   786,   786,   nil,   nil,
+   nil,   nil,   nil,   786,   nil,   nil,   786,   786,   786,   nil,
+   786,   786,   nil,   nil,   786,   786,   794,   794,   794,   794,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   794,   794,   794,   794,   nil,   nil,   nil,   794,
+   nil,   nil,   nil,   nil,   nil,   794,   794,   nil,   nil,   nil,
+   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,   nil,   794,   nil,   nil,
+   794,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   794,   nil,   nil,   nil,   794,
+   794,   794,   794,   794,   794,   nil,   nil,   nil,   794,   794,
+   nil,   nil,   nil,   nil,   nil,   nil,   794,   nil,   nil,   794,
+   794,   794,   nil,   794,   794,   nil,   nil,   794,   794,   967,
+   967,   967,   967,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   967,   967,   967,   967,   nil,
+   nil,   nil,   967,   nil,   nil,   nil,   nil,   nil,   967,   967,
+   nil,   nil,   nil,   967,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   967,   nil,   nil,   967,   nil,   nil,   nil,
+   967,   nil,   nil,   967,   nil,   967,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   967,   nil,
+   nil,   nil,   967,   967,   967,   967,   967,   967,   nil,   nil,
+   nil,   967,   967,   nil,   nil,   nil,   nil,   nil,   nil,   967,
+   nil,   nil,   967,   967,   967,   nil,   967,   967,   nil,   nil,
+   967,   967,   969,   969,   969,   969,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   969,   969,
+   969,   969,   nil,   nil,   nil,   969,   nil,   nil,   nil,   nil,
+   nil,   969,   969,   nil,   nil,   nil,   969,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   969,   nil,   nil,   969,
+   nil,   nil,   nil,   969,   nil,   nil,   969,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   969,   nil,   nil,   nil,   969,   969,   969,   969,   969,
+   969,   nil,   nil,   nil,   969,   969,   nil,   nil,   nil,   nil,
+   nil,   nil,   969,   nil,   nil,   969,   969,   969,   nil,   969,
+   969,   nil,   nil,   969,   969,   972,   972,   972,   972,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   972,   972,   972,   972,   nil,   nil,   nil,   972,   972,
+   nil,   nil,   nil,   nil,   972,   972,   nil,   nil,   nil,   972,
+   972,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   972,
+   nil,   nil,   972,   nil,   nil,   nil,   972,   nil,   nil,   972,
+   nil,   972,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   972,   nil,   nil,   nil,   972,   972,
+   972,   972,   972,   972,   nil,   nil,   nil,   972,   972,   nil,
+   nil,   nil,   nil,   nil,   nil,   972,   nil,   972,   972,   972,
+   972,   nil,   972,   972,   nil,   nil,   972,   972,   973,   973,
+   973,   973,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   973,   973,   973,   973,   nil,   nil,
+   nil,   973,   973,   nil,   nil,   nil,   nil,   973,   973,   nil,
+   nil,   nil,   973,   973,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   973,   nil,   nil,   973,   nil,   nil,   nil,   973,
+   nil,   nil,   973,   nil,   973,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   973,   nil,   nil,
+   nil,   973,   973,   973,   973,   973,   973,   nil,   nil,   nil,
+   973,   973,   nil,   nil,   nil,   nil,   nil,   nil,   973,   nil,
+   973,   973,   973,   973,   nil,   973,   973,   nil,   nil,   973,
+   973,   979,   979,   979,   979,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   979,   979,   979,
+   979,   nil,   nil,   nil,   979,   nil,   nil,   nil,   nil,   nil,
+   979,   979,   nil,   nil,   nil,   979,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   979,   nil,   nil,   979,   nil,
+   nil,   nil,   979,   nil,   nil,   979,   nil,   979,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   979,   nil,   nil,   nil,   979,   979,   979,   979,   979,   979,
+   nil,   nil,   nil,   979,   979,   nil,   nil,   nil,   nil,   nil,
+   nil,   979,   nil,   nil,   979,   979,   979,   nil,   979,   979,
+   nil,   nil,   979,   979,   985,   985,   985,   985,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   985,   985,   985,   985,   nil,   nil,   nil,   985,   nil,   nil,
+   nil,   nil,   nil,   985,   985,   nil,   nil,   nil,   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,   nil,   985,   nil,   nil,   985,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   985,   nil,   nil,   nil,   985,   985,   985,
+   985,   985,   985,   nil,   nil,   nil,   985,   985,   nil,   nil,
+   nil,   nil,   nil,   nil,   985,   nil,   nil,   985,   985,   985,
+   nil,   985,   985,   nil,   nil,   985,   985,   986,   986,   986,
+   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   986,   986,   986,   986,   nil,   nil,   nil,
+   986,   nil,   nil,   nil,   nil,   nil,   986,   986,   nil,   nil,
+   nil,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   986,   nil,   nil,   986,   nil,   nil,   nil,   986,   nil,
+   nil,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,   nil,
+   986,   986,   986,   986,   986,   986,   nil,   nil,   nil,   986,
+   986,   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,
+   986,   986,   986,   nil,   986,   986,   nil,   nil,   986,   986,
+  1038,  1038,  1038,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1038,  1038,  1038,  1038,
+   nil,   nil,   nil,  1038,  1038,   nil,   nil,   nil,   nil,  1038,
+  1038,   nil,   nil,   nil,  1038,  1038,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1038,   nil,   nil,  1038,   nil,   nil,
+   nil,  1038,   nil,   nil,  1038,   nil,  1038,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1038,
+   nil,   nil,   nil,  1038,  1038,  1038,  1038,  1038,  1038,   nil,
+   nil,   nil,  1038,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
+  1038,   nil,  1038,  1038,  1038,  1038,   nil,  1038,  1038,   nil,
+   nil,  1038,  1038,  1170,  1170,  1170,  1170,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1170,
+  1170,  1170,  1170,   nil,   nil,   nil,  1170,   nil,   nil,   nil,
+   nil,   nil,  1170,  1170,   nil,   nil,   nil,  1170,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1170,   nil,   nil,
+  1170,   nil,   nil,   nil,  1170,   nil,   nil,  1170,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1170,   nil,   nil,   nil,  1170,  1170,  1170,  1170,
+  1170,  1170,   nil,   nil,   nil,  1170,  1170,   nil,   nil,   nil,
+   nil,   nil,   nil,  1170,   nil,   nil,  1170,  1170,  1170,   nil,
+  1170,  1170,   nil,   nil,  1170,  1170,  1179,  1179,  1179,  1179,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1179,  1179,  1179,  1179,   nil,   nil,   nil,  1179,
+   nil,   nil,   nil,   nil,   nil,  1179,  1179,   nil,   nil,   nil,
+  1179,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1179,   nil,   nil,  1179,   nil,   nil,   nil,  1179,   nil,   nil,
+  1179,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1179,   nil,   nil,   nil,  1179,
+  1179,  1179,  1179,  1179,  1179,   nil,   nil,   nil,  1179,  1179,
+   nil,   nil,   nil,   nil,   nil,   nil,  1179,   nil,   nil,  1179,
+  1179,  1179,   nil,  1179,  1179,   nil,   nil,  1179,  1179,  1183,
+  1183,  1183,  1183,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1183,  1183,  1183,  1183,   nil,
+   nil,   nil,  1183,   nil,   nil,   nil,   nil,   nil,  1183,  1183,
+   nil,   nil,   nil,  1183,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1183,   nil,   nil,  1183,   nil,   nil,   nil,
+  1183,   nil,   nil,  1183,   nil,  1183,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1183,   nil,
+   nil,   nil,  1183,  1183,  1183,  1183,  1183,  1183,   nil,   nil,
+   nil,  1183,  1183,   nil,   nil,   nil,   nil,   nil,   nil,  1183,
+   nil,   nil,  1183,  1183,  1183,   nil,  1183,  1183,   nil,   nil,
+  1183,  1183,  1230,  1230,  1230,  1230,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1230,  1230,
+  1230,  1230,   nil,   nil,   nil,  1230,   nil,   nil,   nil,   nil,
+   nil,  1230,  1230,   nil,   nil,   nil,  1230,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1230,   nil,   nil,  1230,
+   nil,   nil,   nil,  1230,   nil,   nil,  1230,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1230,   nil,   nil,   nil,  1230,  1230,  1230,  1230,  1230,
+  1230,   nil,   nil,   nil,  1230,  1230,   nil,   nil,   nil,   nil,
+   nil,   nil,  1230,   nil,   nil,  1230,  1230,  1230,   nil,  1230,
+  1230,   nil,   nil,  1230,  1230,  1261,  1261,  1261,  1261,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1261,  1261,  1261,  1261,   nil,   nil,   nil,  1261,   nil,
+   nil,   nil,   nil,   nil,  1261,  1261,   nil,   nil,   nil,  1261,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   994,   994,   994,
+   994,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1261,
+   nil,   nil,  1261,   994,   994,   994,  1261,   nil,   nil,  1261,
+   nil,   nil,   nil,   nil,   nil,   nil,   994,   994,   nil,   nil,
+   nil,   994,   nil,   nil,  1261,   nil,   nil,   nil,  1261,  1261,
+  1261,  1261,  1261,  1261,   nil,   nil,   nil,  1261,  1261,   nil,
+   nil,   nil,   nil,   nil,   nil,  1261,   nil,   nil,  1261,  1261,
+  1261,   nil,  1261,  1261,   nil,   nil,  1261,  1261,   nil,   nil,
+   240,   nil,   240,   240,   240,   240,   240,   nil,   nil,   nil,
+   994,   994,   994,   994,   994,   994,   240,   nil,   nil,   994,
+   994,   nil,   nil,   nil,   nil,   nil,   nil,   994,   nil,   nil,
+   994,   994,   994,   nil,   994,   994,   nil,   241,   240,   241,
+   241,   241,   241,   241,   nil,   nil,   nil,   240,   240,   240,
+   240,   nil,   417,   241,   417,   417,   417,   417,   417,   nil,
+   679,   nil,   679,   679,   679,   679,   679,   nil,   417,   nil,
+   nil,   nil,   nil,   nil,   nil,   241,   679,   nil,   nil,   nil,
+   nil,   nil,   nil,   240,   241,   241,   241,   241,   nil,   nil,
+   417,   417,   nil,   240,   nil,   nil,   nil,   nil,   679,   417,
+   417,   417,   417,   nil,   nil,   nil,   nil,   679,   679,   679,
+   679,   742,   nil,   742,   742,   742,   742,   742,   nil,   nil,
+   241,   nil,   nil,   nil,   nil,   nil,   nil,   742,   nil,   nil,
+   241,   nil,   nil,   nil,   744,   417,   744,   744,   744,   744,
+   744,   nil,   nil,   679,   nil,   417,   nil,   nil,   nil,   742,
+   744,   nil,   nil,   679,   nil,   nil,   nil,   nil,   742,   742,
+   742,   742,  1073,   nil,  1073,  1073,  1073,  1073,  1073,   nil,
+   nil,   nil,   744,   nil,   nil,   nil,   nil,   nil,  1073,   nil,
+   nil,   744,   744,   744,   744,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   742,   nil,   nil,   nil,   nil,   nil,
+  1073,   nil,   nil,   nil,   742,   nil,   nil,   nil,   nil,  1073,
+  1073,  1073,  1073,   nil,   nil,   nil,   nil,   744,   232,   232,
+   nil,   nil,   232,   nil,   nil,   nil,   nil,   744,   nil,   nil,
+   nil,   232,   232,   nil,   232,   232,   232,   232,   232,   232,
+   232,   nil,   nil,   232,   232,  1073,   nil,   nil,   232,   232,
+   232,   232,   nil,   nil,   nil,  1073,   nil,   232,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   232,   232,   nil,   232,   232,
+   232,   232,   232,   232,   232,   232,   232,   232,   232,   nil,
+   nil,   232,   nil,   nil,   nil,   nil,   233,   233,   nil,   nil,
+   233,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   233,
+   233,   232,   233,   233,   233,   233,   233,   233,   233,   nil,
+   nil,   233,   233,   nil,   nil,   nil,   233,   233,   233,   233,
+   nil,   nil,   nil,   nil,   nil,   233,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   233,   233,   nil,   233,   233,   233,   233,
+   233,   233,   233,   233,   233,   233,   233,   nil,   nil,   233,
+   nil,   nil,   nil,   nil,   310,   310,   nil,   nil,   310,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   310,   310,   233,
+   310,   310,   310,   310,   310,   310,   310,   nil,   nil,   310,
+   310,   nil,   nil,   nil,   310,   310,   310,   310,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   310,   310,   nil,   310,   310,   310,   310,   310,   310,
+   310,   310,   310,   310,   310,   nil,   nil,   310,   nil,   nil,
+   nil,   nil,   544,   544,   nil,   nil,   544,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   544,   544,   310,   544,   544,
+   544,   544,   544,   544,   544,   nil,   nil,   544,   544,   nil,
+   nil,   nil,   544,   544,   544,   544,   nil,   nil,   nil,   nil,
+   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   544,
+   544,   nil,   544,   544,   544,   544,   544,   544,   544,   544,
+   544,   544,   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,
+   545,   545,   nil,   nil,   545,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   545,   545,   544,   545,   545,   545,   545,
+   545,   545,   545,   nil,   nil,   545,   545,   nil,   nil,   nil,
+   545,   545,   545,   545,   nil,   nil,   nil,   nil,   nil,   545,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   545,   545,   nil,
+   545,   545,   545,   545,   545,   545,   545,   545,   545,   545,
+   545,   nil,   nil,   545,   nil,   nil,   nil,   nil,   621,   621,
+   nil,   nil,   621,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   621,   621,   545,   621,   621,   621,   621,   621,   621,
+   621,   nil,   nil,   621,   621,   nil,   nil,   nil,   621,   621,
+   621,   621,   nil,   nil,   nil,   nil,   nil,   621,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   621,   621,   nil,   621,   621,
+   621,   621,   621,   621,   621,   621,   621,   621,   621,   nil,
+   nil,   621,   nil,   nil,   nil,   nil,   622,   622,   nil,   nil,
+   622,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   622,
+   622,   621,   622,   622,   622,   622,   622,   622,   622,   nil,
+   nil,   622,   622,   nil,   nil,   nil,   622,   622,   622,   622,
+   nil,   nil,   nil,   nil,   nil,   622,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   622,   622,   nil,   622,   622,   622,   622,
+   622,   622,   622,   622,   622,   622,   622,   nil,   nil,   622,
+   nil,   nil,   nil,   nil,   631,   631,   nil,   nil,   631,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   631,   631,   622,
+   631,   631,   631,   631,   631,   631,   631,   nil,   nil,   631,
+   631,   nil,   nil,   nil,   631,   631,   631,   631,   nil,   nil,
+   nil,   nil,   nil,   631,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   631,   631,   nil,   631,   631,   631,   631,   631,   631,
+   631,   631,   631,   631,   631,   nil,   nil,   631,   nil,   nil,
+   nil,   nil,   632,   632,   nil,   nil,   632,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   632,   632,   631,   632,   632,
+   632,   632,   632,   632,   632,   nil,   nil,   632,   632,   nil,
+   nil,   nil,   632,   632,   632,   632,   nil,   nil,   nil,   nil,
+   nil,   632,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   632,
+   632,   nil,   632,   632,   632,   632,   632,   632,   632,   632,
+   632,   632,   632,   nil,   nil,   632,   nil,   nil,   nil,   nil,
+   663,   663,   nil,   nil,   663,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   663,   663,   632,   663,   663,   663,   663,
+   663,   663,   663,   nil,   nil,   663,   663,   nil,   nil,   nil,
+   663,   663,   663,   663,   nil,   nil,   nil,   nil,   nil,   663,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   663,   663,   nil,
+   663,   663,   663,   663,   663,   663,   663,   663,   663,   663,
+   663,   nil,   nil,   663,   nil,   nil,   nil,   nil,   664,   664,
+   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   664,   664,   663,   664,   664,   664,   664,   664,   664,
+   664,   nil,   nil,   664,   664,   nil,   nil,   nil,   664,   664,
+   664,   664,   nil,   nil,   nil,   nil,   nil,   664,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   664,   664,   nil,   664,   664,
+   664,   664,   664,   664,   664,   664,   664,   664,   664,   nil,
+   nil,   664,   nil,   nil,   nil,   nil,   670,   670,   nil,   nil,
+   670,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   670,
+   670,   664,   670,   670,   670,   670,   670,   670,   670,   nil,
+   nil,   670,   670,   nil,   nil,   nil,   670,   670,   670,   670,
+   nil,   nil,   nil,   nil,   nil,   670,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   670,   670,   nil,   670,   670,   670,   670,
+   670,   670,   670,   670,   670,   670,   670,   nil,   nil,   670,
+   nil,   nil,   nil,   nil,   671,   671,   nil,   nil,   671,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   671,   671,   670,
+   671,   671,   671,   671,   671,   671,   671,   nil,   nil,   671,
+   671,   nil,   nil,   nil,   671,   671,   671,   671,   nil,   nil,
+   nil,   nil,   nil,   671,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   671,   671,   nil,   671,   671,   671,   671,   671,   671,
+   671,   671,   671,   671,   671,   nil,   nil,   671,   nil,   nil,
+   nil,   nil,   713,   713,   nil,   nil,   713,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   713,   713,   671,   713,   713,
+   713,   713,   713,   713,   713,   nil,   nil,   713,   713,   nil,
+   nil,   nil,   713,   713,   713,   713,   nil,   nil,   nil,   nil,
+   nil,   713,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   713,
+   713,   nil,   713,   713,   713,   713,   713,   713,   713,   713,
+   713,   713,   713,   nil,   nil,   713,   nil,   nil,   nil,   nil,
+   714,   714,   nil,   nil,   714,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   714,   714,   713,   714,   714,   714,   714,
+   714,   714,   714,   nil,   nil,   714,   714,   nil,   nil,   nil,
+   714,   714,   714,   714,   nil,   nil,   nil,   nil,   nil,   714,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   714,   714,   nil,
+   714,   714,   714,   714,   714,   714,   714,   714,   714,   714,
+   714,   nil,   nil,   714,   nil,   nil,   nil,   nil,  1220,  1220,
+   nil,   nil,  1220,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1220,  1220,   714,  1220,  1220,  1220,  1220,  1220,  1220,
+  1220,   nil,   nil,  1220,  1220,   nil,   nil,   nil,  1220,  1220,
+  1220,  1220,   nil,   nil,   nil,   nil,   nil,  1220,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1220,  1220,   nil,  1220,  1220,
+  1220,  1220,  1220,  1220,  1220,  1220,  1220,  1220,  1220,   nil,
+   nil,  1220,   nil,   nil,   nil,   nil,  1221,  1221,   nil,   nil,
+  1221,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1221,
+  1221,  1220,  1221,  1221,  1221,  1221,  1221,  1221,  1221,   nil,
+   nil,  1221,  1221,   nil,   nil,   nil,  1221,  1221,  1221,  1221,
+   nil,   nil,   nil,   nil,   nil,  1221,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1221,  1221,   nil,  1221,  1221,  1221,  1221,
+  1221,  1221,  1221,  1221,  1221,  1221,  1221,   nil,   nil,  1221,
+   nil,   nil,   nil,   nil,  1245,  1245,   nil,   nil,  1245,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1245,  1245,  1221,
+  1245,  1245,  1245,  1245,  1245,  1245,  1245,   nil,   nil,  1245,
+  1245,   nil,   nil,   nil,  1245,  1245,  1245,  1245,   nil,   nil,
+   nil,   nil,   nil,  1245,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1245,  1245,   nil,  1245,  1245,  1245,  1245,  1245,  1245,
+  1245,  1245,  1245,  1245,  1245,   nil,   nil,  1245,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1245 ]
+
+racc_action_pointer = [
+   nil,   193,  1098,   202,   nil,   194,   nil,   nil,  5417,  1083,
+   nil, 26870, 27003,   105,   nil,   108,   177,    23,   287,   317,
+   -32,    92,   283,   nil,   -65,  5560,  1386, 27136,   362,   nil,
+   -40,   nil,   165,  5698,  5830,  5960,  6103,  6246,   nil,  1242,
+ 24924, 25063,   nil,   280,   449,   513,   370,  6389,  6532,   167,
+  6675,  6818,   697,  6961,   315,   361,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  7099,   nil,  7240,  7383,   nil,
+   -22,   nil,  7526,  7669,   nil,   nil,  7812, 25202, 25341, 25480,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   208,   nil,   nil,   nil,
+   nil,   nil,   nil,   323,   380,   417,   425,   nil,   nil, 27269,
+   nil,   nil,   nil,   nil,   nil,   nil,     0,   nil,   nil,   136,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  7955,   nil,   nil,   nil,   nil,  8098,  8241,  8384,
+  8527,  8670,   467,   nil,   399,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   461,   nil,  1386,  8813,  8956,  9099,  9242,
+  9385,  9528, 29877, 29945,   nil,   nil,   459,  1530,   488,   nil,
+ 29659, 29696,   533,  1674,  9671,  9814,  9957,   nil,   nil,   376,
+   -21,   104,   628,   114,   545,   610,   nil, 10100,   226,   241,
+  1818,   609,   nil,   nil, 10243, 10386, 10529, 10672, 10815, 10958,
+ 11101, 11244, 11387, 11530, 11673, 11816, 11959, 12102, 12245, 12388,
+ 12531, 12674, 12817, 12960, 13103, 13246,   nil,   nil,   nil,   nil,
+ 13389,   nil,   nil,   388,   412,   514,   548,   552,   576,   596,
+   617,   654,   736,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+ 30013,   nil,   nil,   604, 13532, 13675,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil, 13818,   nil,  2106,   nil,   574,   584,
+   nil, 13961,   627, 14104,   nil,   nil, 14247, 14390,   nil,   nil,
+   396,   nil,   nil, 14533,  1227,   nil,   581,  1962,   616,   670,
+   637, 25619,  2106,   455,   504,   516,   717,   591,   nil,   686,
+   689,   193,   737,   773,   nil,   nil,   nil,   775,   266,   739,
+ 25758,   nil,   597,   620,  3402,  3546,   805,   nil,   814, 14676,
+   nil, 14819,  2250,  1329,   776,   nil,   -94,   172,   785, 14962,
+   nil,   704,    -8,     8, 15105,  2394,  2538,   412,   896,   785,
+   -19,    -7,   640,   875,    24,   907,   nil,   nil,  1087,  1089,
+   181,   nil,   650,   nil,   834, 15248,   nil, 29711,   nil,   383,
+   nil,   402,   nil,   136,   nil,   821,   440,   nil,   827,   481,
+   nil,   828,   -59,   nil,   830,   -58,   nil,   485,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  2682, 27402,   nil,   nil,   nil,   nil,   843,   nil,   914,
+   834, 15391,   835,   nil,   nil,   821,   nil,   652,   147,   931,
+   nil,   nil,  1530,   nil,   nil,   nil,   nil,   nil,  1674,   852,
+   nil,   nil,   854,   861,   644,   649,  7240,   nil,   nil,   nil,
+   272,   408,   906,   nil,   nil, 15529, 15661, 15794,   991,   990,
+   nil,   nil,   878,   876,   881,   nil,   nil,   882,   888,   904,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   888,
+   784,   nil,   nil, 15937,   nil,   nil,   nil,     0,   nil,   nil,
+   nil,   987,   nil,   nil,   990,   462, 16080,  1033,   nil,   nil,
+   nil,   -26,   nil,   954, 30081, 30149, 16223,   223, 16366, 16509,
+ 16652,   901,   902, 27755, 27868,  3690,  3834,   810,  1007,   982,
+   983,   985,   987,  5417,  5560,  1121,  3978,  4122,  4266,  4410,
+  4554,  4698,  1214,  1243,  4842,  4986,  2250,  5130,   nil,   nil,
+   nil, 16795,  1053,   nil, 16933,   nil,   nil,   nil,   nil, 17059,
+   940,   944,   949,   nil,   nil,   nil,   954,   nil,   nil, 17202,
+   nil,   nil, 17345,   nil, 17488,   nil,   196,   nil,   nil,   nil,
+ 17631,  1515,   970,   959,   957,   nil,   nil,   964, 25897,   969,
+ 17774, 30217, 30285,   725,  1006,   nil,   nil, 26036,   968,   nil,
+ 17917, 30353, 30421, 18060,  5274,  2394, 18203,  1096,   981,   nil,
+   nil, 18346,   nil,   nil, 18489,   nil,  1039,  1027,   nil,   534,
+  1066,  2826,  1146,   nil,  2970,    63,  1152,  1157,   337,  1159,
+   nil, 18632, 18775, 30489, 30557,    26,   nil,   nil,   766,   nil,
+ 30625, 30693, 18918,   nil,   nil,   nil,   806,  3114,   nil, 29719,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   208,   nil,   nil,   298,   nil,   nil,   nil,  1039,
+   nil,   nil,  1040,   nil,  1058,   nil, 27535,   nil, 19061,  1046,
+ 19204, 19347, 19490, 30761, 30829, 19633, 19776,   651, 19919, 20062,
+ 20205, 20348,  1079,   nil,   nil,   nil, 20491, 20634,  1081,   nil,
+  1137,  1818,   551,   nil, 20777,   nil,   nil,   nil,   330,   nil,
+   nil,   747, 29770,   nil, 29793,   nil, 16939,   nil,  1039, 20920,
+   nil,   918,   nil,  1057,  1060,  1372,  1066,   nil,   nil,   nil,
+   nil,   nil,   nil,  1150,  1962,   nil,   nil,   nil,   281,   326,
+   544,   680,  1069, 21063, 21206,   nil,   -31,   nil,   nil,   nil,
+   nil,  1088,   nil,   nil,   nil,   375, 27981,   -82,   nil,  1069,
+  1151,  1074,   nil,   nil, 28094,   nil,   nil,     1,   nil,   nil,
+   770,   nil,   nil,   952,  7099,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   955,   443,   nil,   nil,
+  1081, 27668,   -14,   nil,   113,  1192,   -19,   nil,   nil, 21349,
+   nil,  1108,   nil,  1219,   nil,  1103,   nil,  1148, 21492,   nil,
+   nil, 21635,   nil,   nil,   158, 26175,  1110,   nil,  1114,    -9,
+    -5,  1159,    25,   776,  1160,  1122, 26314,   nil,  1187,    -7,
+   nil,   nil,   691,   nil,   nil,   nil,   862,   nil,  1241,   nil,
+   nil,   nil,   nil,   nil,  1249,  1269,   nil,   nil,   nil, 21778,
+    69,  1153,    29,    30,   162,   163,  3258,  1231,   784,   nil,
+  1156,  3402, 21921,   465,  1274,    34,  1158,  1153,  3546,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1156, 22064,  1172,
+   402,   421,   816,   952,   nil,  2538, 22207,  1173,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 22350, 22493,
+   nil,   nil,   nil,   nil,  3690,   nil,  1176,  1223,   nil,   nil,
+  1183,   nil,  1263,   nil,   nil,  1186,  1193,   nil,  1194,  1195,
+   nil,  1197,   nil,   nil,   nil,  1201,  1084,  3964,   nil,   nil,
+ 22636, 22779, 22922, 23065, 23208, 23351,   479, 28207,  1278, 28320,
+  1239,   195, 28433, 28546,   589,    96,  1206,  1207,   nil, 28659,
+   nil,  1207,   266,   nil,  1224, 28772, 28885,   nil,   340,  1251,
+   213,   nil,   nil, 16918, 29605,   nil,   nil,   nil,   nil, 23494,
+   nil,   nil,   nil,   nil,   nil, 23637,   nil,   nil,   nil,   nil,
+   337,   nil,  3834,   nil,   nil,  1228,  1219,   nil,   117,   nil,
+   nil,   nil,   nil,  1221,    39,   nil,   nil,   nil,  1342,   nil,
+   nil, 23780,   nil,  3978,  1344,   nil,   nil,   nil, 28998,   nil,
+ 23923,  4122,    68,  1345,   nil,  1346,   598,   nil,   nil,   nil,
+  4266,  4410,  1225,  1237,   nil,   nil,   nil,   nil,   nil,  1226,
+  1236,   490,   nil,   nil, 24066,  2682,  2826,  4554,   nil,     9,
+ 26453,   nil,   nil, 29821,   nil, 24945,   nil, 25084,   nil, 25223,
+   nil,   nil,   nil,   nil,  1246,  1247,  2970,  3114, 24209,   nil,
+  1251,   nil,   nil,   nil,   nil,  1292,  1293,  1302,  1268,  1269,
+  1272,   nil,   nil,   nil,  1311,  1271,   -33,   nil,  1276,   nil,
+   nil,   740,  1282,   nil,   nil,   nil,   nil,   nil,   nil,  1286,
+  3258,  1284,  1285,   nil,  1293,  1299,  1313,   nil,  1337,  1323,
+  1318, 26592,   nil,   nil,   nil,   nil,   nil,  4698,   nil,    35,
+   nil,   nil,    43,   858,   nil, 24352,   426,   nil,   nil,   nil,
+  4842,  1354,  1459,  2092,   nil,   nil,  1463,  4986,   120,   135,
+   786,  1418,   144,   nil,  1347,  1348,  1351,  1352,  4108,  4252,
+ 29111,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1354, 29224,
+   nil,   243,   nil, 29337,   nil,   367,   nil,   nil,   475,   nil,
+   nil,   nil,   611,   nil,   745,   nil,   nil,  1377, 26731,   855,
+  1443,   nil,  5130,   nil, 24495, 24638,   nil,   nil,   nil,   nil,
+  1490,   nil,   nil,   707,   nil,   nil,   nil,   nil,  1493, 24781,
+ 30897, 30965,   145, 25362,   nil,   nil,   nil,   nil,  1378,  1379,
+ 29450,  1380,   nil,   nil,  1383,   nil,   nil,  1385,  1386,  1387,
+  1388,   nil,  1390,   nil,   861, 31033,   nil,   892,  5274,   nil,
+   nil,   nil,   nil,  2236,   nil,  1394,   158,   168,   169,   236,
+  1395, 29563,  1398,   nil,   881,   nil,  5662,   nil,  5761,   nil,
+  7063,   nil,   nil,  1438,  1447,   nil,    32,   nil,   171,   nil,
+  1409,  1410,  1413,  1414,   nil,   nil,   nil, 15493,   nil,   nil,
+   nil,   nil,  1415,   nil ]
+
+racc_action_default = [
+    -1,  -781,  -780,  -781,    -2,  -766,    -4,    -5,  -781,    -8,
+    -9,  -781,  -781,  -781,   -35,  -781,  -781,   -40,  -781,  -781,
+  -672,  -672,  -315,   -56,  -768,  -781,   -65,  -781,   -74,   -75,
+   -76,   -80,  -291,  -291,  -291,  -329,  -357,  -358,   -92,  -780,
+   -96,  -104,  -106,  -781,  -659,  -660,  -781,  -781,  -781,  -781,
+  -781,  -781,  -244,  -781,  -768,  -262,  -306,  -307,  -308,  -309,
+  -310,  -311,  -312,  -313,  -314,  -752,  -317,  -319,  -780,  -327,
+  -337,  -339,  -781,  -781,   -71,   -71,  -766,  -781,  -781,  -781,
+  -359,  -360,  -362,  -363,  -364,  -365,  -366,  -367,  -368,  -369,
+  -370,  -371,  -380,  -440,  -586,  -587,  -588,  -589,  -590,  -780,
+  -593,  -780,  -780,  -780,  -780,  -780,  -780,  -629,  -630,  -780,
+  -632,  -638,  -640,  -641,  -642,  -643,  -750,  -648,  -649,  -751,
+  -651,  -652,  -653,  -654,  -655,  -656,  -657,  -658,  -663,  -664,
+  1294,    -3,  -767,  -776,  -777,  -778,    -7,  -781,  -781,  -781,
+  -781,  -781,  -781,   -23,  -781,  -135,  -136,  -137,  -138,  -139,
+  -140,  -141,  -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,  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,
+  -203,  -204,  -205,  -206,  -207,  -208,  -209,  -210,  -211,  -212,
+  -213,  -214,  -215,   -28,  -142,  -780,  -781,  -781,  -781,  -781,
+  -781,  -780,  -781,  -781,  -762,  -763,  -781,  -780,  -671,  -669,
+  -695,  -695,  -781,  -780,  -781,  -781,  -768,  -769,   -60,  -781,
+  -659,  -660,  -781,  -315,  -781,  -781,  -250,  -781,  -672,  -672,
+  -780,  -781,   -61,   -63,  -227,  -228,  -781,  -781,  -781,  -781,
+  -781,  -781,  -781,  -781,  -781,  -781,  -781,  -781,  -781,  -781,
+  -781,  -781,  -781,  -781,  -781,  -781,  -263,  -264,  -265,  -266,
+  -781,   -66,   -67,  -781,  -135,  -136,  -175,  -176,  -177,  -193,
+  -198,  -205,  -208,  -659,  -660,  -738,  -739,  -373,  -468,  -448,
+  -781,  -764,  -765,   -81,  -780,  -781,  -336,  -372,  -452,  -461,
+  -463,   -87,  -458,   -88,  -768,   -89,  -269,  -286,  -780,  -780,
+  -290,  -294,  -297,  -781,  -780,  -743,  -747,  -781,   -90,   -91,
+  -766,   -16,   -17,  -781,   -20,   -21,   -94,  -780,  -768,  -781,
+   -97,  -100,  -780,  -112,  -113,  -781,  -781,  -120,  -329,  -332,
+  -768,  -781,  -672,  -672,  -357,  -358,  -361,  -459,  -781,  -102,
+  -781,  -108,  -325,  -781,  -229,  -230,  -639,  -238,  -239,  -781,
+  -251,  -781,  -780,  -321,  -768,  -270,  -773,  -773,  -768,  -780,
+  -338,   -70,  -781,  -781,  -781,  -780,  -780,  -766,  -781,  -767,
+  -659,  -660,  -781,  -781,  -315,  -781,  -390,  -391,  -130,  -131,
+  -781,  -133,  -781,  -315,  -780,  -781,  -353,  -695,  -591,  -781,
+  -614,  -781,  -616,  -781,  -618,  -781,  -781,  -598,  -781,  -781,
+  -604,  -781,  -781,  -610,  -781,  -781,  -612,  -781,  -631,  -633,
+  -634,  -635,  -636,    -6,  -779,   -29,   -30,   -31,   -32,   -33,
+   -10,  -780,  -781,   -25,   -26,   -27,  -143,  -781,   -36,   -39,
+  -302,  -781,  -781,  -301,   -37,  -781,   -41,  -781,  -315,   -53,
+   -55,  -216,  -274,  -297,   -57,   -58,   -42,  -217,  -274,  -768,
+  -281,  -282,  -780,  -780,  -753,  -754,  -291,  -456,  -755,  -756,
+  -754,  -753,  -291,  -455,  -457,  -755,  -756,  -781,  -578,  -781,
+  -403,  -404,  -768,  -737,  -737,  -677,  -678,  -680,  -680,  -680,
+  -694,  -696,  -697,  -698,  -699,  -700,  -701,  -702,  -703,  -704,
+  -781,  -706,  -708,  -710,  -715,  -717,  -718,  -721,  -726,  -728,
+  -729,  -731,  -732,  -733,  -735,  -781,  -781,  -781,   -52,  -224,
+   -59,  -768,  -335,  -781,  -781,  -781,  -780,  -325,  -781,  -781,
+  -781,  -781,  -781,  -781,  -781,  -225,  -226,  -231,  -232,  -233,
+  -234,  -235,  -236,  -240,  -241,  -242,  -243,  -245,  -246,  -247,
+  -248,  -249,  -252,  -253,  -254,  -255,  -768,  -267,   -68,  -760,
+  -761,  -781,  -781,  -469,  -291,  -753,  -754,   -78,   -82,  -696,
+  -768,  -780,  -768,  -292,  -465,  -468,  -768,  -331,  -287,  -781,
+  -296,  -288,  -781,  -293,  -781,  -298,  -781,  -746,  -749,   -15,
+  -767,   -19,  -781,  -768,   -93,  -323,  -109,   -98,  -781,  -768,
+  -780,  -781,  -781,  -119,  -781,  -671,  -639,  -781,  -105,  -110,
+  -781,  -781,  -781,  -781,  -268,  -256,  -781,  -781,  -768,  -320,
+  -271,  -775,  -774,  -273,  -775,  -326,  -781,  -781,  -741,  -773,
+  -781,  -780,  -381,  -382,  -780,  -781,  -781,  -781,  -781,  -781,
+  -376,  -781,  -780,  -781,  -781,  -325,   -71,  -130,  -131,  -132,
+  -781,  -781,  -780,  -348,  -665,  -667,  -350,  -780,  -441,  -695,
+  -444,  -592,  -615,  -620,  -621,  -623,  -594,  -617,  -595,  -619,
+  -596,  -597,  -781,  -600,  -602,  -781,  -603,  -606,  -607,  -781,
+  -608,  -609,  -781,  -637,  -781,   -24,  -781,   -34,  -781,  -305,
+  -781,  -781,  -780,  -781,  -781,  -781,  -781,  -460,  -283,  -285,
+  -781,  -781,   -83,  -279,  -280,  -453,  -781,  -781,   -85,  -454,
+   -48,  -258,  -780,  -374,  -780,  -355,  -379,  -670,  -781,  -675,
+  -676,  -781,  -781,  -687,  -781,  -690,  -781,  -692,  -781,  -781,
+  -392,  -781,  -394,  -396,  -399,  -402,  -768,  -709,  -719,  -720,
+  -730,  -734,  -673,   -50,  -260,  -356,  -334,  -770,  -753,  -754,
+  -753,  -754,  -768,  -781,  -781,   -62,  -486,  -489,  -490,  -491,
+  -492,  -494,  -496,  -499,  -500,  -557,  -768,  -512,  -515,  -527,
+  -531,  -536,  -538,  -539,  -542,  -543,  -780,  -546,  -548,  -549,
+  -550,  -555,  -556,  -781,  -781,  -560,  -561,  -562,  -563,  -564,
+  -565,  -566,  -567,  -568,  -569,  -570,  -781,  -781,  -576,   -64,
+  -781,  -781,  -768,  -447,  -780,   -77,  -449,  -465,  -276,  -283,
+  -278,  -781,  -466,  -781,  -330,  -780,  -295,  -299,  -781,  -744,
+  -745,  -781,   -18,   -22,   -95,  -781,  -101,  -107,  -768,  -753,
+  -754,  -780,  -757,  -118,  -781,  -103,  -781,  -223,  -237,  -768,
+  -318,  -322,  -773,  -771,  -328,  -742,  -780,  -383,  -780,   -72,
+  -384,  -385,  -342,  -343,  -781,  -781,  -478,  -345,  -471,  -781,
+  -781,  -768,  -753,  -754,  -757,  -324,  -780,  -130,  -131,  -134,
+  -768,  -780,  -781,  -781,  -781,  -781,  -768,  -781,  -780,  -599,
+  -601,  -605,  -611,  -613,   -11,  -144,   -38,  -303,  -781,  -768,
+  -753,  -754,  -754,  -753,   -54,  -275,  -781,  -780,   -44,  -219,
+   -45,  -220,   -84,   -46,  -222,   -47,  -221,   -86,  -781,  -781,
+   -12,   -14,  -375,  -377,  -780,  -585,  -579,  -780,  -580,  -581,
+  -737,  -716,  -721,  -736,  -679,  -680,  -680,  -707,  -680,  -680,
+  -727,  -680,  -704,  -406,  -722,  -768,  -781,  -781,  -401,  -705,
+  -781,  -781,  -781,  -781,  -781,  -781,  -460,  -487,  -781,  -781,
+  -497,  -498,  -781,  -781,  -781,  -517,  -768,  -768,  -511,  -518,
+  -524,  -781,  -781,  -514,  -781,  -781,  -781,  -530,  -537,  -541,
+  -781,  -545,  -547,  -553,  -554,  -558,  -559,  -571,  -572,  -781,
+  -644,  -645,  -646,  -131,  -574,  -781,   -69,  -740,  -429,  -430,
+  -768,  -432,  -780,  -451,  -450,  -781,  -768,  -462,  -780,  -464,
+  -289,  -300,  -748,   -99,  -460,  -111,  -333,  -272,  -781,  -378,
+  -386,  -781,  -388,  -780,  -781,   -73,  -344,  -346,  -781,  -472,
+  -781,  -780,  -460,  -781,  -460,  -781,  -781,  -351,  -354,  -442,
+  -780,  -780,  -434,  -768,  -622,  -625,  -626,  -627,  -628,  -781,
+  -304,  -460,   -43,  -218,  -284,   -49,  -259,  -780,  -584,  -781,
+  -781,  -583,  -674,  -781,  -683,  -781,  -685,  -781,  -688,  -781,
+  -691,  -693,  -393,  -395,  -397,  -400,   -51,  -261,  -781,  -488,
+  -527,  -493,  -495,  -504,  -508,  -781,  -781,  -781,  -768,  -768,
+  -768,  -575,  -509,  -510,  -534,  -519,  -522,  -525,  -768,  -780,
+  -772,  -781,  -528,  -532,  -535,  -540,  -544,  -551,  -552,  -768,
+  -257,  -737,  -737,  -410,  -780,  -780,  -780,  -428,  -781,  -768,
+  -704,  -712,  -713,  -724,  -470,   -79,  -277,  -780,  -340,  -781,
+  -389,  -341,  -781,  -483,  -473,  -781,  -780,  -347,  -349,  -666,
+  -780,  -781,  -781,  -781,  -443,  -624,  -780,  -780,  -659,  -660,
+  -781,  -781,  -315,  -582,  -680,  -680,  -680,  -680,  -781,  -781,
+  -781,  -501,  -502,  -503,  -505,  -506,  -507,  -526,  -520,  -781,
+  -513,  -781,  -516,  -781,  -573,  -781,  -408,  -409,  -413,  -412,
+  -419,  -421,  -781,  -424,  -781,  -426,  -431,  -781,  -781,  -711,
+  -781,  -467,  -780,  -479,  -781,  -781,  -474,  -475,  -476,  -477,
+  -781,  -445,  -446,  -768,  -436,  -438,  -439,   -13,  -578,  -780,
+  -781,  -781,  -325,  -781,  -681,  -684,  -686,  -689,  -398,  -528,
+  -781,  -523,  -529,  -533,  -737,  -714,  -411,  -780,  -780,  -780,
+  -780,  -725,  -780,  -433,  -723,  -781,  -325,  -780,  -780,  -484,
+  -485,  -352,  -435,  -781,  -577,  -768,  -753,  -754,  -757,  -324,
+  -680,  -781,  -521,  -407,  -781,  -416,  -781,  -418,  -781,  -422,
+  -781,  -425,  -427,  -324,  -757,  -387,  -780,  -437,  -460,  -682,
+  -780,  -780,  -780,  -780,  -480,  -481,  -482,  -781,  -414,  -417,
+  -420,  -423,  -780,  -415 ]
+
+racc_goto_table = [
+     6,   519,   519,   419,   390,    45,   318,   322,   292,   875,
+   291,    45,   309,   437,   350,   245,   732,   450,   239,   239,
+    16,   749,   651,   654,   592,   135,    16,     4,   499,   669,
+   304,   645,   349,   479,   537,   476,   659,   395,   396,   327,
+   327,   327,    45,   354,   354,   381,   588,   601,   940,   538,
+   232,   143,   224,   931,   486,   492,  1090,    16,   947,   151,
+   151,   311,   132,   248,   463,   464,   385,   502,   535,  1028,
+    45,  1034,   148,   148,   628,   750,   775,   819,   778,   778,
+   401,   304,   304,   739,   740,    16,   131,   950,   148,   983,
+   640,   643,   439,   346,   582,   406,   135,   420,   839,   422,
+   424,   427,   430,   433,   436,   243,   831,   420,   376,  1085,
+   369,   313,   321,   323,  1112,   348,   590,  1083,   976,   477,
+   510,   510,   717,  1053,   236,   242,   756,   366,   366,  1012,
+     9,  1125,   584,   539,  1214,    45,     9,   392,   393,   836,
+   839,   397,   836,   136,    45,  1241,   328,   328,   328,    18,
+    16,  1216,   325,   338,   339,    18,     1,   398,   692,    16,
+     2,   695,  1097,  1100,   366,   366,   366,   142,   470,   930,
+   148,   470,  1108,   637,   414,   416,   625,   625,   519,   386,
+  1067,   842,   612,   223,   407,   470,    18,   459,   452,   553,
+   554,   687,   293,   689,   578,   383,   693,   821,   869,   693,
+  1035,   601,   445,   446,   447,   448,   487,   310,   827,   706,
+   379,   388,   995,   996,    18,   839,   826,  1241,   457,   391,
+   391,   305,   977,   391,   647,   405,   673,   382,    45,   480,
+   384,   638,   389,   891,  1277,   327,   893,  1128,   606,   946,
+    45,   948,  1150,    16,   680,   465,    45,   677,   465,  1084,
+  1127,  1216,  1190,   349,  1129,    16,   239,   239,   836,   836,
+     9,    16,   465,    45,   458,   469,  1213,   443,   469,   449,
+   678,  1049,  1232,   417,   895,   594,   595,  1018,    16,    18,
+   544,   880,   469,   824,   391,   391,   391,   391,    18,   889,
+  1207,  1142,  1284,  1038,   496,  1248,   874,   510,  1229,  1089,
+  1091,   329,   329,   329,  1095,  1098,   750,  1231,  1092,  1237,
+   958,   972,   480,   973,   982,   985,  1114,  1105,   327,   327,
+  1228,  1115,   846,  1137,  1113,   998,   600,   600,   327,   937,
+  1083,   855,   420,  1069,   387,   318,   418,   462,   462,  1015,
+   349,   322,   421,   243,   629,   349,    45,   423,   772,  1208,
+    45,   624,   426,   865,   354,    45,  1197,   955,  1262,   429,
+   135,    16,   551,   552,   432,    16,   486,   492,   435,   836,
+    16,  1054,    18,   354,    18,   474,   475,    18,   897,   646,
+   898,   833,   438,   892,    18,    45,   621,   648,   656,   657,
+    18,    18,   540,   541,   945,   947,   941,   610,    45,    45,
+    16,   346,  1117,  1118,   631,  1235,   346,    18,  1096,  1099,
+  1180,   581,   675,    16,    16,   966,   950,   135,   776,   776,
+   617,   609,   848,   613,   nil,   591,   328,   626,   619,   978,
+   nil,   nil,   593,   663,   nil,   328,  1004,   539,   366,   477,
+   519,   596,   nil,   851,   nil,   nil,   nil,   243,   nil,     6,
+  1275,   797,   797,   851,    45,   922,   nil,   366,   nil,   655,
+   724,   927,   900,   nil,   881,   900,   729,   nil,   894,    16,
+   646,   611,   nil,   nil,   890,   nil,   704,  1217,   658,  1285,
+   600,   600,   nil,   nil,   723,   851,   nil,   843,   nil,   nil,
+    18,  1024,   705,   851,    18,  1234,   nil,   nil,   713,    18,
+   151,   730,   nil,   519,   947,   519,   896,  1126,  1113,   nil,
+  1041,   750,   750,   148,   909,   nil,   nil,  1113,   487,   857,
+  1072,  1233,   nil,   nil,  1042,   918,   920,   nil,   nil,    18,
+   nil,   923,   925,  1044,   nil,   486,   492,   nil,   nil,  1016,
+   763,   391,    18,    18,   480,   nil,   nil,   nil,   943,  1023,
+   327,   943,  1061,  1020,   nil,   762,   813,   813,   724,   510,
+   839,  1143,   676,   778,   nil,   722,  1027,   820,  1113,   nil,
+  1164,   728,   938,   nil,   nil,   nil,   nil,   nil,   nil,     9,
+   nil,   329,   723,   nil,   nil,   nil,   947,   nil,   nil,   600,
+   329,   nil,   629,  1101,   nil,   487,   nil,   nil,    18,  1233,
+   nil,   629,   nil,   nil,   836,   487,   496,   nil,   nil,   919,
+   921,   nil,   nil,    45,  1094,   924,   926,   nil,   480,  1102,
+  1103,   354,   nil,   nil,   327,   nil,   nil,  1286,    16,   886,
+   354,   nil,  1198,   nil,   nil,  1020,   942,   487,   nil,   nil,
+   nil,   nil,   nil,   nil,   866,   487,   nil,   868,   nil,   nil,
+   nil,   975,   470,   nil,    45,   649,   nil,    45,   nil,   989,
+   480,   470,   470,   825,   nil,   nil,   327,   470,   470,    16,
+   480,   nil,    16,   nil,   nil,   870,   327,   743,   745,   747,
+    45,   nil,  1045,   496,   nil,  1238,   nil,   487,   nil,  1239,
+   nil,   nil,   nil,   496,   nil,    16,   nil,   nil,   nil,  1157,
+   990,  1186,  1187,   nil,   nil,   366,   nil,   nil,   nil,   nil,
+   480,    45,   nil,   nil,   366,   nil,   327,   nil,    45,   nil,
+   nil,  1062,   nil,   750,   750,   496,    16,   nil,   822,   465,
+   935,   496,   939,    16,   nil,   nil,  1254,   nil,   465,   465,
+   nil,  1174,  1175,  1176,   465,   465,   905,   nil,   nil,   469,
+   nil,   nil,   nil,   nil,   151,   nil,   nil,    18,   469,   469,
+  1014,  1280,   nil,   646,   469,   469,   nil,   148,   nil,  1202,
+   nil,  1130,  1203,   nil,   nil,   496,   nil,   646,   984,   nil,
+   nil,   nil,   nil,   859,  1209,   nil,   nil,   nil,   nil,   813,
+   nil,   nil,   nil,   nil,   420,   nil,   nil,   813,    18,   nil,
+   nil,    18,  1006,  1134,   291,  1063,   813,   813,   nil,  1013,
+   nil,   nil,   nil,   nil,  1263,   nil,   nil,   nil,   nil,   629,
+  1123,   nil,  1008,   nil,    18,   724,   nil,   nil,   729,   nil,
+  1025,   nil,   975,   600,   519,   nil,   906,   975,   975,   646,
+   nil,   nil,  1152,   914,   nil,   462,   nil,   nil,   354,   723,
+  1111,   919,   921,   926,   924,    18,   nil,   470,    18,   354,
+   nil,   nil,    18,   nil,  1032,   835,  1032,    18,    18,   nil,
+   797,   797,   646,    18,    18,   nil,   nil,   nil,   nil,  1043,
+   797,   646,   148,   nil,   nil,   nil,   797,  1052,   nil,    45,
+   nil,  1059,   nil,   nil,    45,   nil,   nil,   nil,  1278,   nil,
+   646,    45,   nil,   776,    16,   nil,   nil,   862,   nil,    16,
+   nil,   nil,   nil,  1047,   nil,   600,    16,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1068,   nil,   nil,
+   nil,   nil,   366,   nil,   465,  1071,   797,    45,   nil,   nil,
+   nil,  1210,   nil,   366,   nil,   nil,   nil,   nil,   735,  1130,
+   nil,   nil,    16,  1130,   469,   nil,   nil,  1046,   nil,   nil,
+   nil,   nil,   646,   nil,   nil,   nil,   nil,   646,   646,   nil,
+   813,   nil,   813,   nil,   nil,   813,   813,  1063,   nil,   nil,
+   nil,   nil,   813,   nil,   917,   nil,   765,   nil,   813,   813,
+   nil,   nil,   nil,   nil,   nil,   943,   813,   813,  1123,   nil,
+   nil,  1052,  1123,   nil,  1123,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1181,   nil,    45,  1008,   nil,   nil,   nil,
+   nil,  1255,   nil,   nil,   nil,  1130,  1140,   nil,   nil,   nil,
+    16,   nil,   nil,    18,  1146,   nil,    45,   nil,    18,   391,
+   nil,   813,   851,  1151,    45,    18,   nil,   nil,   nil,   nil,
+   nil,    16,   nil,    45,    45,   nil,   nil,   nil,   nil,    16,
+  1156,   nil,   nil,    18,  1119,   nil,  1149,   nil,    16,    16,
+    45,   nil,   nil,  1159,  1123,   nil,  1123,   nil,  1123,   nil,
+  1123,    18,   nil,   942,   nil,    16,   860,   nil,  1163,   646,
+   646,   646,   nil,   nil,   nil,   917,  1139,  1123,   nil,   984,
+   nil,   nil,   nil,   nil,   nil,   872,   873,   420,   877,   nil,
+   nil,   542,   nil,   nil,   nil,  1074,  1076,   nil,  1078,  1080,
+  1052,  1081,  1189,  1189,  1189,   nil,   nil,   949,   nil,   951,
+  1201,   nil,  1122,   nil,   304,   nil,   nil,   nil,   nil,   nil,
+    45,   nil,   nil,   nil,  1032,   nil,   391,   nil,   nil,   nil,
+  1218,   nil,   nil,    45,   935,    16,   nil,   366,   nil,    18,
+    45,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    16,   nil,
+   nil,   nil,   nil,   813,   nil,    16,   nil,   nil,   391,   nil,
+    18,   nil,   813,   nil,   nil,   nil,   813,   nil,    18,   597,
+   nil,  1220,   nil,   nil,   487,  1247,   nil,    18,    18,   nil,
+   nil,   304,   nil,   nil,  1252,    45,   nil,   nil,   nil,   nil,
+   460,   473,   nil,   614,    18,   nil,  1131,   480,   366,   nil,
+    16,   nil,   nil,   327,    19,   nil,   nil,   nil,   nil,   nil,
+    19,   nil,   nil,   813,   nil,  1189,  1189,  1189,  1189,   nil,
+  1189,  1276,   nil,   nil,   nil,  1032,   646,   249,   nil,   639,
+   nil,    45,   nil,   nil,   nil,   nil,   nil,   249,   249,   249,
+   nil,    19,   355,   355,   813,   nil,    16,   nil,   nil,  1249,
+  1250,   nil,   nil,   nil,  1032,   nil,   nil,   nil,  1189,  1189,
+  1189,  1189,   496,   nil,    18,   366,   nil,   nil,   nil,    19,
+  1189,   nil,   nil,   nil,   249,   249,   nil,    18,   249,   402,
+   412,   412,   nil,    20,    18,   nil,   496,   nil,   nil,    20,
+  1122,   nil,   nil,   nil,  1122,   603,  1122,   605,   nil,   nil,
+   607,   608,   nil,  1036,  1037,   nil,   nil,   nil,   nil,   nil,
+   805,   805,   nil,   nil,  1224,  1225,  1226,  1227,   nil,   nil,
+    20,   362,   362,  1048,   nil,   nil,   nil,   nil,   nil,    18,
+   nil,   391,   391,   nil,    19,   nil,   nil,   nil,   nil,   249,
+   249,   249,   249,    19,   nil,   nil,   nil,   737,    20,   nil,
+   nil,   nil,   nil,   650,   nil,   nil,   nil,   nil,   362,   362,
+   362,   nil,   nil,  1191,  1193,  1195,  1122,   nil,  1122,   nil,
+  1122,  1131,  1122,  1124,  1131,    18,   nil,   nil,  1131,   nil,
+  1131,   nil,   nil,   nil,   nil,   nil,   766,   nil,   nil,  1122,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1279,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,   nil,   nil,   709,   nil,    19,   249,   467,
+   249,   249,   467,   249,   nil,   828,  1165,   830,  1166,    19,
+  1167,   834,   nil,   nil,   nil,    19,   467,   249,   249,   nil,
+  1131,   nil,  1131,   nil,  1131,   nil,  1131,  1138,   844,   nil,
+   nil,   nil,    19,  1141,   847,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1147,  1131,  1148,   nil,  1265,  1267,  1269,  1271,
+   nil,  1272,   nil,   861,   nil,   nil,   nil,   757,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,    20,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,   249,   249,    20,  1288,
+  1289,  1290,  1291,   nil,    20,    20,   249,   nil,   nil,   nil,
+   nil,  1293,   nil,   nil,   806,   806,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   805,   nil,    19,   nil,   nil,   nil,    19,
+   nil,   805,   nil,   355,    19,  1240,   nil,  1242,   nil,   nil,
+   805,   805,   nil,   837,   nil,   nil,   650,   nil,   840,   nil,
+   nil,   nil,   355,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    19,   nil,  1260,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   249,    19,    19,   nil,
+   nil,   959,   nil,   nil,   nil,   837,   nil,   nil,   650,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   878,   nil,  1281,    20,  1282,
+   nil,  1283,   362,    20,   nil,   nil,   nil,   nil,   nil,  1251,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1292,   362,   nil,    19,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,  1007,   nil,   nil,
+   nil,   nil,   nil,   nil,   907,   nil,    20,    20,   nil,   nil,
+   nil,   nil,   837,   650,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   936,   249,
+   nil,   nil,   nil,   nil,  1026,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   954,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    21,   nil,   nil,   805,   nil,   805,    21,   nil,   805,
+   805,   nil,    20,   nil,   nil,   nil,   805,   nil,   249,   nil,
+   nil,   nil,   805,   805,   nil,   nil,   nil,   nil,   249,   nil,
+   805,   805,   nil,   nil,   nil,   nil,   nil,   nil,    21,   363,
+   363,   nil,   nil,   nil,   nil,   nil,   nil,   806,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   806,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   249,   806,   806,    21,   nil,   nil,   nil,
+   nil,   nil,   nil,   837,   nil,   805,   363,   363,   363,   nil,
+  1082,   nil,  1021,   nil,   nil,  1022,   nil,   nil,   nil,   nil,
+   nil,   nil,    19,   nil,   nil,   nil,   nil,   nil,   807,   807,
+   355,   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,   355,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   249,   nil,
+   nil,   nil,   nil,  1039,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    21,   nil,    19,   nil,   nil,    19,   nil,   nil,   nil,
+    21,  1136,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1060,   nil,   249,   nil,   nil,   nil,   nil,    19,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,  1154,   362,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   362,   nil,
+    19,   nil,   nil,   467,   249,   nil,   nil,    19,   nil,   nil,
+   nil,   nil,   467,   467,   808,   808,   nil,   805,   467,   467,
+   nil,   nil,    20,   nil,   nil,    20,   805,   nil,   nil,   nil,
+   805,   nil,   nil,   nil,    21,   nil,    21,   nil,   806,    21,
+   806,   nil,   nil,   806,   806,   nil,    21,   nil,    20,   nil,
+   806,   nil,    21,    21,  1184,   nil,   806,   806,   nil,   nil,
+   nil,   nil,   nil,   nil,   806,   806,   nil,   nil,   nil,    21,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   805,   nil,    20,
+   nil,   nil,    20,   nil,   nil,   nil,    20,   nil,   nil,   nil,
+   nil,    20,    20,   nil,  1144,   nil,   nil,    20,    20,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   805,   806,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   650,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   809,   809,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,    22,   nil,
+   nil,   807,   nil,   nil,    22,   nil,   nil,   nil,   355,   807,
+   nil,   nil,    21,   nil,   nil,   nil,    21,   nil,   807,   807,
+   363,    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    22,   357,   357,    19,   363,
+   nil,   nil,   nil,    19,   249,   nil,   nil,   nil,   nil,   nil,
+    19,    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1206,
+   nil,   nil,   nil,    22,    21,    21,   nil,   nil,   467,   nil,
+   nil,   nil,   nil,   404,   413,   413,   362,   nil,   nil,   nil,
+   nil,   nil,   nil,   810,   810,   nil,    19,   362,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   806,   nil,   nil,   nil,   nil,   nil,   808,   nil,   nil,
+   806,   nil,   nil,   nil,   806,   808,   nil,    20,   nil,   nil,
+    21,   nil,    20,   nil,   808,   808,   nil,   nil,    22,    20,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   806,   nil,   nil,    19,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   807,   249,   807,    19,   nil,   807,   807,   nil,
+   nil,   nil,   806,    19,   807,   nil,   nil,   nil,   nil,   nil,
+   807,   807,    19,    19,   nil,   nil,   nil,   nil,   807,   807,
+   nil,   nil,   nil,   811,   811,   nil,   nil,   nil,   nil,    19,
+   809,    22,  1160,   468,   nil,   nil,   468,   nil,   809,   nil,
+   nil,   nil,   nil,    22,   nil,   nil,   nil,   809,   809,    22,
+   468,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   807,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,    21,
+   nil,    20,    20,  1199,   nil,   nil,   nil,   363,   808,    19,
+   808,   nil,   nil,   808,   808,   nil,   363,   nil,    20,   nil,
+   808,   362,    19,   nil,   nil,   nil,   808,   808,   nil,    19,
+   nil,   nil,   nil,   nil,   808,   808,   810,   nil,   nil,   nil,
+    21,   nil,   nil,    21,   810,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   810,   810,   nil,   nil,   nil,   nil,    22,
+   nil,   nil,   nil,    22,   nil,   nil,    21,   357,    22,   nil,
+  1244,   nil,   nil,   nil,    19,   nil,   249,   249,   nil,   808,
+   nil,   nil,   362,   nil,   nil,   nil,   357,   nil,    20,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,   nil,    21,    22,   nil,
+    21,    20,   nil,   nil,    21,   807,   nil,   nil,    20,    21,
+    21,    22,    22,   nil,   807,    21,    21,   nil,   807,   nil,
+    19,   809,   nil,   809,   nil,   nil,   809,   809,   nil,   nil,
+   nil,   nil,   nil,   809,   nil,   nil,   nil,   nil,   nil,   809,
+   809,   nil,   nil,   nil,   nil,   nil,   nil,   809,   809,   362,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   807,   811,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,   811,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   811,   811,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   809,   nil,   nil,   nil,   807,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   808,   nil,   nil,   nil,   nil,   nil,   810,   nil,   810,
+   808,   nil,   810,   810,   808,    32,   nil,   nil,   nil,   810,
+   nil,    32,   nil,   nil,   363,   810,   810,   nil,   nil,   nil,
+   nil,   nil,   nil,   810,   810,   363,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,    32,
+    32,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   808,   nil,   nil,   nil,    21,   nil,   nil,   nil,   nil,
+    21,   nil,   nil,   nil,   nil,   nil,   nil,    21,   810,   nil,
+    32,   nil,   nil,   nil,   nil,    32,    32,   nil,   nil,    32,
+   nil,   nil,   808,   nil,   nil,    21,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    21,   809,   nil,    22,   nil,   nil,   nil,
+   nil,   nil,   nil,   809,   357,   nil,   nil,   809,   nil,   nil,
+   nil,   nil,   nil,   357,   nil,   nil,   nil,   811,   nil,   811,
+   nil,   nil,   811,   811,   nil,    32,   nil,   nil,   nil,   811,
+    32,    32,    32,    32,    32,   811,   811,    22,   nil,   nil,
+    22,   nil,   nil,   811,   811,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   809,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   809,   812,   812,   811,   nil,
+   810,   nil,    21,   nil,    22,   nil,   nil,   468,   nil,   810,
+    21,    22,   nil,   810,   nil,   nil,   468,   468,   nil,    21,
+    21,   nil,   468,   468,   nil,   nil,   nil,   nil,    32,    32,
+    32,    32,    32,    32,    32,   nil,    21,   nil,    35,   363,
+    32,   nil,   nil,   nil,    35,   nil,    32,    32,    32,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   810,    35,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    35,    35,    35,   nil,    35,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   810,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   363,   nil,   nil,    35,   nil,   nil,    21,   nil,    35,    35,
+   nil,   nil,    35,   nil,   nil,   nil,   nil,    32,    32,    21,
+   nil,   nil,   nil,   814,   814,   nil,    21,    32,   nil,   nil,
+   811,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   811,
+   nil,   357,   nil,   811,   nil,   nil,    32,   nil,   nil,   nil,
+    32,   nil,   357,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,    35,   nil,
+   nil,    21,   nil,    35,    35,    35,    35,    35,   nil,   nil,
+   nil,   nil,    22,   nil,   nil,    32,   nil,    22,   nil,   nil,
+   811,   nil,   nil,  1058,    22,   nil,   nil,    32,    32,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   468,   nil,   nil,   nil,   nil,    21,    32,   nil,
+   nil,   811,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   812,
+    22,   nil,   nil,   nil,   nil,   nil,   nil,   812,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   812,   812,   nil,   nil,
+    44,   nil,   nil,   nil,    32,   nil,    44,   nil,   nil,   nil,
+   nil,    35,    35,    35,    35,    35,    35,    35,   nil,   nil,
+   nil,   nil,   nil,    35,   nil,   303,   nil,   nil,   nil,    35,
+    35,    35,    35,   nil,   nil,   nil,   nil,    44,   353,   353,
+   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   400,   303,   303,   nil,    22,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    22,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,    22,    22,   nil,    32,
+    35,    35,   nil,   nil,   nil,   nil,   814,   nil,   nil,   nil,
+    35,   nil,   nil,    22,   814,   nil,  1162,   nil,   nil,   nil,
+   nil,   nil,   nil,   814,   814,   nil,   nil,   nil,   nil,    35,
+    44,   nil,   nil,    35,    32,   nil,   nil,   nil,    35,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   812,   nil,   812,    32,   nil,   812,   812,   nil,    35,   nil,
+   nil,   nil,   812,    32,   nil,   nil,   nil,   413,   812,   812,
+    35,    35,    35,    22,   nil,   nil,   812,   812,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,    22,   nil,   nil,   nil,
+   nil,    35,   nil,    22,    32,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    44,   nil,    32,   nil,   nil,   nil,   nil,
+    32,   812,   nil,   nil,   nil,    44,   nil,    35,   nil,   nil,
+   nil,    44,   nil,   nil,   413,   nil,   nil,   nil,    22,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
+   nil,    32,   nil,   nil,    32,    32,   nil,   nil,    32,   nil,
+   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,   nil,    32,
+    32,   nil,   nil,    35,   nil,   nil,   nil,   814,   nil,   814,
+   nil,   nil,   814,   814,    22,   nil,   nil,   nil,   nil,   814,
+   nil,   nil,   nil,   nil,   nil,   814,   814,   nil,   nil,   nil,
+   nil,   nil,   nil,   814,   814,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    44,   nil,   nil,   nil,    44,   nil,   nil,   nil,   353,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   814,   nil,
+   nil,   nil,   nil,   812,   nil,   nil,   nil,    35,   353,   nil,
+   nil,   nil,   812,   nil,   nil,   nil,   812,   nil,   nil,   nil,
+    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    44,    44,   nil,    35,   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,   812,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,    32,
+    35,   nil,   nil,   nil,    32,    32,   nil,   nil,    35,    44,
+   nil,    32,   nil,   nil,   812,   nil,   nil,   nil,    35,   nil,
+   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   814,   nil,   nil,   nil,    35,   nil,   nil,    35,    35,   814,
+   nil,    35,   nil,   814,   nil,   nil,    35,    35,   nil,   nil,
+   nil,   nil,    35,    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,
+   814,   nil,    32,   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,   814,   nil,   nil,    32,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    32,    32,   nil,   nil,   nil,    44,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   353,   nil,   nil,   nil,
+    32,   nil,   nil,   nil,   nil,   353,   nil,   nil,   nil,   nil,
+   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,   nil,    44,   nil,    35,    35,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,
+    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    35,    32,   nil,   256,    44,   nil,   nil,   nil,
+    32,   nil,   nil,    44,   nil,   326,   326,   326,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,   nil,   nil,   374,   375,   nil,
+   377,   378,   nil,   380,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,   nil,    32,    32,   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,    35,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    35,    35,   nil,   nil,
+   nil,   nil,   nil,   353,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    35,   353,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   326,   472,   nil,   nil,
+   478,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    35,   478,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    44,   nil,   nil,   nil,    35,   256,   nil,   nil,
+   nil,   nil,   nil,    35,   555,   556,   557,   558,   559,   560,
+   561,   562,   563,   564,   565,   566,   567,   568,   569,   570,
+   571,   572,   573,   574,   575,   576,   nil,   nil,   nil,   nil,
+   577,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,   nil,
+    35,    35,   nil,   nil,   326,   326,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   326,    35,   nil,   nil,   nil,   nil,
+    44,   326,   nil,   326,   nil,   nil,   326,   326,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    44,   nil,   nil,    35,   nil,   nil,   nil,   nil,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   634,
+   nil,   635,   nil,   nil,   nil,    44,   nil,   nil,  1158,   326,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   303,
+   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,
+   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
+   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,   731,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   303,   nil,   nil,   nil,
+    44,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   764,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   478,   478,
+   478,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   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,   375,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   326,   nil,   326,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   478,   nil,   nil,   858,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   326,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   326,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   478,   326,   nil,   nil,   nil,   915,   nil,   326,   326,
+   478,   478,   nil,   nil,   nil,   nil,   478,   478,   nil,   nil,
+   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   731,   764,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1065,  1066,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1086,  1087,   478,   478,   478,   478,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1120,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   478,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326 ]
+
+racc_goto_check = [
+     6,   251,   251,   217,   113,    78,    95,    95,    46,   125,
+    49,    78,   178,   217,    74,    44,    14,    10,     6,     6,
+    27,   155,   117,   117,    96,   130,    27,     2,    12,    79,
+    78,    36,    13,    35,    12,    32,   124,    54,    54,    40,
+    40,    40,    78,    78,    78,    44,    63,    98,   153,    32,
+    37,    21,    21,    16,    61,    61,   212,    27,   252,    83,
+    83,    37,     8,    26,    28,    28,     6,   177,   177,   118,
+    78,   120,    81,    81,    76,   148,    45,    45,   196,   196,
+    78,    78,    78,   159,   159,    27,     5,   256,    81,   206,
+    93,    93,    49,    70,   179,    27,   130,     6,   261,     6,
+     6,     6,     6,     6,     6,   132,    64,     6,    86,   150,
+    75,    62,    62,    62,   211,    71,    35,   147,   194,    85,
+   246,   246,    36,   169,    39,    39,   149,    88,    88,   167,
+     9,   165,    61,    85,   171,    78,     9,    23,    23,    99,
+   261,    23,    99,     7,    78,   257,    92,    92,    92,    33,
+    27,   172,    69,    69,    69,    33,     1,     5,   233,    27,
+     3,   233,   197,   197,    88,    88,    88,    11,    24,    15,
+    81,    24,   197,    12,    80,    80,   245,   245,   251,    92,
+    17,    19,    20,    22,    25,    24,    33,    29,    31,    47,
+    48,   234,    51,   234,    52,     9,   234,    53,    55,   234,
+    57,    98,    23,    23,    23,    23,    95,    60,    66,    84,
+    89,    91,   221,   221,    33,   261,    97,   257,    13,    30,
+    30,   109,   195,    30,   112,   127,   129,   133,    78,     6,
+   134,   135,   136,   137,   171,    40,   138,   169,   217,   166,
+    78,   166,   139,    27,   177,    27,    78,   140,    27,   151,
+   156,   172,   162,    13,   163,    27,     6,     6,    99,    99,
+     9,    27,    27,    78,    26,    26,   170,     7,    26,     9,
+   173,   174,   212,   175,   176,   181,   182,   184,    27,    33,
+    37,   185,    26,   187,    30,    30,    30,    30,    33,    79,
+   188,   189,   190,   191,    81,   192,   124,   246,   211,   194,
+   199,    94,    94,    94,   194,   194,   148,   211,   201,   165,
+   148,   202,     6,   203,   207,   208,   214,   210,    40,    40,
+   150,   215,    76,   167,   210,   224,     6,     6,    40,   225,
+   147,    76,     6,   226,    94,    95,   229,    92,    92,    64,
+    13,    95,   230,   132,    74,    13,    78,   231,    35,   120,
+    78,    44,   232,    93,    78,    78,   169,   149,   211,   235,
+   130,    27,    39,    39,   236,    27,    61,    61,   237,    99,
+    27,   238,    33,    78,    33,    30,    30,    33,   239,    44,
+   240,   179,   243,   244,    33,    78,    37,     6,    13,    13,
+    33,    33,    30,    30,   250,   252,   254,     8,    78,    78,
+    27,    70,   221,   221,    37,   255,    70,    33,   195,   195,
+   206,   260,     6,    27,    27,    36,   256,   130,   193,   193,
+    75,     5,    35,    71,   nil,    92,    92,    86,    71,    36,
+   nil,   nil,    69,    37,   nil,    92,    79,    85,    88,    85,
+   251,    69,   nil,    61,   nil,   nil,   nil,   132,   nil,     6,
+   118,   219,   219,    61,    78,    63,   nil,    88,   nil,    23,
+    95,    63,   234,   nil,    35,   234,    95,   nil,    12,    27,
+    44,     9,   nil,   nil,    35,   nil,     2,    16,     5,   120,
+     6,     6,   nil,   nil,     6,    61,   nil,    10,   nil,   nil,
+    33,    36,    21,    61,    33,   153,   nil,   nil,    37,    33,
+    83,    40,   nil,   251,   252,   251,   177,   166,   210,   nil,
+   117,   148,   148,    81,    35,   nil,   nil,   210,    95,    85,
+   159,   210,   nil,   nil,    36,    32,    32,   nil,   nil,    33,
+   nil,    32,    32,    36,   nil,    61,    61,   nil,   nil,    96,
+    40,    30,    33,    33,     6,   nil,   nil,   nil,   160,    76,
+    40,   160,    36,    98,   nil,   130,    78,    78,    95,   246,
+   261,    45,    30,   196,   nil,    62,    93,    44,   210,   nil,
+   166,    62,    28,   nil,   nil,   nil,   nil,   nil,   nil,     9,
+   nil,    94,     6,   nil,   nil,   nil,   252,   nil,   nil,     6,
+    94,   nil,    74,    79,   nil,    95,   nil,   nil,    33,   210,
+   nil,    74,   nil,   nil,    99,    95,    81,   nil,   nil,    85,
+    85,   nil,   nil,    78,    36,    85,    85,   nil,     6,    36,
+    36,    78,   nil,   nil,    40,   nil,   nil,   125,    27,    54,
+    78,   nil,   155,   nil,   nil,    98,   219,    95,   nil,   nil,
+   nil,   nil,   nil,   nil,    13,    95,   nil,    13,   nil,   nil,
+   nil,   193,    24,   nil,    78,    94,   nil,    78,   nil,   193,
+     6,    24,    24,    62,   nil,   nil,    40,    24,    24,    27,
+     6,   nil,    27,   nil,   nil,   130,    40,   249,   249,   249,
+    78,   nil,    12,    81,   nil,   166,   nil,    95,   nil,   166,
+   nil,   nil,   nil,    81,   nil,    27,   nil,   nil,   nil,   117,
+   217,   159,   159,   nil,   nil,    88,   nil,   nil,   nil,   nil,
+     6,    78,   nil,   nil,    88,   nil,    40,   nil,    78,   nil,
+   nil,    32,   nil,   148,   148,    81,    27,   nil,    30,    27,
+     6,    81,     6,    27,   nil,   nil,    14,   nil,    27,    27,
+   nil,    36,    36,    36,    27,    27,    21,   nil,   nil,    26,
+   nil,   nil,   nil,   nil,    83,   nil,   nil,    33,    26,    26,
+   113,   166,   nil,    44,    26,    26,   nil,    81,   nil,   117,
+   nil,   251,   117,   nil,   nil,    81,   nil,    44,    44,   nil,
+   nil,   nil,   nil,    30,   124,   nil,   nil,   nil,   nil,    78,
+   nil,   nil,   nil,   nil,     6,   nil,   nil,    78,    33,   nil,
+   nil,    33,    46,    12,    49,    85,    78,    78,   nil,   178,
+   nil,   nil,   nil,   nil,   159,   nil,   nil,   nil,   nil,    74,
+   160,   nil,     6,   nil,    33,    95,   nil,   nil,    95,   nil,
+    74,   nil,   193,     6,   251,   nil,     9,   193,   193,    44,
+   nil,   nil,    12,     9,   nil,    92,   nil,   nil,    78,     6,
+   193,    85,    85,    85,    85,    33,   nil,    24,    33,    78,
+   nil,   nil,    33,   nil,     6,    94,     6,    33,    33,   nil,
+   219,   219,    44,    33,    33,   nil,   nil,   nil,   nil,    13,
+   219,    44,    81,   nil,   nil,   nil,   219,    44,   nil,    78,
+   nil,    13,   nil,   nil,    78,   nil,   nil,   nil,    36,   nil,
+    44,    78,   nil,   193,    27,   nil,   nil,    94,   nil,    27,
+   nil,   nil,   nil,   130,   nil,     6,    27,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    13,   nil,   nil,
+   nil,   nil,    88,   nil,    27,     6,   219,    78,   nil,   nil,
+   nil,    12,   nil,    88,   nil,   nil,   nil,   nil,   111,   251,
+   nil,   nil,    27,   251,    26,   nil,   nil,    23,   nil,   nil,
+   nil,   nil,    44,   nil,   nil,   nil,   nil,    44,    44,   nil,
+    78,   nil,    78,   nil,   nil,    78,    78,    85,   nil,   nil,
+   nil,   nil,    78,   nil,    94,   nil,   111,   nil,    78,    78,
+   nil,   nil,   nil,   nil,   nil,   160,    78,    78,   160,   nil,
+   nil,    44,   160,   nil,   160,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   217,   nil,    78,     6,   nil,   nil,   nil,
+   nil,    35,   nil,   nil,   nil,   251,    13,   nil,   nil,   nil,
+    27,   nil,   nil,    33,    13,   nil,    78,   nil,    33,    30,
+   nil,    78,    61,    13,    78,    33,   nil,   nil,   nil,   nil,
+   nil,    27,   nil,    78,    78,   nil,   nil,   nil,   nil,    27,
+    13,   nil,   nil,    33,    23,   nil,   130,   nil,    27,    27,
+    78,   nil,   nil,    78,   160,   nil,   160,   nil,   160,   nil,
+   160,    33,   nil,   219,   nil,    27,   111,   nil,    27,    44,
+    44,    44,   nil,   nil,   nil,    94,    23,   160,   nil,    44,
+   nil,   nil,   nil,   nil,   nil,   111,   111,     6,   111,   nil,
+   nil,    72,   nil,   nil,   nil,   249,   249,   nil,   249,   249,
+    44,   249,     6,     6,     6,   nil,   nil,   164,   nil,   164,
+    13,   nil,   152,   nil,    78,   nil,   nil,   nil,   nil,   nil,
+    78,   nil,   nil,   nil,     6,   nil,    30,   nil,   nil,   nil,
+    13,   nil,   nil,    78,     6,    27,   nil,    88,   nil,    33,
+    78,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    27,   nil,
+   nil,   nil,   nil,    78,   nil,    27,   nil,   nil,    30,   nil,
+    33,   nil,    78,   nil,   nil,   nil,    78,   nil,    33,    72,
+   nil,    37,   nil,   nil,    95,    13,   nil,    33,    33,   nil,
+   nil,    78,   nil,   nil,    44,    78,   nil,   nil,   nil,   nil,
+    90,    90,   nil,    72,    33,   nil,   253,     6,    88,   nil,
+    27,   nil,   nil,    40,    34,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,    78,   nil,     6,     6,     6,     6,   nil,
+     6,    13,   nil,   nil,   nil,     6,    44,    34,   nil,    72,
+   nil,    78,   nil,   nil,   nil,   nil,   nil,    34,    34,    34,
+   nil,    34,    34,    34,    78,   nil,    27,   nil,   nil,    23,
+    23,   nil,   nil,   nil,     6,   nil,   nil,   nil,     6,     6,
+     6,     6,    81,   nil,    33,    88,   nil,   nil,   nil,    34,
+     6,   nil,   nil,   nil,    34,    34,   nil,    33,    34,    34,
+    34,    34,   nil,    38,    33,   nil,    81,   nil,   nil,    38,
+   152,   nil,   nil,   nil,   152,    90,   152,    90,   nil,   nil,
+    90,    90,   nil,   111,   111,   nil,   nil,   nil,   nil,   nil,
+   101,   101,   nil,   nil,   249,   249,   249,   249,   nil,   nil,
+    38,    38,    38,   111,   nil,   nil,   nil,   nil,   nil,    33,
+   nil,    30,    30,   nil,    34,   nil,   nil,   nil,   nil,    34,
+    34,    34,    34,    34,   nil,   nil,   nil,    72,    38,   nil,
+   nil,   nil,   nil,    90,   nil,   nil,   nil,   nil,    38,    38,
+    38,   nil,   nil,   161,   161,   161,   152,   nil,   152,   nil,
+   152,   253,   152,   164,   253,    33,   nil,   nil,   253,   nil,
+   253,   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,   152,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   249,   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    38,   nil,   nil,    90,   nil,    34,    34,    34,
+    34,    34,    34,    34,   nil,    72,   164,    72,   164,    34,
+   164,    72,   nil,   nil,   nil,    34,    34,    34,    34,   nil,
+   253,   nil,   253,   nil,   253,   nil,   253,   111,    72,   nil,
+   nil,   nil,    34,   111,    72,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   111,   253,   111,   nil,   161,   161,   161,   161,
+   nil,   161,   nil,    72,   nil,   nil,   nil,    90,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,    38,   nil,
+   nil,    38,   nil,   nil,   nil,   nil,    34,    34,    38,   161,
+   161,   161,   161,   nil,    38,    38,    34,   nil,   nil,   nil,
+   nil,   161,   nil,   nil,   102,   102,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   101,   nil,    34,   nil,   nil,   nil,    34,
+   nil,   101,   nil,    34,    34,   164,   nil,   164,   nil,   nil,
+   101,   101,   nil,    90,   nil,   nil,    90,   nil,    90,   nil,
+   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    34,   nil,   164,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,    34,   nil,
+   nil,    72,   nil,   nil,   nil,    90,   nil,   nil,    90,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,   nil,   nil,    38,    90,   nil,   164,    38,   164,
+   nil,   164,    38,    38,   nil,   nil,   nil,   nil,   nil,   111,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   164,    38,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    38,   nil,   nil,   nil,    72,   nil,   nil,
+   nil,   nil,   nil,   nil,    90,   nil,    38,    38,   nil,   nil,
+   nil,   nil,    90,    90,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,    34,
+   nil,   nil,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    90,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,   nil,   101,   nil,   101,    42,   nil,   101,
+   101,   nil,    38,   nil,   nil,   nil,   101,   nil,    34,   nil,
+   nil,   nil,   101,   101,   nil,   nil,   nil,   nil,    34,   nil,
+   101,   101,   nil,   nil,   nil,   nil,   nil,   nil,    42,    42,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   102,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   102,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    34,   102,   102,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,    90,   nil,   101,    42,    42,    42,   nil,
+    72,   nil,    90,   nil,   nil,    90,   nil,   nil,   nil,   nil,
+   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,   103,   103,
+    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    90,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,    34,   nil,   nil,    34,   nil,   nil,   nil,
+    42,    72,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    90,   nil,    34,   nil,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,    72,    38,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,
+    34,   nil,   nil,    34,    34,   nil,   nil,    34,   nil,   nil,
+   nil,   nil,    34,    34,   104,   104,   nil,   101,    34,    34,
+   nil,   nil,    38,   nil,   nil,    38,   101,   nil,   nil,   nil,
+   101,   nil,   nil,   nil,    42,   nil,    42,   nil,   102,    42,
+   102,   nil,   nil,   102,   102,   nil,    42,   nil,    38,   nil,
+   102,   nil,    42,    42,    72,   nil,   102,   102,   nil,   nil,
+   nil,   nil,   nil,   nil,   102,   102,   nil,   nil,   nil,    42,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   101,   nil,    38,
+   nil,   nil,    38,   nil,   nil,   nil,    38,   nil,   nil,   nil,
+   nil,    38,    38,   nil,    90,   nil,   nil,    38,    38,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   101,   102,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,    43,   nil,
+   nil,   103,   nil,   nil,    43,   nil,   nil,   nil,    34,   103,
+   nil,   nil,    42,   nil,   nil,   nil,    42,   nil,   103,   103,
+    42,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    43,    43,    43,    34,    42,
+   nil,   nil,   nil,    34,    34,   nil,   nil,   nil,   nil,   nil,
+    34,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,
+   nil,   nil,   nil,    43,    42,    42,   nil,   nil,    34,   nil,
+   nil,   nil,   nil,    43,    43,    43,    38,   nil,   nil,   nil,
+   nil,   nil,   nil,   106,   106,   nil,    34,    38,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   102,   nil,   nil,   nil,   nil,   nil,   104,   nil,   nil,
+   102,   nil,   nil,   nil,   102,   104,   nil,    38,   nil,   nil,
+    42,   nil,    38,   nil,   104,   104,   nil,   nil,    43,    38,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   102,   nil,   nil,    34,    38,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   103,    34,   103,    34,   nil,   103,   103,   nil,
+   nil,   nil,   102,    34,   103,   nil,   nil,   nil,   nil,   nil,
+   103,   103,    34,    34,   nil,   nil,   nil,   nil,   103,   103,
+   nil,   nil,   nil,   107,   107,   nil,   nil,   nil,   nil,    34,
+   105,    43,    34,    43,   nil,   nil,    43,   nil,   105,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,   nil,   105,   105,    43,
+    43,   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   103,   nil,   nil,    43,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,    38,    38,    34,   nil,   nil,   nil,    42,   104,    34,
+   104,   nil,   nil,   104,   104,   nil,    42,   nil,    38,   nil,
+   104,    38,    34,   nil,   nil,   nil,   104,   104,   nil,    34,
+   nil,   nil,   nil,   nil,   104,   104,   106,   nil,   nil,   nil,
+    42,   nil,   nil,    42,   106,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   106,   106,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,   nil,    43,   nil,   nil,    42,    43,    43,   nil,
+    34,   nil,   nil,   nil,    34,   nil,    34,    34,   nil,   104,
+   nil,   nil,    38,   nil,   nil,   nil,    43,   nil,    38,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,   nil,    42,    43,   nil,
+    42,    38,   nil,   nil,    42,   103,   nil,   nil,    38,    42,
+    42,    43,    43,   nil,   103,    42,    42,   nil,   103,   nil,
+    34,   105,   nil,   105,   nil,   nil,   105,   105,   nil,   nil,
+   nil,   nil,   nil,   105,   nil,   nil,   nil,   nil,   nil,   105,
+   105,   nil,   nil,   nil,   nil,   nil,   nil,   105,   105,    38,
+   nil,   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   103,   107,    43,   nil,   nil,
+   nil,   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   107,   107,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   105,   nil,   nil,   nil,   103,   nil,   nil,    38,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   104,   nil,   nil,   nil,   nil,   nil,   106,   nil,   106,
+   104,   nil,   106,   106,   104,    65,   nil,   nil,   nil,   106,
+   nil,    65,   nil,   nil,    42,   106,   106,   nil,   nil,   nil,
+   nil,   nil,   nil,   106,   106,    42,   nil,   nil,    65,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    65,    65,
+    65,   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   104,   nil,   nil,   nil,    42,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,    42,   106,   nil,
+    65,   nil,   nil,   nil,   nil,    65,    65,   nil,   nil,    65,
+   nil,   nil,   104,   nil,   nil,    42,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   105,   nil,    43,   nil,   nil,   nil,
+   nil,   nil,   nil,   105,    43,   nil,   nil,   105,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,   nil,   107,   nil,   107,
+   nil,   nil,   107,   107,   nil,    65,   nil,   nil,   nil,   107,
+    65,    65,    65,    65,    65,   107,   107,    43,   nil,   nil,
+    43,   nil,   nil,   107,   107,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   105,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   105,   108,   108,   107,   nil,
+   106,   nil,    42,   nil,    43,   nil,   nil,    43,   nil,   106,
+    42,    43,   nil,   106,   nil,   nil,    43,    43,   nil,    42,
+    42,   nil,    43,    43,   nil,   nil,   nil,   nil,    65,    65,
+    65,    65,    65,    65,    65,   nil,    42,   nil,    68,    42,
+    65,   nil,   nil,   nil,    68,   nil,    65,    65,    65,    65,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   106,    68,   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    68,    68,    68,   nil,    68,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   106,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,    68,   nil,   nil,    42,   nil,    68,    68,
+   nil,   nil,    68,   nil,   nil,   nil,   nil,    65,    65,    42,
+   nil,   nil,   nil,   115,   115,   nil,    42,    65,   nil,   nil,
+   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   107,
+   nil,    43,   nil,   107,   nil,   nil,    65,   nil,   nil,   nil,
+    65,   nil,    43,   nil,   nil,    65,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,    68,   nil,
+   nil,    42,   nil,    68,    68,    68,    68,    68,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,    65,   nil,    43,   nil,   nil,
+   107,   nil,   nil,    43,    43,   nil,   nil,    65,    65,    65,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    43,   nil,   nil,   nil,   nil,    42,    65,   nil,
+   nil,   107,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   108,
+    43,   nil,   nil,   nil,   nil,   nil,   nil,   108,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   108,   108,   nil,   nil,
+    77,   nil,   nil,   nil,    65,   nil,    77,   nil,   nil,   nil,
+   nil,    68,    68,    68,    68,    68,    68,    68,   nil,   nil,
+   nil,   nil,   nil,    68,   nil,    77,   nil,   nil,   nil,    68,
+    68,    68,    68,   nil,   nil,   nil,   nil,    77,    77,    77,
+   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,
+    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,
+   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    77,    77,    77,   nil,    43,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,    65,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,    43,   nil,    65,
+    68,    68,   nil,   nil,   nil,   nil,   115,   nil,   nil,   nil,
+    68,   nil,   nil,    43,   115,   nil,    43,   nil,   nil,   nil,
+   nil,   nil,   nil,   115,   115,   nil,   nil,   nil,   nil,    68,
+    77,   nil,   nil,    68,    65,   nil,   nil,   nil,    68,    77,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   108,   nil,   108,    65,   nil,   108,   108,   nil,    68,   nil,
+   nil,   nil,   108,    65,   nil,   nil,   nil,    43,   108,   108,
+    68,    68,    68,    43,   nil,   nil,   108,   108,   nil,    65,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,   nil,
+   nil,    68,   nil,    43,    65,   nil,   nil,    65,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    65,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    77,   nil,    65,   nil,   nil,   nil,   nil,
+    65,   108,   nil,   nil,   nil,    77,   nil,    68,   nil,   nil,
+   nil,    77,   nil,   nil,    43,   nil,   nil,   nil,    43,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
+   nil,    65,   nil,   nil,    65,    65,   nil,   nil,    65,   nil,
+   nil,   nil,   nil,    65,    65,   nil,   nil,   nil,   nil,    65,
+    65,   nil,   nil,    68,   nil,   nil,   nil,   115,   nil,   115,
+   nil,   nil,   115,   115,    43,   nil,   nil,   nil,   nil,   115,
+   nil,   nil,   nil,   nil,   nil,   115,   115,   nil,   nil,   nil,
+   nil,   nil,   nil,   115,   115,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    77,   nil,   nil,   nil,    77,   nil,   nil,   nil,    77,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   115,   nil,
+   nil,   nil,   nil,   108,   nil,   nil,   nil,    68,    77,   nil,
+   nil,   nil,   108,   nil,   nil,   nil,   108,   nil,   nil,   nil,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    77,    77,   nil,    68,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    68,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,    65,
+    68,   nil,   nil,   nil,    65,    65,   nil,   nil,    68,    77,
+   nil,    65,   nil,   nil,   108,   nil,   nil,   nil,    68,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,    65,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    65,   nil,   nil,
+   115,   nil,   nil,   nil,    68,   nil,   nil,    68,    68,   115,
+   nil,    68,   nil,   115,   nil,   nil,    68,    68,   nil,   nil,
+   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   115,   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    65,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   115,   nil,   nil,    65,   nil,    65,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    65,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    65,    65,   nil,   nil,   nil,    77,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+    65,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,
+   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    68,   nil,   nil,    77,   nil,    68,    68,   nil,
+   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,
+    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    68,    65,   nil,    41,    77,   nil,   nil,   nil,
+    65,   nil,   nil,    77,   nil,    41,    41,    41,   nil,   nil,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,
+    41,    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,   nil,    65,   nil,    65,    65,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,
+   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,    68,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    68,    68,   nil,   nil,
+   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,    77,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,    77,
+   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,
+    41,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    77,   nil,   nil,   nil,    68,    41,   nil,   nil,
+   nil,   nil,   nil,    68,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,   nil,
+    68,    68,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,    68,   nil,   nil,   nil,   nil,
+    77,    41,   nil,    41,   nil,   nil,    41,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    77,   nil,   nil,    68,   nil,   nil,   nil,   nil,    77,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,    77,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   nil,    41,   nil,   nil,   nil,    77,   nil,   nil,    77,    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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,
+   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
+   nil,   nil,   nil,   nil,   nil,    77,   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,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+    77,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,    41,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    77,   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,    41,
+   nil,   nil,    41,   nil,    41,   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,
+    41,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    41,    41,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,    41,    41,   nil,   nil,   nil,    41,   nil,    41,    41,
+    41,    41,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,    41,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,    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,   nil,
+   nil,   nil,   nil,   nil,   nil,   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,    41,   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,   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,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    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,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,    41,    41,    41,    41,    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,
+   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,
+   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,   nil,   nil,   nil,   nil,   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,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   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 ]
+
+racc_goto_pointer = [
+   nil,   156,    25,   160,   nil,    81,    -2,   135,    57,   128,
+  -125,   157,  -209,    -7,  -482,  -563,  -679,  -750,   nil,  -429,
+  -163,    40,   171,    65,   -59,   107,    38,    18,  -162,   -39,
+   147,    45,  -195,   147,  1222,  -198,  -357,    31,  1301,   104,
+     4,  3700,  1739,  2066,    -9,  -477,   -19,   -73,   -73,   -17,
+   nil,   165,   -99,  -381,   -37,  -457,   nil,  -669,   nil,   nil,
+   177,  -178,    79,  -267,  -488,  2573,  -379,   nil,  2806,   117,
+    54,    76,   865,   nil,   -26,    69,  -296,  3018,     3,  -381,
+    96,    61,   nil,    48,  -247,  -111,    59,   nil,    87,   158,
+   984,   143,   111,  -296,   266,   -26,  -290,  -368,  -282,  -460,
+   nil,   777,  1001,  1285,  1391,  1504,  1600,  1730,  2213,   194,
+   nil,   449,  -165,   -66,   nil,  2340,   nil,  -370,  -797,   nil,
+  -797,   nil,   nil,   nil,  -362,  -649,   nil,   148,   nil,  -188,
+    20,   nil,    84,   161,   163,  -152,   163,  -440,  -440,  -805,
+  -169,   nil,   nil,   nil,   nil,   nil,   nil,  -839,  -445,  -394,
+  -848,  -707,   122,  -690,   nil,  -498,  -760,   nil,   nil,  -420,
+  -190,   259,  -872,  -756,   383,  -879,  -503,  -695,   nil,  -773,
+  -887, -1019, -1002,  -147,  -624,   180,  -404,  -173,   -16,  -214,
+   nil,   -44,   -44,   nil,  -555,  -380,   nil,  -300,  -856,  -747,
+  -984,  -583,  -908,  -135,  -668,  -564,  -475,  -810,   nil,  -668,
+   nil,  -661,  -474,  -472,   nil,   nil,  -698,  -473,  -473,   nil,
+  -662,  -872,  -911,   nil,  -672,  -667,   nil,   -96,   nil,  -102,
+   nil,  -591,   nil,   nil,  -491,  -405,  -604,   nil,   nil,   240,
+   241,   245,   249,  -268,  -230,   255,   259,   262,  -526,  -306,
+  -305,   nil,   nil,   273,  -291,  -186,  -120,   nil,   nil,   170,
+  -348,  -239,  -684,   206,  -342,  -780,  -657, -1047,   nil,   nil,
+   105,  -504 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   341,     7,   399,   344,
+   nil,   nil,   nil,   498,   nil,   nil,   nil,   nil,   340,   342,
+   nil,   nil,   nil,   nil,    14,    15,    23,   254,   nil,   nil,
+    17,   nil,   466,   255,   373,   nil,   nil,   671,   258,   nil,
+    28,    26,   259,   253,   543,   nil,   nil,   nil,   nil,   150,
+    27,   nil,   nil,   nil,   nil,   nil,   394,   nil,    29,    30,
+   nil,   854,   nil,   nil,   nil,   361,   nil,    31,   358,   481,
+    38,   nil,   nil,    40,    43,    42,   nil,   250,   251,   411,
+   nil,   489,   149,    95,   nil,   471,   111,    52,    55,   290,
+   332,   nil,   482,   nil,   483,   494,   506,   725,   598,   330,
+   315,    56,    57,    58,    59,    60,    61,    62,    63,    64,
+    66,   nil,   nil,   316,    70,    71,    72,   nil,   nil,    73,
+  1030,    74,    75,    76,   nil,   nil,    77,   nil,    78,   nil,
+   652,    79,   237,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   320,   308,   734,   934,   661,  1031,   752,   518,   nil,
+   753,   754,   504,   500,   501,   nil,  1236,   748,  1121,   nil,
+   505,   nil,   nil,   nil,   507,   nil,   509,   nil,  1009,   nil,
+   nil,   nil,   516,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   493,   nil,   nil,   832,   nil,   nil,   583,   nil,   nil,   nil,
+   nil,   nil,   nil,  1104,   nil,   777,   980,   779,   780,   784,
+   781,   782,   nil,   nil,   783,   785,   nil,   nil,   nil,   979,
+   981,   nil,   789,   791,   792,   793,   794,   nil,   798,   527,
+   799,   800,   801,   802,   nil,   nil,   nil,    94,    96,    98,
+   nil,   nil,   nil,   nil,   682,   nil,   nil,   nil,   nil,   nil,
+   nil,   107,   108,   nil,   nil,   238,   944,   241,   503,   nil,
+   508,   952,   521,   523,   524,  1132,   528,  1133,   531,   534,
+   nil,   335 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 150, :_reduce_1,
+  2, 148, :_reduce_2,
+  2, 149, :_reduce_3,
+  1, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  3, 151, :_reduce_6,
+  2, 151, :_reduce_none,
+  1, 154, :_reduce_none,
+  0, 158, :_reduce_9,
+  3, 154, :_reduce_10,
+  3, 157, :_reduce_11,
+  0, 164, :_reduce_12,
+  6, 159, :_reduce_13,
+  3, 159, :_reduce_14,
+  2, 160, :_reduce_15,
+  1, 165, :_reduce_none,
+  1, 165, :_reduce_none,
+  3, 165, :_reduce_18,
+  2, 165, :_reduce_19,
+  1, 166, :_reduce_none,
+  0, 167, :_reduce_21,
+  3, 166, :_reduce_22,
+  0, 178, :_reduce_23,
+  4, 156, :_reduce_24,
+  3, 156, :_reduce_25,
+  3, 156, :_reduce_26,
+  3, 156, :_reduce_27,
+  2, 156, :_reduce_28,
+  3, 156, :_reduce_29,
+  3, 156, :_reduce_30,
+  3, 156, :_reduce_31,
+  3, 156, :_reduce_32,
+  3, 156, :_reduce_33,
+  4, 156, :_reduce_34,
+  1, 156, :_reduce_none,
+  3, 156, :_reduce_36,
+  3, 156, :_reduce_37,
+  5, 156, :_reduce_38,
+  3, 156, :_reduce_39,
+  1, 156, :_reduce_none,
+  3, 171, :_reduce_41,
+  3, 171, :_reduce_42,
+  6, 171, :_reduce_43,
+  5, 171, :_reduce_44,
+  5, 171, :_reduce_45,
+  5, 171, :_reduce_46,
+  5, 171, :_reduce_47,
+  4, 171, :_reduce_48,
+  6, 171, :_reduce_49,
+  4, 171, :_reduce_50,
+  6, 171, :_reduce_51,
+  3, 171, :_reduce_52,
+  1, 179, :_reduce_53,
+  3, 179, :_reduce_54,
+  1, 179, :_reduce_none,
+  1, 177, :_reduce_none,
+  3, 177, :_reduce_57,
+  3, 177, :_reduce_58,
+  3, 177, :_reduce_59,
+  2, 177, :_reduce_60,
+  0, 194, :_reduce_61,
+  4, 177, :_reduce_62,
+  0, 195, :_reduce_63,
+  4, 177, :_reduce_64,
+  1, 177, :_reduce_none,
+  1, 193, :_reduce_66,
+  2, 185, :_reduce_67,
+  0, 200, :_reduce_68,
+  5, 189, :_reduce_69,
+  1, 170, :_reduce_70,
+  0, 203, :_reduce_71,
+  0, 204, :_reduce_72,
+  4, 201, :_reduce_73,
+  1, 173, :_reduce_none,
+  1, 173, :_reduce_none,
+  1, 205, :_reduce_none,
+  4, 205, :_reduce_77,
+  0, 213, :_reduce_78,
+  4, 210, :_reduce_79,
+  1, 212, :_reduce_80,
+  2, 187, :_reduce_81,
+  3, 187, :_reduce_82,
+  4, 187, :_reduce_83,
+  5, 187, :_reduce_84,
+  4, 187, :_reduce_85,
+  5, 187, :_reduce_86,
+  2, 187, :_reduce_87,
+  2, 187, :_reduce_88,
+  2, 187, :_reduce_89,
+  2, 187, :_reduce_90,
+  2, 187, :_reduce_91,
+  1, 172, :_reduce_none,
+  3, 172, :_reduce_93,
+  1, 218, :_reduce_none,
+  3, 218, :_reduce_95,
+  1, 217, :_reduce_96,
+  2, 217, :_reduce_97,
+  3, 217, :_reduce_98,
+  5, 217, :_reduce_99,
+  2, 217, :_reduce_100,
+  4, 217, :_reduce_101,
+  2, 217, :_reduce_102,
+  4, 217, :_reduce_103,
+  1, 217, :_reduce_104,
+  3, 217, :_reduce_105,
+  1, 221, :_reduce_none,
+  3, 221, :_reduce_107,
+  2, 220, :_reduce_108,
+  3, 220, :_reduce_109,
+  1, 223, :_reduce_110,
+  3, 223, :_reduce_111,
+  1, 222, :_reduce_112,
+  1, 222, :_reduce_113,
+  4, 222, :_reduce_114,
+  3, 222, :_reduce_115,
+  3, 222, :_reduce_116,
+  3, 222, :_reduce_117,
+  3, 222, :_reduce_118,
+  2, 222, :_reduce_119,
+  1, 222, :_reduce_120,
+  1, 174, :_reduce_121,
+  1, 174, :_reduce_122,
+  4, 174, :_reduce_123,
+  3, 174, :_reduce_124,
+  3, 174, :_reduce_125,
+  3, 174, :_reduce_126,
+  3, 174, :_reduce_127,
+  2, 174, :_reduce_128,
+  1, 174, :_reduce_129,
+  1, 226, :_reduce_130,
+  1, 226, :_reduce_none,
+  2, 227, :_reduce_132,
+  1, 227, :_reduce_133,
+  3, 227, :_reduce_134,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_138,
+  1, 196, :_reduce_none,
+  1, 168, :_reduce_140,
+  1, 168, :_reduce_none,
+  1, 169, :_reduce_142,
+  0, 231, :_reduce_143,
+  4, 169, :_reduce_144,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  3, 188, :_reduce_216,
+  3, 188, :_reduce_217,
+  6, 188, :_reduce_218,
+  5, 188, :_reduce_219,
+  5, 188, :_reduce_220,
+  5, 188, :_reduce_221,
+  5, 188, :_reduce_222,
+  4, 188, :_reduce_223,
+  3, 188, :_reduce_224,
+  3, 188, :_reduce_225,
+  3, 188, :_reduce_226,
+  2, 188, :_reduce_227,
+  2, 188, :_reduce_228,
+  2, 188, :_reduce_229,
+  2, 188, :_reduce_230,
+  3, 188, :_reduce_231,
+  3, 188, :_reduce_232,
+  3, 188, :_reduce_233,
+  3, 188, :_reduce_234,
+  3, 188, :_reduce_235,
+  3, 188, :_reduce_236,
+  4, 188, :_reduce_237,
+  2, 188, :_reduce_238,
+  2, 188, :_reduce_239,
+  3, 188, :_reduce_240,
+  3, 188, :_reduce_241,
+  3, 188, :_reduce_242,
+  3, 188, :_reduce_243,
+  1, 188, :_reduce_none,
+  3, 188, :_reduce_245,
+  3, 188, :_reduce_246,
+  3, 188, :_reduce_247,
+  3, 188, :_reduce_248,
+  3, 188, :_reduce_249,
+  2, 188, :_reduce_250,
+  2, 188, :_reduce_251,
+  3, 188, :_reduce_252,
+  3, 188, :_reduce_253,
+  3, 188, :_reduce_254,
+  3, 188, :_reduce_255,
+  3, 188, :_reduce_256,
+  6, 188, :_reduce_257,
+  4, 188, :_reduce_258,
+  6, 188, :_reduce_259,
+  4, 188, :_reduce_260,
+  6, 188, :_reduce_261,
+  1, 188, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  3, 234, :_reduce_267,
+  3, 234, :_reduce_268,
+  1, 237, :_reduce_269,
+  1, 238, :_reduce_none,
+  2, 238, :_reduce_271,
+  4, 238, :_reduce_272,
+  2, 238, :_reduce_273,
+  1, 232, :_reduce_none,
+  3, 232, :_reduce_275,
+  3, 242, :_reduce_276,
+  5, 242, :_reduce_277,
+  3, 242, :_reduce_278,
+  1, 244, :_reduce_none,
+  1, 244, :_reduce_none,
+  1, 182, :_reduce_none,
+  1, 182, :_reduce_none,
+  2, 182, :_reduce_283,
+  4, 182, :_reduce_284,
+  2, 182, :_reduce_285,
+  1, 216, :_reduce_286,
+  2, 216, :_reduce_287,
+  2, 216, :_reduce_288,
+  4, 216, :_reduce_289,
+  1, 216, :_reduce_290,
+  0, 247, :_reduce_291,
+  2, 209, :_reduce_292,
+  2, 246, :_reduce_293,
+  1, 246, :_reduce_294,
+  2, 245, :_reduce_295,
+  1, 245, :_reduce_none,
+  1, 239, :_reduce_297,
+  2, 239, :_reduce_298,
+  3, 239, :_reduce_299,
+  4, 239, :_reduce_300,
+  1, 176, :_reduce_301,
+  1, 176, :_reduce_302,
+  3, 175, :_reduce_303,
+  4, 175, :_reduce_304,
+  2, 175, :_reduce_305,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_316,
+  0, 280, :_reduce_317,
+  4, 235, :_reduce_318,
+  0, 281, :_reduce_319,
+  3, 235, :_reduce_320,
+  0, 282, :_reduce_321,
+  4, 235, :_reduce_322,
+  3, 235, :_reduce_323,
+  3, 235, :_reduce_324,
+  2, 235, :_reduce_325,
+  3, 235, :_reduce_326,
+  0, 283, :_reduce_327,
+  4, 235, :_reduce_328,
+  1, 235, :_reduce_329,
+  4, 235, :_reduce_330,
+  3, 235, :_reduce_331,
+  1, 235, :_reduce_332,
+  5, 235, :_reduce_333,
+  4, 235, :_reduce_334,
+  3, 235, :_reduce_335,
+  2, 235, :_reduce_336,
+  1, 235, :_reduce_none,
+  2, 235, :_reduce_338,
+  1, 235, :_reduce_339,
+  6, 235, :_reduce_340,
+  6, 235, :_reduce_341,
+  4, 235, :_reduce_342,
+  4, 235, :_reduce_343,
+  5, 235, :_reduce_344,
+  4, 235, :_reduce_345,
+  5, 235, :_reduce_346,
+  6, 235, :_reduce_347,
+  0, 284, :_reduce_348,
+  6, 235, :_reduce_349,
+  0, 285, :_reduce_350,
+  0, 286, :_reduce_351,
+  8, 235, :_reduce_352,
+  0, 287, :_reduce_353,
+  5, 235, :_reduce_354,
+  4, 235, :_reduce_355,
+  4, 235, :_reduce_356,
+  1, 235, :_reduce_357,
+  1, 235, :_reduce_358,
+  1, 235, :_reduce_359,
+  1, 235, :_reduce_360,
+  1, 181, :_reduce_361,
+  1, 257, :_reduce_none,
+  1, 263, :_reduce_none,
+  1, 266, :_reduce_none,
+  1, 268, :_reduce_none,
+  1, 269, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 273, :_reduce_none,
+  1, 275, :_reduce_369,
+  1, 278, :_reduce_370,
+  1, 197, :_reduce_371,
+  1, 288, :_reduce_none,
+  1, 289, :_reduce_none,
+  1, 290, :_reduce_none,
+  1, 291, :_reduce_none,
+  1, 292, :_reduce_none,
+  1, 162, :_reduce_none,
+  1, 293, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 264, :_reduce_none,
+  1, 264, :_reduce_none,
+  2, 264, :_reduce_none,
+  1, 202, :_reduce_none,
+  1, 202, :_reduce_none,
+  1, 265, :_reduce_none,
+  5, 265, :_reduce_387,
+  1, 267, :_reduce_none,
+  2, 267, :_reduce_389,
+  1, 274, :_reduce_none,
+  1, 274, :_reduce_391,
+  1, 294, :_reduce_392,
+  3, 294, :_reduce_393,
+  1, 297, :_reduce_394,
+  3, 297, :_reduce_395,
+  1, 296, :_reduce_396,
+  3, 296, :_reduce_397,
+  5, 296, :_reduce_398,
+  1, 296, :_reduce_399,
+  3, 296, :_reduce_400,
+  2, 298, :_reduce_401,
+  1, 298, :_reduce_402,
+  1, 299, :_reduce_none,
+  1, 299, :_reduce_none,
+  0, 304, :_reduce_405,
+  2, 302, :_reduce_none,
+  4, 303, :_reduce_407,
+  2, 303, :_reduce_408,
+  2, 303, :_reduce_409,
+  1, 303, :_reduce_410,
+  2, 308, :_reduce_411,
+  1, 308, :_reduce_none,
+  1, 309, :_reduce_413,
+  6, 310, :_reduce_414,
+  8, 310, :_reduce_415,
+  4, 310, :_reduce_416,
+  6, 310, :_reduce_417,
+  4, 310, :_reduce_418,
+  2, 310, :_reduce_419,
+  6, 310, :_reduce_420,
+  2, 310, :_reduce_421,
+  4, 310, :_reduce_422,
+  6, 310, :_reduce_423,
+  2, 310, :_reduce_424,
+  4, 310, :_reduce_425,
+  2, 310, :_reduce_426,
+  4, 310, :_reduce_427,
+  1, 310, :_reduce_428,
+  1, 314, :_reduce_429,
+  1, 314, :_reduce_430,
+  3, 315, :_reduce_431,
+  1, 315, :_reduce_432,
+  4, 315, :_reduce_433,
+  1, 316, :_reduce_none,
+  4, 316, :_reduce_435,
+  1, 317, :_reduce_436,
+  3, 317, :_reduce_437,
+  1, 318, :_reduce_438,
+  1, 318, :_reduce_none,
+  0, 322, :_reduce_440,
+  0, 323, :_reduce_441,
+  5, 262, :_reduce_442,
+  4, 320, :_reduce_443,
+  1, 320, :_reduce_444,
+  3, 321, :_reduce_445,
+  3, 321, :_reduce_446,
+  3, 325, :_reduce_447,
+  2, 206, :_reduce_448,
+  4, 206, :_reduce_449,
+  5, 206, :_reduce_450,
+  5, 206, :_reduce_451,
+  2, 261, :_reduce_452,
+  4, 261, :_reduce_453,
+  4, 261, :_reduce_454,
+  3, 261, :_reduce_455,
+  3, 261, :_reduce_456,
+  3, 261, :_reduce_457,
+  2, 261, :_reduce_458,
+  1, 261, :_reduce_459,
+  4, 261, :_reduce_460,
+  0, 328, :_reduce_461,
+  4, 260, :_reduce_462,
+  0, 329, :_reduce_463,
+  4, 260, :_reduce_464,
+  0, 330, :_reduce_465,
+  0, 331, :_reduce_466,
+  4, 211, :_reduce_467,
+  0, 333, :_reduce_468,
+  0, 334, :_reduce_469,
+  4, 326, :_reduce_470,
+  1, 332, :_reduce_471,
+  2, 332, :_reduce_472,
+  3, 332, :_reduce_473,
+  4, 332, :_reduce_474,
+  5, 271, :_reduce_475,
+  1, 335, :_reduce_none,
+  1, 335, :_reduce_none,
+  0, 338, :_reduce_478,
+  0, 339, :_reduce_479,
+  7, 272, :_reduce_480,
+  1, 337, :_reduce_none,
+  1, 337, :_reduce_none,
+  1, 336, :_reduce_none,
+  3, 336, :_reduce_484,
+  3, 336, :_reduce_485,
+  1, 192, :_reduce_none,
+  2, 192, :_reduce_487,
+  3, 192, :_reduce_488,
+  1, 192, :_reduce_489,
+  1, 192, :_reduce_490,
+  1, 192, :_reduce_491,
+  1, 340, :_reduce_none,
+  3, 345, :_reduce_493,
+  1, 345, :_reduce_none,
+  3, 347, :_reduce_495,
+  1, 347, :_reduce_none,
+  1, 349, :_reduce_497,
+  1, 350, :_reduce_498,
+  1, 348, :_reduce_none,
+  1, 348, :_reduce_none,
+  4, 348, :_reduce_501,
+  4, 348, :_reduce_502,
+  4, 348, :_reduce_503,
+  3, 348, :_reduce_504,
+  4, 348, :_reduce_505,
+  4, 348, :_reduce_506,
+  4, 348, :_reduce_507,
+  3, 348, :_reduce_508,
+  3, 348, :_reduce_509,
+  3, 348, :_reduce_510,
+  2, 348, :_reduce_511,
+  0, 354, :_reduce_512,
+  4, 348, :_reduce_513,
+  2, 348, :_reduce_514,
+  0, 355, :_reduce_515,
+  4, 348, :_reduce_516,
+  1, 341, :_reduce_517,
+  1, 341, :_reduce_518,
+  2, 341, :_reduce_519,
+  3, 341, :_reduce_520,
+  5, 341, :_reduce_521,
+  2, 341, :_reduce_522,
+  4, 341, :_reduce_523,
+  1, 341, :_reduce_none,
+  2, 356, :_reduce_525,
+  3, 356, :_reduce_526,
+  1, 343, :_reduce_527,
+  3, 343, :_reduce_528,
+  5, 342, :_reduce_529,
+  2, 359, :_reduce_530,
+  1, 359, :_reduce_531,
+  1, 358, :_reduce_none,
+  3, 358, :_reduce_533,
+  1, 357, :_reduce_534,
+  3, 344, :_reduce_535,
+  1, 344, :_reduce_536,
+  2, 344, :_reduce_537,
+  1, 344, :_reduce_538,
+  1, 360, :_reduce_none,
+  3, 360, :_reduce_540,
+  2, 362, :_reduce_541,
+  1, 362, :_reduce_542,
+  1, 363, :_reduce_543,
+  3, 363, :_reduce_544,
+  2, 365, :_reduce_545,
+  1, 365, :_reduce_546,
+  2, 367, :_reduce_547,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  1, 351, :_reduce_none,
+  3, 351, :_reduce_551,
+  3, 351, :_reduce_552,
+  2, 351, :_reduce_553,
+  2, 351, :_reduce_554,
+  1, 351, :_reduce_none,
+  1, 351, :_reduce_none,
+  1, 351, :_reduce_none,
+  2, 351, :_reduce_558,
+  2, 351, :_reduce_559,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_564,
+  1, 368, :_reduce_565,
+  1, 368, :_reduce_566,
+  1, 368, :_reduce_567,
+  1, 368, :_reduce_568,
+  1, 368, :_reduce_none,
+  1, 346, :_reduce_570,
+  2, 369, :_reduce_571,
+  2, 369, :_reduce_572,
+  4, 370, :_reduce_573,
+  2, 352, :_reduce_574,
+  3, 352, :_reduce_575,
+  1, 352, :_reduce_576,
+  6, 161, :_reduce_577,
+  0, 161, :_reduce_578,
+  1, 372, :_reduce_579,
+  1, 372, :_reduce_none,
+  1, 372, :_reduce_none,
+  2, 373, :_reduce_582,
+  1, 373, :_reduce_none,
+  2, 163, :_reduce_584,
+  1, 163, :_reduce_none,
+  1, 248, :_reduce_586,
+  1, 248, :_reduce_none,
+  1, 249, :_reduce_588,
+  1, 375, :_reduce_589,
+  1, 375, :_reduce_none,
+  2, 375, :_reduce_591,
+  3, 376, :_reduce_592,
+  1, 376, :_reduce_593,
+  3, 250, :_reduce_594,
+  3, 251, :_reduce_595,
+  3, 252, :_reduce_596,
+  3, 252, :_reduce_597,
+  1, 379, :_reduce_598,
+  3, 379, :_reduce_599,
+  1, 380, :_reduce_none,
+  2, 380, :_reduce_601,
+  3, 254, :_reduce_602,
+  3, 254, :_reduce_603,
+  1, 382, :_reduce_604,
+  3, 382, :_reduce_605,
+  3, 253, :_reduce_606,
+  3, 253, :_reduce_607,
+  3, 255, :_reduce_608,
+  3, 255, :_reduce_609,
+  1, 383, :_reduce_610,
+  3, 383, :_reduce_611,
+  1, 384, :_reduce_612,
+  3, 384, :_reduce_613,
+  1, 364, :_reduce_614,
+  2, 364, :_reduce_615,
+  1, 377, :_reduce_616,
+  2, 377, :_reduce_617,
+  1, 378, :_reduce_618,
+  2, 378, :_reduce_619,
+  1, 381, :_reduce_620,
+  0, 386, :_reduce_621,
+  3, 381, :_reduce_622,
+  0, 387, :_reduce_623,
+  4, 381, :_reduce_624,
+  1, 385, :_reduce_625,
+  1, 385, :_reduce_626,
+  1, 385, :_reduce_627,
+  1, 385, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  2, 388, :_reduce_631,
+  1, 388, :_reduce_632,
+  1, 390, :_reduce_none,
+  1, 390, :_reduce_none,
+  1, 390, :_reduce_none,
+  1, 390, :_reduce_none,
+  3, 389, :_reduce_637,
+  1, 374, :_reduce_none,
+  2, 374, :_reduce_639,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 371, :_reduce_644,
+  1, 371, :_reduce_645,
+  1, 371, :_reduce_646,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 225, :_reduce_652,
+  1, 225, :_reduce_653,
+  1, 225, :_reduce_654,
+  1, 225, :_reduce_655,
+  1, 225, :_reduce_656,
+  1, 225, :_reduce_657,
+  1, 225, :_reduce_658,
+  1, 256, :_reduce_659,
+  1, 256, :_reduce_660,
+  1, 180, :_reduce_661,
+  1, 180, :_reduce_662,
+  1, 190, :_reduce_663,
+  1, 190, :_reduce_664,
+  0, 391, :_reduce_665,
+  4, 276, :_reduce_666,
+  1, 276, :_reduce_667,
+  1, 186, :_reduce_none,
+  1, 186, :_reduce_669,
+  3, 392, :_reduce_670,
+  1, 279, :_reduce_none,
+  0, 394, :_reduce_672,
+  3, 279, :_reduce_673,
+  4, 393, :_reduce_674,
+  2, 393, :_reduce_675,
+  2, 393, :_reduce_676,
+  1, 393, :_reduce_none,
+  1, 393, :_reduce_none,
+  2, 396, :_reduce_679,
+  0, 396, :_reduce_680,
+  6, 324, :_reduce_681,
+  8, 324, :_reduce_682,
+  4, 324, :_reduce_683,
+  6, 324, :_reduce_684,
+  4, 324, :_reduce_685,
+  6, 324, :_reduce_686,
+  2, 324, :_reduce_687,
+  4, 324, :_reduce_688,
+  6, 324, :_reduce_689,
+  2, 324, :_reduce_690,
+  4, 324, :_reduce_691,
+  2, 324, :_reduce_692,
+  4, 324, :_reduce_693,
+  1, 324, :_reduce_694,
+  0, 324, :_reduce_695,
+  1, 243, :_reduce_696,
+  1, 319, :_reduce_697,
+  1, 319, :_reduce_698,
+  1, 319, :_reduce_699,
+  1, 319, :_reduce_700,
+  1, 295, :_reduce_none,
+  1, 295, :_reduce_702,
+  1, 398, :_reduce_none,
+  1, 399, :_reduce_none,
+  3, 399, :_reduce_705,
+  1, 311, :_reduce_706,
+  3, 311, :_reduce_707,
+  1, 400, :_reduce_708,
+  2, 401, :_reduce_709,
+  1, 401, :_reduce_710,
+  2, 402, :_reduce_711,
+  1, 402, :_reduce_712,
+  1, 305, :_reduce_none,
+  3, 305, :_reduce_714,
+  1, 395, :_reduce_none,
+  3, 395, :_reduce_716,
+  1, 366, :_reduce_none,
+  1, 366, :_reduce_none,
+  2, 301, :_reduce_719,
+  2, 300, :_reduce_720,
+  1, 300, :_reduce_721,
+  3, 403, :_reduce_722,
+  3, 404, :_reduce_723,
+  1, 312, :_reduce_724,
+  3, 312, :_reduce_725,
+  1, 397, :_reduce_726,
+  3, 397, :_reduce_727,
+  1, 405, :_reduce_none,
+  1, 405, :_reduce_none,
+  2, 313, :_reduce_730,
+  1, 313, :_reduce_731,
+  1, 406, :_reduce_none,
+  1, 406, :_reduce_none,
+  2, 307, :_reduce_734,
+  1, 307, :_reduce_735,
+  2, 306, :_reduce_736,
+  0, 306, :_reduce_737,
+  1, 198, :_reduce_none,
+  0, 407, :_reduce_739,
+  4, 198, :_reduce_740,
+  1, 259, :_reduce_741,
+  2, 259, :_reduce_none,
+  1, 241, :_reduce_none,
+  3, 241, :_reduce_744,
+  3, 408, :_reduce_745,
+  2, 408, :_reduce_746,
+  1, 408, :_reduce_747,
+  4, 408, :_reduce_748,
+  2, 408, :_reduce_749,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 184, :_reduce_none,
+  1, 184, :_reduce_none,
+  1, 207, :_reduce_none,
+  1, 207, :_reduce_none,
+  0, 152, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 191, :_reduce_none,
+  1, 191, :_reduce_none,
+  2, 219, :_reduce_770,
+  2, 183, :_reduce_771,
+  2, 353, :_reduce_772,
+  0, 240, :_reduce_none,
+  1, 240, :_reduce_none,
+  1, 240, :_reduce_none,
+  1, 277, :_reduce_776,
+  1, 277, :_reduce_none,
+  1, 155, :_reduce_none,
+  2, 155, :_reduce_779,
+  0, 153, :_reduce_780 ]
+
+racc_reduce_n = 781
+
+racc_shift_n = 1294
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLONELY => 142,
+  :tBDOT2 => 143,
+  :tBDOT3 => 144,
+  :tLOWEST => 145,
+  :tEQL => 146 }
+
+racc_nt_base = 147
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLONELY",
+  "tBDOT2",
+  "tBDOT3",
+  "tLOWEST",
+  "tEQL",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@3",
+  "stmts",
+  "stmt_or_begin",
+  "@4",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@5",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "defn_head",
+  "f_opt_paren_args",
+  "command",
+  "arg",
+  "defs_head",
+  "backref",
+  "opt_nl",
+  "p_top_expr_body",
+  "def_name",
+  "@6",
+  "@7",
+  "fname",
+  "k_def",
+  "singleton",
+  "dot_or_colon",
+  "@8",
+  "expr_value_do",
+  "do",
+  "@9",
+  "@10",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@11",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "op",
+  "reswords",
+  "symbol",
+  "@12",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "args_forward",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@13",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "p_case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "f_arglist",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "f_any_kwrest",
+  "f_kwrest",
+  "f_no_kwarg",
+  "f_eq",
+  "block_args_tail",
+  "@22",
+  "f_block_kwarg",
+  "opt_f_block_arg",
+  "f_block_arg",
+  "opt_block_args_tail",
+  "excessed_comma",
+  "block_param",
+  "f_arg",
+  "f_block_optarg",
+  "f_rest_arg",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@23",
+  "@24",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@25",
+  "@26",
+  "@27",
+  "@28",
+  "case_args",
+  "@29",
+  "@30",
+  "cases",
+  "p_top_expr",
+  "p_cases",
+  "@31",
+  "@32",
+  "p_expr",
+  "p_args",
+  "p_find",
+  "p_args_tail",
+  "p_kwargs",
+  "p_as",
+  "p_variable",
+  "p_alt",
+  "p_expr_basic",
+  "p_lparen",
+  "p_lbracket",
+  "p_value",
+  "p_const",
+  "rbrace",
+  "@33",
+  "@34",
+  "p_args_head",
+  "p_arg",
+  "p_args_post",
+  "p_rest",
+  "p_kwarg",
+  "p_any_kwrest",
+  "p_kw",
+  "p_kw_label",
+  "string_contents",
+  "p_kwrest",
+  "kwrest_mark",
+  "p_kwnorest",
+  "p_primitive",
+  "p_var_ref",
+  "p_expr_ref",
+  "nonlocal_var",
+  "exc_list",
+  "exc_var",
+  "numeric",
+  "string",
+  "string1",
+  "xstring_contents",
+  "regexp_contents",
+  "word_list",
+  "word",
+  "string_content",
+  "symbol_list",
+  "qword_list",
+  "qsym_list",
+  "string_dvar",
+  "@35",
+  "@36",
+  "ssym",
+  "dsym",
+  "sym",
+  "@37",
+  "f_paren_args",
+  "args_tail",
+  "@38",
+  "f_kwarg",
+  "opt_args_tail",
+  "f_optarg",
+  "f_arg_asgn",
+  "f_arg_item",
+  "f_label",
+  "f_kw",
+  "f_block_kw",
+  "f_opt",
+  "f_block_opt",
+  "restarg_mark",
+  "blkarg_mark",
+  "@39",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 1
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+                      (_, line), stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      res = _values[-2]
+                      yyerror "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 16 omitted
+
+# reduce 17 omitted
+
+def _reduce_18(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_19(val, _values, result)
+                      result = val[1]
+                      debug 2
+
+    result
+end
+
+# reduce 20 omitted
+
+def _reduce_21(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_22(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 3
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 35 omitted
+
+def _reduce_36(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_37(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      # unwraps s(:to_ary, rhs)
+                      lhs, _, (_, rhs), _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+
+                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_50(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_51(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_52(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_53(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+
+    result
+end
+
+# reduce 55 omitted
+
+# reduce 56 omitted
+
+def _reduce_57(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_58(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+def _reduce_61(val, _values, result)
+                      # value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+
+    result
+end
+
+def _reduce_62(val, _values, result)
+                      lhs, _, in_kwarg, rhs = val
+
+                      self.env.unextend
+                      self.in_kwarg = in_kwarg
+
+                      rhs = new_in rhs, nil, nil, rhs.line
+                      result = new_case lhs, rhs, rhs.line
+
+    result
+end
+
+def _reduce_63(val, _values, result)
+                      # TODO? value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+
+    result
+end
+
+def _reduce_64(val, _values, result)
+                      self.env.unextend
+
+                      expr, _, old_kwarg, pat = val
+
+                      expr = value_expr expr
+
+                      self.in_kwarg = old_kwarg
+                      pat_in = new_in pat, nil, nil, expr.line
+                      result = new_case expr, pat_in, expr.line
+
+    result
+end
+
+# reduce 65 omitted
+
+def _reduce_66(val, _values, result)
+                      # TODO: numparam_name(p, fname);
+
+                      (id, line), = val
+                      old_in_def = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      result = [id.to_sym, line, old_in_def]
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      result = val
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+                      self.in_argdef = true
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+                      self.in_single += 1 # TODO: remove?
+
+                      # self.in_def = true # local_push
+                      # self.env.extend
+                      # lexer.cmdarg.push false
+                      # lexer.cond.push false
+
+                      result = val
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 74 omitted
+
+# reduce 75 omitted
+
+# reduce 76 omitted
+
+def _reduce_77(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_79(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_80(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_81(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_82(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_83(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 92 omitted
+
+def _reduce_93(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 94 omitted
+
+def _reduce_95(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      (_, l), = val
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 106 omitted
+
+def _reduce_107(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_118(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 4
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_119(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 5
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_120(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_122(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 6
+
+    result
+end
+
+def _reduce_123(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_124(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_125(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_126(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_127(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 7
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_128(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 8
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_129(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_130(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 131 omitted
+
+def _reduce_132(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_133(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_134(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 135 omitted
+
+# reduce 136 omitted
+
+# reduce 137 omitted
+
+def _reduce_138(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 139 omitted
+
+def _reduce_140(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 141 omitted
+
+def _reduce_142(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_143(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_144(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+# reduce 203 omitted
+
+# reduce 204 omitted
+
+# reduce 205 omitted
+
+# reduce 206 omitted
+
+# reduce 207 omitted
+
+# reduce 208 omitted
+
+# reduce 209 omitted
+
+# reduce 210 omitted
+
+# reduce 211 omitted
+
+# reduce 212 omitted
+
+# reduce 213 omitted
+
+# reduce 214 omitted
+
+# reduce 215 omitted
+
+def _reduce_216(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_227(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot2, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_228(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot3, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_229(val, _values, result)
+                      _, v2, = val
+                      v1 = nil
+
+                      result = s(:dot2, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      _, v2 = val
+                      v1 = nil
+
+                      result = s(:dot3, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      _, num, _, arg = val
+                      lit = wrap :lit, num
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_241(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_242(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_243(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 244 omitted
+
+def _reduce_245(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_246(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_247(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_249(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_250(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_251(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_252(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_253(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_254(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_255(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_256(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_257(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+def _reduce_258(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_259(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_260(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_261(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+# reduce 262 omitted
+
+# reduce 263 omitted
+
+# reduce 264 omitted
+
+# reduce 265 omitted
+
+# reduce 266 omitted
+
+def _reduce_267(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 270 omitted
+
+def _reduce_271(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_272(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_273(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 274 omitted
+
+def _reduce_275(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+# reduce 279 omitted
+
+# reduce 280 omitted
+
+# reduce 281 omitted
+
+# reduce 282 omitted
+
+def _reduce_283(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_284(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_285(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_286(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_287(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_288(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_289(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_290(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_291(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_292(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_293(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      (_, line), = val
+                      result = s(:block_pass).line line
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 296 omitted
+
+def _reduce_297(val, _values, result)
+                      arg, = val
+                      lineno = arg.line
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      args, _, (_, line), id = val
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_303(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 306 omitted
+
+# reduce 307 omitted
+
+# reduce 308 omitted
+
+# reduce 309 omitted
+
+# reduce 310 omitted
+
+# reduce 311 omitted
+
+# reduce 312 omitted
+
+# reduce 313 omitted
+
+# reduce 314 omitted
+
+# reduce 315 omitted
+
+def _reduce_316(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_317(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_318(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      (_, line), _, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      (_, line), stmt, _ = val
+                      result = stmt || s(:nil).line(line)
+                      result.paren = true
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      (_, line), args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      debug 9
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 337 omitted
+
+def _reduce_338(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_339(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_340(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_341(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_342(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_343(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_344(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_345(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_346(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_347(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_348(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_349(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_351(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_352(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_353(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_354(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_355(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_356(val, _values, result)
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_357(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_358(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_359(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_360(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_361(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 362 omitted
+
+# reduce 363 omitted
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+# reduce 366 omitted
+
+# reduce 367 omitted
+
+# reduce 368 omitted
+
+def _reduce_369(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_370(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_371(val, _values, result)
+                      self.in_argdef = true
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 372 omitted
+
+# reduce 373 omitted
+
+# reduce 374 omitted
+
+# reduce 375 omitted
+
+# reduce 376 omitted
+
+# reduce 377 omitted
+
+# reduce 378 omitted
+
+# reduce 379 omitted
+
+# reduce 380 omitted
+
+# reduce 381 omitted
+
+# reduce 382 omitted
+
+# reduce 383 omitted
+
+# reduce 384 omitted
+
+# reduce 385 omitted
+
+# reduce 386 omitted
+
+def _reduce_387(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 388 omitted
+
+def _reduce_389(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 390 omitted
+
+def _reduce_391(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+def _reduce_392(val, _values, result)
+                      (sym, line), = val
+
+                      result = s(:dummy, sym).line line
+
+    result
+end
+
+def _reduce_393(val, _values, result)
+                      _, args, _ = val
+                      result = args
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      arg, = val
+                      line = arg.line
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = s(:array, arg).line line
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      args, _, arg = val
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = list_append args, arg
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      (_, line), = val
+                      result = args([:*]).line line
+
+    result
+end
+
+# reduce 403 omitted
+
+# reduce 404 omitted
+
+def _reduce_405(val, _values, result)
+ self.in_argdef = false
+    result
+end
+
+# reduce 406 omitted
+
+def _reduce_407(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_408(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_409(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 412 omitted
+
+def _reduce_413(val, _values, result)
+                      result = s(:WTF_COMMA!)
+
+    result
+end
+
+def _reduce_414(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_415(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      arg, _ = val
+                      result = arg << nil
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      (_, line), = val
+
+                      result = s(:args).line line
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+
+    result
+end
+
+# reduce 434 omitted
+
+def _reduce_435(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_436(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_437(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 439 omitted
+
+def _reduce_440(val, _values, result)
+                      self.env.extend :dynamic
+                      result = lexer.lpar_beg
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_441(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_442(val, _values, result)
+                      (_, line), lpar, args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_443(val, _values, result)
+                      self.in_argdef = false
+                      result = args val
+
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      self.in_argdef = false
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_451(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_452(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_453(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_454(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_456(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_457(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_458(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_459(val, _values, result)
+                      (_, line), = val
+                      result = s(:zsuper).line line
+
+    result
+end
+
+def _reduce_460(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_461(val, _values, result)
+                      self.env.extend :dynamic
+
+    result
+end
+
+def _reduce_462(val, _values, result)
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_463(val, _values, result)
+                      self.env.extend :dynamic
+
+    result
+end
+
+def _reduce_464(val, _values, result)
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_465(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_466(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_467(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_468(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_469(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_470(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_471(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      (_, line), case_args, _then, body, cases = val
+
+                      result = new_when case_args, body
+                      result.line line
+                      result << cases if cases
+
+    result
+end
+
+# reduce 476 omitted
+
+# reduce 477 omitted
+
+def _reduce_478(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      push_pvtbl
+                      push_pktbl
+
+    result
+end
+
+def _reduce_479(val, _values, result)
+                      pop_pktbl
+                      pop_pvtbl
+                      old_kwargs = _values[-3]
+                      self.in_kwarg = old_kwargs
+
+    result
+end
+
+def _reduce_480(val, _values, result)
+                      (_, line), _, pat, _, _, body, cases = val
+
+                      result = new_in pat, body, cases, line
+
+    result
+end
+
+# reduce 481 omitted
+
+# reduce 482 omitted
+
+# reduce 483 omitted
+
+def _reduce_484(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, body, nil).line body.line
+
+    result
+end
+
+def _reduce_485(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, nil, body).line body.line
+
+    result
+end
+
+# reduce 486 omitted
+
+def _reduce_487(val, _values, result)
+                      expr, _ = val
+
+                      tail = new_array_pattern_tail nil, true, nil, nil
+                      result = new_array_pattern nil, expr, tail, expr.line
+
+    result
+end
+
+def _reduce_488(val, _values, result)
+                      expr, _, args = val
+
+                      result = new_array_pattern nil, expr, args, expr.line
+
+    result
+end
+
+def _reduce_489(val, _values, result)
+                      find, = val
+
+                      result = new_find_pattern nil, find
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      args, = val
+                      result = new_array_pattern nil, nil, args, args.line
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      kwargs, = val
+                      result = new_hash_pattern nil, kwargs, kwargs.line
+
+    result
+end
+
+# reduce 492 omitted
+
+def _reduce_493(val, _values, result)
+                      # NODE *n = NEW_LIST($1, &@$);
+                      # n = list_append(p, n, $3);
+                      # $$ = new_hash(p, n, &@$);
+
+                      expr, _, var = val
+
+                      id = var.last
+
+                      self.env[id] = :lvar # HACK: need to extend env
+                      lhs = s(:lasgn, id).line var.line
+
+                      result = new_assign lhs, expr
+
+    result
+end
+
+# reduce 494 omitted
+
+def _reduce_495(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = s(:or, lhs, rhs).line lhs.line
+
+    result
+end
+
+# reduce 496 omitted
+
+def _reduce_497(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_498(val, _values, result)
+ push_pktbl
+    result
+end
+
+# reduce 499 omitted
+
+# reduce 500 omitted
+
+def _reduce_501(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern(lhs, nil, args, lhs.line)
+
+    result
+end
+
+def _reduce_502(val, _values, result)
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+
+    result
+end
+
+def _reduce_503(val, _values, result)
+                      lhs, _, kwargs, _ = val
+
+                      pop_pktbl
+                      result = new_hash_pattern(lhs, kwargs, lhs.line)
+
+    result
+end
+
+def _reduce_504(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_505(val, _values, result)
+                      const, _, pre_arg, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern const, nil, pre_arg, const.line
+
+    result
+end
+
+def _reduce_506(val, _values, result)
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+
+    result
+end
+
+def _reduce_507(val, _values, result)
+                      const, _, kwargs, _ = val
+
+                      result = new_hash_pattern const, kwargs, const.line
+
+    result
+end
+
+def _reduce_508(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_509(val, _values, result)
+                      _, pat, _ = val
+
+                      result = new_array_pattern nil, nil, pat, pat.line
+
+    result
+end
+
+def _reduce_510(val, _values, result)
+                      _, find, _ = val
+
+                      result = new_find_pattern nil, find
+
+    result
+end
+
+def _reduce_511(val, _values, result)
+                      (_, line), _ = val
+
+                      result = s(:array_pat).line line
+
+    result
+end
+
+def _reduce_512(val, _values, result)
+                      push_pktbl
+                      result = self.in_kwarg
+                      self.in_kwarg = false
+
+    result
+end
+
+def _reduce_513(val, _values, result)
+                      _, in_kwarg, kwargs, _ = val
+
+                      pop_pktbl
+                      self.in_kwarg = in_kwarg
+
+                      result = new_hash_pattern(nil, kwargs, kwargs.line)
+
+    result
+end
+
+def _reduce_514(val, _values, result)
+                      (_, line), _ = val
+
+                      tail = new_hash_pattern_tail nil, nil, line
+                      result = new_hash_pattern nil, tail, line
+
+    result
+end
+
+def _reduce_515(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_516(val, _values, result)
+                      _, _, expr, _ = val
+
+                      pop_pktbl
+                      result = expr
+
+    result
+end
+
+def _reduce_517(val, _values, result)
+                      expr, = val
+
+                      ary = s(:array_TAIL, expr).line expr.line
+                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
+
+    result
+end
+
+def _reduce_518(val, _values, result)
+                      head, = val
+
+                      result = new_array_pattern_tail head, true, nil, nil
+
+    result
+end
+
+def _reduce_519(val, _values, result)
+                      head, tail = val
+
+                      both = array_pat_concat head, tail
+
+                      result = new_array_pattern_tail both, nil, nil, nil
+                      result.line head.line
+
+    result
+end
+
+def _reduce_520(val, _values, result)
+                      head, _, (id, _line) = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, nil
+                      result.line head.line
+
+    result
+end
+
+def _reduce_521(val, _values, result)
+                      head, _, (id, _line), _, post = val
+
+                      result = new_array_pattern_tail head, true, id.to_sym, post
+                      result.line head.line
+
+    result
+end
+
+def _reduce_522(val, _values, result)
+                      expr, _ = val
+
+                      result = new_array_pattern_tail(expr, true, nil, nil).line expr.line
+
+    result
+end
+
+def _reduce_523(val, _values, result)
+                      head, _, _, post = val
+
+                      result = new_array_pattern_tail(head, true, nil, post).line head.line
+
+    result
+end
+
+# reduce 524 omitted
+
+def _reduce_525(val, _values, result)
+                      arg, _ = val
+                      result = arg
+
+    result
+end
+
+def _reduce_526(val, _values, result)
+                      head, tail, _ = val
+
+                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
+                      result.line head.line
+
+    result
+end
+
+def _reduce_527(val, _values, result)
+                      (id, line), = val
+
+                      result = new_array_pattern_tail nil, true, id, nil
+                      result.line line
+
+    result
+end
+
+def _reduce_528(val, _values, result)
+                      (id, line), _, rhs = val
+
+                      result = new_array_pattern_tail nil, true, id, rhs
+                      result.line line
+
+    result
+end
+
+def _reduce_529(val, _values, result)
+                      lhs, _, mid, _, rhs = val
+
+                      result = new_find_pattern_tail lhs, mid, rhs
+
+    result
+end
+
+def _reduce_530(val, _values, result)
+                      _, (id, line) = val
+
+                      result = [id.to_sym, line]
+
+    result
+end
+
+def _reduce_531(val, _values, result)
+                      (_id, line), = val
+
+                      result = [nil, line]
+
+    result
+end
+
+# reduce 532 omitted
+
+def _reduce_533(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = array_pat_concat lhs, rhs
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      expr, = val
+                      expr = s(:array_TAIL, expr).line expr.line unless
+                        expr.sexp_type == :array_TAIL
+                      result = expr
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      kw_arg, _, rest = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      kwarg, = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      kwarg, _ = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      rest, = val
+
+                      result = new_hash_pattern_tail nil, rest, rest.line
+
+    result
+end
+
+# reduce 539 omitted
+
+def _reduce_540(val, _values, result)
+                      kwarg, _, kw = val
+                      kwarg.concat kw.sexp_body
+                      result = kwarg
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
+                      lhs, rhs = val
+
+                      result = s(:PAIR, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      lhs, = val
+
+                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
+
+                      # TODO: if ($1 && !is_local_id(get_id($1))) {
+                      #     yyerror1(&@1, "key must be valid as local variables");
+                      # }
+
+                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
+                      #                     assignable(p, $1, 0, &@$));
+
+                      case lhs.sexp_type
+                      when :lit then
+                        assignable [lhs.value, lhs.line]
+                      else
+                        # TODO or done?
+                        debug 10
+                      end
+
+                      # TODO PAIR -> LIST ?
+                      result = s(:PAIR, lhs, nil).line lhs.line
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      # you can't actually get here the way I lex labels
+                      debug 11
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = s(:kwrest, :"**#{name}").line line
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      (_, line), = val
+
+                      result = s(:kwrest, :"**").line line
+
+    result
+end
+
+def _reduce_547(val, _values, result)
+                      (_, line), _ = val
+
+                      # TODO: or s(:norest)? s(:**nil)?
+                      result = s(:kwrest, :"**nil").line line
+
+    result
+end
+
+# reduce 548 omitted
+
+# reduce 549 omitted
+
+# reduce 550 omitted
+
+def _reduce_551(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot2, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot3, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot2, v1, nil).line v1.line
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot3, v1, nil).line v1.line
+
+    result
+end
+
+# reduce 555 omitted
+
+# reduce 556 omitted
+
+# reduce 557 omitted
+
+def _reduce_558(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot2, nil, v1).line v1.line
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot3, nil, v1).line v1.line
+
+    result
+end
+
+# reduce 560 omitted
+
+# reduce 561 omitted
+
+# reduce 562 omitted
+
+# reduce 563 omitted
+
+def _reduce_564(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
+                      var, = val
+
+                      result = var
+
+    result
+end
+
+# reduce 569 omitted
+
+def _reduce_570(val, _values, result)
+                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
+                      # TODO: assignable(p, $1, 0, &@$);
+                      result = wrap :lasgn, val[0]
+
+    result
+end
+
+def _reduce_571(val, _values, result)
+                      # TODO: check id against env for lvar or dvar
+                      result = wrap :lvar, val[1]
+
+    result
+end
+
+def _reduce_572(val, _values, result)
+                      _, var = val
+                      result = var
+
+    result
+end
+
+def _reduce_573(val, _values, result)
+                      _, _, expr, _ = val
+                      result = expr # TODO? s(:begin, expr).line expr.line
+
+    result
+end
+
+def _reduce_574(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_575(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      l = lhs.line
+                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_576(val, _values, result)
+                      # TODO $$ = gettable(p, $1, &@$);
+                      result = wrap :const, val[0]
+
+    result
+end
+
+def _reduce_577(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_578(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_579(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 580 omitted
+
+# reduce 581 omitted
+
+def _reduce_582(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 583 omitted
+
+def _reduce_584(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 585 omitted
+
+def _reduce_586(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 587 omitted
+
+def _reduce_588(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_589(val, _values, result)
+                      debug 12
+
+    result
+end
+
+# reduce 590 omitted
+
+def _reduce_591(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_595(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_596(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_597(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_598(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_599(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 600 omitted
+
+def _reduce_601(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_602(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_603(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_604(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_605(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_607(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_608(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_609(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_610(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_611(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_612(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_613(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_614(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_615(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_616(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_617(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_618(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_619(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_620(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_621(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_622(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_623(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_624(val, _values, result)
+                      (_, line), memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 13
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_625(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_626(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_627(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 628 omitted
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+def _reduce_631(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_632(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 633 omitted
+
+# reduce 634 omitted
+
+# reduce 635 omitted
+
+# reduce 636 omitted
+
+def _reduce_637(val, _values, result)
+                      (_, line), result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line line
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 14
+                      end
+
+    result
+end
+
+# reduce 638 omitted
+
+def _reduce_639(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 640 omitted
+
+# reduce 641 omitted
+
+# reduce 642 omitted
+
+# reduce 643 omitted
+
+def _reduce_644(val, _values, result)
+ result = wrap :ivar, val[0]
+    result
+end
+
+def _reduce_645(val, _values, result)
+ result = wrap :gvar, val[0]
+    result
+end
+
+def _reduce_646(val, _values, result)
+ result = wrap :cvar, val[0]
+    result
+end
+
+# reduce 647 omitted
+
+# reduce 648 omitted
+
+# reduce 649 omitted
+
+# reduce 650 omitted
+
+# reduce 651 omitted
+
+def _reduce_652(val, _values, result)
+ (_, line), = val; result = s(:nil).line line
+    result
+end
+
+def _reduce_653(val, _values, result)
+ (_, line), = val; result = s(:self).line line
+    result
+end
+
+def _reduce_654(val, _values, result)
+ (_, line), = val; result = s(:true).line line
+    result
+end
+
+def _reduce_655(val, _values, result)
+ (_, line), = val; result = s(:false).line line
+    result
+end
+
+def _reduce_656(val, _values, result)
+ (_, line), = val; result = s(:str, self.file).line line
+    result
+end
+
+def _reduce_657(val, _values, result)
+ (_, line), = val; result = s(:lit, line).line line
+    result
+end
+
+def _reduce_658(val, _values, result)
+                      (_, l), = val
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_659(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+
+                      result.line line
+
+    result
+end
+
+def _reduce_660(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_661(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_662(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 15
+
+    result
+end
+
+def _reduce_663(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_664(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_665(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_666(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_667(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 668 omitted
+
+def _reduce_669(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+def _reduce_670(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+# reduce 671 omitted
+
+def _reduce_672(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.in_argdef = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_673(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+def _reduce_674(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_675(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_676(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 677 omitted
+
+# reduce 678 omitted
+
+def _reduce_679(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_680(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_681(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_682(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_683(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_684(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_685(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_686(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_687(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_688(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_689(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_690(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_691(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_692(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_693(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_694(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_695(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_696(val, _values, result)
+                      (_, line), = val
+                      result = s(:forward_args).line line
+
+    result
+end
+
+def _reduce_697(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_698(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_699(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_700(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 701 omitted
+
+def _reduce_702(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 703 omitted
+
+# reduce 704 omitted
+
+def _reduce_705(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_706(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_707(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_708(val, _values, result)
+                      label, = val
+                      # arg_var(p, formal_argument(p, $1));
+                      # p->cur_arg = get_id($1);
+                      # p->max_numparam = ORDINAL_PARAM;
+                      self.in_argdef = false
+                      result = label
+
+    result
+end
+
+def _reduce_709(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+                      self.in_argdef = true
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_710(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_711(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_712(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 713 omitted
+
+def _reduce_714(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 715 omitted
+
+def _reduce_716(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 717 omitted
+
+# reduce 718 omitted
+
+def _reduce_719(val, _values, result)
+                      (_, line), _ = val
+                      result = [:"**nil", line]
+
+    result
+end
+
+def _reduce_720(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_721(val, _values, result)
+                      (_, line), = val
+                      id = :"**"
+                      self.env[id] = :lvar
+                      result = [id, line]
+
+    result
+end
+
+def _reduce_722(val, _values, result)
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+                      # TODO? p->cur_arg = 0;
+
+    result
+end
+
+def _reduce_723(val, _values, result)
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO? p->cur_arg = 0;
+
+    result
+end
+
+def _reduce_724(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_725(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_726(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_727(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 728 omitted
+
+# reduce 729 omitted
+
+def _reduce_730(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_731(val, _values, result)
+                      (_, line), = val
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, line]
+
+    result
+end
+
+# reduce 732 omitted
+
+# reduce 733 omitted
+
+def _reduce_734(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_735(val, _values, result)
+                      (_, line), = val
+
+                      result = [:&, line]
+
+    result
+end
+
+def _reduce_736(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_737(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 738 omitted
+
+def _reduce_739(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_740(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_741(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 742 omitted
+
+# reduce 743 omitted
+
+def _reduce_744(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_745(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_746(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_747(val, _values, result)
+                      lit = wrap :lit, val[0]
+                      arg = nil
+
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_748(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_749(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+# reduce 750 omitted
+
+# reduce 751 omitted
+
+# reduce 752 omitted
+
+# reduce 753 omitted
+
+# reduce 754 omitted
+
+# reduce 755 omitted
+
+# reduce 756 omitted
+
+# reduce 757 omitted
+
+# reduce 758 omitted
+
+# reduce 759 omitted
+
+# reduce 760 omitted
+
+# reduce 761 omitted
+
+# reduce 762 omitted
+
+# reduce 763 omitted
+
+# reduce 764 omitted
+
+# reduce 765 omitted
+
+# reduce 766 omitted
+
+# reduce 767 omitted
+
+# reduce 768 omitted
+
+# reduce 769 omitted
+
+def _reduce_770(val, _values, result)
+                      _, close = val # TODO: include lineno in close?
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_771(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_772(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 773 omitted
+
+# reduce 774 omitted
+
+# reduce 775 omitted
+
+def _reduce_776(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 777 omitted
+
+# reduce 778 omitted
+
+def _reduce_779(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_780(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby31Parser
diff -pruN 3.20.0-2/lib/ruby_parser32.rb 3.21.1-1/lib/ruby_parser32.rb
--- 3.20.0-2/lib/ruby_parser32.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser32.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,13577 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby32Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -647,   699,   702,   317,   653,  -121,   317,  -647,  -647,  -647,
+   228,   229,  -647,  -647,  -647,  -115,  -647,  -122,   968,  -117,
+   653,   653,   228,   229,  -647,   246,  -647,  -647,  -647,   228,
+   229,  -769,   642,   758,   992,   641,  -647,  -647,   234,  -647,
+  -647,  -647,  -647,  -647,   247,   312,  1033,   653,  -129,  -116,
+  -128,   759,   991,  -124,  -126,   653,   876,   968,   240,   967,
+     3,   247,  1051,  -114,   698,   701,  -661,  -647,  -647,  -647,
+  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
+  -647,   653,  -115,  -647,  -647,  -647,  -117,  -647,  -647,   871,
+   319,  -647,  -123,   319,  -647,  -647,   130,  -647,  -534,  -647,
+   247,  -647,   235,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
+  -112,  -647,   247,  -647,  -781,  -754,  -116,  -115,   134,   247,
+  -115,  -117,  -113,   133,  -117,  -121,  -647,  -647,  -647,  -647,
+  -114,  -647,  -121,  -647,   134,   134,  -650,  -115,  -647,   133,
+   133,  -117,  -647,  -650,  -650,  -650,  -647,  -122,  -650,  -650,
+  -650,  -116,  -650,  -120,  -116,  -119,  -129,  -128,  -115,  -117,
+  -650,   134,  -650,  -650,  -650,  -114,   133,  1050,  -114,   134,
+  -124,  -116,  -650,  -650,   133,  -650,  -650,  -650,  -650,  -650,
+  -126,  -125,   240,  -123,   225,  -114,  -125,  -127,  1011,   134,
+   317,  -662,  1011,   226,   133,   134,   683,  -114,  1040,   688,
+   133,   548,   227,  -650,  -650,  -650,  -650,  -650,  -650,  -650,
+  -650,  -650,  -650,  -650,  -650,  -650,  -650,    99,   317,  -650,
+  -650,  -650,  1010,  -650,  -650,   100,  1010,  -650,   112,   113,
+  -650,  -650,   667,  -650,   244,  -650,   668,  -650,  -781,  -650,
+  -650,  -650,  -650,  -650,  -650,  -650,  -121,  -650,  -127,  -650,
+  -122,  -121,  -754,  -755,   230,   314,   683,   685,   684,  -754,
+  -129,  -122,  -650,  -650,  -650,  -650,  -122,  -650,   683,  -650,
+  -129,  -128,  -326,   683,  -650,  -129,  -128,   319,  -650,  -326,
+  -326,  -326,  -650,   314,  -124,  -326,  -326,  -107,  -326,  -124,
+  -769,  -116,  -118,  -129,  -126,  -125,  -326,  -123,   642,  -126,
+  -125,   644,  -123,   683,   -93,   319,   114,   115,  -326,  -326,
+   630,  -326,  -326,  -326,  -326,  -326,   240,   685,   684,   681,
+   134,   247,   795,   307,   660,   133,  -755,   112,   113,   685,
+   684,   240,   876,   525,   685,   684,   681,   841,   899,  -326,
+  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -326,  -326,  -326,   371,  1116,  -326,  -326,  -326,   683,   726,
+  -326,   372,  -127,  -326,   685,   684,  -326,  -127,   962,  -128,
+   244,  -326,  -781,  -326,   247,  -326,  -326,  -326,  -326,  -326,
+  -326,  -326,  1109,  -326,  1116,  -326,   522,  -781,   517,   425,
+   514,   513,   512,   522,   515,   234,   795,   525,  -326,  -326,
+   526,  -118,   233,  -326,   525,   114,   115,   525,  -758,   428,
+  -326,   231,  -120,   963,  -326,  -758,  -758,  -758,  -127,   685,
+   684,  -758,  -758,   522,  -758,   431,   520,  -124,   901,  -129,
+   533,   532,  -758,  -758,   525,   530,   529,   533,   532,  -363,
+  1033,   434,   660,   683,  -758,  -758,  -363,  -758,  -758,  -758,
+  -758,  -758,   453,   451,   234,  -363,  1109,   455,   454,   235,
+   974,   545,   683,   247,   526,   970,   579,   533,   532,   971,
+   546,   526,  -126,   580,   526,  -758,  -758,  -758,  -758,  -758,
+  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,   720,
+  -647,  -758,  -758,  -758,   667,   727,  -758,  -647,  1003,  -758,
+   683,   526,  -758,  -363,   685,   684,   681,  -758,   721,  -758,
+   456,  -758,  -758,  -758,  -758,  -758,  -758,  -758,   235,  -758,
+  -758,  -758,   134,   685,   684,   686,   517,   133,   514,   513,
+   512,   522,   515,  -659,  -758,  -758,  -661,  -116,   134,  -758,
+  -659,   683,   525,   133,  -758,   683,  -758,   497,  -124,  -659,
+  -758,  -758,  -758,  -758,  -125,  -668,  -758,  -758,  -758,   932,
+  -758,   685,   684,   691,   520,   933,  1088,  -126,  -758,  -758,
+  -758,  -758,  -758,   530,   529,   533,   532,   916,  -112,   536,
+  -758,  -758,  -660,  -758,  -758,  -758,  -758,  -758,   134,  -660,
+   547,   134,  -650,   133,   234,  -121,   133,  -659,  -660,  -650,
+  -662,   622,   685,   684,   696,   549,   685,   684,   703,   526,
+   620,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,
+  -758,  -758,  -758,  -758,  -758,  -123,  -657,  -758,  -758,  -758,
+  -656,   964,  -758,  -657,   550,  -758,  -123,  -656,  -758,  -758,
+   667,  -758,  -113,  -758,  1003,  -758,  -660,  -758,  -758,  -758,
+  -758,  -758,  -758,  -758,  -658,  -758,  -758,  -758,   235,  -122,
+   642,  -658,   517,   644,   514,   513,   512,   522,   515,  -317,
+  -758,  -758,  -758,  -758,  -655,  -758,  -317,  -758,   525,   246,
+  -326,  -655,  -758,   587,   630,  -317,  -758,  -326,  -326,  -326,
+  -125,   599,  -326,  -326,  -326,  -652,  -326,   602,   234,   604,
+   520,   -92,  -652,   247,  -326,   632,  -326,  -326,  -326,   530,
+   529,   533,   532,   615,   546,   616,  -326,  -326,   234,  -326,
+  -326,  -326,  -326,  -326,   134,   664,  -119,   623,   234,   133,
+   234,   720,  -653,  -317,   662,   670,   721,   714,   916,  -653,
+   228,   229,   324,  -128,   672,   526,   712,  -326,  -326,  -326,
+  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -326,   247,   235,  -326,  -326,  -326,   240,   965,  -326,   288,
+   289,  -326,   240,  -115,  -326,  -326,   314,  -326,  -117,  -326,
+  -114,  -326,   235,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -124,  -326,   235,  -326,   235,  -126,   517,  -123,   514,   513,
+   512,   522,   515,  -327,   287,   286,  -326,  -326,  -326,  -326,
+  -327,  -326,   525,  -326,  -654,   627,  -326,   642,  -326,  -327,
+   644,  -654,  -326,  -326,  -326,  -326,  -127,   633,   968,  -326,
+  -326,  1181,  -326,   247,   520,   517,  1251,   514,   513,   512,
+  -326,   515,   228,   229,  -327,   533,   532,   228,   229,   533,
+   532,  -327,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -327,  -326,  -326,   271,   234,   247,  -755,  -327,   247,  -326,
+  -326,  1220,   660,   751,  -755,   993,   994,   271,  -326,   526,
+  1218,   444,   755,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -326,  -326,  -326,  -326,  -326,  -326,  -326,  1029,  1033,  -326,
+  -326,  -326,   665,   726,  -326,  1203,  1204,  -326,  -327,   268,
+  -326,  1029,  1033,   270,   269,  -326,   666,  -326,  -326,  -326,
+  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,   235,  -326,
+   674,   690,   517,   234,   514,   513,   512,   522,   515,   234,
+  1243,   694,  -326,  -326,   697,  -326,  1243,  -326,   525,   672,
+   700,   707,  -758,   708,  -326,   672,  -297,   710,  -326,  -758,
+  -758,  -758,  -127,   711,   715,  -758,  -758,   247,  -758,   517,
+   520,   514,   513,   512,   718,   515,  -758,  -758,   719,   530,
+   529,   533,   532,   314,   122,   121,   123,   124,  -758,  -758,
+   733,  -758,  -758,  -758,  -758,  -758,   736,   235,   247,   738,
+   126,   125,   127,   235,   741,   742,   997,   751,  1001,  1000,
+   744,   746,  1002,   112,   113,   526,   755,  -407,   368,  -758,
+  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,
+  -758,  -758,  -758,   760,   761,  -758,  -758,  -758,   736,   727,
+  -758,   767,   773,  -758,   999,   774,  -758,   271,   271,   271,
+   271,  -758,   823,  -758,   247,  -758,  -758,  -758,  -758,  -758,
+  -758,  -758,   829,  -758,  -758,  -758,   247,   109,    99,   101,
+   102,   103,   105,   247,   271,   451,   100,   110,  -758,  -758,
+   247,  -758,  -107,  -758,    93,   845,   247,    97,   104,   106,
+  -758,   114,   115,   636,  -758,   856,   736,   247,  -125,     8,
+    89,    90,    91,    12,    82,   863,   268,   864,    83,    84,
+   270,   269,  -751,    87,  -752,    85,    86,    88,    36,    37,
+    80,    81,   137,   138,   139,   140,   141,    92,    34,    33,
+   122,   121,   123,   124,   604,   517,    24,   514,   513,   512,
+   867,   515,    11,    54,    10,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   736,   120,   128,   129,   736,   112,
+   113,   736,    50,    51,    49,  -647,   902,  -650,   903,   904,
+  -298,   587,  -647,   751,  -650,   587,   928,  -751,   953,  -752,
+   956,  -647,   755,  -650,    46,   957,   247,    39,   271,   960,
+    67,    68,   247,   969,    69,   986,    41,   987,   988,  -751,
+    53,  -752,  1005,   307,   281,   282,  1055,  1056,    25,  1017,
+  1057,   128,   129,   109,    99,   101,   102,   103,   105,  1019,
+   268,   602,   100,   110,   270,   269,   266,   267,   604,  -647,
+    93,  -650,   856,    97,   104,   106,   247,   114,   115,   314,
+   314,    47,    48,   343,    89,    90,    91,    12,    82,   856,
+   271,  1033,    83,    84,   736,   736,  -758,    87,   247,    85,
+    86,    88,    36,    37,    80,    81,   137,   138,   139,   140,
+   141,    92,    34,    33,   122,   121,   123,   124,   247,   736,
+    24,   271,   247,  -300,   247,  1064,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,  -297,   120,
+   128,   129,  1070,   112,   113,   741,    50,    51,    49,  -758,
+   271,   759,  1073,   268,  1075,  1077,  -758,   270,   269,   266,
+   267,  -754,  1079,  1079,   247,  -758,   815,  1093,    46,   247,
+   247,   347,  1107,  1110,    67,    68,   968,  1135,    69,   247,
+    41,   856,   268,  -758,    53,   736,   270,   269,   266,   267,
+   736,   736,    25,   736,  1153,   247,  1155,   109,    99,   101,
+   102,   103,   105,  -301,  1168,  1169,   100,   110,   137,   138,
+   139,   140,   141,  -758,    93,  1170,  1171,    97,   104,   106,
+  1172,   114,   115,  1173,   247,    47,    48,   343,    89,    90,
+    91,    12,    82,   247,   247,   968,    83,    84,  1177,  1178,
+   247,    87,  1182,    85,    86,    88,    36,    37,    80,    81,
+   263,   247,  1184,   741,  1187,    92,    34,    33,   122,   121,
+   123,   124,  1191,   517,    24,   514,   513,   512,  1193,   515,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,  1195,   120,   128,   129,   247,   112,   113,  -407,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,  1210,   264,   265,  1211,   932,   281,
+   282,  1221,    46,  1222,   262,    39,  1079,  1079,    67,    68,
+  1079,  1241,    69,  1244,    41,   268,   736,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   733,  1169,
+  1259,   109,    99,   101,   102,   103,   105,  1259,   741,  1261,
+   100,   110,  1263,   285,  1265,  1267,  1267,   247,    93,  1079,
+  -755,    97,   104,   106,  -754,   114,   115,  1284,  1267,    47,
+    48,   343,    89,    90,    91,    12,    82,  1267,  1267,  1267,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   137,   138,   139,   140,   141,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   716,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
+   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,  -269,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   716,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   929,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
+   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   961,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
+   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,   347,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,  1214,    24,   514,   513,   512,   nil,   515,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,   347,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,  1214,    24,   514,
+   513,   512,   nil,   515,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
+   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   247,   285,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
+   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,     8,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,    11,    54,    10,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
+   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
+   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
+   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
+   nil,  -782,  -782,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,   nil,  -782,  -782,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,  -782,
+  -782,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,  -782,  -782,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   517,    24,   514,   513,   512,
+   nil,   515,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,  -782,  -782,  -782,  -782,
+   288,   289,   nil,   751,  -782,  -782,   nil,   nil,   nil,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   517,
+    24,   514,   513,   512,   nil,   515,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+  -782,  -782,  -782,  -782,   288,   289,   nil,   751,  -782,  -782,
+   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   517,    24,   514,   513,   512,   nil,   515,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,  -782,  -782,  -782,  -782,   288,   289,
+   nil,   751,  -782,  -782,   nil,   nil,   nil,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,  -782,  -782,
+  -782,  -782,   288,   289,   nil,   nil,  -782,  -782,   nil,   nil,
+   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,  -782,  -782,  -782,  -782,   288,   289,   nil,   nil,
+  -782,  -782,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,  -782,  -782,  -782,  -782,
+   288,   289,   nil,   nil,  -782,  -782,   nil,   nil,   nil,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   nil,   nil,   279,   280,
+   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   nil,   279,   280,   nil,   nil,   nil,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   nil,   nil,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
+   nil,    11,    54,    10,    13,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   271,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,
+   270,   269,   266,   267,   nil,   nil,   nil,    25,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   281,   282,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   268,
+   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -461,   114,
+   115,   nil,   nil,    47,    48,  -461,  -461,  -461,   nil,   nil,
+  -461,  -461,  -461,   517,  -461,   514,   513,   512,   522,   515,
+   nil,   nil,  -461,  -461,  -461,  -461,   nil,   nil,   nil,   525,
+   nil,   nil,   nil,   nil,  -461,  -461,   nil,  -461,  -461,  -461,
+  -461,  -461,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   520,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   533,   532,   nil,  -461,  -461,  -461,  -461,  -461,
+  -461,  -461,  -461,  -461,  -461,  -461,  -461,  -461,  -461,   nil,
+   nil,  -461,  -461,  -461,   nil,   nil,  -461,   nil,   314,  -461,
+   nil,   nil,  -461,  -461,   nil,  -461,   526,  -461,   nil,  -461,
+   nil,  -461,  -461,  -461,  -461,  -461,  -461,  -461,   nil,  -461,
+  -461,  -461,   517,   nil,   514,   513,   512,   522,   515,   nil,
+   nil,   nil,   nil,   nil,  -461,  -461,   nil,  -461,   525,  -461,
+  -334,   nil,   nil,   nil,   nil,   nil,  -461,  -334,  -334,  -334,
+  -461,   nil,  -334,  -334,  -334,   nil,  -334,   nil,   nil,   nil,
+   520,   nil,   nil,   nil,  -334,   nil,  -334,  -334,   nil,   nil,
+   nil,   533,   532,   nil,   nil,   nil,  -334,  -334,   nil,  -334,
+  -334,  -334,  -334,  -334,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   526,   nil,  -334,  -334,  -334,
+  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
+  -334,   nil,   nil,  -334,  -334,  -334,   nil,   nil,  -334,   nil,
+   324,  -334,   nil,   nil,  -334,  -334,   nil,  -334,   nil,  -334,
+   nil,  -334,   nil,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
+   nil,  -334,   nil,  -334,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  -334,  -334,   nil,  -334,
+   nil,  -334,    89,    90,    91,   nil,    82,   nil,  -334,   nil,
+    83,    84,  -334,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
+   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -318,
+   114,   115,   nil,   nil,    47,    48,  -318,  -318,  -318,   nil,
+   nil,  -318,  -318,  -318,   517,  -318,   514,   513,   512,   522,
+   515,   nil,   nil,  -318,   nil,  -318,  -318,  -318,   nil,   nil,
+   525,   122,   121,   123,   124,  -318,  -318,   nil,  -318,  -318,
+  -318,  -318,  -318,   nil,   nil,   nil,   nil,   126,   125,   127,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   112,   113,   nil,   533,   532,   368,  -318,  -318,  -318,  -318,
+  -318,  -318,  -318,  -318,  -318,  -318,  -318,  -318,  -318,  -318,
+   nil,   nil,  -318,  -318,  -318,   nil,   nil,  -318,   nil,   nil,
+  -318,   nil,   nil,  -318,  -318,   nil,  -318,   526,  -318,   nil,
+  -318,   nil,  -318,  -318,  -318,  -318,  -318,  -318,  -318,   nil,
+  -318,   nil,  -318,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,  -318,  -318,  -318,  -318,   nil,
+  -318,    93,  -318,   nil,    97,   104,   106,  -318,   114,   115,
+  -781,  -318,    89,    90,    91,    12,    82,  -781,  -781,  -781,
+    83,    84,  -781,  -781,  -781,    87,  -781,    85,    86,    88,
+    36,    37,    80,    81,  -781,  -781,  -781,  -781,   nil,    92,
+    34,    33,   122,   121,   123,   124,  -781,  -781,    24,  -781,
+  -781,  -781,  -781,  -781,    11,    54,   nil,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,  -781,  -781,  -781,
+  -781,  -781,  -781,  -781,  -781,  -781,  -781,  -781,  -781,  -781,
+  -781,   nil,   nil,  -781,  -781,  -781,    46,   nil,  -781,    39,
+   314,  -781,    67,    68,  -781,  -781,    69,  -781,    41,  -781,
+   nil,  -781,    53,  -781,  -781,  -781,  -781,  -781,  -781,  -781,
+    25,  -781,  -781,  -781,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,  -781,  -781,   nil,  -781,
+   nil,  -781,    93,   nil,   nil,    97,   104,   106,  -781,   114,
+   115,   nil,  -781,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   333,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
+    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
+    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   134,   nil,
+   nil,   nil,   nil,   133,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,
+    54,    10,    13,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,    41,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   444,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   461,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   461,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
+    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
+    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   247,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,   589,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   247,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,    12,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,
+    13,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,    41,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   636,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -759,
+   114,   115,   nil,   nil,    47,    48,  -759,  -759,  -759,   nil,
+   nil,  -759,  -759,  -759,   517,  -759,   514,   513,   512,   522,
+   515,   nil,   nil,  -759,  -759,  -759,  -759,  -759,   nil,   nil,
+   525,   nil,   nil,   nil,   nil,  -759,  -759,   nil,  -759,  -759,
+  -759,  -759,  -759,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   533,   532,   nil,  -759,  -759,  -759,  -759,
+  -759,  -759,  -759,  -759,  -759,  -759,  -759,  -759,  -759,  -759,
+   nil,   nil,  -759,  -759,  -759,   nil,   nil,  -759,   nil,   nil,
+  -759,   nil,   nil,  -759,  -759,   nil,  -759,   526,  -759,   nil,
+  -759,   nil,  -759,  -759,  -759,  -759,  -759,  -759,  -759,   nil,
+  -759,  -759,  -759,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  -759,  -759,  -759,  -759,   nil,
+  -759,  -760,  -759,   nil,   nil,   nil,   nil,  -759,  -760,  -760,
+  -760,  -759,   nil,  -760,  -760,  -760,   nil,  -760,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  -760,  -760,  -760,  -760,  -760,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -760,  -760,   nil,
+  -760,  -760,  -760,  -760,  -760,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -760,  -760,
+  -760,  -760,  -760,  -760,  -760,  -760,  -760,  -760,  -760,  -760,
+  -760,  -760,   nil,   nil,  -760,  -760,  -760,   nil,   nil,  -760,
+   nil,   nil,  -760,   nil,   nil,  -760,  -760,   nil,  -760,   nil,
+  -760,   nil,  -760,   nil,  -760,  -760,  -760,  -760,  -760,  -760,
+  -760,   nil,  -760,  -760,  -760,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -760,  -760,  -760,
+  -760,   nil,  -760,   nil,  -760,   nil,    89,    90,    91,  -760,
+    82,   nil,   nil,  -760,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,  -781,   114,   115,   nil,   nil,    47,    48,
+  -781,  -781,  -781,   nil,   nil,  -781,  -781,  -781,   nil,  -781,
+   122,   121,   123,   124,   nil,   nil,   nil,  -781,  -781,  -781,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,  -781,
+  -781,   nil,  -781,  -781,  -781,  -781,  -781,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
+   517,   nil,   514,   513,   512,   522,   515,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   525,   nil,   nil,   nil,
+   nil,  -781,   nil,   nil,   nil,   nil,   nil,   nil,  -781,   nil,
+   nil,   nil,   nil,   314,  -781,   nil,   nil,   nil,   520,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   533,
+   532,   nil,   100,   110,   nil,  -781,  -781,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,  -781,
+   nil,    89,    90,    91,  -781,    82,   nil,   nil,   nil,    83,
+    84,  -781,   nil,   526,    87,  -781,    85,    86,    88,   364,
+   365,    80,    81,   511,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   838,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   331,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,    12,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
+    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   444,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   336,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   838,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   879,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,    12,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
+    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   908,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
+   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,    12,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,
+    13,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,    41,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   838,   nil,   331,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   461,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   838,   nil,   331,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,   589,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,  1145,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   331,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   336,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,
+   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   517,   nil,   514,   513,
+   512,   522,   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   356,   nil,   525,   352,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   351,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   520,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   533,   532,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   526,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   511,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
+   nil,   nil,   nil,   nil,   nil,   517,   nil,   514,   513,   512,
+   522,   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   356,
+   nil,   525,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   520,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   533,   532,   nil,   100,   110,   nil,
+   nil,   nil,   370,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   526,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   511,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   nil,   nil,   nil,   517,   nil,   514,   513,   512,   522,
+   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   403,   nil,
+   525,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   533,   532,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   526,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   511,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
+   125,   127,   408,    65,   118,   117,   409,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   517,   nil,   514,   513,   512,   522,   515,
+   nil,   nil,   nil,   nil,   415,   nil,   nil,   410,   nil,   525,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   520,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   533,   532,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   526,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   511,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,
+   127,   408,    65,   118,   117,   409,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   410,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   356,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   618,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+   360,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,
+   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1161,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1199,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1199,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   192,   203,   193,   216,   189,   209,   199,   198,
+   219,   220,   214,   197,   196,   191,   217,   221,   222,   201,
+   190,   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,
+   218,   213,   212,   205,   215,   200,   188,   207,   206,   nil,
+   nil,   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,
+   184,   145,   147,   144,   nil,   146,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   109,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,
+   209,   199,   198,   219,   220,   214,   197,   196,   191,   217,
+   221,   222,   201,   190,   204,   208,   210,   202,   195,   nil,
+   nil,   nil,   211,   218,   213,   212,   205,   215,   200,   188,
+   207,   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,
+   186,   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,
+   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
+   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
+   162,   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,
+   193,   216,   189,   209,   199,   198,   219,   220,   214,   197,
+   196,   191,   217,   221,   222,   201,   190,   204,   208,   210,
+   202,   195,   nil,   nil,   nil,   211,   218,   213,   301,   300,
+   302,   299,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,
+   187,   194,   185,   186,   296,   297,   298,   294,   147,   118,
+   117,   295,   nil,   120,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   nil,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   306,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   174,   192,   203,   193,   216,   189,   209,   199,   198,   219,
+   220,   214,   197,   196,   191,   217,   221,   222,   201,   190,
+   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,
+   213,   212,   205,   215,   200,   188,   207,   206,   nil,   nil,
+   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,   184,
+   145,   147,   441,   440,   146,   nil,   442,   nil,   nil,   nil,
+   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,
+   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
+   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
+   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
+   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,   209,
+   199,   198,   219,   220,   214,   197,   196,   191,   217,   221,
+   222,   201,   190,   204,   208,   210,   202,   195,   nil,   nil,
+   nil,   211,   218,   213,   212,   205,   215,   200,   188,   207,
+   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,   186,
+   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,   193,
+   216,   189,   209,   199,   198,   219,   220,   214,   197,   196,
+   191,   217,   221,   222,   201,   190,   204,   208,   210,   202,
+   195,   nil,   nil,   nil,   211,   218,   213,   212,   205,   215,
+   200,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,   187,
+   194,   185,   186,   182,   183,   184,   145,   147,   nil,   nil,
+   146,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
+   178,   nil,   173,   155,   156,   157,   164,   161,   163,   nil,
+   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
+   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
+   109,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,
+   192,   203,   193,   216,   189,   209,   199,   198,   219,   220,
+   214,   197,   196,   191,   217,   221,   222,   201,   190,   204,
+   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,   213,
+   212,   205,   215,   200,   188,   207,   206,   nil,   nil,   nil,
+   nil,   nil,   187,   194,   185,   186,   182,   183,   184,   145,
+   147,   nil,   nil,   146,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   122,   121,   123,
+   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   174,   126,   125,   127,   815,   nil,   nil,   nil,
+   818,   795,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
+   nil,   368,   525,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,
+   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,
+   109,   796,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   526,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,
+   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,
+   nil,   nil,   nil,   818,   795,   nil,   nil,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   368,   525,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,
+   nil,   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,
+   nil,   nil,   nil,   109,   796,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   526,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
+   125,   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,
+   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,
+   788,   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   790,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   247,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,   803,   804,   122,   121,   123,   124,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,
+   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,
+   787,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,   122,
+   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,   nil,
+   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,   112,   113,
+   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,
+   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
+   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,   nil,
+   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,
+   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,   803,   804,   122,   121,   123,   124,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,   795,
+   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,
+   525,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,
+   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,   787,
+   nil,   790,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,   796,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   526,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,   803,   804,   122,   121,
+   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   126,   125,   127,   815,   nil,   nil,
+   nil,   818,   795,   nil,   nil,   nil,   nil,   112,   113,   nil,
+   nil,   nil,   368,   525,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,   786,
+   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,
+   nil,   109,   796,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   526,    97,   104,   106,   nil,   114,   115,   nil,   nil,   803,
+   804,   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
+   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,
+   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,
+   nil,   nil,   786,   nil,   nil,   787,   nil,   790,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   816,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,   803,   804,   122,   121,   123,   124,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   126,   125,   127,   815,   nil,   nil,   nil,   818,   nil,   nil,
+   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,
+   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,   803,   804,   122,   121,   123,
+   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   126,   125,   127,   815,   nil,   nil,   nil,
+   818,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
+   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,
+   nil,   787,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,
+   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,
+   nil,   nil,   nil,   818,   795,   nil,   nil,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   368,   525,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,
+   nil,   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,
+   nil,   nil,   nil,   109,   796,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   526,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
+   125,   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,
+   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,
+   788,   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,   803,   804,   122,   121,   123,   124,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,
+   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,
+   787,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,   122,
+   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,   nil,
+   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,   112,   113,
+   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,
+   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
+   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,   nil,
+   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   122,   121,   123,   124,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,
+   126,   125,   127,   786,   nil,   nil,   787,   nil,   nil,   nil,
+   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,   803,   804,   nil,   nil,   517,   nil,   514,
+   513,   512,   522,   515,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   525,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   517,   520,   514,   513,   512,   522,
+   515,   nil,   nil,   nil,   530,   529,   533,   532,   nil,   517,
+   525,   514,   513,   512,   522,   515,   nil,   517,   nil,   514,
+   513,   512,   522,   515,   nil,   525,   nil,   nil,   nil,   nil,
+   nil,   nil,   520,   525,   nil,   nil,   nil,   nil,   nil,   nil,
+   526,   530,   529,   533,   532,   nil,   nil,   520,   679,   nil,
+   511,   nil,   nil,   nil,   nil,   520,   530,   529,   533,   532,
+   nil,   nil,   nil,   nil,   530,   529,   533,   532,   517,   nil,
+   514,   513,   512,   522,   515,   nil,   nil,   526,   nil,   nil,
+   nil,   nil,   nil,   nil,   525,   nil,   nil,   511,   nil,   nil,
+   nil,   517,   526,   514,   513,   512,   522,   515,   nil,   nil,
+   526,   nil,   511,   nil,   nil,   nil,   520,   525,   nil,   nil,
+   511,   nil,   nil,   nil,   nil,   530,   529,   533,   532,   517,
+   nil,   514,   513,   512,   522,   515,   nil,   nil,   nil,   520,
+   nil,   nil,   nil,   nil,   nil,   525,   nil,   nil,   530,   529,
+   533,   532,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   526,   nil,   nil,   nil,   nil,   nil,   520,   nil,   nil,
+   nil,   511,   nil,   nil,   nil,   nil,   530,   529,   533,   532,
+   nil,   nil,   nil,   nil,   526,   484,   488,   nil,   nil,   485,
+   nil,   nil,   nil,   nil,   511,   nil,   nil,   nil,   177,   178,
+   nil,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   526,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   511,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   491,   495,   nil,   nil,   490,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,   585,   488,   nil,   nil,   586,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   768,
+   488,   nil,   nil,   769,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   770,   495,   nil,
+   nil,   771,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   849,   488,   nil,   nil,   850,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   852,   495,   nil,   nil,   853,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,   768,   488,   nil,   nil,   769,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   770,
+   495,   nil,   nil,   771,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   882,   488,   nil,
+   nil,   883,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   884,   495,   nil,   nil,   885,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   887,   495,   nil,   nil,   888,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,   585,   488,   nil,   nil,   586,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   910,
+   488,   nil,   nil,   911,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   913,   495,   nil,
+   nil,   912,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,  1254,   488,   nil,   nil,  1255,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,  1256,   495,   nil,   nil,  1257,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,  1271,   495,   nil,   nil,  1270,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   174 ]
+
+racc_action_check = [
+   116,   432,   435,    70,   392,   400,   826,   116,   116,   116,
+   541,   541,   116,   116,   116,   849,   116,   401,   776,   850,
+   393,  1069,   822,   822,   116,    24,   116,   116,   116,   859,
+   859,   787,   386,   527,   797,   386,   116,   116,    30,   116,
+   116,   116,   116,   116,   787,    30,  1273,  1139,   404,   852,
+   665,   527,   797,   882,   883,  1142,  1273,   975,    20,   776,
+     1,    24,   895,  1024,   432,   435,   250,   116,   116,   116,
+   116,   116,   116,   116,   116,   116,   116,   116,   116,   116,
+   116,   880,   849,   116,   116,   116,   850,   116,   116,   655,
+    70,   116,  1042,   826,   116,   116,     3,   116,   975,   116,
+   541,   116,    30,   116,   116,   116,   116,   116,   116,   116,
+   400,   116,   822,   116,    20,   852,   852,   849,   392,   859,
+   849,   850,   401,   392,   850,   250,   116,   116,   116,   116,
+  1024,   116,  1158,   116,   393,  1069,   119,   849,   116,   393,
+  1069,   850,   116,   119,   119,   119,   116,  1159,   119,   119,
+   119,   852,   119,   404,   852,   665,  1162,  1221,   882,   883,
+   119,  1139,   119,   119,   119,  1024,  1139,   895,  1024,  1142,
+  1254,   852,   119,   119,  1142,   119,   119,   119,   119,   119,
+  1255,  1256,    21,  1275,    13,  1024,   884,   885,   824,   655,
+    32,   251,  1018,    15,   655,   880,   423,  1042,   880,   423,
+   880,   253,    16,   119,   119,   119,   119,   119,   119,   119,
+   119,   119,   119,   119,   119,   119,   119,    96,   361,   119,
+   119,   119,   824,   119,   119,    96,  1018,   119,    49,    49,
+   119,   119,   410,   119,   468,   119,   410,   119,    21,   119,
+   119,   119,   119,   119,   119,   119,  1158,   119,  1257,   119,
+   251,  1158,   884,   885,    18,    32,   606,   423,   423,  1256,
+   253,  1159,   119,   119,   119,   119,  1159,   119,   692,   119,
+  1162,  1221,   490,   990,   119,  1162,  1221,    32,   119,   490,
+   490,   490,   119,   361,  1254,   490,   490,   844,   490,  1254,
+   971,   884,   885,   468,  1255,  1256,   490,  1275,   387,  1255,
+  1256,   387,  1275,  1180,   844,   361,    49,    49,   490,   490,
+   547,   490,   490,   490,   490,   490,   258,   606,   606,   606,
+     5,   971,   982,    28,   658,     5,  1257,   368,   368,   692,
+   692,   259,   658,   982,   990,   990,   990,   606,   692,   490,
+   490,   490,   490,   490,   490,   490,   490,   490,   490,   490,
+   490,   490,   490,    43,   990,   490,   490,   490,   695,   490,
+   490,    46,  1257,   490,  1180,  1180,   490,  1257,   768,   547,
+    22,   490,   258,   490,    54,   490,   490,   490,   490,   490,
+   490,   490,   982,   490,  1180,   490,   738,   259,  1010,   103,
+  1010,  1010,  1010,  1010,  1010,    19,   988,   738,   490,   490,
+   982,   490,    19,   490,  1010,   368,   368,   988,   491,   104,
+   490,    19,    22,   769,   490,   491,   491,   491,   490,   695,
+   695,   491,   491,  1184,   491,   105,  1010,   768,   695,    22,
+   738,   738,   491,   491,  1184,  1010,  1010,  1010,  1010,    55,
+  1146,   106,  1146,   419,   491,   491,    55,   491,   491,   491,
+   491,   491,   144,   142,   249,    55,   988,   144,   144,    19,
+   785,   249,   421,  1010,   738,   785,   293,  1184,  1184,   785,
+   249,  1010,   769,   293,   988,   491,   491,   491,   491,   491,
+   491,   491,   491,   491,   491,   491,   491,   491,   491,   910,
+   294,   491,   491,   491,   817,   491,   491,   294,   817,   491,
+   426,  1184,   491,    55,   419,   419,   419,   491,   911,   491,
+   223,   491,   491,   491,   491,   491,   491,   491,   249,   491,
+   491,   491,   340,   421,   421,   421,  1187,   340,  1187,  1187,
+  1187,  1187,  1187,   353,   491,   491,    44,   491,   397,   491,
+   353,   429,  1187,   397,   770,   437,   491,   236,   910,   353,
+   491,   770,   770,   770,   491,   238,   770,   770,   770,   732,
+   770,   426,   426,   426,  1187,   732,   966,   911,   770,   770,
+   770,   770,   770,  1187,  1187,  1187,  1187,  1061,    44,   242,
+   770,   770,   354,   770,   770,   770,   770,   770,   535,   354,
+   252,   893,   295,   535,   355,    44,   893,   353,   354,   295,
+    45,   355,   429,   429,   429,   254,   437,   437,   437,  1187,
+   355,   770,   770,   770,   770,   770,   770,   770,   770,   770,
+   770,   770,   770,   770,   770,   966,   296,   770,   770,   770,
+   297,   770,   770,   296,   255,   770,  1061,   297,   770,   770,
+   974,   770,    45,   770,   974,   770,   354,   770,   770,   770,
+   770,   770,   770,   770,   298,   770,   770,   770,   355,    45,
+   649,   298,  1191,   649,  1191,  1191,  1191,  1191,  1191,   357,
+   770,   770,   770,   770,   299,   770,   357,   770,  1191,   261,
+   771,   299,   770,   313,   372,   357,   770,   771,   771,   771,
+   770,   328,   771,   771,   771,   300,   771,   329,   373,   332,
+  1191,   346,   300,   348,   771,   373,   771,   771,   771,  1191,
+  1191,  1191,  1191,   349,   373,   350,   771,   771,   402,   771,
+   771,   771,   771,   771,  1046,   402,   372,   356,   412,  1046,
+   467,   484,   301,   357,   402,   412,   485,   467,   717,   301,
+    17,    17,   359,   372,   412,  1191,   467,   771,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   360,   373,   771,   771,   771,   362,   771,   771,    52,
+    52,   771,   363,   484,   771,   771,   367,   771,   485,   771,
+   717,   771,   402,   771,   771,   771,   771,   771,   771,   771,
+   484,   771,   412,   771,   467,   485,  1193,   717,  1193,  1193,
+  1193,  1193,  1193,   623,    52,    52,   771,   771,   771,   771,
+   623,   771,  1193,   771,   302,   369,   912,   862,   771,   623,
+   862,   302,   771,   912,   912,   912,   771,   376,  1111,   912,
+   912,  1111,   912,  1212,  1193,   520,  1212,   520,   520,   520,
+   912,   520,   391,   391,   668,  1193,  1193,   676,   676,   741,
+   741,   668,   912,   912,   853,   912,   912,   912,   912,   912,
+   668,   853,   888,   378,  1160,   384,   853,   623,   388,   888,
+   853,  1160,   398,   520,   888,   800,   800,   557,   888,  1193,
+  1160,   399,   520,   912,   912,   912,   912,   912,   912,   912,
+   912,   912,   912,   912,   912,   912,   912,   866,   866,   912,
+   912,   912,   403,   912,   912,  1143,  1143,   912,   668,   557,
+   912,  1245,  1245,   557,   557,   912,   405,   912,   853,   912,
+   912,   912,   912,   912,   912,   912,   888,   912,  1160,   912,
+   414,   425,  1261,  1198,  1261,  1261,  1261,  1261,  1261,  1242,
+  1198,   428,   912,   912,   431,   912,  1242,   912,  1261,  1198,
+   434,   457,   913,   459,   912,  1242,   460,   462,   912,   913,
+   913,   913,   912,   465,   469,   913,   913,   479,   913,   751,
+  1261,   751,   751,   751,   482,   751,   913,   913,   483,  1261,
+  1261,  1261,  1261,   492,   803,   803,   803,   803,   913,   913,
+   498,   913,   913,   913,   913,   913,   499,  1198,   502,   503,
+   803,   803,   803,  1242,   504,   507,   816,   751,   816,   816,
+   508,   509,   816,   803,   803,  1261,   751,   519,   803,   913,
+   913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
+   913,   913,   913,   531,   534,   913,   913,   913,   537,   913,
+   913,   543,   551,   913,   816,   552,   913,   559,   560,   561,
+   562,   913,   582,   913,   590,   913,   913,   913,   913,   913,
+   913,   913,   591,   913,   913,   913,   592,   803,   803,   803,
+   803,   803,   803,   596,   558,   612,   803,   803,   913,   913,
+   613,   913,   614,   913,   803,   617,   619,   803,   803,   803,
+   913,   803,   803,   624,   913,   628,   637,   638,   913,     2,
+     2,     2,     2,     2,     2,   646,   558,   647,     2,     2,
+   558,   558,   408,     2,   409,     2,     2,     2,     2,     2,
+     2,     2,     9,     9,     9,     9,     9,     2,     2,     2,
+     2,     2,     2,     2,   650,   956,     2,   956,   956,   956,
+   652,   956,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,   656,     2,     2,     2,   657,     2,
+     2,   659,     2,     2,     2,   408,   699,   409,   702,   704,
+   709,   722,   408,   956,   409,   728,   730,   408,   748,   409,
+   753,   408,   956,   409,     2,   754,   756,     2,   565,   763,
+     2,     2,   772,   781,     2,   789,     2,   790,   791,   408,
+     2,   409,   820,   825,   565,   565,   897,   897,     2,   831,
+   897,   897,   897,     2,     2,     2,     2,     2,     2,   833,
+   565,   835,     2,     2,   565,   565,   565,   565,   837,   408,
+     2,   409,   846,     2,     2,     2,   848,     2,     2,   851,
+   854,     2,     2,    39,    39,    39,    39,    39,    39,   855,
+   858,   868,    39,    39,   874,   875,   887,    39,   881,    39,
+    39,    39,    39,    39,    39,    39,   344,   344,   344,   344,
+   344,    39,    39,    39,    39,    39,    39,    39,   890,   894,
+    39,   572,   896,   907,   909,   917,    39,    39,    39,    39,
+    39,    39,    39,    39,    39,    39,    39,    39,   936,    39,
+    39,    39,   937,    39,    39,   940,    39,    39,    39,   887,
+   573,   942,   945,   572,   946,   948,   887,   572,   572,   572,
+   572,   887,   949,   951,   955,   887,   968,   970,    39,   976,
+   977,    39,   981,   984,    39,    39,   989,  1015,    39,  1016,
+    39,  1023,   573,   887,    39,  1028,   573,   573,   573,   573,
+  1034,  1043,    39,  1045,  1052,  1053,  1059,    39,    39,    39,
+    39,    39,    39,  1060,  1084,  1085,    39,    39,   383,   383,
+   383,   383,   383,   887,    39,  1090,  1095,    39,    39,    39,
+  1096,    39,    39,  1097,  1098,    39,    39,   225,   225,   225,
+   225,   225,   225,  1099,  1100,  1104,   225,   225,  1105,  1106,
+  1108,   225,  1112,   225,   225,   225,   225,   225,   225,   225,
+    26,  1119,  1121,  1122,  1124,   225,   225,   225,   225,   225,
+   225,   225,  1125,   755,   225,   755,   755,   755,  1126,   755,
+   225,   225,   225,   225,   225,   225,   225,   225,   225,   225,
+   225,   225,  1128,   225,   225,   225,  1129,   225,   225,  1130,
+   225,   225,   225,    26,    26,    26,    26,    26,    26,    26,
+    26,    26,    26,    26,  1151,    26,    26,  1152,  1156,    26,
+    26,  1161,   225,  1164,    26,   225,  1165,  1166,   225,   225,
+  1167,  1196,   225,  1199,   225,    26,  1209,    26,   225,    26,
+    26,    26,    26,    26,    26,    26,   225,    26,  1217,  1227,
+  1228,   225,   225,   225,   225,   225,   225,  1229,  1232,  1235,
+   225,   225,  1236,    26,  1237,  1238,  1240,  1253,   225,  1258,
+  1270,   225,   225,   225,  1271,   225,   225,  1277,  1278,   225,
+   225,   237,   237,   237,   237,   237,   237,  1279,  1280,  1289,
+   237,   237,   nil,   nil,   nil,   237,   nil,   237,   237,   237,
+   237,   237,   237,   237,   611,   611,   611,   611,   611,   237,
+   237,   237,   237,   237,   237,   237,   nil,   nil,   237,   nil,
+   nil,   nil,   nil,   472,   237,   237,   237,   237,   237,   237,
+   237,   237,   237,   237,   237,   237,   nil,   237,   237,   237,
+   nil,   237,   237,   nil,   237,   237,   237,   472,   472,   472,
+   472,   472,   472,   472,   472,   472,   472,   472,   nil,   472,
+   472,   nil,   nil,   472,   472,   nil,   237,   nil,   nil,   237,
+   nil,   nil,   237,   237,   nil,   nil,   237,   nil,   237,   472,
+   nil,   472,   237,   472,   472,   472,   472,   472,   472,   472,
+   237,   472,   nil,   nil,   nil,   237,   237,   237,   237,   237,
+   237,   nil,   nil,   nil,   237,   237,   nil,   472,   nil,   472,
+   nil,   nil,   237,   nil,   nil,   237,   237,   237,   nil,   237,
+   237,   nil,   nil,   237,   237,   243,   243,   243,   243,   243,
+   243,   nil,   nil,   nil,   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,   478,   243,   243,
+   243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
+   nil,   243,   243,   243,   nil,   243,   243,   nil,   243,   243,
+   243,   478,   478,   478,   478,   478,   478,   478,   478,   478,
+   478,   478,   nil,   478,   478,   nil,   nil,   478,   478,   nil,
+   243,   nil,   nil,   243,   nil,   nil,   243,   243,   nil,   nil,
+   243,   nil,   243,   478,   nil,   478,   243,   478,   478,   478,
+   478,   478,   478,   478,   243,   478,   nil,   nil,   nil,   243,
+   243,   243,   243,   243,   243,   nil,   nil,   nil,   243,   243,
+   nil,   478,   nil,   nil,   nil,   nil,   243,   nil,   nil,   243,
+   243,   243,   nil,   243,   243,   nil,   nil,   243,   243,   260,
+   260,   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,
+   nil,   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,
+   260,   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,
+   260,   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,
+   nil,   731,   260,   260,   260,   260,   260,   260,   260,   260,
+   260,   260,   260,   260,   nil,   260,   260,   260,   nil,   260,
+   260,   nil,   260,   260,   260,   731,   731,   731,   731,   731,
+   731,   731,   731,   731,   731,   731,   nil,   731,   731,   nil,
+   nil,   731,   731,   nil,   260,   nil,   nil,   260,   nil,   nil,
+   260,   260,   nil,   nil,   260,   nil,   260,   731,   nil,   731,
+   260,   731,   731,   731,   731,   731,   731,   731,   260,   731,
+   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,
+   nil,   nil,   260,   260,   nil,   731,   nil,   nil,   nil,   nil,
+   260,   nil,   nil,   260,   260,   260,   nil,   260,   260,   nil,
+   nil,   260,   260,   347,   347,   347,   347,   347,   347,   nil,
+   nil,   nil,   347,   347,   nil,   nil,   nil,   347,   nil,   347,
+   347,   347,   347,   347,   347,   347,   nil,   nil,   nil,   nil,
+   nil,   347,   347,   347,   347,   347,   347,   347,   nil,   nil,
+   347,   nil,   nil,   nil,   nil,   764,   347,   347,   347,   347,
+   347,   347,   347,   347,   347,   347,   347,   347,   nil,   347,
+   347,   347,   nil,   347,   347,   nil,   347,   347,   347,   764,
+   764,   764,   764,   764,   764,   764,   764,   764,   764,   764,
+   nil,   764,   764,   nil,   nil,   764,   764,   nil,   347,   nil,
+   nil,   347,   nil,   nil,   347,   347,   nil,   nil,   347,   nil,
+   347,   764,   nil,   764,   347,   764,   764,   764,   764,   764,
+   764,   764,   347,   764,   nil,   nil,   nil,   347,   347,   347,
+   347,   347,   347,   nil,   nil,   nil,   347,   347,   nil,   764,
+   nil,   nil,   nil,   nil,   347,   nil,   nil,   347,   347,   347,
+   nil,   347,   347,   nil,   nil,   347,   347,   352,   352,   352,
+   352,   352,   352,   nil,   nil,   nil,   352,   352,   nil,   nil,
+   nil,   352,   nil,   352,   352,   352,   352,   352,   352,   352,
+   nil,   nil,   nil,   nil,   nil,   352,   352,   352,   352,   352,
+   352,   352,   nil,  1153,   352,  1153,  1153,  1153,   nil,  1153,
+   352,   352,   352,   352,   352,   352,   352,   352,   352,   352,
+   352,   352,   nil,   352,   352,   352,   nil,   352,   352,   nil,
+   352,   352,   352,   326,   326,   326,   326,   326,   326,   326,
+   326,   326,   326,   326,   nil,   326,   326,   nil,   nil,   326,
+   326,   nil,   352,   nil,   nil,   352,   nil,   nil,   352,   352,
+   nil,   nil,   352,   nil,   352,   326,   nil,   326,   352,   326,
+   326,   326,   326,   326,   326,   326,   352,   326,   nil,   nil,
+   nil,   352,   352,   352,   352,   352,   352,   nil,   nil,   nil,
+   352,   352,   nil,   326,   nil,   nil,   nil,   nil,   352,   nil,
+   nil,   352,   352,   352,   nil,   352,   352,   nil,   nil,   352,
+   352,   382,   382,   382,   382,   382,   382,   nil,   nil,   nil,
+   382,   382,   nil,   nil,   nil,   382,   nil,   382,   382,   382,
+   382,   382,   382,   382,   nil,   nil,   nil,   nil,   nil,   382,
+   382,   382,   382,   382,   382,   382,   nil,  1251,   382,  1251,
+  1251,  1251,   nil,  1251,   382,   382,   382,   382,   382,   382,
+   382,   382,   382,   382,   382,   382,   nil,   382,   382,   382,
+   nil,   382,   382,   nil,   382,   382,   382,   576,   576,   576,
+   576,   576,   576,   576,   576,   576,   576,   576,   nil,   576,
+   576,   nil,   nil,   576,   576,   nil,   382,   nil,   nil,   382,
+   nil,   nil,   382,   382,   nil,   nil,   382,   nil,   382,   576,
+   nil,   576,   382,   576,   576,   576,   576,   576,   576,   576,
+   382,   576,   nil,   nil,   nil,   382,   382,   382,   382,   382,
+   382,   nil,   nil,   nil,   382,   382,   576,   576,   nil,   nil,
+   nil,   nil,   382,   nil,   nil,   382,   382,   382,   nil,   382,
+   382,   nil,   nil,   382,   382,   395,   395,   395,   395,   395,
+   395,   nil,   nil,   nil,   395,   395,   nil,   nil,   nil,   395,
+   nil,   395,   395,   395,   395,   395,   395,   395,   nil,   nil,
+   nil,   nil,   nil,   395,   395,   395,   395,   395,   395,   395,
+   nil,   nil,   395,   nil,   nil,   nil,   nil,   nil,   395,   395,
+   395,   395,   395,   395,   395,   395,   395,   395,   395,   395,
+   nil,   395,   395,   395,   nil,   395,   395,   nil,   395,   395,
+   395,   635,   635,   635,   635,   635,   635,   635,   635,   635,
+   635,   635,   nil,   635,   635,   nil,   nil,   635,   635,   nil,
+   395,   nil,   nil,   395,   nil,   nil,   395,   395,   nil,   nil,
+   395,   nil,   395,   635,   nil,   635,   395,   635,   635,   635,
+   635,   635,   635,   635,   395,   635,   nil,   nil,   nil,   395,
+   395,   395,   395,   395,   395,   nil,   nil,   nil,   395,   395,
+   nil,   635,   nil,   nil,   nil,   nil,   395,   nil,   nil,   395,
+   395,   395,   nil,   395,   395,   nil,   nil,   395,   395,   396,
+   396,   396,   396,   396,   396,   nil,   nil,   nil,   396,   396,
+   nil,   nil,   nil,   396,   nil,   396,   396,   396,   396,   396,
+   396,   396,   nil,   nil,   nil,   nil,   nil,   396,   396,   396,
+   396,   396,   396,   396,   nil,   nil,   396,   nil,   nil,   nil,
+   nil,   nil,   396,   396,   396,   396,   396,   396,   396,   396,
+   396,   396,   396,   396,   nil,   396,   396,   396,   nil,   396,
+   396,   nil,   396,   396,   396,   915,   915,   915,   915,   915,
+   915,   915,   915,   915,   915,   915,   nil,   915,   915,   nil,
+   nil,   915,   915,   nil,   396,   nil,   nil,   396,   nil,   nil,
+   396,   396,   nil,   nil,   396,   nil,   396,   915,   nil,   915,
+   396,   915,   915,   915,   915,   915,   915,   915,   396,   915,
+   nil,   nil,   nil,   396,   396,   396,   396,   396,   396,   nil,
+   nil,   nil,   396,   396,   nil,   915,   nil,   nil,   nil,   nil,
+   396,   nil,   nil,   396,   396,   396,   nil,   396,   396,   nil,
+   nil,   396,   396,   451,   451,   451,   451,   451,   451,   nil,
+   nil,   nil,   451,   451,   nil,   nil,   nil,   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,   451,   451,   451,   451,
+   451,   451,   451,   451,   451,   451,   451,   451,   nil,   451,
+   451,   451,   nil,   451,   451,   nil,   451,   451,   451,  1065,
+  1065,  1065,  1065,  1065,  1065,  1065,  1065,  1065,  1065,  1065,
+   nil,  1065,  1065,   nil,   nil,  1065,  1065,   nil,   451,   nil,
+   nil,   451,   nil,   nil,   451,   451,   nil,   nil,   451,   nil,
+   451,  1065,   nil,  1065,   451,  1065,  1065,  1065,  1065,  1065,
+  1065,  1065,   451,  1065,   nil,   nil,   nil,   451,   451,   451,
+   451,   451,   451,   nil,   nil,   nil,   451,   451,   nil,  1065,
+   nil,   nil,   nil,   nil,   451,   nil,   nil,   451,   451,   451,
+   nil,   451,   451,   nil,   nil,   451,   451,   651,   651,   651,
+   651,   651,   651,   nil,   nil,   nil,   651,   651,   nil,   nil,
+   nil,   651,   nil,   651,   651,   651,   651,   651,   651,   651,
+   nil,   nil,   nil,   nil,   nil,   651,   651,   651,   651,   651,
+   651,   651,   nil,   nil,   651,   nil,   nil,   nil,   nil,   nil,
+   651,   651,   651,   651,   651,   651,   651,   651,   651,   651,
+   651,   651,   nil,   651,   651,   651,   nil,   651,   651,   nil,
+   651,   651,   651,  1066,  1066,  1066,  1066,  1066,  1066,  1066,
+  1066,  1066,  1066,  1066,   nil,  1066,  1066,   nil,   nil,  1066,
+  1066,   nil,   651,   nil,   nil,   651,   nil,   nil,   651,   651,
+   nil,   nil,   651,   nil,   651,  1066,   nil,  1066,   651,  1066,
+  1066,  1066,  1066,  1066,  1066,  1066,   651,  1066,   nil,   nil,
+   nil,   651,   651,   651,   651,   651,   651,   nil,   nil,   nil,
+   651,   651,   nil,  1066,   nil,   nil,   nil,   nil,   651,   nil,
+   nil,   651,   651,   651,   nil,   651,   651,   nil,   nil,   651,
+   651,   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,  1086,  1086,  1086,
+  1086,  1086,  1086,  1086,  1086,  1086,  1086,  1086,   nil,  1086,
+  1086,   nil,   nil,  1086,  1086,   nil,   654,   nil,   nil,   654,
+   nil,   nil,   654,   654,   nil,   nil,   654,   nil,   654,  1086,
+   nil,  1086,   654,  1086,  1086,  1086,  1086,  1086,  1086,  1086,
+   654,  1086,   nil,   nil,   nil,   654,   654,   654,   654,   654,
+   654,   nil,   nil,   nil,   654,   654,   nil,  1086,   nil,   nil,
+   nil,   nil,   654,   nil,   nil,   654,   654,   654,   nil,   654,
+   654,   nil,   nil,   654,   654,   677,   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,
+   677,   677,   677,   677,   677,   677,   677,   677,   677,   677,
+   nil,   677,   677,   677,   nil,   677,   677,   nil,   677,   677,
+   677,  1087,  1087,  1087,  1087,  1087,  1087,  1087,  1087,  1087,
+  1087,  1087,   nil,  1087,  1087,   nil,   nil,  1087,  1087,   nil,
+   677,   nil,   nil,   677,   nil,   nil,   677,   677,   nil,   nil,
+   677,   nil,   677,  1087,   nil,  1087,   677,  1087,  1087,  1087,
+  1087,  1087,  1087,  1087,   677,  1087,   nil,   nil,   nil,   677,
+   677,   677,   677,   677,   677,   nil,   nil,   nil,   677,   677,
+   nil,  1087,   nil,   nil,   nil,   nil,   677,   nil,   nil,   677,
+   677,   677,   nil,   677,   677,   nil,   nil,   677,   677,   886,
+   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,   886,   886,   886,   886,   886,   886,
+   886,   886,   886,   886,   nil,   886,   886,   886,   nil,   886,
+   886,   nil,   886,   886,   886,  1120,  1120,  1120,  1120,  1120,
+  1120,  1120,  1120,  1120,  1120,  1120,   nil,  1120,  1120,   nil,
+   nil,  1120,  1120,   nil,   886,   nil,   nil,   886,   nil,   nil,
+   886,   886,   nil,   nil,   886,   nil,   886,  1120,   nil,  1120,
+   886,  1120,  1120,  1120,  1120,  1120,  1120,  1120,   886,  1120,
+   nil,   nil,   nil,   886,   886,   886,   886,   886,   886,   nil,
+   nil,   nil,   886,   886,   nil,  1120,   nil,   nil,   nil,   nil,
+   886,   nil,   nil,   886,   886,   886,   nil,   886,   886,   nil,
+   nil,   886,   886,   891,   891,   891,   891,   891,   891,   nil,
+   nil,   nil,   891,   891,   nil,   nil,   nil,   891,   nil,   891,
+   891,   891,   891,   891,   891,   891,   nil,   nil,   nil,   nil,
+   nil,   891,   891,   891,   891,   891,   891,   891,   nil,   nil,
+   891,   nil,   nil,   nil,   nil,   nil,   891,   891,   891,   891,
+   891,   891,   891,   891,   891,   891,   891,   891,   nil,   891,
+   891,   891,   nil,   891,   891,   nil,   891,   891,   891,   374,
+   374,   374,   374,   374,   374,   374,   374,   374,   374,   374,
+   nil,   374,   374,   nil,   nil,   374,   374,   nil,   891,   nil,
+   nil,   891,   nil,   nil,   891,   891,   nil,   nil,   891,   nil,
+   891,   374,   nil,   374,   891,   374,   374,   374,   374,   374,
+   374,   374,   891,   374,   nil,   nil,   nil,   891,   891,   891,
+   891,   891,   891,   nil,   nil,   nil,   891,   891,   nil,   nil,
+   nil,   nil,   nil,   nil,   891,   nil,   nil,   891,   891,   891,
+   nil,   891,   891,   nil,   nil,   891,   891,   898,   898,   898,
+   898,   898,   898,   nil,   nil,   nil,   898,   898,   nil,   nil,
+   nil,   898,   nil,   898,   898,   898,   898,   898,   898,   898,
+   nil,   nil,   nil,   nil,   nil,   898,   898,   898,   898,   898,
+   898,   898,   nil,   nil,   898,   nil,   nil,   nil,   nil,   nil,
+   898,   898,   898,   898,   898,   898,   898,   898,   898,   898,
+   898,   898,   nil,   898,   898,   898,   nil,   898,   898,   nil,
+   898,   898,   898,   375,   375,   375,   375,   375,   375,   375,
+   375,   375,   375,   375,   nil,   375,   375,   nil,   nil,   375,
+   375,   nil,   898,   nil,   nil,   898,   nil,   nil,   898,   898,
+   nil,   nil,   898,   nil,   898,   375,   nil,   375,   898,   375,
+   375,   375,   375,   375,   375,   375,   898,   375,   nil,   nil,
+   nil,   898,   898,   898,   898,   898,   898,   nil,   nil,   nil,
+   898,   898,   nil,   nil,   nil,   nil,   nil,   nil,   898,   nil,
+   nil,   898,   898,   898,   nil,   898,   898,   nil,   nil,   898,
+   898,   934,   934,   934,   934,   934,   934,   nil,   nil,   nil,
+   934,   934,   nil,   nil,   nil,   934,   nil,   934,   934,   934,
+   934,   934,   934,   934,   nil,   nil,   nil,   nil,   nil,   934,
+   934,   934,   934,   934,   934,   934,   nil,   nil,   934,   nil,
+   nil,   nil,   nil,   nil,   934,   934,   934,   934,   934,   934,
+   934,   934,   934,   934,   934,   934,   nil,   934,   934,   934,
+   nil,   934,   934,   nil,   934,   934,   934,   555,   555,   555,
+   555,   555,   555,   555,   555,   555,   555,   555,   nil,   555,
+   555,   nil,   nil,   555,   555,   nil,   934,   nil,   nil,   934,
+   nil,   nil,   934,   934,   nil,   nil,   934,   nil,   934,   555,
+   nil,   555,   934,   555,   555,   555,   555,   555,   555,   555,
+   934,   555,   nil,   nil,   nil,   934,   934,   934,   934,   934,
+   934,   nil,   nil,   nil,   934,   934,   nil,   nil,   nil,   nil,
+   nil,   nil,   934,   nil,   nil,   934,   934,   934,   nil,   934,
+   934,   nil,   nil,   934,   934,  1012,  1012,  1012,  1012,  1012,
+  1012,   nil,   nil,   nil,  1012,  1012,   nil,   nil,   nil,  1012,
+   nil,  1012,  1012,  1012,  1012,  1012,  1012,  1012,   nil,   nil,
+   nil,   nil,   nil,  1012,  1012,  1012,  1012,  1012,  1012,  1012,
+   nil,   nil,  1012,   nil,   nil,   nil,   nil,   nil,  1012,  1012,
+  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,
+   nil,  1012,  1012,  1012,   nil,  1012,  1012,   nil,  1012,  1012,
+  1012,   556,   556,   556,   556,   556,   556,   556,   556,   556,
+   556,   556,   nil,   556,   556,   nil,   nil,   556,   556,   nil,
+  1012,   nil,   nil,  1012,   nil,   nil,  1012,  1012,   nil,   nil,
+  1012,   nil,  1012,   556,   nil,   556,  1012,   556,   556,   556,
+   556,   556,   556,   556,  1012,   556,   nil,   nil,   nil,  1012,
+  1012,  1012,  1012,  1012,  1012,   nil,   nil,   nil,  1012,  1012,
+   nil,   nil,   nil,   nil,   nil,   nil,  1012,   nil,   nil,  1012,
+  1012,  1012,   nil,  1012,  1012,   nil,   nil,  1012,  1012,  1033,
+  1033,  1033,  1033,  1033,  1033,   nil,   nil,   nil,  1033,  1033,
+   nil,   nil,   nil,  1033,   nil,  1033,  1033,  1033,  1033,  1033,
+  1033,  1033,   nil,   nil,   nil,   nil,   nil,  1033,  1033,  1033,
+  1033,  1033,  1033,  1033,   nil,   957,  1033,   957,   957,   957,
+   nil,   957,  1033,  1033,  1033,  1033,  1033,  1033,  1033,  1033,
+  1033,  1033,  1033,  1033,   nil,  1033,  1033,  1033,   nil,  1033,
+  1033,   nil,  1033,  1033,  1033,   566,   566,   566,   566,   566,
+   566,   566,   nil,   957,   566,   566,   nil,   nil,   nil,   nil,
+   nil,   566,   566,   nil,  1033,   nil,   nil,  1033,   nil,   nil,
+  1033,  1033,   nil,   nil,  1033,   nil,  1033,   566,   nil,   566,
+  1033,   566,   566,   566,   566,   566,   566,   566,  1033,   566,
+   nil,   nil,   nil,  1033,  1033,  1033,  1033,  1033,  1033,   nil,
+   nil,   nil,  1033,  1033,   nil,   nil,   nil,   nil,   nil,   nil,
+  1033,   nil,   nil,  1033,  1033,  1033,   nil,  1033,  1033,   nil,
+   nil,  1033,  1033,  1041,  1041,  1041,  1041,  1041,  1041,   nil,
+   nil,   nil,  1041,  1041,   nil,   nil,   nil,  1041,   nil,  1041,
+  1041,  1041,  1041,  1041,  1041,  1041,   nil,   nil,   nil,   nil,
+   nil,  1041,  1041,  1041,  1041,  1041,  1041,  1041,   nil,  1168,
+  1041,  1168,  1168,  1168,   nil,  1168,  1041,  1041,  1041,  1041,
+  1041,  1041,  1041,  1041,  1041,  1041,  1041,  1041,   nil,  1041,
+  1041,  1041,   nil,  1041,  1041,   nil,  1041,  1041,  1041,   567,
+   567,   567,   567,   567,   567,   567,   nil,  1168,   567,   567,
+   nil,   nil,   nil,   nil,   nil,   567,   567,   nil,  1041,   nil,
+   nil,  1041,   nil,   nil,  1041,  1041,   nil,   nil,  1041,   nil,
+  1041,   567,   nil,   567,  1041,   567,   567,   567,   567,   567,
+   567,   567,  1041,   567,   nil,   nil,   nil,  1041,  1041,  1041,
+  1041,  1041,  1041,   nil,   nil,   nil,  1041,  1041,   nil,   nil,
+   nil,   nil,   nil,   nil,  1041,   nil,   nil,  1041,  1041,  1041,
+   nil,  1041,  1041,   nil,   nil,  1041,  1041,  1050,  1050,  1050,
+  1050,  1050,  1050,   nil,   nil,   nil,  1050,  1050,   nil,   nil,
+   nil,  1050,   nil,  1050,  1050,  1050,  1050,  1050,  1050,  1050,
+   nil,   nil,   nil,   nil,   nil,  1050,  1050,  1050,  1050,  1050,
+  1050,  1050,   nil,  1169,  1050,  1169,  1169,  1169,   nil,  1169,
+  1050,  1050,  1050,  1050,  1050,  1050,  1050,  1050,  1050,  1050,
+  1050,  1050,   nil,  1050,  1050,  1050,   nil,  1050,  1050,   nil,
+  1050,  1050,  1050,   568,   568,   568,   568,   568,   568,   568,
+   nil,  1169,   568,   568,   nil,   nil,   nil,   nil,   nil,   568,
+   568,   nil,  1050,   nil,   nil,  1050,   nil,   nil,  1050,  1050,
+   nil,   nil,  1050,   nil,  1050,   568,   nil,   568,  1050,   568,
+   568,   568,   568,   568,   568,   568,  1050,   568,   nil,   nil,
+   nil,  1050,  1050,  1050,  1050,  1050,  1050,   nil,   nil,   nil,
+  1050,  1050,   nil,   nil,   nil,   nil,   nil,   nil,  1050,   nil,
+   nil,  1050,  1050,  1050,   nil,  1050,  1050,   nil,   nil,  1050,
+  1050,  1051,  1051,  1051,  1051,  1051,  1051,   nil,   nil,   nil,
+  1051,  1051,   nil,   nil,   nil,  1051,   nil,  1051,  1051,  1051,
+  1051,  1051,  1051,  1051,   nil,   nil,   nil,   nil,   nil,  1051,
+  1051,  1051,  1051,  1051,  1051,  1051,   nil,   nil,  1051,   nil,
+   nil,   nil,   nil,   nil,  1051,  1051,  1051,  1051,  1051,  1051,
+  1051,  1051,  1051,  1051,  1051,  1051,   nil,  1051,  1051,  1051,
+   nil,  1051,  1051,   nil,  1051,  1051,  1051,   569,   569,   569,
+   569,   569,   569,   569,   nil,   nil,   569,   569,   nil,   nil,
+   nil,   nil,   nil,   569,   569,   nil,  1051,   nil,   nil,  1051,
+   nil,   nil,  1051,  1051,   nil,   nil,  1051,   nil,  1051,   569,
+   nil,   569,  1051,   569,   569,   569,   569,   569,   569,   569,
+  1051,   569,   nil,   nil,   nil,  1051,  1051,  1051,  1051,  1051,
+  1051,   nil,   nil,   nil,  1051,  1051,   nil,   nil,   nil,   nil,
+   nil,   nil,  1051,   nil,   nil,  1051,  1051,  1051,   nil,  1051,
+  1051,   nil,   nil,  1051,  1051,  1067,  1067,  1067,  1067,  1067,
+  1067,   nil,   nil,   nil,  1067,  1067,   nil,   nil,   nil,  1067,
+   nil,  1067,  1067,  1067,  1067,  1067,  1067,  1067,   nil,   nil,
+   nil,   nil,   nil,  1067,  1067,  1067,  1067,  1067,  1067,  1067,
+   nil,   nil,  1067,   nil,   nil,   nil,   nil,   nil,  1067,  1067,
+  1067,  1067,  1067,  1067,  1067,  1067,  1067,  1067,  1067,  1067,
+   nil,  1067,  1067,  1067,   nil,  1067,  1067,   nil,  1067,  1067,
+  1067,   570,   570,   570,   570,   570,   570,   570,   nil,   nil,
+   570,   570,   nil,   nil,   nil,   nil,   nil,   570,   570,   nil,
+  1067,   nil,   nil,  1067,   nil,   nil,  1067,  1067,   nil,   nil,
+  1067,   nil,  1067,   570,   nil,   570,  1067,   570,   570,   570,
+   570,   570,   570,   570,  1067,   570,   nil,   nil,   nil,  1067,
+  1067,  1067,  1067,  1067,  1067,   nil,   nil,   nil,  1067,  1067,
+   nil,   nil,   nil,   nil,   nil,   nil,  1067,   nil,   nil,  1067,
+  1067,  1067,   nil,  1067,  1067,   nil,   nil,  1067,  1067,  1137,
+  1137,  1137,  1137,  1137,  1137,   nil,   nil,   nil,  1137,  1137,
+   nil,   nil,   nil,  1137,   nil,  1137,  1137,  1137,  1137,  1137,
+  1137,  1137,   nil,   nil,   nil,   nil,   nil,  1137,  1137,  1137,
+  1137,  1137,  1137,  1137,   nil,   nil,  1137,   nil,   nil,   nil,
+   nil,   nil,  1137,  1137,  1137,  1137,  1137,  1137,  1137,  1137,
+  1137,  1137,  1137,  1137,   nil,  1137,  1137,  1137,   nil,  1137,
+  1137,   nil,  1137,  1137,  1137,   571,   571,   571,   571,   571,
+   571,   571,   nil,   nil,   571,   571,   nil,   nil,   nil,   nil,
+   nil,   571,   571,   nil,  1137,   nil,   nil,  1137,   nil,   nil,
+  1137,  1137,   nil,   nil,  1137,   nil,  1137,   571,   nil,   571,
+  1137,   571,   571,   571,   571,   571,   571,   571,  1137,   571,
+   nil,   nil,   nil,  1137,  1137,  1137,  1137,  1137,  1137,   nil,
+   nil,   nil,  1137,  1137,   nil,   nil,   nil,   nil,   nil,   nil,
+  1137,   nil,   nil,  1137,  1137,  1137,   nil,  1137,  1137,   nil,
+   nil,  1137,  1137,  1150,  1150,  1150,  1150,  1150,  1150,   nil,
+   nil,   nil,  1150,  1150,   nil,   nil,   nil,  1150,   nil,  1150,
+  1150,  1150,  1150,  1150,  1150,  1150,   nil,   nil,   nil,   nil,
+   nil,  1150,  1150,  1150,  1150,  1150,  1150,  1150,   nil,   nil,
+  1150,   nil,   nil,   nil,   nil,   nil,  1150,  1150,  1150,  1150,
+  1150,  1150,  1150,  1150,  1150,  1150,  1150,  1150,   nil,  1150,
+  1150,  1150,   nil,  1150,  1150,   nil,  1150,  1150,  1150,   574,
+   574,   574,   574,   574,   574,   574,   nil,   nil,   574,   574,
+   nil,   nil,   nil,   nil,   nil,   574,   574,   nil,  1150,   nil,
+   nil,  1150,   nil,   nil,  1150,  1150,   nil,   nil,  1150,   nil,
+  1150,   574,   nil,   574,  1150,   574,   574,   574,   574,   574,
+   574,   574,  1150,   574,   nil,   nil,   nil,  1150,  1150,  1150,
+  1150,  1150,  1150,   nil,   nil,   nil,  1150,  1150,   nil,   nil,
+   nil,   nil,   nil,   nil,  1150,   nil,   nil,  1150,  1150,  1150,
+   nil,  1150,  1150,   nil,   nil,  1150,  1150,  1157,  1157,  1157,
+  1157,  1157,  1157,   nil,   nil,   nil,  1157,  1157,   nil,   nil,
+   nil,  1157,   nil,  1157,  1157,  1157,  1157,  1157,  1157,  1157,
+   nil,   nil,   nil,   nil,   nil,  1157,  1157,  1157,  1157,  1157,
+  1157,  1157,   nil,   nil,  1157,   nil,   nil,   nil,   nil,   nil,
+  1157,  1157,  1157,  1157,  1157,  1157,  1157,  1157,  1157,  1157,
+  1157,  1157,   nil,  1157,  1157,  1157,   nil,  1157,  1157,   nil,
+  1157,  1157,  1157,   575,   575,   575,   575,   575,   575,   575,
+   575,   nil,   575,   575,   nil,   nil,   nil,   nil,   nil,   575,
+   575,   nil,  1157,   nil,   nil,  1157,   nil,   nil,  1157,  1157,
+   nil,   nil,  1157,   nil,  1157,   575,   nil,   575,  1157,   575,
+   575,   575,   575,   575,   575,   575,  1157,   575,   nil,   nil,
+   nil,  1157,  1157,  1157,  1157,  1157,  1157,   nil,   nil,   nil,
+  1157,  1157,   nil,   nil,   nil,   nil,   nil,   nil,  1157,   nil,
+   nil,  1157,  1157,  1157,   nil,  1157,  1157,   nil,   nil,  1157,
+  1157,  1201,  1201,  1201,  1201,  1201,  1201,   nil,   nil,   nil,
+  1201,  1201,   nil,   nil,   nil,  1201,   nil,  1201,  1201,  1201,
+  1201,  1201,  1201,  1201,   nil,   nil,   nil,   nil,   nil,  1201,
+  1201,  1201,  1201,  1201,  1201,  1201,   nil,   nil,  1201,   nil,
+   nil,   nil,   nil,   nil,  1201,  1201,  1201,  1201,  1201,  1201,
+  1201,  1201,  1201,  1201,  1201,  1201,   nil,  1201,  1201,  1201,
+   nil,  1201,  1201,   nil,  1201,  1201,  1201,   577,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   577,   577,   nil,  1201,   nil,   nil,  1201,
+   nil,   nil,  1201,  1201,   nil,   nil,  1201,   nil,  1201,   577,
+   nil,   577,  1201,   577,   577,   577,   577,   nil,   nil,   577,
+  1201,   577,   nil,   nil,   nil,  1201,  1201,  1201,  1201,  1201,
+  1201,   nil,   nil,   nil,  1201,  1201,   nil,   nil,   nil,   nil,
+   nil,   nil,  1201,   nil,   nil,  1201,  1201,  1201,   nil,  1201,
+  1201,   nil,   nil,  1201,  1201,  1246,  1246,  1246,  1246,  1246,
+  1246,   nil,   nil,   nil,  1246,  1246,   nil,   nil,   nil,  1246,
+   nil,  1246,  1246,  1246,  1246,  1246,  1246,  1246,   nil,   nil,
+   nil,   nil,   nil,  1246,  1246,  1246,  1246,  1246,  1246,  1246,
+   nil,   nil,  1246,   nil,   nil,   nil,   nil,   nil,  1246,  1246,
+  1246,  1246,  1246,  1246,  1246,  1246,  1246,  1246,  1246,  1246,
+   nil,  1246,  1246,  1246,   nil,  1246,  1246,   nil,  1246,  1246,
+  1246,   634,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   634,   634,   nil,
+  1246,   nil,   nil,  1246,   nil,   nil,  1246,  1246,   nil,   nil,
+  1246,   nil,  1246,   634,   nil,   634,  1246,   634,   634,   634,
+   634,   nil,   nil,   634,  1246,   634,   nil,   nil,   nil,  1246,
+  1246,  1246,  1246,  1246,  1246,   nil,   nil,   nil,  1246,  1246,
+   nil,   nil,   nil,   nil,   nil,   nil,  1246,   nil,   nil,  1246,
+  1246,  1246,   nil,  1246,  1246,   nil,   nil,  1246,  1246,     8,
+     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
+   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
+     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
+   nil,     8,     8,     8,   563,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   563,   563,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
+     8,   nil,   nil,     8,   nil,     8,   563,   nil,   563,     8,
+   563,   563,   563,   563,   nil,   nil,   nil,     8,   nil,   nil,
+   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
+   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
+   nil,   nil,     8,     8,     8,   nil,     8,     8,   nil,   nil,
+     8,     8,    25,    25,    25,   nil,    25,   nil,   nil,   nil,
+    25,    25,   nil,   nil,   nil,    25,   nil,    25,    25,    25,
+    25,    25,    25,    25,   nil,   nil,   nil,   nil,   nil,    25,
+    25,    25,    25,    25,    25,    25,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,    25,    25,
+    25,    25,    25,    25,    25,    25,   nil,    25,    25,    25,
+   nil,    25,    25,   nil,    25,    25,    25,   564,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   564,   564,   nil,    25,   nil,   nil,    25,
+   nil,   nil,    25,    25,   nil,   nil,    25,   nil,   nil,   564,
+   nil,   564,    25,   564,   564,   564,   564,   nil,   nil,   nil,
+    25,   nil,   nil,   nil,   nil,    25,    25,    25,    25,    25,
+    25,   nil,   nil,   nil,    25,    25,   nil,   nil,   nil,   nil,
+   nil,   nil,    25,   nil,   nil,    25,    25,    25,    33,    25,
+    25,   nil,   nil,    25,    25,    33,    33,    33,   nil,   nil,
+    33,    33,    33,  1263,    33,  1263,  1263,  1263,  1263,  1263,
+   nil,   nil,    33,    33,    33,    33,   nil,   nil,   nil,  1263,
+   nil,   nil,   nil,   nil,    33,    33,   nil,    33,    33,    33,
+    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1263,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1263,  1263,   nil,    33,    33,    33,    33,    33,
+    33,    33,    33,    33,    33,    33,    33,    33,    33,   nil,
+   nil,    33,    33,    33,   nil,   nil,    33,   nil,    33,    33,
+   nil,   nil,    33,    33,   nil,    33,  1263,    33,   nil,    33,
+   nil,    33,    33,    33,    33,    33,    33,    33,   nil,    33,
+    33,    33,  1265,   nil,  1265,  1265,  1265,  1265,  1265,   nil,
+   nil,   nil,   nil,   nil,    33,    33,   nil,    33,  1265,    33,
+    34,   nil,   nil,   nil,   nil,   nil,    33,    34,    34,    34,
+    33,   nil,    34,    34,    34,   nil,    34,   nil,   nil,   nil,
+  1265,   nil,   nil,   nil,    34,   nil,    34,    34,   nil,   nil,
+   nil,  1265,  1265,   nil,   nil,   nil,    34,    34,   nil,    34,
+    34,    34,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1265,   nil,    34,    34,    34,
+    34,    34,    34,    34,    34,    34,    34,    34,    34,    34,
+    34,   nil,   nil,    34,    34,    34,   nil,   nil,    34,   nil,
+    34,    34,   nil,   nil,    34,    34,   nil,    34,   nil,    34,
+   nil,    34,   nil,    34,    34,    34,    34,    34,    34,    34,
+   nil,    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,    34,
+   nil,    34,    35,    35,    35,   nil,    35,   nil,    34,   nil,
+    35,    35,    34,   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,    35,    35,    35,    35,
+   nil,    35,    35,   nil,    35,    35,    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,    35,   nil,
+    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,    35,    35,    35,    35,    35,
+    35,   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,    35,    35,    35,    35,   nil,    35,
+    35,   nil,   nil,    35,    35,    36,    36,    36,   nil,    36,
+   nil,   nil,   nil,    36,    36,   nil,   nil,   nil,    36,   nil,
+    36,    36,    36,    36,    36,    36,    36,   nil,   nil,   nil,
+   nil,   nil,    36,    36,    36,    36,    36,    36,    36,   nil,
+   nil,    36,   nil,   nil,   nil,   nil,   nil,   nil,    36,   nil,
+   nil,    36,    36,    36,    36,    36,    36,    36,    36,    36,
+    36,    36,    36,   nil,    36,    36,   nil,    36,    36,    36,
+   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,    36,    36,   nil,   nil,    36,
+   nil,    36,   nil,    36,   nil,    36,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    36,   nil,   nil,   nil,   nil,    36,    36,
+    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,   nil,
+   nil,   nil,   nil,   nil,   nil,    36,   nil,    36,    36,    36,
+    36,   nil,    36,    36,   nil,   nil,    36,    36,    37,    37,
+    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,   nil,
+   nil,    37,   nil,    37,    37,    37,    37,    37,    37,    37,
+   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
+    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,
+   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,    37,
+    37,    37,    37,    37,    37,    37,   nil,    37,    37,   nil,
+    37,    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    37,   nil,   nil,    37,   nil,   nil,    37,    37,
+   nil,   nil,    37,   nil,    37,   nil,    37,   nil,    37,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,   nil,
+   nil,    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,
+    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
+    37,    37,    37,    37,   nil,    37,    37,   nil,   nil,    37,
+    37,    47,    47,    47,   nil,    47,   nil,   nil,   nil,    47,
+    47,   nil,   nil,   nil,    47,   nil,    47,    47,    47,    47,
+    47,    47,    47,   nil,   nil,   nil,   nil,   nil,    47,    47,
+    47,    47,    47,    47,    47,   nil,   nil,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,    47,    47,
+    47,    47,    47,    47,    47,   nil,    47,    47,    47,   nil,
+    47,    47,   nil,    47,    47,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,   nil,
+   nil,    47,    47,   nil,   nil,    47,   nil,   nil,   nil,   nil,
+   nil,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    47,
+   nil,   nil,   nil,   nil,    47,    47,    47,    47,    47,    47,
+   nil,   nil,   nil,    47,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,    47,   nil,   nil,    47,    47,    47,   nil,    47,    47,
+   nil,   nil,    47,    47,    48,    48,    48,   nil,    48,   nil,
+   nil,   nil,    48,    48,   nil,   nil,   nil,    48,   nil,    48,
+    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,   nil,
+   nil,    48,    48,    48,    48,    48,    48,    48,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+    48,    48,    48,    48,    48,    48,    48,    48,   nil,    48,
+    48,    48,   nil,    48,    48,   nil,    48,    48,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,    48,   nil,   nil,    48,    48,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,    48,    48,    48,
+    48,    48,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,
+   nil,    48,    48,   nil,   nil,    48,    48,    50,    50,    50,
+   nil,    50,   nil,   nil,   nil,    50,    50,   nil,   nil,   nil,
+    50,   nil,    50,    50,    50,    50,    50,    50,    50,   nil,
+   nil,   nil,   nil,   nil,    50,    50,    50,    50,    50,    50,
+    50,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,    50,    50,    50,    50,    50,    50,    50,
+    50,   nil,    50,    50,    50,   nil,    50,    50,   nil,    50,
+    50,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,    50,   nil,   nil,    50,    50,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+    50,    50,    50,    50,    50,    50,   nil,   nil,   nil,    50,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+    50,    50,    50,   nil,    50,    50,   nil,   nil,    50,    50,
+    51,    51,    51,   nil,    51,   nil,   nil,   nil,    51,    51,
+   nil,   nil,   nil,    51,   nil,    51,    51,    51,    51,    51,
+    51,    51,   nil,   nil,   nil,   nil,   nil,    51,    51,    51,
+    51,    51,    51,    51,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,    51,    51,    51,    51,
+    51,    51,    51,    51,   nil,    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,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,    51,    51,    51,    51,    51,    51,   nil,
+   nil,   nil,    51,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,    51,    51,    51,   nil,    51,    51,   nil,
+   nil,    51,    51,    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,   nil,
+    53,    53,    53,    53,    53,    53,    53,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,    53,
+    53,    53,    53,    53,    53,    53,    53,   nil,    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,   nil,
+   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,   nil,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,    53,    53,    53,    65,
+    53,    53,   nil,   nil,    53,    53,    65,    65,    65,   nil,
+   nil,    65,    65,    65,  1267,    65,  1267,  1267,  1267,  1267,
+  1267,   nil,   nil,    65,   nil,    65,    65,    65,   nil,   nil,
+  1267,   804,   804,   804,   804,    65,    65,   nil,    65,    65,
+    65,    65,    65,   nil,   nil,   nil,   nil,   804,   804,   804,
+   nil,   nil,  1267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   804,   804,   nil,  1267,  1267,   804,    65,    65,    65,    65,
+    65,    65,    65,    65,    65,    65,    65,    65,    65,    65,
+   nil,   nil,    65,    65,    65,   nil,   nil,    65,   nil,   nil,
+    65,   nil,   nil,    65,    65,   nil,    65,  1267,    65,   nil,
+    65,   nil,    65,    65,    65,    65,    65,    65,    65,   nil,
+    65,   nil,    65,   nil,   804,   804,   804,   804,   804,   804,
+   nil,   nil,   nil,   804,   804,    65,    65,    65,    65,   nil,
+    65,   804,    65,   nil,   804,   804,   804,    65,   804,   804,
+   486,    65,    67,    67,    67,    67,    67,   486,   486,   486,
+    67,    67,   486,   486,   486,    67,   486,    67,    67,    67,
+    67,    67,    67,    67,   486,   486,   486,   486,   nil,    67,
+    67,    67,    67,    67,    67,    67,   486,   486,    67,   486,
+   486,   486,   486,   486,    67,    67,   nil,    67,    67,    67,
+    67,    67,    67,    67,    67,    67,   nil,    67,    67,    67,
+   nil,    67,    67,   nil,    67,    67,    67,   486,   486,   486,
+   486,   486,   486,   486,   486,   486,   486,   486,   486,   486,
+   486,   nil,   nil,   486,   486,   486,    67,   nil,   486,    67,
+   486,   486,    67,    67,   486,   486,    67,   486,    67,   486,
+   nil,   486,    67,   486,   486,   486,   486,   486,   486,   486,
+    67,   486,   486,   486,   nil,    67,    67,    67,    67,    67,
+    67,   nil,   nil,   nil,    67,    67,   486,   486,   nil,   486,
+   nil,   486,    67,   nil,   nil,    67,    67,    67,   486,    67,
+    67,   nil,   486,    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,    68,
+    68,    68,    68,   nil,    68,    68,   nil,    68,    68,    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,    68,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,    68,    68,
+    68,    68,    68,    68,   nil,   nil,   nil,    68,    68,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,    68,    68,    68,
+    68,   nil,    68,    68,   nil,   nil,    68,    68,    72,    72,
+    72,   nil,    72,   nil,   nil,   nil,    72,    72,   nil,   nil,
+   nil,    72,   nil,    72,    72,    72,    72,    72,    72,    72,
+   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,    72,
+    72,    72,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,
+   nil,    72,   nil,   nil,    72,    72,    72,    72,    72,    72,
+    72,    72,   nil,    72,    72,    72,   nil,    72,    72,   nil,
+    72,    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    72,   nil,   nil,    72,   nil,   nil,    72,    72,
+   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,   nil,
+   nil,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
+    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,    72,    72,    72,   nil,    72,    72,   nil,   nil,    72,
+    72,    73,    73,    73,   nil,    73,   nil,   nil,   nil,    73,
+    73,   nil,   nil,   nil,    73,   nil,    73,    73,    73,    73,
+    73,    73,    73,   nil,   nil,   nil,   nil,   nil,    73,    73,
+    73,    73,    73,    73,    73,   nil,   nil,    73,   nil,   nil,
+   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
+    73,    73,    73,    73,    73,   nil,    73,    73,    73,   nil,
+    73,    73,   nil,    73,    73,    73,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
+   nil,    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    73,
+   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,    73,
+   nil,   nil,   nil,    73,    73,   nil,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,    73,    73,    73,   nil,    73,    73,
+   nil,   nil,    73,    73,    76,    76,    76,   nil,    76,   nil,
+   nil,   nil,    76,    76,   nil,   nil,   nil,    76,   nil,    76,
+    76,    76,    76,    76,    76,    76,   nil,   nil,   nil,   nil,
+   nil,    76,    76,    76,    76,    76,    76,    76,   nil,   nil,
+    76,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,
+    76,    76,    76,    76,    76,    76,    76,    76,   nil,    76,
+    76,    76,   nil,    76,    76,   nil,    76,    76,    76,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,
+   nil,    76,   nil,   nil,    76,    76,   nil,   nil,    76,   nil,
+   nil,   nil,   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    76,   nil,   nil,   nil,   nil,    76,    76,    76,
+    76,    76,    76,   nil,   nil,   nil,    76,    76,    76,   nil,
+   nil,   nil,   nil,    76,    76,   nil,   nil,    76,    76,    76,
+   nil,    76,    76,   nil,   nil,    76,    76,   132,   132,   132,
+   132,   132,   nil,   nil,   nil,   132,   132,   nil,   nil,   nil,
+   132,   nil,   132,   132,   132,   132,   132,   132,   132,   nil,
+   nil,   nil,   nil,   nil,   132,   132,   132,   132,   132,   132,
+   132,   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,   132,
+   132,   132,   132,   132,   132,   132,   132,   132,   132,   132,
+   132,   nil,   132,   132,   132,   nil,   132,   132,   nil,   132,
+   132,   132,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   132,   nil,   nil,   132,   nil,   nil,   132,   132,   nil,
+   nil,   132,   nil,   132,   nil,   nil,   nil,   132,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   132,   nil,   nil,   nil,   nil,
+   132,   132,   132,   132,   132,   132,   nil,   nil,   nil,   132,
+   132,   nil,   nil,   nil,   nil,   nil,   132,   132,   nil,   nil,
+   132,   132,   132,   nil,   132,   132,   nil,   nil,   132,   132,
+   137,   137,   137,   nil,   137,   nil,   nil,   nil,   137,   137,
+   nil,   nil,   nil,   137,   nil,   137,   137,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   nil,   nil,   137,   137,   137,
+   137,   137,   137,   137,   nil,   nil,   137,   nil,   nil,   nil,
+   nil,   nil,   nil,   137,   nil,   nil,   137,   137,   137,   137,
+   137,   137,   137,   137,   nil,   137,   137,   137,   nil,   137,
+   137,   nil,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,   nil,
+   137,   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,
+   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,
+   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,   nil,
+   nil,   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,
+   137,   nil,   nil,   137,   137,   137,   nil,   137,   137,   nil,
+   nil,   137,   137,   138,   138,   138,   nil,   138,   nil,   nil,
+   nil,   138,   138,   nil,   nil,   nil,   138,   nil,   138,   138,
+   138,   138,   138,   138,   138,   nil,   nil,   nil,   nil,   nil,
+   138,   138,   138,   138,   138,   138,   138,   nil,   nil,   138,
+   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,   138,
+   138,   138,   138,   138,   138,   138,   138,   nil,   138,   138,
+   138,   nil,   138,   138,   nil,   138,   138,   138,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,
+   138,   nil,   nil,   138,   138,   nil,   nil,   138,   nil,   nil,
+   nil,   nil,   nil,   138,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   138,   nil,   nil,   nil,   nil,   138,   138,   138,   138,
+   138,   138,   nil,   nil,   nil,   138,   138,   nil,   nil,   nil,
+   nil,   nil,   nil,   138,   nil,   nil,   138,   138,   138,   nil,
+   138,   138,   nil,   nil,   138,   138,   139,   139,   139,   nil,
+   139,   nil,   nil,   nil,   139,   139,   nil,   nil,   nil,   139,
+   nil,   139,   139,   139,   139,   139,   139,   139,   nil,   nil,
+   nil,   nil,   nil,   139,   139,   139,   139,   139,   139,   139,
+   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,   139,
+   nil,   nil,   139,   139,   139,   139,   139,   139,   139,   139,
+   nil,   139,   139,   139,   nil,   139,   139,   nil,   139,   139,
+   139,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   139,   nil,   nil,   139,   nil,   nil,   139,   139,   nil,   nil,
+   139,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   139,   nil,   nil,   nil,   nil,   139,
+   139,   139,   139,   139,   139,   nil,   nil,   nil,   139,   139,
+   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   139,
+   139,   139,   nil,   139,   139,   nil,   nil,   139,   139,   140,
+   140,   140,   nil,   140,   nil,   nil,   nil,   140,   140,   nil,
+   nil,   nil,   140,   nil,   140,   140,   140,   140,   140,   140,
+   140,   nil,   nil,   nil,   nil,   nil,   140,   140,   140,   140,
+   140,   140,   140,   nil,   nil,   140,   nil,   nil,   nil,   nil,
+   nil,   nil,   140,   nil,   nil,   140,   140,   140,   140,   140,
+   140,   140,   140,   nil,   140,   140,   140,   nil,   140,   140,
+   nil,   140,   140,   140,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   140,   nil,   nil,   140,   nil,   nil,   140,
+   140,   nil,   nil,   140,   nil,   nil,   nil,   nil,   nil,   140,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,
+   nil,   nil,   140,   140,   140,   140,   140,   140,   nil,   nil,
+   nil,   140,   140,   nil,   nil,   nil,   nil,   nil,   nil,   140,
+   nil,   nil,   140,   140,   140,   nil,   140,   140,   nil,   nil,
+   140,   140,   141,   141,   141,   141,   141,   nil,   nil,   nil,
+   141,   141,   nil,   nil,   nil,   141,   nil,   141,   141,   141,
+   141,   141,   141,   141,   nil,   nil,   nil,   nil,   nil,   141,
+   141,   141,   141,   141,   141,   141,   nil,   nil,   141,   nil,
+   nil,   nil,   nil,   nil,   141,   141,   nil,   141,   141,   141,
+   141,   141,   141,   141,   141,   141,   nil,   141,   141,   141,
+   nil,   141,   141,   nil,   141,   141,   141,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   141,   nil,   nil,   141,
+   nil,   nil,   141,   141,   nil,   nil,   141,   nil,   141,   nil,
+   nil,   nil,   141,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   141,   nil,   nil,   nil,   nil,   141,   141,   141,   141,   141,
+   141,   nil,   nil,   nil,   141,   141,   nil,   nil,   nil,   nil,
+   nil,   nil,   141,   nil,   nil,   141,   141,   141,   nil,   141,
+   141,   nil,   nil,   141,   141,   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,   nil,   226,   226,   226,   226,   226,   226,   226,   nil,
+   nil,   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,
+   nil,   226,   226,   226,   226,   226,   226,   226,   226,   nil,
+   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,   226,   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,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
+   226,   nil,   226,   226,   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,   nil,   227,   227,   227,   227,   227,
+   227,   227,   nil,   nil,   227,   nil,   nil,   nil,   nil,   nil,
+   nil,   227,   nil,   nil,   227,   227,   227,   227,   227,   227,
+   227,   227,   nil,   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,   227,   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,   nil,   nil,   nil,   227,   nil,
+   nil,   227,   227,   227,   nil,   227,   227,   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,   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,   228,
+   nil,   nil,   nil,   nil,   228,   228,   228,   228,   228,   228,
+   nil,   nil,   nil,   228,   228,   nil,   nil,   nil,   nil,   nil,
+   nil,   228,   nil,   nil,   228,   228,   228,   nil,   228,   228,
+   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,
+   nil,   229,   229,   229,   229,   229,   229,   229,   nil,   nil,
+   229,   nil,   nil,   nil,   nil,   nil,   nil,   229,   nil,   nil,
+   229,   229,   229,   229,   229,   229,   229,   229,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   229,   nil,   nil,   229,   229,   229,
+   nil,   229,   229,   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,   nil,   230,   230,   230,   230,   230,   230,
+   230,   nil,   nil,   230,   nil,   nil,   nil,   nil,   nil,   nil,
+   230,   nil,   nil,   230,   230,   230,   230,   230,   230,   230,
+   230,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   230,   nil,   nil,
+   230,   230,   230,   nil,   230,   230,   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,   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,   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,   231,   nil,   231,   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,   nil,   nil,   nil,
+   231,   nil,   231,   231,   231,   231,   nil,   231,   231,   nil,
+   nil,   231,   231,   244,   244,   244,   nil,   244,   nil,   nil,
+   nil,   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,   244,   nil,   nil,   nil,   nil,   244,   244,   244,   244,
+   244,   244,   nil,   nil,   nil,   244,   244,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   244,   244,   244,   nil,
+   244,   244,   nil,   nil,   244,   244,   245,   245,   245,   nil,
+   245,   nil,   nil,   nil,   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,   245,   nil,   nil,   nil,   nil,   245,
+   245,   245,   245,   245,   245,   nil,   nil,   nil,   245,   245,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   245,
+   245,   245,   nil,   245,   245,   nil,   nil,   245,   245,   246,
+   246,   246,   nil,   246,   nil,   nil,   nil,   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,   246,   nil,   nil,
+   nil,   nil,   246,   246,   246,   246,   246,   246,   nil,   nil,
+   nil,   246,   246,   246,   nil,   nil,   nil,   nil,   nil,   246,
+   nil,   nil,   246,   246,   246,   nil,   246,   246,   nil,   nil,
+   246,   246,   257,   257,   257,   nil,   257,   nil,   nil,   nil,
+   257,   257,   nil,   nil,   nil,   257,   nil,   257,   257,   257,
+   257,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   257,
+   257,   257,   257,   257,   257,   257,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   257,
+   257,   257,   257,   257,   257,   257,   nil,   257,   257,   257,
+   nil,   257,   257,   nil,   257,   257,   257,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,
+   nil,   nil,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,
+   257,   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   257,   257,   257,   nil,   257,
+   257,   nil,   nil,   257,   257,   264,   264,   264,   nil,   264,
+   nil,   nil,   nil,   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,   nil,
+   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,   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   264,   264,
+   264,   264,   264,   264,   nil,   nil,   nil,   264,   264,   nil,
+   nil,   nil,   nil,   nil,   nil,   264,   nil,   nil,   264,   264,
+   264,   nil,   264,   264,   nil,   nil,   264,   264,   265,   265,
+   265,   nil,   265,   nil,   nil,   nil,   265,   265,   nil,   nil,
+   nil,   265,   nil,   265,   265,   265,   265,   265,   265,   265,
+   nil,   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,
+   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,
+   nil,   265,   nil,   nil,   265,   265,   265,   265,   265,   265,
+   265,   265,   nil,   265,   265,   265,   nil,   265,   265,   nil,
+   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,   265,   265,
+   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,
+   nil,   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,
+   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   265,   265,   265,   nil,   265,   265,   nil,   nil,   265,
+   265,   266,   266,   266,   nil,   266,   nil,   nil,   nil,   266,
+   266,   nil,   nil,   nil,   266,   nil,   266,   266,   266,   266,
+   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   266,   266,
+   266,   266,   266,   266,   266,   nil,   nil,   266,   nil,   nil,
+   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   266,   266,
+   266,   266,   266,   266,   266,   nil,   266,   266,   266,   nil,
+   266,   266,   nil,   266,   266,   266,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   nil,
+   nil,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,
+   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,
+   nil,   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   266,   266,   266,   nil,   266,   266,
+   nil,   nil,   266,   266,   267,   267,   267,   nil,   267,   nil,
+   nil,   nil,   267,   267,   nil,   nil,   nil,   267,   nil,   267,
+   267,   267,   267,   267,   267,   267,   nil,   nil,   nil,   nil,
+   nil,   267,   267,   267,   267,   267,   267,   267,   nil,   nil,
+   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   267,   267,   267,   267,   267,   267,   267,   267,   nil,   267,
+   267,   267,   nil,   267,   267,   nil,   267,   267,   267,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,
+   nil,   267,   nil,   nil,   267,   267,   nil,   nil,   267,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   267,   nil,   nil,   nil,   nil,   267,   267,   267,
+   267,   267,   267,   nil,   nil,   nil,   267,   267,   nil,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,
+   nil,   267,   267,   nil,   nil,   267,   267,   268,   268,   268,
+   nil,   268,   nil,   nil,   nil,   268,   268,   nil,   nil,   nil,
+   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,   268,   268,   268,   268,   268,
+   268,   nil,   268,   268,   268,   nil,   268,   268,   nil,   268,
+   268,   268,   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,   268,   nil,
+   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,
+   268,   268,   268,   nil,   268,   268,   nil,   nil,   268,   268,
+   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,   nil,   269,   269,   269,
+   269,   269,   269,   269,   nil,   nil,   269,   nil,   nil,   nil,
+   nil,   nil,   nil,   269,   nil,   nil,   269,   269,   269,   269,
+   269,   269,   269,   269,   nil,   269,   269,   269,   nil,   269,
+   269,   nil,   269,   269,   269,   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,   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,
+   269,   nil,   nil,   269,   269,   269,   nil,   269,   269,   nil,
+   nil,   269,   269,   270,   270,   270,   nil,   270,   nil,   nil,
+   nil,   270,   270,   nil,   nil,   nil,   270,   nil,   270,   270,
+   270,   270,   270,   270,   270,   nil,   nil,   nil,   nil,   nil,
+   270,   270,   270,   270,   270,   270,   270,   nil,   nil,   270,
+   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,   270,
+   270,   270,   270,   270,   270,   270,   270,   nil,   270,   270,
+   270,   nil,   270,   270,   nil,   270,   270,   270,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,
+   270,   nil,   nil,   270,   270,   nil,   nil,   270,   nil,   nil,
+   nil,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   270,   nil,   nil,   nil,   nil,   270,   270,   270,   270,
+   270,   270,   nil,   nil,   nil,   270,   270,   nil,   nil,   nil,
+   nil,   nil,   nil,   270,   nil,   nil,   270,   270,   270,   nil,
+   270,   270,   nil,   nil,   270,   270,   271,   271,   271,   nil,
+   271,   nil,   nil,   nil,   271,   271,   nil,   nil,   nil,   271,
+   nil,   271,   271,   271,   271,   271,   271,   271,   nil,   nil,
+   nil,   nil,   nil,   271,   271,   271,   271,   271,   271,   271,
+   nil,   nil,   271,   nil,   nil,   nil,   nil,   nil,   nil,   271,
+   nil,   nil,   271,   271,   271,   271,   271,   271,   271,   271,
+   nil,   271,   271,   271,   nil,   271,   271,   nil,   271,   271,
+   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   271,   nil,   nil,   271,   nil,   nil,   271,   271,   nil,   nil,
+   271,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   271,   nil,   nil,   nil,   nil,   271,
+   271,   271,   271,   271,   271,   nil,   nil,   nil,   271,   271,
+   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,
+   271,   271,   nil,   271,   271,   nil,   nil,   271,   271,   272,
+   272,   272,   nil,   272,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   272,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   272,   nil,   nil,
+   nil,   nil,   272,   272,   272,   272,   272,   272,   nil,   nil,
+   nil,   272,   272,   nil,   nil,   nil,   nil,   nil,   nil,   272,
+   nil,   nil,   272,   272,   272,   nil,   272,   272,   nil,   nil,
+   272,   272,   273,   273,   273,   nil,   273,   nil,   nil,   nil,
+   273,   273,   nil,   nil,   nil,   273,   nil,   273,   273,   273,
+   273,   273,   273,   273,   nil,   nil,   nil,   nil,   nil,   273,
+   273,   273,   273,   273,   273,   273,   nil,   nil,   273,   nil,
+   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,   273,
+   273,   273,   273,   273,   273,   273,   nil,   273,   273,   273,
+   nil,   273,   273,   nil,   273,   273,   273,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,
+   nil,   nil,   273,   273,   nil,   nil,   273,   nil,   nil,   nil,
+   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   273,   nil,   nil,   nil,   nil,   273,   273,   273,   273,   273,
+   273,   nil,   nil,   nil,   273,   273,   nil,   nil,   nil,   nil,
+   nil,   nil,   273,   nil,   nil,   273,   273,   273,   nil,   273,
+   273,   nil,   nil,   273,   273,   274,   274,   274,   nil,   274,
+   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   274,   nil,
+   274,   274,   274,   274,   274,   274,   274,   nil,   nil,   nil,
+   nil,   nil,   274,   274,   274,   274,   274,   274,   274,   nil,
+   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,
+   nil,   274,   274,   274,   274,   274,   274,   274,   274,   nil,
+   274,   274,   274,   nil,   274,   274,   nil,   274,   274,   274,
+   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,   274,   274,   nil,   nil,   274,
+   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,   274,
+   274,   274,   274,   274,   nil,   nil,   nil,   274,   274,   nil,
+   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,
+   274,   nil,   274,   274,   nil,   nil,   274,   274,   275,   275,
+   275,   nil,   275,   nil,   nil,   nil,   275,   275,   nil,   nil,
+   nil,   275,   nil,   275,   275,   275,   275,   275,   275,   275,
+   nil,   nil,   nil,   nil,   nil,   275,   275,   275,   275,   275,
+   275,   275,   nil,   nil,   275,   nil,   nil,   nil,   nil,   nil,
+   nil,   275,   nil,   nil,   275,   275,   275,   275,   275,   275,
+   275,   275,   nil,   275,   275,   275,   nil,   275,   275,   nil,
+   275,   275,   275,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   275,   nil,   nil,   275,   nil,   nil,   275,   275,
+   nil,   nil,   275,   nil,   nil,   nil,   nil,   nil,   275,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   nil,
+   nil,   275,   275,   275,   275,   275,   275,   nil,   nil,   nil,
+   275,   275,   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,
+   nil,   275,   275,   275,   nil,   275,   275,   nil,   nil,   275,
+   275,   276,   276,   276,   nil,   276,   nil,   nil,   nil,   276,
+   276,   nil,   nil,   nil,   276,   nil,   276,   276,   276,   276,
+   276,   276,   276,   nil,   nil,   nil,   nil,   nil,   276,   276,
+   276,   276,   276,   276,   276,   nil,   nil,   276,   nil,   nil,
+   nil,   nil,   nil,   nil,   276,   nil,   nil,   276,   276,   276,
+   276,   276,   276,   276,   276,   nil,   276,   276,   276,   nil,
+   276,   276,   nil,   276,   276,   276,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   276,   nil,   nil,   276,   nil,
+   nil,   276,   276,   nil,   nil,   276,   nil,   nil,   nil,   nil,
+   nil,   276,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   276,
+   nil,   nil,   nil,   nil,   276,   276,   276,   276,   276,   276,
+   nil,   nil,   nil,   276,   276,   nil,   nil,   nil,   nil,   nil,
+   nil,   276,   nil,   nil,   276,   276,   276,   nil,   276,   276,
+   nil,   nil,   276,   276,   277,   277,   277,   nil,   277,   nil,
+   nil,   nil,   277,   277,   nil,   nil,   nil,   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,   277,   277,   277,   277,   277,   277,   nil,   277,
+   277,   277,   nil,   277,   277,   nil,   277,   277,   277,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   277,   nil,
+   nil,   277,   nil,   nil,   277,   277,   nil,   nil,   277,   nil,
+   nil,   nil,   nil,   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,   277,   277,
+   nil,   277,   277,   nil,   nil,   277,   277,   278,   278,   278,
+   nil,   278,   nil,   nil,   nil,   278,   278,   nil,   nil,   nil,
+   278,   nil,   278,   278,   278,   278,   278,   278,   278,   nil,
+   nil,   nil,   nil,   nil,   278,   278,   278,   278,   278,   278,
+   278,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,
+   278,   nil,   nil,   278,   278,   278,   278,   278,   278,   278,
+   278,   nil,   278,   278,   278,   nil,   278,   278,   nil,   278,
+   278,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   278,   nil,   nil,   278,   nil,   nil,   278,   278,   nil,
+   nil,   278,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,
+   278,   278,   278,   278,   278,   278,   nil,   nil,   nil,   278,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
+   278,   278,   278,   nil,   278,   278,   nil,   nil,   278,   278,
+   279,   279,   279,   nil,   279,   nil,   nil,   nil,   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,   279,   nil,
+   nil,   nil,   nil,   279,   279,   279,   279,   279,   279,   nil,
+   nil,   nil,   279,   279,   nil,   nil,   nil,   nil,   nil,   nil,
+   279,   nil,   nil,   279,   279,   279,   nil,   279,   279,   nil,
+   nil,   279,   279,   280,   280,   280,   nil,   280,   nil,   nil,
+   nil,   280,   280,   nil,   nil,   nil,   280,   nil,   280,   280,
+   280,   280,   280,   280,   280,   nil,   nil,   nil,   nil,   nil,
+   280,   280,   280,   280,   280,   280,   280,   nil,   nil,   280,
+   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,   nil,   280,
+   280,   280,   280,   280,   280,   280,   280,   nil,   280,   280,
+   280,   nil,   280,   280,   nil,   280,   280,   280,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,   nil,
+   280,   nil,   nil,   280,   280,   nil,   nil,   280,   nil,   nil,
+   nil,   nil,   nil,   280,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   280,   nil,   nil,   nil,   nil,   280,   280,   280,   280,
+   280,   280,   nil,   nil,   nil,   280,   280,   nil,   nil,   nil,
+   nil,   nil,   nil,   280,   nil,   nil,   280,   280,   280,   nil,
+   280,   280,   nil,   nil,   280,   280,   281,   281,   281,   nil,
+   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,   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,   281,   nil,   nil,   nil,   nil,   281,
+   281,   281,   281,   281,   281,   nil,   nil,   nil,   281,   281,
+   nil,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   281,
+   281,   281,   nil,   281,   281,   nil,   nil,   281,   281,   282,
+   282,   282,   nil,   282,   nil,   nil,   nil,   282,   282,   nil,
+   nil,   nil,   282,   nil,   282,   282,   282,   282,   282,   282,
+   282,   nil,   nil,   nil,   nil,   nil,   282,   282,   282,   282,
+   282,   282,   282,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   282,   282,   282,   282,   282,
+   282,   282,   282,   nil,   282,   282,   282,   nil,   282,   282,
+   nil,   282,   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   nil,   282,   nil,   nil,   282,
+   282,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
+   nil,   nil,   282,   282,   282,   282,   282,   282,   nil,   nil,
+   nil,   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   282,   282,   282,   nil,   282,   282,   nil,   nil,
+   282,   282,   283,   283,   283,   nil,   283,   nil,   nil,   nil,
+   283,   283,   nil,   nil,   nil,   283,   nil,   283,   283,   283,
+   283,   283,   283,   283,   nil,   nil,   nil,   nil,   nil,   283,
+   283,   283,   283,   283,   283,   283,   nil,   nil,   283,   nil,
+   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,   283,
+   283,   283,   283,   283,   283,   283,   nil,   283,   283,   283,
+   nil,   283,   283,   nil,   283,   283,   283,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,
+   nil,   nil,   283,   283,   nil,   nil,   283,   nil,   nil,   nil,
+   nil,   nil,   283,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   283,   nil,   nil,   nil,   nil,   283,   283,   283,   283,   283,
+   283,   nil,   nil,   nil,   283,   283,   nil,   nil,   nil,   nil,
+   nil,   nil,   283,   nil,   nil,   283,   283,   283,   nil,   283,
+   283,   nil,   nil,   283,   283,   284,   284,   284,   nil,   284,
+   nil,   nil,   nil,   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,   284,   nil,   nil,   nil,   nil,   284,   284,
+   284,   284,   284,   284,   nil,   nil,   nil,   284,   284,   nil,
+   nil,   nil,   nil,   nil,   nil,   284,   nil,   nil,   284,   284,
+   284,   nil,   284,   284,   nil,   nil,   284,   284,   285,   285,
+   285,   nil,   285,   nil,   nil,   nil,   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,   285,   nil,   nil,   nil,
+   nil,   285,   285,   285,   285,   285,   285,   nil,   nil,   nil,
+   285,   285,   nil,   nil,   nil,   nil,   nil,   nil,   285,   nil,
+   nil,   285,   285,   285,   nil,   285,   285,   nil,   nil,   285,
+   285,   290,   290,   290,   nil,   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,   nil,   290,   nil,   nil,   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,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   290,   nil,   nil,   290,   290,   290,   nil,   290,   290,
+   nil,   nil,   290,   290,   314,   314,   314,   nil,   314,   nil,
+   nil,   nil,   314,   314,   nil,   nil,   nil,   314,   nil,   314,
+   314,   314,   314,   314,   314,   314,   nil,   nil,   nil,   nil,
+   nil,   314,   314,   314,   314,   314,   314,   314,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
+   314,   314,   314,   314,   314,   314,   314,   314,   314,   314,
+   314,   314,   nil,   314,   314,   nil,   314,   314,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   314,   nil,   nil,   314,   314,   nil,   nil,   314,   nil,
+   314,   nil,   314,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   314,   314,   314,
+   314,   314,   314,   nil,   nil,   nil,   314,   314,   nil,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   314,   314,   314,   314,
+   nil,   314,   314,   nil,   nil,   314,   314,   315,   315,   315,
+   nil,   315,   nil,   nil,   nil,   315,   315,   nil,   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,   315,   315,   315,   315,   nil,   315,   315,   nil,   315,
+   315,   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,   315,   nil,   315,   nil,   315,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   315,   nil,   nil,   nil,   nil,
+   315,   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,
+   315,   nil,   nil,   nil,   nil,   nil,   nil,   315,   nil,   315,
+   315,   315,   315,   nil,   315,   315,   nil,   nil,   315,   315,
+   324,   324,   324,   nil,   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,   nil,   324,   nil,   nil,   324,   324,   324,   324,
+   324,   324,   324,   324,   324,   324,   324,   324,   nil,   324,
+   324,   nil,   324,   324,   324,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   324,   nil,   nil,   324,   nil,   nil,
+   324,   324,   nil,   nil,   324,   nil,   324,   nil,   324,   nil,
+   324,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   nil,   nil,   nil,   324,   324,   324,   324,   324,   324,   nil,
+   nil,   nil,   324,   324,   324,   nil,   nil,   nil,   nil,   nil,
+   324,   nil,   324,   324,   324,   324,   nil,   324,   324,   nil,
+   nil,   324,   324,   331,   331,   331,   nil,   331,   nil,   nil,
+   nil,   331,   331,   nil,   nil,   nil,   331,   nil,   331,   331,
+   331,   331,   331,   331,   331,   nil,   nil,   nil,   nil,   nil,
+   331,   331,   331,   331,   331,   331,   331,   nil,   nil,   331,
+   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,   331,
+   331,   331,   331,   331,   331,   331,   331,   nil,   331,   331,
+   331,   nil,   331,   331,   nil,   331,   331,   331,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,
+   331,   nil,   nil,   331,   331,   nil,   nil,   331,   nil,   nil,
+   nil,   nil,   nil,   331,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   331,   nil,   nil,   nil,   nil,   331,   331,   331,   331,
+   331,   331,   nil,   nil,   nil,   331,   331,   nil,   nil,   nil,
+   nil,   nil,   nil,   331,   nil,   nil,   331,   331,   331,   nil,
+   331,   331,   nil,   nil,   331,   331,   333,   333,   333,   nil,
+   333,   nil,   nil,   nil,   333,   333,   nil,   nil,   nil,   333,
+   nil,   333,   333,   333,   333,   333,   333,   333,   nil,   nil,
+   nil,   nil,   nil,   333,   333,   333,   333,   333,   333,   333,
+   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   333,
+   nil,   nil,   333,   333,   333,   333,   333,   333,   333,   333,
+   nil,   333,   333,   333,   nil,   333,   333,   nil,   333,   333,
+   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   333,   nil,   nil,   333,   nil,   nil,   333,   333,   nil,   nil,
+   333,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   333,
+   333,   333,   333,   333,   333,   nil,   nil,   nil,   333,   333,
+   nil,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   333,
+   333,   333,   nil,   333,   333,   nil,   nil,   333,   333,   336,
+   336,   336,   nil,   336,   nil,   nil,   nil,   336,   336,   nil,
+   nil,   nil,   336,   nil,   336,   336,   336,   336,   336,   336,
+   336,   nil,   nil,   nil,   nil,   nil,   336,   336,   336,   336,
+   336,   336,   336,   nil,   nil,   336,   nil,   nil,   nil,   nil,
+   nil,   nil,   336,   nil,   nil,   336,   336,   336,   336,   336,
+   336,   336,   336,   nil,   336,   336,   336,   nil,   336,   336,
+   nil,   336,   336,   336,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   336,   nil,   nil,   336,   nil,   nil,   336,
+   336,   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,   336,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,
+   nil,   nil,   336,   336,   336,   336,   336,   336,   nil,   nil,
+   nil,   336,   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,
+   nil,   nil,   336,   336,   336,   nil,   336,   336,   nil,   nil,
+   336,   336,   337,   337,   337,   nil,   337,   nil,   nil,   nil,
+   337,   337,   nil,   nil,   nil,   337,   nil,   337,   337,   337,
+   337,   337,   337,   337,   nil,   nil,   nil,   nil,   nil,   337,
+   337,   337,   337,   337,   337,   337,   nil,   nil,   337,   nil,
+   nil,   nil,   nil,   nil,   nil,   337,   nil,   nil,   337,   337,
+   337,   337,   337,   337,   337,   337,   nil,   337,   337,   337,
+   nil,   337,   337,   nil,   337,   337,   337,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   337,   nil,   nil,   337,
+   nil,   nil,   337,   337,   nil,   nil,   337,   nil,   nil,   nil,
+   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   337,   nil,   nil,   nil,   nil,   337,   337,   337,   337,   337,
+   337,   nil,   nil,   nil,   337,   337,   nil,   nil,   nil,   nil,
+   nil,   nil,   337,   nil,   nil,   337,   337,   337,   nil,   337,
+   337,   nil,   nil,   337,   337,   343,   343,   343,   343,   343,
+   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,   343,   nil,
+   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   nil,
+   nil,   nil,   343,   343,   343,   343,   343,   343,   343,   nil,
+   nil,   343,   nil,   nil,   nil,   nil,   nil,   343,   343,   nil,
+   343,   343,   343,   343,   343,   343,   343,   343,   343,   nil,
+   343,   343,   343,   nil,   343,   343,   nil,   343,   343,   343,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,
+   nil,   nil,   343,   nil,   nil,   343,   343,   nil,   nil,   343,
+   nil,   343,   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   343,   343,
+   343,   343,   343,   343,   nil,   nil,   nil,   343,   343,   nil,
+   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,   343,
+   343,   nil,   343,   343,   nil,   nil,   343,   343,   379,   379,
+   379,   nil,   379,   nil,   nil,   nil,   379,   379,   nil,   nil,
+   nil,   379,   nil,   379,   379,   379,   379,   379,   379,   379,
+   nil,   nil,   nil,   nil,   nil,   379,   379,   379,   379,   379,
+   379,   379,   nil,   nil,   379,   nil,   nil,   nil,   nil,   nil,
+   nil,   379,   nil,   nil,   379,   379,   379,   379,   379,   379,
+   379,   379,   nil,   379,   379,   379,   nil,   379,   379,   nil,
+   379,   379,   379,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   379,   nil,   nil,   379,   nil,   nil,   379,   379,
+   nil,   nil,   379,   nil,   nil,   nil,   nil,   nil,   379,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   379,   nil,   nil,   nil,
+   nil,   379,   379,   379,   379,   379,   379,   nil,   nil,   nil,
+   379,   379,   nil,   nil,   nil,   nil,   nil,   nil,   379,   nil,
+   nil,   379,   379,   379,   nil,   379,   379,   nil,   nil,   379,
+   379,   381,   381,   381,   nil,   381,   nil,   nil,   nil,   381,
+   381,   nil,   nil,   nil,   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,   381,
+   381,   381,   381,   381,   381,   nil,   381,   381,   381,   nil,
+   381,   381,   nil,   381,   381,   381,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   381,   nil,   nil,   381,   381,
+   nil,   381,   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,   nil,   nil,
+   nil,   381,   nil,   nil,   381,   381,   381,   nil,   381,   381,
+   nil,   nil,   381,   381,   389,   389,   389,   nil,   389,   nil,
+   nil,   nil,   389,   389,   nil,   nil,   nil,   389,   nil,   389,
+   389,   389,   389,   389,   389,   389,   nil,   nil,   nil,   nil,
+   nil,   389,   389,   389,   389,   389,   389,   389,   nil,   nil,
+   389,   nil,   nil,   nil,   nil,   nil,   nil,   389,   nil,   nil,
+   389,   389,   389,   389,   389,   389,   389,   389,   389,   389,
+   389,   389,   nil,   389,   389,   nil,   389,   389,   389,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   389,   nil,
+   nil,   389,   nil,   nil,   389,   389,   nil,   nil,   389,   nil,
+   nil,   nil,   nil,   nil,   389,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   389,   nil,   nil,   nil,   nil,   389,   389,   389,
+   389,   389,   389,   nil,   nil,   nil,   389,   389,   nil,   nil,
+   nil,   nil,   nil,   nil,   389,   nil,   389,   389,   389,   389,
+   nil,   389,   389,   nil,   nil,   389,   389,   394,   394,   394,
+   nil,   394,   nil,   nil,   nil,   394,   394,   nil,   nil,   nil,
+   394,   nil,   394,   394,   394,   394,   394,   394,   394,   nil,
+   nil,   nil,   nil,   nil,   394,   394,   394,   394,   394,   394,
+   394,   nil,   nil,   394,   nil,   nil,   nil,   nil,   nil,   nil,
+   394,   nil,   nil,   394,   394,   394,   394,   394,   394,   394,
+   394,   nil,   394,   394,   394,   nil,   394,   394,   nil,   394,
+   394,   394,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   394,   nil,   nil,   394,   nil,   nil,   394,   394,   nil,
+   nil,   394,   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,   nil,   nil,
+   394,   394,   394,   394,   394,   394,   nil,   nil,   nil,   394,
+   394,   nil,   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,
+   394,   394,   394,   nil,   394,   394,   nil,   nil,   394,   394,
+   415,   415,   415,   nil,   415,   nil,   nil,   nil,   415,   415,
+   nil,   nil,   nil,   415,   nil,   415,   415,   415,   415,   415,
+   415,   415,   nil,   nil,   nil,   nil,   nil,   415,   415,   415,
+   415,   415,   415,   415,   nil,   nil,   415,   nil,   nil,   nil,
+   nil,   nil,   nil,   415,   nil,   nil,   415,   415,   415,   415,
+   415,   415,   415,   415,   nil,   415,   415,   415,   nil,   415,
+   415,   nil,   415,   415,   415,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   415,   nil,   nil,   415,   nil,   nil,
+   415,   415,   nil,   nil,   415,   nil,   nil,   nil,   nil,   nil,
+   415,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   415,   nil,
+   nil,   nil,   nil,   415,   415,   415,   415,   415,   415,   nil,
+   nil,   nil,   415,   415,   nil,   nil,   nil,   nil,   nil,   nil,
+   415,   nil,   nil,   415,   415,   415,   nil,   415,   415,   nil,
+   nil,   415,   415,   461,   461,   461,   nil,   461,   nil,   nil,
+   nil,   461,   461,   nil,   nil,   nil,   461,   nil,   461,   461,
+   461,   461,   461,   461,   461,   nil,   nil,   nil,   nil,   nil,
+   461,   461,   461,   461,   461,   461,   461,   nil,   nil,   461,
+   nil,   nil,   nil,   nil,   nil,   nil,   461,   nil,   nil,   461,
+   461,   461,   461,   461,   461,   461,   461,   nil,   461,   461,
+   461,   nil,   461,   461,   nil,   461,   461,   461,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   461,   nil,   nil,
+   461,   nil,   nil,   461,   461,   nil,   nil,   461,   nil,   nil,
+   nil,   nil,   nil,   461,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   461,   nil,   nil,   nil,   nil,   461,   461,   461,   461,
+   461,   461,   nil,   nil,   nil,   461,   461,   nil,   nil,   nil,
+   nil,   nil,   nil,   461,   nil,   nil,   461,   461,   461,   495,
+   461,   461,   nil,   nil,   461,   461,   495,   495,   495,   nil,
+   nil,   495,   495,   495,  1284,   495,  1284,  1284,  1284,  1284,
+  1284,   nil,   nil,   495,   495,   495,   495,   495,   nil,   nil,
+  1284,   nil,   nil,   nil,   nil,   495,   495,   nil,   495,   495,
+   495,   495,   495,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1284,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1284,  1284,   nil,   495,   495,   495,   495,
+   495,   495,   495,   495,   495,   495,   495,   495,   495,   495,
+   nil,   nil,   495,   495,   495,   nil,   nil,   495,   nil,   nil,
+   495,   nil,   nil,   495,   495,   nil,   495,  1284,   495,   nil,
+   495,   nil,   495,   495,   495,   495,   495,   495,   495,   nil,
+   495,   495,   495,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   495,   495,   495,   495,   nil,
+   495,   496,   495,   nil,   nil,   nil,   nil,   495,   496,   496,
+   496,   495,   nil,   496,   496,   496,   nil,   496,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   496,   496,   496,   496,   496,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   496,   496,   nil,
+   496,   496,   496,   496,   496,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   496,   496,
+   496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
+   496,   496,   nil,   nil,   496,   496,   496,   nil,   nil,   496,
+   nil,   nil,   496,   nil,   nil,   496,   496,   nil,   496,   nil,
+   496,   nil,   496,   nil,   496,   496,   496,   496,   496,   496,
+   496,   nil,   496,   496,   496,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   496,   496,   496,
+   496,   nil,   496,   nil,   496,   nil,   497,   497,   497,   496,
+   497,   nil,   nil,   496,   497,   497,   nil,   nil,   nil,   497,
+   nil,   497,   497,   497,   497,   497,   497,   497,   nil,   nil,
+   nil,   nil,   nil,   497,   497,   497,   497,   497,   497,   497,
+   nil,   nil,   497,   nil,   nil,   nil,   nil,   nil,   nil,   497,
+   nil,   nil,   497,   497,   497,   497,   497,   497,   497,   497,
+   nil,   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,   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   497,   nil,   nil,   497,
+   497,   497,   nil,   497,   497,   nil,   nil,   497,   497,   523,
+   523,   523,   nil,   523,   nil,   nil,   nil,   523,   523,   nil,
+   nil,   nil,   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,   523,   523,   523,
+   523,   523,   523,   nil,   523,   523,   523,   nil,   523,   523,
+   nil,   523,   523,   523,   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,
+   523,   nil,   nil,   523,   nil,   nil,   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,   nil,   nil,   nil,   523,
+   nil,   nil,   523,   523,   523,   nil,   523,   523,   nil,   nil,
+   523,   523,   536,   536,   536,   nil,   536,   nil,   nil,   nil,
+   536,   536,   nil,   nil,   nil,   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,
+   536,   536,   536,   536,   536,   536,   nil,   536,   536,   536,
+   nil,   536,   536,   nil,   536,   536,   536,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   536,   nil,   nil,   536,
+   nil,   nil,   536,   536,   nil,   nil,   536,   nil,   nil,   nil,
+   nil,   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,   nil,
+   nil,   nil,   536,   nil,   nil,   536,   536,   536,   nil,   536,
+   536,   nil,   nil,   536,   536,   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,   nil,   546,   546,   546,   546,   546,   546,   546,   nil,
+   nil,   546,   nil,   nil,   nil,   nil,   nil,   nil,   546,   nil,
+   nil,   546,   546,   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,   546,   nil,   546,   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,   546,   546,   546,
+   546,   nil,   546,   546,   nil,   nil,   546,   546,   548,   548,
+   548,   nil,   548,   nil,   nil,   nil,   548,   548,   nil,   nil,
+   nil,   548,   nil,   548,   548,   548,   548,   548,   548,   548,
+   nil,   nil,   nil,   nil,   nil,   548,   548,   548,   548,   548,
+   548,   548,   nil,   nil,   548,   nil,   nil,   nil,   nil,   nil,
+   nil,   548,   nil,   nil,   548,   548,   548,   548,   548,   548,
+   548,   548,   nil,   548,   548,   548,   nil,   548,   548,   nil,
+   548,   548,   548,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   548,   nil,   nil,   548,   nil,   nil,   548,   548,
+   nil,   nil,   548,   nil,   nil,   nil,   nil,   nil,   548,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   nil,
+   nil,   548,   548,   548,   548,   548,   548,   nil,   nil,   nil,
+   548,   548,   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,
+   nil,   548,   548,   548,   nil,   548,   548,   nil,   nil,   548,
+   548,   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,   nil,   549,   549,
+   549,   549,   549,   549,   549,   nil,   nil,   549,   nil,   nil,
+   nil,   nil,   nil,   nil,   549,   nil,   nil,   549,   549,   549,
+   549,   549,   549,   549,   549,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   549,   nil,   nil,   549,   549,   549,   nil,   549,   549,
+   nil,   nil,   549,   549,   550,   550,   550,   nil,   550,   nil,
+   nil,   nil,   550,   550,   nil,   nil,   nil,   550,   nil,   550,
+   550,   550,   550,   550,   550,   550,   nil,   nil,   nil,   nil,
+   nil,   550,   550,   550,   550,   550,   550,   550,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,
+   550,   550,   550,   550,   550,   550,   550,   550,   nil,   550,
+   550,   550,   nil,   550,   550,   nil,   550,   550,   550,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,
+   nil,   550,   nil,   nil,   550,   550,   nil,   nil,   550,   nil,
+   nil,   nil,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   550,   nil,   nil,   nil,   nil,   550,   550,   550,
+   550,   550,   550,   nil,   nil,   nil,   550,   550,   nil,   nil,
+   nil,   nil,   nil,   nil,   550,   nil,   nil,   550,   550,   550,
+   nil,   550,   550,   nil,   nil,   550,   550,   581,   581,   581,
+   nil,   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,   nil,
+   581,   nil,   nil,   581,   581,   581,   581,   581,   581,   581,
+   581,   nil,   581,   581,   581,   nil,   581,   581,   nil,   581,
+   581,   581,   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,   581,   nil,
+   nil,   581,   nil,   nil,   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,   nil,   nil,   nil,   581,   nil,   nil,
+   581,   581,   581,   584,   581,   581,   nil,   nil,   581,   581,
+   584,   584,   584,   nil,   nil,   584,   584,   584,   nil,   584,
+   993,   993,   993,   993,   nil,   nil,   nil,   584,   584,   584,
+   nil,   nil,   nil,   nil,   nil,   nil,   993,   993,   993,   584,
+   584,   nil,   584,   584,   584,   584,   584,   nil,   nil,   993,
+   993,   nil,   nil,   nil,   993,   nil,   nil,   nil,   nil,   nil,
+   746,   nil,   746,   746,   746,   746,   746,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   746,   nil,   nil,   nil,
+   nil,   584,   nil,   nil,   nil,   nil,   nil,   nil,   584,   nil,
+   nil,   nil,   nil,   584,   584,   nil,   nil,   nil,   746,   nil,
+   nil,   nil,   nil,   993,   993,   993,   993,   993,   993,   746,
+   746,   nil,   993,   993,   nil,   584,   584,   nil,   nil,   nil,
+   993,   nil,   nil,   993,   993,   993,   nil,   993,   993,   584,
+   nil,   589,   589,   589,   584,   589,   nil,   nil,   nil,   589,
+   589,   584,   nil,   746,   589,   584,   589,   589,   589,   589,
+   589,   589,   589,   746,   nil,   nil,   nil,   nil,   589,   589,
+   589,   589,   589,   589,   589,   nil,   nil,   589,   nil,   nil,
+   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   589,   589,
+   589,   589,   589,   589,   589,   nil,   589,   589,   589,   nil,
+   589,   589,   nil,   589,   589,   589,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   nil,
+   nil,   589,   589,   nil,   nil,   589,   nil,   nil,   nil,   nil,
+   nil,   589,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   589,
+   nil,   nil,   nil,   nil,   589,   589,   589,   589,   589,   589,
+   nil,   nil,   nil,   589,   589,   nil,   nil,   nil,   nil,   nil,
+   nil,   589,   nil,   nil,   589,   589,   589,   nil,   589,   589,
+   nil,   nil,   589,   589,   599,   599,   599,   nil,   599,   nil,
+   nil,   nil,   599,   599,   nil,   nil,   nil,   599,   nil,   599,
+   599,   599,   599,   599,   599,   599,   nil,   nil,   nil,   nil,
+   nil,   599,   599,   599,   599,   599,   599,   599,   nil,   nil,
+   599,   nil,   nil,   nil,   nil,   nil,   nil,   599,   nil,   nil,
+   599,   599,   599,   599,   599,   599,   599,   599,   599,   599,
+   599,   599,   nil,   599,   599,   nil,   599,   599,   599,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   599,   nil,
+   nil,   599,   nil,   nil,   599,   599,   nil,   nil,   599,   nil,
+   599,   nil,   599,   nil,   599,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   599,   nil,   nil,   nil,   nil,   599,   599,   599,
+   599,   599,   599,   nil,   nil,   nil,   599,   599,   nil,   nil,
+   nil,   nil,   nil,   nil,   599,   nil,   599,   599,   599,   599,
+   nil,   599,   599,   nil,   nil,   599,   599,   602,   602,   602,
+   nil,   602,   nil,   nil,   nil,   602,   602,   nil,   nil,   nil,
+   602,   nil,   602,   602,   602,   602,   602,   602,   602,   nil,
+   nil,   nil,   nil,   nil,   602,   602,   602,   602,   602,   602,
+   602,   nil,   nil,   602,   nil,   nil,   nil,   nil,   nil,   nil,
+   602,   nil,   nil,   602,   602,   602,   602,   602,   602,   602,
+   602,   602,   602,   602,   602,   nil,   602,   602,   nil,   602,
+   602,   602,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   602,   nil,   nil,   602,   nil,   nil,   602,   602,   nil,
+   nil,   602,   nil,   nil,   nil,   602,   nil,   602,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   602,   nil,   nil,   nil,   nil,
+   602,   602,   602,   602,   602,   602,   nil,   nil,   nil,   602,
+   602,   nil,   nil,   nil,   nil,   nil,   nil,   602,   nil,   602,
+   602,   602,   602,   nil,   602,   602,   nil,   nil,   602,   602,
+   604,   604,   604,   nil,   604,   nil,   nil,   nil,   604,   604,
+   nil,   nil,   nil,   604,   nil,   604,   604,   604,   604,   604,
+   604,   604,   nil,   nil,   nil,   nil,   nil,   604,   604,   604,
+   604,   604,   604,   604,   nil,   nil,   604,   nil,   nil,   nil,
+   nil,   nil,   nil,   604,   nil,   nil,   604,   604,   604,   604,
+   604,   604,   604,   604,   nil,   604,   604,   604,   nil,   604,
+   604,   nil,   604,   604,   604,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   604,   nil,   nil,   604,   nil,   nil,
+   604,   604,   nil,   nil,   604,   nil,   nil,   nil,   nil,   nil,
+   604,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   604,   nil,
+   nil,   nil,   nil,   604,   604,   604,   604,   604,   604,   nil,
+   nil,   nil,   604,   604,   nil,   nil,   nil,   nil,   nil,   nil,
+   604,   nil,   nil,   604,   604,   604,   nil,   604,   604,   nil,
+   nil,   604,   604,   610,   610,   610,   610,   610,   nil,   nil,
+   nil,   610,   610,   nil,   nil,   nil,   610,   nil,   610,   610,
+   610,   610,   610,   610,   610,   nil,   nil,   nil,   nil,   nil,
+   610,   610,   610,   610,   610,   610,   610,   nil,   nil,   610,
+   nil,   nil,   nil,   nil,   nil,   610,   610,   610,   610,   610,
+   610,   610,   610,   610,   610,   610,   610,   nil,   610,   610,
+   610,   nil,   610,   610,   nil,   610,   610,   610,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   610,   nil,   nil,
+   610,   nil,   nil,   610,   610,   nil,   nil,   610,   nil,   610,
+   nil,   nil,   nil,   610,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   610,   nil,   nil,   nil,   nil,   610,   610,   610,   610,
+   610,   610,   nil,   nil,   nil,   610,   610,   nil,   nil,   nil,
+   nil,   nil,   610,   610,   nil,   nil,   610,   610,   610,   nil,
+   610,   610,   nil,   nil,   610,   610,   620,   620,   620,   nil,
+   620,   nil,   nil,   nil,   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,
+   620,   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,   620,   nil,   620,   nil,   620,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   620,   nil,   nil,   nil,   nil,   620,
+   620,   620,   620,   620,   620,   nil,   nil,   nil,   620,   620,
+   nil,   nil,   nil,   nil,   nil,   nil,   620,   nil,   620,   620,
+   620,   620,   nil,   620,   620,   nil,   nil,   620,   620,   630,
+   630,   630,   nil,   630,   nil,   nil,   nil,   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,   630,   nil,   nil,
+   nil,   nil,   630,   630,   630,   630,   630,   630,   nil,   nil,
+   nil,   630,   630,   nil,   nil,   nil,   nil,   nil,   nil,   630,
+   nil,   nil,   630,   630,   630,   nil,   630,   630,   nil,   nil,
+   630,   630,   633,   633,   633,   nil,   633,   nil,   nil,   nil,
+   633,   633,   nil,   nil,   nil,   633,   nil,   633,   633,   633,
+   633,   633,   633,   633,   nil,   nil,   nil,   nil,   nil,   633,
+   633,   633,   633,   633,   633,   633,   nil,   nil,   633,   nil,
+   nil,   nil,   nil,   nil,   nil,   633,   nil,   nil,   633,   633,
+   633,   633,   633,   633,   633,   633,   nil,   633,   633,   633,
+   nil,   633,   633,   nil,   633,   633,   633,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   633,   nil,   nil,   633,
+   nil,   nil,   633,   633,   nil,   nil,   633,   nil,   nil,   nil,
+   nil,   nil,   633,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   633,   nil,   nil,   nil,   nil,   633,   633,   633,   633,   633,
+   633,   nil,   nil,   nil,   633,   633,   nil,   nil,   nil,   nil,
+   nil,   nil,   633,   nil,   nil,   633,   633,   633,   nil,   633,
+   633,   nil,   nil,   633,   633,   636,   636,   636,   nil,   636,
+   nil,   nil,   nil,   636,   636,   nil,   nil,   nil,   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,   636,   636,   636,   636,   636,   636,   nil,
+   636,   636,   636,   nil,   636,   636,   nil,   636,   636,   636,
+   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,   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,   nil,   nil,   nil,   636,   nil,   nil,   636,   636,
+   636,   nil,   636,   636,   nil,   nil,   636,   636,   641,   641,
+   641,   nil,   641,   nil,   nil,   nil,   641,   641,   nil,   nil,
+   nil,   641,   nil,   641,   641,   641,   641,   641,   641,   641,
+   nil,   nil,   nil,   nil,   nil,   641,   641,   641,   641,   641,
+   641,   641,   nil,   nil,   641,   nil,   nil,   nil,   nil,   nil,
+   nil,   641,   nil,   nil,   641,   641,   641,   641,   641,   641,
+   641,   641,   641,   641,   641,   641,   nil,   641,   641,   nil,
+   641,   641,   641,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   641,   nil,   nil,   641,   nil,   nil,   641,   641,
+   nil,   nil,   641,   nil,   641,   nil,   nil,   nil,   641,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   641,   nil,   nil,   nil,
+   nil,   641,   641,   641,   641,   641,   641,   nil,   nil,   nil,
+   641,   641,   nil,   nil,   nil,   nil,   nil,   nil,   641,   nil,
+   641,   641,   641,   641,   nil,   641,   641,   nil,   nil,   641,
+   641,   644,   644,   644,   nil,   644,   nil,   nil,   nil,   644,
+   644,   nil,   nil,   nil,   644,   nil,   644,   644,   644,   644,
+   644,   644,   644,   nil,   nil,   nil,   nil,   nil,   644,   644,
+   644,   644,   644,   644,   644,   nil,   nil,   644,   nil,   nil,
+   nil,   nil,   nil,   nil,   644,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   644,   nil,   644,   644,   644,   644,   nil,   644,   644,
+   nil,   nil,   644,   644,   661,   661,   661,   nil,   661,   nil,
+   nil,   nil,   661,   661,   nil,   nil,   nil,   661,   nil,   661,
+   661,   661,   661,   661,   661,   661,   nil,   nil,   nil,   nil,
+   nil,   661,   661,   661,   661,   661,   661,   661,   nil,   nil,
+   661,   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,
+   661,   661,   661,   661,   661,   661,   661,   661,   nil,   661,
+   661,   661,   nil,   661,   661,   nil,   661,   661,   661,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,
+   nil,   661,   nil,   nil,   661,   661,   nil,   nil,   661,   nil,
+   661,   nil,   nil,   nil,   661,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   661,   nil,   nil,   nil,   nil,   661,   661,   661,
+   661,   661,   661,   nil,   nil,   nil,   661,   661,   nil,   nil,
+   nil,   nil,   nil,   nil,   661,   nil,   nil,   661,   661,   661,
+   nil,   661,   661,   nil,   nil,   661,   661,   662,   662,   662,
+   nil,   662,   nil,   nil,   nil,   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,   662,   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,   662,   nil,   662,   nil,   662,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   662,   nil,   nil,   nil,   nil,
+   662,   662,   662,   662,   662,   662,   nil,   nil,   nil,   662,
+   662,   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,   662,
+   662,   662,   662,   nil,   662,   662,   nil,   nil,   662,   662,
+   672,   672,   672,   nil,   672,   nil,   nil,   nil,   672,   672,
+   nil,   nil,   nil,   672,   nil,   672,   672,   672,   672,   672,
+   672,   672,   nil,   nil,   nil,   nil,   nil,   672,   672,   672,
+   672,   672,   672,   672,   nil,   nil,   672,   nil,   nil,   nil,
+   nil,   nil,   nil,   672,   nil,   nil,   672,   672,   672,   672,
+   672,   672,   672,   672,   672,   672,   672,   672,   nil,   672,
+   672,   nil,   672,   672,   672,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   672,   nil,   nil,   672,   nil,   nil,
+   672,   672,   nil,   nil,   672,   nil,   672,   nil,   672,   nil,
+   672,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   672,   nil,
+   nil,   nil,   nil,   672,   672,   672,   672,   672,   672,   nil,
+   nil,   nil,   672,   672,   nil,   nil,   nil,   nil,   nil,   nil,
+   672,   nil,   672,   672,   672,   672,   nil,   672,   672,   nil,
+   nil,   672,   672,   708,   708,   708,   708,   708,   nil,   nil,
+   nil,   708,   708,   nil,   nil,   nil,   708,   nil,   708,   708,
+   708,   708,   708,   708,   708,   nil,   nil,   nil,   nil,   nil,
+   708,   708,   708,   708,   708,   708,   708,   nil,   nil,   708,
+   nil,   nil,   nil,   nil,   nil,   708,   708,   nil,   708,   708,
+   708,   708,   708,   708,   708,   708,   708,   nil,   708,   708,
+   708,   nil,   708,   708,   nil,   708,   708,   708,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,   nil,
+   708,   nil,   nil,   708,   708,   nil,   nil,   708,   nil,   708,
+   nil,   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   708,   nil,   nil,   nil,   nil,   708,   708,   708,   708,
+   708,   708,   nil,   nil,   nil,   708,   708,   nil,   nil,   nil,
+   nil,   nil,   nil,   708,   nil,   nil,   708,   708,   708,   nil,
+   708,   708,   nil,   nil,   708,   708,   710,   710,   710,   nil,
+   710,   nil,   nil,   nil,   710,   710,   nil,   nil,   nil,   710,
+   nil,   710,   710,   710,   710,   710,   710,   710,   nil,   nil,
+   nil,   nil,   nil,   710,   710,   710,   710,   710,   710,   710,
+   nil,   nil,   710,   nil,   nil,   nil,   nil,   nil,   nil,   710,
+   nil,   nil,   710,   710,   710,   710,   710,   710,   710,   710,
+   nil,   710,   710,   710,   nil,   710,   710,   nil,   710,   710,
+   710,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   710,   nil,   nil,   710,   nil,   nil,   710,   710,   nil,   nil,
+   710,   nil,   710,   nil,   nil,   nil,   710,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   710,   nil,   nil,   nil,   nil,   710,
+   710,   710,   710,   710,   710,   nil,   nil,   nil,   710,   710,
+   nil,   nil,   nil,   nil,   nil,   nil,   710,   nil,   nil,   710,
+   710,   710,   nil,   710,   710,   nil,   nil,   710,   710,   711,
+   711,   711,   nil,   711,   nil,   nil,   nil,   711,   711,   nil,
+   nil,   nil,   711,   nil,   711,   711,   711,   711,   711,   711,
+   711,   nil,   nil,   nil,   nil,   nil,   711,   711,   711,   711,
+   711,   711,   711,   nil,   nil,   711,   nil,   nil,   nil,   nil,
+   nil,   nil,   711,   nil,   nil,   711,   711,   711,   711,   711,
+   711,   711,   711,   nil,   711,   711,   711,   nil,   711,   711,
+   nil,   711,   711,   711,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   711,   nil,   nil,   711,   nil,   nil,   711,
+   711,   nil,   nil,   711,   nil,   nil,   nil,   nil,   nil,   711,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   711,   nil,   nil,
+   nil,   nil,   711,   711,   711,   711,   711,   711,   nil,   nil,
+   nil,   711,   711,   nil,   nil,   nil,   nil,   nil,   nil,   711,
+   nil,   nil,   711,   711,   711,   nil,   711,   711,   nil,   nil,
+   711,   711,   712,   712,   712,   nil,   712,   nil,   nil,   nil,
+   712,   712,   nil,   nil,   nil,   712,   nil,   712,   712,   712,
+   712,   712,   712,   712,   nil,   nil,   nil,   nil,   nil,   712,
+   712,   712,   712,   712,   712,   712,   nil,   nil,   712,   nil,
+   nil,   nil,   nil,   nil,   nil,   712,   nil,   nil,   712,   712,
+   712,   712,   712,   712,   712,   712,   712,   712,   712,   712,
+   nil,   712,   712,   nil,   712,   712,   712,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   712,   nil,   nil,   712,
+   nil,   nil,   712,   712,   nil,   nil,   712,   nil,   712,   nil,
+   712,   nil,   712,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   712,   nil,   nil,   nil,   nil,   712,   712,   712,   712,   712,
+   712,   nil,   nil,   nil,   712,   712,   nil,   nil,   nil,   nil,
+   nil,   nil,   712,   nil,   712,   712,   712,   712,   nil,   712,
+   712,   nil,   nil,   712,   712,   715,   715,   715,   715,   715,
+   nil,   nil,   nil,   715,   715,   nil,   nil,   nil,   715,   nil,
+   715,   715,   715,   715,   715,   715,   715,   nil,   nil,   nil,
+   nil,   nil,   715,   715,   715,   715,   715,   715,   715,   nil,
+   nil,   715,   nil,   nil,   nil,   nil,   nil,   715,   715,   nil,
+   715,   715,   715,   715,   715,   715,   715,   715,   715,   nil,
+   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,   nil,   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   715,   nil,   nil,   715,   715,
+   715,   nil,   715,   715,   nil,   nil,   715,   715,   716,   716,
+   716,   nil,   716,   nil,   nil,   nil,   716,   716,   nil,   nil,
+   nil,   716,   nil,   716,   716,   716,   716,   716,   716,   716,
+   nil,   nil,   nil,   nil,   nil,   716,   716,   716,   716,   716,
+   716,   716,   nil,   nil,   716,   nil,   nil,   nil,   nil,   nil,
+   nil,   716,   nil,   nil,   716,   716,   716,   716,   716,   716,
+   716,   716,   nil,   716,   716,   716,   nil,   716,   716,   nil,
+   716,   716,   716,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   716,   nil,   nil,   716,   nil,   nil,   716,   716,
+   nil,   nil,   716,   nil,   nil,   nil,   nil,   nil,   716,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,   nil,   nil,
+   nil,   716,   716,   716,   716,   716,   716,   nil,   nil,   nil,
+   716,   716,   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,
+   nil,   716,   716,   716,   nil,   716,   716,   nil,   nil,   716,
+   716,   718,   718,   718,   nil,   718,   nil,   nil,   nil,   718,
+   718,   nil,   nil,   nil,   718,   nil,   718,   718,   718,   718,
+   718,   718,   718,   nil,   nil,   nil,   nil,   nil,   718,   718,
+   718,   718,   718,   718,   718,   nil,   nil,   718,   nil,   nil,
+   nil,   nil,   nil,   nil,   718,   nil,   nil,   718,   718,   718,
+   718,   718,   718,   718,   718,   718,   718,   718,   718,   nil,
+   718,   718,   nil,   718,   718,   718,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   718,   nil,   nil,   718,   nil,
+   nil,   718,   718,   nil,   nil,   718,   nil,   718,   nil,   718,
+   nil,   718,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   718,
+   nil,   nil,   nil,   nil,   718,   718,   718,   718,   718,   718,
+   nil,   nil,   nil,   718,   718,   nil,   nil,   nil,   nil,   nil,
+   nil,   718,   nil,   718,   718,   718,   718,   nil,   718,   718,
+   nil,   nil,   718,   718,   719,   719,   719,   nil,   719,   nil,
+   nil,   nil,   719,   719,   nil,   nil,   nil,   719,   nil,   719,
+   719,   719,   719,   719,   719,   719,   nil,   nil,   nil,   nil,
+   nil,   719,   719,   719,   719,   719,   719,   719,   nil,   nil,
+   719,   nil,   nil,   nil,   nil,   nil,   nil,   719,   nil,   nil,
+   719,   719,   719,   719,   719,   719,   719,   719,   719,   719,
+   719,   719,   nil,   719,   719,   nil,   719,   719,   719,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   719,   nil,
+   nil,   719,   nil,   nil,   719,   719,   nil,   nil,   719,   nil,
+   nil,   nil,   719,   nil,   719,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   719,   nil,   nil,   nil,   nil,   719,   719,   719,
+   719,   719,   719,   nil,   nil,   nil,   719,   719,   nil,   nil,
+   nil,   nil,   nil,   nil,   719,   nil,   719,   719,   719,   719,
+   nil,   719,   719,   nil,   nil,   719,   719,   720,   720,   720,
+   nil,   720,   nil,   nil,   nil,   720,   720,   nil,   nil,   nil,
+   720,   nil,   720,   720,   720,   720,   720,   720,   720,   nil,
+   nil,   nil,   nil,   nil,   720,   720,   720,   720,   720,   720,
+   720,   nil,   nil,   720,   nil,   nil,   nil,   nil,   nil,   nil,
+   720,   nil,   nil,   720,   720,   720,   720,   720,   720,   720,
+   720,   nil,   720,   720,   720,   nil,   720,   720,   nil,   720,
+   720,   720,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   720,   nil,   nil,   720,   nil,   nil,   720,   720,   nil,
+   nil,   720,   nil,   nil,   nil,   nil,   nil,   720,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   720,   nil,   nil,   nil,   nil,
+   720,   720,   720,   720,   720,   720,   nil,   nil,   nil,   720,
+   720,   nil,   nil,   nil,   nil,   nil,   nil,   720,   nil,   nil,
+   720,   720,   720,   nil,   720,   720,   nil,   nil,   720,   720,
+   721,   721,   721,   nil,   721,   nil,   nil,   nil,   721,   721,
+   nil,   nil,   nil,   721,   nil,   721,   721,   721,   721,   721,
+   721,   721,   nil,   nil,   nil,   nil,   nil,   721,   721,   721,
+   721,   721,   721,   721,   nil,   nil,   721,   nil,   nil,   nil,
+   nil,   nil,   nil,   721,   nil,   nil,   721,   721,   721,   721,
+   721,   721,   721,   721,   nil,   721,   721,   721,   nil,   721,
+   721,   nil,   721,   721,   721,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   721,   nil,   nil,   721,   nil,   nil,
+   721,   721,   nil,   nil,   721,   nil,   nil,   nil,   nil,   nil,
+   721,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,
+   nil,   nil,   nil,   721,   721,   721,   721,   721,   721,   nil,
+   nil,   nil,   721,   721,   nil,   nil,   nil,   nil,   nil,   nil,
+   721,   nil,   nil,   721,   721,   721,   nil,   721,   721,   nil,
+   nil,   721,   721,   726,   726,   726,   nil,   726,   nil,   nil,
+   nil,   726,   726,   nil,   nil,   nil,   726,   nil,   726,   726,
+   726,   726,   726,   726,   726,   nil,   nil,   nil,   nil,   nil,
+   726,   726,   726,   726,   726,   726,   726,   nil,   nil,   726,
+   nil,   nil,   nil,   nil,   nil,   nil,   726,   nil,   nil,   726,
+   726,   726,   726,   726,   726,   726,   726,   nil,   726,   726,
+   726,   nil,   726,   726,   nil,   726,   726,   726,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   726,   nil,   nil,
+   726,   nil,   nil,   726,   726,   nil,   nil,   726,   nil,   nil,
+   nil,   nil,   nil,   726,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   726,   nil,   nil,   nil,   nil,   726,   726,   726,   726,
+   726,   726,   nil,   nil,   nil,   726,   726,   nil,   nil,   nil,
+   nil,   nil,   nil,   726,   nil,   nil,   726,   726,   726,   nil,
+   726,   726,   nil,   nil,   726,   726,   727,   727,   727,   nil,
+   727,   nil,   nil,   nil,   727,   727,   nil,   nil,   nil,   727,
+   nil,   727,   727,   727,   727,   727,   727,   727,   nil,   nil,
+   nil,   nil,   nil,   727,   727,   727,   727,   727,   727,   727,
+   nil,   nil,   727,   nil,   nil,   nil,   nil,   nil,   nil,   727,
+   nil,   nil,   727,   727,   727,   727,   727,   727,   727,   727,
+   nil,   727,   727,   727,   nil,   727,   727,   nil,   727,   727,
+   727,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   727,   nil,   nil,   727,   nil,   nil,   727,   727,   nil,   nil,
+   727,   nil,   nil,   nil,   nil,   nil,   727,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   727,   nil,   nil,   nil,   nil,   727,
+   727,   727,   727,   727,   727,   nil,   nil,   nil,   727,   727,
+   nil,   nil,   nil,   nil,   nil,   nil,   727,   nil,   nil,   727,
+   727,   727,   nil,   727,   727,   nil,   nil,   727,   727,   734,
+   734,   734,   nil,   734,   nil,   nil,   nil,   734,   734,   nil,
+   nil,   nil,   734,   nil,   734,   734,   734,   734,   734,   734,
+   734,   nil,   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,   nil,   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,   734,   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,   nil,   nil,   nil,   nil,   nil,   nil,   734,
+   nil,   nil,   734,   734,   734,   nil,   734,   734,   nil,   nil,
+   734,   734,   749,   749,   749,   nil,   749,   nil,   nil,   nil,
+   749,   749,   nil,   nil,   nil,   749,   nil,   749,   749,   749,
+   749,   749,   749,   749,   nil,   nil,   nil,   nil,   nil,   749,
+   749,   749,   749,   749,   749,   749,   nil,   nil,   749,   nil,
+   nil,   nil,   nil,   nil,   nil,   749,   nil,   nil,   749,   749,
+   749,   749,   749,   749,   749,   749,   nil,   749,   749,   749,
+   nil,   749,   749,   nil,   749,   749,   749,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   749,   nil,   nil,   749,
+   nil,   nil,   749,   749,   nil,   nil,   749,   nil,   nil,   nil,
+   nil,   nil,   749,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   749,   nil,   nil,   nil,   nil,   749,   749,   749,   749,   749,
+   749,   nil,   nil,   nil,   749,   749,   nil,   nil,   nil,   nil,
+   nil,   nil,   749,   nil,   nil,   749,   749,   749,   nil,   749,
+   749,   nil,   nil,   749,   749,   773,   773,   773,   nil,   773,
+   nil,   nil,   nil,   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,   773,   nil,   nil,   nil,   nil,   773,   773,
+   773,   773,   773,   773,   nil,   nil,   nil,   773,   773,   nil,
+   nil,   nil,   nil,   nil,   nil,   773,   nil,   nil,   773,   773,
+   773,   nil,   773,   773,   nil,   nil,   773,   773,   774,   774,
+   774,   nil,   774,   nil,   nil,   nil,   774,   774,   nil,   nil,
+   nil,   774,   nil,   774,   774,   774,   774,   774,   774,   774,
+   nil,   nil,   nil,   nil,   nil,   774,   774,   774,   774,   774,
+   774,   774,   nil,   nil,   774,   nil,   nil,   nil,   nil,   nil,
+   nil,   774,   nil,   nil,   774,   774,   774,   774,   774,   774,
+   774,   774,   nil,   774,   774,   774,   nil,   774,   774,   nil,
+   774,   774,   774,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   774,   nil,   nil,   774,   nil,   nil,   774,   774,
+   nil,   nil,   774,   nil,   nil,   nil,   nil,   nil,   774,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   774,   nil,   nil,   nil,
+   nil,   774,   774,   774,   774,   774,   774,   nil,   nil,   nil,
+   774,   774,   nil,   nil,   nil,   nil,   nil,   nil,   774,   nil,
+   nil,   774,   774,   774,   nil,   774,   774,   nil,   nil,   774,
+   774,   829,   829,   829,   nil,   829,   nil,   nil,   nil,   829,
+   829,   nil,   nil,   nil,   829,   nil,   829,   829,   829,   829,
+   829,   829,   829,   nil,   nil,   nil,   nil,   nil,   829,   829,
+   829,   829,   829,   829,   829,   nil,   nil,   829,   nil,   nil,
+   nil,   nil,   nil,   nil,   829,   nil,   nil,   829,   829,   829,
+   829,   829,   829,   829,   829,   829,   829,   829,   829,   nil,
+   829,   829,   nil,   829,   829,   829,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,   829,   nil,
+   nil,   829,   829,   nil,   nil,   829,   nil,   829,   nil,   829,
+   nil,   829,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   829,
+   nil,   nil,   nil,   nil,   829,   829,   829,   829,   829,   829,
+   nil,   nil,   nil,   829,   829,   nil,   nil,   nil,   nil,   nil,
+   nil,   829,   nil,   829,   829,   829,   829,   nil,   829,   829,
+   nil,   nil,   829,   829,   838,   838,   838,   nil,   838,   nil,
+   nil,   nil,   838,   838,   nil,   nil,   nil,   838,   nil,   838,
+   838,   838,   838,   838,   838,   838,   nil,   nil,   nil,   nil,
+   nil,   838,   838,   838,   838,   838,   838,   838,   nil,   nil,
+   838,   nil,   nil,   nil,   nil,   nil,   nil,   838,   nil,   nil,
+   838,   838,   838,   838,   838,   838,   838,   838,   nil,   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,
+   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   838,   nil,   nil,   838,   838,   838,
+   nil,   838,   838,   nil,   nil,   838,   838,   841,   841,   841,
+   nil,   841,   nil,   nil,   nil,   841,   841,   nil,   nil,   nil,
+   841,   nil,   841,   841,   841,   841,   841,   841,   841,   nil,
+   nil,   nil,   nil,   nil,   841,   841,   841,   841,   841,   841,
+   841,   nil,   nil,   841,   nil,   nil,   nil,   nil,   nil,   nil,
+   841,   nil,   nil,   841,   841,   841,   841,   841,   841,   841,
+   841,   nil,   841,   841,   841,   nil,   841,   841,   nil,   841,
+   841,   841,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   841,   nil,   nil,   841,   nil,   nil,   841,   841,   nil,
+   nil,   841,   nil,   nil,   nil,   nil,   nil,   841,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   841,   nil,   nil,   nil,   nil,
+   841,   841,   841,   841,   841,   841,   nil,   nil,   nil,   841,
+   841,   nil,   nil,   nil,   nil,   nil,   nil,   841,   nil,   nil,
+   841,   841,   841,   nil,   841,   841,   nil,   nil,   841,   841,
+   879,   879,   879,   nil,   879,   nil,   nil,   nil,   879,   879,
+   nil,   nil,   nil,   879,   nil,   879,   879,   879,   879,   879,
+   879,   879,   nil,   nil,   nil,   nil,   nil,   879,   879,   879,
+   879,   879,   879,   879,   nil,   nil,   879,   nil,   nil,   nil,
+   nil,   nil,   nil,   879,   nil,   nil,   879,   879,   879,   879,
+   879,   879,   879,   879,   nil,   879,   879,   879,   nil,   879,
+   879,   nil,   879,   879,   879,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   879,   nil,   nil,   879,   nil,   nil,
+   879,   879,   nil,   nil,   879,   nil,   nil,   nil,   nil,   nil,
+   879,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   879,   nil,
+   nil,   nil,   nil,   879,   879,   879,   879,   879,   879,   nil,
+   nil,   nil,   879,   879,   nil,   nil,   nil,   nil,   nil,   nil,
+   879,   nil,   nil,   879,   879,   879,   nil,   879,   879,   nil,
+   nil,   879,   879,   892,   892,   892,   nil,   892,   nil,   nil,
+   nil,   892,   892,   nil,   nil,   nil,   892,   nil,   892,   892,
+   892,   892,   892,   892,   892,   nil,   nil,   nil,   nil,   nil,
+   892,   892,   892,   892,   892,   892,   892,   nil,   nil,   892,
+   nil,   nil,   nil,   nil,   nil,   nil,   892,   nil,   nil,   892,
+   892,   892,   892,   892,   892,   892,   892,   nil,   892,   892,
+   892,   nil,   892,   892,   nil,   892,   892,   892,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   892,   nil,   nil,
+   892,   nil,   nil,   892,   892,   nil,   nil,   892,   nil,   nil,
+   nil,   nil,   nil,   892,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   892,   nil,   nil,   nil,   nil,   892,   892,   892,   892,
+   892,   892,   nil,   nil,   nil,   892,   892,   nil,   nil,   nil,
+   nil,   nil,   nil,   892,   nil,   nil,   892,   892,   892,   nil,
+   892,   892,   nil,   nil,   892,   892,   908,   908,   908,   nil,
+   908,   nil,   nil,   nil,   908,   908,   nil,   nil,   nil,   908,
+   nil,   908,   908,   908,   908,   908,   908,   908,   nil,   nil,
+   nil,   nil,   nil,   908,   908,   908,   908,   908,   908,   908,
+   nil,   nil,   908,   nil,   nil,   nil,   nil,   nil,   nil,   908,
+   nil,   nil,   908,   908,   908,   908,   908,   908,   908,   908,
+   nil,   908,   908,   908,   nil,   908,   908,   nil,   908,   908,
+   908,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   908,   nil,   nil,   908,   nil,   nil,   908,   908,   nil,   nil,
+   908,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   908,   nil,   nil,   nil,   nil,   908,
+   908,   908,   908,   908,   908,   nil,   nil,   nil,   908,   908,
+   nil,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   908,
+   908,   908,   nil,   908,   908,   nil,   nil,   908,   908,   916,
+   916,   916,   nil,   916,   nil,   nil,   nil,   916,   916,   nil,
+   nil,   nil,   916,   nil,   916,   916,   916,   916,   916,   916,
+   916,   nil,   nil,   nil,   nil,   nil,   916,   916,   916,   916,
+   916,   916,   916,   nil,   nil,   916,   nil,   nil,   nil,   nil,
+   nil,   nil,   916,   nil,   nil,   916,   916,   916,   916,   916,
+   916,   916,   916,   nil,   916,   916,   916,   nil,   916,   916,
+   nil,   916,   916,   916,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   916,   nil,   nil,   916,   nil,   nil,   916,
+   916,   nil,   nil,   916,   nil,   nil,   nil,   nil,   nil,   916,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   916,   nil,   nil,
+   nil,   nil,   916,   916,   916,   916,   916,   916,   nil,   nil,
+   nil,   916,   916,   nil,   nil,   nil,   nil,   nil,   nil,   916,
+   nil,   nil,   916,   916,   916,   nil,   916,   916,   nil,   nil,
+   916,   916,   928,   928,   928,   nil,   928,   nil,   nil,   nil,
+   928,   928,   nil,   nil,   nil,   928,   nil,   928,   928,   928,
+   928,   928,   928,   928,   nil,   nil,   nil,   nil,   nil,   928,
+   928,   928,   928,   928,   928,   928,   nil,   nil,   928,   nil,
+   nil,   nil,   nil,   nil,   nil,   928,   nil,   nil,   928,   928,
+   928,   928,   928,   928,   928,   928,   nil,   928,   928,   928,
+   nil,   928,   928,   nil,   928,   928,   928,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   928,   nil,   nil,   928,
+   nil,   nil,   928,   928,   nil,   nil,   928,   nil,   nil,   nil,
+   nil,   nil,   928,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   928,   nil,   nil,   nil,   nil,   928,   928,   928,   928,   928,
+   928,   nil,   nil,   nil,   928,   928,   nil,   nil,   nil,   nil,
+   nil,   nil,   928,   nil,   nil,   928,   928,   928,   nil,   928,
+   928,   nil,   nil,   928,   928,   929,   929,   929,   nil,   929,
+   nil,   nil,   nil,   929,   929,   nil,   nil,   nil,   929,   nil,
+   929,   929,   929,   929,   929,   929,   929,   nil,   nil,   nil,
+   nil,   nil,   929,   929,   929,   929,   929,   929,   929,   nil,
+   nil,   929,   nil,   nil,   nil,   nil,   nil,   nil,   929,   nil,
+   nil,   929,   929,   929,   929,   929,   929,   929,   929,   nil,
+   929,   929,   929,   nil,   929,   929,   nil,   929,   929,   929,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   929,
+   nil,   nil,   929,   nil,   nil,   929,   929,   nil,   nil,   929,
+   nil,   nil,   nil,   nil,   nil,   929,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   929,   nil,   nil,   nil,   nil,   929,   929,
+   929,   929,   929,   929,   nil,   nil,   nil,   929,   929,   nil,
+   nil,   nil,   nil,   nil,   nil,   929,   nil,   nil,   929,   929,
+   929,   nil,   929,   929,   nil,   nil,   929,   929,   960,   960,
+   960,   nil,   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,
+   nil,   960,   nil,   nil,   960,   960,   960,   960,   960,   960,
+   960,   960,   nil,   960,   960,   960,   nil,   960,   960,   nil,
+   960,   960,   960,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   960,   nil,   nil,   960,   nil,   nil,   960,   960,
+   nil,   nil,   960,   nil,   nil,   nil,   nil,   nil,   960,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   960,   nil,   nil,   nil,
+   nil,   960,   960,   960,   960,   960,   960,   nil,   nil,   nil,
+   960,   960,   nil,   nil,   nil,   nil,   nil,   nil,   960,   nil,
+   nil,   960,   960,   960,   nil,   960,   960,   nil,   nil,   960,
+   960,   961,   961,   961,   nil,   961,   nil,   nil,   nil,   961,
+   961,   nil,   nil,   nil,   961,   nil,   961,   961,   961,   961,
+   961,   961,   961,   nil,   nil,   nil,   nil,   nil,   961,   961,
+   961,   961,   961,   961,   961,   nil,   nil,   961,   nil,   nil,
+   nil,   nil,   nil,   nil,   961,   nil,   nil,   961,   961,   961,
+   961,   961,   961,   961,   961,   nil,   961,   961,   961,   nil,
+   961,   961,   nil,   961,   961,   961,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   961,   nil,   nil,   961,   nil,
+   nil,   961,   961,   nil,   nil,   961,   nil,   nil,   nil,   nil,
+   nil,   961,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   961,
+   nil,   nil,   nil,   nil,   961,   961,   961,   961,   961,   961,
+   nil,   nil,   nil,   961,   961,   nil,   nil,   nil,   nil,   nil,
+   nil,   961,   nil,   nil,   961,   961,   961,   nil,   961,   961,
+   nil,   nil,   961,   961,   962,   962,   962,   nil,   962,   nil,
+   nil,   nil,   962,   962,   nil,   nil,   nil,   962,   nil,   962,
+   962,   962,   962,   962,   962,   962,   nil,   nil,   nil,   nil,
+   nil,   962,   962,   962,   962,   962,   962,   962,   nil,   nil,
+   962,   nil,   nil,   nil,   nil,   nil,   nil,   962,   nil,   nil,
+   962,   962,   962,   962,   962,   962,   962,   962,   nil,   962,
+   962,   962,   nil,   962,   962,   nil,   962,   962,   962,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   962,   nil,
+   nil,   962,   nil,   nil,   962,   962,   nil,   nil,   962,   nil,
+   nil,   nil,   nil,   nil,   962,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   962,   nil,   nil,   nil,   nil,   962,   962,   962,
+   962,   962,   962,   nil,   nil,   nil,   962,   962,   nil,   nil,
+   nil,   nil,   nil,   nil,   962,   nil,   nil,   962,   962,   962,
+   nil,   962,   962,   nil,   nil,   962,   962,   963,   963,   963,
+   nil,   963,   nil,   nil,   nil,   963,   963,   nil,   nil,   nil,
+   963,   nil,   963,   963,   963,   963,   963,   963,   963,   nil,
+   nil,   nil,   nil,   nil,   963,   963,   963,   963,   963,   963,
+   963,   nil,   nil,   963,   nil,   nil,   nil,   nil,   nil,   nil,
+   963,   nil,   nil,   963,   963,   963,   963,   963,   963,   963,
+   963,   nil,   963,   963,   963,   nil,   963,   963,   nil,   963,
+   963,   963,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   963,   nil,   nil,   963,   nil,   nil,   963,   963,   nil,
+   nil,   963,   nil,   nil,   nil,   nil,   nil,   963,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   963,   nil,   nil,   nil,   nil,
+   963,   963,   963,   963,   963,   963,   nil,   nil,   nil,   963,
+   963,   nil,   nil,   nil,   nil,   nil,   nil,   963,   nil,   nil,
+   963,   963,   963,   nil,   963,   963,   nil,   nil,   963,   963,
+   964,   964,   964,   nil,   964,   nil,   nil,   nil,   964,   964,
+   nil,   nil,   nil,   964,   nil,   964,   964,   964,   964,   964,
+   964,   964,   nil,   nil,   nil,   nil,   nil,   964,   964,   964,
+   964,   964,   964,   964,   nil,   nil,   964,   nil,   nil,   nil,
+   nil,   nil,   nil,   964,   nil,   nil,   964,   964,   964,   964,
+   964,   964,   964,   964,   nil,   964,   964,   964,   nil,   964,
+   964,   nil,   964,   964,   964,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   964,   nil,   nil,   964,   nil,   nil,
+   964,   964,   nil,   nil,   964,   nil,   nil,   nil,   nil,   nil,
+   964,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,   nil,
+   nil,   nil,   nil,   964,   964,   964,   964,   964,   964,   nil,
+   nil,   nil,   964,   964,   nil,   nil,   nil,   nil,   nil,   nil,
+   964,   nil,   nil,   964,   964,   964,   nil,   964,   964,   nil,
+   nil,   964,   964,   965,   965,   965,   nil,   965,   nil,   nil,
+   nil,   965,   965,   nil,   nil,   nil,   965,   nil,   965,   965,
+   965,   965,   965,   965,   965,   nil,   nil,   nil,   nil,   nil,
+   965,   965,   965,   965,   965,   965,   965,   nil,   nil,   965,
+   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,   nil,   965,
+   965,   965,   965,   965,   965,   965,   965,   nil,   965,   965,
+   965,   nil,   965,   965,   nil,   965,   965,   965,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,   nil,
+   965,   nil,   nil,   965,   965,   nil,   nil,   965,   nil,   nil,
+   nil,   nil,   nil,   965,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   965,   nil,   nil,   nil,   nil,   965,   965,   965,   965,
+   965,   965,   nil,   nil,   nil,   965,   965,   nil,   nil,   nil,
+   nil,   nil,   nil,   965,   nil,   nil,   965,   965,   965,   nil,
+   965,   965,   nil,   nil,   965,   965,   999,   999,   999,   nil,
+   999,   nil,   nil,   nil,   999,   999,   nil,   nil,   nil,   999,
+   nil,   999,   999,   999,   999,   999,   999,   999,   nil,   nil,
+   nil,   nil,   nil,   999,   999,   999,   999,   999,   999,   999,
+   nil,   nil,   999,   nil,   nil,   nil,   nil,   nil,   nil,   999,
+   nil,   nil,   999,   999,   999,   999,   999,   999,   999,   999,
+   nil,   999,   999,   999,   nil,   999,   999,   nil,   999,   999,
+   999,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   999,   nil,   nil,   999,   nil,   nil,   999,   999,   nil,   nil,
+   999,   nil,   nil,   nil,   nil,   nil,   999,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   999,   nil,   nil,   nil,   nil,   999,
+   999,   999,   999,   999,   999,   nil,   nil,   nil,   999,   999,
+   nil,   nil,   nil,   nil,   nil,   nil,   999,   nil,   nil,   999,
+   999,   999,   nil,   999,   999,   nil,   nil,   999,   999,  1005,
+  1005,  1005,   nil,  1005,   nil,   nil,   nil,  1005,  1005,   nil,
+   nil,   nil,  1005,   nil,  1005,  1005,  1005,  1005,  1005,  1005,
+  1005,   nil,   nil,   nil,   nil,   nil,  1005,  1005,  1005,  1005,
+  1005,  1005,  1005,   nil,   nil,  1005,   nil,   nil,   nil,   nil,
+   nil,   nil,  1005,   nil,   nil,  1005,  1005,  1005,  1005,  1005,
+  1005,  1005,  1005,   nil,  1005,  1005,  1005,   nil,  1005,  1005,
+   nil,  1005,  1005,  1005,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1005,   nil,   nil,  1005,   nil,   nil,  1005,
+  1005,   nil,   nil,  1005,   nil,   nil,   nil,   nil,   nil,  1005,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1005,   nil,   nil,
+   nil,   nil,  1005,  1005,  1005,  1005,  1005,  1005,   nil,   nil,
+   nil,  1005,  1005,   nil,   nil,   nil,   nil,   nil,   nil,  1005,
+   nil,   nil,  1005,  1005,  1005,   nil,  1005,  1005,   nil,   nil,
+  1005,  1005,  1031,  1031,  1031,   nil,  1031,   nil,   nil,   nil,
+  1031,  1031,   nil,   nil,   nil,  1031,   nil,  1031,  1031,  1031,
+  1031,  1031,  1031,  1031,   nil,   nil,   nil,   nil,   nil,  1031,
+  1031,  1031,  1031,  1031,  1031,  1031,   nil,   nil,  1031,   nil,
+   nil,   nil,   nil,   nil,   nil,  1031,   nil,   nil,  1031,  1031,
+  1031,  1031,  1031,  1031,  1031,  1031,   nil,  1031,  1031,  1031,
+   nil,  1031,  1031,   nil,  1031,  1031,  1031,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1031,   nil,   nil,  1031,
+   nil,   nil,  1031,  1031,   nil,   nil,  1031,   nil,   nil,   nil,
+   nil,   nil,  1031,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1031,   nil,   nil,   nil,   nil,  1031,  1031,  1031,  1031,  1031,
+  1031,   nil,   nil,   nil,  1031,  1031,   nil,   nil,   nil,   nil,
+   nil,   nil,  1031,   nil,   nil,  1031,  1031,  1031,   nil,  1031,
+  1031,   nil,   nil,  1031,  1031,  1040,  1040,  1040,   nil,  1040,
+   nil,   nil,   nil,  1040,  1040,   nil,   nil,   nil,  1040,   nil,
+  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,   nil,   nil,
+   nil,   nil,  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,
+   nil,  1040,   nil,   nil,   nil,   nil,   nil,   nil,  1040,   nil,
+   nil,  1040,  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,
+  1040,  1040,  1040,   nil,  1040,  1040,   nil,  1040,  1040,  1040,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1040,
+   nil,   nil,  1040,   nil,   nil,  1040,  1040,   nil,   nil,  1040,
+   nil,  1040,   nil,   nil,   nil,  1040,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1040,   nil,   nil,   nil,   nil,  1040,  1040,
+  1040,  1040,  1040,  1040,   nil,   nil,   nil,  1040,  1040,   nil,
+   nil,   nil,   nil,   nil,   nil,  1040,   nil,   nil,  1040,  1040,
+  1040,   nil,  1040,  1040,   nil,   nil,  1040,  1040,  1064,  1064,
+  1064,   nil,  1064,   nil,   nil,   nil,  1064,  1064,   nil,   nil,
+   nil,  1064,   nil,  1064,  1064,  1064,  1064,  1064,  1064,  1064,
+   nil,   nil,   nil,   nil,   nil,  1064,  1064,  1064,  1064,  1064,
+  1064,  1064,   nil,   nil,  1064,   nil,   nil,   nil,   nil,   nil,
+   nil,  1064,   nil,   nil,  1064,  1064,  1064,  1064,  1064,  1064,
+  1064,  1064,  1064,  1064,  1064,  1064,   nil,  1064,  1064,   nil,
+  1064,  1064,  1064,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1064,   nil,   nil,  1064,   nil,   nil,  1064,  1064,
+   nil,   nil,  1064,   nil,   nil,   nil,  1064,   nil,  1064,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1064,   nil,   nil,   nil,
+   nil,  1064,  1064,  1064,  1064,  1064,  1064,   nil,   nil,   nil,
+  1064,  1064,   nil,   nil,   nil,   nil,   nil,   nil,  1064,   nil,
+  1064,  1064,  1064,  1064,   nil,  1064,  1064,   nil,   nil,  1064,
+  1064,  1088,  1088,  1088,   nil,  1088,   nil,   nil,   nil,  1088,
+  1088,   nil,   nil,   nil,  1088,   nil,  1088,  1088,  1088,  1088,
+  1088,  1088,  1088,   nil,   nil,   nil,   nil,   nil,  1088,  1088,
+  1088,  1088,  1088,  1088,  1088,   nil,   nil,  1088,   nil,   nil,
+   nil,   nil,   nil,   nil,  1088,   nil,   nil,  1088,  1088,  1088,
+  1088,  1088,  1088,  1088,  1088,   nil,  1088,  1088,  1088,   nil,
+  1088,  1088,   nil,  1088,  1088,  1088,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1088,   nil,   nil,  1088,   nil,
+   nil,  1088,  1088,   nil,   nil,  1088,   nil,   nil,   nil,   nil,
+   nil,  1088,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1088,
+   nil,   nil,   nil,   nil,  1088,  1088,  1088,  1088,  1088,  1088,
+   nil,   nil,   nil,  1088,  1088,   nil,   nil,   nil,   nil,   nil,
+   nil,  1088,   nil,   nil,  1088,  1088,  1088,   nil,  1088,  1088,
+   nil,   nil,  1088,  1088,  1145,  1145,  1145,   nil,  1145,   nil,
+   nil,   nil,  1145,  1145,   nil,   nil,   nil,  1145,   nil,  1145,
+  1145,  1145,  1145,  1145,  1145,  1145,   nil,   nil,   nil,   nil,
+   nil,  1145,  1145,  1145,  1145,  1145,  1145,  1145,   nil,   nil,
+  1145,   nil,   nil,   nil,   nil,   nil,   nil,  1145,   nil,   nil,
+  1145,  1145,  1145,  1145,  1145,  1145,  1145,  1145,   nil,  1145,
+  1145,  1145,   nil,  1145,  1145,   nil,  1145,  1145,  1145,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1145,   nil,
+   nil,  1145,   nil,   nil,  1145,  1145,   nil,   nil,  1145,   nil,
+   nil,   nil,   nil,   nil,  1145,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1145,   nil,   nil,   nil,   nil,  1145,  1145,  1145,
+  1145,  1145,  1145,   nil,   nil,   nil,  1145,  1145,   nil,   nil,
+   nil,   nil,   nil,   nil,  1145,   nil,   nil,  1145,  1145,  1145,
+   nil,  1145,  1145,   nil,   nil,  1145,  1145,  1203,  1203,  1203,
+   nil,  1203,   nil,   nil,   nil,  1203,  1203,   nil,   nil,   nil,
+  1203,   nil,  1203,  1203,  1203,  1203,  1203,  1203,  1203,   nil,
+   nil,   nil,   nil,   nil,  1203,  1203,  1203,  1203,  1203,  1203,
+  1203,   nil,   nil,  1203,   nil,   nil,   nil,   nil,   nil,   nil,
+  1203,   nil,   nil,  1203,  1203,  1203,  1203,  1203,  1203,  1203,
+  1203,   nil,  1203,  1203,  1203,   nil,  1203,  1203,   nil,  1203,
+  1203,  1203,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1203,   nil,   nil,  1203,   nil,   nil,  1203,  1203,   nil,
+   nil,  1203,   nil,   nil,   nil,   nil,   nil,  1203,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1203,   nil,   nil,   nil,   nil,
+  1203,  1203,  1203,  1203,  1203,  1203,   nil,   nil,   nil,  1203,
+  1203,   nil,   nil,   nil,   nil,   nil,   nil,  1203,   nil,   nil,
+  1203,  1203,  1203,   nil,  1203,  1203,   nil,   nil,  1203,  1203,
+  1204,  1204,  1204,   nil,  1204,   nil,   nil,   nil,  1204,  1204,
+   nil,   nil,   nil,  1204,   nil,  1204,  1204,  1204,  1204,  1204,
+  1204,  1204,   nil,   nil,   nil,   nil,   nil,  1204,  1204,  1204,
+  1204,  1204,  1204,  1204,   nil,   nil,  1204,   nil,   nil,   nil,
+   nil,   nil,   nil,  1204,   nil,   nil,  1204,  1204,  1204,  1204,
+  1204,  1204,  1204,  1204,   nil,  1204,  1204,  1204,   nil,  1204,
+  1204,   nil,  1204,  1204,  1204,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1204,   nil,   nil,  1204,   nil,   nil,
+  1204,  1204,   nil,   nil,  1204,   nil,   nil,   nil,   nil,   nil,
+  1204,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1204,   nil,
+   nil,   nil,   nil,  1204,  1204,  1204,  1204,  1204,  1204,   nil,
+   nil,   nil,  1204,  1204,   nil,   nil,   nil,   nil,   nil,   nil,
+  1204,   nil,   nil,  1204,  1204,  1204,   nil,  1204,  1204,   nil,
+   nil,  1204,  1204,  1218,  1218,  1218,   nil,  1218,   nil,   nil,
+   nil,  1218,  1218,   nil,   nil,   nil,  1218,   nil,  1218,  1218,
+  1218,  1218,  1218,  1218,  1218,   nil,   nil,   nil,   nil,   nil,
+  1218,  1218,  1218,  1218,  1218,  1218,  1218,   nil,   nil,  1218,
+   nil,   nil,   nil,   nil,   nil,   nil,  1218,   nil,   nil,  1218,
+  1218,  1218,  1218,  1218,  1218,  1218,  1218,  1218,  1218,  1218,
+  1218,   nil,  1218,  1218,   nil,  1218,  1218,  1218,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1218,   nil,   nil,
+  1218,   nil,   nil,  1218,  1218,   nil,   nil,  1218,   nil,  1218,
+   nil,  1218,   nil,  1218,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1218,   nil,   nil,   nil,   nil,  1218,  1218,  1218,  1218,
+  1218,  1218,   nil,   nil,   nil,  1218,  1218,   nil,   nil,   nil,
+   nil,   nil,   nil,  1218,   nil,  1218,  1218,  1218,  1218,   nil,
+  1218,  1218,   nil,   nil,  1218,  1218,    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,   nil,    40,    40,    40,    40,    40,    40,    40,
+   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,    40,
+   nil,   nil,    40,    40,    40,    40,    40,    40,    40,    40,
+   nil,    40,    40,    40,   nil,    40,    40,   nil,   nil,   nil,
+    40,   nil,   nil,   nil,   nil,   nil,  1075,   nil,  1075,  1075,
+  1075,  1075,  1075,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    40,   nil,  1075,    40,   nil,   nil,    40,    40,   nil,   nil,
+    40,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1075,   nil,   nil,   nil,   nil,    40,
+    40,    40,    40,    40,    40,  1075,  1075,   nil,    40,    40,
+   nil,   nil,   nil,   nil,   nil,   nil,    40,   nil,   nil,    40,
+    40,    40,   nil,    40,    40,    41,    41,    41,   nil,    41,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,    41,  1075,
+    41,    41,    41,    41,    41,    41,    41,   nil,   nil,  1075,
+   nil,   nil,    41,    41,    41,    41,    41,    41,    41,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,    41,    41,    41,    41,    41,    41,    41,    41,   nil,
+    41,    41,    41,   nil,    41,    41,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,  1077,   nil,  1077,  1077,  1077,
+  1077,  1077,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   nil,  1077,    41,   nil,   nil,    41,    41,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1077,   nil,   nil,   nil,   nil,    41,    41,
+    41,    41,    41,    41,  1077,  1077,   nil,    41,    41,   nil,
+   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,    41,    41,
+    41,   nil,    41,    41,    77,    77,    77,   nil,    77,   nil,
+   nil,   nil,    77,    77,   nil,   nil,   nil,    77,  1077,    77,
+    77,    77,    77,    77,    77,    77,   nil,   nil,  1077,   nil,
+   nil,    77,    77,    77,    77,    77,    77,    77,   nil,   nil,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
+    77,    77,    77,    77,    77,    77,    77,    77,   nil,    77,
+    77,    77,   nil,    77,    77,   nil,   nil,   nil,    77,   nil,
+   nil,   nil,   nil,   nil,  1079,   nil,  1079,  1079,  1079,  1079,
+  1079,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
+  1079,    77,   nil,   nil,    77,    77,   nil,   nil,    77,   nil,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1079,   nil,   nil,   nil,   nil,    77,    77,    77,
+    77,    77,    77,  1079,  1079,   nil,    77,    77,   nil,   nil,
+   nil,   nil,   nil,   nil,    77,   nil,   nil,    77,    77,    77,
+   nil,    77,    77,    78,    78,    78,   nil,    78,   nil,   nil,
+   nil,    78,    78,   nil,   nil,   nil,    78,  1079,    78,    78,
+    78,    78,    78,    78,    78,   nil,   nil,  1079,   nil,   nil,
+    78,    78,    78,    78,    78,    78,    78,   nil,   nil,    78,
+   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,    78,
+    78,    78,    78,    78,    78,    78,    78,   nil,    78,    78,
+    78,   nil,    78,    78,   nil,   nil,   nil,    78,   nil,   nil,
+   nil,   nil,   nil,  1222,   nil,  1222,  1222,  1222,  1222,  1222,
+   nil,   nil,   nil,   nil,    78,   nil,   nil,    78,   nil,  1222,
+    78,   nil,   nil,    78,    78,   nil,   nil,    78,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1222,   nil,   nil,   nil,   nil,    78,    78,    78,    78,
+    78,    78,  1222,  1222,   nil,    78,    78,   nil,   nil,   nil,
+   nil,   nil,   nil,    78,   nil,   nil,    78,    78,    78,   nil,
+    78,    78,    79,    79,    79,   nil,    79,   nil,   nil,   nil,
+    79,    79,   nil,   nil,   nil,    79,  1222,    79,    79,    79,
+    79,    79,    79,    79,   nil,   nil,  1222,   nil,   nil,    79,
+    79,    79,    79,    79,    79,    79,   nil,   nil,    79,   nil,
+   nil,   nil,   nil,   nil,   nil,    79,   nil,   nil,    79,    79,
+    79,    79,    79,    79,    79,    79,   nil,    79,    79,    79,
+   nil,    79,    79,   nil,   nil,   nil,    79,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    79,   nil,   nil,    79,
+   nil,   nil,    79,    79,   nil,   nil,    79,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    79,    79,    79,    79,    79,
+    79,   nil,   nil,   nil,    79,    79,   nil,   nil,   nil,   nil,
+   nil,   nil,    79,   nil,   nil,    79,    79,    79,   nil,    79,
+    79,   351,   351,   351,   nil,   351,   nil,   nil,   nil,   351,
+   351,   nil,   nil,   nil,   351,   nil,   351,   351,   351,   351,
+   351,   351,   351,   nil,   nil,   nil,   nil,   nil,   351,   351,
+   351,   351,   351,   351,   351,   nil,   nil,   351,   nil,   nil,
+   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,   351,   351,
+   351,   351,   351,   351,   351,   nil,   351,   351,   351,   nil,
+   351,   351,   nil,   nil,   nil,   351,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,   nil,
+   nil,   351,   351,   nil,   nil,   351,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   351,   351,   351,   351,   351,   351,
+   nil,   nil,   nil,   351,   351,   nil,   nil,   nil,   351,   nil,
+   nil,   351,   nil,   nil,   351,   351,   351,   nil,   351,   351,
+   370,   370,   370,   nil,   370,   nil,   nil,   nil,   370,   370,
+   nil,   nil,   nil,   370,   nil,   370,   370,   370,   370,   370,
+   370,   370,   nil,   nil,   nil,   nil,   nil,   370,   370,   370,
+   370,   370,   370,   370,   nil,   nil,   370,   nil,   nil,   nil,
+   nil,   nil,   nil,   370,   nil,   nil,   370,   370,   370,   370,
+   370,   370,   370,   370,   nil,   370,   370,   370,   nil,   370,
+   370,   nil,   nil,   nil,   370,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   370,   nil,   nil,   370,   nil,   nil,
+   370,   370,   nil,   nil,   370,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   370,   370,   370,   370,   370,   370,   nil,
+   nil,   nil,   370,   370,   nil,   nil,   nil,   nil,   nil,   nil,
+   370,   nil,   nil,   370,   370,   370,   nil,   370,   370,   618,
+   618,   618,   nil,   618,   nil,   nil,   nil,   618,   618,   nil,
+   nil,   nil,   618,   nil,   618,   618,   618,   618,   618,   618,
+   618,   nil,   nil,   nil,   nil,   nil,   618,   618,   618,   618,
+   618,   618,   618,   nil,   nil,   618,   nil,   nil,   nil,   nil,
+   nil,   nil,   618,   nil,   nil,   618,   618,   618,   618,   618,
+   618,   618,   618,   nil,   618,   618,   618,   nil,   618,   618,
+   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   618,   nil,   nil,   618,   nil,   nil,   618,
+   618,   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   618,   618,   618,   618,   618,   618,   nil,   nil,
+   nil,   618,   618,   nil,   nil,   nil,   nil,   nil,   nil,   618,
+   nil,   nil,   618,   618,   618,   nil,   618,   618,   627,   627,
+   627,   nil,   627,   nil,   nil,   nil,   627,   627,   nil,   nil,
+   nil,   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,   627,   627,   627,   627,
+   627,   627,   nil,   627,   627,   627,   nil,   627,   627,   nil,
+   nil,   nil,   627,   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,   627,
+   nil,   nil,   627,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   627,   627,   627,   627,   627,   627,   nil,   nil,   nil,
+   627,   627,   nil,   nil,   nil,   nil,   nil,   nil,   627,   nil,
+   nil,   627,   627,   627,   nil,   627,   627,   845,   845,   845,
+   nil,   845,   nil,   nil,   nil,   845,   845,   nil,   nil,   nil,
+   845,   nil,   845,   845,   845,   845,   845,   845,   845,   nil,
+   nil,   nil,   nil,   nil,   845,   845,   845,   845,   845,   845,
+   845,   nil,   nil,   845,   nil,   nil,   nil,   nil,   nil,   nil,
+   845,   nil,   nil,   845,   845,   845,   845,   845,   845,   845,
+   845,   nil,   845,   845,   845,   nil,   845,   845,   nil,   nil,
+   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   845,   845,   845,   845,   845,   845,   nil,   nil,   nil,   845,
+   845,   nil,   nil,   nil,   nil,   nil,   nil,   845,   nil,   nil,
+   845,   845,   845,   nil,   845,   845,   856,   856,   856,   nil,
+   856,   nil,   nil,   nil,   856,   856,   nil,   nil,   nil,   856,
+   nil,   856,   856,   856,   856,   856,   856,   856,   nil,   nil,
+   nil,   nil,   nil,   856,   856,   856,   856,   856,   856,   856,
+   nil,   nil,   856,   nil,   nil,   nil,   nil,   nil,   nil,   856,
+   nil,   nil,   856,   856,   856,   856,   856,   856,   856,   856,
+   nil,   856,   856,   856,   nil,   856,   856,   nil,   nil,   nil,
+   856,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   856,   nil,   nil,   856,   nil,   nil,   856,   856,   nil,   nil,
+   856,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   856,
+   856,   856,   856,   856,   856,   nil,   nil,   nil,   856,   856,
+   nil,   nil,   nil,   nil,   nil,   nil,   856,   nil,   nil,   856,
+   856,   856,   nil,   856,   856,  1070,  1070,  1070,   nil,  1070,
+   nil,   nil,   nil,  1070,  1070,   nil,   nil,   nil,  1070,   nil,
+  1070,  1070,  1070,  1070,  1070,  1070,  1070,   nil,   nil,   nil,
+   nil,   nil,  1070,  1070,  1070,  1070,  1070,  1070,  1070,   nil,
+   nil,  1070,   nil,   nil,   nil,   nil,   nil,   nil,  1070,   nil,
+   nil,  1070,  1070,  1070,  1070,  1070,  1070,  1070,  1070,   nil,
+  1070,  1070,  1070,   nil,  1070,  1070,   nil,   nil,   nil,  1070,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1070,
+   nil,   nil,  1070,   nil,   nil,  1070,  1070,   nil,   nil,  1070,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1070,  1070,
+  1070,  1070,  1070,  1070,   nil,   nil,   nil,  1070,  1070,   nil,
+   nil,   nil,   nil,   nil,   nil,  1070,   nil,   nil,  1070,  1070,
+  1070,   nil,  1070,  1070,  1131,  1131,  1131,   nil,  1131,   nil,
+   nil,   nil,  1131,  1131,   nil,   nil,   nil,  1131,   nil,  1131,
+  1131,  1131,  1131,  1131,  1131,  1131,   nil,   nil,   nil,   nil,
+   nil,  1131,  1131,  1131,  1131,  1131,  1131,  1131,   nil,   nil,
+  1131,   nil,   nil,   nil,   nil,   nil,   nil,  1131,   nil,   nil,
+  1131,  1131,  1131,  1131,  1131,  1131,  1131,  1131,   nil,  1131,
+  1131,  1131,   nil,  1131,  1131,   nil,   nil,   nil,  1131,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1131,   nil,
+   nil,  1131,   nil,   nil,  1131,  1131,   nil,   nil,  1131,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1131,  1131,  1131,
+  1131,  1131,  1131,   nil,   nil,   nil,  1131,  1131,   nil,   nil,
+   nil,   nil,   nil,   nil,  1131,   nil,   nil,  1131,  1131,  1131,
+   nil,  1131,  1131,  1197,  1197,  1197,   nil,  1197,   nil,   nil,
+   nil,  1197,  1197,   nil,   nil,   nil,  1197,   nil,  1197,  1197,
+  1197,  1197,  1197,  1197,  1197,   nil,   nil,   nil,   nil,   nil,
+  1197,  1197,  1197,  1197,  1197,  1197,  1197,   nil,   nil,  1197,
+   nil,   nil,   nil,   nil,   nil,   nil,  1197,   nil,   nil,  1197,
+  1197,  1197,  1197,  1197,  1197,  1197,  1197,   nil,  1197,  1197,
+  1197,   nil,  1197,  1197,   nil,   nil,   nil,  1197,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1197,   nil,   nil,
+  1197,   nil,   nil,  1197,  1197,   nil,   nil,  1197,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1197,  1197,  1197,  1197,
+  1197,  1197,   nil,   nil,   nil,  1197,  1197,   nil,   nil,   nil,
+   nil,   nil,   nil,  1197,   nil,   nil,  1197,  1197,  1197,   nil,
+  1197,  1197,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
+   nil,   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,   nil,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,
+    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,
+   nil,    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
+   nil,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    11,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
+   nil,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,   nil,   nil,   nil,   nil,   nil,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,   nil,   nil,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,
+    12,    12,    12,    12,    12,    12,    12,   nil,   nil,    12,
+    12,   nil,   nil,   nil,    12,    12,    12,    12,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    27,    27,
+    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
+    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
+    27,    27,   nil,   nil,   nil,    27,    27,    27,    27,    27,
+    27,    27,    27,    27,    27,   nil,   nil,   nil,   nil,   nil,
+    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
+    27,    27,   nil,    27,   nil,   nil,   nil,   nil,   nil,   nil,
+    27,    27,   nil,    27,    27,    27,    27,    27,    27,    27,
+   nil,   nil,    27,    27,   nil,   nil,   nil,    27,    27,    27,
+    27,   nil,   nil,   nil,   nil,   nil,    27,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    27,    27,   nil,    27,    27,    27,
+    27,    27,    27,    27,    27,    27,    27,    27,   nil,   nil,
+    27,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    27,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   nil,   nil,   nil,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   nil,   nil,
+   nil,   nil,   nil,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   nil,   109,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,   109,   nil,   109,   109,   109,   109,
+   109,   109,   109,   nil,   nil,   109,   109,   nil,   nil,   nil,
+   109,   109,   109,   109,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,   109,   nil,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   nil,   nil,   109,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,   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,   452,   452,   452,   452,   452,   452,   452,   452,   452,
+   452,   nil,   nil,   nil,   nil,   nil,   452,   452,   452,   452,
+   452,   452,   452,   452,   452,   nil,   nil,   452,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   452,   452,   nil,   452,
+   452,   452,   452,   452,   452,   452,   nil,   nil,   452,   452,
+   nil,   nil,   nil,   452,   452,   452,   452,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   452,   452,   nil,   452,   452,   452,   452,   452,   452,   452,
+   452,   452,   452,   452,   nil,   nil,   452,   452,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   452,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   452,   706,   706,   706,
+   706,   706,   706,   706,   706,   706,   706,   706,   706,   706,
+   706,   706,   706,   706,   706,   706,   706,   706,   706,   706,
+   706,   nil,   nil,   nil,   706,   706,   706,   706,   706,   706,
+   706,   706,   706,   706,   nil,   nil,   nil,   nil,   nil,   706,
+   706,   706,   706,   706,   706,   706,   706,   706,   nil,   nil,
+   706,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,
+   706,   nil,   706,   706,   706,   706,   706,   706,   706,   nil,
+   nil,   706,   706,   nil,   nil,   nil,   706,   706,   706,   706,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   706,   706,   nil,   706,   706,   706,   706,
+   706,   706,   706,   706,   706,   706,   706,   nil,   nil,   706,
+   706,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   706,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,
+   821,   821,   821,   821,   821,   821,   821,   821,   821,   821,
+   821,   821,   821,   821,   821,   821,   821,   821,   821,   821,
+   821,   821,   821,   821,   nil,   nil,   nil,   821,   821,   821,
+   821,   821,   821,   821,   821,   821,   821,   nil,   nil,   nil,
+   nil,   nil,   821,   821,   821,   821,   821,   821,   821,   821,
+   821,   nil,   nil,   821,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   821,   821,   nil,   821,   821,   821,   821,   821,
+   821,   821,   nil,   nil,   821,   821,   nil,   nil,   nil,   821,
+   821,   821,   821,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   821,   821,   nil,   821,
+   821,   821,   821,   821,   821,   821,   821,   821,   821,   821,
+   nil,   nil,   821,   nil,   nil,   nil,   nil,   553,   553,   553,
+   553,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   821,   553,   553,   553,   553,   nil,   nil,   nil,
+   553,   553,   nil,   nil,   nil,   nil,   553,   553,   nil,   nil,
+   nil,   553,   553,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   553,   nil,   nil,   553,   nil,   nil,   nil,   553,   nil,
+   nil,   553,   nil,   553,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,
+   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,   553,
+   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   553,
+   553,   553,   553,   nil,   553,   553,   nil,   nil,   553,   553,
+   554,   554,   554,   554,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   554,   554,   554,   554,
+   nil,   nil,   nil,   554,   554,   nil,   nil,   nil,   nil,   554,
+   554,   nil,   nil,   nil,   554,   554,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   554,   nil,   nil,   554,   nil,   nil,
+   nil,   554,   nil,   nil,   554,   nil,   554,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   554,
+   nil,   nil,   nil,   554,   554,   554,   554,   554,   554,   nil,
+   nil,   nil,   554,   554,   nil,   nil,   nil,   nil,   nil,   nil,
+   554,   nil,   554,   554,   554,   554,   nil,   554,   554,   nil,
+   nil,   554,   554,   786,   786,   786,   786,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   786,
+   786,   786,   786,   nil,   nil,   nil,   786,   nil,   nil,   nil,
+   nil,   nil,   786,   786,   nil,   nil,   nil,   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,   nil,   786,   nil,   nil,   786,   nil,   786,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   786,   nil,   nil,   nil,   786,   786,   786,   786,
+   786,   786,   nil,   nil,   nil,   786,   786,   786,   nil,   nil,
+   nil,   nil,   nil,   786,   nil,   nil,   786,   786,   786,   nil,
+   786,   786,   nil,   nil,   786,   786,   794,   794,   794,   794,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   794,   794,   794,   794,   nil,   nil,   nil,   794,
+   nil,   nil,   nil,   nil,   nil,   794,   794,   nil,   nil,   nil,
+   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,   nil,   794,   nil,   nil,
+   794,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   794,   nil,   nil,   nil,   794,
+   794,   794,   794,   794,   794,   nil,   nil,   nil,   794,   794,
+   nil,   nil,   nil,   nil,   nil,   nil,   794,   nil,   nil,   794,
+   794,   794,   nil,   794,   794,   nil,   nil,   794,   794,   967,
+   967,   967,   967,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   967,   967,   967,   967,   nil,
+   nil,   nil,   967,   nil,   nil,   nil,   nil,   nil,   967,   967,
+   nil,   nil,   nil,   967,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   967,   nil,   nil,   967,   nil,   nil,   nil,
+   967,   nil,   nil,   967,   nil,   967,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   967,   nil,
+   nil,   nil,   967,   967,   967,   967,   967,   967,   nil,   nil,
+   nil,   967,   967,   nil,   nil,   nil,   nil,   nil,   nil,   967,
+   nil,   nil,   967,   967,   967,   nil,   967,   967,   nil,   nil,
+   967,   967,   969,   969,   969,   969,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   969,   969,
+   969,   969,   nil,   nil,   nil,   969,   nil,   nil,   nil,   nil,
+   nil,   969,   969,   nil,   nil,   nil,   969,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   969,   nil,   nil,   969,
+   nil,   nil,   nil,   969,   nil,   nil,   969,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   969,   nil,   nil,   nil,   969,   969,   969,   969,   969,
+   969,   nil,   nil,   nil,   969,   969,   nil,   nil,   nil,   nil,
+   nil,   nil,   969,   nil,   nil,   969,   969,   969,   nil,   969,
+   969,   nil,   nil,   969,   969,   972,   972,   972,   972,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   972,   972,   972,   972,   nil,   nil,   nil,   972,   972,
+   nil,   nil,   nil,   nil,   972,   972,   nil,   nil,   nil,   972,
+   972,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   972,
+   nil,   nil,   972,   nil,   nil,   nil,   972,   nil,   nil,   972,
+   nil,   972,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   972,   nil,   nil,   nil,   972,   972,
+   972,   972,   972,   972,   nil,   nil,   nil,   972,   972,   nil,
+   nil,   nil,   nil,   nil,   nil,   972,   nil,   972,   972,   972,
+   972,   nil,   972,   972,   nil,   nil,   972,   972,   973,   973,
+   973,   973,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   973,   973,   973,   973,   nil,   nil,
+   nil,   973,   973,   nil,   nil,   nil,   nil,   973,   973,   nil,
+   nil,   nil,   973,   973,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   973,   nil,   nil,   973,   nil,   nil,   nil,   973,
+   nil,   nil,   973,   nil,   973,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   973,   nil,   nil,
+   nil,   973,   973,   973,   973,   973,   973,   nil,   nil,   nil,
+   973,   973,   nil,   nil,   nil,   nil,   nil,   nil,   973,   nil,
+   973,   973,   973,   973,   nil,   973,   973,   nil,   nil,   973,
+   973,   979,   979,   979,   979,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   979,   979,   979,
+   979,   nil,   nil,   nil,   979,   nil,   nil,   nil,   nil,   nil,
+   979,   979,   nil,   nil,   nil,   979,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   979,   nil,   nil,   979,   nil,
+   nil,   nil,   979,   nil,   nil,   979,   nil,   979,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   979,   nil,   nil,   nil,   979,   979,   979,   979,   979,   979,
+   nil,   nil,   nil,   979,   979,   nil,   nil,   nil,   nil,   nil,
+   nil,   979,   nil,   nil,   979,   979,   979,   nil,   979,   979,
+   nil,   nil,   979,   979,   985,   985,   985,   985,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   985,   985,   985,   985,   nil,   nil,   nil,   985,   nil,   nil,
+   nil,   nil,   nil,   985,   985,   nil,   nil,   nil,   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,   nil,   985,   nil,   nil,   985,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   985,   nil,   nil,   nil,   985,   985,   985,
+   985,   985,   985,   nil,   nil,   nil,   985,   985,   nil,   nil,
+   nil,   nil,   nil,   nil,   985,   nil,   nil,   985,   985,   985,
+   nil,   985,   985,   nil,   nil,   985,   985,   986,   986,   986,
+   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   986,   986,   986,   986,   nil,   nil,   nil,
+   986,   nil,   nil,   nil,   nil,   nil,   986,   986,   nil,   nil,
+   nil,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   986,   nil,   nil,   986,   nil,   nil,   nil,   986,   nil,
+   nil,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,   nil,
+   986,   986,   986,   986,   986,   986,   nil,   nil,   nil,   986,
+   986,   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,
+   986,   986,   986,   nil,   986,   986,   nil,   nil,   986,   986,
+  1038,  1038,  1038,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1038,  1038,  1038,  1038,
+   nil,   nil,   nil,  1038,  1038,   nil,   nil,   nil,   nil,  1038,
+  1038,   nil,   nil,   nil,  1038,  1038,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1038,   nil,   nil,  1038,   nil,   nil,
+   nil,  1038,   nil,   nil,  1038,   nil,  1038,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1038,
+   nil,   nil,   nil,  1038,  1038,  1038,  1038,  1038,  1038,   nil,
+   nil,   nil,  1038,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
+  1038,   nil,  1038,  1038,  1038,  1038,   nil,  1038,  1038,   nil,
+   nil,  1038,  1038,  1170,  1170,  1170,  1170,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1170,
+  1170,  1170,  1170,   nil,   nil,   nil,  1170,   nil,   nil,   nil,
+   nil,   nil,  1170,  1170,   nil,   nil,   nil,  1170,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1170,   nil,   nil,
+  1170,   nil,   nil,   nil,  1170,   nil,   nil,  1170,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1170,   nil,   nil,   nil,  1170,  1170,  1170,  1170,
+  1170,  1170,   nil,   nil,   nil,  1170,  1170,   nil,   nil,   nil,
+   nil,   nil,   nil,  1170,   nil,   nil,  1170,  1170,  1170,   nil,
+  1170,  1170,   nil,   nil,  1170,  1170,  1178,  1178,  1178,  1178,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1178,  1178,  1178,  1178,   nil,   nil,   nil,  1178,
+   nil,   nil,   nil,   nil,   nil,  1178,  1178,   nil,   nil,   nil,
+  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1178,   nil,   nil,  1178,   nil,   nil,   nil,  1178,   nil,   nil,
+  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1178,   nil,   nil,   nil,  1178,
+  1178,  1178,  1178,  1178,  1178,   nil,   nil,   nil,  1178,  1178,
+   nil,   nil,   nil,   nil,   nil,   nil,  1178,   nil,   nil,  1178,
+  1178,  1178,   nil,  1178,  1178,   nil,   nil,  1178,  1178,  1182,
+  1182,  1182,  1182,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1182,  1182,  1182,  1182,   nil,
+   nil,   nil,  1182,   nil,   nil,   nil,   nil,   nil,  1182,  1182,
+   nil,   nil,   nil,  1182,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1182,   nil,   nil,  1182,   nil,   nil,   nil,
+  1182,   nil,   nil,  1182,   nil,  1182,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1182,   nil,
+   nil,   nil,  1182,  1182,  1182,  1182,  1182,  1182,   nil,   nil,
+   nil,  1182,  1182,   nil,   nil,   nil,   nil,   nil,   nil,  1182,
+   nil,   nil,  1182,  1182,  1182,   nil,  1182,  1182,   nil,   nil,
+  1182,  1182,  1259,  1259,  1259,  1259,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1259,  1259,
+  1259,  1259,   nil,   nil,   nil,  1259,   nil,   nil,   nil,   nil,
+   nil,  1259,  1259,   nil,   nil,   nil,  1259,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   994,   994,   994,   994,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1259,   nil,   nil,  1259,
+   994,   994,   994,  1259,   nil,   nil,  1259,   nil,   nil,   nil,
+   nil,   nil,   nil,   994,   994,   nil,   nil,   nil,   994,   nil,
+   nil,  1259,   nil,   nil,   nil,  1259,  1259,  1259,  1259,  1259,
+  1259,   nil,   nil,   nil,  1259,  1259,   nil,   nil,   nil,   nil,
+   nil,   nil,  1259,   nil,   nil,  1259,  1259,  1259,   nil,  1259,
+  1259,   nil,   nil,  1259,  1259,   nil,   nil,   240,   nil,   240,
+   240,   240,   240,   240,   nil,   nil,   nil,   994,   994,   994,
+   994,   994,   994,   240,   nil,   nil,   994,   994,   nil,   nil,
+   nil,   nil,   nil,   nil,   994,   nil,   nil,   994,   994,   994,
+   nil,   994,   994,   nil,   241,   240,   241,   241,   241,   241,
+   241,   nil,   nil,   nil,   240,   240,   240,   240,   nil,   417,
+   241,   417,   417,   417,   417,   417,   nil,   679,   nil,   679,
+   679,   679,   679,   679,   nil,   417,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   679,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   241,   241,   241,   241,   nil,   nil,   417,   417,   nil,
+   240,   nil,   nil,   nil,   nil,   679,   417,   417,   417,   417,
+   nil,   nil,   nil,   nil,   679,   679,   679,   679,   742,   nil,
+   742,   742,   742,   742,   742,   nil,   nil,   241,   nil,   nil,
+   nil,   nil,   nil,   nil,   742,   nil,   nil,   241,   nil,   nil,
+   nil,   744,   417,   744,   744,   744,   744,   744,   nil,   nil,
+   679,   nil,   417,   nil,   nil,   nil,   742,   744,   nil,   nil,
+   679,   nil,   nil,   nil,   nil,   742,   742,   742,   742,  1073,
+   nil,  1073,  1073,  1073,  1073,  1073,   nil,   nil,   nil,   744,
+   nil,   nil,   nil,   nil,   nil,  1073,   nil,   nil,   744,   744,
+   744,   744,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   742,   nil,   nil,   nil,   nil,   nil,  1073,   nil,   nil,
+   nil,   742,   nil,   nil,   nil,   nil,  1073,  1073,  1073,  1073,
+   nil,   nil,   nil,   nil,   744,   232,   232,   nil,   nil,   232,
+   nil,   nil,   nil,   nil,   744,   nil,   nil,   nil,   232,   232,
+   nil,   232,   232,   232,   232,   232,   232,   232,   nil,   nil,
+   232,   232,  1073,   nil,   nil,   232,   232,   232,   232,   nil,
+   nil,   nil,  1073,   nil,   232,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   232,   232,   nil,   232,   232,   232,   232,   232,
+   232,   232,   232,   232,   232,   232,   nil,   nil,   232,   nil,
+   nil,   nil,   nil,   233,   233,   nil,   nil,   233,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   233,   233,   232,   233,
+   233,   233,   233,   233,   233,   233,   nil,   nil,   233,   233,
+   nil,   nil,   nil,   233,   233,   233,   233,   nil,   nil,   nil,
+   nil,   nil,   233,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   233,   233,   nil,   233,   233,   233,   233,   233,   233,   233,
+   233,   233,   233,   233,   nil,   nil,   233,   nil,   nil,   nil,
+   nil,   310,   310,   nil,   nil,   310,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   310,   310,   233,   310,   310,   310,
+   310,   310,   310,   310,   nil,   nil,   310,   310,   nil,   nil,
+   nil,   310,   310,   310,   310,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   310,   310,
+   nil,   310,   310,   310,   310,   310,   310,   310,   310,   310,
+   310,   310,   nil,   nil,   310,   nil,   nil,   nil,   nil,   544,
+   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   544,   544,   310,   544,   544,   544,   544,   544,
+   544,   544,   nil,   nil,   544,   544,   nil,   nil,   nil,   544,
+   544,   544,   544,   nil,   nil,   nil,   nil,   nil,   544,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   544,   544,   nil,   544,
+   544,   544,   544,   544,   544,   544,   544,   544,   544,   544,
+   nil,   nil,   544,   nil,   nil,   nil,   nil,   545,   545,   nil,
+   nil,   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   545,   545,   544,   545,   545,   545,   545,   545,   545,   545,
+   nil,   nil,   545,   545,   nil,   nil,   nil,   545,   545,   545,
+   545,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   545,   545,   nil,   545,   545,   545,
+   545,   545,   545,   545,   545,   545,   545,   545,   nil,   nil,
+   545,   nil,   nil,   nil,   nil,   621,   621,   nil,   nil,   621,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   621,   621,
+   545,   621,   621,   621,   621,   621,   621,   621,   nil,   nil,
+   621,   621,   nil,   nil,   nil,   621,   621,   621,   621,   nil,
+   nil,   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   621,   621,   nil,   621,   621,   621,   621,   621,
+   621,   621,   621,   621,   621,   621,   nil,   nil,   621,   nil,
+   nil,   nil,   nil,   622,   622,   nil,   nil,   622,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   622,   621,   622,
+   622,   622,   622,   622,   622,   622,   nil,   nil,   622,   622,
+   nil,   nil,   nil,   622,   622,   622,   622,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   622,   622,   nil,   622,   622,   622,   622,   622,   622,   622,
+   622,   622,   622,   622,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,   631,   631,   nil,   nil,   631,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   631,   631,   622,   631,   631,   631,
+   631,   631,   631,   631,   nil,   nil,   631,   631,   nil,   nil,
+   nil,   631,   631,   631,   631,   nil,   nil,   nil,   nil,   nil,
+   631,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   631,   631,
+   nil,   631,   631,   631,   631,   631,   631,   631,   631,   631,
+   631,   631,   nil,   nil,   631,   nil,   nil,   nil,   nil,   632,
+   632,   nil,   nil,   632,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   632,   632,   631,   632,   632,   632,   632,   632,
+   632,   632,   nil,   nil,   632,   632,   nil,   nil,   nil,   632,
+   632,   632,   632,   nil,   nil,   nil,   nil,   nil,   632,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   632,   632,   nil,   632,
+   632,   632,   632,   632,   632,   632,   632,   632,   632,   632,
+   nil,   nil,   632,   nil,   nil,   nil,   nil,   663,   663,   nil,
+   nil,   663,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   663,   663,   632,   663,   663,   663,   663,   663,   663,   663,
+   nil,   nil,   663,   663,   nil,   nil,   nil,   663,   663,   663,
+   663,   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   663,   663,   nil,   663,   663,   663,
+   663,   663,   663,   663,   663,   663,   663,   663,   nil,   nil,
+   663,   nil,   nil,   nil,   nil,   664,   664,   nil,   nil,   664,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   664,   664,
+   663,   664,   664,   664,   664,   664,   664,   664,   nil,   nil,
+   664,   664,   nil,   nil,   nil,   664,   664,   664,   664,   nil,
+   nil,   nil,   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   664,   664,   nil,   664,   664,   664,   664,   664,
+   664,   664,   664,   664,   664,   664,   nil,   nil,   664,   nil,
+   nil,   nil,   nil,   670,   670,   nil,   nil,   670,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   670,   670,   664,   670,
+   670,   670,   670,   670,   670,   670,   nil,   nil,   670,   670,
+   nil,   nil,   nil,   670,   670,   670,   670,   nil,   nil,   nil,
+   nil,   nil,   670,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   670,   670,   nil,   670,   670,   670,   670,   670,   670,   670,
+   670,   670,   670,   670,   nil,   nil,   670,   nil,   nil,   nil,
+   nil,   671,   671,   nil,   nil,   671,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   671,   671,   670,   671,   671,   671,
+   671,   671,   671,   671,   nil,   nil,   671,   671,   nil,   nil,
+   nil,   671,   671,   671,   671,   nil,   nil,   nil,   nil,   nil,
+   671,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   671,   671,
+   nil,   671,   671,   671,   671,   671,   671,   671,   671,   671,
+   671,   671,   nil,   nil,   671,   nil,   nil,   nil,   nil,   713,
+   713,   nil,   nil,   713,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   713,   713,   671,   713,   713,   713,   713,   713,
+   713,   713,   nil,   nil,   713,   713,   nil,   nil,   nil,   713,
+   713,   713,   713,   nil,   nil,   nil,   nil,   nil,   713,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   713,   713,   nil,   713,
+   713,   713,   713,   713,   713,   713,   713,   713,   713,   713,
+   nil,   nil,   713,   nil,   nil,   nil,   nil,   714,   714,   nil,
+   nil,   714,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   714,   714,   713,   714,   714,   714,   714,   714,   714,   714,
+   nil,   nil,   714,   714,   nil,   nil,   nil,   714,   714,   714,
+   714,   nil,   nil,   nil,   nil,   nil,   714,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   714,   714,   nil,   714,   714,   714,
+   714,   714,   714,   714,   714,   714,   714,   714,   nil,   nil,
+   714,   nil,   nil,   nil,   nil,  1219,  1219,   nil,   nil,  1219,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1219,  1219,
+   714,  1219,  1219,  1219,  1219,  1219,  1219,  1219,   nil,   nil,
+  1219,  1219,   nil,   nil,   nil,  1219,  1219,  1219,  1219,   nil,
+   nil,   nil,   nil,   nil,  1219,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1219,  1219,   nil,  1219,  1219,  1219,  1219,  1219,
+  1219,  1219,  1219,  1219,  1219,  1219,   nil,   nil,  1219,   nil,
+   nil,   nil,   nil,  1220,  1220,   nil,   nil,  1220,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1220,  1220,  1219,  1220,
+  1220,  1220,  1220,  1220,  1220,  1220,   nil,   nil,  1220,  1220,
+   nil,   nil,   nil,  1220,  1220,  1220,  1220,   nil,   nil,   nil,
+   nil,   nil,  1220,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1220,  1220,   nil,  1220,  1220,  1220,  1220,  1220,  1220,  1220,
+  1220,  1220,  1220,  1220,   nil,   nil,  1220,   nil,   nil,   nil,
+   nil,  1243,  1243,   nil,   nil,  1243,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1243,  1243,  1220,  1243,  1243,  1243,
+  1243,  1243,  1243,  1243,   nil,   nil,  1243,  1243,   nil,   nil,
+   nil,  1243,  1243,  1243,  1243,   nil,   nil,   nil,   nil,   nil,
+  1243,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1243,  1243,
+   nil,  1243,  1243,  1243,  1243,  1243,  1243,  1243,  1243,  1243,
+  1243,  1243,   nil,   nil,  1243,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1243 ]
+
+racc_action_pointer = [
+   nil,    60,  1098,    96,   nil,   194,   nil,   nil,  5417,  1083,
+   nil, 26870, 27003,    72,   nil,    47,    56,   704,   167,   317,
+   -32,    92,   283,   nil,   -65,  5560,  1386, 27136,   296,   nil,
+   -40,   nil,   165,  5698,  5830,  5960,  6103,  6246,   nil,  1242,
+ 24924, 25063,   nil,   224,   449,   513,   306,  6389,  6532,   167,
+  6675,  6818,   697,  6961,   248,   361,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  7099,   nil,  7240,  7383,   nil,
+   -22,   nil,  7526,  7669,   nil,   nil,  7812, 25202, 25341, 25480,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   101,   nil,   nil,   nil,
+   nil,   nil,   nil,   259,   279,   295,   311,   nil,   nil, 27269,
+   nil,   nil,   nil,   nil,   nil,   nil,     0,   nil,   nil,   136,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  7955,   nil,   nil,   nil,   nil,  8098,  8241,  8384,
+  8527,  8670,   341,   nil,   399,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   381,   nil,  1386,  8813,  8956,  9099,  9242,
+  9385,  9528, 29764, 29832,   nil,   nil,   401,  1530,   409,   nil,
+ 29546, 29583,   433,  1674,  9671,  9814,  9957,   nil,   nil,   376,
+   -21,   104,   535,   114,   459,   547,   nil, 10100,   226,   241,
+  1818,   589,   nil,   nil, 10243, 10386, 10529, 10672, 10815, 10958,
+ 11101, 11244, 11387, 11530, 11673, 11816, 11959, 12102, 12245, 12388,
+ 12531, 12674, 12817, 12960, 13103, 13246,   nil,   nil,   nil,   nil,
+ 13389,   nil,   nil,   388,   412,   514,   548,   552,   576,   596,
+   617,   654,   736,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+ 29900,   nil,   nil,   586, 13532, 13675,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil, 13818,   nil,  2106,   nil,   562,   568,
+   nil, 13961,   611, 14104,   nil,   nil, 14247, 14390,   nil,   nil,
+   396,   nil,   nil, 14533,  1227,   nil,   555,  1962,   577,   622,
+   586, 25619,  2106,   455,   504,   516,   672,   591,   nil,   652,
+   635,   193,   676,   682,   nil,   nil,   nil,   686,   266,   686,
+ 25758,   nil,   597,   620,  3402,  3546,   760,   nil,   796, 14676,
+   nil, 14819,  2250,  1329,   739,   nil,   -94,   172,   742, 14962,
+   nil,   806,    -8,     8, 15105,  2394,  2538,   412,   856,   750,
+   -19,    -7,   640,   847,    24,   892,   nil,   nil,  1087,  1089,
+   181,   nil,   650,   nil,   823, 15248,   nil, 29598,   nil,   383,
+   nil,   402,   nil,   136,   nil,   808,   440,   nil,   818,   481,
+   nil,   821,   -59,   nil,   827,   -58,   nil,   485,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  2682, 27402,   nil,   nil,   nil,   nil,   838,   nil,   910,
+   827, 15391,   828,   nil,   nil,   817,   nil,   652,   147,   921,
+   nil,   nil,  1530,   nil,   nil,   nil,   nil,   nil,  1674,   841,
+   nil,   nil,   845,   849,   644,   649,  7240,   nil,   nil,   nil,
+   272,   408,   893,   nil,   nil, 15529, 15661, 15794,   983,   987,
+   nil,   nil,   872,   870,   875,   nil,   nil,   876,   881,   882,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   871,
+   784,   nil,   nil, 15937,   nil,   nil,   nil,     0,   nil,   nil,
+   nil,   982,   nil,   nil,   983,   462, 16080,  1029,   nil,   nil,
+   nil,   -26,   nil,   950, 29968, 30036, 16223,   223, 16366, 16509,
+ 16652,   896,   899, 27755, 27868,  3690,  3834,   810,  1007,   980,
+   981,   982,   983,  5417,  5560,  1121,  3978,  4122,  4266,  4410,
+  4554,  4698,  1214,  1243,  4842,  4986,  2250,  5130,   nil,   nil,
+   nil, 16795,  1043,   nil, 16933,   nil,   nil,   nil,   nil, 17059,
+   928,   933,   940,   nil,   nil,   nil,   947,   nil,   nil, 17202,
+   nil,   nil, 17345,   nil, 17488,   nil,   196,   nil,   nil,   nil,
+ 17631,  1515,   963,   954,   953,   nil,   nil,   956, 25897,   960,
+ 17774, 30104, 30172,   725,  1003,   nil,   nil, 26036,   966,   nil,
+ 17917, 30240, 30308, 18060,  5274,  2394, 18203,  1087,   971,   nil,
+   nil, 18346,   nil,   nil, 18489,   nil,  1010,   994,   nil,   534,
+  1046,  2826,  1128,   nil,  2970,    63,  1145,  1149,   308,  1152,
+   nil, 18632, 18775, 30376, 30444,    26,   nil,   nil,   766,   nil,
+ 30512, 30580, 18918,   nil,   nil,   nil,   811,  3114,   nil, 29606,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   208,   nil,   nil,   298,   nil,   nil,   nil,  1036,
+   nil,   nil,  1038,   nil,  1056,   nil, 27535,   nil, 19061,  1041,
+ 19204, 19347, 19490, 30648, 30716, 19633, 19776,   651, 19919, 20062,
+ 20205, 20348,  1074,   nil,   nil,   nil, 20491, 20634,  1078,   nil,
+  1133,  1818,   551,   nil, 20777,   nil,   nil,   nil,   330,   nil,
+   nil,   749, 29657,   nil, 29680,   nil, 16939,   nil,  1032, 20920,
+   nil,   918,   nil,  1051,  1056,  1372,  1060,   nil,   nil,   nil,
+   nil,   nil,   nil,  1146,  1962,   nil,   nil,   nil,   281,   326,
+   544,   680,  1066, 21063, 21206,   nil,   -70,   nil,   nil,   nil,
+   nil,  1084,   nil,   nil,   nil,   375, 27981,   -82,   nil,  1066,
+  1146,  1069,   nil,   nil, 28094,   nil,   nil,     1,   nil,   nil,
+   796,   nil,   nil,   952,  7099,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   955,   443,   nil,   nil,
+  1074, 27668,   -14,   nil,   113,  1176,   -19,   nil,   nil, 21349,
+   nil,  1096,   nil,  1210,   nil,  1092,   nil,  1140, 21492,   nil,
+   nil, 21635,   nil,   nil,   158, 26175,  1103,   nil,  1110,    -9,
+    -5,  1149,    25,   776,  1150,  1120, 26314,   nil,  1183,    -7,
+   nil,   nil,   691,   nil,   nil,   nil,   884,   nil,  1237,   nil,
+   nil,   nil,   nil,   nil,  1245,  1246,   nil,   nil,   nil, 21778,
+    69,  1132,    29,    30,   162,   163,  3258,  1231,   784,   nil,
+  1152,  3402, 21921,   465,  1270,    34,  1156,  1153,  3546,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1154, 22064,  1158,
+   402,   421,   816,   952,   nil,  2538, 22207,  1156,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 22350, 22493,
+   nil,   nil,   nil,   nil,  3690,   nil,  1169,  1214,   nil,   nil,
+  1176,   nil,  1260,   nil,   nil,  1183,  1185,   nil,  1186,  1193,
+   nil,  1194,   nil,   nil,   nil,  1198,  1084,  3964,   nil,   nil,
+ 22636, 22779, 22922, 23065, 23208, 23351,   479, 28207,  1275, 28320,
+  1236,   195, 28433, 28546,   589,   -31,  1203,  1204,   nil, 28659,
+   nil,  1203,   266,   nil,  1220, 28772, 28885,   nil,   340,  1248,
+   213,   nil,   nil, 16918, 29492,   nil,   nil,   nil,   nil, 23494,
+   nil,   nil,   nil,   nil,   nil, 23637,   nil,   nil,   nil,   nil,
+   337,   nil,  3834,   nil,   nil,  1224,  1213,   nil,   117,   nil,
+   nil,   nil,   nil,  1212,    39,   nil,   nil,   nil,  1336,   nil,
+   nil, 23780,   nil,  3978,  1341,   nil,   nil,   nil, 28998,   nil,
+ 23923,  4122,    68,  1342,   nil,  1344,   598,   nil,   nil,   nil,
+  4266,  4410,  1223,  1229,   nil,   nil,   nil,   nil,   nil,  1218,
+  1234,   490,   nil,   nil, 24066,  2682,  2826,  4554,   nil,     9,
+ 26453,   nil,   nil, 29708,   nil, 24945,   nil, 25084,   nil, 25223,
+   nil,   nil,   nil,   nil,  1235,  1236,  2970,  3114, 24209,   nil,
+  1246,   nil,   nil,   nil,   nil,  1285,  1289,  1292,  1258,  1267,
+  1268,   nil,   nil,   nil,  1307,  1269,  1270,   nil,  1274,   nil,
+   nil,   740,  1273,   nil,   nil,   nil,   nil,   nil,   nil,  1285,
+  3258,  1283,  1284,   nil,  1285,  1293,  1299,   nil,  1333,  1320,
+  1303, 26592,   nil,   nil,   nil,   nil,   nil,  4698,   nil,    35,
+   nil,   nil,    43,   866,   nil, 24352,   426,   nil,   nil,   nil,
+  4842,  1351,  1458,  2092,   nil,   nil,  1460,  4986,   120,   135,
+   786,  1416,   144,   nil,  1344,  1347,  1348,  1351,  4108,  4252,
+ 29111,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 29224,   nil,
+   243,   nil, 29337,   nil,   367,   nil,   nil,   475,   nil,   nil,
+   nil,   611,   nil,   745,   nil,   nil,  1372, 26731,   855,  1428,
+   nil,  5130,   nil, 24495, 24638,   nil,   nil,   nil,   nil,  1477,
+   nil,   nil,   707,   nil,   nil,   nil,   nil,  1491, 24781, 30784,
+ 30852,   145, 25362,   nil,   nil,   nil,   nil,  1370,  1371,  1378,
+   nil,   nil,  1379,   nil,   nil,  1380,  1383,  1385,  1386,   nil,
+  1387,   nil,   861, 30920,   nil,   898,  5274,   nil,   nil,   nil,
+   nil,  2236,   nil,  1391,   158,   168,   169,   236,  1390, 29450,
+   nil,   881,   nil,  5662,   nil,  5761,   nil,  7063,   nil,   nil,
+  1430,  1434,   nil,    32,   nil,   171,   nil,  1398,  1399,  1408,
+  1409,   nil,   nil,   nil, 15493,   nil,   nil,   nil,   nil,  1410,
+   nil ]
+
+racc_action_default = [
+    -1,  -782,  -781,  -782,    -2,  -767,    -4,    -5,  -782,    -8,
+    -9,  -782,  -782,  -782,   -35,  -782,  -782,   -40,  -782,  -782,
+  -672,  -672,  -317,   -56,  -769,  -782,   -65,  -782,   -74,   -75,
+   -76,   -80,  -291,  -291,  -291,  -331,  -359,  -360,   -92,  -781,
+   -96,  -104,  -106,  -782,  -659,  -660,  -782,  -782,  -782,  -782,
+  -782,  -782,  -244,  -782,  -769,  -262,  -308,  -309,  -310,  -311,
+  -312,  -313,  -314,  -315,  -316,  -753,  -319,  -321,  -781,  -329,
+  -339,  -341,  -782,  -782,   -71,   -71,  -767,  -782,  -782,  -782,
+  -361,  -362,  -364,  -365,  -366,  -367,  -368,  -369,  -370,  -371,
+  -372,  -373,  -382,  -442,  -586,  -587,  -588,  -589,  -590,  -781,
+  -593,  -781,  -781,  -781,  -781,  -781,  -781,  -629,  -630,  -781,
+  -632,  -638,  -640,  -641,  -642,  -643,  -751,  -648,  -649,  -752,
+  -651,  -652,  -653,  -654,  -655,  -656,  -657,  -658,  -663,  -664,
+  1291,    -3,  -768,  -777,  -778,  -779,    -7,  -782,  -782,  -782,
+  -782,  -782,  -782,   -23,  -782,  -135,  -136,  -137,  -138,  -139,
+  -140,  -141,  -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,  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,
+  -203,  -204,  -205,  -206,  -207,  -208,  -209,  -210,  -211,  -212,
+  -213,  -214,  -215,   -28,  -142,  -781,  -782,  -782,  -782,  -782,
+  -782,  -781,  -782,  -782,  -763,  -764,  -782,  -781,  -671,  -669,
+  -695,  -695,  -782,  -781,  -782,  -782,  -769,  -770,   -60,  -782,
+  -659,  -660,  -782,  -317,  -782,  -782,  -250,  -782,  -672,  -672,
+  -781,  -782,   -61,   -63,  -227,  -228,  -782,  -782,  -782,  -782,
+  -782,  -782,  -782,  -782,  -782,  -782,  -782,  -782,  -782,  -782,
+  -782,  -782,  -782,  -782,  -782,  -782,  -263,  -264,  -265,  -266,
+  -782,   -66,   -67,  -782,  -135,  -136,  -175,  -176,  -177,  -193,
+  -198,  -205,  -208,  -659,  -660,  -738,  -739,  -375,  -470,  -450,
+  -782,  -765,  -766,   -81,  -781,  -782,  -338,  -374,  -454,  -463,
+  -465,   -87,  -460,   -88,  -769,   -89,  -269,  -286,  -781,  -781,
+  -290,  -294,  -297,  -299,  -781,  -743,  -747,  -750,   -90,   -91,
+  -767,   -16,   -17,  -782,   -20,   -21,   -94,  -781,  -769,  -782,
+   -97,  -100,  -781,  -112,  -113,  -782,  -782,  -120,  -331,  -334,
+  -769,  -782,  -672,  -672,  -359,  -360,  -363,  -461,  -782,  -102,
+  -782,  -108,  -327,  -782,  -229,  -230,  -639,  -238,  -239,  -782,
+  -251,  -782,  -781,  -323,  -769,  -270,  -774,  -774,  -769,  -781,
+  -340,   -70,  -782,  -782,  -782,  -781,  -781,  -767,  -782,  -768,
+  -659,  -660,  -782,  -782,  -317,  -782,  -392,  -393,  -130,  -131,
+  -782,  -133,  -782,  -317,  -781,  -782,  -355,  -695,  -591,  -782,
+  -614,  -782,  -616,  -782,  -618,  -782,  -782,  -598,  -782,  -782,
+  -604,  -782,  -782,  -610,  -782,  -782,  -612,  -782,  -631,  -633,
+  -634,  -635,  -636,    -6,  -780,   -29,   -30,   -31,   -32,   -33,
+   -10,  -781,  -782,   -25,   -26,   -27,  -143,  -782,   -36,   -39,
+  -304,  -299,  -782,  -303,   -37,  -782,   -41,  -782,  -317,   -53,
+   -55,  -216,  -274,  -297,   -57,   -58,   -42,  -217,  -274,  -769,
+  -281,  -282,  -781,  -781,  -754,  -755,  -291,  -458,  -756,  -757,
+  -755,  -754,  -291,  -457,  -459,  -756,  -757,  -782,  -578,  -782,
+  -405,  -406,  -769,  -737,  -737,  -677,  -678,  -680,  -680,  -680,
+  -694,  -696,  -697,  -698,  -699,  -700,  -701,  -702,  -703,  -704,
+  -782,  -706,  -708,  -710,  -715,  -717,  -718,  -721,  -726,  -728,
+  -729,  -731,  -732,  -733,  -735,  -782,  -782,  -782,   -52,  -224,
+   -59,  -769,  -337,  -782,  -782,  -782,  -781,  -327,  -782,  -782,
+  -782,  -782,  -782,  -782,  -782,  -225,  -226,  -231,  -232,  -233,
+  -234,  -235,  -236,  -240,  -241,  -242,  -243,  -245,  -246,  -247,
+  -248,  -249,  -252,  -253,  -254,  -255,  -769,  -267,   -68,  -761,
+  -762,  -782,  -782,  -471,  -291,  -754,  -755,   -78,   -82,  -696,
+  -769,  -781,  -769,  -292,  -467,  -470,  -769,  -333,  -287,  -782,
+  -296,  -288,  -782,  -293,  -782,  -298,  -782,  -746,  -749,   -15,
+  -768,   -19,  -782,  -769,   -93,  -325,  -109,   -98,  -782,  -769,
+  -781,  -782,  -782,  -119,  -782,  -671,  -639,  -782,  -105,  -110,
+  -782,  -782,  -782,  -782,  -268,  -256,  -782,  -782,  -769,  -322,
+  -271,  -776,  -775,  -273,  -776,  -328,  -782,  -782,  -741,  -774,
+  -782,  -781,  -383,  -384,  -781,  -782,  -782,  -782,  -782,  -782,
+  -378,  -782,  -781,  -782,  -782,  -327,   -71,  -130,  -131,  -132,
+  -782,  -782,  -781,  -350,  -665,  -667,  -352,  -781,  -443,  -695,
+  -446,  -592,  -615,  -620,  -621,  -623,  -594,  -617,  -595,  -619,
+  -596,  -597,  -782,  -600,  -602,  -782,  -603,  -606,  -607,  -782,
+  -608,  -609,  -782,  -637,  -782,   -24,  -782,   -34,  -782,  -307,
+  -782,  -782,  -781,  -782,  -782,  -782,  -782,  -462,  -283,  -285,
+  -782,  -782,   -83,  -279,  -280,  -455,  -782,  -782,   -85,  -456,
+   -48,  -258,  -781,  -376,  -781,  -357,  -381,  -670,  -782,  -675,
+  -676,  -782,  -782,  -687,  -782,  -690,  -782,  -692,  -782,  -782,
+  -394,  -782,  -396,  -398,  -401,  -404,  -769,  -709,  -719,  -720,
+  -730,  -734,  -673,   -50,  -260,  -358,  -336,  -771,  -754,  -755,
+  -754,  -755,  -769,  -782,  -782,   -62,  -488,  -491,  -492,  -493,
+  -494,  -496,  -498,  -501,  -502,  -557,  -769,  -514,  -517,  -527,
+  -531,  -536,  -538,  -539,  -542,  -543,  -781,  -546,  -548,  -549,
+  -550,  -555,  -556,  -782,  -782,  -560,  -561,  -562,  -563,  -564,
+  -565,  -566,  -567,  -568,  -569,  -570,  -782,  -782,  -576,   -64,
+  -782,  -782,  -769,  -449,  -781,   -77,  -451,  -467,  -276,  -283,
+  -278,  -782,  -468,  -782,  -332,  -781,  -295,  -300,  -302,  -744,
+  -745,  -782,   -18,   -22,   -95,  -782,  -101,  -107,  -769,  -754,
+  -755,  -781,  -758,  -118,  -782,  -103,  -782,  -223,  -237,  -769,
+  -320,  -324,  -774,  -772,  -330,  -742,  -781,  -385,  -781,   -72,
+  -386,  -387,  -344,  -345,  -782,  -782,  -480,  -347,  -473,  -782,
+  -782,  -769,  -754,  -755,  -758,  -326,  -781,  -130,  -131,  -134,
+  -769,  -781,  -782,  -782,  -782,  -782,  -769,  -782,  -781,  -599,
+  -601,  -605,  -611,  -613,   -11,  -144,   -38,  -305,  -302,  -769,
+  -754,  -755,  -755,  -754,   -54,  -275,  -782,  -781,   -44,  -219,
+   -45,  -220,   -84,   -46,  -222,   -47,  -221,   -86,  -782,  -782,
+   -12,   -14,  -377,  -379,  -781,  -585,  -579,  -781,  -580,  -581,
+  -737,  -716,  -721,  -736,  -679,  -680,  -680,  -707,  -680,  -680,
+  -727,  -680,  -704,  -408,  -722,  -769,  -782,  -782,  -403,  -705,
+  -782,  -782,  -782,  -782,  -782,  -782,  -462,  -489,  -782,  -782,
+  -499,  -500,  -782,  -782,  -782,  -519,  -769,  -769,  -513,  -520,
+  -524,  -782,  -782,  -516,  -782,  -782,  -782,  -530,  -537,  -541,
+  -782,  -545,  -547,  -553,  -554,  -558,  -559,  -571,  -572,  -782,
+  -644,  -645,  -646,  -131,  -574,  -782,   -69,  -740,  -431,  -432,
+  -769,  -434,  -781,  -453,  -452,  -782,  -769,  -464,  -781,  -466,
+  -289,  -301,  -748,   -99,  -462,  -111,  -335,  -272,  -782,  -380,
+  -388,  -782,  -390,  -781,  -782,   -73,  -346,  -348,  -782,  -474,
+  -782,  -781,  -462,  -782,  -462,  -782,  -782,  -353,  -356,  -444,
+  -781,  -781,  -436,  -769,  -622,  -625,  -626,  -627,  -628,  -782,
+  -306,  -462,   -43,  -218,  -284,   -49,  -259,  -781,  -584,  -782,
+  -782,  -583,  -674,  -782,  -683,  -782,  -685,  -782,  -688,  -782,
+  -691,  -693,  -395,  -397,  -399,  -402,   -51,  -261,  -782,  -490,
+  -527,  -495,  -497,  -506,  -510,  -782,  -782,  -782,  -769,  -769,
+  -769,  -575,  -511,  -512,  -534,  -521,  -522,  -525,  -769,  -781,
+  -773,  -782,  -528,  -532,  -535,  -540,  -544,  -551,  -552,  -769,
+  -257,  -737,  -737,  -412,  -781,  -781,  -781,  -430,  -782,  -769,
+  -704,  -712,  -713,  -724,  -472,   -79,  -277,  -781,  -342,  -782,
+  -391,  -343,  -782,  -485,  -475,  -782,  -781,  -349,  -351,  -666,
+  -781,  -782,  -782,  -782,  -445,  -624,  -781,  -781,  -659,  -660,
+  -782,  -782,  -317,  -582,  -680,  -680,  -680,  -680,  -782,  -782,
+  -782,  -503,  -504,  -505,  -507,  -508,  -509,  -526,  -782,  -515,
+  -782,  -518,  -782,  -573,  -782,  -410,  -411,  -415,  -414,  -421,
+  -423,  -782,  -426,  -782,  -428,  -433,  -782,  -782,  -711,  -782,
+  -469,  -781,  -481,  -782,  -782,  -476,  -477,  -478,  -479,  -782,
+  -447,  -448,  -769,  -438,  -440,  -441,   -13,  -578,  -781,  -782,
+  -782,  -327,  -782,  -681,  -684,  -686,  -689,  -400,  -528,  -523,
+  -529,  -533,  -737,  -714,  -413,  -781,  -781,  -781,  -781,  -725,
+  -781,  -435,  -723,  -782,  -327,  -781,  -781,  -486,  -487,  -354,
+  -437,  -782,  -577,  -769,  -754,  -755,  -758,  -326,  -680,  -782,
+  -409,  -782,  -418,  -782,  -420,  -782,  -424,  -782,  -427,  -429,
+  -326,  -758,  -389,  -781,  -439,  -462,  -682,  -781,  -781,  -781,
+  -781,  -482,  -483,  -484,  -782,  -416,  -419,  -422,  -425,  -781,
+  -417 ]
+
+racc_goto_table = [
+     6,   309,   292,   519,   519,    45,   318,   322,   390,   291,
+   875,    45,   651,   654,   669,   245,   732,   419,   239,   239,
+    16,   749,   366,   366,   232,   450,    16,   437,   592,   350,
+   304,   659,   940,   479,   135,   311,     4,   395,   396,   327,
+   327,   327,    45,   354,   354,   381,   499,    18,   601,   743,
+   745,   747,   537,    18,   947,   739,   740,    16,   931,   366,
+   366,   366,   143,   224,   463,   464,   385,   775,   819,  1028,
+    45,  1034,   148,   148,   313,   321,   323,   328,   328,   328,
+   401,   304,   304,   839,    18,    16,   392,   393,   148,   588,
+   397,   439,   151,   151,   750,   406,   628,   420,   132,   422,
+   424,   427,   430,   433,   436,   135,   476,   420,   778,   778,
+   386,   983,    18,   369,   582,   248,   590,   950,   640,   643,
+   538,  1012,   502,   535,  1090,   839,   510,   510,   376,   243,
+   131,   325,   338,   339,     9,    45,  1106,   756,   486,   492,
+     9,   136,  1239,   831,    45,   346,  1112,  1085,   348,  1083,
+    16,   445,   446,   447,   448,   236,   242,  1053,     1,    16,
+  1125,  1213,  1215,   329,   329,   329,   946,     2,   948,   692,
+   148,   142,   695,   836,  1097,  1100,   836,    18,   414,   416,
+   519,   995,   996,  1105,  1108,   930,    18,   625,   625,  1067,
+  1113,   637,   842,   612,   223,   407,   387,   459,   452,   383,
+   839,   398,   601,   349,   470,   553,   487,   470,   554,   293,
+   578,   821,  1239,   869,  1035,   310,   584,   827,   977,   706,
+   379,   470,   388,   826,   305,   647,   405,   673,    45,   480,
+   382,   384,   638,   389,   891,   327,   893,  1150,   677,  1084,
+    45,  1127,  1189,    16,   976,   465,    45,  1129,   465,  1212,
+   678,  1049,   606,   417,   544,    16,   239,   239,   895,  1274,
+  1215,    16,   465,    45,     9,   443,   594,   595,   462,   462,
+    18,  1128,    18,   449,   889,    18,  1018,   880,    16,   824,
+  1206,  1142,    18,  1281,  1038,  1246,  1091,  1092,    18,    18,
+   972,   874,   836,   836,   496,   973,  1122,   982,   985,   680,
+  1114,  1115,   998,   510,   937,    18,  1069,   418,   421,   423,
+   426,   429,   480,   432,   435,  1137,   458,   469,   327,   327,
+   469,  1054,   897,   898,   438,   750,   600,   600,   327,   958,
+  1228,   892,   420,   366,   469,   318,   945,  1235,  1229,  1230,
+   941,   322,  1233,   581,   846,   nil,    45,   nil,   772,  1207,
+    45,   624,   366,   855,   354,    45,   591,   328,  1227,   629,
+   621,    16,  1083,   nil,   nil,    16,   328,   243,   955,   135,
+    16,  1117,  1118,   354,  1113,   687,  1015,   689,   631,   646,
+   693,   865,  1113,   693,   nil,    45,  1231,   648,    18,   457,
+  1196,   947,    18,   551,   552,   477,   nil,    18,    45,    45,
+    16,   833,   nil,   836,  1096,  1099,   nil,   663,   655,   539,
+   nil,   593,   675,    16,    16,   nil,   nil,   nil,   nil,   nil,
+   596,  1004,   848,   617,   349,  1089,   135,    18,   nil,   nil,
+  1095,  1098,  1179,   610,  1126,   nil,   nil,   nil,   776,   776,
+    18,    18,   519,   329,   nil,   nil,   950,   626,  1272,     6,
+   486,   492,   329,   346,    45,   nil,   613,   nil,   346,   nil,
+   724,   619,   nil,  1231,   881,   609,   729,   nil,   nil,    16,
+   646,   243,   713,  1122,   890,   611,  1282,  1122,  1232,  1122,
+   600,   600,  1216,   nil,   723,   704,   894,  1074,  1076,   nil,
+  1078,  1080,  1072,  1081,   nil,   843,    18,  1164,   922,   947,
+  1041,   730,   nil,   705,   927,   519,   nil,   519,   391,   391,
+   nil,   349,   391,   148,   909,   nil,   349,   649,   487,   nil,
+   797,   797,   658,   nil,   nil,   nil,   nil,   851,   722,   nil,
+   750,   750,   nil,   151,   728,   nil,   nil,   851,   nil,   nil,
+   763,   nil,   nil,  1016,   480,   839,   nil,  1122,   nil,  1122,
+   327,  1122,  1143,  1122,  1020,   nil,   813,   813,   724,   656,
+   657,   896,   nil,   nil,   762,   510,   nil,   820,   nil,   851,
+  1122,  1023,   938,   391,   391,   391,   391,   851,  1101,   947,
+   nil,   nil,   723,     9,   nil,   nil,   nil,   nil,   nil,   600,
+   nil,   nil,   nil,   778,  1027,   487,   918,   920,   nil,   nil,
+   366,   nil,   923,   925,   nil,   487,   496,   629,   nil,   366,
+   nil,  1236,   nil,    45,   nil,  1237,   629,   nil,   480,   486,
+   492,   354,   nil,   735,   327,  1283,   825,   nil,    16,   886,
+   354,   nil,  1197,   nil,   nil,   nil,  1020,   487,   836,   nil,
+   nil,   nil,   nil,   nil,   nil,   487,   900,   nil,   nil,   900,
+   nil,   nil,   nil,   nil,    45,    18,   nil,    45,   nil,   nil,
+   480,   765,   nil,   nil,   474,   475,   327,   nil,   nil,    16,
+   480,   975,    16,  1185,  1186,   nil,   327,   nil,   nil,   989,
+    45,   540,   541,   496,   870,  1277,   nil,   487,   470,  1157,
+   nil,   nil,   nil,   496,   nil,    16,    18,   470,   470,    18,
+  1045,   nil,   nil,   470,   470,   942,  1223,  1224,  1225,  1226,
+   480,    45,   nil,   539,   990,   477,   327,   nil,    45,   nil,
+   nil,   nil,    18,   nil,   nil,   496,    16,   835,   nil,   465,
+   935,   496,   939,    16,   nil,  1252,   nil,   nil,   465,   465,
+   nil,   nil,   750,   750,   465,   465,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    18,   nil,   nil,    18,   905,   nil,  1201,
+    18,   860,  1202,   646,  1014,    18,    18,   148,   nil,   862,
+   nil,    18,    18,  1130,   nil,   496,   462,   646,   984,  1208,
+   872,   873,   nil,   877,  1260,   nil,   nil,   151,   nil,   813,
+   nil,   nil,  1062,   nil,   420,   857,  1006,   813,  1013,   nil,
+  1276,   469,   nil,   291,   nil,   nil,   813,   813,   nil,   nil,
+   469,   469,   nil,   nil,   nil,   866,   469,   469,   868,   nil,
+   nil,  1134,  1008,   nil,   nil,   724,   nil,   366,   729,   nil,
+   391,   nil,   nil,   600,   629,   nil,   519,   nil,   366,   646,
+   906,   nil,   nil,   nil,   nil,  1025,   917,   914,   354,   723,
+   nil,   676,   975,   nil,   nil,   nil,   nil,   975,   975,   354,
+  1152,   nil,   nil,   nil,  1032,   nil,  1032,   645,   nil,   nil,
+  1111,   943,   646,   nil,   943,   nil,   nil,   nil,   nil,   nil,
+   nil,   646,   148,   nil,   nil,   919,   921,  1052,   nil,    45,
+   nil,   924,   926,   470,    45,   nil,   nil,   nil,   nil,   nil,
+   646,    45,   nil,   nil,    16,   nil,  1046,   nil,   nil,    16,
+   nil,   nil,   nil,   nil,   nil,   600,    16,   nil,   nil,   nil,
+   nil,   nil,  1047,   776,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   465,  1071,    18,    45,   nil,   797,
+   797,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,   797,
+  1130,   nil,    16,   nil,  1130,   797,   nil,   917,   717,  1209,
+   nil,    18,   646,   nil,   nil,   nil,   nil,   646,   646,   nil,
+   813,   nil,   813,   nil,   nil,   813,   813,   nil,   nil,    18,
+   nil,   nil,   813,   nil,   nil,   nil,   nil,   nil,   813,   813,
+   nil,   nil,   nil,   nil,   nil,   nil,   813,   813,  1036,  1037,
+   nil,  1052,   nil,   nil,   nil,   797,   469,   nil,   nil,   nil,
+   nil,   nil,   nil,  1119,   nil,    45,  1008,   822,  1048,   nil,
+  1253,   nil,   nil,   nil,  1130,   nil,   nil,  1180,   nil,   nil,
+    16,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,   nil,
+   nil,   813,   nil,   nil,    45,  1139,   nil,   nil,   nil,   nil,
+  1043,    16,   366,    45,    45,   nil,   nil,    18,   nil,    16,
+   nil,   nil,  1059,   nil,   nil,   nil,   nil,   nil,    16,    16,
+    45,    19,   859,  1159,   nil,  1149,   nil,    19,    18,   nil,
+   nil,  1063,   nil,   nil,   nil,    16,    18,   nil,  1163,   646,
+   646,   646,   nil,   nil,   249,    18,    18,   nil,  1068,   984,
+   nil,   nil,   nil,   nil,   249,   249,   249,   420,    19,   355,
+   355,   nil,    18,   366,   nil,   949,   nil,   951,   nil,   nil,
+  1052,   nil,  1188,  1188,  1188,   851,   nil,   919,   921,   926,
+   924,   nil,   nil,   nil,   304,   nil,    19,   nil,   nil,   nil,
+    45,   249,   249,  1123,  1032,   249,   402,   412,   412,   nil,
+    20,   942,  1138,    45,   935,    16,    20,   nil,  1141,   nil,
+    45,   nil,   nil,   nil,   nil,  1219,   nil,  1147,    16,  1148,
+   nil,  1131,   nil,   813,   nil,    16,   nil,   nil,   nil,   366,
+   nil,   813,    18,   nil,   nil,   813,   nil,    20,   362,   362,
+   nil,   nil,   nil,   487,   nil,    18,   nil,  1140,   nil,   nil,
+   304,    19,    18,  1250,    45,  1146,   249,   249,   249,   249,
+    19,   nil,   nil,   nil,  1151,    20,   480,  1247,  1248,    16,
+   nil,   nil,   327,   nil,   nil,   362,   362,   362,   805,   805,
+   nil,  1156,   nil,  1188,  1188,  1188,  1188,   nil,  1188,   nil,
+   nil,   542,   nil,  1032,   646,   nil,    18,   nil,   nil,    45,
+   nil,   966,   nil,  1063,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   813,   nil,    16,   978,   nil,   nil,   nil,   nil,
+   nil,  1032,   nil,   nil,   nil,  1188,  1188,  1188,  1188,   nil,
+    20,   496,   nil,   nil,   nil,   nil,   nil,  1188,   nil,    20,
+   nil,    18,   nil,   nil,    19,   249,   467,   249,   249,   467,
+   249,  1200,   nil,   nil,   496,   nil,    19,   nil,   nil,   nil,
+   nil,   nil,    19,   467,   249,   249,   nil,   943,   nil,   597,
+  1123,  1217,   nil,   nil,  1123,   nil,  1123,  1024,   391,    19,
+   nil,   nil,   nil,  1249,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   614,   nil,  1131,   nil,   nil,  1131,   nil,
+   nil,   nil,  1131,   nil,  1131,   nil,   nil,   nil,   nil,   nil,
+  1042,   nil,   nil,   nil,   nil,  1245,   nil,   nil,   nil,  1044,
+   nil,   nil,   nil,    20,   nil,    20,   nil,   nil,    20,   639,
+   nil,  1124,   nil,   249,   249,    20,   nil,   nil,  1061,   nil,
+   nil,    20,    20,   249,  1123,   nil,  1123,   nil,  1123,   nil,
+  1123,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+  1273,   nil,    19,   nil,   nil,   nil,    19,  1123,   nil,   nil,
+   355,    19,  1131,   nil,  1131,   nil,  1131,   nil,  1131,   nil,
+   nil,   nil,   nil,   nil,   nil,   391,   nil,   nil,   nil,   355,
+   nil,   nil,   nil,   nil,  1165,  1131,  1166,   nil,  1167,   nil,
+  1094,    19,   nil,   nil,   nil,  1102,  1103,  1190,  1192,  1194,
+   nil,   805,   nil,   249,    19,    19,   nil,   391,   nil,   805,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   805,   805,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,    20,   nil,   737,   nil,   362,
+    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   460,   473,   nil,   nil,   nil,   362,   nil,
+    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,   766,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1238,   nil,  1240,   nil,   249,   nil,  1262,  1264,
+  1266,  1268,   nil,  1269,   nil,   nil,   nil,  1174,  1175,  1176,
+   nil,   nil,   nil,   nil,   nil,   828,   nil,   830,    21,   nil,
+   nil,   834,   nil,  1258,    21,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   844,   nil,
+  1285,  1286,  1287,  1288,   847,   249,   nil,   nil,   603,   nil,
+   605,   nil,  1290,   607,   608,    21,   363,   363,   nil,   nil,
+   nil,   nil,  1278,   861,  1279,   nil,  1280,   nil,   nil,   391,
+   391,   nil,   805,   nil,   805,   nil,   nil,   805,   805,   nil,
+   249,   nil,   nil,    21,   805,  1289,   nil,   806,   806,   nil,
+   805,   805,   nil,   363,   363,   363,   nil,   nil,   805,   805,
+   nil,   nil,   nil,   nil,   nil,   nil,   650,   nil,   nil,    19,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   805,   nil,   nil,   nil,   nil,    21,   nil,
+    19,   nil,   nil,    19,   nil,   nil,   nil,    21,   nil,   nil,
+   nil,   249,  1275,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,    19,   nil,   709,   nil,
+   nil,   959,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   362,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   362,   nil,    19,   nil,   nil,
+   467,   249,   nil,   nil,    19,   nil,   nil,   nil,   nil,   467,
+   467,   807,   807,   nil,   nil,   467,   467,   nil,   nil,    20,
+   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   757,    21,   nil,    21,   nil,   nil,    21,  1007,   nil,   nil,
+   nil,   nil,   nil,    21,   nil,    20,   nil,   nil,   nil,    21,
+    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   805,    21,   nil,   nil,   nil,
+   nil,   nil,   nil,   805,  1026,   nil,    20,   805,   nil,    20,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,    20,    20,
+   nil,   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   837,   nil,   nil,   650,
+   806,   840,   nil,   nil,   nil,   nil,   nil,   nil,   806,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   806,   806,   nil,
+   nil,   nil,   nil,   nil,   355,    22,   nil,   nil,   nil,   nil,
+   nil,    22,   nil,   nil,   nil,   355,   nil,   nil,   837,    21,
+   nil,   650,   nil,    21,   805,   nil,   nil,   363,    21,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   878,   nil,
+  1082,   nil,    22,   357,   357,    19,   363,   nil,   nil,   nil,
+    19,   249,   nil,   nil,   nil,   nil,   nil,    19,    21,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    22,    21,    21,   nil,   nil,   467,   nil,   nil,   nil,   nil,
+   404,   413,   413,   362,   nil,   nil,   nil,   907,   nil,   nil,
+   nil,   nil,   nil,    19,   362,   837,   650,   nil,   nil,   nil,
+   nil,  1136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   936,   nil,   nil,   807,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   807,   nil,    20,   nil,   954,    21,   nil,    20,
+   nil,   807,   807,   nil,   nil,    22,    20,   nil,  1154,   nil,
+   nil,   nil,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   249,   nil,
+   nil,   806,   nil,   806,   nil,   nil,   806,   806,   nil,   nil,
+   nil,    19,    20,   806,   nil,   nil,   nil,   nil,   nil,   806,
+   806,   nil,   nil,   nil,   nil,   nil,   nil,   806,   806,   nil,
+   249,   nil,    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    19,   nil,   nil,   nil,  1183,   nil,   837,   nil,   nil,    19,
+    19,   nil,   nil,   nil,   nil,  1021,   nil,   nil,  1022,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    19,   nil,    22,  1160,
+   468,   nil,   806,   468,   nil,   nil,   nil,   nil,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    22,   468,   nil,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,  1039,   nil,   nil,   nil,
+   nil,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,  1060,    21,   nil,    20,    20,
+  1198,   nil,   nil,   nil,   363,   807,    19,   807,   nil,   nil,
+   807,   807,   nil,   363,   nil,    20,   nil,   807,   362,    19,
+   nil,   nil,   nil,   807,   807,   nil,    19,   nil,   nil,   nil,
+   nil,   807,   807,   nil,   nil,   nil,   nil,    21,   nil,   nil,
+    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    22,   nil,   nil,   nil,
+    22,   nil,   nil,    21,   357,    22,  1242,   nil,   nil,   nil,
+    19,   nil,   249,   249,   806,   nil,   807,   nil,   nil,   362,
+   nil,   nil,   806,   357,   nil,    20,   806,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    21,    22,   nil,    21,    20,   nil,
+   nil,    21,   nil,   nil,   nil,    20,    21,    21,    22,    22,
+   nil,   nil,    21,    21,   nil,    19,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1144,   nil,   nil,
+   nil,   nil,   nil,   808,   808,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   362,   nil,   nil,   nil,    20,
+   nil,   650,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   806,    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,
+   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   807,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,   nil,
+   807,   nil,    32,   nil,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   363,  1205,   nil,   nil,   nil,   809,   809,   nil,   nil,
+   nil,   nil,   363,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,    32,    32,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    21,   nil,   nil,   nil,   nil,    21,   nil,   nil,
+   nil,   nil,   nil,   nil,    21,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,    32,    32,   nil,   nil,    32,   807,   nil,   nil,
+   nil,   nil,    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    21,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   357,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   357,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,    32,
+    32,    32,   nil,   nil,    22,   nil,   808,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,   808,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   808,   808,   nil,   nil,   nil,   nil,   nil,
+    22,   nil,   nil,   810,   810,   nil,   nil,   nil,    21,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    21,
+   nil,    22,   nil,   nil,   468,   nil,   nil,    21,    22,   nil,
+   nil,   nil,   nil,   468,   468,   nil,    21,    21,   nil,   468,
+   468,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
+    32,    32,   nil,    21,   nil,    35,   363,    32,   nil,   nil,
+   nil,    35,   nil,    32,    32,    32,    32,   nil,   nil,   809,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   809,    35,   nil,
+    32,   nil,   nil,   nil,   nil,   nil,   809,   809,    35,    35,
+    35,   nil,    35,   nil,   nil,   nil,   nil,   811,   811,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,   nil,   nil,
+    35,   nil,   nil,    21,   nil,    35,    35,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,    32,    32,    21,   nil,   812,   812,
+   nil,   nil,   nil,    21,    32,   nil,   nil,   808,   nil,   808,
+   nil,   nil,   808,   808,   nil,   nil,   nil,   nil,   357,   808,
+   nil,   nil,   nil,    32,   nil,   808,   808,    32,   nil,   357,
+   nil,   nil,    32,   808,   808,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   363,   nil,    35,   nil,    21,   nil,   nil,
+    35,    35,    35,    35,    35,   nil,   nil,   nil,   nil,    22,
+   nil,   nil,    32,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+  1058,    22,   nil,   nil,    32,    32,    32,   nil,   808,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   810,   nil,   nil,   468,
+   nil,   nil,    21,   nil,   810,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   810,   810,   nil,   nil,    22,   nil,   nil,
+   809,   nil,   809,   nil,   nil,   809,   809,   nil,   nil,   nil,
+   nil,   nil,   809,   nil,   nil,   nil,   nil,    44,   809,   809,
+   nil,    32,   nil,    44,   nil,   nil,   809,   809,    35,    35,
+    35,    35,    35,    35,    35,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   303,   nil,   nil,   nil,    35,    35,    35,    35,
+   nil,   nil,   nil,   nil,    44,   353,   353,   nil,   nil,   nil,
+   nil,   nil,   nil,    35,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   809,   nil,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   811,   nil,    44,   nil,   nil,   nil,   nil,   nil,   811,   nil,
+   nil,   nil,   400,   303,   303,   nil,    22,   811,   811,   nil,
+   808,   nil,   nil,   nil,    22,   nil,    32,   nil,   808,   nil,
+   nil,   nil,   808,    22,    22,   nil,    32,    35,    35,   nil,
+   nil,   812,   nil,   nil,   nil,   nil,   nil,    35,   nil,   812,
+    22,   nil,   nil,  1162,   nil,   nil,   nil,   nil,   812,   812,
+   nil,   nil,   nil,   nil,   nil,   nil,    35,    44,   nil,   nil,
+    35,    32,   nil,   nil,   nil,    35,    44,   810,   nil,   810,
+   nil,   nil,   810,   810,   nil,   nil,   nil,   814,   814,   810,
+   nil,   nil,   nil,   nil,   nil,   810,   810,   nil,   nil,   nil,
+    32,   nil,   nil,   810,   810,    35,   nil,   nil,   nil,   808,
+    32,   nil,   nil,   nil,   413,   nil,   nil,    35,    35,    35,
+    22,   nil,   nil,   809,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   809,   nil,    22,   nil,   809,   nil,   nil,    35,   nil,
+    22,    32,   nil,   nil,    32,   nil,   nil,   nil,   810,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    44,   nil,    32,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,    44,   nil,    35,   nil,   nil,   nil,    44,   nil,
+   413,   811,   nil,   811,    22,   nil,   811,   811,   nil,   nil,
+   nil,   nil,   nil,   811,   nil,    44,   nil,   nil,    32,   811,
+   811,    32,    32,   nil,   nil,    32,   nil,   811,   811,   nil,
+    32,    32,   809,   nil,   nil,   nil,    32,    32,   nil,   nil,
+    35,   nil,   812,   nil,   812,   nil,   nil,   812,   812,    22,
+   nil,   nil,   nil,   nil,   812,   nil,   nil,   nil,   nil,   nil,
+   812,   812,   nil,   nil,   nil,   nil,   nil,   nil,   812,   812,
+   nil,   nil,   811,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
+   810,   nil,    44,   nil,   nil,   nil,   353,    44,   810,   nil,
+   nil,   nil,   810,   812,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   353,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,
+   814,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   814,   nil,
+    44,    44,   nil,    35,   nil,   nil,   nil,   814,   814,   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,   nil,   nil,   nil,   810,
+   nil,   nil,   nil,   nil,    35,   nil,    32,    35,   nil,   nil,
+   nil,    32,    32,   nil,   811,    35,    44,   nil,    32,   nil,
+   nil,   nil,   811,   nil,   nil,    35,   811,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    32,   812,   nil,   nil,   nil,   nil,
+   nil,    35,   nil,   812,    35,    35,   nil,   812,    35,   nil,
+   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,    35,
+    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   811,   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,   814,    32,   814,   nil,   nil,   814,   814,   nil,   nil,
+   nil,   nil,   nil,   814,   812,   nil,   nil,   nil,   nil,   814,
+   814,    32,   nil,    32,   nil,   nil,   nil,   814,   814,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    32,    32,   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   353,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   353,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   814,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,    44,   nil,    35,    35,   nil,   nil,   nil,   nil,
+   nil,    35,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+    32,   nil,   nil,    44,   256,   nil,   nil,    32,   nil,   nil,
+    44,   nil,   nil,   nil,   326,   326,   326,    35,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   374,   375,   nil,   377,
+   378,   nil,   380,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,
+   nil,    32,   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   814,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   814,   nil,   nil,   nil,   814,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    35,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,    35,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,   nil,
+   353,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   353,   nil,   814,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    44,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   326,   472,   nil,   nil,   478,
+   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   478,   nil,   nil,   nil,   nil,   nil,    44,
+   nil,   nil,   nil,    35,   nil,   nil,   256,   nil,   nil,   nil,
+    35,   nil,   nil,   555,   556,   557,   558,   559,   560,   561,
+   562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
+   572,   573,   574,   575,   576,   nil,   nil,   nil,   nil,   577,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,    35,    35,   nil,   nil,
+   nil,   nil,   nil,   326,   326,   nil,   nil,   nil,   nil,   nil,
+   nil,    35,   nil,   326,   nil,   nil,   nil,    44,   nil,   nil,
+   326,   nil,   326,   nil,   nil,   326,   326,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    44,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   634,   nil,
+   635,   nil,    44,   nil,   nil,  1158,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   303,   nil,   nil,   nil,
+   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   nil,   nil,   nil,   nil,    44,   nil,   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,   731,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   303,   nil,   nil,   nil,    44,   nil,   nil,   nil,
+   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   764,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   326,   nil,   478,   478,   478,
+   nil,   nil,   nil,   nil,   nil,   nil,   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,   375,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   326,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   478,
+   nil,   nil,   858,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   478,   326,   nil,   nil,   nil,   915,   nil,   326,   326,   478,
+   478,   nil,   nil,   nil,   nil,   478,   478,   nil,   nil,   nil,
+   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   731,   764,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,
+   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1065,  1066,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1086,
+  1087,   478,   478,   478,   478,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1120,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326 ]
+
+racc_goto_check = [
+     6,   178,    46,   251,   251,    78,    95,    95,   113,    49,
+   125,    78,   117,   117,    79,    44,    14,   217,     6,     6,
+    27,   155,    88,    88,    37,    10,    27,   217,    96,    74,
+    78,   124,   153,    35,   130,    37,     2,    54,    54,    40,
+    40,    40,    78,    78,    78,    44,    12,    33,    98,   249,
+   249,   249,    12,    33,   252,   159,   159,    27,    16,    88,
+    88,    88,    21,    21,    28,    28,     6,    45,    45,   118,
+    78,   120,    81,    81,    62,    62,    62,    92,    92,    92,
+    78,    78,    78,   261,    33,    27,    23,    23,    81,    63,
+    23,    49,    83,    83,   148,    27,    76,     6,     8,     6,
+     6,     6,     6,     6,     6,   130,    32,     6,   196,   196,
+    92,   206,    33,    75,   179,    26,    35,   256,    93,    93,
+    32,   167,   177,   177,   211,   261,   246,   246,    86,   132,
+     5,    69,    69,    69,     9,    78,   211,   149,    61,    61,
+     9,     7,   257,    64,    78,    70,   212,   150,    71,   147,
+    27,    23,    23,    23,    23,    39,    39,   169,     1,    27,
+   165,   171,   172,    94,    94,    94,   166,     3,   166,   233,
+    81,    11,   233,    99,   197,   197,    99,    33,    80,    80,
+   251,   221,   221,   210,   197,    15,    33,   245,   245,    17,
+   210,    12,    19,    20,    22,    25,    94,    29,    31,     9,
+   261,     5,    98,    13,    24,    47,    95,    24,    48,    51,
+    52,    53,   257,    55,    57,    60,    61,    66,   195,    84,
+    89,    24,    91,    97,   109,   112,   127,   129,    78,     6,
+   133,   134,   135,   136,   137,    40,   138,   139,   140,   151,
+    78,   156,   162,    27,   194,    27,    78,   163,    27,   170,
+   173,   174,   217,   175,    37,    27,     6,     6,   176,   171,
+   172,    27,    27,    78,     9,     7,   181,   182,    92,    92,
+    33,   169,    33,     9,    79,    33,   184,   185,    27,   187,
+   188,   189,    33,   190,   191,   192,   199,   201,    33,    33,
+   202,   124,    99,    99,    81,   203,   152,   207,   208,   177,
+   214,   215,   224,   246,   225,    33,   226,   229,   230,   231,
+   232,   235,     6,   236,   237,   167,    26,    26,    40,    40,
+    26,   238,   239,   240,   243,   148,     6,     6,    40,   148,
+   212,   244,     6,    88,    26,    95,   250,   165,   212,   211,
+   254,    95,   255,   260,    76,   nil,    78,   nil,    35,   120,
+    78,    44,    88,    76,    78,    78,    92,    92,   150,    74,
+    37,    27,   147,   nil,   nil,    27,    92,   132,   149,   130,
+    27,   221,   221,    78,   210,   234,    64,   234,    37,    44,
+   234,    93,   210,   234,   nil,    78,   210,     6,    33,    13,
+   169,   252,    33,    39,    39,    85,   nil,    33,    78,    78,
+    27,   179,   nil,    99,   195,   195,   nil,    37,    23,    85,
+   nil,    69,     6,    27,    27,   nil,   nil,   nil,   nil,   nil,
+    69,    79,    35,    75,    13,   194,   130,    33,   nil,   nil,
+   194,   194,   206,     8,   166,   nil,   nil,   nil,   193,   193,
+    33,    33,   251,    94,   nil,   nil,   256,    86,   118,     6,
+    61,    61,    94,    70,    78,   nil,    71,   nil,    70,   nil,
+    95,    71,   nil,   210,    35,     5,    95,   nil,   nil,    27,
+    44,   132,    37,   152,    35,     9,   120,   152,   153,   152,
+     6,     6,    16,   nil,     6,     2,    12,   249,   249,   nil,
+   249,   249,   159,   249,   nil,    10,    33,   166,    63,   252,
+   117,    40,   nil,    21,    63,   251,   nil,   251,    30,    30,
+   nil,    13,    30,    81,    35,   nil,    13,    94,    95,   nil,
+   219,   219,     5,   nil,   nil,   nil,   nil,    61,    62,   nil,
+   148,   148,   nil,    83,    62,   nil,   nil,    61,   nil,   nil,
+    40,   nil,   nil,    96,     6,   261,   nil,   152,   nil,   152,
+    40,   152,    45,   152,    98,   nil,    78,    78,    95,    13,
+    13,   177,   nil,   nil,   130,   246,   nil,    44,   nil,    61,
+   152,    76,    28,    30,    30,    30,    30,    61,    79,   252,
+   nil,   nil,     6,     9,   nil,   nil,   nil,   nil,   nil,     6,
+   nil,   nil,   nil,   196,    93,    95,    32,    32,   nil,   nil,
+    88,   nil,    32,    32,   nil,    95,    81,    74,   nil,    88,
+   nil,   166,   nil,    78,   nil,   166,    74,   nil,     6,    61,
+    61,    78,   nil,   111,    40,   125,    62,   nil,    27,    54,
+    78,   nil,   155,   nil,   nil,   nil,    98,    95,    99,   nil,
+   nil,   nil,   nil,   nil,   nil,    95,   234,   nil,   nil,   234,
+   nil,   nil,   nil,   nil,    78,    33,   nil,    78,   nil,   nil,
+     6,   111,   nil,   nil,    30,    30,    40,   nil,   nil,    27,
+     6,   193,    27,   159,   159,   nil,    40,   nil,   nil,   193,
+    78,    30,    30,    81,   130,   166,   nil,    95,    24,   117,
+   nil,   nil,   nil,    81,   nil,    27,    33,    24,    24,    33,
+    12,   nil,   nil,    24,    24,   219,   249,   249,   249,   249,
+     6,    78,   nil,    85,   217,    85,    40,   nil,    78,   nil,
+   nil,   nil,    33,   nil,   nil,    81,    27,    94,   nil,    27,
+     6,    81,     6,    27,   nil,    14,   nil,   nil,    27,    27,
+   nil,   nil,   148,   148,    27,    27,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    33,   nil,   nil,    33,    21,   nil,   117,
+    33,   111,   117,    44,   113,    33,    33,    81,   nil,    94,
+   nil,    33,    33,   251,   nil,    81,    92,    44,    44,   124,
+   111,   111,   nil,   111,   159,   nil,   nil,    83,   nil,    78,
+   nil,   nil,    32,   nil,     6,    85,    46,    78,   178,   nil,
+   249,    26,   nil,    49,   nil,   nil,    78,    78,   nil,   nil,
+    26,    26,   nil,   nil,   nil,    13,    26,    26,    13,   nil,
+   nil,    12,     6,   nil,   nil,    95,   nil,    88,    95,   nil,
+    30,   nil,   nil,     6,    74,   nil,   251,   nil,    88,    44,
+     9,   nil,   nil,   nil,   nil,    74,    94,     9,    78,     6,
+   nil,    30,   193,   nil,   nil,   nil,   nil,   193,   193,    78,
+    12,   nil,   nil,   nil,     6,   nil,     6,    36,   nil,   nil,
+   193,   160,    44,   nil,   160,   nil,   nil,   nil,   nil,   nil,
+   nil,    44,    81,   nil,   nil,    85,    85,    44,   nil,    78,
+   nil,    85,    85,    24,    78,   nil,   nil,   nil,   nil,   nil,
+    44,    78,   nil,   nil,    27,   nil,    23,   nil,   nil,    27,
+   nil,   nil,   nil,   nil,   nil,     6,    27,   nil,   nil,   nil,
+   nil,   nil,   130,   193,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    33,   nil,   nil,    27,     6,    33,    78,   nil,   219,
+   219,   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   219,
+   251,   nil,    27,   nil,   251,   219,   nil,    94,    36,    12,
+   nil,    33,    44,   nil,   nil,   nil,   nil,    44,    44,   nil,
+    78,   nil,    78,   nil,   nil,    78,    78,   nil,   nil,    33,
+   nil,   nil,    78,   nil,   nil,   nil,   nil,   nil,    78,    78,
+   nil,   nil,   nil,   nil,   nil,   nil,    78,    78,   111,   111,
+   nil,    44,   nil,   nil,   nil,   219,    26,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,    78,     6,    30,   111,   nil,
+    35,   nil,   nil,   nil,   251,   nil,   nil,   217,   nil,   nil,
+    27,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,
+   nil,    78,   nil,   nil,    78,    23,   nil,   nil,   nil,   nil,
+    13,    27,    88,    78,    78,   nil,   nil,    33,   nil,    27,
+   nil,   nil,    13,   nil,   nil,   nil,   nil,   nil,    27,    27,
+    78,    34,    30,    78,   nil,   130,   nil,    34,    33,   nil,
+   nil,    85,   nil,   nil,   nil,    27,    33,   nil,    27,    44,
+    44,    44,   nil,   nil,    34,    33,    33,   nil,    13,    44,
+   nil,   nil,   nil,   nil,    34,    34,    34,     6,    34,    34,
+    34,   nil,    33,    88,   nil,   164,   nil,   164,   nil,   nil,
+    44,   nil,     6,     6,     6,    61,   nil,    85,    85,    85,
+    85,   nil,   nil,   nil,    78,   nil,    34,   nil,   nil,   nil,
+    78,    34,    34,   160,     6,    34,    34,    34,    34,   nil,
+    38,   219,   111,    78,     6,    27,    38,   nil,   111,   nil,
+    78,   nil,   nil,   nil,   nil,    37,   nil,   111,    27,   111,
+   nil,   253,   nil,    78,   nil,    27,   nil,   nil,   nil,    88,
+   nil,    78,    33,   nil,   nil,    78,   nil,    38,    38,    38,
+   nil,   nil,   nil,    95,   nil,    33,   nil,    13,   nil,   nil,
+    78,    34,    33,    44,    78,    13,    34,    34,    34,    34,
+    34,   nil,   nil,   nil,    13,    38,     6,    23,    23,    27,
+   nil,   nil,    40,   nil,   nil,    38,    38,    38,   101,   101,
+   nil,    13,   nil,     6,     6,     6,     6,   nil,     6,   nil,
+   nil,    72,   nil,     6,    44,   nil,    33,   nil,   nil,    78,
+   nil,    36,   nil,    85,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    78,   nil,    27,    36,   nil,   nil,   nil,   nil,
+   nil,     6,   nil,   nil,   nil,     6,     6,     6,     6,   nil,
+    38,    81,   nil,   nil,   nil,   nil,   nil,     6,   nil,    38,
+   nil,    33,   nil,   nil,    34,    34,    34,    34,    34,    34,
+    34,    13,   nil,   nil,    81,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,    34,    34,    34,    34,   nil,   160,   nil,    72,
+   160,    13,   nil,   nil,   160,   nil,   160,    36,    30,    34,
+   nil,   nil,   nil,   111,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    72,   nil,   253,   nil,   nil,   253,   nil,
+   nil,   nil,   253,   nil,   253,   nil,   nil,   nil,   nil,   nil,
+    36,   nil,   nil,   nil,   nil,    13,   nil,   nil,   nil,    36,
+   nil,   nil,   nil,    38,   nil,    38,   nil,   nil,    38,    72,
+   nil,   164,   nil,    34,    34,    38,   nil,   nil,    36,   nil,
+   nil,    38,    38,    34,   160,   nil,   160,   nil,   160,   nil,
+   160,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,
+    13,   nil,    34,   nil,   nil,   nil,    34,   160,   nil,   nil,
+    34,    34,   253,   nil,   253,   nil,   253,   nil,   253,   nil,
+   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   164,   253,   164,   nil,   164,   nil,
+    36,    34,   nil,   nil,   nil,    36,    36,   161,   161,   161,
+   nil,   101,   nil,    34,    34,    34,   nil,    30,   nil,   101,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   101,   101,
+   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   nil,   nil,    38,   nil,    72,   nil,    38,
+    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    90,    90,   nil,   nil,   nil,    38,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    38,   nil,   nil,   nil,   nil,   nil,    72,   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,   164,   nil,   164,   nil,    34,   nil,   161,   161,
+   161,   161,   nil,   161,   nil,   nil,   nil,    36,    36,    36,
+   nil,   nil,   nil,   nil,   nil,    72,   nil,    72,    42,   nil,
+   nil,    72,   nil,   164,    42,   nil,   nil,   nil,   nil,    38,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,    72,   nil,
+   161,   161,   161,   161,    72,    34,   nil,   nil,    90,   nil,
+    90,   nil,   161,    90,    90,    42,    42,    42,   nil,   nil,
+   nil,   nil,   164,    72,   164,   nil,   164,   nil,   nil,    30,
+    30,   nil,   101,   nil,   101,   nil,   nil,   101,   101,   nil,
+    34,   nil,   nil,    42,   101,   164,   nil,   102,   102,   nil,
+   101,   101,   nil,    42,    42,    42,   nil,   nil,   101,   101,
+   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   101,   nil,   nil,   nil,   nil,    42,   nil,
+    34,   nil,   nil,    34,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,    34,    36,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,    34,   nil,    90,   nil,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    38,   nil,    34,   nil,   nil,
+    34,    34,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,
+    34,   103,   103,   nil,   nil,    34,    34,   nil,   nil,    38,
+   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    90,    42,   nil,    42,   nil,   nil,    42,    72,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,    38,   nil,   nil,   nil,    42,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   101,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   101,    72,   nil,    38,   101,   nil,    38,
+   nil,   nil,   nil,    38,   nil,   nil,   nil,   nil,    38,    38,
+   nil,   nil,   nil,   nil,    38,    38,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,    90,
+   102,    90,   nil,   nil,   nil,   nil,   nil,   nil,   102,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   102,   102,   nil,
+   nil,   nil,   nil,   nil,    34,    43,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,   nil,    34,   nil,   nil,    90,    42,
+   nil,    90,   nil,    42,   101,   nil,   nil,    42,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,
+    72,   nil,    43,    43,    43,    34,    42,   nil,   nil,   nil,
+    34,    34,   nil,   nil,   nil,   nil,   nil,    34,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,    42,    42,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+    43,    43,    43,    38,   nil,   nil,   nil,    90,   nil,   nil,
+   nil,   nil,   nil,    34,    38,    90,    90,   nil,   nil,   nil,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    90,   nil,   nil,   103,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   103,   nil,    38,   nil,    90,    42,   nil,    38,
+   nil,   103,   103,   nil,   nil,    43,    38,   nil,    72,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    38,   nil,   nil,   nil,    34,   nil,
+   nil,   102,   nil,   102,   nil,   nil,   102,   102,   nil,   nil,
+   nil,    34,    38,   102,   nil,   nil,   nil,   nil,   nil,   102,
+   102,   nil,   nil,   nil,   nil,   nil,   nil,   102,   102,   nil,
+    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,    72,   nil,    90,   nil,   nil,    34,
+    34,   nil,   nil,   nil,   nil,    90,   nil,   nil,    90,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,    43,    34,
+    43,   nil,   102,    43,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,   nil,   nil,   nil,    43,    43,   nil,   nil,
+    38,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,
+   nil,   nil,   nil,   nil,   nil,    90,    42,   nil,    38,    38,
+    34,   nil,   nil,   nil,    42,   103,    34,   103,   nil,   nil,
+   103,   103,   nil,    42,   nil,    38,   nil,   103,    38,    34,
+   nil,   nil,   nil,   103,   103,   nil,    34,   nil,   nil,   nil,
+   nil,   103,   103,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,   nil,
+    43,   nil,   nil,    42,    43,    43,    34,   nil,   nil,   nil,
+    34,   nil,    34,    34,   102,   nil,   103,   nil,   nil,    38,
+   nil,   nil,   102,    43,   nil,    38,   102,    34,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,    43,   nil,    42,    38,   nil,
+   nil,    42,   nil,   nil,   nil,    38,    42,    42,    43,    43,
+   nil,   nil,    42,    42,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,
+   nil,   nil,   nil,   104,   104,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,   nil,    38,
+   nil,    90,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   102,    43,   nil,   nil,   nil,   nil,   nil,
+   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   103,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   103,   nil,   nil,   nil,
+   103,   nil,    65,   nil,   nil,   nil,   nil,   nil,    65,   nil,
+   nil,    42,    90,   nil,   nil,   nil,   105,   105,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,    65,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    65,    65,    65,   nil,    65,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,    65,   nil,   nil,
+   nil,   nil,    65,    65,   nil,   nil,    65,   103,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,    43,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    65,   nil,   nil,   nil,   nil,    65,    65,    65,
+    65,    65,   nil,   nil,    43,   nil,   104,    43,   nil,   nil,
+   nil,   nil,   nil,   nil,   104,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   104,   104,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,   106,   106,   nil,   nil,   nil,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,    43,   nil,   nil,    43,   nil,   nil,    42,    43,   nil,
+   nil,   nil,   nil,    43,    43,   nil,    42,    42,   nil,    43,
+    43,   nil,   nil,   nil,   nil,    65,    65,    65,    65,    65,
+    65,    65,   nil,    42,   nil,    68,    42,    65,   nil,   nil,
+   nil,    68,   nil,    65,    65,    65,    65,   nil,   nil,   105,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    68,   nil,
+    65,   nil,   nil,   nil,   nil,   nil,   105,   105,    68,    68,
+    68,   nil,    68,   nil,   nil,   nil,   nil,   107,   107,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+    68,   nil,   nil,    42,   nil,    68,    68,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,    65,    65,    42,   nil,   108,   108,
+   nil,   nil,   nil,    42,    65,   nil,   nil,   104,   nil,   104,
+   nil,   nil,   104,   104,   nil,   nil,   nil,   nil,    43,   104,
+   nil,   nil,   nil,    65,   nil,   104,   104,    65,   nil,    43,
+   nil,   nil,    65,   104,   104,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,    68,   nil,    42,   nil,   nil,
+    68,    68,    68,    68,    68,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    65,   nil,    43,   nil,   nil,   nil,   nil,   nil,
+    43,    43,   nil,   nil,    65,    65,    65,   nil,   104,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,    43,
+   nil,   nil,    42,   nil,   106,    65,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   106,   106,   nil,   nil,    43,   nil,   nil,
+   105,   nil,   105,   nil,   nil,   105,   105,   nil,   nil,   nil,
+   nil,   nil,   105,   nil,   nil,   nil,   nil,    77,   105,   105,
+   nil,    65,   nil,    77,   nil,   nil,   105,   105,    68,    68,
+    68,    68,    68,    68,    68,   nil,   nil,   nil,   nil,   nil,
+    68,   nil,    77,   nil,   nil,   nil,    68,    68,    68,    68,
+   nil,   nil,   nil,   nil,    77,    77,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,    65,   nil,   nil,
+   nil,   105,   nil,   nil,   nil,    43,   nil,   nil,   nil,   nil,
+   107,   nil,    77,   nil,   nil,   nil,   nil,   nil,   107,   nil,
+   nil,   nil,    77,    77,    77,   nil,    43,   107,   107,   nil,
+   104,   nil,   nil,   nil,    43,   nil,    65,   nil,   104,   nil,
+   nil,   nil,   104,    43,    43,   nil,    65,    68,    68,   nil,
+   nil,   108,   nil,   nil,   nil,   nil,   nil,    68,   nil,   108,
+    43,   nil,   nil,    43,   nil,   nil,   nil,   nil,   108,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    68,    77,   nil,   nil,
+    68,    65,   nil,   nil,   nil,    68,    77,   106,   nil,   106,
+   nil,   nil,   106,   106,   nil,   nil,   nil,   115,   115,   106,
+   nil,   nil,   nil,   nil,   nil,   106,   106,   nil,   nil,   nil,
+    65,   nil,   nil,   106,   106,    68,   nil,   nil,   nil,   104,
+    65,   nil,   nil,   nil,    43,   nil,   nil,    68,    68,    68,
+    43,   nil,   nil,   105,   nil,   nil,    65,   nil,   nil,   nil,
+   nil,   105,   nil,    43,   nil,   105,   nil,   nil,    68,   nil,
+    43,    65,   nil,   nil,    65,   nil,   nil,   nil,   106,   nil,
+   nil,   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    77,   nil,    65,   nil,   nil,   nil,   nil,    65,   nil,   nil,
+   nil,   nil,    77,   nil,    68,   nil,   nil,   nil,    77,   nil,
+    43,   107,   nil,   107,    43,   nil,   107,   107,   nil,   nil,
+   nil,   nil,   nil,   107,   nil,    77,   nil,   nil,    65,   107,
+   107,    65,    65,   nil,   nil,    65,   nil,   107,   107,   nil,
+    65,    65,   105,   nil,   nil,   nil,    65,    65,   nil,   nil,
+    68,   nil,   108,   nil,   108,   nil,   nil,   108,   108,    43,
+   nil,   nil,   nil,   nil,   108,   nil,   nil,   nil,   nil,   nil,
+   108,   108,   nil,   nil,   nil,   nil,   nil,   nil,   108,   108,
+   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
+   106,   nil,    77,   nil,   nil,   nil,    77,    77,   106,   nil,
+   nil,   nil,   106,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    68,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
+   115,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   115,   nil,
+    77,    77,   nil,    68,   nil,   nil,   nil,   115,   115,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
+   nil,   nil,   nil,   nil,    68,   nil,    65,    68,   nil,   nil,
+   nil,    65,    65,   nil,   107,    68,    77,   nil,    65,   nil,
+   nil,   nil,   107,   nil,   nil,    68,   107,   nil,   nil,   nil,
+    68,   nil,   nil,   nil,   nil,   nil,    65,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    65,   108,   nil,   nil,   nil,   nil,
+   nil,    68,   nil,   108,    68,    68,   nil,   108,    68,   nil,
+   nil,   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,    68,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    65,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   115,    65,   115,   nil,   nil,   115,   115,   nil,   nil,
+   nil,   nil,   nil,   115,   108,   nil,   nil,   nil,   nil,   115,
+   115,    65,   nil,    65,   nil,   nil,   nil,   115,   115,   nil,
+   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    65,    65,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    77,   nil,   nil,   nil,    65,   nil,   nil,
+   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   115,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,    77,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,    77,   nil,    68,    68,   nil,   nil,   nil,   nil,
+   nil,    68,   nil,   nil,   nil,   nil,   nil,    65,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+    65,   nil,   nil,    77,    41,   nil,   nil,    65,   nil,   nil,
+    77,   nil,   nil,   nil,    41,    41,    41,    68,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,    41,
+    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,    65,   nil,    65,    65,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   115,   nil,   nil,   nil,    65,   nil,
+   nil,   nil,   115,   nil,   nil,   nil,   115,   nil,   nil,   nil,
+   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,    65,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    68,   nil,    68,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,   nil,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    68,    77,   nil,   115,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    77,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,    41,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    68,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,    77,
+   nil,   nil,   nil,    68,   nil,   nil,    41,   nil,   nil,   nil,
+    68,   nil,   nil,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    68,   nil,    68,    68,   nil,   nil,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,    68,   nil,    41,   nil,   nil,   nil,    77,   nil,   nil,
+    41,   nil,    41,   nil,   nil,    41,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,    68,
+   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    77,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+    41,   nil,    77,   nil,   nil,    77,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,    77,   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,   nil,    77,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,    41,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    77,   nil,   nil,   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,    41,   nil,
+   nil,    41,   nil,    41,   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,    41,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,    41,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+    41,    41,   nil,   nil,   nil,    41,   nil,    41,    41,    41,
+    41,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,    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,   nil,   nil,
+   nil,   nil,   nil,   nil,   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,    41,   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,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    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,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+    41,    41,    41,    41,    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,   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,   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,   nil,   nil,   nil,   nil,   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,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   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 ]
+
+racc_goto_pointer = [
+   nil,   158,    34,   167,   nil,   125,    -2,   133,    93,   132,
+  -117,   161,  -191,   164,  -482,  -547,  -674,  -741,   nil,  -418,
+  -152,    51,   182,    14,   -23,   118,    90,    18,  -162,   -29,
+   436,    55,  -124,    45,  1069,  -198,   479,     5,  1148,   135,
+     4,  3549,  1586,  1913,    -9,  -486,   -25,   -57,   -55,   -18,
+   nil,   182,   -83,  -367,   -37,  -442,   nil,  -655,   nil,   nil,
+   185,   -94,    42,  -224,  -451,  2420,  -370,   nil,  2653,    96,
+   106,   109,   995,   nil,   -11,    72,  -274,  2865,     3,  -396,
+   100,    61,   nil,    81,  -237,   165,    79,   nil,   -18,   168,
+  1287,   154,    42,  -268,   128,   -26,  -286,  -361,  -281,  -426,
+   nil,   675,  1104,  1238,  1780,  1883,  2040,  2144,  2185,   197,
+   nil,   124,  -164,   -62,   nil,  2464,   nil,  -380,  -797,   nil,
+  -797,   nil,   nil,   nil,  -367,  -648,   nil,   149,   nil,  -187,
+    29,   nil,   108,   164,   164,  -151,   164,  -439,  -440,  -810,
+  -178,   nil,   nil,   nil,   nil,   nil,   nil,  -807,  -426,  -383,
+  -810,  -717,  -714,  -706,   nil,  -498,  -769,   nil,   nil,  -448,
+   133,   333,  -882,  -763,   371,  -850,  -576,  -703,   nil,  -739,
+  -904,  -992,  -991,  -167,  -644,   160,  -420,  -118,   -27,  -194,
+   nil,   -53,   -53,   nil,  -556,  -384,   nil,  -304,  -866,  -757,
+  -990,  -592,  -917,  -115,  -542,  -568,  -445,  -798,   nil,  -682,
+   nil,  -682,  -495,  -490,   nil,   nil,  -676,  -490,  -490,   nil,
+  -796,  -843,  -840,   nil,  -688,  -687,   nil,   -82,   nil,   -33,
+   nil,  -622,   nil,   nil,  -514,  -430,  -631,   nil,   nil,   211,
+   207,   207,   207,  -257,   -46,   207,   208,   208,  -576,  -362,
+  -362,   nil,   nil,   215,  -343,  -175,  -114,   nil,   nil,  -458,
+  -406,  -237,  -688,   161,  -398,  -842,  -627, -1049,   nil,   nil,
+    37,  -519 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   341,     7,   399,   344,
+   nil,   nil,   nil,   498,   nil,   nil,   nil,   nil,   340,   342,
+   nil,   nil,   nil,   nil,    14,    15,    23,   254,   nil,   nil,
+    17,   nil,   466,   255,   373,   nil,   nil,   671,   258,   nil,
+    28,    26,   259,   253,   543,   nil,   nil,   nil,   nil,   150,
+    27,   nil,   nil,   nil,   nil,   nil,   394,   nil,    29,    30,
+   nil,   854,   nil,   nil,   nil,   361,   nil,    31,   358,   481,
+    38,   nil,   nil,    40,    43,    42,   nil,   250,   251,   411,
+   nil,   489,   149,    95,   nil,   471,   111,    52,    55,   290,
+   332,   nil,   482,   nil,   483,   494,   506,   725,   598,   330,
+   315,    56,    57,    58,    59,    60,    61,    62,    63,    64,
+    66,   nil,   nil,   316,    70,    71,    72,   nil,   nil,    73,
+  1030,    74,    75,    76,   nil,   nil,    77,   nil,    78,   nil,
+   652,    79,   237,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   320,   308,   734,   934,   661,  1031,   752,   518,   nil,
+   753,   754,   504,   500,   501,   nil,  1234,   748,  1121,   nil,
+   505,   nil,   nil,   nil,   507,   nil,   509,   nil,  1009,   nil,
+   nil,   nil,   516,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   493,   nil,   nil,   832,   nil,   nil,   583,   nil,   nil,   nil,
+   nil,   nil,   nil,  1104,   nil,   777,   980,   779,   780,   784,
+   781,   782,   nil,   nil,   783,   785,   nil,   nil,   nil,   979,
+   981,   789,   nil,   791,   792,   793,   794,   nil,   798,   527,
+   799,   800,   801,   802,   nil,   nil,   nil,    94,    96,    98,
+   nil,   nil,   nil,   nil,   682,   nil,   nil,   nil,   nil,   nil,
+   nil,   107,   108,   nil,   nil,   238,   944,   241,   503,   nil,
+   508,   952,   521,   523,   524,  1132,   528,  1133,   531,   534,
+   nil,   335 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 150, :_reduce_1,
+  2, 148, :_reduce_2,
+  2, 149, :_reduce_3,
+  1, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  3, 151, :_reduce_6,
+  2, 151, :_reduce_none,
+  1, 154, :_reduce_none,
+  0, 158, :_reduce_9,
+  3, 154, :_reduce_10,
+  3, 157, :_reduce_11,
+  0, 164, :_reduce_12,
+  6, 159, :_reduce_13,
+  3, 159, :_reduce_14,
+  2, 160, :_reduce_15,
+  1, 165, :_reduce_none,
+  1, 165, :_reduce_none,
+  3, 165, :_reduce_18,
+  2, 165, :_reduce_19,
+  1, 166, :_reduce_none,
+  0, 167, :_reduce_21,
+  3, 166, :_reduce_22,
+  0, 178, :_reduce_23,
+  4, 156, :_reduce_24,
+  3, 156, :_reduce_25,
+  3, 156, :_reduce_26,
+  3, 156, :_reduce_27,
+  2, 156, :_reduce_28,
+  3, 156, :_reduce_29,
+  3, 156, :_reduce_30,
+  3, 156, :_reduce_31,
+  3, 156, :_reduce_32,
+  3, 156, :_reduce_33,
+  4, 156, :_reduce_34,
+  1, 156, :_reduce_none,
+  3, 156, :_reduce_36,
+  3, 156, :_reduce_37,
+  5, 156, :_reduce_38,
+  3, 156, :_reduce_39,
+  1, 156, :_reduce_none,
+  3, 171, :_reduce_41,
+  3, 171, :_reduce_42,
+  6, 171, :_reduce_43,
+  5, 171, :_reduce_44,
+  5, 171, :_reduce_45,
+  5, 171, :_reduce_46,
+  5, 171, :_reduce_47,
+  4, 171, :_reduce_48,
+  6, 171, :_reduce_49,
+  4, 171, :_reduce_50,
+  6, 171, :_reduce_51,
+  3, 171, :_reduce_52,
+  1, 179, :_reduce_53,
+  3, 179, :_reduce_54,
+  1, 179, :_reduce_none,
+  1, 177, :_reduce_none,
+  3, 177, :_reduce_57,
+  3, 177, :_reduce_58,
+  3, 177, :_reduce_59,
+  2, 177, :_reduce_60,
+  0, 194, :_reduce_61,
+  4, 177, :_reduce_62,
+  0, 195, :_reduce_63,
+  4, 177, :_reduce_64,
+  1, 177, :_reduce_none,
+  1, 193, :_reduce_66,
+  2, 185, :_reduce_67,
+  0, 200, :_reduce_68,
+  5, 189, :_reduce_69,
+  1, 170, :_reduce_70,
+  0, 203, :_reduce_71,
+  0, 204, :_reduce_72,
+  4, 201, :_reduce_73,
+  1, 173, :_reduce_none,
+  1, 173, :_reduce_none,
+  1, 205, :_reduce_none,
+  4, 205, :_reduce_77,
+  0, 213, :_reduce_78,
+  4, 210, :_reduce_79,
+  1, 212, :_reduce_80,
+  2, 187, :_reduce_81,
+  3, 187, :_reduce_82,
+  4, 187, :_reduce_83,
+  5, 187, :_reduce_84,
+  4, 187, :_reduce_85,
+  5, 187, :_reduce_86,
+  2, 187, :_reduce_87,
+  2, 187, :_reduce_88,
+  2, 187, :_reduce_89,
+  2, 187, :_reduce_90,
+  2, 187, :_reduce_91,
+  1, 172, :_reduce_none,
+  3, 172, :_reduce_93,
+  1, 218, :_reduce_none,
+  3, 218, :_reduce_95,
+  1, 217, :_reduce_96,
+  2, 217, :_reduce_97,
+  3, 217, :_reduce_98,
+  5, 217, :_reduce_99,
+  2, 217, :_reduce_100,
+  4, 217, :_reduce_101,
+  2, 217, :_reduce_102,
+  4, 217, :_reduce_103,
+  1, 217, :_reduce_104,
+  3, 217, :_reduce_105,
+  1, 221, :_reduce_none,
+  3, 221, :_reduce_107,
+  2, 220, :_reduce_108,
+  3, 220, :_reduce_109,
+  1, 223, :_reduce_110,
+  3, 223, :_reduce_111,
+  1, 222, :_reduce_112,
+  1, 222, :_reduce_113,
+  4, 222, :_reduce_114,
+  3, 222, :_reduce_115,
+  3, 222, :_reduce_116,
+  3, 222, :_reduce_117,
+  3, 222, :_reduce_118,
+  2, 222, :_reduce_119,
+  1, 222, :_reduce_120,
+  1, 174, :_reduce_121,
+  1, 174, :_reduce_122,
+  4, 174, :_reduce_123,
+  3, 174, :_reduce_124,
+  3, 174, :_reduce_125,
+  3, 174, :_reduce_126,
+  3, 174, :_reduce_127,
+  2, 174, :_reduce_128,
+  1, 174, :_reduce_129,
+  1, 226, :_reduce_130,
+  1, 226, :_reduce_none,
+  2, 227, :_reduce_132,
+  1, 227, :_reduce_133,
+  3, 227, :_reduce_134,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_138,
+  1, 196, :_reduce_none,
+  1, 168, :_reduce_140,
+  1, 168, :_reduce_none,
+  1, 169, :_reduce_142,
+  0, 231, :_reduce_143,
+  4, 169, :_reduce_144,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  3, 188, :_reduce_216,
+  3, 188, :_reduce_217,
+  6, 188, :_reduce_218,
+  5, 188, :_reduce_219,
+  5, 188, :_reduce_220,
+  5, 188, :_reduce_221,
+  5, 188, :_reduce_222,
+  4, 188, :_reduce_223,
+  3, 188, :_reduce_224,
+  3, 188, :_reduce_225,
+  3, 188, :_reduce_226,
+  2, 188, :_reduce_227,
+  2, 188, :_reduce_228,
+  2, 188, :_reduce_229,
+  2, 188, :_reduce_230,
+  3, 188, :_reduce_231,
+  3, 188, :_reduce_232,
+  3, 188, :_reduce_233,
+  3, 188, :_reduce_234,
+  3, 188, :_reduce_235,
+  3, 188, :_reduce_236,
+  4, 188, :_reduce_237,
+  2, 188, :_reduce_238,
+  2, 188, :_reduce_239,
+  3, 188, :_reduce_240,
+  3, 188, :_reduce_241,
+  3, 188, :_reduce_242,
+  3, 188, :_reduce_243,
+  1, 188, :_reduce_none,
+  3, 188, :_reduce_245,
+  3, 188, :_reduce_246,
+  3, 188, :_reduce_247,
+  3, 188, :_reduce_248,
+  3, 188, :_reduce_249,
+  2, 188, :_reduce_250,
+  2, 188, :_reduce_251,
+  3, 188, :_reduce_252,
+  3, 188, :_reduce_253,
+  3, 188, :_reduce_254,
+  3, 188, :_reduce_255,
+  3, 188, :_reduce_256,
+  6, 188, :_reduce_257,
+  4, 188, :_reduce_258,
+  6, 188, :_reduce_259,
+  4, 188, :_reduce_260,
+  6, 188, :_reduce_261,
+  1, 188, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  3, 234, :_reduce_267,
+  3, 234, :_reduce_268,
+  1, 237, :_reduce_269,
+  1, 238, :_reduce_none,
+  2, 238, :_reduce_271,
+  4, 238, :_reduce_272,
+  2, 238, :_reduce_273,
+  1, 232, :_reduce_none,
+  3, 232, :_reduce_275,
+  3, 242, :_reduce_276,
+  5, 242, :_reduce_277,
+  3, 242, :_reduce_278,
+  1, 244, :_reduce_none,
+  1, 244, :_reduce_none,
+  1, 182, :_reduce_none,
+  1, 182, :_reduce_none,
+  2, 182, :_reduce_283,
+  4, 182, :_reduce_284,
+  2, 182, :_reduce_285,
+  1, 216, :_reduce_286,
+  2, 216, :_reduce_287,
+  2, 216, :_reduce_288,
+  4, 216, :_reduce_289,
+  1, 216, :_reduce_290,
+  0, 247, :_reduce_291,
+  2, 209, :_reduce_292,
+  2, 246, :_reduce_293,
+  1, 246, :_reduce_294,
+  2, 245, :_reduce_295,
+  1, 245, :_reduce_none,
+  1, 239, :_reduce_297,
+  2, 239, :_reduce_298,
+  1, 239, :_reduce_299,
+  3, 239, :_reduce_300,
+  4, 239, :_reduce_301,
+  3, 239, :_reduce_302,
+  1, 176, :_reduce_303,
+  1, 176, :_reduce_304,
+  3, 175, :_reduce_305,
+  4, 175, :_reduce_306,
+  2, 175, :_reduce_307,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_318,
+  0, 280, :_reduce_319,
+  4, 235, :_reduce_320,
+  0, 281, :_reduce_321,
+  3, 235, :_reduce_322,
+  0, 282, :_reduce_323,
+  4, 235, :_reduce_324,
+  3, 235, :_reduce_325,
+  3, 235, :_reduce_326,
+  2, 235, :_reduce_327,
+  3, 235, :_reduce_328,
+  0, 283, :_reduce_329,
+  4, 235, :_reduce_330,
+  1, 235, :_reduce_331,
+  4, 235, :_reduce_332,
+  3, 235, :_reduce_333,
+  1, 235, :_reduce_334,
+  5, 235, :_reduce_335,
+  4, 235, :_reduce_336,
+  3, 235, :_reduce_337,
+  2, 235, :_reduce_338,
+  1, 235, :_reduce_none,
+  2, 235, :_reduce_340,
+  1, 235, :_reduce_341,
+  6, 235, :_reduce_342,
+  6, 235, :_reduce_343,
+  4, 235, :_reduce_344,
+  4, 235, :_reduce_345,
+  5, 235, :_reduce_346,
+  4, 235, :_reduce_347,
+  5, 235, :_reduce_348,
+  6, 235, :_reduce_349,
+  0, 284, :_reduce_350,
+  6, 235, :_reduce_351,
+  0, 285, :_reduce_352,
+  0, 286, :_reduce_353,
+  8, 235, :_reduce_354,
+  0, 287, :_reduce_355,
+  5, 235, :_reduce_356,
+  4, 235, :_reduce_357,
+  4, 235, :_reduce_358,
+  1, 235, :_reduce_359,
+  1, 235, :_reduce_360,
+  1, 235, :_reduce_361,
+  1, 235, :_reduce_362,
+  1, 181, :_reduce_363,
+  1, 257, :_reduce_none,
+  1, 263, :_reduce_none,
+  1, 266, :_reduce_none,
+  1, 268, :_reduce_none,
+  1, 269, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 273, :_reduce_none,
+  1, 275, :_reduce_371,
+  1, 278, :_reduce_372,
+  1, 197, :_reduce_373,
+  1, 288, :_reduce_none,
+  1, 289, :_reduce_none,
+  1, 290, :_reduce_none,
+  1, 291, :_reduce_none,
+  1, 292, :_reduce_none,
+  1, 162, :_reduce_none,
+  1, 293, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 264, :_reduce_none,
+  1, 264, :_reduce_none,
+  2, 264, :_reduce_none,
+  1, 202, :_reduce_none,
+  1, 202, :_reduce_none,
+  1, 265, :_reduce_none,
+  5, 265, :_reduce_389,
+  1, 267, :_reduce_none,
+  2, 267, :_reduce_391,
+  1, 274, :_reduce_none,
+  1, 274, :_reduce_393,
+  1, 294, :_reduce_394,
+  3, 294, :_reduce_395,
+  1, 297, :_reduce_396,
+  3, 297, :_reduce_397,
+  1, 296, :_reduce_398,
+  3, 296, :_reduce_399,
+  5, 296, :_reduce_400,
+  1, 296, :_reduce_401,
+  3, 296, :_reduce_402,
+  2, 298, :_reduce_403,
+  1, 298, :_reduce_404,
+  1, 299, :_reduce_none,
+  1, 299, :_reduce_none,
+  0, 304, :_reduce_407,
+  2, 302, :_reduce_none,
+  4, 303, :_reduce_409,
+  2, 303, :_reduce_410,
+  2, 303, :_reduce_411,
+  1, 303, :_reduce_412,
+  2, 308, :_reduce_413,
+  1, 308, :_reduce_none,
+  1, 309, :_reduce_415,
+  6, 310, :_reduce_416,
+  8, 310, :_reduce_417,
+  4, 310, :_reduce_418,
+  6, 310, :_reduce_419,
+  4, 310, :_reduce_420,
+  2, 310, :_reduce_421,
+  6, 310, :_reduce_422,
+  2, 310, :_reduce_423,
+  4, 310, :_reduce_424,
+  6, 310, :_reduce_425,
+  2, 310, :_reduce_426,
+  4, 310, :_reduce_427,
+  2, 310, :_reduce_428,
+  4, 310, :_reduce_429,
+  1, 310, :_reduce_430,
+  1, 314, :_reduce_431,
+  1, 314, :_reduce_432,
+  3, 315, :_reduce_433,
+  1, 315, :_reduce_434,
+  4, 315, :_reduce_435,
+  1, 316, :_reduce_none,
+  4, 316, :_reduce_437,
+  1, 317, :_reduce_438,
+  3, 317, :_reduce_439,
+  1, 318, :_reduce_440,
+  1, 318, :_reduce_none,
+  0, 322, :_reduce_442,
+  0, 323, :_reduce_443,
+  5, 262, :_reduce_444,
+  4, 320, :_reduce_445,
+  1, 320, :_reduce_446,
+  3, 321, :_reduce_447,
+  3, 321, :_reduce_448,
+  3, 325, :_reduce_449,
+  2, 206, :_reduce_450,
+  4, 206, :_reduce_451,
+  5, 206, :_reduce_452,
+  5, 206, :_reduce_453,
+  2, 261, :_reduce_454,
+  4, 261, :_reduce_455,
+  4, 261, :_reduce_456,
+  3, 261, :_reduce_457,
+  3, 261, :_reduce_458,
+  3, 261, :_reduce_459,
+  2, 261, :_reduce_460,
+  1, 261, :_reduce_461,
+  4, 261, :_reduce_462,
+  0, 328, :_reduce_463,
+  4, 260, :_reduce_464,
+  0, 329, :_reduce_465,
+  4, 260, :_reduce_466,
+  0, 330, :_reduce_467,
+  0, 331, :_reduce_468,
+  4, 211, :_reduce_469,
+  0, 333, :_reduce_470,
+  0, 334, :_reduce_471,
+  4, 326, :_reduce_472,
+  1, 332, :_reduce_473,
+  2, 332, :_reduce_474,
+  3, 332, :_reduce_475,
+  4, 332, :_reduce_476,
+  5, 271, :_reduce_477,
+  1, 335, :_reduce_none,
+  1, 335, :_reduce_none,
+  0, 338, :_reduce_480,
+  0, 339, :_reduce_481,
+  7, 272, :_reduce_482,
+  1, 337, :_reduce_none,
+  1, 337, :_reduce_none,
+  1, 336, :_reduce_none,
+  3, 336, :_reduce_486,
+  3, 336, :_reduce_487,
+  1, 192, :_reduce_none,
+  2, 192, :_reduce_489,
+  3, 192, :_reduce_490,
+  1, 192, :_reduce_491,
+  1, 192, :_reduce_492,
+  1, 192, :_reduce_493,
+  1, 340, :_reduce_none,
+  3, 345, :_reduce_495,
+  1, 345, :_reduce_none,
+  3, 347, :_reduce_497,
+  1, 347, :_reduce_none,
+  1, 349, :_reduce_499,
+  1, 350, :_reduce_500,
+  1, 348, :_reduce_none,
+  1, 348, :_reduce_none,
+  4, 348, :_reduce_503,
+  4, 348, :_reduce_504,
+  4, 348, :_reduce_505,
+  3, 348, :_reduce_506,
+  4, 348, :_reduce_507,
+  4, 348, :_reduce_508,
+  4, 348, :_reduce_509,
+  3, 348, :_reduce_510,
+  3, 348, :_reduce_511,
+  3, 348, :_reduce_512,
+  2, 348, :_reduce_513,
+  0, 354, :_reduce_514,
+  4, 348, :_reduce_515,
+  2, 348, :_reduce_516,
+  0, 355, :_reduce_517,
+  4, 348, :_reduce_518,
+  1, 341, :_reduce_519,
+  1, 341, :_reduce_520,
+  2, 341, :_reduce_521,
+  2, 341, :_reduce_522,
+  4, 341, :_reduce_523,
+  1, 341, :_reduce_none,
+  2, 356, :_reduce_525,
+  3, 356, :_reduce_526,
+  1, 343, :_reduce_527,
+  3, 343, :_reduce_528,
+  5, 342, :_reduce_529,
+  2, 358, :_reduce_530,
+  1, 358, :_reduce_531,
+  1, 359, :_reduce_none,
+  3, 359, :_reduce_533,
+  1, 357, :_reduce_534,
+  3, 344, :_reduce_535,
+  1, 344, :_reduce_536,
+  2, 344, :_reduce_537,
+  1, 344, :_reduce_538,
+  1, 360, :_reduce_none,
+  3, 360, :_reduce_540,
+  2, 362, :_reduce_541,
+  1, 362, :_reduce_542,
+  1, 363, :_reduce_543,
+  3, 363, :_reduce_544,
+  2, 365, :_reduce_545,
+  1, 365, :_reduce_546,
+  2, 367, :_reduce_547,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  1, 351, :_reduce_none,
+  3, 351, :_reduce_551,
+  3, 351, :_reduce_552,
+  2, 351, :_reduce_553,
+  2, 351, :_reduce_554,
+  1, 351, :_reduce_none,
+  1, 351, :_reduce_none,
+  1, 351, :_reduce_none,
+  2, 351, :_reduce_558,
+  2, 351, :_reduce_559,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_564,
+  1, 368, :_reduce_565,
+  1, 368, :_reduce_566,
+  1, 368, :_reduce_567,
+  1, 368, :_reduce_568,
+  1, 368, :_reduce_none,
+  1, 346, :_reduce_570,
+  2, 369, :_reduce_571,
+  2, 369, :_reduce_572,
+  4, 370, :_reduce_573,
+  2, 352, :_reduce_574,
+  3, 352, :_reduce_575,
+  1, 352, :_reduce_576,
+  6, 161, :_reduce_577,
+  0, 161, :_reduce_578,
+  1, 372, :_reduce_579,
+  1, 372, :_reduce_none,
+  1, 372, :_reduce_none,
+  2, 373, :_reduce_582,
+  1, 373, :_reduce_none,
+  2, 163, :_reduce_584,
+  1, 163, :_reduce_none,
+  1, 248, :_reduce_586,
+  1, 248, :_reduce_none,
+  1, 249, :_reduce_588,
+  1, 375, :_reduce_589,
+  1, 375, :_reduce_none,
+  2, 375, :_reduce_591,
+  3, 376, :_reduce_592,
+  1, 376, :_reduce_593,
+  3, 250, :_reduce_594,
+  3, 251, :_reduce_595,
+  3, 252, :_reduce_596,
+  3, 252, :_reduce_597,
+  1, 379, :_reduce_598,
+  3, 379, :_reduce_599,
+  1, 380, :_reduce_none,
+  2, 380, :_reduce_601,
+  3, 254, :_reduce_602,
+  3, 254, :_reduce_603,
+  1, 382, :_reduce_604,
+  3, 382, :_reduce_605,
+  3, 253, :_reduce_606,
+  3, 253, :_reduce_607,
+  3, 255, :_reduce_608,
+  3, 255, :_reduce_609,
+  1, 383, :_reduce_610,
+  3, 383, :_reduce_611,
+  1, 384, :_reduce_612,
+  3, 384, :_reduce_613,
+  1, 364, :_reduce_614,
+  2, 364, :_reduce_615,
+  1, 377, :_reduce_616,
+  2, 377, :_reduce_617,
+  1, 378, :_reduce_618,
+  2, 378, :_reduce_619,
+  1, 381, :_reduce_620,
+  0, 386, :_reduce_621,
+  3, 381, :_reduce_622,
+  0, 387, :_reduce_623,
+  4, 381, :_reduce_624,
+  1, 385, :_reduce_625,
+  1, 385, :_reduce_626,
+  1, 385, :_reduce_627,
+  1, 385, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  2, 388, :_reduce_631,
+  1, 388, :_reduce_632,
+  1, 390, :_reduce_none,
+  1, 390, :_reduce_none,
+  1, 390, :_reduce_none,
+  1, 390, :_reduce_none,
+  3, 389, :_reduce_637,
+  1, 374, :_reduce_none,
+  2, 374, :_reduce_639,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 371, :_reduce_644,
+  1, 371, :_reduce_645,
+  1, 371, :_reduce_646,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 225, :_reduce_652,
+  1, 225, :_reduce_653,
+  1, 225, :_reduce_654,
+  1, 225, :_reduce_655,
+  1, 225, :_reduce_656,
+  1, 225, :_reduce_657,
+  1, 225, :_reduce_658,
+  1, 256, :_reduce_659,
+  1, 256, :_reduce_660,
+  1, 180, :_reduce_661,
+  1, 180, :_reduce_662,
+  1, 190, :_reduce_663,
+  1, 190, :_reduce_664,
+  0, 391, :_reduce_665,
+  4, 276, :_reduce_666,
+  1, 276, :_reduce_667,
+  1, 186, :_reduce_none,
+  1, 186, :_reduce_669,
+  3, 392, :_reduce_670,
+  1, 279, :_reduce_none,
+  0, 394, :_reduce_672,
+  3, 279, :_reduce_673,
+  4, 393, :_reduce_674,
+  2, 393, :_reduce_675,
+  2, 393, :_reduce_676,
+  1, 393, :_reduce_none,
+  1, 393, :_reduce_none,
+  2, 396, :_reduce_679,
+  0, 396, :_reduce_680,
+  6, 324, :_reduce_681,
+  8, 324, :_reduce_682,
+  4, 324, :_reduce_683,
+  6, 324, :_reduce_684,
+  4, 324, :_reduce_685,
+  6, 324, :_reduce_686,
+  2, 324, :_reduce_687,
+  4, 324, :_reduce_688,
+  6, 324, :_reduce_689,
+  2, 324, :_reduce_690,
+  4, 324, :_reduce_691,
+  2, 324, :_reduce_692,
+  4, 324, :_reduce_693,
+  1, 324, :_reduce_694,
+  0, 324, :_reduce_695,
+  1, 243, :_reduce_696,
+  1, 319, :_reduce_697,
+  1, 319, :_reduce_698,
+  1, 319, :_reduce_699,
+  1, 319, :_reduce_700,
+  1, 295, :_reduce_none,
+  1, 295, :_reduce_702,
+  1, 398, :_reduce_none,
+  1, 399, :_reduce_none,
+  3, 399, :_reduce_705,
+  1, 311, :_reduce_706,
+  3, 311, :_reduce_707,
+  1, 400, :_reduce_708,
+  2, 401, :_reduce_709,
+  1, 401, :_reduce_710,
+  2, 402, :_reduce_711,
+  1, 402, :_reduce_712,
+  1, 305, :_reduce_none,
+  3, 305, :_reduce_714,
+  1, 395, :_reduce_none,
+  3, 395, :_reduce_716,
+  1, 366, :_reduce_none,
+  1, 366, :_reduce_none,
+  2, 301, :_reduce_719,
+  2, 300, :_reduce_720,
+  1, 300, :_reduce_721,
+  3, 403, :_reduce_722,
+  3, 404, :_reduce_723,
+  1, 312, :_reduce_724,
+  3, 312, :_reduce_725,
+  1, 397, :_reduce_726,
+  3, 397, :_reduce_727,
+  1, 405, :_reduce_none,
+  1, 405, :_reduce_none,
+  2, 313, :_reduce_730,
+  1, 313, :_reduce_731,
+  1, 406, :_reduce_none,
+  1, 406, :_reduce_none,
+  2, 307, :_reduce_734,
+  1, 307, :_reduce_735,
+  2, 306, :_reduce_736,
+  0, 306, :_reduce_737,
+  1, 198, :_reduce_none,
+  0, 407, :_reduce_739,
+  4, 198, :_reduce_740,
+  1, 259, :_reduce_741,
+  2, 259, :_reduce_none,
+  1, 241, :_reduce_none,
+  3, 241, :_reduce_744,
+  3, 408, :_reduce_745,
+  2, 408, :_reduce_746,
+  1, 408, :_reduce_747,
+  4, 408, :_reduce_748,
+  2, 408, :_reduce_749,
+  1, 408, :_reduce_750,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 184, :_reduce_none,
+  1, 184, :_reduce_none,
+  1, 207, :_reduce_none,
+  1, 207, :_reduce_none,
+  0, 152, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 191, :_reduce_none,
+  1, 191, :_reduce_none,
+  2, 219, :_reduce_771,
+  2, 183, :_reduce_772,
+  2, 353, :_reduce_773,
+  0, 240, :_reduce_none,
+  1, 240, :_reduce_none,
+  1, 240, :_reduce_none,
+  1, 277, :_reduce_777,
+  1, 277, :_reduce_none,
+  1, 155, :_reduce_none,
+  2, 155, :_reduce_780,
+  0, 153, :_reduce_781 ]
+
+racc_reduce_n = 782
+
+racc_shift_n = 1291
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLONELY => 142,
+  :tBDOT2 => 143,
+  :tBDOT3 => 144,
+  :tLOWEST => 145,
+  :tEQL => 146 }
+
+racc_nt_base = 147
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLONELY",
+  "tBDOT2",
+  "tBDOT3",
+  "tLOWEST",
+  "tEQL",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@3",
+  "stmts",
+  "stmt_or_begin",
+  "@4",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@5",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "defn_head",
+  "f_opt_paren_args",
+  "command",
+  "arg",
+  "defs_head",
+  "backref",
+  "opt_nl",
+  "p_top_expr_body",
+  "def_name",
+  "@6",
+  "@7",
+  "fname",
+  "k_def",
+  "singleton",
+  "dot_or_colon",
+  "@8",
+  "expr_value_do",
+  "do",
+  "@9",
+  "@10",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@11",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "op",
+  "reswords",
+  "symbol",
+  "@12",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "args_forward",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@13",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "p_case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "f_arglist",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "f_any_kwrest",
+  "f_kwrest",
+  "f_no_kwarg",
+  "f_eq",
+  "block_args_tail",
+  "@22",
+  "f_block_kwarg",
+  "opt_f_block_arg",
+  "f_block_arg",
+  "opt_block_args_tail",
+  "excessed_comma",
+  "block_param",
+  "f_arg",
+  "f_block_optarg",
+  "f_rest_arg",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@23",
+  "@24",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@25",
+  "@26",
+  "@27",
+  "@28",
+  "case_args",
+  "@29",
+  "@30",
+  "cases",
+  "p_top_expr",
+  "p_cases",
+  "@31",
+  "@32",
+  "p_expr",
+  "p_args",
+  "p_find",
+  "p_args_tail",
+  "p_kwargs",
+  "p_as",
+  "p_variable",
+  "p_alt",
+  "p_expr_basic",
+  "p_lparen",
+  "p_lbracket",
+  "p_value",
+  "p_const",
+  "rbrace",
+  "@33",
+  "@34",
+  "p_args_head",
+  "p_arg",
+  "p_rest",
+  "p_args_post",
+  "p_kwarg",
+  "p_any_kwrest",
+  "p_kw",
+  "p_kw_label",
+  "string_contents",
+  "p_kwrest",
+  "kwrest_mark",
+  "p_kwnorest",
+  "p_primitive",
+  "p_var_ref",
+  "p_expr_ref",
+  "nonlocal_var",
+  "exc_list",
+  "exc_var",
+  "numeric",
+  "string",
+  "string1",
+  "xstring_contents",
+  "regexp_contents",
+  "word_list",
+  "word",
+  "string_content",
+  "symbol_list",
+  "qword_list",
+  "qsym_list",
+  "string_dvar",
+  "@35",
+  "@36",
+  "ssym",
+  "dsym",
+  "sym",
+  "@37",
+  "f_paren_args",
+  "args_tail",
+  "@38",
+  "f_kwarg",
+  "opt_args_tail",
+  "f_optarg",
+  "f_arg_asgn",
+  "f_arg_item",
+  "f_label",
+  "f_kw",
+  "f_block_kw",
+  "f_opt",
+  "f_block_opt",
+  "restarg_mark",
+  "blkarg_mark",
+  "@39",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 1
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+                      (_, line), stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      res = _values[-2]
+                      yyerror "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 16 omitted
+
+# reduce 17 omitted
+
+def _reduce_18(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_19(val, _values, result)
+                      result = val[1]
+                      debug 2
+
+    result
+end
+
+# reduce 20 omitted
+
+def _reduce_21(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_22(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 3
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 35 omitted
+
+def _reduce_36(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_37(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      # unwraps s(:to_ary, rhs)
+                      lhs, _, (_, rhs), _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+
+                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_50(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_51(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_52(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_53(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+
+    result
+end
+
+# reduce 55 omitted
+
+# reduce 56 omitted
+
+def _reduce_57(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_58(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+def _reduce_61(val, _values, result)
+                      # value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+
+    result
+end
+
+def _reduce_62(val, _values, result)
+                      lhs, _, in_kwarg, rhs = val
+
+                      self.env.unextend
+                      self.in_kwarg = in_kwarg
+
+                      rhs = new_in rhs, nil, nil, rhs.line
+                      result = new_case lhs, rhs, rhs.line
+
+    result
+end
+
+def _reduce_63(val, _values, result)
+                      # TODO? value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+
+    result
+end
+
+def _reduce_64(val, _values, result)
+                      self.env.unextend
+
+                      expr, _, old_kwarg, pat = val
+
+                      expr = value_expr expr
+
+                      self.in_kwarg = old_kwarg
+                      pat_in = new_in pat, nil, nil, expr.line
+                      result = new_case expr, pat_in, expr.line
+
+    result
+end
+
+# reduce 65 omitted
+
+def _reduce_66(val, _values, result)
+                      # TODO: numparam_name(p, fname);
+
+                      (id, line), = val
+                      old_in_def = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      result = [id.to_sym, line, old_in_def]
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      result = val
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+                      self.in_argdef = true
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+                      self.in_single += 1 # TODO: remove?
+
+                      # self.in_def = true # local_push
+                      # self.env.extend
+                      # lexer.cmdarg.push false
+                      # lexer.cond.push false
+
+                      result = val
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 74 omitted
+
+# reduce 75 omitted
+
+# reduce 76 omitted
+
+def _reduce_77(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_79(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_80(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_81(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_82(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_83(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 92 omitted
+
+def _reduce_93(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 94 omitted
+
+def _reduce_95(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      (_, l), = val
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 106 omitted
+
+def _reduce_107(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_118(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 4
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_119(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 5
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_120(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_122(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 6
+
+    result
+end
+
+def _reduce_123(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_124(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_125(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_126(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_127(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 7
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_128(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 8
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_129(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_130(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 131 omitted
+
+def _reduce_132(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_133(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_134(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 135 omitted
+
+# reduce 136 omitted
+
+# reduce 137 omitted
+
+def _reduce_138(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 139 omitted
+
+def _reduce_140(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 141 omitted
+
+def _reduce_142(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_143(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_144(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+# reduce 203 omitted
+
+# reduce 204 omitted
+
+# reduce 205 omitted
+
+# reduce 206 omitted
+
+# reduce 207 omitted
+
+# reduce 208 omitted
+
+# reduce 209 omitted
+
+# reduce 210 omitted
+
+# reduce 211 omitted
+
+# reduce 212 omitted
+
+# reduce 213 omitted
+
+# reduce 214 omitted
+
+# reduce 215 omitted
+
+def _reduce_216(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_227(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot2, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_228(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot3, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_229(val, _values, result)
+                      _, v2, = val
+                      v1 = nil
+
+                      result = s(:dot2, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      _, v2 = val
+                      v1 = nil
+
+                      result = s(:dot3, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      _, num, _, arg = val
+                      lit = wrap :lit, num
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_241(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_242(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_243(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 244 omitted
+
+def _reduce_245(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_246(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_247(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_249(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_250(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_251(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_252(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_253(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_254(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_255(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_256(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_257(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+def _reduce_258(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_259(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_260(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_261(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+# reduce 262 omitted
+
+# reduce 263 omitted
+
+# reduce 264 omitted
+
+# reduce 265 omitted
+
+# reduce 266 omitted
+
+def _reduce_267(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 270 omitted
+
+def _reduce_271(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_272(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_273(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 274 omitted
+
+def _reduce_275(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+# reduce 279 omitted
+
+# reduce 280 omitted
+
+# reduce 281 omitted
+
+# reduce 282 omitted
+
+def _reduce_283(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_284(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_285(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_286(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_287(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_288(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_289(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_290(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_291(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_292(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_293(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      (_, line), = val
+                      result = s(:block_pass).line line
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 296 omitted
+
+def _reduce_297(val, _values, result)
+                      arg, = val
+                      lineno = arg.line
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      (_, line), = val
+                      result = s(:array, s(:splat).line(line)).line line
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      args, _, (_, line), id = val
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+                      args, _, (_, line) = val
+                      result = self.list_append args, s(:splat).line(line)
+
+    result
+end
+
+def _reduce_303(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 308 omitted
+
+# reduce 309 omitted
+
+# reduce 310 omitted
+
+# reduce 311 omitted
+
+# reduce 312 omitted
+
+# reduce 313 omitted
+
+# reduce 314 omitted
+
+# reduce 315 omitted
+
+# reduce 316 omitted
+
+# reduce 317 omitted
+
+def _reduce_318(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      (_, line), _, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      (_, line), stmt, _ = val
+                      result = stmt || s(:nil).line(line)
+                      result.paren = true
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      (_, line), args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      debug 9
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 339 omitted
+
+def _reduce_340(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_341(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_342(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_343(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_344(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_345(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_346(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_347(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_348(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_349(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_351(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_352(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_353(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_354(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_355(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_356(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_357(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_358(val, _values, result)
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_359(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_360(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_361(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_362(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_363(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+# reduce 366 omitted
+
+# reduce 367 omitted
+
+# reduce 368 omitted
+
+# reduce 369 omitted
+
+# reduce 370 omitted
+
+def _reduce_371(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_372(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_373(val, _values, result)
+                      self.in_argdef = true
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 374 omitted
+
+# reduce 375 omitted
+
+# reduce 376 omitted
+
+# reduce 377 omitted
+
+# reduce 378 omitted
+
+# reduce 379 omitted
+
+# reduce 380 omitted
+
+# reduce 381 omitted
+
+# reduce 382 omitted
+
+# reduce 383 omitted
+
+# reduce 384 omitted
+
+# reduce 385 omitted
+
+# reduce 386 omitted
+
+# reduce 387 omitted
+
+# reduce 388 omitted
+
+def _reduce_389(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 390 omitted
+
+def _reduce_391(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 392 omitted
+
+def _reduce_393(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      (sym, line), = val
+
+                      result = s(:dummy, sym).line line
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      _, args, _ = val
+                      result = args
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      arg, = val
+                      line = arg.line
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = s(:array, arg).line line
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      args, _, arg = val
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = list_append args, arg
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_404(val, _values, result)
+                      (_, line), = val
+                      result = args([:*]).line line
+
+    result
+end
+
+# reduce 405 omitted
+
+# reduce 406 omitted
+
+def _reduce_407(val, _values, result)
+ self.in_argdef = false
+    result
+end
+
+# reduce 408 omitted
+
+def _reduce_409(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_413(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 414 omitted
+
+def _reduce_415(val, _values, result)
+                      result = s(:WTF_COMMA!)
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      arg, _ = val
+                      result = arg << nil
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      (_, line), = val
+
+                      result = s(:args).line line
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+
+    result
+end
+
+# reduce 436 omitted
+
+def _reduce_437(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_440(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 441 omitted
+
+def _reduce_442(val, _values, result)
+                      self.env.extend :dynamic
+                      result = lexer.lpar_beg
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_443(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      (_, line), lpar, args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      self.in_argdef = false
+                      result = args val
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      self.in_argdef = false
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_451(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_452(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_453(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_454(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_456(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_457(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_458(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_459(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_460(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_461(val, _values, result)
+                      (_, line), = val
+                      result = s(:zsuper).line line
+
+    result
+end
+
+def _reduce_462(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_463(val, _values, result)
+                      self.env.extend :dynamic
+
+    result
+end
+
+def _reduce_464(val, _values, result)
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_465(val, _values, result)
+                      self.env.extend :dynamic
+
+    result
+end
+
+def _reduce_466(val, _values, result)
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_467(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_468(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_469(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_470(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_471(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_476(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_477(val, _values, result)
+                      (_, line), case_args, _then, body, cases = val
+
+                      result = new_when case_args, body
+                      result.line line
+                      result << cases if cases
+
+    result
+end
+
+# reduce 478 omitted
+
+# reduce 479 omitted
+
+def _reduce_480(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      push_pvtbl
+                      push_pktbl
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      pop_pktbl
+                      pop_pvtbl
+                      old_kwargs = _values[-3]
+                      self.in_kwarg = old_kwargs
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      (_, line), _, pat, _, _, body, cases = val
+
+                      result = new_in pat, body, cases, line
+
+    result
+end
+
+# reduce 483 omitted
+
+# reduce 484 omitted
+
+# reduce 485 omitted
+
+def _reduce_486(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, body, nil).line body.line
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, nil, body).line body.line
+
+    result
+end
+
+# reduce 488 omitted
+
+def _reduce_489(val, _values, result)
+                      expr, _ = val
+
+                      tail = new_array_pattern_tail nil, true, nil, nil
+                      result = new_array_pattern nil, expr, tail, expr.line
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      expr, _, args = val
+
+                      result = new_array_pattern nil, expr, args, expr.line
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      find, = val
+
+                      result = new_find_pattern nil, find
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+                      args, = val
+                      result = new_array_pattern nil, nil, args, args.line
+
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      kwargs, = val
+                      result = new_hash_pattern nil, kwargs, kwargs.line
+
+    result
+end
+
+# reduce 494 omitted
+
+def _reduce_495(val, _values, result)
+                      # NODE *n = NEW_LIST($1, &@$);
+                      # n = list_append(p, n, $3);
+                      # $$ = new_hash(p, n, &@$);
+
+                      expr, _, var = val
+
+                      id = var.last
+
+                      self.env[id] = :lvar # HACK: need to extend env
+                      lhs = s(:lasgn, id).line var.line
+
+                      result = new_assign lhs, expr
+
+    result
+end
+
+# reduce 496 omitted
+
+def _reduce_497(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = s(:or, lhs, rhs).line lhs.line
+
+    result
+end
+
+# reduce 498 omitted
+
+def _reduce_499(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_500(val, _values, result)
+ push_pktbl
+    result
+end
+
+# reduce 501 omitted
+
+# reduce 502 omitted
+
+def _reduce_503(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern(lhs, nil, args, lhs.line)
+
+    result
+end
+
+def _reduce_504(val, _values, result)
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+
+    result
+end
+
+def _reduce_505(val, _values, result)
+                      lhs, _, kwargs, _ = val
+
+                      pop_pktbl
+                      result = new_hash_pattern(lhs, kwargs, lhs.line)
+
+    result
+end
+
+def _reduce_506(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_507(val, _values, result)
+                      const, _, pre_arg, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern const, nil, pre_arg, const.line
+
+    result
+end
+
+def _reduce_508(val, _values, result)
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+
+    result
+end
+
+def _reduce_509(val, _values, result)
+                      const, _, kwargs, _ = val
+
+                      result = new_hash_pattern const, kwargs, const.line
+
+    result
+end
+
+def _reduce_510(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_511(val, _values, result)
+                      _, pat, _ = val
+
+                      result = new_array_pattern nil, nil, pat, pat.line
+
+    result
+end
+
+def _reduce_512(val, _values, result)
+                      _, find, _ = val
+
+                      result = new_find_pattern nil, find
+
+    result
+end
+
+def _reduce_513(val, _values, result)
+                      (_, line), _ = val
+
+                      result = s(:array_pat).line line
+
+    result
+end
+
+def _reduce_514(val, _values, result)
+                      push_pktbl
+                      result = self.in_kwarg
+                      self.in_kwarg = false
+
+    result
+end
+
+def _reduce_515(val, _values, result)
+                      _, in_kwarg, kwargs, _ = val
+
+                      pop_pktbl
+                      self.in_kwarg = in_kwarg
+
+                      result = new_hash_pattern(nil, kwargs, kwargs.line)
+
+    result
+end
+
+def _reduce_516(val, _values, result)
+                      (_, line), _ = val
+
+                      tail = new_hash_pattern_tail nil, nil, line
+                      result = new_hash_pattern nil, tail, line
+
+    result
+end
+
+def _reduce_517(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_518(val, _values, result)
+                      _, _, expr, _ = val
+
+                      pop_pktbl
+                      result = expr
+
+    result
+end
+
+def _reduce_519(val, _values, result)
+                      expr, = val
+
+                      ary = s(:array_TAIL, expr).line expr.line
+                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
+
+    result
+end
+
+def _reduce_520(val, _values, result)
+                      head, = val
+
+                      result = new_array_pattern_tail head, true, nil, nil
+
+    result
+end
+
+def _reduce_521(val, _values, result)
+                      head, tail = val
+
+                      both = array_pat_concat head, tail
+
+                      result = new_array_pattern_tail both, nil, nil, nil
+                      result.line head.line
+
+    result
+end
+
+def _reduce_522(val, _values, result)
+                      head, (rest, _) = val
+
+                      result = new_array_pattern_tail(head, true, rest, nil).line head.line
+
+    result
+end
+
+def _reduce_523(val, _values, result)
+                      head, (rest, _), _, post = val
+
+                      result = new_array_pattern_tail(head, true, rest, post).line head.line
+
+    result
+end
+
+# reduce 524 omitted
+
+def _reduce_525(val, _values, result)
+                      arg, _ = val
+                      result = arg
+
+    result
+end
+
+def _reduce_526(val, _values, result)
+                      head, tail, _ = val
+
+                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
+                      result.line head.line
+
+    result
+end
+
+def _reduce_527(val, _values, result)
+                      (id, line), = val
+
+                      result = new_array_pattern_tail nil, true, id, nil
+                      result.line line
+
+    result
+end
+
+def _reduce_528(val, _values, result)
+                      (id, line), _, rhs = val
+
+                      result = new_array_pattern_tail nil, true, id, rhs
+                      result.line line
+
+    result
+end
+
+def _reduce_529(val, _values, result)
+                      lhs, _, mid, _, rhs = val
+
+                      result = new_find_pattern_tail lhs, mid, rhs
+
+    result
+end
+
+def _reduce_530(val, _values, result)
+                      _, (id, line) = val
+
+                      result = [id.to_sym, line]
+
+    result
+end
+
+def _reduce_531(val, _values, result)
+                      (_id, line), = val
+
+                      result = [nil, line]
+
+    result
+end
+
+# reduce 532 omitted
+
+def _reduce_533(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = array_pat_concat lhs, rhs
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      expr, = val
+                      expr = s(:array_TAIL, expr).line expr.line unless
+                        expr.sexp_type == :array_TAIL
+                      result = expr
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      kw_arg, _, rest = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      kwarg, = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      kwarg, _ = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      rest, = val
+
+                      result = new_hash_pattern_tail nil, rest, rest.line
+
+    result
+end
+
+# reduce 539 omitted
+
+def _reduce_540(val, _values, result)
+                      kwarg, _, kw = val
+                      kwarg.concat kw.sexp_body
+                      result = kwarg
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
+                      lhs, rhs = val
+
+                      result = s(:PAIR, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      lhs, = val
+
+                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
+
+                      # TODO: if ($1 && !is_local_id(get_id($1))) {
+                      #     yyerror1(&@1, "key must be valid as local variables");
+                      # }
+
+                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
+                      #                     assignable(p, $1, 0, &@$));
+
+                      case lhs.sexp_type
+                      when :lit then
+                        assignable [lhs.value, lhs.line]
+                      else
+                        # TODO or done?
+                        debug 10
+                      end
+
+                      # TODO PAIR -> LIST ?
+                      result = s(:PAIR, lhs, nil).line lhs.line
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      # you can't actually get here the way I lex labels
+                      debug 11
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = s(:kwrest, :"**#{name}").line line
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      (_, line), = val
+
+                      result = s(:kwrest, :"**").line line
+
+    result
+end
+
+def _reduce_547(val, _values, result)
+                      (_, line), _ = val
+
+                      # TODO: or s(:norest)? s(:**nil)?
+                      result = s(:kwrest, :"**nil").line line
+
+    result
+end
+
+# reduce 548 omitted
+
+# reduce 549 omitted
+
+# reduce 550 omitted
+
+def _reduce_551(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot2, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot3, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot2, v1, nil).line v1.line
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot3, v1, nil).line v1.line
+
+    result
+end
+
+# reduce 555 omitted
+
+# reduce 556 omitted
+
+# reduce 557 omitted
+
+def _reduce_558(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot2, nil, v1).line v1.line
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot3, nil, v1).line v1.line
+
+    result
+end
+
+# reduce 560 omitted
+
+# reduce 561 omitted
+
+# reduce 562 omitted
+
+# reduce 563 omitted
+
+def _reduce_564(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
+                      var, = val
+
+                      result = var
+
+    result
+end
+
+# reduce 569 omitted
+
+def _reduce_570(val, _values, result)
+                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
+                      # TODO: assignable(p, $1, 0, &@$);
+                      result = wrap :lasgn, val[0]
+
+    result
+end
+
+def _reduce_571(val, _values, result)
+                      # TODO: check id against env for lvar or dvar
+                      result = wrap :lvar, val[1]
+
+    result
+end
+
+def _reduce_572(val, _values, result)
+                      _, var = val
+                      result = var
+
+    result
+end
+
+def _reduce_573(val, _values, result)
+                      _, _, expr, _ = val
+                      result = expr # TODO? s(:begin, expr).line expr.line
+
+    result
+end
+
+def _reduce_574(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_575(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      l = lhs.line
+                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_576(val, _values, result)
+                      # TODO $$ = gettable(p, $1, &@$);
+                      result = wrap :const, val[0]
+
+    result
+end
+
+def _reduce_577(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_578(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_579(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 580 omitted
+
+# reduce 581 omitted
+
+def _reduce_582(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 583 omitted
+
+def _reduce_584(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 585 omitted
+
+def _reduce_586(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 587 omitted
+
+def _reduce_588(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_589(val, _values, result)
+                      debug 12
+
+    result
+end
+
+# reduce 590 omitted
+
+def _reduce_591(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_595(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_596(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_597(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_598(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_599(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 600 omitted
+
+def _reduce_601(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_602(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_603(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_604(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_605(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_607(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_608(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_609(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_610(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_611(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_612(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_613(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_614(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_615(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_616(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_617(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_618(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_619(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_620(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_621(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_622(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_623(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_624(val, _values, result)
+                      (_, line), memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 13
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_625(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_626(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_627(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 628 omitted
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+def _reduce_631(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_632(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 633 omitted
+
+# reduce 634 omitted
+
+# reduce 635 omitted
+
+# reduce 636 omitted
+
+def _reduce_637(val, _values, result)
+                      (_, line), result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line line
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 14
+                      end
+
+    result
+end
+
+# reduce 638 omitted
+
+def _reduce_639(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 640 omitted
+
+# reduce 641 omitted
+
+# reduce 642 omitted
+
+# reduce 643 omitted
+
+def _reduce_644(val, _values, result)
+ result = wrap :ivar, val[0]
+    result
+end
+
+def _reduce_645(val, _values, result)
+ result = wrap :gvar, val[0]
+    result
+end
+
+def _reduce_646(val, _values, result)
+ result = wrap :cvar, val[0]
+    result
+end
+
+# reduce 647 omitted
+
+# reduce 648 omitted
+
+# reduce 649 omitted
+
+# reduce 650 omitted
+
+# reduce 651 omitted
+
+def _reduce_652(val, _values, result)
+ (_, line), = val; result = s(:nil).line line
+    result
+end
+
+def _reduce_653(val, _values, result)
+ (_, line), = val; result = s(:self).line line
+    result
+end
+
+def _reduce_654(val, _values, result)
+ (_, line), = val; result = s(:true).line line
+    result
+end
+
+def _reduce_655(val, _values, result)
+ (_, line), = val; result = s(:false).line line
+    result
+end
+
+def _reduce_656(val, _values, result)
+ (_, line), = val; result = s(:str, self.file).line line
+    result
+end
+
+def _reduce_657(val, _values, result)
+ (_, line), = val; result = s(:lit, line).line line
+    result
+end
+
+def _reduce_658(val, _values, result)
+                      (_, l), = val
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_659(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+
+                      result.line line
+
+    result
+end
+
+def _reduce_660(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_661(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_662(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 15
+
+    result
+end
+
+def _reduce_663(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_664(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_665(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_666(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_667(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 668 omitted
+
+def _reduce_669(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+def _reduce_670(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+# reduce 671 omitted
+
+def _reduce_672(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.in_argdef = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_673(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+def _reduce_674(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_675(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_676(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 677 omitted
+
+# reduce 678 omitted
+
+def _reduce_679(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_680(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_681(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_682(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_683(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_684(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_685(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_686(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_687(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_688(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_689(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_690(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_691(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_692(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_693(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_694(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_695(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_696(val, _values, result)
+                      (_, line), = val
+                      result = s(:forward_args).line line
+
+    result
+end
+
+def _reduce_697(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_698(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_699(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_700(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 701 omitted
+
+def _reduce_702(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 703 omitted
+
+# reduce 704 omitted
+
+def _reduce_705(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_706(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_707(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_708(val, _values, result)
+                      label, = val
+                      # arg_var(p, formal_argument(p, $1));
+                      # p->cur_arg = get_id($1);
+                      # p->max_numparam = ORDINAL_PARAM;
+                      self.in_argdef = false
+                      result = label
+
+    result
+end
+
+def _reduce_709(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+                      self.in_argdef = true
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_710(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_711(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_712(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 713 omitted
+
+def _reduce_714(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 715 omitted
+
+def _reduce_716(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 717 omitted
+
+# reduce 718 omitted
+
+def _reduce_719(val, _values, result)
+                      (_, line), _ = val
+                      result = [:"**nil", line]
+
+    result
+end
+
+def _reduce_720(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_721(val, _values, result)
+                      (_, line), = val
+                      id = :"**"
+                      self.env[id] = :lvar
+                      result = [id, line]
+
+    result
+end
+
+def _reduce_722(val, _values, result)
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+                      # TODO? p->cur_arg = 0;
+
+    result
+end
+
+def _reduce_723(val, _values, result)
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO? p->cur_arg = 0;
+
+    result
+end
+
+def _reduce_724(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_725(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_726(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_727(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 728 omitted
+
+# reduce 729 omitted
+
+def _reduce_730(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_731(val, _values, result)
+                      (_, line), = val
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, line]
+
+    result
+end
+
+# reduce 732 omitted
+
+# reduce 733 omitted
+
+def _reduce_734(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_735(val, _values, result)
+                      (_, line), = val
+
+                      result = [:&, line]
+
+    result
+end
+
+def _reduce_736(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_737(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 738 omitted
+
+def _reduce_739(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_740(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_741(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 742 omitted
+
+# reduce 743 omitted
+
+def _reduce_744(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_745(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_746(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_747(val, _values, result)
+                      lit = wrap :lit, val[0]
+                      arg = nil
+
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_748(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_749(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+def _reduce_750(val, _values, result)
+                      (_, line), = val
+                      result = s(:array, s(:kwsplat).line(line)).line line
+
+    result
+end
+
+# reduce 751 omitted
+
+# reduce 752 omitted
+
+# reduce 753 omitted
+
+# reduce 754 omitted
+
+# reduce 755 omitted
+
+# reduce 756 omitted
+
+# reduce 757 omitted
+
+# reduce 758 omitted
+
+# reduce 759 omitted
+
+# reduce 760 omitted
+
+# reduce 761 omitted
+
+# reduce 762 omitted
+
+# reduce 763 omitted
+
+# reduce 764 omitted
+
+# reduce 765 omitted
+
+# reduce 766 omitted
+
+# reduce 767 omitted
+
+# reduce 768 omitted
+
+# reduce 769 omitted
+
+# reduce 770 omitted
+
+def _reduce_771(val, _values, result)
+                      _, close = val # TODO: include lineno in close?
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_772(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_773(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 774 omitted
+
+# reduce 775 omitted
+
+# reduce 776 omitted
+
+def _reduce_777(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 778 omitted
+
+# reduce 779 omitted
+
+def _reduce_780(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_781(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby32Parser
diff -pruN 3.20.0-2/lib/ruby_parser33.rb 3.21.1-1/lib/ruby_parser33.rb
--- 3.20.0-2/lib/ruby_parser33.rb	1970-01-01 00:00:00.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser33.rb	2024-08-22 09:52:50.000000000 +0000
@@ -0,0 +1,13577 @@
+# frozen_string_literal: true
+
+#
+# DO NOT MODIFY!!!!
+# This file is automatically generated by Racc 1.8.0
+# from Racc grammar file "stdin".
+#
+
+require 'racc/parser.rb'
+class Ruby33Parser < RubyParser::Parser
+
+
+require "ruby_lexer"
+require "ruby_parser_extras"
+include RubyLexer::State::Values
+
+# :stopdoc:
+
+# Local Variables: **
+# racc-token-length-max:14 **
+# End: **
+##### State transition tables begin ###
+
+racc_action_table = [
+  -647,   699,   702,   317,   653,  -121,   317,  -647,  -647,  -647,
+   228,   229,  -647,  -647,  -647,  -115,  -647,  -122,   968,  -117,
+   653,   653,   228,   229,  -647,   246,  -647,  -647,  -647,   228,
+   229,  -769,   642,   758,   992,   641,  -647,  -647,   234,  -647,
+  -647,  -647,  -647,  -647,   247,   312,  1033,   653,  -129,  -116,
+  -128,   759,   991,  -124,  -126,   653,   876,   968,   240,   967,
+     3,   247,  1051,  -114,   698,   701,  -661,  -647,  -647,  -647,
+  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
+  -647,   653,  -115,  -647,  -647,  -647,  -117,  -647,  -647,   871,
+   319,  -647,  -123,   319,  -647,  -647,   130,  -647,  -534,  -647,
+   247,  -647,   235,  -647,  -647,  -647,  -647,  -647,  -647,  -647,
+  -112,  -647,   247,  -647,  -781,  -754,  -116,  -115,   134,   247,
+  -115,  -117,  -113,   133,  -117,  -121,  -647,  -647,  -647,  -647,
+  -114,  -647,  -121,  -647,   134,   134,  -650,  -115,  -647,   133,
+   133,  -117,  -647,  -650,  -650,  -650,  -647,  -122,  -650,  -650,
+  -650,  -116,  -650,  -120,  -116,  -119,  -129,  -128,  -115,  -117,
+  -650,   134,  -650,  -650,  -650,  -114,   133,  1050,  -114,   134,
+  -124,  -116,  -650,  -650,   133,  -650,  -650,  -650,  -650,  -650,
+  -126,  -125,   240,  -123,   225,  -114,  -125,  -127,  1011,   134,
+   317,  -662,  1011,   226,   133,   134,   683,  -114,  1040,   688,
+   133,   548,   227,  -650,  -650,  -650,  -650,  -650,  -650,  -650,
+  -650,  -650,  -650,  -650,  -650,  -650,  -650,    99,   317,  -650,
+  -650,  -650,  1010,  -650,  -650,   100,  1010,  -650,   112,   113,
+  -650,  -650,   667,  -650,   244,  -650,   668,  -650,  -781,  -650,
+  -650,  -650,  -650,  -650,  -650,  -650,  -121,  -650,  -127,  -650,
+  -122,  -121,  -754,  -755,   230,   314,   683,   685,   684,  -754,
+  -129,  -122,  -650,  -650,  -650,  -650,  -122,  -650,   683,  -650,
+  -129,  -128,  -326,   683,  -650,  -129,  -128,   319,  -650,  -326,
+  -326,  -326,  -650,   314,  -124,  -326,  -326,  -107,  -326,  -124,
+  -769,  -116,  -118,  -129,  -126,  -125,  -326,  -123,   642,  -126,
+  -125,   644,  -123,   683,   -93,   319,   114,   115,  -326,  -326,
+   630,  -326,  -326,  -326,  -326,  -326,   240,   685,   684,   681,
+   134,   247,   795,   307,   660,   133,  -755,   112,   113,   685,
+   684,   240,   876,   525,   685,   684,   681,   841,   899,  -326,
+  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -326,  -326,  -326,   371,  1116,  -326,  -326,  -326,   683,   726,
+  -326,   372,  -127,  -326,   685,   684,  -326,  -127,   962,  -128,
+   244,  -326,  -781,  -326,   247,  -326,  -326,  -326,  -326,  -326,
+  -326,  -326,  1109,  -326,  1116,  -326,   522,  -781,   517,   425,
+   514,   513,   512,   522,   515,   234,   795,   525,  -326,  -326,
+   526,  -118,   233,  -326,   525,   114,   115,   525,  -758,   428,
+  -326,   231,  -120,   963,  -326,  -758,  -758,  -758,  -127,   685,
+   684,  -758,  -758,   522,  -758,   431,   520,  -124,   901,  -129,
+   533,   532,  -758,  -758,   525,   530,   529,   533,   532,  -363,
+  1033,   434,   660,   683,  -758,  -758,  -363,  -758,  -758,  -758,
+  -758,  -758,   453,   451,   234,  -363,  1109,   455,   454,   235,
+   974,   545,   683,   247,   526,   970,   579,   533,   532,   971,
+   546,   526,  -126,   580,   526,  -758,  -758,  -758,  -758,  -758,
+  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,   720,
+  -647,  -758,  -758,  -758,   667,   727,  -758,  -647,  1003,  -758,
+   683,   526,  -758,  -363,   685,   684,   681,  -758,   721,  -758,
+   456,  -758,  -758,  -758,  -758,  -758,  -758,  -758,   235,  -758,
+  -758,  -758,   134,   685,   684,   686,   517,   133,   514,   513,
+   512,   522,   515,  -659,  -758,  -758,  -661,  -116,   134,  -758,
+  -659,   683,   525,   133,  -758,   683,  -758,   497,  -124,  -659,
+  -758,  -758,  -758,  -758,  -125,  -668,  -758,  -758,  -758,   932,
+  -758,   685,   684,   691,   520,   933,  1088,  -126,  -758,  -758,
+  -758,  -758,  -758,   530,   529,   533,   532,   916,  -112,   536,
+  -758,  -758,  -660,  -758,  -758,  -758,  -758,  -758,   134,  -660,
+   547,   134,  -650,   133,   234,  -121,   133,  -659,  -660,  -650,
+  -662,   622,   685,   684,   696,   549,   685,   684,   703,   526,
+   620,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,
+  -758,  -758,  -758,  -758,  -758,  -123,  -657,  -758,  -758,  -758,
+  -656,   964,  -758,  -657,   550,  -758,  -123,  -656,  -758,  -758,
+   667,  -758,  -113,  -758,  1003,  -758,  -660,  -758,  -758,  -758,
+  -758,  -758,  -758,  -758,  -658,  -758,  -758,  -758,   235,  -122,
+   642,  -658,   517,   644,   514,   513,   512,   522,   515,  -317,
+  -758,  -758,  -758,  -758,  -655,  -758,  -317,  -758,   525,   246,
+  -326,  -655,  -758,   587,   630,  -317,  -758,  -326,  -326,  -326,
+  -125,   599,  -326,  -326,  -326,  -652,  -326,   602,   234,   604,
+   520,   -92,  -652,   247,  -326,   632,  -326,  -326,  -326,   530,
+   529,   533,   532,   615,   546,   616,  -326,  -326,   234,  -326,
+  -326,  -326,  -326,  -326,   134,   664,  -119,   623,   234,   133,
+   234,   720,  -653,  -317,   662,   670,   721,   714,   916,  -653,
+   228,   229,   324,  -128,   672,   526,   712,  -326,  -326,  -326,
+  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -326,   247,   235,  -326,  -326,  -326,   240,   965,  -326,   288,
+   289,  -326,   240,  -115,  -326,  -326,   314,  -326,  -117,  -326,
+  -114,  -326,   235,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -124,  -326,   235,  -326,   235,  -126,   517,  -123,   514,   513,
+   512,   522,   515,  -327,   287,   286,  -326,  -326,  -326,  -326,
+  -327,  -326,   525,  -326,  -654,   627,  -326,   642,  -326,  -327,
+   644,  -654,  -326,  -326,  -326,  -326,  -127,   633,   968,  -326,
+  -326,  1181,  -326,   247,   520,   517,  1251,   514,   513,   512,
+  -326,   515,   228,   229,  -327,   533,   532,   228,   229,   533,
+   532,  -327,  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -327,  -326,  -326,   271,   234,   247,  -755,  -327,   247,  -326,
+  -326,  1220,   660,   751,  -755,   993,   994,   271,  -326,   526,
+  1218,   444,   755,  -326,  -326,  -326,  -326,  -326,  -326,  -326,
+  -326,  -326,  -326,  -326,  -326,  -326,  -326,  1029,  1033,  -326,
+  -326,  -326,   665,   726,  -326,  1203,  1204,  -326,  -327,   268,
+  -326,  1029,  1033,   270,   269,  -326,   666,  -326,  -326,  -326,
+  -326,  -326,  -326,  -326,  -326,  -326,  -326,  -326,   235,  -326,
+   674,   690,   517,   234,   514,   513,   512,   522,   515,   234,
+  1243,   694,  -326,  -326,   697,  -326,  1243,  -326,   525,   672,
+   700,   707,  -758,   708,  -326,   672,  -297,   710,  -326,  -758,
+  -758,  -758,  -127,   711,   715,  -758,  -758,   247,  -758,   517,
+   520,   514,   513,   512,   718,   515,  -758,  -758,   719,   530,
+   529,   533,   532,   314,   122,   121,   123,   124,  -758,  -758,
+   733,  -758,  -758,  -758,  -758,  -758,   736,   235,   247,   738,
+   126,   125,   127,   235,   741,   742,   997,   751,  1001,  1000,
+   744,   746,  1002,   112,   113,   526,   755,  -407,   368,  -758,
+  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,  -758,
+  -758,  -758,  -758,   760,   761,  -758,  -758,  -758,   736,   727,
+  -758,   767,   773,  -758,   999,   774,  -758,   271,   271,   271,
+   271,  -758,   823,  -758,   247,  -758,  -758,  -758,  -758,  -758,
+  -758,  -758,   829,  -758,  -758,  -758,   247,   109,    99,   101,
+   102,   103,   105,   247,   271,   451,   100,   110,  -758,  -758,
+   247,  -758,  -107,  -758,    93,   845,   247,    97,   104,   106,
+  -758,   114,   115,   636,  -758,   856,   736,   247,  -125,     8,
+    89,    90,    91,    12,    82,   863,   268,   864,    83,    84,
+   270,   269,  -751,    87,  -752,    85,    86,    88,    36,    37,
+    80,    81,   137,   138,   139,   140,   141,    92,    34,    33,
+   122,   121,   123,   124,   604,   517,    24,   514,   513,   512,
+   867,   515,    11,    54,    10,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   736,   120,   128,   129,   736,   112,
+   113,   736,    50,    51,    49,  -647,   902,  -650,   903,   904,
+  -298,   587,  -647,   751,  -650,   587,   928,  -751,   953,  -752,
+   956,  -647,   755,  -650,    46,   957,   247,    39,   271,   960,
+    67,    68,   247,   969,    69,   986,    41,   987,   988,  -751,
+    53,  -752,  1005,   307,   281,   282,  1055,  1056,    25,  1017,
+  1057,   128,   129,   109,    99,   101,   102,   103,   105,  1019,
+   268,   602,   100,   110,   270,   269,   266,   267,   604,  -647,
+    93,  -650,   856,    97,   104,   106,   247,   114,   115,   314,
+   314,    47,    48,   343,    89,    90,    91,    12,    82,   856,
+   271,  1033,    83,    84,   736,   736,  -758,    87,   247,    85,
+    86,    88,    36,    37,    80,    81,   137,   138,   139,   140,
+   141,    92,    34,    33,   122,   121,   123,   124,   247,   736,
+    24,   271,   247,  -300,   247,  1064,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,  -297,   120,
+   128,   129,  1070,   112,   113,   741,    50,    51,    49,  -758,
+   271,   759,  1073,   268,  1075,  1077,  -758,   270,   269,   266,
+   267,  -754,  1079,  1079,   247,  -758,   815,  1093,    46,   247,
+   247,   347,  1107,  1110,    67,    68,   968,  1135,    69,   247,
+    41,   856,   268,  -758,    53,   736,   270,   269,   266,   267,
+   736,   736,    25,   736,  1153,   247,  1155,   109,    99,   101,
+   102,   103,   105,  -301,  1168,  1169,   100,   110,   137,   138,
+   139,   140,   141,  -758,    93,  1170,  1171,    97,   104,   106,
+  1172,   114,   115,  1173,   247,    47,    48,   343,    89,    90,
+    91,    12,    82,   247,   247,   968,    83,    84,  1177,  1178,
+   247,    87,  1182,    85,    86,    88,    36,    37,    80,    81,
+   263,   247,  1184,   741,  1187,    92,    34,    33,   122,   121,
+   123,   124,  1191,   517,    24,   514,   513,   512,  1193,   515,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,  1195,   120,   128,   129,   247,   112,   113,  -407,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,  1210,   264,   265,  1211,   932,   281,
+   282,  1221,    46,  1222,   262,    39,  1079,  1079,    67,    68,
+  1079,  1241,    69,  1244,    41,   268,   736,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   733,  1169,
+  1259,   109,    99,   101,   102,   103,   105,  1259,   741,  1261,
+   100,   110,  1263,   285,  1265,  1267,  1267,   247,    93,  1079,
+  -755,    97,   104,   106,  -754,   114,   115,  1284,  1267,    47,
+    48,   343,    89,    90,    91,    12,    82,  1267,  1267,  1267,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   137,   138,   139,   140,   141,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   716,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
+   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,  -269,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   716,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   929,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
+   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   961,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
+   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,   347,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,  1214,    24,   514,   513,   512,   nil,   515,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,   347,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,  1214,    24,   514,
+   513,   512,   nil,   515,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
+   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   247,   285,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
+   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,     8,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,    11,    54,    10,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
+   nil,   264,   265,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   285,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,   nil,   264,   265,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,   264,
+   265,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   285,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,   264,   265,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   285,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,   275,   276,   277,   278,
+   288,   289,   283,   284,   279,   280,   nil,   264,   265,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   285,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   283,   284,   279,   280,
+   nil,  -782,  -782,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   284,   279,   280,   nil,  -782,  -782,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   275,   276,
+   277,   278,   288,   289,   283,   284,   279,   280,   nil,  -782,
+  -782,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   275,   276,   277,   278,   288,   289,   283,   284,
+   279,   280,   nil,  -782,  -782,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   517,    24,   514,   513,   512,
+   nil,   515,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,  -782,  -782,  -782,  -782,
+   288,   289,   nil,   751,  -782,  -782,   nil,   nil,   nil,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   517,
+    24,   514,   513,   512,   nil,   515,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+  -782,  -782,  -782,  -782,   288,   289,   nil,   751,  -782,  -782,
+   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   517,    24,   514,   513,   512,   nil,   515,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,  -782,  -782,  -782,  -782,   288,   289,
+   nil,   751,  -782,  -782,   nil,   nil,   nil,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,  -782,  -782,
+  -782,  -782,   288,   289,   nil,   nil,  -782,  -782,   nil,   nil,
+   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   287,   286,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,  -782,  -782,  -782,  -782,   288,   289,   nil,   nil,
+  -782,  -782,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   287,   286,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,   343,
+    89,    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,    11,    54,   345,    13,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   271,  -782,  -782,  -782,  -782,
+   288,   289,   nil,   nil,  -782,  -782,   nil,   nil,   nil,   nil,
+   nil,   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,
+    53,   270,   269,   266,   267,   287,   286,   272,    25,   273,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,   343,    89,    90,    91,    12,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   271,
+   275,   276,   277,   278,   288,   289,   nil,   nil,   279,   280,
+   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,    46,   nil,
+   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   268,   nil,   274,    53,   270,   269,   266,   267,   287,
+   286,   272,    25,   273,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,   343,    89,    90,
+    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+    11,    54,   345,    13,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   271,   275,   276,   277,   278,   288,   289,
+   283,   nil,   279,   280,   nil,   nil,   nil,   nil,   nil,   281,
+   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,   270,
+   269,   266,   267,   287,   286,   272,    25,   273,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,   343,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   281,   282,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   268,
+   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   272,
+    25,   273,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,   343,    89,    90,    91,    12,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,
+   345,    13,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   281,   282,   nil,
+    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,    41,   268,   nil,   274,    53,   270,   269,   266,
+   267,   nil,   nil,   272,    25,   273,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,    12,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
+   nil,    11,    54,    10,    13,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   271,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   281,   282,   nil,    46,   nil,   nil,    39,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,    41,   268,   nil,   274,    53,
+   270,   269,   266,   267,   nil,   nil,   nil,    25,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   271,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   281,   282,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   268,
+   nil,   274,    53,   270,   269,   266,   267,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -461,   114,
+   115,   nil,   nil,    47,    48,  -461,  -461,  -461,   nil,   nil,
+  -461,  -461,  -461,   517,  -461,   514,   513,   512,   522,   515,
+   nil,   nil,  -461,  -461,  -461,  -461,   nil,   nil,   nil,   525,
+   nil,   nil,   nil,   nil,  -461,  -461,   nil,  -461,  -461,  -461,
+  -461,  -461,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   520,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   533,   532,   nil,  -461,  -461,  -461,  -461,  -461,
+  -461,  -461,  -461,  -461,  -461,  -461,  -461,  -461,  -461,   nil,
+   nil,  -461,  -461,  -461,   nil,   nil,  -461,   nil,   314,  -461,
+   nil,   nil,  -461,  -461,   nil,  -461,   526,  -461,   nil,  -461,
+   nil,  -461,  -461,  -461,  -461,  -461,  -461,  -461,   nil,  -461,
+  -461,  -461,   517,   nil,   514,   513,   512,   522,   515,   nil,
+   nil,   nil,   nil,   nil,  -461,  -461,   nil,  -461,   525,  -461,
+  -334,   nil,   nil,   nil,   nil,   nil,  -461,  -334,  -334,  -334,
+  -461,   nil,  -334,  -334,  -334,   nil,  -334,   nil,   nil,   nil,
+   520,   nil,   nil,   nil,  -334,   nil,  -334,  -334,   nil,   nil,
+   nil,   533,   532,   nil,   nil,   nil,  -334,  -334,   nil,  -334,
+  -334,  -334,  -334,  -334,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   526,   nil,  -334,  -334,  -334,
+  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
+  -334,   nil,   nil,  -334,  -334,  -334,   nil,   nil,  -334,   nil,
+   324,  -334,   nil,   nil,  -334,  -334,   nil,  -334,   nil,  -334,
+   nil,  -334,   nil,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
+   nil,  -334,   nil,  -334,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  -334,  -334,   nil,  -334,
+   nil,  -334,    89,    90,    91,   nil,    82,   nil,  -334,   nil,
+    83,    84,  -334,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
+   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -318,
+   114,   115,   nil,   nil,    47,    48,  -318,  -318,  -318,   nil,
+   nil,  -318,  -318,  -318,   517,  -318,   514,   513,   512,   522,
+   515,   nil,   nil,  -318,   nil,  -318,  -318,  -318,   nil,   nil,
+   525,   122,   121,   123,   124,  -318,  -318,   nil,  -318,  -318,
+  -318,  -318,  -318,   nil,   nil,   nil,   nil,   126,   125,   127,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   112,   113,   nil,   533,   532,   368,  -318,  -318,  -318,  -318,
+  -318,  -318,  -318,  -318,  -318,  -318,  -318,  -318,  -318,  -318,
+   nil,   nil,  -318,  -318,  -318,   nil,   nil,  -318,   nil,   nil,
+  -318,   nil,   nil,  -318,  -318,   nil,  -318,   526,  -318,   nil,
+  -318,   nil,  -318,  -318,  -318,  -318,  -318,  -318,  -318,   nil,
+  -318,   nil,  -318,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,  -318,  -318,  -318,  -318,   nil,
+  -318,    93,  -318,   nil,    97,   104,   106,  -318,   114,   115,
+  -781,  -318,    89,    90,    91,    12,    82,  -781,  -781,  -781,
+    83,    84,  -781,  -781,  -781,    87,  -781,    85,    86,    88,
+    36,    37,    80,    81,  -781,  -781,  -781,  -781,   nil,    92,
+    34,    33,   122,   121,   123,   124,  -781,  -781,    24,  -781,
+  -781,  -781,  -781,  -781,    11,    54,   nil,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,  -781,  -781,  -781,
+  -781,  -781,  -781,  -781,  -781,  -781,  -781,  -781,  -781,  -781,
+  -781,   nil,   nil,  -781,  -781,  -781,    46,   nil,  -781,    39,
+   314,  -781,    67,    68,  -781,  -781,    69,  -781,    41,  -781,
+   nil,  -781,    53,  -781,  -781,  -781,  -781,  -781,  -781,  -781,
+    25,  -781,  -781,  -781,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,  -781,  -781,   nil,  -781,
+   nil,  -781,    93,   nil,   nil,    97,   104,   106,  -781,   114,
+   115,   nil,  -781,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   333,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
+    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
+    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   134,   nil,
+   nil,   nil,   nil,   133,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+    12,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,
+    54,    10,    13,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    46,   nil,   nil,    39,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,    41,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   444,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,    12,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,    39,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   461,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,    36,    37,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   461,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,
+    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,
+    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   247,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,    34,    33,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,   589,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   247,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,    12,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,
+    13,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,    41,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   636,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,  -759,
+   114,   115,   nil,   nil,    47,    48,  -759,  -759,  -759,   nil,
+   nil,  -759,  -759,  -759,   517,  -759,   514,   513,   512,   522,
+   515,   nil,   nil,  -759,  -759,  -759,  -759,  -759,   nil,   nil,
+   525,   nil,   nil,   nil,   nil,  -759,  -759,   nil,  -759,  -759,
+  -759,  -759,  -759,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   533,   532,   nil,  -759,  -759,  -759,  -759,
+  -759,  -759,  -759,  -759,  -759,  -759,  -759,  -759,  -759,  -759,
+   nil,   nil,  -759,  -759,  -759,   nil,   nil,  -759,   nil,   nil,
+  -759,   nil,   nil,  -759,  -759,   nil,  -759,   526,  -759,   nil,
+  -759,   nil,  -759,  -759,  -759,  -759,  -759,  -759,  -759,   nil,
+  -759,  -759,  -759,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  -759,  -759,  -759,  -759,   nil,
+  -759,  -760,  -759,   nil,   nil,   nil,   nil,  -759,  -760,  -760,
+  -760,  -759,   nil,  -760,  -760,  -760,   nil,  -760,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  -760,  -760,  -760,  -760,  -760,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -760,  -760,   nil,
+  -760,  -760,  -760,  -760,  -760,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -760,  -760,
+  -760,  -760,  -760,  -760,  -760,  -760,  -760,  -760,  -760,  -760,
+  -760,  -760,   nil,   nil,  -760,  -760,  -760,   nil,   nil,  -760,
+   nil,   nil,  -760,   nil,   nil,  -760,  -760,   nil,  -760,   nil,
+  -760,   nil,  -760,   nil,  -760,  -760,  -760,  -760,  -760,  -760,
+  -760,   nil,  -760,  -760,  -760,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  -760,  -760,  -760,
+  -760,   nil,  -760,   nil,  -760,   nil,    89,    90,    91,  -760,
+    82,   nil,   nil,  -760,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   336,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,  -781,   114,   115,   nil,   nil,    47,    48,
+  -781,  -781,  -781,   nil,   nil,  -781,  -781,  -781,   nil,  -781,
+   122,   121,   123,   124,   nil,   nil,   nil,  -781,  -781,  -781,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,  -781,
+  -781,   nil,  -781,  -781,  -781,  -781,  -781,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
+   517,   nil,   514,   513,   512,   522,   515,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   525,   nil,   nil,   nil,
+   nil,  -781,   nil,   nil,   nil,   nil,   nil,   nil,  -781,   nil,
+   nil,   nil,   nil,   314,  -781,   nil,   nil,   nil,   520,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   533,
+   532,   nil,   100,   110,   nil,  -781,  -781,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,  -781,
+   nil,    89,    90,    91,  -781,    82,   nil,   nil,   nil,    83,
+    84,  -781,   nil,   526,    87,  -781,    85,    86,    88,   364,
+   365,    80,    81,   511,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   838,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   331,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,    12,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,    11,    54,   345,    13,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
+    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   444,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   336,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   838,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   879,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   336,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   333,   nil,   331,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   337,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   336,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   333,   nil,   331,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   337,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,    12,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,    13,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,   nil,   nil,
+    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,    41,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   908,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   336,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,   nil,
+   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,    12,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,    36,    37,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,    34,    33,   122,   121,   123,   124,   nil,
+   nil,    24,   nil,   nil,   nil,   nil,   nil,    11,    54,   nil,
+    13,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
+   nil,   nil,    39,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,    41,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   838,   nil,   331,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   336,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   461,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   336,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   838,   nil,   331,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,   334,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   337,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,   589,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,    24,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,    36,    37,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,   124,
+   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,    54,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,    51,
+    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,
+    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,
+    34,    33,   122,   121,   123,   124,   nil,   nil,    24,   nil,
+   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,
+   127,   116,    65,   118,   117,   119,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    25,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,    50,    51,    49,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,  1145,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,    54,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   336,   120,   128,   129,   nil,   112,   113,   nil,
+    50,    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   331,   nil,    53,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   109,   334,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   337,    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,
+    48,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   257,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,    53,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,    47,    48,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,    36,    37,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,    34,    33,   122,   121,   123,
+   124,   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,
+    54,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,    50,
+    51,    49,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   252,   nil,   nil,   260,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,    47,    48,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,    36,    37,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,    34,    33,
+   122,   121,   123,   124,   nil,   nil,    24,   nil,   nil,   nil,
+   nil,   nil,   nil,    54,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,    50,    51,    49,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   252,   nil,   nil,   260,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+    53,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,    47,    48,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,    36,    37,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,    34,    33,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   336,   120,   128,
+   129,   nil,   112,   113,   nil,    50,    51,    49,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   333,
+   nil,   331,   nil,    53,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   257,   nil,   nil,   nil,   nil,   109,   334,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   337,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,    47,    48,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   517,   nil,   514,   513,
+   512,   522,   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   356,   nil,   525,   352,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   351,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   520,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   533,   532,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   526,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   511,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
+   nil,   nil,   nil,   nil,   nil,   517,   nil,   514,   513,   512,
+   522,   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   356,
+   nil,   525,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   520,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   533,   532,   nil,   100,   110,   nil,
+   nil,   nil,   370,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   526,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   511,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   nil,   nil,   nil,   517,   nil,   514,   513,   512,   522,
+   515,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   403,   nil,
+   525,    39,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   520,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   533,   532,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   526,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   511,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
+   125,   127,   408,    65,   118,   117,   409,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   517,   nil,   514,   513,   512,   522,   515,
+   nil,   nil,   nil,   nil,   415,   nil,   nil,   410,   nil,   525,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   520,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   533,   532,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,
+    83,    84,   nil,   nil,   nil,    87,   526,    85,    86,    88,
+   364,   365,    80,    81,   nil,   nil,   511,   nil,   nil,    92,
+   359,   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,
+   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,
+   127,   408,    65,   118,   117,   409,   nil,   120,   128,   129,
+   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   410,   nil,   nil,   260,
+   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,
+    84,   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,
+   365,    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,
+   367,   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,
+   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,
+   116,    65,   118,   117,   119,   nil,   120,   128,   129,   nil,
+   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   356,   nil,   nil,   260,   nil,
+   nil,    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   618,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+    89,    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,
+   nil,   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,
+    80,    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,
+   122,   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,
+   nil,   nil,   nil,   360,   nil,   nil,   126,   125,   127,   116,
+    65,   118,   117,   119,   nil,   120,   128,   129,   nil,   112,
+   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,
+    67,    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,
+    90,    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,
+   nil,   nil,    87,   nil,    85,    86,    88,   364,   365,    80,
+    81,   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,
+   121,   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,
+   nil,   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,
+   118,   117,   119,   nil,   120,   128,   129,   nil,   112,   113,
+   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,
+    68,   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,    89,    90,
+    91,   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,
+   nil,    87,   nil,    85,    86,    88,   364,   365,    80,    81,
+   nil,   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,
+   123,   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,
+   nil,   360,   nil,   nil,   126,   125,   127,   116,    65,   118,
+   117,   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,
+   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,
+   nil,   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   nil,    97,   104,   106,   nil,   114,   115,    89,    90,    91,
+   nil,    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,
+    87,   nil,    85,    86,    88,   364,   365,    80,    81,   nil,
+   nil,   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,
+   124,   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,
+   360,   nil,   nil,   126,   125,   127,   116,    65,   118,   117,
+   119,   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,
+   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,
+   nil,    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,    89,    90,    91,   nil,
+    82,   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,
+   nil,    85,    86,    88,   364,   365,    80,    81,   nil,   nil,
+   nil,   nil,   nil,    92,   359,   367,   122,   121,   123,   124,
+   nil,   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,
+   nil,   nil,   126,   125,   127,   116,    65,   118,   117,   119,
+   nil,   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   356,   nil,   nil,   352,   nil,   nil,    67,    68,   nil,   nil,
+    69,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,    89,    90,    91,   nil,    82,
+   nil,   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,
+    85,    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,
+   nil,   nil,    92,   359,   367,   122,   121,   123,   124,   nil,
+   nil,   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,
+   nil,   126,   125,   127,   116,    65,   118,   117,   119,   nil,
+   120,   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1161,
+   nil,   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,
+   106,   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,
+   nil,   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,
+    86,    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,
+   nil,    92,   359,   367,   122,   121,   123,   124,   nil,   nil,
+   261,   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,
+   126,   125,   127,   116,    65,   118,   117,   119,   nil,   120,
+   128,   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1199,   nil,
+   nil,   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,    89,    90,    91,   nil,    82,   nil,   nil,
+   nil,    83,    84,   nil,   nil,   nil,    87,   nil,    85,    86,
+    88,   364,   365,    80,    81,   nil,   nil,   nil,   nil,   nil,
+    92,   359,   367,   122,   121,   123,   124,   nil,   nil,   261,
+   nil,   nil,   nil,   nil,   nil,   nil,   360,   nil,   nil,   126,
+   125,   127,   116,    65,   118,   117,   119,   nil,   120,   128,
+   129,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1199,   nil,   nil,
+   260,   nil,   nil,    67,    68,   nil,   nil,    69,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   192,   203,   193,   216,   189,   209,   199,   198,
+   219,   220,   214,   197,   196,   191,   217,   221,   222,   201,
+   190,   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,
+   218,   213,   212,   205,   215,   200,   188,   207,   206,   nil,
+   nil,   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,
+   184,   145,   147,   144,   nil,   146,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   109,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,
+   209,   199,   198,   219,   220,   214,   197,   196,   191,   217,
+   221,   222,   201,   190,   204,   208,   210,   202,   195,   nil,
+   nil,   nil,   211,   218,   213,   212,   205,   215,   200,   188,
+   207,   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,
+   186,   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,
+   173,   155,   156,   157,   164,   161,   163,   nil,   nil,   158,
+   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   170,   169,   nil,   154,   176,   172,   171,   167,   168,
+   162,   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,
+   193,   216,   189,   209,   199,   198,   219,   220,   214,   197,
+   196,   191,   217,   221,   222,   201,   190,   204,   208,   210,
+   202,   195,   nil,   nil,   nil,   211,   218,   213,   301,   300,
+   302,   299,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,
+   187,   194,   185,   186,   296,   297,   298,   294,   147,   118,
+   117,   295,   nil,   120,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   nil,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   306,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   174,   192,   203,   193,   216,   189,   209,   199,   198,   219,
+   220,   214,   197,   196,   191,   217,   221,   222,   201,   190,
+   204,   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,
+   213,   212,   205,   215,   200,   188,   207,   206,   nil,   nil,
+   nil,   nil,   nil,   187,   194,   185,   186,   182,   183,   184,
+   145,   147,   441,   440,   146,   nil,   442,   nil,   nil,   nil,
+   nil,   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,
+   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,
+   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,
+   154,   176,   172,   171,   167,   168,   162,   160,   152,   175,
+   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   174,   192,   203,   193,   216,   189,   209,
+   199,   198,   219,   220,   214,   197,   196,   191,   217,   221,
+   222,   201,   190,   204,   208,   210,   202,   195,   nil,   nil,
+   nil,   211,   218,   213,   212,   205,   215,   200,   188,   207,
+   206,   nil,   nil,   nil,   nil,   nil,   187,   194,   185,   186,
+   182,   183,   184,   145,   147,   nil,   nil,   146,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   nil,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   109,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   174,   192,   203,   193,
+   216,   189,   209,   199,   198,   219,   220,   214,   197,   196,
+   191,   217,   221,   222,   201,   190,   204,   208,   210,   202,
+   195,   nil,   nil,   nil,   211,   218,   213,   212,   205,   215,
+   200,   188,   207,   206,   nil,   nil,   nil,   nil,   nil,   187,
+   194,   185,   186,   182,   183,   184,   145,   147,   nil,   nil,
+   146,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,
+   178,   nil,   173,   155,   156,   157,   164,   161,   163,   nil,
+   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,
+   167,   168,   162,   160,   152,   175,   153,   nil,   nil,   181,
+   109,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   174,
+   192,   203,   193,   216,   189,   209,   199,   198,   219,   220,
+   214,   197,   196,   191,   217,   221,   222,   201,   190,   204,
+   208,   210,   202,   195,   nil,   nil,   nil,   211,   218,   213,
+   212,   205,   215,   200,   188,   207,   206,   nil,   nil,   nil,
+   nil,   nil,   187,   194,   185,   186,   182,   183,   184,   145,
+   147,   nil,   nil,   146,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   nil,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   122,   121,   123,
+   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   174,   126,   125,   127,   815,   nil,   nil,   nil,
+   818,   795,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
+   nil,   368,   525,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,
+   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,
+   109,   796,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   526,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,
+   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,
+   nil,   nil,   nil,   818,   795,   nil,   nil,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   368,   525,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,
+   nil,   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,
+   nil,   nil,   nil,   109,   796,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   526,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
+   125,   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,
+   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,
+   788,   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   790,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   247,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,   803,   804,   122,   121,   123,   124,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,
+   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,
+   787,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,   122,
+   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,   nil,
+   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,   112,   113,
+   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,
+   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
+   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,   nil,
+   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,
+   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,   803,   804,   122,   121,   123,   124,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,   795,
+   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,
+   525,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,
+   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,   787,
+   nil,   790,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,   796,
+   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,
+   nil,   nil,   nil,   nil,   nil,    93,   nil,   526,    97,   104,
+   106,   nil,   114,   115,   nil,   nil,   803,   804,   122,   121,
+   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   126,   125,   127,   815,   nil,   nil,
+   nil,   818,   795,   nil,   nil,   nil,   nil,   112,   113,   nil,
+   nil,   nil,   368,   525,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,   786,
+   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,
+   nil,   109,   796,   101,   102,   103,   105,   nil,   nil,   nil,
+   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,
+   526,    97,   104,   106,   nil,   114,   115,   nil,   nil,   803,
+   804,   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,
+   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,
+   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,
+   nil,   nil,   786,   nil,   nil,   787,   nil,   790,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   816,   nil,   nil,   nil,   109,    99,   101,   102,   103,   105,
+   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,
+   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,   115,
+   nil,   nil,   803,   804,   122,   121,   123,   124,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   126,   125,   127,   815,   nil,   nil,   nil,   818,   nil,   nil,
+   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,
+   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   nil,   803,   804,   122,   121,   123,
+   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   126,   125,   127,   815,   nil,   nil,   nil,
+   818,   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,
+   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,
+   nil,   787,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,
+   109,    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,
+   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,
+    97,   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,
+   122,   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,
+   nil,   nil,   nil,   818,   795,   nil,   nil,   nil,   nil,   112,
+   113,   nil,   nil,   nil,   368,   525,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,
+   nil,   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,
+   nil,   nil,   nil,   109,   796,   101,   102,   103,   105,   nil,
+   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,
+    93,   nil,   526,    97,   104,   106,   nil,   114,   115,   nil,
+   nil,   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,
+   125,   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,
+   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,
+   788,   nil,   nil,   nil,   786,   nil,   nil,   787,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,
+   103,   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,
+   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,
+   114,   115,   nil,   nil,   803,   804,   122,   121,   123,   124,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   126,   125,   127,   815,   nil,   nil,   nil,   818,
+   nil,   nil,   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,
+   368,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   817,   nil,   nil,   788,   nil,   nil,   nil,   786,   nil,   nil,
+   787,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   816,   nil,   nil,   nil,   109,
+    99,   101,   102,   103,   105,   nil,   nil,   nil,   100,   110,
+   nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,
+   104,   106,   nil,   114,   115,   nil,   nil,   803,   804,   122,
+   121,   123,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   126,   125,   127,   815,   nil,
+   nil,   nil,   818,   nil,   nil,   nil,   nil,   nil,   112,   113,
+   nil,   nil,   nil,   368,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   817,   nil,   nil,   788,   nil,   nil,   nil,
+   786,   nil,   nil,   787,   nil,   790,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   816,   nil,
+   nil,   nil,   109,    99,   101,   102,   103,   105,   nil,   nil,
+   nil,   100,   110,   nil,   nil,   nil,   nil,   nil,   nil,    93,
+   nil,   nil,    97,   104,   106,   nil,   114,   115,   nil,   nil,
+   803,   804,   122,   121,   123,   124,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   126,   125,
+   127,   815,   nil,   nil,   nil,   818,   nil,   nil,   nil,   nil,
+   nil,   112,   113,   nil,   nil,   nil,   368,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   122,   121,   123,   124,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   817,   nil,   nil,   788,
+   126,   125,   127,   786,   nil,   nil,   787,   nil,   nil,   nil,
+   nil,   nil,   nil,   112,   113,   nil,   nil,   nil,   368,   nil,
+   nil,   816,   nil,   nil,   nil,   109,    99,   101,   102,   103,
+   105,   nil,   nil,   nil,   100,   110,   nil,   nil,   nil,   nil,
+   nil,   nil,    93,   nil,   nil,    97,   104,   106,   nil,   114,
+   115,   nil,   nil,   803,   804,   nil,   nil,   517,   nil,   514,
+   513,   512,   522,   515,   nil,   nil,   nil,   109,    99,   101,
+   102,   103,   105,   525,   nil,   nil,   100,   110,   nil,   nil,
+   nil,   nil,   nil,   nil,    93,   nil,   nil,    97,   104,   106,
+   nil,   114,   115,   nil,   517,   520,   514,   513,   512,   522,
+   515,   nil,   nil,   nil,   530,   529,   533,   532,   nil,   517,
+   525,   514,   513,   512,   522,   515,   nil,   517,   nil,   514,
+   513,   512,   522,   515,   nil,   525,   nil,   nil,   nil,   nil,
+   nil,   nil,   520,   525,   nil,   nil,   nil,   nil,   nil,   nil,
+   526,   530,   529,   533,   532,   nil,   nil,   520,   679,   nil,
+   511,   nil,   nil,   nil,   nil,   520,   530,   529,   533,   532,
+   nil,   nil,   nil,   nil,   530,   529,   533,   532,   517,   nil,
+   514,   513,   512,   522,   515,   nil,   nil,   526,   nil,   nil,
+   nil,   nil,   nil,   nil,   525,   nil,   nil,   511,   nil,   nil,
+   nil,   517,   526,   514,   513,   512,   522,   515,   nil,   nil,
+   526,   nil,   511,   nil,   nil,   nil,   520,   525,   nil,   nil,
+   511,   nil,   nil,   nil,   nil,   530,   529,   533,   532,   517,
+   nil,   514,   513,   512,   522,   515,   nil,   nil,   nil,   520,
+   nil,   nil,   nil,   nil,   nil,   525,   nil,   nil,   530,   529,
+   533,   532,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   526,   nil,   nil,   nil,   nil,   nil,   520,   nil,   nil,
+   nil,   511,   nil,   nil,   nil,   nil,   530,   529,   533,   532,
+   nil,   nil,   nil,   nil,   526,   484,   488,   nil,   nil,   485,
+   nil,   nil,   nil,   nil,   511,   nil,   nil,   nil,   177,   178,
+   nil,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   526,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   511,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   491,   495,   nil,   nil,   490,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,   585,   488,   nil,   nil,   586,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   768,
+   488,   nil,   nil,   769,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   770,   495,   nil,
+   nil,   771,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   849,   488,   nil,   nil,   850,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   852,   495,   nil,   nil,   853,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,   768,   488,   nil,   nil,   769,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   770,
+   495,   nil,   nil,   771,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   882,   488,   nil,
+   nil,   883,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,   884,   495,   nil,   nil,   885,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,   887,   495,   nil,   nil,   888,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,   585,   488,   nil,   nil,   586,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   910,
+   488,   nil,   nil,   911,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   177,   178,   174,   173,   155,   156,   157,   164,
+   161,   163,   nil,   nil,   158,   159,   nil,   nil,   nil,   179,
+   180,   165,   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,   nil,   154,
+   176,   172,   171,   167,   168,   162,   160,   152,   175,   153,
+   nil,   nil,   181,   nil,   nil,   nil,   nil,   913,   495,   nil,
+   nil,   912,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   177,   178,   174,   173,   155,   156,   157,   164,   161,   163,
+   nil,   nil,   158,   159,   nil,   nil,   nil,   179,   180,   165,
+   166,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   170,   169,   nil,   154,   176,   172,
+   171,   167,   168,   162,   160,   152,   175,   153,   nil,   nil,
+   181,   nil,   nil,   nil,   nil,  1254,   488,   nil,   nil,  1255,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,
+   174,   173,   155,   156,   157,   164,   161,   163,   nil,   nil,
+   158,   159,   nil,   nil,   nil,   179,   180,   165,   166,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   170,   169,   nil,   154,   176,   172,   171,   167,
+   168,   162,   160,   152,   175,   153,   nil,   nil,   181,   nil,
+   nil,   nil,   nil,  1256,   495,   nil,   nil,  1257,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   177,   178,   174,   173,
+   155,   156,   157,   164,   161,   163,   nil,   nil,   158,   159,
+   nil,   nil,   nil,   179,   180,   165,   166,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   170,   169,   nil,   154,   176,   172,   171,   167,   168,   162,
+   160,   152,   175,   153,   nil,   nil,   181,   nil,   nil,   nil,
+   nil,  1271,   495,   nil,   nil,  1270,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   177,   178,   174,   173,   155,   156,
+   157,   164,   161,   163,   nil,   nil,   158,   159,   nil,   nil,
+   nil,   179,   180,   165,   166,   nil,   nil,   nil,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   170,   169,
+   nil,   154,   176,   172,   171,   167,   168,   162,   160,   152,
+   175,   153,   nil,   nil,   181,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   174 ]
+
+racc_action_check = [
+   116,   432,   435,    70,   392,   400,   826,   116,   116,   116,
+   541,   541,   116,   116,   116,   849,   116,   401,   776,   850,
+   393,  1069,   822,   822,   116,    24,   116,   116,   116,   859,
+   859,   787,   386,   527,   797,   386,   116,   116,    30,   116,
+   116,   116,   116,   116,   787,    30,  1273,  1139,   404,   852,
+   665,   527,   797,   882,   883,  1142,  1273,   975,    20,   776,
+     1,    24,   895,  1024,   432,   435,   250,   116,   116,   116,
+   116,   116,   116,   116,   116,   116,   116,   116,   116,   116,
+   116,   880,   849,   116,   116,   116,   850,   116,   116,   655,
+    70,   116,  1042,   826,   116,   116,     3,   116,   975,   116,
+   541,   116,    30,   116,   116,   116,   116,   116,   116,   116,
+   400,   116,   822,   116,    20,   852,   852,   849,   392,   859,
+   849,   850,   401,   392,   850,   250,   116,   116,   116,   116,
+  1024,   116,  1158,   116,   393,  1069,   119,   849,   116,   393,
+  1069,   850,   116,   119,   119,   119,   116,  1159,   119,   119,
+   119,   852,   119,   404,   852,   665,  1162,  1221,   882,   883,
+   119,  1139,   119,   119,   119,  1024,  1139,   895,  1024,  1142,
+  1254,   852,   119,   119,  1142,   119,   119,   119,   119,   119,
+  1255,  1256,    21,  1275,    13,  1024,   884,   885,   824,   655,
+    32,   251,  1018,    15,   655,   880,   423,  1042,   880,   423,
+   880,   253,    16,   119,   119,   119,   119,   119,   119,   119,
+   119,   119,   119,   119,   119,   119,   119,    96,   361,   119,
+   119,   119,   824,   119,   119,    96,  1018,   119,    49,    49,
+   119,   119,   410,   119,   468,   119,   410,   119,    21,   119,
+   119,   119,   119,   119,   119,   119,  1158,   119,  1257,   119,
+   251,  1158,   884,   885,    18,    32,   606,   423,   423,  1256,
+   253,  1159,   119,   119,   119,   119,  1159,   119,   692,   119,
+  1162,  1221,   490,   990,   119,  1162,  1221,    32,   119,   490,
+   490,   490,   119,   361,  1254,   490,   490,   844,   490,  1254,
+   971,   884,   885,   468,  1255,  1256,   490,  1275,   387,  1255,
+  1256,   387,  1275,  1180,   844,   361,    49,    49,   490,   490,
+   547,   490,   490,   490,   490,   490,   258,   606,   606,   606,
+     5,   971,   982,    28,   658,     5,  1257,   368,   368,   692,
+   692,   259,   658,   982,   990,   990,   990,   606,   692,   490,
+   490,   490,   490,   490,   490,   490,   490,   490,   490,   490,
+   490,   490,   490,    43,   990,   490,   490,   490,   695,   490,
+   490,    46,  1257,   490,  1180,  1180,   490,  1257,   768,   547,
+    22,   490,   258,   490,    54,   490,   490,   490,   490,   490,
+   490,   490,   982,   490,  1180,   490,   738,   259,  1010,   103,
+  1010,  1010,  1010,  1010,  1010,    19,   988,   738,   490,   490,
+   982,   490,    19,   490,  1010,   368,   368,   988,   491,   104,
+   490,    19,    22,   769,   490,   491,   491,   491,   490,   695,
+   695,   491,   491,  1184,   491,   105,  1010,   768,   695,    22,
+   738,   738,   491,   491,  1184,  1010,  1010,  1010,  1010,    55,
+  1146,   106,  1146,   419,   491,   491,    55,   491,   491,   491,
+   491,   491,   144,   142,   249,    55,   988,   144,   144,    19,
+   785,   249,   421,  1010,   738,   785,   293,  1184,  1184,   785,
+   249,  1010,   769,   293,   988,   491,   491,   491,   491,   491,
+   491,   491,   491,   491,   491,   491,   491,   491,   491,   910,
+   294,   491,   491,   491,   817,   491,   491,   294,   817,   491,
+   426,  1184,   491,    55,   419,   419,   419,   491,   911,   491,
+   223,   491,   491,   491,   491,   491,   491,   491,   249,   491,
+   491,   491,   340,   421,   421,   421,  1187,   340,  1187,  1187,
+  1187,  1187,  1187,   353,   491,   491,    44,   491,   397,   491,
+   353,   429,  1187,   397,   770,   437,   491,   236,   910,   353,
+   491,   770,   770,   770,   491,   238,   770,   770,   770,   732,
+   770,   426,   426,   426,  1187,   732,   966,   911,   770,   770,
+   770,   770,   770,  1187,  1187,  1187,  1187,  1061,    44,   242,
+   770,   770,   354,   770,   770,   770,   770,   770,   535,   354,
+   252,   893,   295,   535,   355,    44,   893,   353,   354,   295,
+    45,   355,   429,   429,   429,   254,   437,   437,   437,  1187,
+   355,   770,   770,   770,   770,   770,   770,   770,   770,   770,
+   770,   770,   770,   770,   770,   966,   296,   770,   770,   770,
+   297,   770,   770,   296,   255,   770,  1061,   297,   770,   770,
+   974,   770,    45,   770,   974,   770,   354,   770,   770,   770,
+   770,   770,   770,   770,   298,   770,   770,   770,   355,    45,
+   649,   298,  1191,   649,  1191,  1191,  1191,  1191,  1191,   357,
+   770,   770,   770,   770,   299,   770,   357,   770,  1191,   261,
+   771,   299,   770,   313,   372,   357,   770,   771,   771,   771,
+   770,   328,   771,   771,   771,   300,   771,   329,   373,   332,
+  1191,   346,   300,   348,   771,   373,   771,   771,   771,  1191,
+  1191,  1191,  1191,   349,   373,   350,   771,   771,   402,   771,
+   771,   771,   771,   771,  1046,   402,   372,   356,   412,  1046,
+   467,   484,   301,   357,   402,   412,   485,   467,   717,   301,
+    17,    17,   359,   372,   412,  1191,   467,   771,   771,   771,
+   771,   771,   771,   771,   771,   771,   771,   771,   771,   771,
+   771,   360,   373,   771,   771,   771,   362,   771,   771,    52,
+    52,   771,   363,   484,   771,   771,   367,   771,   485,   771,
+   717,   771,   402,   771,   771,   771,   771,   771,   771,   771,
+   484,   771,   412,   771,   467,   485,  1193,   717,  1193,  1193,
+  1193,  1193,  1193,   623,    52,    52,   771,   771,   771,   771,
+   623,   771,  1193,   771,   302,   369,   912,   862,   771,   623,
+   862,   302,   771,   912,   912,   912,   771,   376,  1111,   912,
+   912,  1111,   912,  1212,  1193,   520,  1212,   520,   520,   520,
+   912,   520,   391,   391,   668,  1193,  1193,   676,   676,   741,
+   741,   668,   912,   912,   853,   912,   912,   912,   912,   912,
+   668,   853,   888,   378,  1160,   384,   853,   623,   388,   888,
+   853,  1160,   398,   520,   888,   800,   800,   557,   888,  1193,
+  1160,   399,   520,   912,   912,   912,   912,   912,   912,   912,
+   912,   912,   912,   912,   912,   912,   912,   866,   866,   912,
+   912,   912,   403,   912,   912,  1143,  1143,   912,   668,   557,
+   912,  1245,  1245,   557,   557,   912,   405,   912,   853,   912,
+   912,   912,   912,   912,   912,   912,   888,   912,  1160,   912,
+   414,   425,  1261,  1198,  1261,  1261,  1261,  1261,  1261,  1242,
+  1198,   428,   912,   912,   431,   912,  1242,   912,  1261,  1198,
+   434,   457,   913,   459,   912,  1242,   460,   462,   912,   913,
+   913,   913,   912,   465,   469,   913,   913,   479,   913,   751,
+  1261,   751,   751,   751,   482,   751,   913,   913,   483,  1261,
+  1261,  1261,  1261,   492,   803,   803,   803,   803,   913,   913,
+   498,   913,   913,   913,   913,   913,   499,  1198,   502,   503,
+   803,   803,   803,  1242,   504,   507,   816,   751,   816,   816,
+   508,   509,   816,   803,   803,  1261,   751,   519,   803,   913,
+   913,   913,   913,   913,   913,   913,   913,   913,   913,   913,
+   913,   913,   913,   531,   534,   913,   913,   913,   537,   913,
+   913,   543,   551,   913,   816,   552,   913,   559,   560,   561,
+   562,   913,   582,   913,   590,   913,   913,   913,   913,   913,
+   913,   913,   591,   913,   913,   913,   592,   803,   803,   803,
+   803,   803,   803,   596,   558,   612,   803,   803,   913,   913,
+   613,   913,   614,   913,   803,   617,   619,   803,   803,   803,
+   913,   803,   803,   624,   913,   628,   637,   638,   913,     2,
+     2,     2,     2,     2,     2,   646,   558,   647,     2,     2,
+   558,   558,   408,     2,   409,     2,     2,     2,     2,     2,
+     2,     2,     9,     9,     9,     9,     9,     2,     2,     2,
+     2,     2,     2,     2,   650,   956,     2,   956,   956,   956,
+   652,   956,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,   656,     2,     2,     2,   657,     2,
+     2,   659,     2,     2,     2,   408,   699,   409,   702,   704,
+   709,   722,   408,   956,   409,   728,   730,   408,   748,   409,
+   753,   408,   956,   409,     2,   754,   756,     2,   565,   763,
+     2,     2,   772,   781,     2,   789,     2,   790,   791,   408,
+     2,   409,   820,   825,   565,   565,   897,   897,     2,   831,
+   897,   897,   897,     2,     2,     2,     2,     2,     2,   833,
+   565,   835,     2,     2,   565,   565,   565,   565,   837,   408,
+     2,   409,   846,     2,     2,     2,   848,     2,     2,   851,
+   854,     2,     2,    39,    39,    39,    39,    39,    39,   855,
+   858,   868,    39,    39,   874,   875,   887,    39,   881,    39,
+    39,    39,    39,    39,    39,    39,   344,   344,   344,   344,
+   344,    39,    39,    39,    39,    39,    39,    39,   890,   894,
+    39,   572,   896,   907,   909,   917,    39,    39,    39,    39,
+    39,    39,    39,    39,    39,    39,    39,    39,   936,    39,
+    39,    39,   937,    39,    39,   940,    39,    39,    39,   887,
+   573,   942,   945,   572,   946,   948,   887,   572,   572,   572,
+   572,   887,   949,   951,   955,   887,   968,   970,    39,   976,
+   977,    39,   981,   984,    39,    39,   989,  1015,    39,  1016,
+    39,  1023,   573,   887,    39,  1028,   573,   573,   573,   573,
+  1034,  1043,    39,  1045,  1052,  1053,  1059,    39,    39,    39,
+    39,    39,    39,  1060,  1084,  1085,    39,    39,   383,   383,
+   383,   383,   383,   887,    39,  1090,  1095,    39,    39,    39,
+  1096,    39,    39,  1097,  1098,    39,    39,   225,   225,   225,
+   225,   225,   225,  1099,  1100,  1104,   225,   225,  1105,  1106,
+  1108,   225,  1112,   225,   225,   225,   225,   225,   225,   225,
+    26,  1119,  1121,  1122,  1124,   225,   225,   225,   225,   225,
+   225,   225,  1125,   755,   225,   755,   755,   755,  1126,   755,
+   225,   225,   225,   225,   225,   225,   225,   225,   225,   225,
+   225,   225,  1128,   225,   225,   225,  1129,   225,   225,  1130,
+   225,   225,   225,    26,    26,    26,    26,    26,    26,    26,
+    26,    26,    26,    26,  1151,    26,    26,  1152,  1156,    26,
+    26,  1161,   225,  1164,    26,   225,  1165,  1166,   225,   225,
+  1167,  1196,   225,  1199,   225,    26,  1209,    26,   225,    26,
+    26,    26,    26,    26,    26,    26,   225,    26,  1217,  1227,
+  1228,   225,   225,   225,   225,   225,   225,  1229,  1232,  1235,
+   225,   225,  1236,    26,  1237,  1238,  1240,  1253,   225,  1258,
+  1270,   225,   225,   225,  1271,   225,   225,  1277,  1278,   225,
+   225,   237,   237,   237,   237,   237,   237,  1279,  1280,  1289,
+   237,   237,   nil,   nil,   nil,   237,   nil,   237,   237,   237,
+   237,   237,   237,   237,   611,   611,   611,   611,   611,   237,
+   237,   237,   237,   237,   237,   237,   nil,   nil,   237,   nil,
+   nil,   nil,   nil,   472,   237,   237,   237,   237,   237,   237,
+   237,   237,   237,   237,   237,   237,   nil,   237,   237,   237,
+   nil,   237,   237,   nil,   237,   237,   237,   472,   472,   472,
+   472,   472,   472,   472,   472,   472,   472,   472,   nil,   472,
+   472,   nil,   nil,   472,   472,   nil,   237,   nil,   nil,   237,
+   nil,   nil,   237,   237,   nil,   nil,   237,   nil,   237,   472,
+   nil,   472,   237,   472,   472,   472,   472,   472,   472,   472,
+   237,   472,   nil,   nil,   nil,   237,   237,   237,   237,   237,
+   237,   nil,   nil,   nil,   237,   237,   nil,   472,   nil,   472,
+   nil,   nil,   237,   nil,   nil,   237,   237,   237,   nil,   237,
+   237,   nil,   nil,   237,   237,   243,   243,   243,   243,   243,
+   243,   nil,   nil,   nil,   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,   478,   243,   243,
+   243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
+   nil,   243,   243,   243,   nil,   243,   243,   nil,   243,   243,
+   243,   478,   478,   478,   478,   478,   478,   478,   478,   478,
+   478,   478,   nil,   478,   478,   nil,   nil,   478,   478,   nil,
+   243,   nil,   nil,   243,   nil,   nil,   243,   243,   nil,   nil,
+   243,   nil,   243,   478,   nil,   478,   243,   478,   478,   478,
+   478,   478,   478,   478,   243,   478,   nil,   nil,   nil,   243,
+   243,   243,   243,   243,   243,   nil,   nil,   nil,   243,   243,
+   nil,   478,   nil,   nil,   nil,   nil,   243,   nil,   nil,   243,
+   243,   243,   nil,   243,   243,   nil,   nil,   243,   243,   260,
+   260,   260,   260,   260,   260,   nil,   nil,   nil,   260,   260,
+   nil,   nil,   nil,   260,   nil,   260,   260,   260,   260,   260,
+   260,   260,   nil,   nil,   nil,   nil,   nil,   260,   260,   260,
+   260,   260,   260,   260,   nil,   nil,   260,   nil,   nil,   nil,
+   nil,   731,   260,   260,   260,   260,   260,   260,   260,   260,
+   260,   260,   260,   260,   nil,   260,   260,   260,   nil,   260,
+   260,   nil,   260,   260,   260,   731,   731,   731,   731,   731,
+   731,   731,   731,   731,   731,   731,   nil,   731,   731,   nil,
+   nil,   731,   731,   nil,   260,   nil,   nil,   260,   nil,   nil,
+   260,   260,   nil,   nil,   260,   nil,   260,   731,   nil,   731,
+   260,   731,   731,   731,   731,   731,   731,   731,   260,   731,
+   nil,   nil,   nil,   260,   260,   260,   260,   260,   260,   nil,
+   nil,   nil,   260,   260,   nil,   731,   nil,   nil,   nil,   nil,
+   260,   nil,   nil,   260,   260,   260,   nil,   260,   260,   nil,
+   nil,   260,   260,   347,   347,   347,   347,   347,   347,   nil,
+   nil,   nil,   347,   347,   nil,   nil,   nil,   347,   nil,   347,
+   347,   347,   347,   347,   347,   347,   nil,   nil,   nil,   nil,
+   nil,   347,   347,   347,   347,   347,   347,   347,   nil,   nil,
+   347,   nil,   nil,   nil,   nil,   764,   347,   347,   347,   347,
+   347,   347,   347,   347,   347,   347,   347,   347,   nil,   347,
+   347,   347,   nil,   347,   347,   nil,   347,   347,   347,   764,
+   764,   764,   764,   764,   764,   764,   764,   764,   764,   764,
+   nil,   764,   764,   nil,   nil,   764,   764,   nil,   347,   nil,
+   nil,   347,   nil,   nil,   347,   347,   nil,   nil,   347,   nil,
+   347,   764,   nil,   764,   347,   764,   764,   764,   764,   764,
+   764,   764,   347,   764,   nil,   nil,   nil,   347,   347,   347,
+   347,   347,   347,   nil,   nil,   nil,   347,   347,   nil,   764,
+   nil,   nil,   nil,   nil,   347,   nil,   nil,   347,   347,   347,
+   nil,   347,   347,   nil,   nil,   347,   347,   352,   352,   352,
+   352,   352,   352,   nil,   nil,   nil,   352,   352,   nil,   nil,
+   nil,   352,   nil,   352,   352,   352,   352,   352,   352,   352,
+   nil,   nil,   nil,   nil,   nil,   352,   352,   352,   352,   352,
+   352,   352,   nil,  1153,   352,  1153,  1153,  1153,   nil,  1153,
+   352,   352,   352,   352,   352,   352,   352,   352,   352,   352,
+   352,   352,   nil,   352,   352,   352,   nil,   352,   352,   nil,
+   352,   352,   352,   326,   326,   326,   326,   326,   326,   326,
+   326,   326,   326,   326,   nil,   326,   326,   nil,   nil,   326,
+   326,   nil,   352,   nil,   nil,   352,   nil,   nil,   352,   352,
+   nil,   nil,   352,   nil,   352,   326,   nil,   326,   352,   326,
+   326,   326,   326,   326,   326,   326,   352,   326,   nil,   nil,
+   nil,   352,   352,   352,   352,   352,   352,   nil,   nil,   nil,
+   352,   352,   nil,   326,   nil,   nil,   nil,   nil,   352,   nil,
+   nil,   352,   352,   352,   nil,   352,   352,   nil,   nil,   352,
+   352,   382,   382,   382,   382,   382,   382,   nil,   nil,   nil,
+   382,   382,   nil,   nil,   nil,   382,   nil,   382,   382,   382,
+   382,   382,   382,   382,   nil,   nil,   nil,   nil,   nil,   382,
+   382,   382,   382,   382,   382,   382,   nil,  1251,   382,  1251,
+  1251,  1251,   nil,  1251,   382,   382,   382,   382,   382,   382,
+   382,   382,   382,   382,   382,   382,   nil,   382,   382,   382,
+   nil,   382,   382,   nil,   382,   382,   382,   576,   576,   576,
+   576,   576,   576,   576,   576,   576,   576,   576,   nil,   576,
+   576,   nil,   nil,   576,   576,   nil,   382,   nil,   nil,   382,
+   nil,   nil,   382,   382,   nil,   nil,   382,   nil,   382,   576,
+   nil,   576,   382,   576,   576,   576,   576,   576,   576,   576,
+   382,   576,   nil,   nil,   nil,   382,   382,   382,   382,   382,
+   382,   nil,   nil,   nil,   382,   382,   576,   576,   nil,   nil,
+   nil,   nil,   382,   nil,   nil,   382,   382,   382,   nil,   382,
+   382,   nil,   nil,   382,   382,   395,   395,   395,   395,   395,
+   395,   nil,   nil,   nil,   395,   395,   nil,   nil,   nil,   395,
+   nil,   395,   395,   395,   395,   395,   395,   395,   nil,   nil,
+   nil,   nil,   nil,   395,   395,   395,   395,   395,   395,   395,
+   nil,   nil,   395,   nil,   nil,   nil,   nil,   nil,   395,   395,
+   395,   395,   395,   395,   395,   395,   395,   395,   395,   395,
+   nil,   395,   395,   395,   nil,   395,   395,   nil,   395,   395,
+   395,   635,   635,   635,   635,   635,   635,   635,   635,   635,
+   635,   635,   nil,   635,   635,   nil,   nil,   635,   635,   nil,
+   395,   nil,   nil,   395,   nil,   nil,   395,   395,   nil,   nil,
+   395,   nil,   395,   635,   nil,   635,   395,   635,   635,   635,
+   635,   635,   635,   635,   395,   635,   nil,   nil,   nil,   395,
+   395,   395,   395,   395,   395,   nil,   nil,   nil,   395,   395,
+   nil,   635,   nil,   nil,   nil,   nil,   395,   nil,   nil,   395,
+   395,   395,   nil,   395,   395,   nil,   nil,   395,   395,   396,
+   396,   396,   396,   396,   396,   nil,   nil,   nil,   396,   396,
+   nil,   nil,   nil,   396,   nil,   396,   396,   396,   396,   396,
+   396,   396,   nil,   nil,   nil,   nil,   nil,   396,   396,   396,
+   396,   396,   396,   396,   nil,   nil,   396,   nil,   nil,   nil,
+   nil,   nil,   396,   396,   396,   396,   396,   396,   396,   396,
+   396,   396,   396,   396,   nil,   396,   396,   396,   nil,   396,
+   396,   nil,   396,   396,   396,   915,   915,   915,   915,   915,
+   915,   915,   915,   915,   915,   915,   nil,   915,   915,   nil,
+   nil,   915,   915,   nil,   396,   nil,   nil,   396,   nil,   nil,
+   396,   396,   nil,   nil,   396,   nil,   396,   915,   nil,   915,
+   396,   915,   915,   915,   915,   915,   915,   915,   396,   915,
+   nil,   nil,   nil,   396,   396,   396,   396,   396,   396,   nil,
+   nil,   nil,   396,   396,   nil,   915,   nil,   nil,   nil,   nil,
+   396,   nil,   nil,   396,   396,   396,   nil,   396,   396,   nil,
+   nil,   396,   396,   451,   451,   451,   451,   451,   451,   nil,
+   nil,   nil,   451,   451,   nil,   nil,   nil,   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,   451,   451,   451,   451,
+   451,   451,   451,   451,   451,   451,   451,   451,   nil,   451,
+   451,   451,   nil,   451,   451,   nil,   451,   451,   451,  1065,
+  1065,  1065,  1065,  1065,  1065,  1065,  1065,  1065,  1065,  1065,
+   nil,  1065,  1065,   nil,   nil,  1065,  1065,   nil,   451,   nil,
+   nil,   451,   nil,   nil,   451,   451,   nil,   nil,   451,   nil,
+   451,  1065,   nil,  1065,   451,  1065,  1065,  1065,  1065,  1065,
+  1065,  1065,   451,  1065,   nil,   nil,   nil,   451,   451,   451,
+   451,   451,   451,   nil,   nil,   nil,   451,   451,   nil,  1065,
+   nil,   nil,   nil,   nil,   451,   nil,   nil,   451,   451,   451,
+   nil,   451,   451,   nil,   nil,   451,   451,   651,   651,   651,
+   651,   651,   651,   nil,   nil,   nil,   651,   651,   nil,   nil,
+   nil,   651,   nil,   651,   651,   651,   651,   651,   651,   651,
+   nil,   nil,   nil,   nil,   nil,   651,   651,   651,   651,   651,
+   651,   651,   nil,   nil,   651,   nil,   nil,   nil,   nil,   nil,
+   651,   651,   651,   651,   651,   651,   651,   651,   651,   651,
+   651,   651,   nil,   651,   651,   651,   nil,   651,   651,   nil,
+   651,   651,   651,  1066,  1066,  1066,  1066,  1066,  1066,  1066,
+  1066,  1066,  1066,  1066,   nil,  1066,  1066,   nil,   nil,  1066,
+  1066,   nil,   651,   nil,   nil,   651,   nil,   nil,   651,   651,
+   nil,   nil,   651,   nil,   651,  1066,   nil,  1066,   651,  1066,
+  1066,  1066,  1066,  1066,  1066,  1066,   651,  1066,   nil,   nil,
+   nil,   651,   651,   651,   651,   651,   651,   nil,   nil,   nil,
+   651,   651,   nil,  1066,   nil,   nil,   nil,   nil,   651,   nil,
+   nil,   651,   651,   651,   nil,   651,   651,   nil,   nil,   651,
+   651,   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,  1086,  1086,  1086,
+  1086,  1086,  1086,  1086,  1086,  1086,  1086,  1086,   nil,  1086,
+  1086,   nil,   nil,  1086,  1086,   nil,   654,   nil,   nil,   654,
+   nil,   nil,   654,   654,   nil,   nil,   654,   nil,   654,  1086,
+   nil,  1086,   654,  1086,  1086,  1086,  1086,  1086,  1086,  1086,
+   654,  1086,   nil,   nil,   nil,   654,   654,   654,   654,   654,
+   654,   nil,   nil,   nil,   654,   654,   nil,  1086,   nil,   nil,
+   nil,   nil,   654,   nil,   nil,   654,   654,   654,   nil,   654,
+   654,   nil,   nil,   654,   654,   677,   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,
+   677,   677,   677,   677,   677,   677,   677,   677,   677,   677,
+   nil,   677,   677,   677,   nil,   677,   677,   nil,   677,   677,
+   677,  1087,  1087,  1087,  1087,  1087,  1087,  1087,  1087,  1087,
+  1087,  1087,   nil,  1087,  1087,   nil,   nil,  1087,  1087,   nil,
+   677,   nil,   nil,   677,   nil,   nil,   677,   677,   nil,   nil,
+   677,   nil,   677,  1087,   nil,  1087,   677,  1087,  1087,  1087,
+  1087,  1087,  1087,  1087,   677,  1087,   nil,   nil,   nil,   677,
+   677,   677,   677,   677,   677,   nil,   nil,   nil,   677,   677,
+   nil,  1087,   nil,   nil,   nil,   nil,   677,   nil,   nil,   677,
+   677,   677,   nil,   677,   677,   nil,   nil,   677,   677,   886,
+   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,   886,   886,   886,   886,   886,   886,
+   886,   886,   886,   886,   nil,   886,   886,   886,   nil,   886,
+   886,   nil,   886,   886,   886,  1120,  1120,  1120,  1120,  1120,
+  1120,  1120,  1120,  1120,  1120,  1120,   nil,  1120,  1120,   nil,
+   nil,  1120,  1120,   nil,   886,   nil,   nil,   886,   nil,   nil,
+   886,   886,   nil,   nil,   886,   nil,   886,  1120,   nil,  1120,
+   886,  1120,  1120,  1120,  1120,  1120,  1120,  1120,   886,  1120,
+   nil,   nil,   nil,   886,   886,   886,   886,   886,   886,   nil,
+   nil,   nil,   886,   886,   nil,  1120,   nil,   nil,   nil,   nil,
+   886,   nil,   nil,   886,   886,   886,   nil,   886,   886,   nil,
+   nil,   886,   886,   891,   891,   891,   891,   891,   891,   nil,
+   nil,   nil,   891,   891,   nil,   nil,   nil,   891,   nil,   891,
+   891,   891,   891,   891,   891,   891,   nil,   nil,   nil,   nil,
+   nil,   891,   891,   891,   891,   891,   891,   891,   nil,   nil,
+   891,   nil,   nil,   nil,   nil,   nil,   891,   891,   891,   891,
+   891,   891,   891,   891,   891,   891,   891,   891,   nil,   891,
+   891,   891,   nil,   891,   891,   nil,   891,   891,   891,   374,
+   374,   374,   374,   374,   374,   374,   374,   374,   374,   374,
+   nil,   374,   374,   nil,   nil,   374,   374,   nil,   891,   nil,
+   nil,   891,   nil,   nil,   891,   891,   nil,   nil,   891,   nil,
+   891,   374,   nil,   374,   891,   374,   374,   374,   374,   374,
+   374,   374,   891,   374,   nil,   nil,   nil,   891,   891,   891,
+   891,   891,   891,   nil,   nil,   nil,   891,   891,   nil,   nil,
+   nil,   nil,   nil,   nil,   891,   nil,   nil,   891,   891,   891,
+   nil,   891,   891,   nil,   nil,   891,   891,   898,   898,   898,
+   898,   898,   898,   nil,   nil,   nil,   898,   898,   nil,   nil,
+   nil,   898,   nil,   898,   898,   898,   898,   898,   898,   898,
+   nil,   nil,   nil,   nil,   nil,   898,   898,   898,   898,   898,
+   898,   898,   nil,   nil,   898,   nil,   nil,   nil,   nil,   nil,
+   898,   898,   898,   898,   898,   898,   898,   898,   898,   898,
+   898,   898,   nil,   898,   898,   898,   nil,   898,   898,   nil,
+   898,   898,   898,   375,   375,   375,   375,   375,   375,   375,
+   375,   375,   375,   375,   nil,   375,   375,   nil,   nil,   375,
+   375,   nil,   898,   nil,   nil,   898,   nil,   nil,   898,   898,
+   nil,   nil,   898,   nil,   898,   375,   nil,   375,   898,   375,
+   375,   375,   375,   375,   375,   375,   898,   375,   nil,   nil,
+   nil,   898,   898,   898,   898,   898,   898,   nil,   nil,   nil,
+   898,   898,   nil,   nil,   nil,   nil,   nil,   nil,   898,   nil,
+   nil,   898,   898,   898,   nil,   898,   898,   nil,   nil,   898,
+   898,   934,   934,   934,   934,   934,   934,   nil,   nil,   nil,
+   934,   934,   nil,   nil,   nil,   934,   nil,   934,   934,   934,
+   934,   934,   934,   934,   nil,   nil,   nil,   nil,   nil,   934,
+   934,   934,   934,   934,   934,   934,   nil,   nil,   934,   nil,
+   nil,   nil,   nil,   nil,   934,   934,   934,   934,   934,   934,
+   934,   934,   934,   934,   934,   934,   nil,   934,   934,   934,
+   nil,   934,   934,   nil,   934,   934,   934,   555,   555,   555,
+   555,   555,   555,   555,   555,   555,   555,   555,   nil,   555,
+   555,   nil,   nil,   555,   555,   nil,   934,   nil,   nil,   934,
+   nil,   nil,   934,   934,   nil,   nil,   934,   nil,   934,   555,
+   nil,   555,   934,   555,   555,   555,   555,   555,   555,   555,
+   934,   555,   nil,   nil,   nil,   934,   934,   934,   934,   934,
+   934,   nil,   nil,   nil,   934,   934,   nil,   nil,   nil,   nil,
+   nil,   nil,   934,   nil,   nil,   934,   934,   934,   nil,   934,
+   934,   nil,   nil,   934,   934,  1012,  1012,  1012,  1012,  1012,
+  1012,   nil,   nil,   nil,  1012,  1012,   nil,   nil,   nil,  1012,
+   nil,  1012,  1012,  1012,  1012,  1012,  1012,  1012,   nil,   nil,
+   nil,   nil,   nil,  1012,  1012,  1012,  1012,  1012,  1012,  1012,
+   nil,   nil,  1012,   nil,   nil,   nil,   nil,   nil,  1012,  1012,
+  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,  1012,
+   nil,  1012,  1012,  1012,   nil,  1012,  1012,   nil,  1012,  1012,
+  1012,   556,   556,   556,   556,   556,   556,   556,   556,   556,
+   556,   556,   nil,   556,   556,   nil,   nil,   556,   556,   nil,
+  1012,   nil,   nil,  1012,   nil,   nil,  1012,  1012,   nil,   nil,
+  1012,   nil,  1012,   556,   nil,   556,  1012,   556,   556,   556,
+   556,   556,   556,   556,  1012,   556,   nil,   nil,   nil,  1012,
+  1012,  1012,  1012,  1012,  1012,   nil,   nil,   nil,  1012,  1012,
+   nil,   nil,   nil,   nil,   nil,   nil,  1012,   nil,   nil,  1012,
+  1012,  1012,   nil,  1012,  1012,   nil,   nil,  1012,  1012,  1033,
+  1033,  1033,  1033,  1033,  1033,   nil,   nil,   nil,  1033,  1033,
+   nil,   nil,   nil,  1033,   nil,  1033,  1033,  1033,  1033,  1033,
+  1033,  1033,   nil,   nil,   nil,   nil,   nil,  1033,  1033,  1033,
+  1033,  1033,  1033,  1033,   nil,   957,  1033,   957,   957,   957,
+   nil,   957,  1033,  1033,  1033,  1033,  1033,  1033,  1033,  1033,
+  1033,  1033,  1033,  1033,   nil,  1033,  1033,  1033,   nil,  1033,
+  1033,   nil,  1033,  1033,  1033,   566,   566,   566,   566,   566,
+   566,   566,   nil,   957,   566,   566,   nil,   nil,   nil,   nil,
+   nil,   566,   566,   nil,  1033,   nil,   nil,  1033,   nil,   nil,
+  1033,  1033,   nil,   nil,  1033,   nil,  1033,   566,   nil,   566,
+  1033,   566,   566,   566,   566,   566,   566,   566,  1033,   566,
+   nil,   nil,   nil,  1033,  1033,  1033,  1033,  1033,  1033,   nil,
+   nil,   nil,  1033,  1033,   nil,   nil,   nil,   nil,   nil,   nil,
+  1033,   nil,   nil,  1033,  1033,  1033,   nil,  1033,  1033,   nil,
+   nil,  1033,  1033,  1041,  1041,  1041,  1041,  1041,  1041,   nil,
+   nil,   nil,  1041,  1041,   nil,   nil,   nil,  1041,   nil,  1041,
+  1041,  1041,  1041,  1041,  1041,  1041,   nil,   nil,   nil,   nil,
+   nil,  1041,  1041,  1041,  1041,  1041,  1041,  1041,   nil,  1168,
+  1041,  1168,  1168,  1168,   nil,  1168,  1041,  1041,  1041,  1041,
+  1041,  1041,  1041,  1041,  1041,  1041,  1041,  1041,   nil,  1041,
+  1041,  1041,   nil,  1041,  1041,   nil,  1041,  1041,  1041,   567,
+   567,   567,   567,   567,   567,   567,   nil,  1168,   567,   567,
+   nil,   nil,   nil,   nil,   nil,   567,   567,   nil,  1041,   nil,
+   nil,  1041,   nil,   nil,  1041,  1041,   nil,   nil,  1041,   nil,
+  1041,   567,   nil,   567,  1041,   567,   567,   567,   567,   567,
+   567,   567,  1041,   567,   nil,   nil,   nil,  1041,  1041,  1041,
+  1041,  1041,  1041,   nil,   nil,   nil,  1041,  1041,   nil,   nil,
+   nil,   nil,   nil,   nil,  1041,   nil,   nil,  1041,  1041,  1041,
+   nil,  1041,  1041,   nil,   nil,  1041,  1041,  1050,  1050,  1050,
+  1050,  1050,  1050,   nil,   nil,   nil,  1050,  1050,   nil,   nil,
+   nil,  1050,   nil,  1050,  1050,  1050,  1050,  1050,  1050,  1050,
+   nil,   nil,   nil,   nil,   nil,  1050,  1050,  1050,  1050,  1050,
+  1050,  1050,   nil,  1169,  1050,  1169,  1169,  1169,   nil,  1169,
+  1050,  1050,  1050,  1050,  1050,  1050,  1050,  1050,  1050,  1050,
+  1050,  1050,   nil,  1050,  1050,  1050,   nil,  1050,  1050,   nil,
+  1050,  1050,  1050,   568,   568,   568,   568,   568,   568,   568,
+   nil,  1169,   568,   568,   nil,   nil,   nil,   nil,   nil,   568,
+   568,   nil,  1050,   nil,   nil,  1050,   nil,   nil,  1050,  1050,
+   nil,   nil,  1050,   nil,  1050,   568,   nil,   568,  1050,   568,
+   568,   568,   568,   568,   568,   568,  1050,   568,   nil,   nil,
+   nil,  1050,  1050,  1050,  1050,  1050,  1050,   nil,   nil,   nil,
+  1050,  1050,   nil,   nil,   nil,   nil,   nil,   nil,  1050,   nil,
+   nil,  1050,  1050,  1050,   nil,  1050,  1050,   nil,   nil,  1050,
+  1050,  1051,  1051,  1051,  1051,  1051,  1051,   nil,   nil,   nil,
+  1051,  1051,   nil,   nil,   nil,  1051,   nil,  1051,  1051,  1051,
+  1051,  1051,  1051,  1051,   nil,   nil,   nil,   nil,   nil,  1051,
+  1051,  1051,  1051,  1051,  1051,  1051,   nil,   nil,  1051,   nil,
+   nil,   nil,   nil,   nil,  1051,  1051,  1051,  1051,  1051,  1051,
+  1051,  1051,  1051,  1051,  1051,  1051,   nil,  1051,  1051,  1051,
+   nil,  1051,  1051,   nil,  1051,  1051,  1051,   569,   569,   569,
+   569,   569,   569,   569,   nil,   nil,   569,   569,   nil,   nil,
+   nil,   nil,   nil,   569,   569,   nil,  1051,   nil,   nil,  1051,
+   nil,   nil,  1051,  1051,   nil,   nil,  1051,   nil,  1051,   569,
+   nil,   569,  1051,   569,   569,   569,   569,   569,   569,   569,
+  1051,   569,   nil,   nil,   nil,  1051,  1051,  1051,  1051,  1051,
+  1051,   nil,   nil,   nil,  1051,  1051,   nil,   nil,   nil,   nil,
+   nil,   nil,  1051,   nil,   nil,  1051,  1051,  1051,   nil,  1051,
+  1051,   nil,   nil,  1051,  1051,  1067,  1067,  1067,  1067,  1067,
+  1067,   nil,   nil,   nil,  1067,  1067,   nil,   nil,   nil,  1067,
+   nil,  1067,  1067,  1067,  1067,  1067,  1067,  1067,   nil,   nil,
+   nil,   nil,   nil,  1067,  1067,  1067,  1067,  1067,  1067,  1067,
+   nil,   nil,  1067,   nil,   nil,   nil,   nil,   nil,  1067,  1067,
+  1067,  1067,  1067,  1067,  1067,  1067,  1067,  1067,  1067,  1067,
+   nil,  1067,  1067,  1067,   nil,  1067,  1067,   nil,  1067,  1067,
+  1067,   570,   570,   570,   570,   570,   570,   570,   nil,   nil,
+   570,   570,   nil,   nil,   nil,   nil,   nil,   570,   570,   nil,
+  1067,   nil,   nil,  1067,   nil,   nil,  1067,  1067,   nil,   nil,
+  1067,   nil,  1067,   570,   nil,   570,  1067,   570,   570,   570,
+   570,   570,   570,   570,  1067,   570,   nil,   nil,   nil,  1067,
+  1067,  1067,  1067,  1067,  1067,   nil,   nil,   nil,  1067,  1067,
+   nil,   nil,   nil,   nil,   nil,   nil,  1067,   nil,   nil,  1067,
+  1067,  1067,   nil,  1067,  1067,   nil,   nil,  1067,  1067,  1137,
+  1137,  1137,  1137,  1137,  1137,   nil,   nil,   nil,  1137,  1137,
+   nil,   nil,   nil,  1137,   nil,  1137,  1137,  1137,  1137,  1137,
+  1137,  1137,   nil,   nil,   nil,   nil,   nil,  1137,  1137,  1137,
+  1137,  1137,  1137,  1137,   nil,   nil,  1137,   nil,   nil,   nil,
+   nil,   nil,  1137,  1137,  1137,  1137,  1137,  1137,  1137,  1137,
+  1137,  1137,  1137,  1137,   nil,  1137,  1137,  1137,   nil,  1137,
+  1137,   nil,  1137,  1137,  1137,   571,   571,   571,   571,   571,
+   571,   571,   nil,   nil,   571,   571,   nil,   nil,   nil,   nil,
+   nil,   571,   571,   nil,  1137,   nil,   nil,  1137,   nil,   nil,
+  1137,  1137,   nil,   nil,  1137,   nil,  1137,   571,   nil,   571,
+  1137,   571,   571,   571,   571,   571,   571,   571,  1137,   571,
+   nil,   nil,   nil,  1137,  1137,  1137,  1137,  1137,  1137,   nil,
+   nil,   nil,  1137,  1137,   nil,   nil,   nil,   nil,   nil,   nil,
+  1137,   nil,   nil,  1137,  1137,  1137,   nil,  1137,  1137,   nil,
+   nil,  1137,  1137,  1150,  1150,  1150,  1150,  1150,  1150,   nil,
+   nil,   nil,  1150,  1150,   nil,   nil,   nil,  1150,   nil,  1150,
+  1150,  1150,  1150,  1150,  1150,  1150,   nil,   nil,   nil,   nil,
+   nil,  1150,  1150,  1150,  1150,  1150,  1150,  1150,   nil,   nil,
+  1150,   nil,   nil,   nil,   nil,   nil,  1150,  1150,  1150,  1150,
+  1150,  1150,  1150,  1150,  1150,  1150,  1150,  1150,   nil,  1150,
+  1150,  1150,   nil,  1150,  1150,   nil,  1150,  1150,  1150,   574,
+   574,   574,   574,   574,   574,   574,   nil,   nil,   574,   574,
+   nil,   nil,   nil,   nil,   nil,   574,   574,   nil,  1150,   nil,
+   nil,  1150,   nil,   nil,  1150,  1150,   nil,   nil,  1150,   nil,
+  1150,   574,   nil,   574,  1150,   574,   574,   574,   574,   574,
+   574,   574,  1150,   574,   nil,   nil,   nil,  1150,  1150,  1150,
+  1150,  1150,  1150,   nil,   nil,   nil,  1150,  1150,   nil,   nil,
+   nil,   nil,   nil,   nil,  1150,   nil,   nil,  1150,  1150,  1150,
+   nil,  1150,  1150,   nil,   nil,  1150,  1150,  1157,  1157,  1157,
+  1157,  1157,  1157,   nil,   nil,   nil,  1157,  1157,   nil,   nil,
+   nil,  1157,   nil,  1157,  1157,  1157,  1157,  1157,  1157,  1157,
+   nil,   nil,   nil,   nil,   nil,  1157,  1157,  1157,  1157,  1157,
+  1157,  1157,   nil,   nil,  1157,   nil,   nil,   nil,   nil,   nil,
+  1157,  1157,  1157,  1157,  1157,  1157,  1157,  1157,  1157,  1157,
+  1157,  1157,   nil,  1157,  1157,  1157,   nil,  1157,  1157,   nil,
+  1157,  1157,  1157,   575,   575,   575,   575,   575,   575,   575,
+   575,   nil,   575,   575,   nil,   nil,   nil,   nil,   nil,   575,
+   575,   nil,  1157,   nil,   nil,  1157,   nil,   nil,  1157,  1157,
+   nil,   nil,  1157,   nil,  1157,   575,   nil,   575,  1157,   575,
+   575,   575,   575,   575,   575,   575,  1157,   575,   nil,   nil,
+   nil,  1157,  1157,  1157,  1157,  1157,  1157,   nil,   nil,   nil,
+  1157,  1157,   nil,   nil,   nil,   nil,   nil,   nil,  1157,   nil,
+   nil,  1157,  1157,  1157,   nil,  1157,  1157,   nil,   nil,  1157,
+  1157,  1201,  1201,  1201,  1201,  1201,  1201,   nil,   nil,   nil,
+  1201,  1201,   nil,   nil,   nil,  1201,   nil,  1201,  1201,  1201,
+  1201,  1201,  1201,  1201,   nil,   nil,   nil,   nil,   nil,  1201,
+  1201,  1201,  1201,  1201,  1201,  1201,   nil,   nil,  1201,   nil,
+   nil,   nil,   nil,   nil,  1201,  1201,  1201,  1201,  1201,  1201,
+  1201,  1201,  1201,  1201,  1201,  1201,   nil,  1201,  1201,  1201,
+   nil,  1201,  1201,   nil,  1201,  1201,  1201,   577,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   577,   577,   nil,  1201,   nil,   nil,  1201,
+   nil,   nil,  1201,  1201,   nil,   nil,  1201,   nil,  1201,   577,
+   nil,   577,  1201,   577,   577,   577,   577,   nil,   nil,   577,
+  1201,   577,   nil,   nil,   nil,  1201,  1201,  1201,  1201,  1201,
+  1201,   nil,   nil,   nil,  1201,  1201,   nil,   nil,   nil,   nil,
+   nil,   nil,  1201,   nil,   nil,  1201,  1201,  1201,   nil,  1201,
+  1201,   nil,   nil,  1201,  1201,  1246,  1246,  1246,  1246,  1246,
+  1246,   nil,   nil,   nil,  1246,  1246,   nil,   nil,   nil,  1246,
+   nil,  1246,  1246,  1246,  1246,  1246,  1246,  1246,   nil,   nil,
+   nil,   nil,   nil,  1246,  1246,  1246,  1246,  1246,  1246,  1246,
+   nil,   nil,  1246,   nil,   nil,   nil,   nil,   nil,  1246,  1246,
+  1246,  1246,  1246,  1246,  1246,  1246,  1246,  1246,  1246,  1246,
+   nil,  1246,  1246,  1246,   nil,  1246,  1246,   nil,  1246,  1246,
+  1246,   634,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   634,   634,   nil,
+  1246,   nil,   nil,  1246,   nil,   nil,  1246,  1246,   nil,   nil,
+  1246,   nil,  1246,   634,   nil,   634,  1246,   634,   634,   634,
+   634,   nil,   nil,   634,  1246,   634,   nil,   nil,   nil,  1246,
+  1246,  1246,  1246,  1246,  1246,   nil,   nil,   nil,  1246,  1246,
+   nil,   nil,   nil,   nil,   nil,   nil,  1246,   nil,   nil,  1246,
+  1246,  1246,   nil,  1246,  1246,   nil,   nil,  1246,  1246,     8,
+     8,     8,     8,     8,   nil,   nil,   nil,     8,     8,   nil,
+   nil,   nil,     8,   nil,     8,     8,     8,     8,     8,     8,
+     8,   nil,   nil,   nil,   nil,   nil,     8,     8,     8,     8,
+     8,     8,     8,   nil,   nil,     8,   nil,   nil,   nil,   nil,
+   nil,     8,     8,     8,     8,     8,     8,     8,     8,     8,
+     8,     8,     8,   nil,     8,     8,     8,   nil,     8,     8,
+   nil,     8,     8,     8,   563,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   563,   563,   nil,     8,   nil,   nil,     8,   nil,   nil,     8,
+     8,   nil,   nil,     8,   nil,     8,   563,   nil,   563,     8,
+   563,   563,   563,   563,   nil,   nil,   nil,     8,   nil,   nil,
+   nil,   nil,     8,     8,     8,     8,     8,     8,   nil,   nil,
+   nil,     8,     8,   nil,   nil,   nil,   nil,   nil,   nil,     8,
+   nil,   nil,     8,     8,     8,   nil,     8,     8,   nil,   nil,
+     8,     8,    25,    25,    25,   nil,    25,   nil,   nil,   nil,
+    25,    25,   nil,   nil,   nil,    25,   nil,    25,    25,    25,
+    25,    25,    25,    25,   nil,   nil,   nil,   nil,   nil,    25,
+    25,    25,    25,    25,    25,    25,   nil,   nil,    25,   nil,
+   nil,   nil,   nil,   nil,   nil,    25,   nil,   nil,    25,    25,
+    25,    25,    25,    25,    25,    25,   nil,    25,    25,    25,
+   nil,    25,    25,   nil,    25,    25,    25,   564,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   564,   564,   nil,    25,   nil,   nil,    25,
+   nil,   nil,    25,    25,   nil,   nil,    25,   nil,   nil,   564,
+   nil,   564,    25,   564,   564,   564,   564,   nil,   nil,   nil,
+    25,   nil,   nil,   nil,   nil,    25,    25,    25,    25,    25,
+    25,   nil,   nil,   nil,    25,    25,   nil,   nil,   nil,   nil,
+   nil,   nil,    25,   nil,   nil,    25,    25,    25,    33,    25,
+    25,   nil,   nil,    25,    25,    33,    33,    33,   nil,   nil,
+    33,    33,    33,  1263,    33,  1263,  1263,  1263,  1263,  1263,
+   nil,   nil,    33,    33,    33,    33,   nil,   nil,   nil,  1263,
+   nil,   nil,   nil,   nil,    33,    33,   nil,    33,    33,    33,
+    33,    33,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1263,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1263,  1263,   nil,    33,    33,    33,    33,    33,
+    33,    33,    33,    33,    33,    33,    33,    33,    33,   nil,
+   nil,    33,    33,    33,   nil,   nil,    33,   nil,    33,    33,
+   nil,   nil,    33,    33,   nil,    33,  1263,    33,   nil,    33,
+   nil,    33,    33,    33,    33,    33,    33,    33,   nil,    33,
+    33,    33,  1265,   nil,  1265,  1265,  1265,  1265,  1265,   nil,
+   nil,   nil,   nil,   nil,    33,    33,   nil,    33,  1265,    33,
+    34,   nil,   nil,   nil,   nil,   nil,    33,    34,    34,    34,
+    33,   nil,    34,    34,    34,   nil,    34,   nil,   nil,   nil,
+  1265,   nil,   nil,   nil,    34,   nil,    34,    34,   nil,   nil,
+   nil,  1265,  1265,   nil,   nil,   nil,    34,    34,   nil,    34,
+    34,    34,    34,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1265,   nil,    34,    34,    34,
+    34,    34,    34,    34,    34,    34,    34,    34,    34,    34,
+    34,   nil,   nil,    34,    34,    34,   nil,   nil,    34,   nil,
+    34,    34,   nil,   nil,    34,    34,   nil,    34,   nil,    34,
+   nil,    34,   nil,    34,    34,    34,    34,    34,    34,    34,
+   nil,    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,    34,   nil,    34,
+   nil,    34,    35,    35,    35,   nil,    35,   nil,    34,   nil,
+    35,    35,    34,   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,    35,    35,    35,    35,
+   nil,    35,    35,   nil,    35,    35,    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,    35,   nil,
+    35,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,    35,    35,    35,    35,    35,
+    35,   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,    35,    35,    35,    35,   nil,    35,
+    35,   nil,   nil,    35,    35,    36,    36,    36,   nil,    36,
+   nil,   nil,   nil,    36,    36,   nil,   nil,   nil,    36,   nil,
+    36,    36,    36,    36,    36,    36,    36,   nil,   nil,   nil,
+   nil,   nil,    36,    36,    36,    36,    36,    36,    36,   nil,
+   nil,    36,   nil,   nil,   nil,   nil,   nil,   nil,    36,   nil,
+   nil,    36,    36,    36,    36,    36,    36,    36,    36,    36,
+    36,    36,    36,   nil,    36,    36,   nil,    36,    36,    36,
+   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,    36,    36,   nil,   nil,    36,
+   nil,    36,   nil,    36,   nil,    36,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    36,   nil,   nil,   nil,   nil,    36,    36,
+    36,    36,    36,    36,   nil,   nil,   nil,    36,    36,   nil,
+   nil,   nil,   nil,   nil,   nil,    36,   nil,    36,    36,    36,
+    36,   nil,    36,    36,   nil,   nil,    36,    36,    37,    37,
+    37,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,   nil,
+   nil,    37,   nil,    37,    37,    37,    37,    37,    37,    37,
+   nil,   nil,   nil,   nil,   nil,    37,    37,    37,    37,    37,
+    37,    37,   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,
+   nil,    37,   nil,   nil,    37,    37,    37,    37,    37,    37,
+    37,    37,    37,    37,    37,    37,   nil,    37,    37,   nil,
+    37,    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    37,   nil,   nil,    37,   nil,   nil,    37,    37,
+   nil,   nil,    37,   nil,    37,   nil,    37,   nil,    37,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,   nil,   nil,
+   nil,    37,    37,    37,    37,    37,    37,   nil,   nil,   nil,
+    37,    37,   nil,   nil,   nil,   nil,   nil,   nil,    37,   nil,
+    37,    37,    37,    37,   nil,    37,    37,   nil,   nil,    37,
+    37,    47,    47,    47,   nil,    47,   nil,   nil,   nil,    47,
+    47,   nil,   nil,   nil,    47,   nil,    47,    47,    47,    47,
+    47,    47,    47,   nil,   nil,   nil,   nil,   nil,    47,    47,
+    47,    47,    47,    47,    47,   nil,   nil,    47,   nil,   nil,
+   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,    47,    47,
+    47,    47,    47,    47,    47,   nil,    47,    47,    47,   nil,
+    47,    47,   nil,    47,    47,    47,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    47,   nil,   nil,    47,   nil,
+   nil,    47,    47,   nil,   nil,    47,   nil,   nil,   nil,   nil,
+   nil,    47,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    47,
+   nil,   nil,   nil,   nil,    47,    47,    47,    47,    47,    47,
+   nil,   nil,   nil,    47,    47,   nil,   nil,   nil,   nil,   nil,
+   nil,    47,   nil,   nil,    47,    47,    47,   nil,    47,    47,
+   nil,   nil,    47,    47,    48,    48,    48,   nil,    48,   nil,
+   nil,   nil,    48,    48,   nil,   nil,   nil,    48,   nil,    48,
+    48,    48,    48,    48,    48,    48,   nil,   nil,   nil,   nil,
+   nil,    48,    48,    48,    48,    48,    48,    48,   nil,   nil,
+    48,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
+    48,    48,    48,    48,    48,    48,    48,    48,   nil,    48,
+    48,    48,   nil,    48,    48,   nil,    48,    48,    48,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,
+   nil,    48,   nil,   nil,    48,    48,   nil,   nil,    48,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    48,   nil,   nil,   nil,   nil,    48,    48,    48,
+    48,    48,    48,   nil,   nil,   nil,    48,    48,   nil,   nil,
+   nil,   nil,   nil,   nil,    48,   nil,   nil,    48,    48,    48,
+   nil,    48,    48,   nil,   nil,    48,    48,    50,    50,    50,
+   nil,    50,   nil,   nil,   nil,    50,    50,   nil,   nil,   nil,
+    50,   nil,    50,    50,    50,    50,    50,    50,    50,   nil,
+   nil,   nil,   nil,   nil,    50,    50,    50,    50,    50,    50,
+    50,   nil,   nil,    50,   nil,   nil,   nil,   nil,   nil,   nil,
+    50,   nil,   nil,    50,    50,    50,    50,    50,    50,    50,
+    50,   nil,    50,    50,    50,   nil,    50,    50,   nil,    50,
+    50,    50,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    50,   nil,   nil,    50,   nil,   nil,    50,    50,   nil,
+   nil,    50,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,   nil,   nil,
+    50,    50,    50,    50,    50,    50,   nil,   nil,   nil,    50,
+    50,   nil,   nil,   nil,   nil,   nil,   nil,    50,   nil,   nil,
+    50,    50,    50,   nil,    50,    50,   nil,   nil,    50,    50,
+    51,    51,    51,   nil,    51,   nil,   nil,   nil,    51,    51,
+   nil,   nil,   nil,    51,   nil,    51,    51,    51,    51,    51,
+    51,    51,   nil,   nil,   nil,   nil,   nil,    51,    51,    51,
+    51,    51,    51,    51,   nil,   nil,    51,   nil,   nil,   nil,
+   nil,   nil,   nil,    51,   nil,   nil,    51,    51,    51,    51,
+    51,    51,    51,    51,   nil,    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,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    51,   nil,
+   nil,   nil,   nil,    51,    51,    51,    51,    51,    51,   nil,
+   nil,   nil,    51,    51,   nil,   nil,   nil,   nil,   nil,   nil,
+    51,   nil,   nil,    51,    51,    51,   nil,    51,    51,   nil,
+   nil,    51,    51,    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,   nil,
+    53,    53,    53,    53,    53,    53,    53,   nil,   nil,    53,
+   nil,   nil,   nil,   nil,   nil,   nil,    53,   nil,   nil,    53,
+    53,    53,    53,    53,    53,    53,    53,   nil,    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,   nil,
+   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,   nil,   nil,   nil,
+   nil,   nil,   nil,    53,   nil,   nil,    53,    53,    53,    65,
+    53,    53,   nil,   nil,    53,    53,    65,    65,    65,   nil,
+   nil,    65,    65,    65,  1267,    65,  1267,  1267,  1267,  1267,
+  1267,   nil,   nil,    65,   nil,    65,    65,    65,   nil,   nil,
+  1267,   804,   804,   804,   804,    65,    65,   nil,    65,    65,
+    65,    65,    65,   nil,   nil,   nil,   nil,   804,   804,   804,
+   nil,   nil,  1267,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   804,   804,   nil,  1267,  1267,   804,    65,    65,    65,    65,
+    65,    65,    65,    65,    65,    65,    65,    65,    65,    65,
+   nil,   nil,    65,    65,    65,   nil,   nil,    65,   nil,   nil,
+    65,   nil,   nil,    65,    65,   nil,    65,  1267,    65,   nil,
+    65,   nil,    65,    65,    65,    65,    65,    65,    65,   nil,
+    65,   nil,    65,   nil,   804,   804,   804,   804,   804,   804,
+   nil,   nil,   nil,   804,   804,    65,    65,    65,    65,   nil,
+    65,   804,    65,   nil,   804,   804,   804,    65,   804,   804,
+   486,    65,    67,    67,    67,    67,    67,   486,   486,   486,
+    67,    67,   486,   486,   486,    67,   486,    67,    67,    67,
+    67,    67,    67,    67,   486,   486,   486,   486,   nil,    67,
+    67,    67,    67,    67,    67,    67,   486,   486,    67,   486,
+   486,   486,   486,   486,    67,    67,   nil,    67,    67,    67,
+    67,    67,    67,    67,    67,    67,   nil,    67,    67,    67,
+   nil,    67,    67,   nil,    67,    67,    67,   486,   486,   486,
+   486,   486,   486,   486,   486,   486,   486,   486,   486,   486,
+   486,   nil,   nil,   486,   486,   486,    67,   nil,   486,    67,
+   486,   486,    67,    67,   486,   486,    67,   486,    67,   486,
+   nil,   486,    67,   486,   486,   486,   486,   486,   486,   486,
+    67,   486,   486,   486,   nil,    67,    67,    67,    67,    67,
+    67,   nil,   nil,   nil,    67,    67,   486,   486,   nil,   486,
+   nil,   486,    67,   nil,   nil,    67,    67,    67,   486,    67,
+    67,   nil,   486,    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,    68,
+    68,    68,    68,   nil,    68,    68,   nil,    68,    68,    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,    68,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,    68,    68,
+    68,    68,    68,    68,   nil,   nil,   nil,    68,    68,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,   nil,    68,    68,    68,
+    68,   nil,    68,    68,   nil,   nil,    68,    68,    72,    72,
+    72,   nil,    72,   nil,   nil,   nil,    72,    72,   nil,   nil,
+   nil,    72,   nil,    72,    72,    72,    72,    72,    72,    72,
+   nil,   nil,   nil,   nil,   nil,    72,    72,    72,    72,    72,
+    72,    72,   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,
+   nil,    72,   nil,   nil,    72,    72,    72,    72,    72,    72,
+    72,    72,   nil,    72,    72,    72,   nil,    72,    72,   nil,
+    72,    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    72,   nil,   nil,    72,   nil,   nil,    72,    72,
+   nil,   nil,    72,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,   nil,
+   nil,    72,    72,    72,    72,    72,    72,   nil,   nil,   nil,
+    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,
+   nil,    72,    72,    72,   nil,    72,    72,   nil,   nil,    72,
+    72,    73,    73,    73,   nil,    73,   nil,   nil,   nil,    73,
+    73,   nil,   nil,   nil,    73,   nil,    73,    73,    73,    73,
+    73,    73,    73,   nil,   nil,   nil,   nil,   nil,    73,    73,
+    73,    73,    73,    73,    73,   nil,   nil,    73,   nil,   nil,
+   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,    73,    73,
+    73,    73,    73,    73,    73,   nil,    73,    73,    73,   nil,
+    73,    73,   nil,    73,    73,    73,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    73,   nil,   nil,    73,   nil,
+   nil,    73,    73,   nil,   nil,    73,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    73,
+   nil,   nil,   nil,   nil,    73,    73,    73,    73,    73,    73,
+   nil,   nil,   nil,    73,    73,   nil,   nil,   nil,   nil,   nil,
+   nil,    73,   nil,   nil,    73,    73,    73,   nil,    73,    73,
+   nil,   nil,    73,    73,    76,    76,    76,   nil,    76,   nil,
+   nil,   nil,    76,    76,   nil,   nil,   nil,    76,   nil,    76,
+    76,    76,    76,    76,    76,    76,   nil,   nil,   nil,   nil,
+   nil,    76,    76,    76,    76,    76,    76,    76,   nil,   nil,
+    76,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,   nil,
+    76,    76,    76,    76,    76,    76,    76,    76,   nil,    76,
+    76,    76,   nil,    76,    76,   nil,    76,    76,    76,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    76,   nil,
+   nil,    76,   nil,   nil,    76,    76,   nil,   nil,    76,   nil,
+   nil,   nil,   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    76,   nil,   nil,   nil,   nil,    76,    76,    76,
+    76,    76,    76,   nil,   nil,   nil,    76,    76,    76,   nil,
+   nil,   nil,   nil,    76,    76,   nil,   nil,    76,    76,    76,
+   nil,    76,    76,   nil,   nil,    76,    76,   132,   132,   132,
+   132,   132,   nil,   nil,   nil,   132,   132,   nil,   nil,   nil,
+   132,   nil,   132,   132,   132,   132,   132,   132,   132,   nil,
+   nil,   nil,   nil,   nil,   132,   132,   132,   132,   132,   132,
+   132,   nil,   nil,   132,   nil,   nil,   nil,   nil,   nil,   132,
+   132,   132,   132,   132,   132,   132,   132,   132,   132,   132,
+   132,   nil,   132,   132,   132,   nil,   132,   132,   nil,   132,
+   132,   132,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   132,   nil,   nil,   132,   nil,   nil,   132,   132,   nil,
+   nil,   132,   nil,   132,   nil,   nil,   nil,   132,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   132,   nil,   nil,   nil,   nil,
+   132,   132,   132,   132,   132,   132,   nil,   nil,   nil,   132,
+   132,   nil,   nil,   nil,   nil,   nil,   132,   132,   nil,   nil,
+   132,   132,   132,   nil,   132,   132,   nil,   nil,   132,   132,
+   137,   137,   137,   nil,   137,   nil,   nil,   nil,   137,   137,
+   nil,   nil,   nil,   137,   nil,   137,   137,   137,   137,   137,
+   137,   137,   nil,   nil,   nil,   nil,   nil,   137,   137,   137,
+   137,   137,   137,   137,   nil,   nil,   137,   nil,   nil,   nil,
+   nil,   nil,   nil,   137,   nil,   nil,   137,   137,   137,   137,
+   137,   137,   137,   137,   nil,   137,   137,   137,   nil,   137,
+   137,   nil,   137,   137,   137,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   137,   nil,   nil,   137,   nil,   nil,
+   137,   137,   nil,   nil,   137,   nil,   nil,   nil,   nil,   nil,
+   137,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   137,   nil,
+   nil,   nil,   nil,   137,   137,   137,   137,   137,   137,   nil,
+   nil,   nil,   137,   137,   nil,   nil,   nil,   nil,   nil,   nil,
+   137,   nil,   nil,   137,   137,   137,   nil,   137,   137,   nil,
+   nil,   137,   137,   138,   138,   138,   nil,   138,   nil,   nil,
+   nil,   138,   138,   nil,   nil,   nil,   138,   nil,   138,   138,
+   138,   138,   138,   138,   138,   nil,   nil,   nil,   nil,   nil,
+   138,   138,   138,   138,   138,   138,   138,   nil,   nil,   138,
+   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,   138,
+   138,   138,   138,   138,   138,   138,   138,   nil,   138,   138,
+   138,   nil,   138,   138,   nil,   138,   138,   138,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   138,   nil,   nil,
+   138,   nil,   nil,   138,   138,   nil,   nil,   138,   nil,   nil,
+   nil,   nil,   nil,   138,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   138,   nil,   nil,   nil,   nil,   138,   138,   138,   138,
+   138,   138,   nil,   nil,   nil,   138,   138,   nil,   nil,   nil,
+   nil,   nil,   nil,   138,   nil,   nil,   138,   138,   138,   nil,
+   138,   138,   nil,   nil,   138,   138,   139,   139,   139,   nil,
+   139,   nil,   nil,   nil,   139,   139,   nil,   nil,   nil,   139,
+   nil,   139,   139,   139,   139,   139,   139,   139,   nil,   nil,
+   nil,   nil,   nil,   139,   139,   139,   139,   139,   139,   139,
+   nil,   nil,   139,   nil,   nil,   nil,   nil,   nil,   nil,   139,
+   nil,   nil,   139,   139,   139,   139,   139,   139,   139,   139,
+   nil,   139,   139,   139,   nil,   139,   139,   nil,   139,   139,
+   139,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   139,   nil,   nil,   139,   nil,   nil,   139,   139,   nil,   nil,
+   139,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   139,   nil,   nil,   nil,   nil,   139,
+   139,   139,   139,   139,   139,   nil,   nil,   nil,   139,   139,
+   nil,   nil,   nil,   nil,   nil,   nil,   139,   nil,   nil,   139,
+   139,   139,   nil,   139,   139,   nil,   nil,   139,   139,   140,
+   140,   140,   nil,   140,   nil,   nil,   nil,   140,   140,   nil,
+   nil,   nil,   140,   nil,   140,   140,   140,   140,   140,   140,
+   140,   nil,   nil,   nil,   nil,   nil,   140,   140,   140,   140,
+   140,   140,   140,   nil,   nil,   140,   nil,   nil,   nil,   nil,
+   nil,   nil,   140,   nil,   nil,   140,   140,   140,   140,   140,
+   140,   140,   140,   nil,   140,   140,   140,   nil,   140,   140,
+   nil,   140,   140,   140,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   140,   nil,   nil,   140,   nil,   nil,   140,
+   140,   nil,   nil,   140,   nil,   nil,   nil,   nil,   nil,   140,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   140,   nil,   nil,
+   nil,   nil,   140,   140,   140,   140,   140,   140,   nil,   nil,
+   nil,   140,   140,   nil,   nil,   nil,   nil,   nil,   nil,   140,
+   nil,   nil,   140,   140,   140,   nil,   140,   140,   nil,   nil,
+   140,   140,   141,   141,   141,   141,   141,   nil,   nil,   nil,
+   141,   141,   nil,   nil,   nil,   141,   nil,   141,   141,   141,
+   141,   141,   141,   141,   nil,   nil,   nil,   nil,   nil,   141,
+   141,   141,   141,   141,   141,   141,   nil,   nil,   141,   nil,
+   nil,   nil,   nil,   nil,   141,   141,   nil,   141,   141,   141,
+   141,   141,   141,   141,   141,   141,   nil,   141,   141,   141,
+   nil,   141,   141,   nil,   141,   141,   141,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   141,   nil,   nil,   141,
+   nil,   nil,   141,   141,   nil,   nil,   141,   nil,   141,   nil,
+   nil,   nil,   141,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   141,   nil,   nil,   nil,   nil,   141,   141,   141,   141,   141,
+   141,   nil,   nil,   nil,   141,   141,   nil,   nil,   nil,   nil,
+   nil,   nil,   141,   nil,   nil,   141,   141,   141,   nil,   141,
+   141,   nil,   nil,   141,   141,   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,   nil,   226,   226,   226,   226,   226,   226,   226,   nil,
+   nil,   226,   nil,   nil,   nil,   nil,   nil,   nil,   226,   nil,
+   nil,   226,   226,   226,   226,   226,   226,   226,   226,   nil,
+   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,   226,   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,   nil,   nil,   nil,   226,   nil,   nil,   226,   226,
+   226,   nil,   226,   226,   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,   nil,   227,   227,   227,   227,   227,
+   227,   227,   nil,   nil,   227,   nil,   nil,   nil,   nil,   nil,
+   nil,   227,   nil,   nil,   227,   227,   227,   227,   227,   227,
+   227,   227,   nil,   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,   227,   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,   nil,   nil,   nil,   227,   nil,
+   nil,   227,   227,   227,   nil,   227,   227,   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,   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,   228,
+   nil,   nil,   nil,   nil,   228,   228,   228,   228,   228,   228,
+   nil,   nil,   nil,   228,   228,   nil,   nil,   nil,   nil,   nil,
+   nil,   228,   nil,   nil,   228,   228,   228,   nil,   228,   228,
+   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,
+   nil,   229,   229,   229,   229,   229,   229,   229,   nil,   nil,
+   229,   nil,   nil,   nil,   nil,   nil,   nil,   229,   nil,   nil,
+   229,   229,   229,   229,   229,   229,   229,   229,   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   229,   nil,   nil,   229,   229,   229,
+   nil,   229,   229,   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,   nil,   230,   230,   230,   230,   230,   230,
+   230,   nil,   nil,   230,   nil,   nil,   nil,   nil,   nil,   nil,
+   230,   nil,   nil,   230,   230,   230,   230,   230,   230,   230,
+   230,   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   230,   nil,   nil,
+   230,   230,   230,   nil,   230,   230,   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,   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,   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,   231,   nil,   231,   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,   nil,   nil,   nil,
+   231,   nil,   231,   231,   231,   231,   nil,   231,   231,   nil,
+   nil,   231,   231,   244,   244,   244,   nil,   244,   nil,   nil,
+   nil,   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,   244,   nil,   nil,   nil,   nil,   244,   244,   244,   244,
+   244,   244,   nil,   nil,   nil,   244,   244,   nil,   nil,   nil,
+   nil,   nil,   nil,   244,   nil,   nil,   244,   244,   244,   nil,
+   244,   244,   nil,   nil,   244,   244,   245,   245,   245,   nil,
+   245,   nil,   nil,   nil,   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,   245,   nil,   nil,   nil,   nil,   245,
+   245,   245,   245,   245,   245,   nil,   nil,   nil,   245,   245,
+   nil,   nil,   nil,   nil,   nil,   nil,   245,   nil,   nil,   245,
+   245,   245,   nil,   245,   245,   nil,   nil,   245,   245,   246,
+   246,   246,   nil,   246,   nil,   nil,   nil,   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,   246,   nil,   nil,
+   nil,   nil,   246,   246,   246,   246,   246,   246,   nil,   nil,
+   nil,   246,   246,   246,   nil,   nil,   nil,   nil,   nil,   246,
+   nil,   nil,   246,   246,   246,   nil,   246,   246,   nil,   nil,
+   246,   246,   257,   257,   257,   nil,   257,   nil,   nil,   nil,
+   257,   257,   nil,   nil,   nil,   257,   nil,   257,   257,   257,
+   257,   257,   257,   257,   nil,   nil,   nil,   nil,   nil,   257,
+   257,   257,   257,   257,   257,   257,   nil,   nil,   257,   nil,
+   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,   257,
+   257,   257,   257,   257,   257,   257,   nil,   257,   257,   257,
+   nil,   257,   257,   nil,   257,   257,   257,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   257,   nil,   nil,   257,
+   nil,   nil,   257,   257,   nil,   nil,   257,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   257,   nil,   nil,   nil,   nil,   257,   257,   257,   257,   257,
+   257,   nil,   nil,   nil,   257,   257,   nil,   nil,   nil,   nil,
+   nil,   nil,   257,   nil,   nil,   257,   257,   257,   nil,   257,
+   257,   nil,   nil,   257,   257,   264,   264,   264,   nil,   264,
+   nil,   nil,   nil,   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,   nil,
+   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,   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   264,   264,
+   264,   264,   264,   264,   nil,   nil,   nil,   264,   264,   nil,
+   nil,   nil,   nil,   nil,   nil,   264,   nil,   nil,   264,   264,
+   264,   nil,   264,   264,   nil,   nil,   264,   264,   265,   265,
+   265,   nil,   265,   nil,   nil,   nil,   265,   265,   nil,   nil,
+   nil,   265,   nil,   265,   265,   265,   265,   265,   265,   265,
+   nil,   nil,   nil,   nil,   nil,   265,   265,   265,   265,   265,
+   265,   265,   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,
+   nil,   265,   nil,   nil,   265,   265,   265,   265,   265,   265,
+   265,   265,   nil,   265,   265,   265,   nil,   265,   265,   nil,
+   265,   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   265,   nil,   nil,   265,   nil,   nil,   265,   265,
+   nil,   nil,   265,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,   nil,   nil,
+   nil,   265,   265,   265,   265,   265,   265,   nil,   nil,   nil,
+   265,   265,   nil,   nil,   nil,   nil,   nil,   nil,   265,   nil,
+   nil,   265,   265,   265,   nil,   265,   265,   nil,   nil,   265,
+   265,   266,   266,   266,   nil,   266,   nil,   nil,   nil,   266,
+   266,   nil,   nil,   nil,   266,   nil,   266,   266,   266,   266,
+   266,   266,   266,   nil,   nil,   nil,   nil,   nil,   266,   266,
+   266,   266,   266,   266,   266,   nil,   nil,   266,   nil,   nil,
+   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   266,   266,
+   266,   266,   266,   266,   266,   nil,   266,   266,   266,   nil,
+   266,   266,   nil,   266,   266,   266,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   266,   nil,   nil,   266,   nil,
+   nil,   266,   266,   nil,   nil,   266,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   266,
+   nil,   nil,   nil,   nil,   266,   266,   266,   266,   266,   266,
+   nil,   nil,   nil,   266,   266,   nil,   nil,   nil,   nil,   nil,
+   nil,   266,   nil,   nil,   266,   266,   266,   nil,   266,   266,
+   nil,   nil,   266,   266,   267,   267,   267,   nil,   267,   nil,
+   nil,   nil,   267,   267,   nil,   nil,   nil,   267,   nil,   267,
+   267,   267,   267,   267,   267,   267,   nil,   nil,   nil,   nil,
+   nil,   267,   267,   267,   267,   267,   267,   267,   nil,   nil,
+   267,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,   nil,
+   267,   267,   267,   267,   267,   267,   267,   267,   nil,   267,
+   267,   267,   nil,   267,   267,   nil,   267,   267,   267,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   267,   nil,
+   nil,   267,   nil,   nil,   267,   267,   nil,   nil,   267,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   267,   nil,   nil,   nil,   nil,   267,   267,   267,
+   267,   267,   267,   nil,   nil,   nil,   267,   267,   nil,   nil,
+   nil,   nil,   nil,   nil,   267,   nil,   nil,   267,   267,   267,
+   nil,   267,   267,   nil,   nil,   267,   267,   268,   268,   268,
+   nil,   268,   nil,   nil,   nil,   268,   268,   nil,   nil,   nil,
+   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,   268,   268,   268,   268,   268,
+   268,   nil,   268,   268,   268,   nil,   268,   268,   nil,   268,
+   268,   268,   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,   268,   nil,
+   nil,   268,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   268,   nil,   nil,
+   268,   268,   268,   nil,   268,   268,   nil,   nil,   268,   268,
+   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,   nil,   269,   269,   269,
+   269,   269,   269,   269,   nil,   nil,   269,   nil,   nil,   nil,
+   nil,   nil,   nil,   269,   nil,   nil,   269,   269,   269,   269,
+   269,   269,   269,   269,   nil,   269,   269,   269,   nil,   269,
+   269,   nil,   269,   269,   269,   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,   269,   nil,   nil,   269,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,
+   269,   nil,   nil,   269,   269,   269,   nil,   269,   269,   nil,
+   nil,   269,   269,   270,   270,   270,   nil,   270,   nil,   nil,
+   nil,   270,   270,   nil,   nil,   nil,   270,   nil,   270,   270,
+   270,   270,   270,   270,   270,   nil,   nil,   nil,   nil,   nil,
+   270,   270,   270,   270,   270,   270,   270,   nil,   nil,   270,
+   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,   270,
+   270,   270,   270,   270,   270,   270,   270,   nil,   270,   270,
+   270,   nil,   270,   270,   nil,   270,   270,   270,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   270,   nil,   nil,
+   270,   nil,   nil,   270,   270,   nil,   nil,   270,   nil,   nil,
+   nil,   nil,   nil,   270,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   270,   nil,   nil,   nil,   nil,   270,   270,   270,   270,
+   270,   270,   nil,   nil,   nil,   270,   270,   nil,   nil,   nil,
+   nil,   nil,   nil,   270,   nil,   nil,   270,   270,   270,   nil,
+   270,   270,   nil,   nil,   270,   270,   271,   271,   271,   nil,
+   271,   nil,   nil,   nil,   271,   271,   nil,   nil,   nil,   271,
+   nil,   271,   271,   271,   271,   271,   271,   271,   nil,   nil,
+   nil,   nil,   nil,   271,   271,   271,   271,   271,   271,   271,
+   nil,   nil,   271,   nil,   nil,   nil,   nil,   nil,   nil,   271,
+   nil,   nil,   271,   271,   271,   271,   271,   271,   271,   271,
+   nil,   271,   271,   271,   nil,   271,   271,   nil,   271,   271,
+   271,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   271,   nil,   nil,   271,   nil,   nil,   271,   271,   nil,   nil,
+   271,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   271,   nil,   nil,   nil,   nil,   271,
+   271,   271,   271,   271,   271,   nil,   nil,   nil,   271,   271,
+   nil,   nil,   nil,   nil,   nil,   nil,   271,   nil,   nil,   271,
+   271,   271,   nil,   271,   271,   nil,   nil,   271,   271,   272,
+   272,   272,   nil,   272,   nil,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   272,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   272,   nil,   nil,
+   nil,   nil,   272,   272,   272,   272,   272,   272,   nil,   nil,
+   nil,   272,   272,   nil,   nil,   nil,   nil,   nil,   nil,   272,
+   nil,   nil,   272,   272,   272,   nil,   272,   272,   nil,   nil,
+   272,   272,   273,   273,   273,   nil,   273,   nil,   nil,   nil,
+   273,   273,   nil,   nil,   nil,   273,   nil,   273,   273,   273,
+   273,   273,   273,   273,   nil,   nil,   nil,   nil,   nil,   273,
+   273,   273,   273,   273,   273,   273,   nil,   nil,   273,   nil,
+   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,   273,
+   273,   273,   273,   273,   273,   273,   nil,   273,   273,   273,
+   nil,   273,   273,   nil,   273,   273,   273,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   273,   nil,   nil,   273,
+   nil,   nil,   273,   273,   nil,   nil,   273,   nil,   nil,   nil,
+   nil,   nil,   273,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   273,   nil,   nil,   nil,   nil,   273,   273,   273,   273,   273,
+   273,   nil,   nil,   nil,   273,   273,   nil,   nil,   nil,   nil,
+   nil,   nil,   273,   nil,   nil,   273,   273,   273,   nil,   273,
+   273,   nil,   nil,   273,   273,   274,   274,   274,   nil,   274,
+   nil,   nil,   nil,   274,   274,   nil,   nil,   nil,   274,   nil,
+   274,   274,   274,   274,   274,   274,   274,   nil,   nil,   nil,
+   nil,   nil,   274,   274,   274,   274,   274,   274,   274,   nil,
+   nil,   274,   nil,   nil,   nil,   nil,   nil,   nil,   274,   nil,
+   nil,   274,   274,   274,   274,   274,   274,   274,   274,   nil,
+   274,   274,   274,   nil,   274,   274,   nil,   274,   274,   274,
+   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,   274,   274,   nil,   nil,   274,
+   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   274,   nil,   nil,   nil,   nil,   274,   274,
+   274,   274,   274,   274,   nil,   nil,   nil,   274,   274,   nil,
+   nil,   nil,   nil,   nil,   nil,   274,   nil,   nil,   274,   274,
+   274,   nil,   274,   274,   nil,   nil,   274,   274,   275,   275,
+   275,   nil,   275,   nil,   nil,   nil,   275,   275,   nil,   nil,
+   nil,   275,   nil,   275,   275,   275,   275,   275,   275,   275,
+   nil,   nil,   nil,   nil,   nil,   275,   275,   275,   275,   275,
+   275,   275,   nil,   nil,   275,   nil,   nil,   nil,   nil,   nil,
+   nil,   275,   nil,   nil,   275,   275,   275,   275,   275,   275,
+   275,   275,   nil,   275,   275,   275,   nil,   275,   275,   nil,
+   275,   275,   275,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   275,   nil,   nil,   275,   nil,   nil,   275,   275,
+   nil,   nil,   275,   nil,   nil,   nil,   nil,   nil,   275,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,   nil,   nil,
+   nil,   275,   275,   275,   275,   275,   275,   nil,   nil,   nil,
+   275,   275,   nil,   nil,   nil,   nil,   nil,   nil,   275,   nil,
+   nil,   275,   275,   275,   nil,   275,   275,   nil,   nil,   275,
+   275,   276,   276,   276,   nil,   276,   nil,   nil,   nil,   276,
+   276,   nil,   nil,   nil,   276,   nil,   276,   276,   276,   276,
+   276,   276,   276,   nil,   nil,   nil,   nil,   nil,   276,   276,
+   276,   276,   276,   276,   276,   nil,   nil,   276,   nil,   nil,
+   nil,   nil,   nil,   nil,   276,   nil,   nil,   276,   276,   276,
+   276,   276,   276,   276,   276,   nil,   276,   276,   276,   nil,
+   276,   276,   nil,   276,   276,   276,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   276,   nil,   nil,   276,   nil,
+   nil,   276,   276,   nil,   nil,   276,   nil,   nil,   nil,   nil,
+   nil,   276,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   276,
+   nil,   nil,   nil,   nil,   276,   276,   276,   276,   276,   276,
+   nil,   nil,   nil,   276,   276,   nil,   nil,   nil,   nil,   nil,
+   nil,   276,   nil,   nil,   276,   276,   276,   nil,   276,   276,
+   nil,   nil,   276,   276,   277,   277,   277,   nil,   277,   nil,
+   nil,   nil,   277,   277,   nil,   nil,   nil,   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,   277,   277,   277,   277,   277,   277,   nil,   277,
+   277,   277,   nil,   277,   277,   nil,   277,   277,   277,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   277,   nil,
+   nil,   277,   nil,   nil,   277,   277,   nil,   nil,   277,   nil,
+   nil,   nil,   nil,   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,   277,   277,
+   nil,   277,   277,   nil,   nil,   277,   277,   278,   278,   278,
+   nil,   278,   nil,   nil,   nil,   278,   278,   nil,   nil,   nil,
+   278,   nil,   278,   278,   278,   278,   278,   278,   278,   nil,
+   nil,   nil,   nil,   nil,   278,   278,   278,   278,   278,   278,
+   278,   nil,   nil,   278,   nil,   nil,   nil,   nil,   nil,   nil,
+   278,   nil,   nil,   278,   278,   278,   278,   278,   278,   278,
+   278,   nil,   278,   278,   278,   nil,   278,   278,   nil,   278,
+   278,   278,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   278,   nil,   nil,   278,   nil,   nil,   278,   278,   nil,
+   nil,   278,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,   nil,   nil,
+   278,   278,   278,   278,   278,   278,   nil,   nil,   nil,   278,
+   278,   nil,   nil,   nil,   nil,   nil,   nil,   278,   nil,   nil,
+   278,   278,   278,   nil,   278,   278,   nil,   nil,   278,   278,
+   279,   279,   279,   nil,   279,   nil,   nil,   nil,   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,   279,   nil,
+   nil,   nil,   nil,   279,   279,   279,   279,   279,   279,   nil,
+   nil,   nil,   279,   279,   nil,   nil,   nil,   nil,   nil,   nil,
+   279,   nil,   nil,   279,   279,   279,   nil,   279,   279,   nil,
+   nil,   279,   279,   280,   280,   280,   nil,   280,   nil,   nil,
+   nil,   280,   280,   nil,   nil,   nil,   280,   nil,   280,   280,
+   280,   280,   280,   280,   280,   nil,   nil,   nil,   nil,   nil,
+   280,   280,   280,   280,   280,   280,   280,   nil,   nil,   280,
+   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,   nil,   280,
+   280,   280,   280,   280,   280,   280,   280,   nil,   280,   280,
+   280,   nil,   280,   280,   nil,   280,   280,   280,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   280,   nil,   nil,
+   280,   nil,   nil,   280,   280,   nil,   nil,   280,   nil,   nil,
+   nil,   nil,   nil,   280,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   280,   nil,   nil,   nil,   nil,   280,   280,   280,   280,
+   280,   280,   nil,   nil,   nil,   280,   280,   nil,   nil,   nil,
+   nil,   nil,   nil,   280,   nil,   nil,   280,   280,   280,   nil,
+   280,   280,   nil,   nil,   280,   280,   281,   281,   281,   nil,
+   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,   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,   281,   nil,   nil,   nil,   nil,   281,
+   281,   281,   281,   281,   281,   nil,   nil,   nil,   281,   281,
+   nil,   nil,   nil,   nil,   nil,   nil,   281,   nil,   nil,   281,
+   281,   281,   nil,   281,   281,   nil,   nil,   281,   281,   282,
+   282,   282,   nil,   282,   nil,   nil,   nil,   282,   282,   nil,
+   nil,   nil,   282,   nil,   282,   282,   282,   282,   282,   282,
+   282,   nil,   nil,   nil,   nil,   nil,   282,   282,   282,   282,
+   282,   282,   282,   nil,   nil,   282,   nil,   nil,   nil,   nil,
+   nil,   nil,   282,   nil,   nil,   282,   282,   282,   282,   282,
+   282,   282,   282,   nil,   282,   282,   282,   nil,   282,   282,
+   nil,   282,   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   282,   nil,   nil,   282,   nil,   nil,   282,
+   282,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   282,   nil,   nil,
+   nil,   nil,   282,   282,   282,   282,   282,   282,   nil,   nil,
+   nil,   282,   282,   nil,   nil,   nil,   nil,   nil,   nil,   282,
+   nil,   nil,   282,   282,   282,   nil,   282,   282,   nil,   nil,
+   282,   282,   283,   283,   283,   nil,   283,   nil,   nil,   nil,
+   283,   283,   nil,   nil,   nil,   283,   nil,   283,   283,   283,
+   283,   283,   283,   283,   nil,   nil,   nil,   nil,   nil,   283,
+   283,   283,   283,   283,   283,   283,   nil,   nil,   283,   nil,
+   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,   283,
+   283,   283,   283,   283,   283,   283,   nil,   283,   283,   283,
+   nil,   283,   283,   nil,   283,   283,   283,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   283,   nil,   nil,   283,
+   nil,   nil,   283,   283,   nil,   nil,   283,   nil,   nil,   nil,
+   nil,   nil,   283,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   283,   nil,   nil,   nil,   nil,   283,   283,   283,   283,   283,
+   283,   nil,   nil,   nil,   283,   283,   nil,   nil,   nil,   nil,
+   nil,   nil,   283,   nil,   nil,   283,   283,   283,   nil,   283,
+   283,   nil,   nil,   283,   283,   284,   284,   284,   nil,   284,
+   nil,   nil,   nil,   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,   284,   nil,   nil,   nil,   nil,   284,   284,
+   284,   284,   284,   284,   nil,   nil,   nil,   284,   284,   nil,
+   nil,   nil,   nil,   nil,   nil,   284,   nil,   nil,   284,   284,
+   284,   nil,   284,   284,   nil,   nil,   284,   284,   285,   285,
+   285,   nil,   285,   nil,   nil,   nil,   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,   285,   nil,   nil,   nil,
+   nil,   285,   285,   285,   285,   285,   285,   nil,   nil,   nil,
+   285,   285,   nil,   nil,   nil,   nil,   nil,   nil,   285,   nil,
+   nil,   285,   285,   285,   nil,   285,   285,   nil,   nil,   285,
+   285,   290,   290,   290,   nil,   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,   nil,   290,   nil,   nil,   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,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   290,   nil,   nil,   290,   290,   290,   nil,   290,   290,
+   nil,   nil,   290,   290,   314,   314,   314,   nil,   314,   nil,
+   nil,   nil,   314,   314,   nil,   nil,   nil,   314,   nil,   314,
+   314,   314,   314,   314,   314,   314,   nil,   nil,   nil,   nil,
+   nil,   314,   314,   314,   314,   314,   314,   314,   nil,   nil,
+   314,   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,   nil,
+   314,   314,   314,   314,   314,   314,   314,   314,   314,   314,
+   314,   314,   nil,   314,   314,   nil,   314,   314,   314,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   314,   nil,
+   nil,   314,   nil,   nil,   314,   314,   nil,   nil,   314,   nil,
+   314,   nil,   314,   nil,   314,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   314,   nil,   nil,   nil,   nil,   314,   314,   314,
+   314,   314,   314,   nil,   nil,   nil,   314,   314,   nil,   nil,
+   nil,   nil,   nil,   nil,   314,   nil,   314,   314,   314,   314,
+   nil,   314,   314,   nil,   nil,   314,   314,   315,   315,   315,
+   nil,   315,   nil,   nil,   nil,   315,   315,   nil,   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,   315,   315,   315,   315,   nil,   315,   315,   nil,   315,
+   315,   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,   315,   nil,   315,   nil,   315,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   315,   nil,   nil,   nil,   nil,
+   315,   315,   315,   315,   315,   315,   nil,   nil,   nil,   315,
+   315,   nil,   nil,   nil,   nil,   nil,   nil,   315,   nil,   315,
+   315,   315,   315,   nil,   315,   315,   nil,   nil,   315,   315,
+   324,   324,   324,   nil,   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,   nil,   324,   nil,   nil,   324,   324,   324,   324,
+   324,   324,   324,   324,   324,   324,   324,   324,   nil,   324,
+   324,   nil,   324,   324,   324,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   324,   nil,   nil,   324,   nil,   nil,
+   324,   324,   nil,   nil,   324,   nil,   324,   nil,   324,   nil,
+   324,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   324,   nil,
+   nil,   nil,   nil,   324,   324,   324,   324,   324,   324,   nil,
+   nil,   nil,   324,   324,   324,   nil,   nil,   nil,   nil,   nil,
+   324,   nil,   324,   324,   324,   324,   nil,   324,   324,   nil,
+   nil,   324,   324,   331,   331,   331,   nil,   331,   nil,   nil,
+   nil,   331,   331,   nil,   nil,   nil,   331,   nil,   331,   331,
+   331,   331,   331,   331,   331,   nil,   nil,   nil,   nil,   nil,
+   331,   331,   331,   331,   331,   331,   331,   nil,   nil,   331,
+   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,   331,
+   331,   331,   331,   331,   331,   331,   331,   nil,   331,   331,
+   331,   nil,   331,   331,   nil,   331,   331,   331,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   331,   nil,   nil,
+   331,   nil,   nil,   331,   331,   nil,   nil,   331,   nil,   nil,
+   nil,   nil,   nil,   331,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   331,   nil,   nil,   nil,   nil,   331,   331,   331,   331,
+   331,   331,   nil,   nil,   nil,   331,   331,   nil,   nil,   nil,
+   nil,   nil,   nil,   331,   nil,   nil,   331,   331,   331,   nil,
+   331,   331,   nil,   nil,   331,   331,   333,   333,   333,   nil,
+   333,   nil,   nil,   nil,   333,   333,   nil,   nil,   nil,   333,
+   nil,   333,   333,   333,   333,   333,   333,   333,   nil,   nil,
+   nil,   nil,   nil,   333,   333,   333,   333,   333,   333,   333,
+   nil,   nil,   333,   nil,   nil,   nil,   nil,   nil,   nil,   333,
+   nil,   nil,   333,   333,   333,   333,   333,   333,   333,   333,
+   nil,   333,   333,   333,   nil,   333,   333,   nil,   333,   333,
+   333,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   333,   nil,   nil,   333,   nil,   nil,   333,   333,   nil,   nil,
+   333,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   333,   nil,   nil,   nil,   nil,   333,
+   333,   333,   333,   333,   333,   nil,   nil,   nil,   333,   333,
+   nil,   nil,   nil,   nil,   nil,   nil,   333,   nil,   nil,   333,
+   333,   333,   nil,   333,   333,   nil,   nil,   333,   333,   336,
+   336,   336,   nil,   336,   nil,   nil,   nil,   336,   336,   nil,
+   nil,   nil,   336,   nil,   336,   336,   336,   336,   336,   336,
+   336,   nil,   nil,   nil,   nil,   nil,   336,   336,   336,   336,
+   336,   336,   336,   nil,   nil,   336,   nil,   nil,   nil,   nil,
+   nil,   nil,   336,   nil,   nil,   336,   336,   336,   336,   336,
+   336,   336,   336,   nil,   336,   336,   336,   nil,   336,   336,
+   nil,   336,   336,   336,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   336,   nil,   nil,   336,   nil,   nil,   336,
+   336,   nil,   nil,   336,   nil,   nil,   nil,   nil,   nil,   336,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   336,   nil,   nil,
+   nil,   nil,   336,   336,   336,   336,   336,   336,   nil,   nil,
+   nil,   336,   336,   nil,   nil,   nil,   nil,   nil,   nil,   336,
+   nil,   nil,   336,   336,   336,   nil,   336,   336,   nil,   nil,
+   336,   336,   337,   337,   337,   nil,   337,   nil,   nil,   nil,
+   337,   337,   nil,   nil,   nil,   337,   nil,   337,   337,   337,
+   337,   337,   337,   337,   nil,   nil,   nil,   nil,   nil,   337,
+   337,   337,   337,   337,   337,   337,   nil,   nil,   337,   nil,
+   nil,   nil,   nil,   nil,   nil,   337,   nil,   nil,   337,   337,
+   337,   337,   337,   337,   337,   337,   nil,   337,   337,   337,
+   nil,   337,   337,   nil,   337,   337,   337,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   337,   nil,   nil,   337,
+   nil,   nil,   337,   337,   nil,   nil,   337,   nil,   nil,   nil,
+   nil,   nil,   337,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   337,   nil,   nil,   nil,   nil,   337,   337,   337,   337,   337,
+   337,   nil,   nil,   nil,   337,   337,   nil,   nil,   nil,   nil,
+   nil,   nil,   337,   nil,   nil,   337,   337,   337,   nil,   337,
+   337,   nil,   nil,   337,   337,   343,   343,   343,   343,   343,
+   nil,   nil,   nil,   343,   343,   nil,   nil,   nil,   343,   nil,
+   343,   343,   343,   343,   343,   343,   343,   nil,   nil,   nil,
+   nil,   nil,   343,   343,   343,   343,   343,   343,   343,   nil,
+   nil,   343,   nil,   nil,   nil,   nil,   nil,   343,   343,   nil,
+   343,   343,   343,   343,   343,   343,   343,   343,   343,   nil,
+   343,   343,   343,   nil,   343,   343,   nil,   343,   343,   343,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   343,
+   nil,   nil,   343,   nil,   nil,   343,   343,   nil,   nil,   343,
+   nil,   343,   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   343,   nil,   nil,   nil,   nil,   343,   343,
+   343,   343,   343,   343,   nil,   nil,   nil,   343,   343,   nil,
+   nil,   nil,   nil,   nil,   nil,   343,   nil,   nil,   343,   343,
+   343,   nil,   343,   343,   nil,   nil,   343,   343,   379,   379,
+   379,   nil,   379,   nil,   nil,   nil,   379,   379,   nil,   nil,
+   nil,   379,   nil,   379,   379,   379,   379,   379,   379,   379,
+   nil,   nil,   nil,   nil,   nil,   379,   379,   379,   379,   379,
+   379,   379,   nil,   nil,   379,   nil,   nil,   nil,   nil,   nil,
+   nil,   379,   nil,   nil,   379,   379,   379,   379,   379,   379,
+   379,   379,   nil,   379,   379,   379,   nil,   379,   379,   nil,
+   379,   379,   379,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   379,   nil,   nil,   379,   nil,   nil,   379,   379,
+   nil,   nil,   379,   nil,   nil,   nil,   nil,   nil,   379,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   379,   nil,   nil,   nil,
+   nil,   379,   379,   379,   379,   379,   379,   nil,   nil,   nil,
+   379,   379,   nil,   nil,   nil,   nil,   nil,   nil,   379,   nil,
+   nil,   379,   379,   379,   nil,   379,   379,   nil,   nil,   379,
+   379,   381,   381,   381,   nil,   381,   nil,   nil,   nil,   381,
+   381,   nil,   nil,   nil,   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,   381,
+   381,   381,   381,   381,   381,   nil,   381,   381,   381,   nil,
+   381,   381,   nil,   381,   381,   381,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   381,   nil,   nil,   381,   381,
+   nil,   381,   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,   nil,   nil,
+   nil,   381,   nil,   nil,   381,   381,   381,   nil,   381,   381,
+   nil,   nil,   381,   381,   389,   389,   389,   nil,   389,   nil,
+   nil,   nil,   389,   389,   nil,   nil,   nil,   389,   nil,   389,
+   389,   389,   389,   389,   389,   389,   nil,   nil,   nil,   nil,
+   nil,   389,   389,   389,   389,   389,   389,   389,   nil,   nil,
+   389,   nil,   nil,   nil,   nil,   nil,   nil,   389,   nil,   nil,
+   389,   389,   389,   389,   389,   389,   389,   389,   389,   389,
+   389,   389,   nil,   389,   389,   nil,   389,   389,   389,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   389,   nil,
+   nil,   389,   nil,   nil,   389,   389,   nil,   nil,   389,   nil,
+   nil,   nil,   nil,   nil,   389,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   389,   nil,   nil,   nil,   nil,   389,   389,   389,
+   389,   389,   389,   nil,   nil,   nil,   389,   389,   nil,   nil,
+   nil,   nil,   nil,   nil,   389,   nil,   389,   389,   389,   389,
+   nil,   389,   389,   nil,   nil,   389,   389,   394,   394,   394,
+   nil,   394,   nil,   nil,   nil,   394,   394,   nil,   nil,   nil,
+   394,   nil,   394,   394,   394,   394,   394,   394,   394,   nil,
+   nil,   nil,   nil,   nil,   394,   394,   394,   394,   394,   394,
+   394,   nil,   nil,   394,   nil,   nil,   nil,   nil,   nil,   nil,
+   394,   nil,   nil,   394,   394,   394,   394,   394,   394,   394,
+   394,   nil,   394,   394,   394,   nil,   394,   394,   nil,   394,
+   394,   394,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   394,   nil,   nil,   394,   nil,   nil,   394,   394,   nil,
+   nil,   394,   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,   nil,   nil,
+   394,   394,   394,   394,   394,   394,   nil,   nil,   nil,   394,
+   394,   nil,   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,
+   394,   394,   394,   nil,   394,   394,   nil,   nil,   394,   394,
+   415,   415,   415,   nil,   415,   nil,   nil,   nil,   415,   415,
+   nil,   nil,   nil,   415,   nil,   415,   415,   415,   415,   415,
+   415,   415,   nil,   nil,   nil,   nil,   nil,   415,   415,   415,
+   415,   415,   415,   415,   nil,   nil,   415,   nil,   nil,   nil,
+   nil,   nil,   nil,   415,   nil,   nil,   415,   415,   415,   415,
+   415,   415,   415,   415,   nil,   415,   415,   415,   nil,   415,
+   415,   nil,   415,   415,   415,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   415,   nil,   nil,   415,   nil,   nil,
+   415,   415,   nil,   nil,   415,   nil,   nil,   nil,   nil,   nil,
+   415,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   415,   nil,
+   nil,   nil,   nil,   415,   415,   415,   415,   415,   415,   nil,
+   nil,   nil,   415,   415,   nil,   nil,   nil,   nil,   nil,   nil,
+   415,   nil,   nil,   415,   415,   415,   nil,   415,   415,   nil,
+   nil,   415,   415,   461,   461,   461,   nil,   461,   nil,   nil,
+   nil,   461,   461,   nil,   nil,   nil,   461,   nil,   461,   461,
+   461,   461,   461,   461,   461,   nil,   nil,   nil,   nil,   nil,
+   461,   461,   461,   461,   461,   461,   461,   nil,   nil,   461,
+   nil,   nil,   nil,   nil,   nil,   nil,   461,   nil,   nil,   461,
+   461,   461,   461,   461,   461,   461,   461,   nil,   461,   461,
+   461,   nil,   461,   461,   nil,   461,   461,   461,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   461,   nil,   nil,
+   461,   nil,   nil,   461,   461,   nil,   nil,   461,   nil,   nil,
+   nil,   nil,   nil,   461,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   461,   nil,   nil,   nil,   nil,   461,   461,   461,   461,
+   461,   461,   nil,   nil,   nil,   461,   461,   nil,   nil,   nil,
+   nil,   nil,   nil,   461,   nil,   nil,   461,   461,   461,   495,
+   461,   461,   nil,   nil,   461,   461,   495,   495,   495,   nil,
+   nil,   495,   495,   495,  1284,   495,  1284,  1284,  1284,  1284,
+  1284,   nil,   nil,   495,   495,   495,   495,   495,   nil,   nil,
+  1284,   nil,   nil,   nil,   nil,   495,   495,   nil,   495,   495,
+   495,   495,   495,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1284,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1284,  1284,   nil,   495,   495,   495,   495,
+   495,   495,   495,   495,   495,   495,   495,   495,   495,   495,
+   nil,   nil,   495,   495,   495,   nil,   nil,   495,   nil,   nil,
+   495,   nil,   nil,   495,   495,   nil,   495,  1284,   495,   nil,
+   495,   nil,   495,   495,   495,   495,   495,   495,   495,   nil,
+   495,   495,   495,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   495,   495,   495,   495,   nil,
+   495,   496,   495,   nil,   nil,   nil,   nil,   495,   496,   496,
+   496,   495,   nil,   496,   496,   496,   nil,   496,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   496,   496,   496,   496,   496,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   496,   496,   nil,
+   496,   496,   496,   496,   496,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   496,   496,
+   496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
+   496,   496,   nil,   nil,   496,   496,   496,   nil,   nil,   496,
+   nil,   nil,   496,   nil,   nil,   496,   496,   nil,   496,   nil,
+   496,   nil,   496,   nil,   496,   496,   496,   496,   496,   496,
+   496,   nil,   496,   496,   496,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   496,   496,   496,
+   496,   nil,   496,   nil,   496,   nil,   497,   497,   497,   496,
+   497,   nil,   nil,   496,   497,   497,   nil,   nil,   nil,   497,
+   nil,   497,   497,   497,   497,   497,   497,   497,   nil,   nil,
+   nil,   nil,   nil,   497,   497,   497,   497,   497,   497,   497,
+   nil,   nil,   497,   nil,   nil,   nil,   nil,   nil,   nil,   497,
+   nil,   nil,   497,   497,   497,   497,   497,   497,   497,   497,
+   nil,   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,   nil,   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,
+   nil,   nil,   nil,   nil,   nil,   nil,   497,   nil,   nil,   497,
+   497,   497,   nil,   497,   497,   nil,   nil,   497,   497,   523,
+   523,   523,   nil,   523,   nil,   nil,   nil,   523,   523,   nil,
+   nil,   nil,   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,   523,   523,   523,
+   523,   523,   523,   nil,   523,   523,   523,   nil,   523,   523,
+   nil,   523,   523,   523,   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,
+   523,   nil,   nil,   523,   nil,   nil,   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,   nil,   nil,   nil,   523,
+   nil,   nil,   523,   523,   523,   nil,   523,   523,   nil,   nil,
+   523,   523,   536,   536,   536,   nil,   536,   nil,   nil,   nil,
+   536,   536,   nil,   nil,   nil,   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,
+   536,   536,   536,   536,   536,   536,   nil,   536,   536,   536,
+   nil,   536,   536,   nil,   536,   536,   536,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   536,   nil,   nil,   536,
+   nil,   nil,   536,   536,   nil,   nil,   536,   nil,   nil,   nil,
+   nil,   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,   nil,
+   nil,   nil,   536,   nil,   nil,   536,   536,   536,   nil,   536,
+   536,   nil,   nil,   536,   536,   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,   nil,   546,   546,   546,   546,   546,   546,   546,   nil,
+   nil,   546,   nil,   nil,   nil,   nil,   nil,   nil,   546,   nil,
+   nil,   546,   546,   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,   546,   nil,   546,   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,   546,   546,   546,
+   546,   nil,   546,   546,   nil,   nil,   546,   546,   548,   548,
+   548,   nil,   548,   nil,   nil,   nil,   548,   548,   nil,   nil,
+   nil,   548,   nil,   548,   548,   548,   548,   548,   548,   548,
+   nil,   nil,   nil,   nil,   nil,   548,   548,   548,   548,   548,
+   548,   548,   nil,   nil,   548,   nil,   nil,   nil,   nil,   nil,
+   nil,   548,   nil,   nil,   548,   548,   548,   548,   548,   548,
+   548,   548,   nil,   548,   548,   548,   nil,   548,   548,   nil,
+   548,   548,   548,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   548,   nil,   nil,   548,   nil,   nil,   548,   548,
+   nil,   nil,   548,   nil,   nil,   nil,   nil,   nil,   548,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,   nil,   nil,
+   nil,   548,   548,   548,   548,   548,   548,   nil,   nil,   nil,
+   548,   548,   nil,   nil,   nil,   nil,   nil,   nil,   548,   nil,
+   nil,   548,   548,   548,   nil,   548,   548,   nil,   nil,   548,
+   548,   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,   nil,   549,   549,
+   549,   549,   549,   549,   549,   nil,   nil,   549,   nil,   nil,
+   nil,   nil,   nil,   nil,   549,   nil,   nil,   549,   549,   549,
+   549,   549,   549,   549,   549,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   549,   nil,   nil,   549,   549,   549,   nil,   549,   549,
+   nil,   nil,   549,   549,   550,   550,   550,   nil,   550,   nil,
+   nil,   nil,   550,   550,   nil,   nil,   nil,   550,   nil,   550,
+   550,   550,   550,   550,   550,   550,   nil,   nil,   nil,   nil,
+   nil,   550,   550,   550,   550,   550,   550,   550,   nil,   nil,
+   550,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,   nil,
+   550,   550,   550,   550,   550,   550,   550,   550,   nil,   550,
+   550,   550,   nil,   550,   550,   nil,   550,   550,   550,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   550,   nil,
+   nil,   550,   nil,   nil,   550,   550,   nil,   nil,   550,   nil,
+   nil,   nil,   nil,   nil,   550,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   550,   nil,   nil,   nil,   nil,   550,   550,   550,
+   550,   550,   550,   nil,   nil,   nil,   550,   550,   nil,   nil,
+   nil,   nil,   nil,   nil,   550,   nil,   nil,   550,   550,   550,
+   nil,   550,   550,   nil,   nil,   550,   550,   581,   581,   581,
+   nil,   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,   nil,
+   581,   nil,   nil,   581,   581,   581,   581,   581,   581,   581,
+   581,   nil,   581,   581,   581,   nil,   581,   581,   nil,   581,
+   581,   581,   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,   581,   nil,
+   nil,   581,   nil,   nil,   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,   nil,   nil,   nil,   581,   nil,   nil,
+   581,   581,   581,   584,   581,   581,   nil,   nil,   581,   581,
+   584,   584,   584,   nil,   nil,   584,   584,   584,   nil,   584,
+   993,   993,   993,   993,   nil,   nil,   nil,   584,   584,   584,
+   nil,   nil,   nil,   nil,   nil,   nil,   993,   993,   993,   584,
+   584,   nil,   584,   584,   584,   584,   584,   nil,   nil,   993,
+   993,   nil,   nil,   nil,   993,   nil,   nil,   nil,   nil,   nil,
+   746,   nil,   746,   746,   746,   746,   746,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   746,   nil,   nil,   nil,
+   nil,   584,   nil,   nil,   nil,   nil,   nil,   nil,   584,   nil,
+   nil,   nil,   nil,   584,   584,   nil,   nil,   nil,   746,   nil,
+   nil,   nil,   nil,   993,   993,   993,   993,   993,   993,   746,
+   746,   nil,   993,   993,   nil,   584,   584,   nil,   nil,   nil,
+   993,   nil,   nil,   993,   993,   993,   nil,   993,   993,   584,
+   nil,   589,   589,   589,   584,   589,   nil,   nil,   nil,   589,
+   589,   584,   nil,   746,   589,   584,   589,   589,   589,   589,
+   589,   589,   589,   746,   nil,   nil,   nil,   nil,   589,   589,
+   589,   589,   589,   589,   589,   nil,   nil,   589,   nil,   nil,
+   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   589,   589,
+   589,   589,   589,   589,   589,   nil,   589,   589,   589,   nil,
+   589,   589,   nil,   589,   589,   589,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   589,   nil,   nil,   589,   nil,
+   nil,   589,   589,   nil,   nil,   589,   nil,   nil,   nil,   nil,
+   nil,   589,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   589,
+   nil,   nil,   nil,   nil,   589,   589,   589,   589,   589,   589,
+   nil,   nil,   nil,   589,   589,   nil,   nil,   nil,   nil,   nil,
+   nil,   589,   nil,   nil,   589,   589,   589,   nil,   589,   589,
+   nil,   nil,   589,   589,   599,   599,   599,   nil,   599,   nil,
+   nil,   nil,   599,   599,   nil,   nil,   nil,   599,   nil,   599,
+   599,   599,   599,   599,   599,   599,   nil,   nil,   nil,   nil,
+   nil,   599,   599,   599,   599,   599,   599,   599,   nil,   nil,
+   599,   nil,   nil,   nil,   nil,   nil,   nil,   599,   nil,   nil,
+   599,   599,   599,   599,   599,   599,   599,   599,   599,   599,
+   599,   599,   nil,   599,   599,   nil,   599,   599,   599,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   599,   nil,
+   nil,   599,   nil,   nil,   599,   599,   nil,   nil,   599,   nil,
+   599,   nil,   599,   nil,   599,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   599,   nil,   nil,   nil,   nil,   599,   599,   599,
+   599,   599,   599,   nil,   nil,   nil,   599,   599,   nil,   nil,
+   nil,   nil,   nil,   nil,   599,   nil,   599,   599,   599,   599,
+   nil,   599,   599,   nil,   nil,   599,   599,   602,   602,   602,
+   nil,   602,   nil,   nil,   nil,   602,   602,   nil,   nil,   nil,
+   602,   nil,   602,   602,   602,   602,   602,   602,   602,   nil,
+   nil,   nil,   nil,   nil,   602,   602,   602,   602,   602,   602,
+   602,   nil,   nil,   602,   nil,   nil,   nil,   nil,   nil,   nil,
+   602,   nil,   nil,   602,   602,   602,   602,   602,   602,   602,
+   602,   602,   602,   602,   602,   nil,   602,   602,   nil,   602,
+   602,   602,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   602,   nil,   nil,   602,   nil,   nil,   602,   602,   nil,
+   nil,   602,   nil,   nil,   nil,   602,   nil,   602,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   602,   nil,   nil,   nil,   nil,
+   602,   602,   602,   602,   602,   602,   nil,   nil,   nil,   602,
+   602,   nil,   nil,   nil,   nil,   nil,   nil,   602,   nil,   602,
+   602,   602,   602,   nil,   602,   602,   nil,   nil,   602,   602,
+   604,   604,   604,   nil,   604,   nil,   nil,   nil,   604,   604,
+   nil,   nil,   nil,   604,   nil,   604,   604,   604,   604,   604,
+   604,   604,   nil,   nil,   nil,   nil,   nil,   604,   604,   604,
+   604,   604,   604,   604,   nil,   nil,   604,   nil,   nil,   nil,
+   nil,   nil,   nil,   604,   nil,   nil,   604,   604,   604,   604,
+   604,   604,   604,   604,   nil,   604,   604,   604,   nil,   604,
+   604,   nil,   604,   604,   604,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   604,   nil,   nil,   604,   nil,   nil,
+   604,   604,   nil,   nil,   604,   nil,   nil,   nil,   nil,   nil,
+   604,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   604,   nil,
+   nil,   nil,   nil,   604,   604,   604,   604,   604,   604,   nil,
+   nil,   nil,   604,   604,   nil,   nil,   nil,   nil,   nil,   nil,
+   604,   nil,   nil,   604,   604,   604,   nil,   604,   604,   nil,
+   nil,   604,   604,   610,   610,   610,   610,   610,   nil,   nil,
+   nil,   610,   610,   nil,   nil,   nil,   610,   nil,   610,   610,
+   610,   610,   610,   610,   610,   nil,   nil,   nil,   nil,   nil,
+   610,   610,   610,   610,   610,   610,   610,   nil,   nil,   610,
+   nil,   nil,   nil,   nil,   nil,   610,   610,   610,   610,   610,
+   610,   610,   610,   610,   610,   610,   610,   nil,   610,   610,
+   610,   nil,   610,   610,   nil,   610,   610,   610,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   610,   nil,   nil,
+   610,   nil,   nil,   610,   610,   nil,   nil,   610,   nil,   610,
+   nil,   nil,   nil,   610,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   610,   nil,   nil,   nil,   nil,   610,   610,   610,   610,
+   610,   610,   nil,   nil,   nil,   610,   610,   nil,   nil,   nil,
+   nil,   nil,   610,   610,   nil,   nil,   610,   610,   610,   nil,
+   610,   610,   nil,   nil,   610,   610,   620,   620,   620,   nil,
+   620,   nil,   nil,   nil,   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,
+   620,   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,   620,   nil,   620,   nil,   620,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   620,   nil,   nil,   nil,   nil,   620,
+   620,   620,   620,   620,   620,   nil,   nil,   nil,   620,   620,
+   nil,   nil,   nil,   nil,   nil,   nil,   620,   nil,   620,   620,
+   620,   620,   nil,   620,   620,   nil,   nil,   620,   620,   630,
+   630,   630,   nil,   630,   nil,   nil,   nil,   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,   630,   nil,   nil,
+   nil,   nil,   630,   630,   630,   630,   630,   630,   nil,   nil,
+   nil,   630,   630,   nil,   nil,   nil,   nil,   nil,   nil,   630,
+   nil,   nil,   630,   630,   630,   nil,   630,   630,   nil,   nil,
+   630,   630,   633,   633,   633,   nil,   633,   nil,   nil,   nil,
+   633,   633,   nil,   nil,   nil,   633,   nil,   633,   633,   633,
+   633,   633,   633,   633,   nil,   nil,   nil,   nil,   nil,   633,
+   633,   633,   633,   633,   633,   633,   nil,   nil,   633,   nil,
+   nil,   nil,   nil,   nil,   nil,   633,   nil,   nil,   633,   633,
+   633,   633,   633,   633,   633,   633,   nil,   633,   633,   633,
+   nil,   633,   633,   nil,   633,   633,   633,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   633,   nil,   nil,   633,
+   nil,   nil,   633,   633,   nil,   nil,   633,   nil,   nil,   nil,
+   nil,   nil,   633,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   633,   nil,   nil,   nil,   nil,   633,   633,   633,   633,   633,
+   633,   nil,   nil,   nil,   633,   633,   nil,   nil,   nil,   nil,
+   nil,   nil,   633,   nil,   nil,   633,   633,   633,   nil,   633,
+   633,   nil,   nil,   633,   633,   636,   636,   636,   nil,   636,
+   nil,   nil,   nil,   636,   636,   nil,   nil,   nil,   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,   636,   636,   636,   636,   636,   636,   nil,
+   636,   636,   636,   nil,   636,   636,   nil,   636,   636,   636,
+   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,   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,   nil,   nil,   nil,   636,   nil,   nil,   636,   636,
+   636,   nil,   636,   636,   nil,   nil,   636,   636,   641,   641,
+   641,   nil,   641,   nil,   nil,   nil,   641,   641,   nil,   nil,
+   nil,   641,   nil,   641,   641,   641,   641,   641,   641,   641,
+   nil,   nil,   nil,   nil,   nil,   641,   641,   641,   641,   641,
+   641,   641,   nil,   nil,   641,   nil,   nil,   nil,   nil,   nil,
+   nil,   641,   nil,   nil,   641,   641,   641,   641,   641,   641,
+   641,   641,   641,   641,   641,   641,   nil,   641,   641,   nil,
+   641,   641,   641,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   641,   nil,   nil,   641,   nil,   nil,   641,   641,
+   nil,   nil,   641,   nil,   641,   nil,   nil,   nil,   641,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   641,   nil,   nil,   nil,
+   nil,   641,   641,   641,   641,   641,   641,   nil,   nil,   nil,
+   641,   641,   nil,   nil,   nil,   nil,   nil,   nil,   641,   nil,
+   641,   641,   641,   641,   nil,   641,   641,   nil,   nil,   641,
+   641,   644,   644,   644,   nil,   644,   nil,   nil,   nil,   644,
+   644,   nil,   nil,   nil,   644,   nil,   644,   644,   644,   644,
+   644,   644,   644,   nil,   nil,   nil,   nil,   nil,   644,   644,
+   644,   644,   644,   644,   644,   nil,   nil,   644,   nil,   nil,
+   nil,   nil,   nil,   nil,   644,   nil,   nil,   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,   nil,   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,   nil,   nil,   nil,   nil,   nil,
+   nil,   644,   nil,   644,   644,   644,   644,   nil,   644,   644,
+   nil,   nil,   644,   644,   661,   661,   661,   nil,   661,   nil,
+   nil,   nil,   661,   661,   nil,   nil,   nil,   661,   nil,   661,
+   661,   661,   661,   661,   661,   661,   nil,   nil,   nil,   nil,
+   nil,   661,   661,   661,   661,   661,   661,   661,   nil,   nil,
+   661,   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,   nil,
+   661,   661,   661,   661,   661,   661,   661,   661,   nil,   661,
+   661,   661,   nil,   661,   661,   nil,   661,   661,   661,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   661,   nil,
+   nil,   661,   nil,   nil,   661,   661,   nil,   nil,   661,   nil,
+   661,   nil,   nil,   nil,   661,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   661,   nil,   nil,   nil,   nil,   661,   661,   661,
+   661,   661,   661,   nil,   nil,   nil,   661,   661,   nil,   nil,
+   nil,   nil,   nil,   nil,   661,   nil,   nil,   661,   661,   661,
+   nil,   661,   661,   nil,   nil,   661,   661,   662,   662,   662,
+   nil,   662,   nil,   nil,   nil,   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,   662,   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,   662,   nil,   662,   nil,   662,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   662,   nil,   nil,   nil,   nil,
+   662,   662,   662,   662,   662,   662,   nil,   nil,   nil,   662,
+   662,   nil,   nil,   nil,   nil,   nil,   nil,   662,   nil,   662,
+   662,   662,   662,   nil,   662,   662,   nil,   nil,   662,   662,
+   672,   672,   672,   nil,   672,   nil,   nil,   nil,   672,   672,
+   nil,   nil,   nil,   672,   nil,   672,   672,   672,   672,   672,
+   672,   672,   nil,   nil,   nil,   nil,   nil,   672,   672,   672,
+   672,   672,   672,   672,   nil,   nil,   672,   nil,   nil,   nil,
+   nil,   nil,   nil,   672,   nil,   nil,   672,   672,   672,   672,
+   672,   672,   672,   672,   672,   672,   672,   672,   nil,   672,
+   672,   nil,   672,   672,   672,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   672,   nil,   nil,   672,   nil,   nil,
+   672,   672,   nil,   nil,   672,   nil,   672,   nil,   672,   nil,
+   672,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   672,   nil,
+   nil,   nil,   nil,   672,   672,   672,   672,   672,   672,   nil,
+   nil,   nil,   672,   672,   nil,   nil,   nil,   nil,   nil,   nil,
+   672,   nil,   672,   672,   672,   672,   nil,   672,   672,   nil,
+   nil,   672,   672,   708,   708,   708,   708,   708,   nil,   nil,
+   nil,   708,   708,   nil,   nil,   nil,   708,   nil,   708,   708,
+   708,   708,   708,   708,   708,   nil,   nil,   nil,   nil,   nil,
+   708,   708,   708,   708,   708,   708,   708,   nil,   nil,   708,
+   nil,   nil,   nil,   nil,   nil,   708,   708,   nil,   708,   708,
+   708,   708,   708,   708,   708,   708,   708,   nil,   708,   708,
+   708,   nil,   708,   708,   nil,   708,   708,   708,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   708,   nil,   nil,
+   708,   nil,   nil,   708,   708,   nil,   nil,   708,   nil,   708,
+   nil,   nil,   nil,   708,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   708,   nil,   nil,   nil,   nil,   708,   708,   708,   708,
+   708,   708,   nil,   nil,   nil,   708,   708,   nil,   nil,   nil,
+   nil,   nil,   nil,   708,   nil,   nil,   708,   708,   708,   nil,
+   708,   708,   nil,   nil,   708,   708,   710,   710,   710,   nil,
+   710,   nil,   nil,   nil,   710,   710,   nil,   nil,   nil,   710,
+   nil,   710,   710,   710,   710,   710,   710,   710,   nil,   nil,
+   nil,   nil,   nil,   710,   710,   710,   710,   710,   710,   710,
+   nil,   nil,   710,   nil,   nil,   nil,   nil,   nil,   nil,   710,
+   nil,   nil,   710,   710,   710,   710,   710,   710,   710,   710,
+   nil,   710,   710,   710,   nil,   710,   710,   nil,   710,   710,
+   710,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   710,   nil,   nil,   710,   nil,   nil,   710,   710,   nil,   nil,
+   710,   nil,   710,   nil,   nil,   nil,   710,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   710,   nil,   nil,   nil,   nil,   710,
+   710,   710,   710,   710,   710,   nil,   nil,   nil,   710,   710,
+   nil,   nil,   nil,   nil,   nil,   nil,   710,   nil,   nil,   710,
+   710,   710,   nil,   710,   710,   nil,   nil,   710,   710,   711,
+   711,   711,   nil,   711,   nil,   nil,   nil,   711,   711,   nil,
+   nil,   nil,   711,   nil,   711,   711,   711,   711,   711,   711,
+   711,   nil,   nil,   nil,   nil,   nil,   711,   711,   711,   711,
+   711,   711,   711,   nil,   nil,   711,   nil,   nil,   nil,   nil,
+   nil,   nil,   711,   nil,   nil,   711,   711,   711,   711,   711,
+   711,   711,   711,   nil,   711,   711,   711,   nil,   711,   711,
+   nil,   711,   711,   711,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   711,   nil,   nil,   711,   nil,   nil,   711,
+   711,   nil,   nil,   711,   nil,   nil,   nil,   nil,   nil,   711,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   711,   nil,   nil,
+   nil,   nil,   711,   711,   711,   711,   711,   711,   nil,   nil,
+   nil,   711,   711,   nil,   nil,   nil,   nil,   nil,   nil,   711,
+   nil,   nil,   711,   711,   711,   nil,   711,   711,   nil,   nil,
+   711,   711,   712,   712,   712,   nil,   712,   nil,   nil,   nil,
+   712,   712,   nil,   nil,   nil,   712,   nil,   712,   712,   712,
+   712,   712,   712,   712,   nil,   nil,   nil,   nil,   nil,   712,
+   712,   712,   712,   712,   712,   712,   nil,   nil,   712,   nil,
+   nil,   nil,   nil,   nil,   nil,   712,   nil,   nil,   712,   712,
+   712,   712,   712,   712,   712,   712,   712,   712,   712,   712,
+   nil,   712,   712,   nil,   712,   712,   712,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   712,   nil,   nil,   712,
+   nil,   nil,   712,   712,   nil,   nil,   712,   nil,   712,   nil,
+   712,   nil,   712,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   712,   nil,   nil,   nil,   nil,   712,   712,   712,   712,   712,
+   712,   nil,   nil,   nil,   712,   712,   nil,   nil,   nil,   nil,
+   nil,   nil,   712,   nil,   712,   712,   712,   712,   nil,   712,
+   712,   nil,   nil,   712,   712,   715,   715,   715,   715,   715,
+   nil,   nil,   nil,   715,   715,   nil,   nil,   nil,   715,   nil,
+   715,   715,   715,   715,   715,   715,   715,   nil,   nil,   nil,
+   nil,   nil,   715,   715,   715,   715,   715,   715,   715,   nil,
+   nil,   715,   nil,   nil,   nil,   nil,   nil,   715,   715,   nil,
+   715,   715,   715,   715,   715,   715,   715,   715,   715,   nil,
+   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,   nil,   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   715,   nil,   nil,   715,   715,
+   715,   nil,   715,   715,   nil,   nil,   715,   715,   716,   716,
+   716,   nil,   716,   nil,   nil,   nil,   716,   716,   nil,   nil,
+   nil,   716,   nil,   716,   716,   716,   716,   716,   716,   716,
+   nil,   nil,   nil,   nil,   nil,   716,   716,   716,   716,   716,
+   716,   716,   nil,   nil,   716,   nil,   nil,   nil,   nil,   nil,
+   nil,   716,   nil,   nil,   716,   716,   716,   716,   716,   716,
+   716,   716,   nil,   716,   716,   716,   nil,   716,   716,   nil,
+   716,   716,   716,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   716,   nil,   nil,   716,   nil,   nil,   716,   716,
+   nil,   nil,   716,   nil,   nil,   nil,   nil,   nil,   716,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,   nil,   nil,
+   nil,   716,   716,   716,   716,   716,   716,   nil,   nil,   nil,
+   716,   716,   nil,   nil,   nil,   nil,   nil,   nil,   716,   nil,
+   nil,   716,   716,   716,   nil,   716,   716,   nil,   nil,   716,
+   716,   718,   718,   718,   nil,   718,   nil,   nil,   nil,   718,
+   718,   nil,   nil,   nil,   718,   nil,   718,   718,   718,   718,
+   718,   718,   718,   nil,   nil,   nil,   nil,   nil,   718,   718,
+   718,   718,   718,   718,   718,   nil,   nil,   718,   nil,   nil,
+   nil,   nil,   nil,   nil,   718,   nil,   nil,   718,   718,   718,
+   718,   718,   718,   718,   718,   718,   718,   718,   718,   nil,
+   718,   718,   nil,   718,   718,   718,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   718,   nil,   nil,   718,   nil,
+   nil,   718,   718,   nil,   nil,   718,   nil,   718,   nil,   718,
+   nil,   718,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   718,
+   nil,   nil,   nil,   nil,   718,   718,   718,   718,   718,   718,
+   nil,   nil,   nil,   718,   718,   nil,   nil,   nil,   nil,   nil,
+   nil,   718,   nil,   718,   718,   718,   718,   nil,   718,   718,
+   nil,   nil,   718,   718,   719,   719,   719,   nil,   719,   nil,
+   nil,   nil,   719,   719,   nil,   nil,   nil,   719,   nil,   719,
+   719,   719,   719,   719,   719,   719,   nil,   nil,   nil,   nil,
+   nil,   719,   719,   719,   719,   719,   719,   719,   nil,   nil,
+   719,   nil,   nil,   nil,   nil,   nil,   nil,   719,   nil,   nil,
+   719,   719,   719,   719,   719,   719,   719,   719,   719,   719,
+   719,   719,   nil,   719,   719,   nil,   719,   719,   719,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   719,   nil,
+   nil,   719,   nil,   nil,   719,   719,   nil,   nil,   719,   nil,
+   nil,   nil,   719,   nil,   719,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   719,   nil,   nil,   nil,   nil,   719,   719,   719,
+   719,   719,   719,   nil,   nil,   nil,   719,   719,   nil,   nil,
+   nil,   nil,   nil,   nil,   719,   nil,   719,   719,   719,   719,
+   nil,   719,   719,   nil,   nil,   719,   719,   720,   720,   720,
+   nil,   720,   nil,   nil,   nil,   720,   720,   nil,   nil,   nil,
+   720,   nil,   720,   720,   720,   720,   720,   720,   720,   nil,
+   nil,   nil,   nil,   nil,   720,   720,   720,   720,   720,   720,
+   720,   nil,   nil,   720,   nil,   nil,   nil,   nil,   nil,   nil,
+   720,   nil,   nil,   720,   720,   720,   720,   720,   720,   720,
+   720,   nil,   720,   720,   720,   nil,   720,   720,   nil,   720,
+   720,   720,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   720,   nil,   nil,   720,   nil,   nil,   720,   720,   nil,
+   nil,   720,   nil,   nil,   nil,   nil,   nil,   720,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   720,   nil,   nil,   nil,   nil,
+   720,   720,   720,   720,   720,   720,   nil,   nil,   nil,   720,
+   720,   nil,   nil,   nil,   nil,   nil,   nil,   720,   nil,   nil,
+   720,   720,   720,   nil,   720,   720,   nil,   nil,   720,   720,
+   721,   721,   721,   nil,   721,   nil,   nil,   nil,   721,   721,
+   nil,   nil,   nil,   721,   nil,   721,   721,   721,   721,   721,
+   721,   721,   nil,   nil,   nil,   nil,   nil,   721,   721,   721,
+   721,   721,   721,   721,   nil,   nil,   721,   nil,   nil,   nil,
+   nil,   nil,   nil,   721,   nil,   nil,   721,   721,   721,   721,
+   721,   721,   721,   721,   nil,   721,   721,   721,   nil,   721,
+   721,   nil,   721,   721,   721,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   721,   nil,   nil,   721,   nil,   nil,
+   721,   721,   nil,   nil,   721,   nil,   nil,   nil,   nil,   nil,
+   721,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   721,   nil,
+   nil,   nil,   nil,   721,   721,   721,   721,   721,   721,   nil,
+   nil,   nil,   721,   721,   nil,   nil,   nil,   nil,   nil,   nil,
+   721,   nil,   nil,   721,   721,   721,   nil,   721,   721,   nil,
+   nil,   721,   721,   726,   726,   726,   nil,   726,   nil,   nil,
+   nil,   726,   726,   nil,   nil,   nil,   726,   nil,   726,   726,
+   726,   726,   726,   726,   726,   nil,   nil,   nil,   nil,   nil,
+   726,   726,   726,   726,   726,   726,   726,   nil,   nil,   726,
+   nil,   nil,   nil,   nil,   nil,   nil,   726,   nil,   nil,   726,
+   726,   726,   726,   726,   726,   726,   726,   nil,   726,   726,
+   726,   nil,   726,   726,   nil,   726,   726,   726,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   726,   nil,   nil,
+   726,   nil,   nil,   726,   726,   nil,   nil,   726,   nil,   nil,
+   nil,   nil,   nil,   726,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   726,   nil,   nil,   nil,   nil,   726,   726,   726,   726,
+   726,   726,   nil,   nil,   nil,   726,   726,   nil,   nil,   nil,
+   nil,   nil,   nil,   726,   nil,   nil,   726,   726,   726,   nil,
+   726,   726,   nil,   nil,   726,   726,   727,   727,   727,   nil,
+   727,   nil,   nil,   nil,   727,   727,   nil,   nil,   nil,   727,
+   nil,   727,   727,   727,   727,   727,   727,   727,   nil,   nil,
+   nil,   nil,   nil,   727,   727,   727,   727,   727,   727,   727,
+   nil,   nil,   727,   nil,   nil,   nil,   nil,   nil,   nil,   727,
+   nil,   nil,   727,   727,   727,   727,   727,   727,   727,   727,
+   nil,   727,   727,   727,   nil,   727,   727,   nil,   727,   727,
+   727,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   727,   nil,   nil,   727,   nil,   nil,   727,   727,   nil,   nil,
+   727,   nil,   nil,   nil,   nil,   nil,   727,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   727,   nil,   nil,   nil,   nil,   727,
+   727,   727,   727,   727,   727,   nil,   nil,   nil,   727,   727,
+   nil,   nil,   nil,   nil,   nil,   nil,   727,   nil,   nil,   727,
+   727,   727,   nil,   727,   727,   nil,   nil,   727,   727,   734,
+   734,   734,   nil,   734,   nil,   nil,   nil,   734,   734,   nil,
+   nil,   nil,   734,   nil,   734,   734,   734,   734,   734,   734,
+   734,   nil,   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,   nil,   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,   734,   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,   nil,   nil,   nil,   nil,   nil,   nil,   734,
+   nil,   nil,   734,   734,   734,   nil,   734,   734,   nil,   nil,
+   734,   734,   749,   749,   749,   nil,   749,   nil,   nil,   nil,
+   749,   749,   nil,   nil,   nil,   749,   nil,   749,   749,   749,
+   749,   749,   749,   749,   nil,   nil,   nil,   nil,   nil,   749,
+   749,   749,   749,   749,   749,   749,   nil,   nil,   749,   nil,
+   nil,   nil,   nil,   nil,   nil,   749,   nil,   nil,   749,   749,
+   749,   749,   749,   749,   749,   749,   nil,   749,   749,   749,
+   nil,   749,   749,   nil,   749,   749,   749,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   749,   nil,   nil,   749,
+   nil,   nil,   749,   749,   nil,   nil,   749,   nil,   nil,   nil,
+   nil,   nil,   749,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   749,   nil,   nil,   nil,   nil,   749,   749,   749,   749,   749,
+   749,   nil,   nil,   nil,   749,   749,   nil,   nil,   nil,   nil,
+   nil,   nil,   749,   nil,   nil,   749,   749,   749,   nil,   749,
+   749,   nil,   nil,   749,   749,   773,   773,   773,   nil,   773,
+   nil,   nil,   nil,   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,   773,   nil,   nil,   nil,   nil,   773,   773,
+   773,   773,   773,   773,   nil,   nil,   nil,   773,   773,   nil,
+   nil,   nil,   nil,   nil,   nil,   773,   nil,   nil,   773,   773,
+   773,   nil,   773,   773,   nil,   nil,   773,   773,   774,   774,
+   774,   nil,   774,   nil,   nil,   nil,   774,   774,   nil,   nil,
+   nil,   774,   nil,   774,   774,   774,   774,   774,   774,   774,
+   nil,   nil,   nil,   nil,   nil,   774,   774,   774,   774,   774,
+   774,   774,   nil,   nil,   774,   nil,   nil,   nil,   nil,   nil,
+   nil,   774,   nil,   nil,   774,   774,   774,   774,   774,   774,
+   774,   774,   nil,   774,   774,   774,   nil,   774,   774,   nil,
+   774,   774,   774,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   774,   nil,   nil,   774,   nil,   nil,   774,   774,
+   nil,   nil,   774,   nil,   nil,   nil,   nil,   nil,   774,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   774,   nil,   nil,   nil,
+   nil,   774,   774,   774,   774,   774,   774,   nil,   nil,   nil,
+   774,   774,   nil,   nil,   nil,   nil,   nil,   nil,   774,   nil,
+   nil,   774,   774,   774,   nil,   774,   774,   nil,   nil,   774,
+   774,   829,   829,   829,   nil,   829,   nil,   nil,   nil,   829,
+   829,   nil,   nil,   nil,   829,   nil,   829,   829,   829,   829,
+   829,   829,   829,   nil,   nil,   nil,   nil,   nil,   829,   829,
+   829,   829,   829,   829,   829,   nil,   nil,   829,   nil,   nil,
+   nil,   nil,   nil,   nil,   829,   nil,   nil,   829,   829,   829,
+   829,   829,   829,   829,   829,   829,   829,   829,   829,   nil,
+   829,   829,   nil,   829,   829,   829,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   829,   nil,   nil,   829,   nil,
+   nil,   829,   829,   nil,   nil,   829,   nil,   829,   nil,   829,
+   nil,   829,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   829,
+   nil,   nil,   nil,   nil,   829,   829,   829,   829,   829,   829,
+   nil,   nil,   nil,   829,   829,   nil,   nil,   nil,   nil,   nil,
+   nil,   829,   nil,   829,   829,   829,   829,   nil,   829,   829,
+   nil,   nil,   829,   829,   838,   838,   838,   nil,   838,   nil,
+   nil,   nil,   838,   838,   nil,   nil,   nil,   838,   nil,   838,
+   838,   838,   838,   838,   838,   838,   nil,   nil,   nil,   nil,
+   nil,   838,   838,   838,   838,   838,   838,   838,   nil,   nil,
+   838,   nil,   nil,   nil,   nil,   nil,   nil,   838,   nil,   nil,
+   838,   838,   838,   838,   838,   838,   838,   838,   nil,   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,
+   nil,   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,   nil,   nil,
+   nil,   nil,   nil,   nil,   838,   nil,   nil,   838,   838,   838,
+   nil,   838,   838,   nil,   nil,   838,   838,   841,   841,   841,
+   nil,   841,   nil,   nil,   nil,   841,   841,   nil,   nil,   nil,
+   841,   nil,   841,   841,   841,   841,   841,   841,   841,   nil,
+   nil,   nil,   nil,   nil,   841,   841,   841,   841,   841,   841,
+   841,   nil,   nil,   841,   nil,   nil,   nil,   nil,   nil,   nil,
+   841,   nil,   nil,   841,   841,   841,   841,   841,   841,   841,
+   841,   nil,   841,   841,   841,   nil,   841,   841,   nil,   841,
+   841,   841,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   841,   nil,   nil,   841,   nil,   nil,   841,   841,   nil,
+   nil,   841,   nil,   nil,   nil,   nil,   nil,   841,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   841,   nil,   nil,   nil,   nil,
+   841,   841,   841,   841,   841,   841,   nil,   nil,   nil,   841,
+   841,   nil,   nil,   nil,   nil,   nil,   nil,   841,   nil,   nil,
+   841,   841,   841,   nil,   841,   841,   nil,   nil,   841,   841,
+   879,   879,   879,   nil,   879,   nil,   nil,   nil,   879,   879,
+   nil,   nil,   nil,   879,   nil,   879,   879,   879,   879,   879,
+   879,   879,   nil,   nil,   nil,   nil,   nil,   879,   879,   879,
+   879,   879,   879,   879,   nil,   nil,   879,   nil,   nil,   nil,
+   nil,   nil,   nil,   879,   nil,   nil,   879,   879,   879,   879,
+   879,   879,   879,   879,   nil,   879,   879,   879,   nil,   879,
+   879,   nil,   879,   879,   879,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   879,   nil,   nil,   879,   nil,   nil,
+   879,   879,   nil,   nil,   879,   nil,   nil,   nil,   nil,   nil,
+   879,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   879,   nil,
+   nil,   nil,   nil,   879,   879,   879,   879,   879,   879,   nil,
+   nil,   nil,   879,   879,   nil,   nil,   nil,   nil,   nil,   nil,
+   879,   nil,   nil,   879,   879,   879,   nil,   879,   879,   nil,
+   nil,   879,   879,   892,   892,   892,   nil,   892,   nil,   nil,
+   nil,   892,   892,   nil,   nil,   nil,   892,   nil,   892,   892,
+   892,   892,   892,   892,   892,   nil,   nil,   nil,   nil,   nil,
+   892,   892,   892,   892,   892,   892,   892,   nil,   nil,   892,
+   nil,   nil,   nil,   nil,   nil,   nil,   892,   nil,   nil,   892,
+   892,   892,   892,   892,   892,   892,   892,   nil,   892,   892,
+   892,   nil,   892,   892,   nil,   892,   892,   892,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   892,   nil,   nil,
+   892,   nil,   nil,   892,   892,   nil,   nil,   892,   nil,   nil,
+   nil,   nil,   nil,   892,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   892,   nil,   nil,   nil,   nil,   892,   892,   892,   892,
+   892,   892,   nil,   nil,   nil,   892,   892,   nil,   nil,   nil,
+   nil,   nil,   nil,   892,   nil,   nil,   892,   892,   892,   nil,
+   892,   892,   nil,   nil,   892,   892,   908,   908,   908,   nil,
+   908,   nil,   nil,   nil,   908,   908,   nil,   nil,   nil,   908,
+   nil,   908,   908,   908,   908,   908,   908,   908,   nil,   nil,
+   nil,   nil,   nil,   908,   908,   908,   908,   908,   908,   908,
+   nil,   nil,   908,   nil,   nil,   nil,   nil,   nil,   nil,   908,
+   nil,   nil,   908,   908,   908,   908,   908,   908,   908,   908,
+   nil,   908,   908,   908,   nil,   908,   908,   nil,   908,   908,
+   908,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   908,   nil,   nil,   908,   nil,   nil,   908,   908,   nil,   nil,
+   908,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   908,   nil,   nil,   nil,   nil,   908,
+   908,   908,   908,   908,   908,   nil,   nil,   nil,   908,   908,
+   nil,   nil,   nil,   nil,   nil,   nil,   908,   nil,   nil,   908,
+   908,   908,   nil,   908,   908,   nil,   nil,   908,   908,   916,
+   916,   916,   nil,   916,   nil,   nil,   nil,   916,   916,   nil,
+   nil,   nil,   916,   nil,   916,   916,   916,   916,   916,   916,
+   916,   nil,   nil,   nil,   nil,   nil,   916,   916,   916,   916,
+   916,   916,   916,   nil,   nil,   916,   nil,   nil,   nil,   nil,
+   nil,   nil,   916,   nil,   nil,   916,   916,   916,   916,   916,
+   916,   916,   916,   nil,   916,   916,   916,   nil,   916,   916,
+   nil,   916,   916,   916,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   916,   nil,   nil,   916,   nil,   nil,   916,
+   916,   nil,   nil,   916,   nil,   nil,   nil,   nil,   nil,   916,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   916,   nil,   nil,
+   nil,   nil,   916,   916,   916,   916,   916,   916,   nil,   nil,
+   nil,   916,   916,   nil,   nil,   nil,   nil,   nil,   nil,   916,
+   nil,   nil,   916,   916,   916,   nil,   916,   916,   nil,   nil,
+   916,   916,   928,   928,   928,   nil,   928,   nil,   nil,   nil,
+   928,   928,   nil,   nil,   nil,   928,   nil,   928,   928,   928,
+   928,   928,   928,   928,   nil,   nil,   nil,   nil,   nil,   928,
+   928,   928,   928,   928,   928,   928,   nil,   nil,   928,   nil,
+   nil,   nil,   nil,   nil,   nil,   928,   nil,   nil,   928,   928,
+   928,   928,   928,   928,   928,   928,   nil,   928,   928,   928,
+   nil,   928,   928,   nil,   928,   928,   928,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   928,   nil,   nil,   928,
+   nil,   nil,   928,   928,   nil,   nil,   928,   nil,   nil,   nil,
+   nil,   nil,   928,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   928,   nil,   nil,   nil,   nil,   928,   928,   928,   928,   928,
+   928,   nil,   nil,   nil,   928,   928,   nil,   nil,   nil,   nil,
+   nil,   nil,   928,   nil,   nil,   928,   928,   928,   nil,   928,
+   928,   nil,   nil,   928,   928,   929,   929,   929,   nil,   929,
+   nil,   nil,   nil,   929,   929,   nil,   nil,   nil,   929,   nil,
+   929,   929,   929,   929,   929,   929,   929,   nil,   nil,   nil,
+   nil,   nil,   929,   929,   929,   929,   929,   929,   929,   nil,
+   nil,   929,   nil,   nil,   nil,   nil,   nil,   nil,   929,   nil,
+   nil,   929,   929,   929,   929,   929,   929,   929,   929,   nil,
+   929,   929,   929,   nil,   929,   929,   nil,   929,   929,   929,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   929,
+   nil,   nil,   929,   nil,   nil,   929,   929,   nil,   nil,   929,
+   nil,   nil,   nil,   nil,   nil,   929,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   929,   nil,   nil,   nil,   nil,   929,   929,
+   929,   929,   929,   929,   nil,   nil,   nil,   929,   929,   nil,
+   nil,   nil,   nil,   nil,   nil,   929,   nil,   nil,   929,   929,
+   929,   nil,   929,   929,   nil,   nil,   929,   929,   960,   960,
+   960,   nil,   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,
+   nil,   960,   nil,   nil,   960,   960,   960,   960,   960,   960,
+   960,   960,   nil,   960,   960,   960,   nil,   960,   960,   nil,
+   960,   960,   960,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   960,   nil,   nil,   960,   nil,   nil,   960,   960,
+   nil,   nil,   960,   nil,   nil,   nil,   nil,   nil,   960,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   960,   nil,   nil,   nil,
+   nil,   960,   960,   960,   960,   960,   960,   nil,   nil,   nil,
+   960,   960,   nil,   nil,   nil,   nil,   nil,   nil,   960,   nil,
+   nil,   960,   960,   960,   nil,   960,   960,   nil,   nil,   960,
+   960,   961,   961,   961,   nil,   961,   nil,   nil,   nil,   961,
+   961,   nil,   nil,   nil,   961,   nil,   961,   961,   961,   961,
+   961,   961,   961,   nil,   nil,   nil,   nil,   nil,   961,   961,
+   961,   961,   961,   961,   961,   nil,   nil,   961,   nil,   nil,
+   nil,   nil,   nil,   nil,   961,   nil,   nil,   961,   961,   961,
+   961,   961,   961,   961,   961,   nil,   961,   961,   961,   nil,
+   961,   961,   nil,   961,   961,   961,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   961,   nil,   nil,   961,   nil,
+   nil,   961,   961,   nil,   nil,   961,   nil,   nil,   nil,   nil,
+   nil,   961,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   961,
+   nil,   nil,   nil,   nil,   961,   961,   961,   961,   961,   961,
+   nil,   nil,   nil,   961,   961,   nil,   nil,   nil,   nil,   nil,
+   nil,   961,   nil,   nil,   961,   961,   961,   nil,   961,   961,
+   nil,   nil,   961,   961,   962,   962,   962,   nil,   962,   nil,
+   nil,   nil,   962,   962,   nil,   nil,   nil,   962,   nil,   962,
+   962,   962,   962,   962,   962,   962,   nil,   nil,   nil,   nil,
+   nil,   962,   962,   962,   962,   962,   962,   962,   nil,   nil,
+   962,   nil,   nil,   nil,   nil,   nil,   nil,   962,   nil,   nil,
+   962,   962,   962,   962,   962,   962,   962,   962,   nil,   962,
+   962,   962,   nil,   962,   962,   nil,   962,   962,   962,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   962,   nil,
+   nil,   962,   nil,   nil,   962,   962,   nil,   nil,   962,   nil,
+   nil,   nil,   nil,   nil,   962,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   962,   nil,   nil,   nil,   nil,   962,   962,   962,
+   962,   962,   962,   nil,   nil,   nil,   962,   962,   nil,   nil,
+   nil,   nil,   nil,   nil,   962,   nil,   nil,   962,   962,   962,
+   nil,   962,   962,   nil,   nil,   962,   962,   963,   963,   963,
+   nil,   963,   nil,   nil,   nil,   963,   963,   nil,   nil,   nil,
+   963,   nil,   963,   963,   963,   963,   963,   963,   963,   nil,
+   nil,   nil,   nil,   nil,   963,   963,   963,   963,   963,   963,
+   963,   nil,   nil,   963,   nil,   nil,   nil,   nil,   nil,   nil,
+   963,   nil,   nil,   963,   963,   963,   963,   963,   963,   963,
+   963,   nil,   963,   963,   963,   nil,   963,   963,   nil,   963,
+   963,   963,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   963,   nil,   nil,   963,   nil,   nil,   963,   963,   nil,
+   nil,   963,   nil,   nil,   nil,   nil,   nil,   963,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   963,   nil,   nil,   nil,   nil,
+   963,   963,   963,   963,   963,   963,   nil,   nil,   nil,   963,
+   963,   nil,   nil,   nil,   nil,   nil,   nil,   963,   nil,   nil,
+   963,   963,   963,   nil,   963,   963,   nil,   nil,   963,   963,
+   964,   964,   964,   nil,   964,   nil,   nil,   nil,   964,   964,
+   nil,   nil,   nil,   964,   nil,   964,   964,   964,   964,   964,
+   964,   964,   nil,   nil,   nil,   nil,   nil,   964,   964,   964,
+   964,   964,   964,   964,   nil,   nil,   964,   nil,   nil,   nil,
+   nil,   nil,   nil,   964,   nil,   nil,   964,   964,   964,   964,
+   964,   964,   964,   964,   nil,   964,   964,   964,   nil,   964,
+   964,   nil,   964,   964,   964,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   964,   nil,   nil,   964,   nil,   nil,
+   964,   964,   nil,   nil,   964,   nil,   nil,   nil,   nil,   nil,
+   964,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   964,   nil,
+   nil,   nil,   nil,   964,   964,   964,   964,   964,   964,   nil,
+   nil,   nil,   964,   964,   nil,   nil,   nil,   nil,   nil,   nil,
+   964,   nil,   nil,   964,   964,   964,   nil,   964,   964,   nil,
+   nil,   964,   964,   965,   965,   965,   nil,   965,   nil,   nil,
+   nil,   965,   965,   nil,   nil,   nil,   965,   nil,   965,   965,
+   965,   965,   965,   965,   965,   nil,   nil,   nil,   nil,   nil,
+   965,   965,   965,   965,   965,   965,   965,   nil,   nil,   965,
+   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,   nil,   965,
+   965,   965,   965,   965,   965,   965,   965,   nil,   965,   965,
+   965,   nil,   965,   965,   nil,   965,   965,   965,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   965,   nil,   nil,
+   965,   nil,   nil,   965,   965,   nil,   nil,   965,   nil,   nil,
+   nil,   nil,   nil,   965,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   965,   nil,   nil,   nil,   nil,   965,   965,   965,   965,
+   965,   965,   nil,   nil,   nil,   965,   965,   nil,   nil,   nil,
+   nil,   nil,   nil,   965,   nil,   nil,   965,   965,   965,   nil,
+   965,   965,   nil,   nil,   965,   965,   999,   999,   999,   nil,
+   999,   nil,   nil,   nil,   999,   999,   nil,   nil,   nil,   999,
+   nil,   999,   999,   999,   999,   999,   999,   999,   nil,   nil,
+   nil,   nil,   nil,   999,   999,   999,   999,   999,   999,   999,
+   nil,   nil,   999,   nil,   nil,   nil,   nil,   nil,   nil,   999,
+   nil,   nil,   999,   999,   999,   999,   999,   999,   999,   999,
+   nil,   999,   999,   999,   nil,   999,   999,   nil,   999,   999,
+   999,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   999,   nil,   nil,   999,   nil,   nil,   999,   999,   nil,   nil,
+   999,   nil,   nil,   nil,   nil,   nil,   999,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   999,   nil,   nil,   nil,   nil,   999,
+   999,   999,   999,   999,   999,   nil,   nil,   nil,   999,   999,
+   nil,   nil,   nil,   nil,   nil,   nil,   999,   nil,   nil,   999,
+   999,   999,   nil,   999,   999,   nil,   nil,   999,   999,  1005,
+  1005,  1005,   nil,  1005,   nil,   nil,   nil,  1005,  1005,   nil,
+   nil,   nil,  1005,   nil,  1005,  1005,  1005,  1005,  1005,  1005,
+  1005,   nil,   nil,   nil,   nil,   nil,  1005,  1005,  1005,  1005,
+  1005,  1005,  1005,   nil,   nil,  1005,   nil,   nil,   nil,   nil,
+   nil,   nil,  1005,   nil,   nil,  1005,  1005,  1005,  1005,  1005,
+  1005,  1005,  1005,   nil,  1005,  1005,  1005,   nil,  1005,  1005,
+   nil,  1005,  1005,  1005,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1005,   nil,   nil,  1005,   nil,   nil,  1005,
+  1005,   nil,   nil,  1005,   nil,   nil,   nil,   nil,   nil,  1005,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1005,   nil,   nil,
+   nil,   nil,  1005,  1005,  1005,  1005,  1005,  1005,   nil,   nil,
+   nil,  1005,  1005,   nil,   nil,   nil,   nil,   nil,   nil,  1005,
+   nil,   nil,  1005,  1005,  1005,   nil,  1005,  1005,   nil,   nil,
+  1005,  1005,  1031,  1031,  1031,   nil,  1031,   nil,   nil,   nil,
+  1031,  1031,   nil,   nil,   nil,  1031,   nil,  1031,  1031,  1031,
+  1031,  1031,  1031,  1031,   nil,   nil,   nil,   nil,   nil,  1031,
+  1031,  1031,  1031,  1031,  1031,  1031,   nil,   nil,  1031,   nil,
+   nil,   nil,   nil,   nil,   nil,  1031,   nil,   nil,  1031,  1031,
+  1031,  1031,  1031,  1031,  1031,  1031,   nil,  1031,  1031,  1031,
+   nil,  1031,  1031,   nil,  1031,  1031,  1031,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1031,   nil,   nil,  1031,
+   nil,   nil,  1031,  1031,   nil,   nil,  1031,   nil,   nil,   nil,
+   nil,   nil,  1031,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1031,   nil,   nil,   nil,   nil,  1031,  1031,  1031,  1031,  1031,
+  1031,   nil,   nil,   nil,  1031,  1031,   nil,   nil,   nil,   nil,
+   nil,   nil,  1031,   nil,   nil,  1031,  1031,  1031,   nil,  1031,
+  1031,   nil,   nil,  1031,  1031,  1040,  1040,  1040,   nil,  1040,
+   nil,   nil,   nil,  1040,  1040,   nil,   nil,   nil,  1040,   nil,
+  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,   nil,   nil,
+   nil,   nil,  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,
+   nil,  1040,   nil,   nil,   nil,   nil,   nil,   nil,  1040,   nil,
+   nil,  1040,  1040,  1040,  1040,  1040,  1040,  1040,  1040,   nil,
+  1040,  1040,  1040,   nil,  1040,  1040,   nil,  1040,  1040,  1040,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1040,
+   nil,   nil,  1040,   nil,   nil,  1040,  1040,   nil,   nil,  1040,
+   nil,  1040,   nil,   nil,   nil,  1040,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1040,   nil,   nil,   nil,   nil,  1040,  1040,
+  1040,  1040,  1040,  1040,   nil,   nil,   nil,  1040,  1040,   nil,
+   nil,   nil,   nil,   nil,   nil,  1040,   nil,   nil,  1040,  1040,
+  1040,   nil,  1040,  1040,   nil,   nil,  1040,  1040,  1064,  1064,
+  1064,   nil,  1064,   nil,   nil,   nil,  1064,  1064,   nil,   nil,
+   nil,  1064,   nil,  1064,  1064,  1064,  1064,  1064,  1064,  1064,
+   nil,   nil,   nil,   nil,   nil,  1064,  1064,  1064,  1064,  1064,
+  1064,  1064,   nil,   nil,  1064,   nil,   nil,   nil,   nil,   nil,
+   nil,  1064,   nil,   nil,  1064,  1064,  1064,  1064,  1064,  1064,
+  1064,  1064,  1064,  1064,  1064,  1064,   nil,  1064,  1064,   nil,
+  1064,  1064,  1064,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1064,   nil,   nil,  1064,   nil,   nil,  1064,  1064,
+   nil,   nil,  1064,   nil,   nil,   nil,  1064,   nil,  1064,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1064,   nil,   nil,   nil,
+   nil,  1064,  1064,  1064,  1064,  1064,  1064,   nil,   nil,   nil,
+  1064,  1064,   nil,   nil,   nil,   nil,   nil,   nil,  1064,   nil,
+  1064,  1064,  1064,  1064,   nil,  1064,  1064,   nil,   nil,  1064,
+  1064,  1088,  1088,  1088,   nil,  1088,   nil,   nil,   nil,  1088,
+  1088,   nil,   nil,   nil,  1088,   nil,  1088,  1088,  1088,  1088,
+  1088,  1088,  1088,   nil,   nil,   nil,   nil,   nil,  1088,  1088,
+  1088,  1088,  1088,  1088,  1088,   nil,   nil,  1088,   nil,   nil,
+   nil,   nil,   nil,   nil,  1088,   nil,   nil,  1088,  1088,  1088,
+  1088,  1088,  1088,  1088,  1088,   nil,  1088,  1088,  1088,   nil,
+  1088,  1088,   nil,  1088,  1088,  1088,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1088,   nil,   nil,  1088,   nil,
+   nil,  1088,  1088,   nil,   nil,  1088,   nil,   nil,   nil,   nil,
+   nil,  1088,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1088,
+   nil,   nil,   nil,   nil,  1088,  1088,  1088,  1088,  1088,  1088,
+   nil,   nil,   nil,  1088,  1088,   nil,   nil,   nil,   nil,   nil,
+   nil,  1088,   nil,   nil,  1088,  1088,  1088,   nil,  1088,  1088,
+   nil,   nil,  1088,  1088,  1145,  1145,  1145,   nil,  1145,   nil,
+   nil,   nil,  1145,  1145,   nil,   nil,   nil,  1145,   nil,  1145,
+  1145,  1145,  1145,  1145,  1145,  1145,   nil,   nil,   nil,   nil,
+   nil,  1145,  1145,  1145,  1145,  1145,  1145,  1145,   nil,   nil,
+  1145,   nil,   nil,   nil,   nil,   nil,   nil,  1145,   nil,   nil,
+  1145,  1145,  1145,  1145,  1145,  1145,  1145,  1145,   nil,  1145,
+  1145,  1145,   nil,  1145,  1145,   nil,  1145,  1145,  1145,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1145,   nil,
+   nil,  1145,   nil,   nil,  1145,  1145,   nil,   nil,  1145,   nil,
+   nil,   nil,   nil,   nil,  1145,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1145,   nil,   nil,   nil,   nil,  1145,  1145,  1145,
+  1145,  1145,  1145,   nil,   nil,   nil,  1145,  1145,   nil,   nil,
+   nil,   nil,   nil,   nil,  1145,   nil,   nil,  1145,  1145,  1145,
+   nil,  1145,  1145,   nil,   nil,  1145,  1145,  1203,  1203,  1203,
+   nil,  1203,   nil,   nil,   nil,  1203,  1203,   nil,   nil,   nil,
+  1203,   nil,  1203,  1203,  1203,  1203,  1203,  1203,  1203,   nil,
+   nil,   nil,   nil,   nil,  1203,  1203,  1203,  1203,  1203,  1203,
+  1203,   nil,   nil,  1203,   nil,   nil,   nil,   nil,   nil,   nil,
+  1203,   nil,   nil,  1203,  1203,  1203,  1203,  1203,  1203,  1203,
+  1203,   nil,  1203,  1203,  1203,   nil,  1203,  1203,   nil,  1203,
+  1203,  1203,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1203,   nil,   nil,  1203,   nil,   nil,  1203,  1203,   nil,
+   nil,  1203,   nil,   nil,   nil,   nil,   nil,  1203,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1203,   nil,   nil,   nil,   nil,
+  1203,  1203,  1203,  1203,  1203,  1203,   nil,   nil,   nil,  1203,
+  1203,   nil,   nil,   nil,   nil,   nil,   nil,  1203,   nil,   nil,
+  1203,  1203,  1203,   nil,  1203,  1203,   nil,   nil,  1203,  1203,
+  1204,  1204,  1204,   nil,  1204,   nil,   nil,   nil,  1204,  1204,
+   nil,   nil,   nil,  1204,   nil,  1204,  1204,  1204,  1204,  1204,
+  1204,  1204,   nil,   nil,   nil,   nil,   nil,  1204,  1204,  1204,
+  1204,  1204,  1204,  1204,   nil,   nil,  1204,   nil,   nil,   nil,
+   nil,   nil,   nil,  1204,   nil,   nil,  1204,  1204,  1204,  1204,
+  1204,  1204,  1204,  1204,   nil,  1204,  1204,  1204,   nil,  1204,
+  1204,   nil,  1204,  1204,  1204,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1204,   nil,   nil,  1204,   nil,   nil,
+  1204,  1204,   nil,   nil,  1204,   nil,   nil,   nil,   nil,   nil,
+  1204,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1204,   nil,
+   nil,   nil,   nil,  1204,  1204,  1204,  1204,  1204,  1204,   nil,
+   nil,   nil,  1204,  1204,   nil,   nil,   nil,   nil,   nil,   nil,
+  1204,   nil,   nil,  1204,  1204,  1204,   nil,  1204,  1204,   nil,
+   nil,  1204,  1204,  1218,  1218,  1218,   nil,  1218,   nil,   nil,
+   nil,  1218,  1218,   nil,   nil,   nil,  1218,   nil,  1218,  1218,
+  1218,  1218,  1218,  1218,  1218,   nil,   nil,   nil,   nil,   nil,
+  1218,  1218,  1218,  1218,  1218,  1218,  1218,   nil,   nil,  1218,
+   nil,   nil,   nil,   nil,   nil,   nil,  1218,   nil,   nil,  1218,
+  1218,  1218,  1218,  1218,  1218,  1218,  1218,  1218,  1218,  1218,
+  1218,   nil,  1218,  1218,   nil,  1218,  1218,  1218,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1218,   nil,   nil,
+  1218,   nil,   nil,  1218,  1218,   nil,   nil,  1218,   nil,  1218,
+   nil,  1218,   nil,  1218,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1218,   nil,   nil,   nil,   nil,  1218,  1218,  1218,  1218,
+  1218,  1218,   nil,   nil,   nil,  1218,  1218,   nil,   nil,   nil,
+   nil,   nil,   nil,  1218,   nil,  1218,  1218,  1218,  1218,   nil,
+  1218,  1218,   nil,   nil,  1218,  1218,    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,   nil,    40,    40,    40,    40,    40,    40,    40,
+   nil,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,    40,
+   nil,   nil,    40,    40,    40,    40,    40,    40,    40,    40,
+   nil,    40,    40,    40,   nil,    40,    40,   nil,   nil,   nil,
+    40,   nil,   nil,   nil,   nil,   nil,  1075,   nil,  1075,  1075,
+  1075,  1075,  1075,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    40,   nil,  1075,    40,   nil,   nil,    40,    40,   nil,   nil,
+    40,   nil,    40,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1075,   nil,   nil,   nil,   nil,    40,
+    40,    40,    40,    40,    40,  1075,  1075,   nil,    40,    40,
+   nil,   nil,   nil,   nil,   nil,   nil,    40,   nil,   nil,    40,
+    40,    40,   nil,    40,    40,    41,    41,    41,   nil,    41,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,    41,  1075,
+    41,    41,    41,    41,    41,    41,    41,   nil,   nil,  1075,
+   nil,   nil,    41,    41,    41,    41,    41,    41,    41,   nil,
+   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+   nil,    41,    41,    41,    41,    41,    41,    41,    41,   nil,
+    41,    41,    41,   nil,    41,    41,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,  1077,   nil,  1077,  1077,  1077,
+  1077,  1077,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+   nil,  1077,    41,   nil,   nil,    41,    41,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1077,   nil,   nil,   nil,   nil,    41,    41,
+    41,    41,    41,    41,  1077,  1077,   nil,    41,    41,   nil,
+   nil,   nil,    41,   nil,   nil,    41,   nil,   nil,    41,    41,
+    41,   nil,    41,    41,    77,    77,    77,   nil,    77,   nil,
+   nil,   nil,    77,    77,   nil,   nil,   nil,    77,  1077,    77,
+    77,    77,    77,    77,    77,    77,   nil,   nil,  1077,   nil,
+   nil,    77,    77,    77,    77,    77,    77,    77,   nil,   nil,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
+    77,    77,    77,    77,    77,    77,    77,    77,   nil,    77,
+    77,    77,   nil,    77,    77,   nil,   nil,   nil,    77,   nil,
+   nil,   nil,   nil,   nil,  1079,   nil,  1079,  1079,  1079,  1079,
+  1079,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
+  1079,    77,   nil,   nil,    77,    77,   nil,   nil,    77,   nil,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1079,   nil,   nil,   nil,   nil,    77,    77,    77,
+    77,    77,    77,  1079,  1079,   nil,    77,    77,   nil,   nil,
+   nil,   nil,   nil,   nil,    77,   nil,   nil,    77,    77,    77,
+   nil,    77,    77,    78,    78,    78,   nil,    78,   nil,   nil,
+   nil,    78,    78,   nil,   nil,   nil,    78,  1079,    78,    78,
+    78,    78,    78,    78,    78,   nil,   nil,  1079,   nil,   nil,
+    78,    78,    78,    78,    78,    78,    78,   nil,   nil,    78,
+   nil,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,    78,
+    78,    78,    78,    78,    78,    78,    78,   nil,    78,    78,
+    78,   nil,    78,    78,   nil,   nil,   nil,    78,   nil,   nil,
+   nil,   nil,   nil,  1222,   nil,  1222,  1222,  1222,  1222,  1222,
+   nil,   nil,   nil,   nil,    78,   nil,   nil,    78,   nil,  1222,
+    78,   nil,   nil,    78,    78,   nil,   nil,    78,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  1222,   nil,   nil,   nil,   nil,    78,    78,    78,    78,
+    78,    78,  1222,  1222,   nil,    78,    78,   nil,   nil,   nil,
+   nil,   nil,   nil,    78,   nil,   nil,    78,    78,    78,   nil,
+    78,    78,    79,    79,    79,   nil,    79,   nil,   nil,   nil,
+    79,    79,   nil,   nil,   nil,    79,  1222,    79,    79,    79,
+    79,    79,    79,    79,   nil,   nil,  1222,   nil,   nil,    79,
+    79,    79,    79,    79,    79,    79,   nil,   nil,    79,   nil,
+   nil,   nil,   nil,   nil,   nil,    79,   nil,   nil,    79,    79,
+    79,    79,    79,    79,    79,    79,   nil,    79,    79,    79,
+   nil,    79,    79,   nil,   nil,   nil,    79,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    79,   nil,   nil,    79,
+   nil,   nil,    79,    79,   nil,   nil,    79,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    79,    79,    79,    79,    79,
+    79,   nil,   nil,   nil,    79,    79,   nil,   nil,   nil,   nil,
+   nil,   nil,    79,   nil,   nil,    79,    79,    79,   nil,    79,
+    79,   351,   351,   351,   nil,   351,   nil,   nil,   nil,   351,
+   351,   nil,   nil,   nil,   351,   nil,   351,   351,   351,   351,
+   351,   351,   351,   nil,   nil,   nil,   nil,   nil,   351,   351,
+   351,   351,   351,   351,   351,   nil,   nil,   351,   nil,   nil,
+   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,   351,   351,
+   351,   351,   351,   351,   351,   nil,   351,   351,   351,   nil,
+   351,   351,   nil,   nil,   nil,   351,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   351,   nil,   nil,   351,   nil,
+   nil,   351,   351,   nil,   nil,   351,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   351,   351,   351,   351,   351,   351,
+   nil,   nil,   nil,   351,   351,   nil,   nil,   nil,   351,   nil,
+   nil,   351,   nil,   nil,   351,   351,   351,   nil,   351,   351,
+   370,   370,   370,   nil,   370,   nil,   nil,   nil,   370,   370,
+   nil,   nil,   nil,   370,   nil,   370,   370,   370,   370,   370,
+   370,   370,   nil,   nil,   nil,   nil,   nil,   370,   370,   370,
+   370,   370,   370,   370,   nil,   nil,   370,   nil,   nil,   nil,
+   nil,   nil,   nil,   370,   nil,   nil,   370,   370,   370,   370,
+   370,   370,   370,   370,   nil,   370,   370,   370,   nil,   370,
+   370,   nil,   nil,   nil,   370,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   370,   nil,   nil,   370,   nil,   nil,
+   370,   370,   nil,   nil,   370,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   370,   370,   370,   370,   370,   370,   nil,
+   nil,   nil,   370,   370,   nil,   nil,   nil,   nil,   nil,   nil,
+   370,   nil,   nil,   370,   370,   370,   nil,   370,   370,   618,
+   618,   618,   nil,   618,   nil,   nil,   nil,   618,   618,   nil,
+   nil,   nil,   618,   nil,   618,   618,   618,   618,   618,   618,
+   618,   nil,   nil,   nil,   nil,   nil,   618,   618,   618,   618,
+   618,   618,   618,   nil,   nil,   618,   nil,   nil,   nil,   nil,
+   nil,   nil,   618,   nil,   nil,   618,   618,   618,   618,   618,
+   618,   618,   618,   nil,   618,   618,   618,   nil,   618,   618,
+   nil,   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   618,   nil,   nil,   618,   nil,   nil,   618,
+   618,   nil,   nil,   618,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   618,   618,   618,   618,   618,   618,   nil,   nil,
+   nil,   618,   618,   nil,   nil,   nil,   nil,   nil,   nil,   618,
+   nil,   nil,   618,   618,   618,   nil,   618,   618,   627,   627,
+   627,   nil,   627,   nil,   nil,   nil,   627,   627,   nil,   nil,
+   nil,   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,   627,   627,   627,   627,
+   627,   627,   nil,   627,   627,   627,   nil,   627,   627,   nil,
+   nil,   nil,   627,   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,   627,
+   nil,   nil,   627,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   627,   627,   627,   627,   627,   627,   nil,   nil,   nil,
+   627,   627,   nil,   nil,   nil,   nil,   nil,   nil,   627,   nil,
+   nil,   627,   627,   627,   nil,   627,   627,   845,   845,   845,
+   nil,   845,   nil,   nil,   nil,   845,   845,   nil,   nil,   nil,
+   845,   nil,   845,   845,   845,   845,   845,   845,   845,   nil,
+   nil,   nil,   nil,   nil,   845,   845,   845,   845,   845,   845,
+   845,   nil,   nil,   845,   nil,   nil,   nil,   nil,   nil,   nil,
+   845,   nil,   nil,   845,   845,   845,   845,   845,   845,   845,
+   845,   nil,   845,   845,   845,   nil,   845,   845,   nil,   nil,
+   nil,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   845,   845,   845,   845,   845,   845,   nil,   nil,   nil,   845,
+   845,   nil,   nil,   nil,   nil,   nil,   nil,   845,   nil,   nil,
+   845,   845,   845,   nil,   845,   845,   856,   856,   856,   nil,
+   856,   nil,   nil,   nil,   856,   856,   nil,   nil,   nil,   856,
+   nil,   856,   856,   856,   856,   856,   856,   856,   nil,   nil,
+   nil,   nil,   nil,   856,   856,   856,   856,   856,   856,   856,
+   nil,   nil,   856,   nil,   nil,   nil,   nil,   nil,   nil,   856,
+   nil,   nil,   856,   856,   856,   856,   856,   856,   856,   856,
+   nil,   856,   856,   856,   nil,   856,   856,   nil,   nil,   nil,
+   856,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   856,   nil,   nil,   856,   nil,   nil,   856,   856,   nil,   nil,
+   856,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   856,
+   856,   856,   856,   856,   856,   nil,   nil,   nil,   856,   856,
+   nil,   nil,   nil,   nil,   nil,   nil,   856,   nil,   nil,   856,
+   856,   856,   nil,   856,   856,  1070,  1070,  1070,   nil,  1070,
+   nil,   nil,   nil,  1070,  1070,   nil,   nil,   nil,  1070,   nil,
+  1070,  1070,  1070,  1070,  1070,  1070,  1070,   nil,   nil,   nil,
+   nil,   nil,  1070,  1070,  1070,  1070,  1070,  1070,  1070,   nil,
+   nil,  1070,   nil,   nil,   nil,   nil,   nil,   nil,  1070,   nil,
+   nil,  1070,  1070,  1070,  1070,  1070,  1070,  1070,  1070,   nil,
+  1070,  1070,  1070,   nil,  1070,  1070,   nil,   nil,   nil,  1070,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1070,
+   nil,   nil,  1070,   nil,   nil,  1070,  1070,   nil,   nil,  1070,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1070,  1070,
+  1070,  1070,  1070,  1070,   nil,   nil,   nil,  1070,  1070,   nil,
+   nil,   nil,   nil,   nil,   nil,  1070,   nil,   nil,  1070,  1070,
+  1070,   nil,  1070,  1070,  1131,  1131,  1131,   nil,  1131,   nil,
+   nil,   nil,  1131,  1131,   nil,   nil,   nil,  1131,   nil,  1131,
+  1131,  1131,  1131,  1131,  1131,  1131,   nil,   nil,   nil,   nil,
+   nil,  1131,  1131,  1131,  1131,  1131,  1131,  1131,   nil,   nil,
+  1131,   nil,   nil,   nil,   nil,   nil,   nil,  1131,   nil,   nil,
+  1131,  1131,  1131,  1131,  1131,  1131,  1131,  1131,   nil,  1131,
+  1131,  1131,   nil,  1131,  1131,   nil,   nil,   nil,  1131,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1131,   nil,
+   nil,  1131,   nil,   nil,  1131,  1131,   nil,   nil,  1131,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1131,  1131,  1131,
+  1131,  1131,  1131,   nil,   nil,   nil,  1131,  1131,   nil,   nil,
+   nil,   nil,   nil,   nil,  1131,   nil,   nil,  1131,  1131,  1131,
+   nil,  1131,  1131,  1197,  1197,  1197,   nil,  1197,   nil,   nil,
+   nil,  1197,  1197,   nil,   nil,   nil,  1197,   nil,  1197,  1197,
+  1197,  1197,  1197,  1197,  1197,   nil,   nil,   nil,   nil,   nil,
+  1197,  1197,  1197,  1197,  1197,  1197,  1197,   nil,   nil,  1197,
+   nil,   nil,   nil,   nil,   nil,   nil,  1197,   nil,   nil,  1197,
+  1197,  1197,  1197,  1197,  1197,  1197,  1197,   nil,  1197,  1197,
+  1197,   nil,  1197,  1197,   nil,   nil,   nil,  1197,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1197,   nil,   nil,
+  1197,   nil,   nil,  1197,  1197,   nil,   nil,  1197,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1197,  1197,  1197,  1197,
+  1197,  1197,   nil,   nil,   nil,  1197,  1197,   nil,   nil,   nil,
+   nil,   nil,   nil,  1197,   nil,   nil,  1197,  1197,  1197,   nil,
+  1197,  1197,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,    11,    11,   nil,   nil,   nil,    11,
+    11,    11,    11,    11,    11,    11,    11,    11,    11,   nil,
+   nil,   nil,   nil,   nil,    11,    11,    11,    11,    11,    11,
+    11,    11,    11,    11,   nil,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    11,    11,   nil,    11,    11,    11,
+    11,    11,    11,    11,   nil,   nil,    11,    11,   nil,   nil,
+   nil,    11,    11,    11,    11,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    11,    11,
+   nil,    11,    11,    11,    11,    11,    11,    11,    11,    11,
+    11,    11,   nil,   nil,    11,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    11,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    11,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,    12,    12,    12,   nil,
+   nil,   nil,    12,    12,    12,    12,    12,    12,    12,    12,
+    12,    12,   nil,   nil,   nil,   nil,   nil,    12,    12,    12,
+    12,    12,    12,    12,    12,    12,   nil,   nil,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    12,   nil,
+    12,    12,    12,    12,    12,    12,    12,   nil,   nil,    12,
+    12,   nil,   nil,   nil,    12,    12,    12,    12,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    12,    12,   nil,    12,    12,    12,    12,    12,    12,
+    12,    12,    12,    12,    12,   nil,   nil,    12,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    12,    27,    27,
+    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
+    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
+    27,    27,   nil,   nil,   nil,    27,    27,    27,    27,    27,
+    27,    27,    27,    27,    27,   nil,   nil,   nil,   nil,   nil,
+    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
+    27,    27,   nil,    27,   nil,   nil,   nil,   nil,   nil,   nil,
+    27,    27,   nil,    27,    27,    27,    27,    27,    27,    27,
+   nil,   nil,    27,    27,   nil,   nil,   nil,    27,    27,    27,
+    27,   nil,   nil,   nil,   nil,   nil,    27,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    27,    27,   nil,    27,    27,    27,
+    27,    27,    27,    27,    27,    27,    27,    27,   nil,   nil,
+    27,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    27,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   nil,   nil,   nil,   109,   109,
+   109,   109,   109,   109,   109,   109,   109,   109,   nil,   nil,
+   nil,   nil,   nil,   109,   109,   109,   109,   109,   109,   109,
+   109,   109,   109,   109,   109,   nil,   109,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,   109,   nil,   109,   109,   109,   109,
+   109,   109,   109,   nil,   nil,   109,   109,   nil,   nil,   nil,
+   109,   109,   109,   109,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   109,   109,   nil,
+   109,   109,   109,   109,   109,   109,   109,   109,   109,   109,
+   109,   nil,   nil,   109,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   109,   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,   452,   452,   452,   452,   452,   452,   452,   452,   452,
+   452,   nil,   nil,   nil,   nil,   nil,   452,   452,   452,   452,
+   452,   452,   452,   452,   452,   nil,   nil,   452,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   452,   452,   nil,   452,
+   452,   452,   452,   452,   452,   452,   nil,   nil,   452,   452,
+   nil,   nil,   nil,   452,   452,   452,   452,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   452,   452,   nil,   452,   452,   452,   452,   452,   452,   452,
+   452,   452,   452,   452,   nil,   nil,   452,   452,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   452,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   452,   706,   706,   706,
+   706,   706,   706,   706,   706,   706,   706,   706,   706,   706,
+   706,   706,   706,   706,   706,   706,   706,   706,   706,   706,
+   706,   nil,   nil,   nil,   706,   706,   706,   706,   706,   706,
+   706,   706,   706,   706,   nil,   nil,   nil,   nil,   nil,   706,
+   706,   706,   706,   706,   706,   706,   706,   706,   nil,   nil,
+   706,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,
+   706,   nil,   706,   706,   706,   706,   706,   706,   706,   nil,
+   nil,   706,   706,   nil,   nil,   nil,   706,   706,   706,   706,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   706,   706,   nil,   706,   706,   706,   706,
+   706,   706,   706,   706,   706,   706,   706,   nil,   nil,   706,
+   706,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   706,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   706,
+   821,   821,   821,   821,   821,   821,   821,   821,   821,   821,
+   821,   821,   821,   821,   821,   821,   821,   821,   821,   821,
+   821,   821,   821,   821,   nil,   nil,   nil,   821,   821,   821,
+   821,   821,   821,   821,   821,   821,   821,   nil,   nil,   nil,
+   nil,   nil,   821,   821,   821,   821,   821,   821,   821,   821,
+   821,   nil,   nil,   821,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   821,   821,   nil,   821,   821,   821,   821,   821,
+   821,   821,   nil,   nil,   821,   821,   nil,   nil,   nil,   821,
+   821,   821,   821,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   821,   821,   nil,   821,
+   821,   821,   821,   821,   821,   821,   821,   821,   821,   821,
+   nil,   nil,   821,   nil,   nil,   nil,   nil,   553,   553,   553,
+   553,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   821,   553,   553,   553,   553,   nil,   nil,   nil,
+   553,   553,   nil,   nil,   nil,   nil,   553,   553,   nil,   nil,
+   nil,   553,   553,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   553,   nil,   nil,   553,   nil,   nil,   nil,   553,   nil,
+   nil,   553,   nil,   553,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,
+   553,   553,   553,   553,   553,   553,   nil,   nil,   nil,   553,
+   553,   nil,   nil,   nil,   nil,   nil,   nil,   553,   nil,   553,
+   553,   553,   553,   nil,   553,   553,   nil,   nil,   553,   553,
+   554,   554,   554,   554,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   554,   554,   554,   554,
+   nil,   nil,   nil,   554,   554,   nil,   nil,   nil,   nil,   554,
+   554,   nil,   nil,   nil,   554,   554,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   554,   nil,   nil,   554,   nil,   nil,
+   nil,   554,   nil,   nil,   554,   nil,   554,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   554,
+   nil,   nil,   nil,   554,   554,   554,   554,   554,   554,   nil,
+   nil,   nil,   554,   554,   nil,   nil,   nil,   nil,   nil,   nil,
+   554,   nil,   554,   554,   554,   554,   nil,   554,   554,   nil,
+   nil,   554,   554,   786,   786,   786,   786,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   786,
+   786,   786,   786,   nil,   nil,   nil,   786,   nil,   nil,   nil,
+   nil,   nil,   786,   786,   nil,   nil,   nil,   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,   nil,   786,   nil,   nil,   786,   nil,   786,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   786,   nil,   nil,   nil,   786,   786,   786,   786,
+   786,   786,   nil,   nil,   nil,   786,   786,   786,   nil,   nil,
+   nil,   nil,   nil,   786,   nil,   nil,   786,   786,   786,   nil,
+   786,   786,   nil,   nil,   786,   786,   794,   794,   794,   794,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   794,   794,   794,   794,   nil,   nil,   nil,   794,
+   nil,   nil,   nil,   nil,   nil,   794,   794,   nil,   nil,   nil,
+   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,   nil,   794,   nil,   nil,
+   794,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   794,   nil,   nil,   nil,   794,
+   794,   794,   794,   794,   794,   nil,   nil,   nil,   794,   794,
+   nil,   nil,   nil,   nil,   nil,   nil,   794,   nil,   nil,   794,
+   794,   794,   nil,   794,   794,   nil,   nil,   794,   794,   967,
+   967,   967,   967,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   967,   967,   967,   967,   nil,
+   nil,   nil,   967,   nil,   nil,   nil,   nil,   nil,   967,   967,
+   nil,   nil,   nil,   967,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   967,   nil,   nil,   967,   nil,   nil,   nil,
+   967,   nil,   nil,   967,   nil,   967,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   967,   nil,
+   nil,   nil,   967,   967,   967,   967,   967,   967,   nil,   nil,
+   nil,   967,   967,   nil,   nil,   nil,   nil,   nil,   nil,   967,
+   nil,   nil,   967,   967,   967,   nil,   967,   967,   nil,   nil,
+   967,   967,   969,   969,   969,   969,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   969,   969,
+   969,   969,   nil,   nil,   nil,   969,   nil,   nil,   nil,   nil,
+   nil,   969,   969,   nil,   nil,   nil,   969,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   969,   nil,   nil,   969,
+   nil,   nil,   nil,   969,   nil,   nil,   969,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   969,   nil,   nil,   nil,   969,   969,   969,   969,   969,
+   969,   nil,   nil,   nil,   969,   969,   nil,   nil,   nil,   nil,
+   nil,   nil,   969,   nil,   nil,   969,   969,   969,   nil,   969,
+   969,   nil,   nil,   969,   969,   972,   972,   972,   972,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   972,   972,   972,   972,   nil,   nil,   nil,   972,   972,
+   nil,   nil,   nil,   nil,   972,   972,   nil,   nil,   nil,   972,
+   972,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   972,
+   nil,   nil,   972,   nil,   nil,   nil,   972,   nil,   nil,   972,
+   nil,   972,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   972,   nil,   nil,   nil,   972,   972,
+   972,   972,   972,   972,   nil,   nil,   nil,   972,   972,   nil,
+   nil,   nil,   nil,   nil,   nil,   972,   nil,   972,   972,   972,
+   972,   nil,   972,   972,   nil,   nil,   972,   972,   973,   973,
+   973,   973,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   973,   973,   973,   973,   nil,   nil,
+   nil,   973,   973,   nil,   nil,   nil,   nil,   973,   973,   nil,
+   nil,   nil,   973,   973,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   973,   nil,   nil,   973,   nil,   nil,   nil,   973,
+   nil,   nil,   973,   nil,   973,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   973,   nil,   nil,
+   nil,   973,   973,   973,   973,   973,   973,   nil,   nil,   nil,
+   973,   973,   nil,   nil,   nil,   nil,   nil,   nil,   973,   nil,
+   973,   973,   973,   973,   nil,   973,   973,   nil,   nil,   973,
+   973,   979,   979,   979,   979,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   979,   979,   979,
+   979,   nil,   nil,   nil,   979,   nil,   nil,   nil,   nil,   nil,
+   979,   979,   nil,   nil,   nil,   979,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   979,   nil,   nil,   979,   nil,
+   nil,   nil,   979,   nil,   nil,   979,   nil,   979,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   979,   nil,   nil,   nil,   979,   979,   979,   979,   979,   979,
+   nil,   nil,   nil,   979,   979,   nil,   nil,   nil,   nil,   nil,
+   nil,   979,   nil,   nil,   979,   979,   979,   nil,   979,   979,
+   nil,   nil,   979,   979,   985,   985,   985,   985,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   985,   985,   985,   985,   nil,   nil,   nil,   985,   nil,   nil,
+   nil,   nil,   nil,   985,   985,   nil,   nil,   nil,   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,   nil,   985,   nil,   nil,   985,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   985,   nil,   nil,   nil,   985,   985,   985,
+   985,   985,   985,   nil,   nil,   nil,   985,   985,   nil,   nil,
+   nil,   nil,   nil,   nil,   985,   nil,   nil,   985,   985,   985,
+   nil,   985,   985,   nil,   nil,   985,   985,   986,   986,   986,
+   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   986,   986,   986,   986,   nil,   nil,   nil,
+   986,   nil,   nil,   nil,   nil,   nil,   986,   986,   nil,   nil,
+   nil,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   986,   nil,   nil,   986,   nil,   nil,   nil,   986,   nil,
+   nil,   986,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,   nil,
+   986,   986,   986,   986,   986,   986,   nil,   nil,   nil,   986,
+   986,   nil,   nil,   nil,   nil,   nil,   nil,   986,   nil,   nil,
+   986,   986,   986,   nil,   986,   986,   nil,   nil,   986,   986,
+  1038,  1038,  1038,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1038,  1038,  1038,  1038,
+   nil,   nil,   nil,  1038,  1038,   nil,   nil,   nil,   nil,  1038,
+  1038,   nil,   nil,   nil,  1038,  1038,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1038,   nil,   nil,  1038,   nil,   nil,
+   nil,  1038,   nil,   nil,  1038,   nil,  1038,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1038,
+   nil,   nil,   nil,  1038,  1038,  1038,  1038,  1038,  1038,   nil,
+   nil,   nil,  1038,  1038,   nil,   nil,   nil,   nil,   nil,   nil,
+  1038,   nil,  1038,  1038,  1038,  1038,   nil,  1038,  1038,   nil,
+   nil,  1038,  1038,  1170,  1170,  1170,  1170,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1170,
+  1170,  1170,  1170,   nil,   nil,   nil,  1170,   nil,   nil,   nil,
+   nil,   nil,  1170,  1170,   nil,   nil,   nil,  1170,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1170,   nil,   nil,
+  1170,   nil,   nil,   nil,  1170,   nil,   nil,  1170,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1170,   nil,   nil,   nil,  1170,  1170,  1170,  1170,
+  1170,  1170,   nil,   nil,   nil,  1170,  1170,   nil,   nil,   nil,
+   nil,   nil,   nil,  1170,   nil,   nil,  1170,  1170,  1170,   nil,
+  1170,  1170,   nil,   nil,  1170,  1170,  1178,  1178,  1178,  1178,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1178,  1178,  1178,  1178,   nil,   nil,   nil,  1178,
+   nil,   nil,   nil,   nil,   nil,  1178,  1178,   nil,   nil,   nil,
+  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1178,   nil,   nil,  1178,   nil,   nil,   nil,  1178,   nil,   nil,
+  1178,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1178,   nil,   nil,   nil,  1178,
+  1178,  1178,  1178,  1178,  1178,   nil,   nil,   nil,  1178,  1178,
+   nil,   nil,   nil,   nil,   nil,   nil,  1178,   nil,   nil,  1178,
+  1178,  1178,   nil,  1178,  1178,   nil,   nil,  1178,  1178,  1182,
+  1182,  1182,  1182,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  1182,  1182,  1182,  1182,   nil,
+   nil,   nil,  1182,   nil,   nil,   nil,   nil,   nil,  1182,  1182,
+   nil,   nil,   nil,  1182,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,  1182,   nil,   nil,  1182,   nil,   nil,   nil,
+  1182,   nil,   nil,  1182,   nil,  1182,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1182,   nil,
+   nil,   nil,  1182,  1182,  1182,  1182,  1182,  1182,   nil,   nil,
+   nil,  1182,  1182,   nil,   nil,   nil,   nil,   nil,   nil,  1182,
+   nil,   nil,  1182,  1182,  1182,   nil,  1182,  1182,   nil,   nil,
+  1182,  1182,  1259,  1259,  1259,  1259,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1259,  1259,
+  1259,  1259,   nil,   nil,   nil,  1259,   nil,   nil,   nil,   nil,
+   nil,  1259,  1259,   nil,   nil,   nil,  1259,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   994,   994,   994,   994,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1259,   nil,   nil,  1259,
+   994,   994,   994,  1259,   nil,   nil,  1259,   nil,   nil,   nil,
+   nil,   nil,   nil,   994,   994,   nil,   nil,   nil,   994,   nil,
+   nil,  1259,   nil,   nil,   nil,  1259,  1259,  1259,  1259,  1259,
+  1259,   nil,   nil,   nil,  1259,  1259,   nil,   nil,   nil,   nil,
+   nil,   nil,  1259,   nil,   nil,  1259,  1259,  1259,   nil,  1259,
+  1259,   nil,   nil,  1259,  1259,   nil,   nil,   240,   nil,   240,
+   240,   240,   240,   240,   nil,   nil,   nil,   994,   994,   994,
+   994,   994,   994,   240,   nil,   nil,   994,   994,   nil,   nil,
+   nil,   nil,   nil,   nil,   994,   nil,   nil,   994,   994,   994,
+   nil,   994,   994,   nil,   241,   240,   241,   241,   241,   241,
+   241,   nil,   nil,   nil,   240,   240,   240,   240,   nil,   417,
+   241,   417,   417,   417,   417,   417,   nil,   679,   nil,   679,
+   679,   679,   679,   679,   nil,   417,   nil,   nil,   nil,   nil,
+   nil,   nil,   241,   679,   nil,   nil,   nil,   nil,   nil,   nil,
+   240,   241,   241,   241,   241,   nil,   nil,   417,   417,   nil,
+   240,   nil,   nil,   nil,   nil,   679,   417,   417,   417,   417,
+   nil,   nil,   nil,   nil,   679,   679,   679,   679,   742,   nil,
+   742,   742,   742,   742,   742,   nil,   nil,   241,   nil,   nil,
+   nil,   nil,   nil,   nil,   742,   nil,   nil,   241,   nil,   nil,
+   nil,   744,   417,   744,   744,   744,   744,   744,   nil,   nil,
+   679,   nil,   417,   nil,   nil,   nil,   742,   744,   nil,   nil,
+   679,   nil,   nil,   nil,   nil,   742,   742,   742,   742,  1073,
+   nil,  1073,  1073,  1073,  1073,  1073,   nil,   nil,   nil,   744,
+   nil,   nil,   nil,   nil,   nil,  1073,   nil,   nil,   744,   744,
+   744,   744,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   742,   nil,   nil,   nil,   nil,   nil,  1073,   nil,   nil,
+   nil,   742,   nil,   nil,   nil,   nil,  1073,  1073,  1073,  1073,
+   nil,   nil,   nil,   nil,   744,   232,   232,   nil,   nil,   232,
+   nil,   nil,   nil,   nil,   744,   nil,   nil,   nil,   232,   232,
+   nil,   232,   232,   232,   232,   232,   232,   232,   nil,   nil,
+   232,   232,  1073,   nil,   nil,   232,   232,   232,   232,   nil,
+   nil,   nil,  1073,   nil,   232,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   232,   232,   nil,   232,   232,   232,   232,   232,
+   232,   232,   232,   232,   232,   232,   nil,   nil,   232,   nil,
+   nil,   nil,   nil,   233,   233,   nil,   nil,   233,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   233,   233,   232,   233,
+   233,   233,   233,   233,   233,   233,   nil,   nil,   233,   233,
+   nil,   nil,   nil,   233,   233,   233,   233,   nil,   nil,   nil,
+   nil,   nil,   233,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   233,   233,   nil,   233,   233,   233,   233,   233,   233,   233,
+   233,   233,   233,   233,   nil,   nil,   233,   nil,   nil,   nil,
+   nil,   310,   310,   nil,   nil,   310,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   310,   310,   233,   310,   310,   310,
+   310,   310,   310,   310,   nil,   nil,   310,   310,   nil,   nil,
+   nil,   310,   310,   310,   310,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   310,   310,
+   nil,   310,   310,   310,   310,   310,   310,   310,   310,   310,
+   310,   310,   nil,   nil,   310,   nil,   nil,   nil,   nil,   544,
+   544,   nil,   nil,   544,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   544,   544,   310,   544,   544,   544,   544,   544,
+   544,   544,   nil,   nil,   544,   544,   nil,   nil,   nil,   544,
+   544,   544,   544,   nil,   nil,   nil,   nil,   nil,   544,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   544,   544,   nil,   544,
+   544,   544,   544,   544,   544,   544,   544,   544,   544,   544,
+   nil,   nil,   544,   nil,   nil,   nil,   nil,   545,   545,   nil,
+   nil,   545,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   545,   545,   544,   545,   545,   545,   545,   545,   545,   545,
+   nil,   nil,   545,   545,   nil,   nil,   nil,   545,   545,   545,
+   545,   nil,   nil,   nil,   nil,   nil,   545,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   545,   545,   nil,   545,   545,   545,
+   545,   545,   545,   545,   545,   545,   545,   545,   nil,   nil,
+   545,   nil,   nil,   nil,   nil,   621,   621,   nil,   nil,   621,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   621,   621,
+   545,   621,   621,   621,   621,   621,   621,   621,   nil,   nil,
+   621,   621,   nil,   nil,   nil,   621,   621,   621,   621,   nil,
+   nil,   nil,   nil,   nil,   621,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   621,   621,   nil,   621,   621,   621,   621,   621,
+   621,   621,   621,   621,   621,   621,   nil,   nil,   621,   nil,
+   nil,   nil,   nil,   622,   622,   nil,   nil,   622,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   622,   622,   621,   622,
+   622,   622,   622,   622,   622,   622,   nil,   nil,   622,   622,
+   nil,   nil,   nil,   622,   622,   622,   622,   nil,   nil,   nil,
+   nil,   nil,   622,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   622,   622,   nil,   622,   622,   622,   622,   622,   622,   622,
+   622,   622,   622,   622,   nil,   nil,   622,   nil,   nil,   nil,
+   nil,   631,   631,   nil,   nil,   631,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   631,   631,   622,   631,   631,   631,
+   631,   631,   631,   631,   nil,   nil,   631,   631,   nil,   nil,
+   nil,   631,   631,   631,   631,   nil,   nil,   nil,   nil,   nil,
+   631,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   631,   631,
+   nil,   631,   631,   631,   631,   631,   631,   631,   631,   631,
+   631,   631,   nil,   nil,   631,   nil,   nil,   nil,   nil,   632,
+   632,   nil,   nil,   632,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   632,   632,   631,   632,   632,   632,   632,   632,
+   632,   632,   nil,   nil,   632,   632,   nil,   nil,   nil,   632,
+   632,   632,   632,   nil,   nil,   nil,   nil,   nil,   632,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   632,   632,   nil,   632,
+   632,   632,   632,   632,   632,   632,   632,   632,   632,   632,
+   nil,   nil,   632,   nil,   nil,   nil,   nil,   663,   663,   nil,
+   nil,   663,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   663,   663,   632,   663,   663,   663,   663,   663,   663,   663,
+   nil,   nil,   663,   663,   nil,   nil,   nil,   663,   663,   663,
+   663,   nil,   nil,   nil,   nil,   nil,   663,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   663,   663,   nil,   663,   663,   663,
+   663,   663,   663,   663,   663,   663,   663,   663,   nil,   nil,
+   663,   nil,   nil,   nil,   nil,   664,   664,   nil,   nil,   664,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   664,   664,
+   663,   664,   664,   664,   664,   664,   664,   664,   nil,   nil,
+   664,   664,   nil,   nil,   nil,   664,   664,   664,   664,   nil,
+   nil,   nil,   nil,   nil,   664,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   664,   664,   nil,   664,   664,   664,   664,   664,
+   664,   664,   664,   664,   664,   664,   nil,   nil,   664,   nil,
+   nil,   nil,   nil,   670,   670,   nil,   nil,   670,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   670,   670,   664,   670,
+   670,   670,   670,   670,   670,   670,   nil,   nil,   670,   670,
+   nil,   nil,   nil,   670,   670,   670,   670,   nil,   nil,   nil,
+   nil,   nil,   670,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   670,   670,   nil,   670,   670,   670,   670,   670,   670,   670,
+   670,   670,   670,   670,   nil,   nil,   670,   nil,   nil,   nil,
+   nil,   671,   671,   nil,   nil,   671,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   671,   671,   670,   671,   671,   671,
+   671,   671,   671,   671,   nil,   nil,   671,   671,   nil,   nil,
+   nil,   671,   671,   671,   671,   nil,   nil,   nil,   nil,   nil,
+   671,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   671,   671,
+   nil,   671,   671,   671,   671,   671,   671,   671,   671,   671,
+   671,   671,   nil,   nil,   671,   nil,   nil,   nil,   nil,   713,
+   713,   nil,   nil,   713,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   713,   713,   671,   713,   713,   713,   713,   713,
+   713,   713,   nil,   nil,   713,   713,   nil,   nil,   nil,   713,
+   713,   713,   713,   nil,   nil,   nil,   nil,   nil,   713,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   713,   713,   nil,   713,
+   713,   713,   713,   713,   713,   713,   713,   713,   713,   713,
+   nil,   nil,   713,   nil,   nil,   nil,   nil,   714,   714,   nil,
+   nil,   714,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   714,   714,   713,   714,   714,   714,   714,   714,   714,   714,
+   nil,   nil,   714,   714,   nil,   nil,   nil,   714,   714,   714,
+   714,   nil,   nil,   nil,   nil,   nil,   714,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   714,   714,   nil,   714,   714,   714,
+   714,   714,   714,   714,   714,   714,   714,   714,   nil,   nil,
+   714,   nil,   nil,   nil,   nil,  1219,  1219,   nil,   nil,  1219,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1219,  1219,
+   714,  1219,  1219,  1219,  1219,  1219,  1219,  1219,   nil,   nil,
+  1219,  1219,   nil,   nil,   nil,  1219,  1219,  1219,  1219,   nil,
+   nil,   nil,   nil,   nil,  1219,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1219,  1219,   nil,  1219,  1219,  1219,  1219,  1219,
+  1219,  1219,  1219,  1219,  1219,  1219,   nil,   nil,  1219,   nil,
+   nil,   nil,   nil,  1220,  1220,   nil,   nil,  1220,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,  1220,  1220,  1219,  1220,
+  1220,  1220,  1220,  1220,  1220,  1220,   nil,   nil,  1220,  1220,
+   nil,   nil,   nil,  1220,  1220,  1220,  1220,   nil,   nil,   nil,
+   nil,   nil,  1220,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+  1220,  1220,   nil,  1220,  1220,  1220,  1220,  1220,  1220,  1220,
+  1220,  1220,  1220,  1220,   nil,   nil,  1220,   nil,   nil,   nil,
+   nil,  1243,  1243,   nil,   nil,  1243,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1243,  1243,  1220,  1243,  1243,  1243,
+  1243,  1243,  1243,  1243,   nil,   nil,  1243,  1243,   nil,   nil,
+   nil,  1243,  1243,  1243,  1243,   nil,   nil,   nil,   nil,   nil,
+  1243,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1243,  1243,
+   nil,  1243,  1243,  1243,  1243,  1243,  1243,  1243,  1243,  1243,
+  1243,  1243,   nil,   nil,  1243,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1243 ]
+
+racc_action_pointer = [
+   nil,    60,  1098,    96,   nil,   194,   nil,   nil,  5417,  1083,
+   nil, 26870, 27003,    72,   nil,    47,    56,   704,   167,   317,
+   -32,    92,   283,   nil,   -65,  5560,  1386, 27136,   296,   nil,
+   -40,   nil,   165,  5698,  5830,  5960,  6103,  6246,   nil,  1242,
+ 24924, 25063,   nil,   224,   449,   513,   306,  6389,  6532,   167,
+  6675,  6818,   697,  6961,   248,   361,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,  7099,   nil,  7240,  7383,   nil,
+   -22,   nil,  7526,  7669,   nil,   nil,  7812, 25202, 25341, 25480,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   101,   nil,   nil,   nil,
+   nil,   nil,   nil,   259,   279,   295,   311,   nil,   nil, 27269,
+   nil,   nil,   nil,   nil,   nil,   nil,     0,   nil,   nil,   136,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  7955,   nil,   nil,   nil,   nil,  8098,  8241,  8384,
+  8527,  8670,   341,   nil,   399,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   381,   nil,  1386,  8813,  8956,  9099,  9242,
+  9385,  9528, 29764, 29832,   nil,   nil,   401,  1530,   409,   nil,
+ 29546, 29583,   433,  1674,  9671,  9814,  9957,   nil,   nil,   376,
+   -21,   104,   535,   114,   459,   547,   nil, 10100,   226,   241,
+  1818,   589,   nil,   nil, 10243, 10386, 10529, 10672, 10815, 10958,
+ 11101, 11244, 11387, 11530, 11673, 11816, 11959, 12102, 12245, 12388,
+ 12531, 12674, 12817, 12960, 13103, 13246,   nil,   nil,   nil,   nil,
+ 13389,   nil,   nil,   388,   412,   514,   548,   552,   576,   596,
+   617,   654,   736,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+ 29900,   nil,   nil,   586, 13532, 13675,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil, 13818,   nil,  2106,   nil,   562,   568,
+   nil, 13961,   611, 14104,   nil,   nil, 14247, 14390,   nil,   nil,
+   396,   nil,   nil, 14533,  1227,   nil,   555,  1962,   577,   622,
+   586, 25619,  2106,   455,   504,   516,   672,   591,   nil,   652,
+   635,   193,   676,   682,   nil,   nil,   nil,   686,   266,   686,
+ 25758,   nil,   597,   620,  3402,  3546,   760,   nil,   796, 14676,
+   nil, 14819,  2250,  1329,   739,   nil,   -94,   172,   742, 14962,
+   nil,   806,    -8,     8, 15105,  2394,  2538,   412,   856,   750,
+   -19,    -7,   640,   847,    24,   892,   nil,   nil,  1087,  1089,
+   181,   nil,   650,   nil,   823, 15248,   nil, 29598,   nil,   383,
+   nil,   402,   nil,   136,   nil,   808,   440,   nil,   818,   481,
+   nil,   821,   -59,   nil,   827,   -58,   nil,   485,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,  2682, 27402,   nil,   nil,   nil,   nil,   838,   nil,   910,
+   827, 15391,   828,   nil,   nil,   817,   nil,   652,   147,   921,
+   nil,   nil,  1530,   nil,   nil,   nil,   nil,   nil,  1674,   841,
+   nil,   nil,   845,   849,   644,   649,  7240,   nil,   nil,   nil,
+   272,   408,   893,   nil,   nil, 15529, 15661, 15794,   983,   987,
+   nil,   nil,   872,   870,   875,   nil,   nil,   876,   881,   882,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   871,
+   784,   nil,   nil, 15937,   nil,   nil,   nil,     0,   nil,   nil,
+   nil,   982,   nil,   nil,   983,   462, 16080,  1029,   nil,   nil,
+   nil,   -26,   nil,   950, 29968, 30036, 16223,   223, 16366, 16509,
+ 16652,   896,   899, 27755, 27868,  3690,  3834,   810,  1007,   980,
+   981,   982,   983,  5417,  5560,  1121,  3978,  4122,  4266,  4410,
+  4554,  4698,  1214,  1243,  4842,  4986,  2250,  5130,   nil,   nil,
+   nil, 16795,  1043,   nil, 16933,   nil,   nil,   nil,   nil, 17059,
+   928,   933,   940,   nil,   nil,   nil,   947,   nil,   nil, 17202,
+   nil,   nil, 17345,   nil, 17488,   nil,   196,   nil,   nil,   nil,
+ 17631,  1515,   963,   954,   953,   nil,   nil,   956, 25897,   960,
+ 17774, 30104, 30172,   725,  1003,   nil,   nil, 26036,   966,   nil,
+ 17917, 30240, 30308, 18060,  5274,  2394, 18203,  1087,   971,   nil,
+   nil, 18346,   nil,   nil, 18489,   nil,  1010,   994,   nil,   534,
+  1046,  2826,  1128,   nil,  2970,    63,  1145,  1149,   308,  1152,
+   nil, 18632, 18775, 30376, 30444,    26,   nil,   nil,   766,   nil,
+ 30512, 30580, 18918,   nil,   nil,   nil,   811,  3114,   nil, 29606,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   208,   nil,   nil,   298,   nil,   nil,   nil,  1036,
+   nil,   nil,  1038,   nil,  1056,   nil, 27535,   nil, 19061,  1041,
+ 19204, 19347, 19490, 30648, 30716, 19633, 19776,   651, 19919, 20062,
+ 20205, 20348,  1074,   nil,   nil,   nil, 20491, 20634,  1078,   nil,
+  1133,  1818,   551,   nil, 20777,   nil,   nil,   nil,   330,   nil,
+   nil,   749, 29657,   nil, 29680,   nil, 16939,   nil,  1032, 20920,
+   nil,   918,   nil,  1051,  1056,  1372,  1060,   nil,   nil,   nil,
+   nil,   nil,   nil,  1146,  1962,   nil,   nil,   nil,   281,   326,
+   544,   680,  1066, 21063, 21206,   nil,   -70,   nil,   nil,   nil,
+   nil,  1084,   nil,   nil,   nil,   375, 27981,   -82,   nil,  1066,
+  1146,  1069,   nil,   nil, 28094,   nil,   nil,     1,   nil,   nil,
+   796,   nil,   nil,   952,  7099,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   955,   443,   nil,   nil,
+  1074, 27668,   -14,   nil,   113,  1176,   -19,   nil,   nil, 21349,
+   nil,  1096,   nil,  1210,   nil,  1092,   nil,  1140, 21492,   nil,
+   nil, 21635,   nil,   nil,   158, 26175,  1103,   nil,  1110,    -9,
+    -5,  1149,    25,   776,  1150,  1120, 26314,   nil,  1183,    -7,
+   nil,   nil,   691,   nil,   nil,   nil,   884,   nil,  1237,   nil,
+   nil,   nil,   nil,   nil,  1245,  1246,   nil,   nil,   nil, 21778,
+    69,  1132,    29,    30,   162,   163,  3258,  1231,   784,   nil,
+  1152,  3402, 21921,   465,  1270,    34,  1156,  1153,  3546,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1154, 22064,  1158,
+   402,   421,   816,   952,   nil,  2538, 22207,  1156,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 22350, 22493,
+   nil,   nil,   nil,   nil,  3690,   nil,  1169,  1214,   nil,   nil,
+  1176,   nil,  1260,   nil,   nil,  1183,  1185,   nil,  1186,  1193,
+   nil,  1194,   nil,   nil,   nil,  1198,  1084,  3964,   nil,   nil,
+ 22636, 22779, 22922, 23065, 23208, 23351,   479, 28207,  1275, 28320,
+  1236,   195, 28433, 28546,   589,   -31,  1203,  1204,   nil, 28659,
+   nil,  1203,   266,   nil,  1220, 28772, 28885,   nil,   340,  1248,
+   213,   nil,   nil, 16918, 29492,   nil,   nil,   nil,   nil, 23494,
+   nil,   nil,   nil,   nil,   nil, 23637,   nil,   nil,   nil,   nil,
+   337,   nil,  3834,   nil,   nil,  1224,  1213,   nil,   117,   nil,
+   nil,   nil,   nil,  1212,    39,   nil,   nil,   nil,  1336,   nil,
+   nil, 23780,   nil,  3978,  1341,   nil,   nil,   nil, 28998,   nil,
+ 23923,  4122,    68,  1342,   nil,  1344,   598,   nil,   nil,   nil,
+  4266,  4410,  1223,  1229,   nil,   nil,   nil,   nil,   nil,  1218,
+  1234,   490,   nil,   nil, 24066,  2682,  2826,  4554,   nil,     9,
+ 26453,   nil,   nil, 29708,   nil, 24945,   nil, 25084,   nil, 25223,
+   nil,   nil,   nil,   nil,  1235,  1236,  2970,  3114, 24209,   nil,
+  1246,   nil,   nil,   nil,   nil,  1285,  1289,  1292,  1258,  1267,
+  1268,   nil,   nil,   nil,  1307,  1269,  1270,   nil,  1274,   nil,
+   nil,   740,  1273,   nil,   nil,   nil,   nil,   nil,   nil,  1285,
+  3258,  1283,  1284,   nil,  1285,  1293,  1299,   nil,  1333,  1320,
+  1303, 26592,   nil,   nil,   nil,   nil,   nil,  4698,   nil,    35,
+   nil,   nil,    43,   866,   nil, 24352,   426,   nil,   nil,   nil,
+  4842,  1351,  1458,  2092,   nil,   nil,  1460,  4986,   120,   135,
+   786,  1416,   144,   nil,  1344,  1347,  1348,  1351,  4108,  4252,
+ 29111,   nil,   nil,   nil,   nil,   nil,   nil,   nil, 29224,   nil,
+   243,   nil, 29337,   nil,   367,   nil,   nil,   475,   nil,   nil,
+   nil,   611,   nil,   745,   nil,   nil,  1372, 26731,   855,  1428,
+   nil,  5130,   nil, 24495, 24638,   nil,   nil,   nil,   nil,  1477,
+   nil,   nil,   707,   nil,   nil,   nil,   nil,  1491, 24781, 30784,
+ 30852,   145, 25362,   nil,   nil,   nil,   nil,  1370,  1371,  1378,
+   nil,   nil,  1379,   nil,   nil,  1380,  1383,  1385,  1386,   nil,
+  1387,   nil,   861, 30920,   nil,   898,  5274,   nil,   nil,   nil,
+   nil,  2236,   nil,  1391,   158,   168,   169,   236,  1390, 29450,
+   nil,   881,   nil,  5662,   nil,  5761,   nil,  7063,   nil,   nil,
+  1430,  1434,   nil,    32,   nil,   171,   nil,  1398,  1399,  1408,
+  1409,   nil,   nil,   nil, 15493,   nil,   nil,   nil,   nil,  1410,
+   nil ]
+
+racc_action_default = [
+    -1,  -782,  -781,  -782,    -2,  -767,    -4,    -5,  -782,    -8,
+    -9,  -782,  -782,  -782,   -35,  -782,  -782,   -40,  -782,  -782,
+  -672,  -672,  -317,   -56,  -769,  -782,   -65,  -782,   -74,   -75,
+   -76,   -80,  -291,  -291,  -291,  -331,  -359,  -360,   -92,  -781,
+   -96,  -104,  -106,  -782,  -659,  -660,  -782,  -782,  -782,  -782,
+  -782,  -782,  -244,  -782,  -769,  -262,  -308,  -309,  -310,  -311,
+  -312,  -313,  -314,  -315,  -316,  -753,  -319,  -321,  -781,  -329,
+  -339,  -341,  -782,  -782,   -71,   -71,  -767,  -782,  -782,  -782,
+  -361,  -362,  -364,  -365,  -366,  -367,  -368,  -369,  -370,  -371,
+  -372,  -373,  -382,  -442,  -586,  -587,  -588,  -589,  -590,  -781,
+  -593,  -781,  -781,  -781,  -781,  -781,  -781,  -629,  -630,  -781,
+  -632,  -638,  -640,  -641,  -642,  -643,  -751,  -648,  -649,  -752,
+  -651,  -652,  -653,  -654,  -655,  -656,  -657,  -658,  -663,  -664,
+  1291,    -3,  -768,  -777,  -778,  -779,    -7,  -782,  -782,  -782,
+  -782,  -782,  -782,   -23,  -782,  -135,  -136,  -137,  -138,  -139,
+  -140,  -141,  -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,  -194,  -195,  -196,  -197,  -198,  -199,  -200,  -201,  -202,
+  -203,  -204,  -205,  -206,  -207,  -208,  -209,  -210,  -211,  -212,
+  -213,  -214,  -215,   -28,  -142,  -781,  -782,  -782,  -782,  -782,
+  -782,  -781,  -782,  -782,  -763,  -764,  -782,  -781,  -671,  -669,
+  -695,  -695,  -782,  -781,  -782,  -782,  -769,  -770,   -60,  -782,
+  -659,  -660,  -782,  -317,  -782,  -782,  -250,  -782,  -672,  -672,
+  -781,  -782,   -61,   -63,  -227,  -228,  -782,  -782,  -782,  -782,
+  -782,  -782,  -782,  -782,  -782,  -782,  -782,  -782,  -782,  -782,
+  -782,  -782,  -782,  -782,  -782,  -782,  -263,  -264,  -265,  -266,
+  -782,   -66,   -67,  -782,  -135,  -136,  -175,  -176,  -177,  -193,
+  -198,  -205,  -208,  -659,  -660,  -738,  -739,  -375,  -470,  -450,
+  -782,  -765,  -766,   -81,  -781,  -782,  -338,  -374,  -454,  -463,
+  -465,   -87,  -460,   -88,  -769,   -89,  -269,  -286,  -781,  -781,
+  -290,  -294,  -297,  -299,  -781,  -743,  -747,  -750,   -90,   -91,
+  -767,   -16,   -17,  -782,   -20,   -21,   -94,  -781,  -769,  -782,
+   -97,  -100,  -781,  -112,  -113,  -782,  -782,  -120,  -331,  -334,
+  -769,  -782,  -672,  -672,  -359,  -360,  -363,  -461,  -782,  -102,
+  -782,  -108,  -327,  -782,  -229,  -230,  -639,  -238,  -239,  -782,
+  -251,  -782,  -781,  -323,  -769,  -270,  -774,  -774,  -769,  -781,
+  -340,   -70,  -782,  -782,  -782,  -781,  -781,  -767,  -782,  -768,
+  -659,  -660,  -782,  -782,  -317,  -782,  -392,  -393,  -130,  -131,
+  -782,  -133,  -782,  -317,  -781,  -782,  -355,  -695,  -591,  -782,
+  -614,  -782,  -616,  -782,  -618,  -782,  -782,  -598,  -782,  -782,
+  -604,  -782,  -782,  -610,  -782,  -782,  -612,  -782,  -631,  -633,
+  -634,  -635,  -636,    -6,  -780,   -29,   -30,   -31,   -32,   -33,
+   -10,  -781,  -782,   -25,   -26,   -27,  -143,  -782,   -36,   -39,
+  -304,  -299,  -782,  -303,   -37,  -782,   -41,  -782,  -317,   -53,
+   -55,  -216,  -274,  -297,   -57,   -58,   -42,  -217,  -274,  -769,
+  -281,  -282,  -781,  -781,  -754,  -755,  -291,  -458,  -756,  -757,
+  -755,  -754,  -291,  -457,  -459,  -756,  -757,  -782,  -578,  -782,
+  -405,  -406,  -769,  -737,  -737,  -677,  -678,  -680,  -680,  -680,
+  -694,  -696,  -697,  -698,  -699,  -700,  -701,  -702,  -703,  -704,
+  -782,  -706,  -708,  -710,  -715,  -717,  -718,  -721,  -726,  -728,
+  -729,  -731,  -732,  -733,  -735,  -782,  -782,  -782,   -52,  -224,
+   -59,  -769,  -337,  -782,  -782,  -782,  -781,  -327,  -782,  -782,
+  -782,  -782,  -782,  -782,  -782,  -225,  -226,  -231,  -232,  -233,
+  -234,  -235,  -236,  -240,  -241,  -242,  -243,  -245,  -246,  -247,
+  -248,  -249,  -252,  -253,  -254,  -255,  -769,  -267,   -68,  -761,
+  -762,  -782,  -782,  -471,  -291,  -754,  -755,   -78,   -82,  -696,
+  -769,  -781,  -769,  -292,  -467,  -470,  -769,  -333,  -287,  -782,
+  -296,  -288,  -782,  -293,  -782,  -298,  -782,  -746,  -749,   -15,
+  -768,   -19,  -782,  -769,   -93,  -325,  -109,   -98,  -782,  -769,
+  -781,  -782,  -782,  -119,  -782,  -671,  -639,  -782,  -105,  -110,
+  -782,  -782,  -782,  -782,  -268,  -256,  -782,  -782,  -769,  -322,
+  -271,  -776,  -775,  -273,  -776,  -328,  -782,  -782,  -741,  -774,
+  -782,  -781,  -383,  -384,  -781,  -782,  -782,  -782,  -782,  -782,
+  -378,  -782,  -781,  -782,  -782,  -327,   -71,  -130,  -131,  -132,
+  -782,  -782,  -781,  -350,  -665,  -667,  -352,  -781,  -443,  -695,
+  -446,  -592,  -615,  -620,  -621,  -623,  -594,  -617,  -595,  -619,
+  -596,  -597,  -782,  -600,  -602,  -782,  -603,  -606,  -607,  -782,
+  -608,  -609,  -782,  -637,  -782,   -24,  -782,   -34,  -782,  -307,
+  -782,  -782,  -781,  -782,  -782,  -782,  -782,  -462,  -283,  -285,
+  -782,  -782,   -83,  -279,  -280,  -455,  -782,  -782,   -85,  -456,
+   -48,  -258,  -781,  -376,  -781,  -357,  -381,  -670,  -782,  -675,
+  -676,  -782,  -782,  -687,  -782,  -690,  -782,  -692,  -782,  -782,
+  -394,  -782,  -396,  -398,  -401,  -404,  -769,  -709,  -719,  -720,
+  -730,  -734,  -673,   -50,  -260,  -358,  -336,  -771,  -754,  -755,
+  -754,  -755,  -769,  -782,  -782,   -62,  -488,  -491,  -492,  -493,
+  -494,  -496,  -498,  -501,  -502,  -557,  -769,  -514,  -517,  -527,
+  -531,  -536,  -538,  -539,  -542,  -543,  -781,  -546,  -548,  -549,
+  -550,  -555,  -556,  -782,  -782,  -560,  -561,  -562,  -563,  -564,
+  -565,  -566,  -567,  -568,  -569,  -570,  -782,  -782,  -576,   -64,
+  -782,  -782,  -769,  -449,  -781,   -77,  -451,  -467,  -276,  -283,
+  -278,  -782,  -468,  -782,  -332,  -781,  -295,  -300,  -302,  -744,
+  -745,  -782,   -18,   -22,   -95,  -782,  -101,  -107,  -769,  -754,
+  -755,  -781,  -758,  -118,  -782,  -103,  -782,  -223,  -237,  -769,
+  -320,  -324,  -774,  -772,  -330,  -742,  -781,  -385,  -781,   -72,
+  -386,  -387,  -344,  -345,  -782,  -782,  -480,  -347,  -473,  -782,
+  -782,  -769,  -754,  -755,  -758,  -326,  -781,  -130,  -131,  -134,
+  -769,  -781,  -782,  -782,  -782,  -782,  -769,  -782,  -781,  -599,
+  -601,  -605,  -611,  -613,   -11,  -144,   -38,  -305,  -302,  -769,
+  -754,  -755,  -755,  -754,   -54,  -275,  -782,  -781,   -44,  -219,
+   -45,  -220,   -84,   -46,  -222,   -47,  -221,   -86,  -782,  -782,
+   -12,   -14,  -377,  -379,  -781,  -585,  -579,  -781,  -580,  -581,
+  -737,  -716,  -721,  -736,  -679,  -680,  -680,  -707,  -680,  -680,
+  -727,  -680,  -704,  -408,  -722,  -769,  -782,  -782,  -403,  -705,
+  -782,  -782,  -782,  -782,  -782,  -782,  -462,  -489,  -782,  -782,
+  -499,  -500,  -782,  -782,  -782,  -519,  -769,  -769,  -513,  -520,
+  -524,  -782,  -782,  -516,  -782,  -782,  -782,  -530,  -537,  -541,
+  -782,  -545,  -547,  -553,  -554,  -558,  -559,  -571,  -572,  -782,
+  -644,  -645,  -646,  -131,  -574,  -782,   -69,  -740,  -431,  -432,
+  -769,  -434,  -781,  -453,  -452,  -782,  -769,  -464,  -781,  -466,
+  -289,  -301,  -748,   -99,  -462,  -111,  -335,  -272,  -782,  -380,
+  -388,  -782,  -390,  -781,  -782,   -73,  -346,  -348,  -782,  -474,
+  -782,  -781,  -462,  -782,  -462,  -782,  -782,  -353,  -356,  -444,
+  -781,  -781,  -436,  -769,  -622,  -625,  -626,  -627,  -628,  -782,
+  -306,  -462,   -43,  -218,  -284,   -49,  -259,  -781,  -584,  -782,
+  -782,  -583,  -674,  -782,  -683,  -782,  -685,  -782,  -688,  -782,
+  -691,  -693,  -395,  -397,  -399,  -402,   -51,  -261,  -782,  -490,
+  -527,  -495,  -497,  -506,  -510,  -782,  -782,  -782,  -769,  -769,
+  -769,  -575,  -511,  -512,  -534,  -521,  -522,  -525,  -769,  -781,
+  -773,  -782,  -528,  -532,  -535,  -540,  -544,  -551,  -552,  -769,
+  -257,  -737,  -737,  -412,  -781,  -781,  -781,  -430,  -782,  -769,
+  -704,  -712,  -713,  -724,  -472,   -79,  -277,  -781,  -342,  -782,
+  -391,  -343,  -782,  -485,  -475,  -782,  -781,  -349,  -351,  -666,
+  -781,  -782,  -782,  -782,  -445,  -624,  -781,  -781,  -659,  -660,
+  -782,  -782,  -317,  -582,  -680,  -680,  -680,  -680,  -782,  -782,
+  -782,  -503,  -504,  -505,  -507,  -508,  -509,  -526,  -782,  -515,
+  -782,  -518,  -782,  -573,  -782,  -410,  -411,  -415,  -414,  -421,
+  -423,  -782,  -426,  -782,  -428,  -433,  -782,  -782,  -711,  -782,
+  -469,  -781,  -481,  -782,  -782,  -476,  -477,  -478,  -479,  -782,
+  -447,  -448,  -769,  -438,  -440,  -441,   -13,  -578,  -781,  -782,
+  -782,  -327,  -782,  -681,  -684,  -686,  -689,  -400,  -528,  -523,
+  -529,  -533,  -737,  -714,  -413,  -781,  -781,  -781,  -781,  -725,
+  -781,  -435,  -723,  -782,  -327,  -781,  -781,  -486,  -487,  -354,
+  -437,  -782,  -577,  -769,  -754,  -755,  -758,  -326,  -680,  -782,
+  -409,  -782,  -418,  -782,  -420,  -782,  -424,  -782,  -427,  -429,
+  -326,  -758,  -389,  -781,  -439,  -462,  -682,  -781,  -781,  -781,
+  -781,  -482,  -483,  -484,  -782,  -416,  -419,  -422,  -425,  -781,
+  -417 ]
+
+racc_goto_table = [
+     6,   309,   292,   519,   519,    45,   318,   322,   390,   291,
+   875,    45,   651,   654,   669,   245,   732,   419,   239,   239,
+    16,   749,   366,   366,   232,   450,    16,   437,   592,   350,
+   304,   659,   940,   479,   135,   311,     4,   395,   396,   327,
+   327,   327,    45,   354,   354,   381,   499,    18,   601,   743,
+   745,   747,   537,    18,   947,   739,   740,    16,   931,   366,
+   366,   366,   143,   224,   463,   464,   385,   775,   819,  1028,
+    45,  1034,   148,   148,   313,   321,   323,   328,   328,   328,
+   401,   304,   304,   839,    18,    16,   392,   393,   148,   588,
+   397,   439,   151,   151,   750,   406,   628,   420,   132,   422,
+   424,   427,   430,   433,   436,   135,   476,   420,   778,   778,
+   386,   983,    18,   369,   582,   248,   590,   950,   640,   643,
+   538,  1012,   502,   535,  1090,   839,   510,   510,   376,   243,
+   131,   325,   338,   339,     9,    45,  1106,   756,   486,   492,
+     9,   136,  1239,   831,    45,   346,  1112,  1085,   348,  1083,
+    16,   445,   446,   447,   448,   236,   242,  1053,     1,    16,
+  1125,  1213,  1215,   329,   329,   329,   946,     2,   948,   692,
+   148,   142,   695,   836,  1097,  1100,   836,    18,   414,   416,
+   519,   995,   996,  1105,  1108,   930,    18,   625,   625,  1067,
+  1113,   637,   842,   612,   223,   407,   387,   459,   452,   383,
+   839,   398,   601,   349,   470,   553,   487,   470,   554,   293,
+   578,   821,  1239,   869,  1035,   310,   584,   827,   977,   706,
+   379,   470,   388,   826,   305,   647,   405,   673,    45,   480,
+   382,   384,   638,   389,   891,   327,   893,  1150,   677,  1084,
+    45,  1127,  1189,    16,   976,   465,    45,  1129,   465,  1212,
+   678,  1049,   606,   417,   544,    16,   239,   239,   895,  1274,
+  1215,    16,   465,    45,     9,   443,   594,   595,   462,   462,
+    18,  1128,    18,   449,   889,    18,  1018,   880,    16,   824,
+  1206,  1142,    18,  1281,  1038,  1246,  1091,  1092,    18,    18,
+   972,   874,   836,   836,   496,   973,  1122,   982,   985,   680,
+  1114,  1115,   998,   510,   937,    18,  1069,   418,   421,   423,
+   426,   429,   480,   432,   435,  1137,   458,   469,   327,   327,
+   469,  1054,   897,   898,   438,   750,   600,   600,   327,   958,
+  1228,   892,   420,   366,   469,   318,   945,  1235,  1229,  1230,
+   941,   322,  1233,   581,   846,   nil,    45,   nil,   772,  1207,
+    45,   624,   366,   855,   354,    45,   591,   328,  1227,   629,
+   621,    16,  1083,   nil,   nil,    16,   328,   243,   955,   135,
+    16,  1117,  1118,   354,  1113,   687,  1015,   689,   631,   646,
+   693,   865,  1113,   693,   nil,    45,  1231,   648,    18,   457,
+  1196,   947,    18,   551,   552,   477,   nil,    18,    45,    45,
+    16,   833,   nil,   836,  1096,  1099,   nil,   663,   655,   539,
+   nil,   593,   675,    16,    16,   nil,   nil,   nil,   nil,   nil,
+   596,  1004,   848,   617,   349,  1089,   135,    18,   nil,   nil,
+  1095,  1098,  1179,   610,  1126,   nil,   nil,   nil,   776,   776,
+    18,    18,   519,   329,   nil,   nil,   950,   626,  1272,     6,
+   486,   492,   329,   346,    45,   nil,   613,   nil,   346,   nil,
+   724,   619,   nil,  1231,   881,   609,   729,   nil,   nil,    16,
+   646,   243,   713,  1122,   890,   611,  1282,  1122,  1232,  1122,
+   600,   600,  1216,   nil,   723,   704,   894,  1074,  1076,   nil,
+  1078,  1080,  1072,  1081,   nil,   843,    18,  1164,   922,   947,
+  1041,   730,   nil,   705,   927,   519,   nil,   519,   391,   391,
+   nil,   349,   391,   148,   909,   nil,   349,   649,   487,   nil,
+   797,   797,   658,   nil,   nil,   nil,   nil,   851,   722,   nil,
+   750,   750,   nil,   151,   728,   nil,   nil,   851,   nil,   nil,
+   763,   nil,   nil,  1016,   480,   839,   nil,  1122,   nil,  1122,
+   327,  1122,  1143,  1122,  1020,   nil,   813,   813,   724,   656,
+   657,   896,   nil,   nil,   762,   510,   nil,   820,   nil,   851,
+  1122,  1023,   938,   391,   391,   391,   391,   851,  1101,   947,
+   nil,   nil,   723,     9,   nil,   nil,   nil,   nil,   nil,   600,
+   nil,   nil,   nil,   778,  1027,   487,   918,   920,   nil,   nil,
+   366,   nil,   923,   925,   nil,   487,   496,   629,   nil,   366,
+   nil,  1236,   nil,    45,   nil,  1237,   629,   nil,   480,   486,
+   492,   354,   nil,   735,   327,  1283,   825,   nil,    16,   886,
+   354,   nil,  1197,   nil,   nil,   nil,  1020,   487,   836,   nil,
+   nil,   nil,   nil,   nil,   nil,   487,   900,   nil,   nil,   900,
+   nil,   nil,   nil,   nil,    45,    18,   nil,    45,   nil,   nil,
+   480,   765,   nil,   nil,   474,   475,   327,   nil,   nil,    16,
+   480,   975,    16,  1185,  1186,   nil,   327,   nil,   nil,   989,
+    45,   540,   541,   496,   870,  1277,   nil,   487,   470,  1157,
+   nil,   nil,   nil,   496,   nil,    16,    18,   470,   470,    18,
+  1045,   nil,   nil,   470,   470,   942,  1223,  1224,  1225,  1226,
+   480,    45,   nil,   539,   990,   477,   327,   nil,    45,   nil,
+   nil,   nil,    18,   nil,   nil,   496,    16,   835,   nil,   465,
+   935,   496,   939,    16,   nil,  1252,   nil,   nil,   465,   465,
+   nil,   nil,   750,   750,   465,   465,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    18,   nil,   nil,    18,   905,   nil,  1201,
+    18,   860,  1202,   646,  1014,    18,    18,   148,   nil,   862,
+   nil,    18,    18,  1130,   nil,   496,   462,   646,   984,  1208,
+   872,   873,   nil,   877,  1260,   nil,   nil,   151,   nil,   813,
+   nil,   nil,  1062,   nil,   420,   857,  1006,   813,  1013,   nil,
+  1276,   469,   nil,   291,   nil,   nil,   813,   813,   nil,   nil,
+   469,   469,   nil,   nil,   nil,   866,   469,   469,   868,   nil,
+   nil,  1134,  1008,   nil,   nil,   724,   nil,   366,   729,   nil,
+   391,   nil,   nil,   600,   629,   nil,   519,   nil,   366,   646,
+   906,   nil,   nil,   nil,   nil,  1025,   917,   914,   354,   723,
+   nil,   676,   975,   nil,   nil,   nil,   nil,   975,   975,   354,
+  1152,   nil,   nil,   nil,  1032,   nil,  1032,   645,   nil,   nil,
+  1111,   943,   646,   nil,   943,   nil,   nil,   nil,   nil,   nil,
+   nil,   646,   148,   nil,   nil,   919,   921,  1052,   nil,    45,
+   nil,   924,   926,   470,    45,   nil,   nil,   nil,   nil,   nil,
+   646,    45,   nil,   nil,    16,   nil,  1046,   nil,   nil,    16,
+   nil,   nil,   nil,   nil,   nil,   600,    16,   nil,   nil,   nil,
+   nil,   nil,  1047,   776,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    18,   nil,   nil,   465,  1071,    18,    45,   nil,   797,
+   797,   nil,   nil,    18,   nil,   nil,   nil,   nil,   nil,   797,
+  1130,   nil,    16,   nil,  1130,   797,   nil,   917,   717,  1209,
+   nil,    18,   646,   nil,   nil,   nil,   nil,   646,   646,   nil,
+   813,   nil,   813,   nil,   nil,   813,   813,   nil,   nil,    18,
+   nil,   nil,   813,   nil,   nil,   nil,   nil,   nil,   813,   813,
+   nil,   nil,   nil,   nil,   nil,   nil,   813,   813,  1036,  1037,
+   nil,  1052,   nil,   nil,   nil,   797,   469,   nil,   nil,   nil,
+   nil,   nil,   nil,  1119,   nil,    45,  1008,   822,  1048,   nil,
+  1253,   nil,   nil,   nil,  1130,   nil,   nil,  1180,   nil,   nil,
+    16,   nil,   nil,   nil,   nil,   nil,    45,   nil,   nil,   nil,
+   nil,   813,   nil,   nil,    45,  1139,   nil,   nil,   nil,   nil,
+  1043,    16,   366,    45,    45,   nil,   nil,    18,   nil,    16,
+   nil,   nil,  1059,   nil,   nil,   nil,   nil,   nil,    16,    16,
+    45,    19,   859,  1159,   nil,  1149,   nil,    19,    18,   nil,
+   nil,  1063,   nil,   nil,   nil,    16,    18,   nil,  1163,   646,
+   646,   646,   nil,   nil,   249,    18,    18,   nil,  1068,   984,
+   nil,   nil,   nil,   nil,   249,   249,   249,   420,    19,   355,
+   355,   nil,    18,   366,   nil,   949,   nil,   951,   nil,   nil,
+  1052,   nil,  1188,  1188,  1188,   851,   nil,   919,   921,   926,
+   924,   nil,   nil,   nil,   304,   nil,    19,   nil,   nil,   nil,
+    45,   249,   249,  1123,  1032,   249,   402,   412,   412,   nil,
+    20,   942,  1138,    45,   935,    16,    20,   nil,  1141,   nil,
+    45,   nil,   nil,   nil,   nil,  1219,   nil,  1147,    16,  1148,
+   nil,  1131,   nil,   813,   nil,    16,   nil,   nil,   nil,   366,
+   nil,   813,    18,   nil,   nil,   813,   nil,    20,   362,   362,
+   nil,   nil,   nil,   487,   nil,    18,   nil,  1140,   nil,   nil,
+   304,    19,    18,  1250,    45,  1146,   249,   249,   249,   249,
+    19,   nil,   nil,   nil,  1151,    20,   480,  1247,  1248,    16,
+   nil,   nil,   327,   nil,   nil,   362,   362,   362,   805,   805,
+   nil,  1156,   nil,  1188,  1188,  1188,  1188,   nil,  1188,   nil,
+   nil,   542,   nil,  1032,   646,   nil,    18,   nil,   nil,    45,
+   nil,   966,   nil,  1063,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   813,   nil,    16,   978,   nil,   nil,   nil,   nil,
+   nil,  1032,   nil,   nil,   nil,  1188,  1188,  1188,  1188,   nil,
+    20,   496,   nil,   nil,   nil,   nil,   nil,  1188,   nil,    20,
+   nil,    18,   nil,   nil,    19,   249,   467,   249,   249,   467,
+   249,  1200,   nil,   nil,   496,   nil,    19,   nil,   nil,   nil,
+   nil,   nil,    19,   467,   249,   249,   nil,   943,   nil,   597,
+  1123,  1217,   nil,   nil,  1123,   nil,  1123,  1024,   391,    19,
+   nil,   nil,   nil,  1249,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   614,   nil,  1131,   nil,   nil,  1131,   nil,
+   nil,   nil,  1131,   nil,  1131,   nil,   nil,   nil,   nil,   nil,
+  1042,   nil,   nil,   nil,   nil,  1245,   nil,   nil,   nil,  1044,
+   nil,   nil,   nil,    20,   nil,    20,   nil,   nil,    20,   639,
+   nil,  1124,   nil,   249,   249,    20,   nil,   nil,  1061,   nil,
+   nil,    20,    20,   249,  1123,   nil,  1123,   nil,  1123,   nil,
+  1123,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+  1273,   nil,    19,   nil,   nil,   nil,    19,  1123,   nil,   nil,
+   355,    19,  1131,   nil,  1131,   nil,  1131,   nil,  1131,   nil,
+   nil,   nil,   nil,   nil,   nil,   391,   nil,   nil,   nil,   355,
+   nil,   nil,   nil,   nil,  1165,  1131,  1166,   nil,  1167,   nil,
+  1094,    19,   nil,   nil,   nil,  1102,  1103,  1190,  1192,  1194,
+   nil,   805,   nil,   249,    19,    19,   nil,   391,   nil,   805,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   805,   805,
+   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,    20,   nil,   737,   nil,   362,
+    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   460,   473,   nil,   nil,   nil,   362,   nil,
+    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,   766,   nil,   nil,   nil,
+   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,  1238,   nil,  1240,   nil,   249,   nil,  1262,  1264,
+  1266,  1268,   nil,  1269,   nil,   nil,   nil,  1174,  1175,  1176,
+   nil,   nil,   nil,   nil,   nil,   828,   nil,   830,    21,   nil,
+   nil,   834,   nil,  1258,    21,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   844,   nil,
+  1285,  1286,  1287,  1288,   847,   249,   nil,   nil,   603,   nil,
+   605,   nil,  1290,   607,   608,    21,   363,   363,   nil,   nil,
+   nil,   nil,  1278,   861,  1279,   nil,  1280,   nil,   nil,   391,
+   391,   nil,   805,   nil,   805,   nil,   nil,   805,   805,   nil,
+   249,   nil,   nil,    21,   805,  1289,   nil,   806,   806,   nil,
+   805,   805,   nil,   363,   363,   363,   nil,   nil,   805,   805,
+   nil,   nil,   nil,   nil,   nil,   nil,   650,   nil,   nil,    19,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   249,
+   nil,   nil,   nil,   nil,   nil,   nil,   355,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   249,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   805,   nil,   nil,   nil,   nil,    21,   nil,
+    19,   nil,   nil,    19,   nil,   nil,   nil,    21,   nil,   nil,
+   nil,   249,  1275,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   249,   nil,   nil,   nil,   nil,    19,   nil,   709,   nil,
+   nil,   959,   nil,   nil,   nil,   nil,   nil,   nil,    20,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   362,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   362,   nil,    19,   nil,   nil,
+   467,   249,   nil,   nil,    19,   nil,   nil,   nil,   nil,   467,
+   467,   807,   807,   nil,   nil,   467,   467,   nil,   nil,    20,
+   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   757,    21,   nil,    21,   nil,   nil,    21,  1007,   nil,   nil,
+   nil,   nil,   nil,    21,   nil,    20,   nil,   nil,   nil,    21,
+    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   805,    21,   nil,   nil,   nil,
+   nil,   nil,   nil,   805,  1026,   nil,    20,   805,   nil,    20,
+   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,    20,    20,
+   nil,   nil,   nil,   nil,    20,    20,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   837,   nil,   nil,   650,
+   806,   840,   nil,   nil,   nil,   nil,   nil,   nil,   806,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   806,   806,   nil,
+   nil,   nil,   nil,   nil,   355,    22,   nil,   nil,   nil,   nil,
+   nil,    22,   nil,   nil,   nil,   355,   nil,   nil,   837,    21,
+   nil,   650,   nil,    21,   805,   nil,   nil,   363,    21,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   878,   nil,
+  1082,   nil,    22,   357,   357,    19,   363,   nil,   nil,   nil,
+    19,   249,   nil,   nil,   nil,   nil,   nil,    19,    21,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    22,    21,    21,   nil,   nil,   467,   nil,   nil,   nil,   nil,
+   404,   413,   413,   362,   nil,   nil,   nil,   907,   nil,   nil,
+   nil,   nil,   nil,    19,   362,   837,   650,   nil,   nil,   nil,
+   nil,  1136,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   936,   nil,   nil,   807,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   807,   nil,    20,   nil,   954,    21,   nil,    20,
+   nil,   807,   807,   nil,   nil,    22,    20,   nil,  1154,   nil,
+   nil,   nil,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   249,   nil,
+   nil,   806,   nil,   806,   nil,   nil,   806,   806,   nil,   nil,
+   nil,    19,    20,   806,   nil,   nil,   nil,   nil,   nil,   806,
+   806,   nil,   nil,   nil,   nil,   nil,   nil,   806,   806,   nil,
+   249,   nil,    19,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    19,   nil,   nil,   nil,  1183,   nil,   837,   nil,   nil,    19,
+    19,   nil,   nil,   nil,   nil,  1021,   nil,   nil,  1022,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    19,   nil,    22,  1160,
+   468,   nil,   806,   468,   nil,   nil,   nil,   nil,   nil,   nil,
+    22,   nil,   nil,   nil,   nil,   nil,    22,   468,   nil,   nil,
+    20,   nil,   nil,   nil,   nil,   nil,  1039,   nil,   nil,   nil,
+   nil,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    20,
+   nil,   nil,   nil,   nil,   nil,  1060,    21,   nil,    20,    20,
+  1198,   nil,   nil,   nil,   363,   807,    19,   807,   nil,   nil,
+   807,   807,   nil,   363,   nil,    20,   nil,   807,   362,    19,
+   nil,   nil,   nil,   807,   807,   nil,    19,   nil,   nil,   nil,
+   nil,   807,   807,   nil,   nil,   nil,   nil,    21,   nil,   nil,
+    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    22,   nil,   nil,   nil,
+    22,   nil,   nil,    21,   357,    22,  1242,   nil,   nil,   nil,
+    19,   nil,   249,   249,   806,   nil,   807,   nil,   nil,   362,
+   nil,   nil,   806,   357,   nil,    20,   806,   249,   nil,   nil,
+   nil,   nil,   nil,   nil,    21,    22,   nil,    21,    20,   nil,
+   nil,    21,   nil,   nil,   nil,    20,    21,    21,    22,    22,
+   nil,   nil,    21,    21,   nil,    19,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1144,   nil,   nil,
+   nil,   nil,   nil,   808,   808,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   362,   nil,   nil,   nil,    20,
+   nil,   650,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   806,    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,
+   nil,   nil,   nil,   nil,    20,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   807,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   807,   nil,   nil,   nil,
+   807,   nil,    32,   nil,   nil,   nil,   nil,   nil,    32,   nil,
+   nil,   363,  1205,   nil,   nil,   nil,   809,   809,   nil,   nil,
+   nil,   nil,   363,   nil,   nil,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    32,    32,    32,   nil,    32,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    21,   nil,   nil,   nil,   nil,    21,   nil,   nil,
+   nil,   nil,   nil,   nil,    21,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,    32,    32,   nil,   nil,    32,   807,   nil,   nil,
+   nil,   nil,    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    21,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   357,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   357,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,    32,    32,    32,
+    32,    32,   nil,   nil,    22,   nil,   808,    22,   nil,   nil,
+   nil,   nil,   nil,   nil,   808,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   808,   808,   nil,   nil,   nil,   nil,   nil,
+    22,   nil,   nil,   810,   810,   nil,   nil,   nil,    21,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    21,
+   nil,    22,   nil,   nil,   468,   nil,   nil,    21,    22,   nil,
+   nil,   nil,   nil,   468,   468,   nil,    21,    21,   nil,   468,
+   468,   nil,   nil,   nil,   nil,    32,    32,    32,    32,    32,
+    32,    32,   nil,    21,   nil,    35,   363,    32,   nil,   nil,
+   nil,    35,   nil,    32,    32,    32,    32,   nil,   nil,   809,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   809,    35,   nil,
+    32,   nil,   nil,   nil,   nil,   nil,   809,   809,    35,    35,
+    35,   nil,    35,   nil,   nil,   nil,   nil,   811,   811,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   363,   nil,   nil,
+    35,   nil,   nil,    21,   nil,    35,    35,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,    32,    32,    21,   nil,   812,   812,
+   nil,   nil,   nil,    21,    32,   nil,   nil,   808,   nil,   808,
+   nil,   nil,   808,   808,   nil,   nil,   nil,   nil,   357,   808,
+   nil,   nil,   nil,    32,   nil,   808,   808,    32,   nil,   357,
+   nil,   nil,    32,   808,   808,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   363,   nil,    35,   nil,    21,   nil,   nil,
+    35,    35,    35,    35,    35,   nil,   nil,   nil,   nil,    22,
+   nil,   nil,    32,   nil,    22,   nil,   nil,   nil,   nil,   nil,
+  1058,    22,   nil,   nil,    32,    32,    32,   nil,   808,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   810,   nil,   nil,   468,
+   nil,   nil,    21,   nil,   810,    32,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   810,   810,   nil,   nil,    22,   nil,   nil,
+   809,   nil,   809,   nil,   nil,   809,   809,   nil,   nil,   nil,
+   nil,   nil,   809,   nil,   nil,   nil,   nil,    44,   809,   809,
+   nil,    32,   nil,    44,   nil,   nil,   809,   809,    35,    35,
+    35,    35,    35,    35,    35,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   303,   nil,   nil,   nil,    35,    35,    35,    35,
+   nil,   nil,   nil,   nil,    44,   353,   353,   nil,   nil,   nil,
+   nil,   nil,   nil,    35,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   809,   nil,   nil,   nil,    22,   nil,   nil,   nil,   nil,
+   811,   nil,    44,   nil,   nil,   nil,   nil,   nil,   811,   nil,
+   nil,   nil,   400,   303,   303,   nil,    22,   811,   811,   nil,
+   808,   nil,   nil,   nil,    22,   nil,    32,   nil,   808,   nil,
+   nil,   nil,   808,    22,    22,   nil,    32,    35,    35,   nil,
+   nil,   812,   nil,   nil,   nil,   nil,   nil,    35,   nil,   812,
+    22,   nil,   nil,  1162,   nil,   nil,   nil,   nil,   812,   812,
+   nil,   nil,   nil,   nil,   nil,   nil,    35,    44,   nil,   nil,
+    35,    32,   nil,   nil,   nil,    35,    44,   810,   nil,   810,
+   nil,   nil,   810,   810,   nil,   nil,   nil,   814,   814,   810,
+   nil,   nil,   nil,   nil,   nil,   810,   810,   nil,   nil,   nil,
+    32,   nil,   nil,   810,   810,    35,   nil,   nil,   nil,   808,
+    32,   nil,   nil,   nil,   413,   nil,   nil,    35,    35,    35,
+    22,   nil,   nil,   809,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   809,   nil,    22,   nil,   809,   nil,   nil,    35,   nil,
+    22,    32,   nil,   nil,    32,   nil,   nil,   nil,   810,   nil,
+   nil,   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    44,   nil,    32,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,    44,   nil,    35,   nil,   nil,   nil,    44,   nil,
+   413,   811,   nil,   811,    22,   nil,   811,   811,   nil,   nil,
+   nil,   nil,   nil,   811,   nil,    44,   nil,   nil,    32,   811,
+   811,    32,    32,   nil,   nil,    32,   nil,   811,   811,   nil,
+    32,    32,   809,   nil,   nil,   nil,    32,    32,   nil,   nil,
+    35,   nil,   812,   nil,   812,   nil,   nil,   812,   812,    22,
+   nil,   nil,   nil,   nil,   812,   nil,   nil,   nil,   nil,   nil,
+   812,   812,   nil,   nil,   nil,   nil,   nil,   nil,   812,   812,
+   nil,   nil,   811,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,
+   810,   nil,    44,   nil,   nil,   nil,   353,    44,   810,   nil,
+   nil,   nil,   810,   812,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   353,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,
+   814,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   814,   nil,
+    44,    44,   nil,    35,   nil,   nil,   nil,   814,   814,   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,   nil,   nil,   nil,   810,
+   nil,   nil,   nil,   nil,    35,   nil,    32,    35,   nil,   nil,
+   nil,    32,    32,   nil,   811,    35,    44,   nil,    32,   nil,
+   nil,   nil,   811,   nil,   nil,    35,   811,   nil,   nil,   nil,
+    35,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    32,   812,   nil,   nil,   nil,   nil,
+   nil,    35,   nil,   812,    35,    35,   nil,   812,    35,   nil,
+   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,    35,
+    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   811,   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,   814,    32,   814,   nil,   nil,   814,   814,   nil,   nil,
+   nil,   nil,   nil,   814,   812,   nil,   nil,   nil,   nil,   814,
+   814,    32,   nil,    32,   nil,   nil,   nil,   814,   814,   nil,
+   nil,    32,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    32,    32,   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   353,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   353,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   814,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,    44,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+   nil,   nil,    44,   nil,    35,    35,   nil,   nil,   nil,   nil,
+   nil,    35,   nil,   nil,   nil,   nil,   nil,    32,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    35,
+    32,   nil,   nil,    44,   256,   nil,   nil,    32,   nil,   nil,
+    44,   nil,   nil,   nil,   326,   326,   326,    35,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   374,   375,   nil,   377,
+   378,   nil,   380,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,
+   nil,    32,   nil,    32,    32,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   814,   nil,   nil,   nil,    32,   nil,
+   nil,   nil,   814,   nil,   nil,   nil,   814,   nil,   nil,   nil,
+   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    35,    32,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,    35,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    35,    35,   nil,   nil,   nil,   nil,   nil,
+   353,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   353,   nil,   814,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    44,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   326,   472,   nil,   nil,   478,
+   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    35,   nil,   nil,   478,   nil,   nil,   nil,   nil,   nil,    44,
+   nil,   nil,   nil,    35,   nil,   nil,   256,   nil,   nil,   nil,
+    35,   nil,   nil,   555,   556,   557,   558,   559,   560,   561,
+   562,   563,   564,   565,   566,   567,   568,   569,   570,   571,
+   572,   573,   574,   575,   576,   nil,   nil,   nil,   nil,   577,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    35,   nil,    35,    35,   nil,   nil,
+   nil,   nil,   nil,   326,   326,   nil,   nil,   nil,   nil,   nil,
+   nil,    35,   nil,   326,   nil,   nil,   nil,    44,   nil,   nil,
+   326,   nil,   326,   nil,   nil,   326,   326,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    44,    35,
+   nil,   nil,   nil,   nil,   nil,   nil,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    44,    44,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   634,   nil,
+   635,   nil,    44,   nil,   nil,  1158,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   303,   nil,   nil,   nil,
+   nil,   nil,    44,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   nil,   nil,   nil,   nil,    44,   nil,   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,   731,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   303,   nil,   nil,   nil,    44,   nil,   nil,   nil,
+   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   764,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   326,   nil,   478,   478,   478,
+   nil,   nil,   nil,   nil,   nil,   nil,   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,   375,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   326,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   478,
+   nil,   nil,   858,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   326,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   478,   326,   nil,   nil,   nil,   915,   nil,   326,   326,   478,
+   478,   nil,   nil,   nil,   nil,   478,   478,   nil,   nil,   nil,
+   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   731,   764,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,
+   326,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1065,  1066,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  1086,
+  1087,   478,   478,   478,   478,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,  1120,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   478,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   326,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   326 ]
+
+racc_goto_check = [
+     6,   178,    46,   251,   251,    78,    95,    95,   113,    49,
+   125,    78,   117,   117,    79,    44,    14,   217,     6,     6,
+    27,   155,    88,    88,    37,    10,    27,   217,    96,    74,
+    78,   124,   153,    35,   130,    37,     2,    54,    54,    40,
+    40,    40,    78,    78,    78,    44,    12,    33,    98,   249,
+   249,   249,    12,    33,   252,   159,   159,    27,    16,    88,
+    88,    88,    21,    21,    28,    28,     6,    45,    45,   118,
+    78,   120,    81,    81,    62,    62,    62,    92,    92,    92,
+    78,    78,    78,   261,    33,    27,    23,    23,    81,    63,
+    23,    49,    83,    83,   148,    27,    76,     6,     8,     6,
+     6,     6,     6,     6,     6,   130,    32,     6,   196,   196,
+    92,   206,    33,    75,   179,    26,    35,   256,    93,    93,
+    32,   167,   177,   177,   211,   261,   246,   246,    86,   132,
+     5,    69,    69,    69,     9,    78,   211,   149,    61,    61,
+     9,     7,   257,    64,    78,    70,   212,   150,    71,   147,
+    27,    23,    23,    23,    23,    39,    39,   169,     1,    27,
+   165,   171,   172,    94,    94,    94,   166,     3,   166,   233,
+    81,    11,   233,    99,   197,   197,    99,    33,    80,    80,
+   251,   221,   221,   210,   197,    15,    33,   245,   245,    17,
+   210,    12,    19,    20,    22,    25,    94,    29,    31,     9,
+   261,     5,    98,    13,    24,    47,    95,    24,    48,    51,
+    52,    53,   257,    55,    57,    60,    61,    66,   195,    84,
+    89,    24,    91,    97,   109,   112,   127,   129,    78,     6,
+   133,   134,   135,   136,   137,    40,   138,   139,   140,   151,
+    78,   156,   162,    27,   194,    27,    78,   163,    27,   170,
+   173,   174,   217,   175,    37,    27,     6,     6,   176,   171,
+   172,    27,    27,    78,     9,     7,   181,   182,    92,    92,
+    33,   169,    33,     9,    79,    33,   184,   185,    27,   187,
+   188,   189,    33,   190,   191,   192,   199,   201,    33,    33,
+   202,   124,    99,    99,    81,   203,   152,   207,   208,   177,
+   214,   215,   224,   246,   225,    33,   226,   229,   230,   231,
+   232,   235,     6,   236,   237,   167,    26,    26,    40,    40,
+    26,   238,   239,   240,   243,   148,     6,     6,    40,   148,
+   212,   244,     6,    88,    26,    95,   250,   165,   212,   211,
+   254,    95,   255,   260,    76,   nil,    78,   nil,    35,   120,
+    78,    44,    88,    76,    78,    78,    92,    92,   150,    74,
+    37,    27,   147,   nil,   nil,    27,    92,   132,   149,   130,
+    27,   221,   221,    78,   210,   234,    64,   234,    37,    44,
+   234,    93,   210,   234,   nil,    78,   210,     6,    33,    13,
+   169,   252,    33,    39,    39,    85,   nil,    33,    78,    78,
+    27,   179,   nil,    99,   195,   195,   nil,    37,    23,    85,
+   nil,    69,     6,    27,    27,   nil,   nil,   nil,   nil,   nil,
+    69,    79,    35,    75,    13,   194,   130,    33,   nil,   nil,
+   194,   194,   206,     8,   166,   nil,   nil,   nil,   193,   193,
+    33,    33,   251,    94,   nil,   nil,   256,    86,   118,     6,
+    61,    61,    94,    70,    78,   nil,    71,   nil,    70,   nil,
+    95,    71,   nil,   210,    35,     5,    95,   nil,   nil,    27,
+    44,   132,    37,   152,    35,     9,   120,   152,   153,   152,
+     6,     6,    16,   nil,     6,     2,    12,   249,   249,   nil,
+   249,   249,   159,   249,   nil,    10,    33,   166,    63,   252,
+   117,    40,   nil,    21,    63,   251,   nil,   251,    30,    30,
+   nil,    13,    30,    81,    35,   nil,    13,    94,    95,   nil,
+   219,   219,     5,   nil,   nil,   nil,   nil,    61,    62,   nil,
+   148,   148,   nil,    83,    62,   nil,   nil,    61,   nil,   nil,
+    40,   nil,   nil,    96,     6,   261,   nil,   152,   nil,   152,
+    40,   152,    45,   152,    98,   nil,    78,    78,    95,    13,
+    13,   177,   nil,   nil,   130,   246,   nil,    44,   nil,    61,
+   152,    76,    28,    30,    30,    30,    30,    61,    79,   252,
+   nil,   nil,     6,     9,   nil,   nil,   nil,   nil,   nil,     6,
+   nil,   nil,   nil,   196,    93,    95,    32,    32,   nil,   nil,
+    88,   nil,    32,    32,   nil,    95,    81,    74,   nil,    88,
+   nil,   166,   nil,    78,   nil,   166,    74,   nil,     6,    61,
+    61,    78,   nil,   111,    40,   125,    62,   nil,    27,    54,
+    78,   nil,   155,   nil,   nil,   nil,    98,    95,    99,   nil,
+   nil,   nil,   nil,   nil,   nil,    95,   234,   nil,   nil,   234,
+   nil,   nil,   nil,   nil,    78,    33,   nil,    78,   nil,   nil,
+     6,   111,   nil,   nil,    30,    30,    40,   nil,   nil,    27,
+     6,   193,    27,   159,   159,   nil,    40,   nil,   nil,   193,
+    78,    30,    30,    81,   130,   166,   nil,    95,    24,   117,
+   nil,   nil,   nil,    81,   nil,    27,    33,    24,    24,    33,
+    12,   nil,   nil,    24,    24,   219,   249,   249,   249,   249,
+     6,    78,   nil,    85,   217,    85,    40,   nil,    78,   nil,
+   nil,   nil,    33,   nil,   nil,    81,    27,    94,   nil,    27,
+     6,    81,     6,    27,   nil,    14,   nil,   nil,    27,    27,
+   nil,   nil,   148,   148,    27,    27,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    33,   nil,   nil,    33,    21,   nil,   117,
+    33,   111,   117,    44,   113,    33,    33,    81,   nil,    94,
+   nil,    33,    33,   251,   nil,    81,    92,    44,    44,   124,
+   111,   111,   nil,   111,   159,   nil,   nil,    83,   nil,    78,
+   nil,   nil,    32,   nil,     6,    85,    46,    78,   178,   nil,
+   249,    26,   nil,    49,   nil,   nil,    78,    78,   nil,   nil,
+    26,    26,   nil,   nil,   nil,    13,    26,    26,    13,   nil,
+   nil,    12,     6,   nil,   nil,    95,   nil,    88,    95,   nil,
+    30,   nil,   nil,     6,    74,   nil,   251,   nil,    88,    44,
+     9,   nil,   nil,   nil,   nil,    74,    94,     9,    78,     6,
+   nil,    30,   193,   nil,   nil,   nil,   nil,   193,   193,    78,
+    12,   nil,   nil,   nil,     6,   nil,     6,    36,   nil,   nil,
+   193,   160,    44,   nil,   160,   nil,   nil,   nil,   nil,   nil,
+   nil,    44,    81,   nil,   nil,    85,    85,    44,   nil,    78,
+   nil,    85,    85,    24,    78,   nil,   nil,   nil,   nil,   nil,
+    44,    78,   nil,   nil,    27,   nil,    23,   nil,   nil,    27,
+   nil,   nil,   nil,   nil,   nil,     6,    27,   nil,   nil,   nil,
+   nil,   nil,   130,   193,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    33,   nil,   nil,    27,     6,    33,    78,   nil,   219,
+   219,   nil,   nil,    33,   nil,   nil,   nil,   nil,   nil,   219,
+   251,   nil,    27,   nil,   251,   219,   nil,    94,    36,    12,
+   nil,    33,    44,   nil,   nil,   nil,   nil,    44,    44,   nil,
+    78,   nil,    78,   nil,   nil,    78,    78,   nil,   nil,    33,
+   nil,   nil,    78,   nil,   nil,   nil,   nil,   nil,    78,    78,
+   nil,   nil,   nil,   nil,   nil,   nil,    78,    78,   111,   111,
+   nil,    44,   nil,   nil,   nil,   219,    26,   nil,   nil,   nil,
+   nil,   nil,   nil,    23,   nil,    78,     6,    30,   111,   nil,
+    35,   nil,   nil,   nil,   251,   nil,   nil,   217,   nil,   nil,
+    27,   nil,   nil,   nil,   nil,   nil,    78,   nil,   nil,   nil,
+   nil,    78,   nil,   nil,    78,    23,   nil,   nil,   nil,   nil,
+    13,    27,    88,    78,    78,   nil,   nil,    33,   nil,    27,
+   nil,   nil,    13,   nil,   nil,   nil,   nil,   nil,    27,    27,
+    78,    34,    30,    78,   nil,   130,   nil,    34,    33,   nil,
+   nil,    85,   nil,   nil,   nil,    27,    33,   nil,    27,    44,
+    44,    44,   nil,   nil,    34,    33,    33,   nil,    13,    44,
+   nil,   nil,   nil,   nil,    34,    34,    34,     6,    34,    34,
+    34,   nil,    33,    88,   nil,   164,   nil,   164,   nil,   nil,
+    44,   nil,     6,     6,     6,    61,   nil,    85,    85,    85,
+    85,   nil,   nil,   nil,    78,   nil,    34,   nil,   nil,   nil,
+    78,    34,    34,   160,     6,    34,    34,    34,    34,   nil,
+    38,   219,   111,    78,     6,    27,    38,   nil,   111,   nil,
+    78,   nil,   nil,   nil,   nil,    37,   nil,   111,    27,   111,
+   nil,   253,   nil,    78,   nil,    27,   nil,   nil,   nil,    88,
+   nil,    78,    33,   nil,   nil,    78,   nil,    38,    38,    38,
+   nil,   nil,   nil,    95,   nil,    33,   nil,    13,   nil,   nil,
+    78,    34,    33,    44,    78,    13,    34,    34,    34,    34,
+    34,   nil,   nil,   nil,    13,    38,     6,    23,    23,    27,
+   nil,   nil,    40,   nil,   nil,    38,    38,    38,   101,   101,
+   nil,    13,   nil,     6,     6,     6,     6,   nil,     6,   nil,
+   nil,    72,   nil,     6,    44,   nil,    33,   nil,   nil,    78,
+   nil,    36,   nil,    85,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    78,   nil,    27,    36,   nil,   nil,   nil,   nil,
+   nil,     6,   nil,   nil,   nil,     6,     6,     6,     6,   nil,
+    38,    81,   nil,   nil,   nil,   nil,   nil,     6,   nil,    38,
+   nil,    33,   nil,   nil,    34,    34,    34,    34,    34,    34,
+    34,    13,   nil,   nil,    81,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,    34,    34,    34,    34,   nil,   160,   nil,    72,
+   160,    13,   nil,   nil,   160,   nil,   160,    36,    30,    34,
+   nil,   nil,   nil,   111,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    72,   nil,   253,   nil,   nil,   253,   nil,
+   nil,   nil,   253,   nil,   253,   nil,   nil,   nil,   nil,   nil,
+    36,   nil,   nil,   nil,   nil,    13,   nil,   nil,   nil,    36,
+   nil,   nil,   nil,    38,   nil,    38,   nil,   nil,    38,    72,
+   nil,   164,   nil,    34,    34,    38,   nil,   nil,    36,   nil,
+   nil,    38,    38,    34,   160,   nil,   160,   nil,   160,   nil,
+   160,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,
+    13,   nil,    34,   nil,   nil,   nil,    34,   160,   nil,   nil,
+    34,    34,   253,   nil,   253,   nil,   253,   nil,   253,   nil,
+   nil,   nil,   nil,   nil,   nil,    30,   nil,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   164,   253,   164,   nil,   164,   nil,
+    36,    34,   nil,   nil,   nil,    36,    36,   161,   161,   161,
+   nil,   101,   nil,    34,    34,    34,   nil,    30,   nil,   101,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   101,   101,
+   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   nil,   nil,    38,   nil,    72,   nil,    38,
+    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    90,    90,   nil,   nil,   nil,    38,   nil,
+    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    38,   nil,   nil,   nil,   nil,   nil,    72,   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,   164,   nil,   164,   nil,    34,   nil,   161,   161,
+   161,   161,   nil,   161,   nil,   nil,   nil,    36,    36,    36,
+   nil,   nil,   nil,   nil,   nil,    72,   nil,    72,    42,   nil,
+   nil,    72,   nil,   164,    42,   nil,   nil,   nil,   nil,    38,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,    72,   nil,
+   161,   161,   161,   161,    72,    34,   nil,   nil,    90,   nil,
+    90,   nil,   161,    90,    90,    42,    42,    42,   nil,   nil,
+   nil,   nil,   164,    72,   164,   nil,   164,   nil,   nil,    30,
+    30,   nil,   101,   nil,   101,   nil,   nil,   101,   101,   nil,
+    34,   nil,   nil,    42,   101,   164,   nil,   102,   102,   nil,
+   101,   101,   nil,    42,    42,    42,   nil,   nil,   101,   101,
+   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,    34,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   101,   nil,   nil,   nil,   nil,    42,   nil,
+    34,   nil,   nil,    34,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,    34,    36,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    34,   nil,   nil,   nil,   nil,    34,   nil,    90,   nil,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    38,   nil,    34,   nil,   nil,
+    34,    34,   nil,   nil,    34,   nil,   nil,   nil,   nil,    34,
+    34,   103,   103,   nil,   nil,    34,    34,   nil,   nil,    38,
+   nil,   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    90,    42,   nil,    42,   nil,   nil,    42,    72,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,    38,   nil,   nil,   nil,    42,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   101,    42,   nil,   nil,   nil,
+   nil,   nil,   nil,   101,    72,   nil,    38,   101,   nil,    38,
+   nil,   nil,   nil,    38,   nil,   nil,   nil,   nil,    38,    38,
+   nil,   nil,   nil,   nil,    38,    38,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,    90,
+   102,    90,   nil,   nil,   nil,   nil,   nil,   nil,   102,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   102,   102,   nil,
+   nil,   nil,   nil,   nil,    34,    43,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,   nil,    34,   nil,   nil,    90,    42,
+   nil,    90,   nil,    42,   101,   nil,   nil,    42,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,
+    72,   nil,    43,    43,    43,    34,    42,   nil,   nil,   nil,
+    34,    34,   nil,   nil,   nil,   nil,   nil,    34,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,    42,    42,   nil,   nil,    34,   nil,   nil,   nil,   nil,
+    43,    43,    43,    38,   nil,   nil,   nil,    90,   nil,   nil,
+   nil,   nil,   nil,    34,    38,    90,    90,   nil,   nil,   nil,
+   nil,    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    90,   nil,   nil,   103,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   103,   nil,    38,   nil,    90,    42,   nil,    38,
+   nil,   103,   103,   nil,   nil,    43,    38,   nil,    72,   nil,
+   nil,   nil,   nil,   nil,    43,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    38,   nil,   nil,   nil,    34,   nil,
+   nil,   102,   nil,   102,   nil,   nil,   102,   102,   nil,   nil,
+   nil,    34,    38,   102,   nil,   nil,   nil,   nil,   nil,   102,
+   102,   nil,   nil,   nil,   nil,   nil,   nil,   102,   102,   nil,
+    34,   nil,    34,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    34,   nil,   nil,   nil,    72,   nil,    90,   nil,   nil,    34,
+    34,   nil,   nil,   nil,   nil,    90,   nil,   nil,    90,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    34,   nil,    43,    34,
+    43,   nil,   102,    43,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,   nil,   nil,   nil,    43,    43,   nil,   nil,
+    38,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,   nil,
+   nil,   nil,   nil,    43,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    38,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    38,
+   nil,   nil,   nil,   nil,   nil,    90,    42,   nil,    38,    38,
+    34,   nil,   nil,   nil,    42,   103,    34,   103,   nil,   nil,
+   103,   103,   nil,    42,   nil,    38,   nil,   103,    38,    34,
+   nil,   nil,   nil,   103,   103,   nil,    34,   nil,   nil,   nil,
+   nil,   103,   103,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    43,   nil,   nil,   nil,
+    43,   nil,   nil,    42,    43,    43,    34,   nil,   nil,   nil,
+    34,   nil,    34,    34,   102,   nil,   103,   nil,   nil,    38,
+   nil,   nil,   102,    43,   nil,    38,   102,    34,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,    43,   nil,    42,    38,   nil,
+   nil,    42,   nil,   nil,   nil,    38,    42,    42,    43,    43,
+   nil,   nil,    42,    42,   nil,    34,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,   nil,
+   nil,   nil,   nil,   104,   104,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,   nil,    38,
+   nil,    90,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   102,    43,   nil,   nil,   nil,   nil,   nil,
+   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   103,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   103,   nil,   nil,   nil,
+   103,   nil,    65,   nil,   nil,   nil,   nil,   nil,    65,   nil,
+   nil,    42,    90,   nil,   nil,   nil,   105,   105,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,    65,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    65,    65,    65,   nil,    65,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+   nil,   nil,   nil,   nil,    42,   nil,   nil,    65,   nil,   nil,
+   nil,   nil,    65,    65,   nil,   nil,    65,   103,   nil,   nil,
+   nil,   nil,    42,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    42,   nil,   nil,    43,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    43,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    65,   nil,   nil,   nil,   nil,    65,    65,    65,
+    65,    65,   nil,   nil,    43,   nil,   104,    43,   nil,   nil,
+   nil,   nil,   nil,   nil,   104,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   104,   104,   nil,   nil,   nil,   nil,   nil,
+    43,   nil,   nil,   106,   106,   nil,   nil,   nil,    42,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,
+   nil,    43,   nil,   nil,    43,   nil,   nil,    42,    43,   nil,
+   nil,   nil,   nil,    43,    43,   nil,    42,    42,   nil,    43,
+    43,   nil,   nil,   nil,   nil,    65,    65,    65,    65,    65,
+    65,    65,   nil,    42,   nil,    68,    42,    65,   nil,   nil,
+   nil,    68,   nil,    65,    65,    65,    65,   nil,   nil,   105,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   105,    68,   nil,
+    65,   nil,   nil,   nil,   nil,   nil,   105,   105,    68,    68,
+    68,   nil,    68,   nil,   nil,   nil,   nil,   107,   107,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    42,   nil,   nil,
+    68,   nil,   nil,    42,   nil,    68,    68,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,    65,    65,    42,   nil,   108,   108,
+   nil,   nil,   nil,    42,    65,   nil,   nil,   104,   nil,   104,
+   nil,   nil,   104,   104,   nil,   nil,   nil,   nil,    43,   104,
+   nil,   nil,   nil,    65,   nil,   104,   104,    65,   nil,    43,
+   nil,   nil,    65,   104,   104,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    42,   nil,    68,   nil,    42,   nil,   nil,
+    68,    68,    68,    68,    68,   nil,   nil,   nil,   nil,    43,
+   nil,   nil,    65,   nil,    43,   nil,   nil,   nil,   nil,   nil,
+    43,    43,   nil,   nil,    65,    65,    65,   nil,   104,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   106,   nil,   nil,    43,
+   nil,   nil,    42,   nil,   106,    65,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   106,   106,   nil,   nil,    43,   nil,   nil,
+   105,   nil,   105,   nil,   nil,   105,   105,   nil,   nil,   nil,
+   nil,   nil,   105,   nil,   nil,   nil,   nil,    77,   105,   105,
+   nil,    65,   nil,    77,   nil,   nil,   105,   105,    68,    68,
+    68,    68,    68,    68,    68,   nil,   nil,   nil,   nil,   nil,
+    68,   nil,    77,   nil,   nil,   nil,    68,    68,    68,    68,
+   nil,   nil,   nil,   nil,    77,    77,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,    65,   nil,   nil,
+   nil,   105,   nil,   nil,   nil,    43,   nil,   nil,   nil,   nil,
+   107,   nil,    77,   nil,   nil,   nil,   nil,   nil,   107,   nil,
+   nil,   nil,    77,    77,    77,   nil,    43,   107,   107,   nil,
+   104,   nil,   nil,   nil,    43,   nil,    65,   nil,   104,   nil,
+   nil,   nil,   104,    43,    43,   nil,    65,    68,    68,   nil,
+   nil,   108,   nil,   nil,   nil,   nil,   nil,    68,   nil,   108,
+    43,   nil,   nil,    43,   nil,   nil,   nil,   nil,   108,   108,
+   nil,   nil,   nil,   nil,   nil,   nil,    68,    77,   nil,   nil,
+    68,    65,   nil,   nil,   nil,    68,    77,   106,   nil,   106,
+   nil,   nil,   106,   106,   nil,   nil,   nil,   115,   115,   106,
+   nil,   nil,   nil,   nil,   nil,   106,   106,   nil,   nil,   nil,
+    65,   nil,   nil,   106,   106,    68,   nil,   nil,   nil,   104,
+    65,   nil,   nil,   nil,    43,   nil,   nil,    68,    68,    68,
+    43,   nil,   nil,   105,   nil,   nil,    65,   nil,   nil,   nil,
+   nil,   105,   nil,    43,   nil,   105,   nil,   nil,    68,   nil,
+    43,    65,   nil,   nil,    65,   nil,   nil,   nil,   106,   nil,
+   nil,   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    77,   nil,    65,   nil,   nil,   nil,   nil,    65,   nil,   nil,
+   nil,   nil,    77,   nil,    68,   nil,   nil,   nil,    77,   nil,
+    43,   107,   nil,   107,    43,   nil,   107,   107,   nil,   nil,
+   nil,   nil,   nil,   107,   nil,    77,   nil,   nil,    65,   107,
+   107,    65,    65,   nil,   nil,    65,   nil,   107,   107,   nil,
+    65,    65,   105,   nil,   nil,   nil,    65,    65,   nil,   nil,
+    68,   nil,   108,   nil,   108,   nil,   nil,   108,   108,    43,
+   nil,   nil,   nil,   nil,   108,   nil,   nil,   nil,   nil,   nil,
+   108,   108,   nil,   nil,   nil,   nil,   nil,   nil,   108,   108,
+   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,
+   106,   nil,    77,   nil,   nil,   nil,    77,    77,   106,   nil,
+   nil,   nil,   106,   108,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    68,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,
+   115,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   115,   nil,
+    77,    77,   nil,    68,   nil,   nil,   nil,   115,   115,   nil,
+   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   106,
+   nil,   nil,   nil,   nil,    68,   nil,    65,    68,   nil,   nil,
+   nil,    65,    65,   nil,   107,    68,    77,   nil,    65,   nil,
+   nil,   nil,   107,   nil,   nil,    68,   107,   nil,   nil,   nil,
+    68,   nil,   nil,   nil,   nil,   nil,    65,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    65,   108,   nil,   nil,   nil,   nil,
+   nil,    68,   nil,   108,    68,    68,   nil,   108,    68,   nil,
+   nil,   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,    68,
+    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   107,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    65,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   115,    65,   115,   nil,   nil,   115,   115,   nil,   nil,
+   nil,   nil,   nil,   115,   108,   nil,   nil,   nil,   nil,   115,
+   115,    65,   nil,    65,   nil,   nil,   nil,   115,   115,   nil,
+   nil,    65,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    65,    65,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    77,   nil,   nil,   nil,    65,   nil,   nil,
+   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   115,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,    77,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+   nil,   nil,    77,   nil,    68,    68,   nil,   nil,   nil,   nil,
+   nil,    68,   nil,   nil,   nil,   nil,   nil,    65,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    68,
+    65,   nil,   nil,    77,    41,   nil,   nil,    65,   nil,   nil,
+    77,   nil,   nil,   nil,    41,    41,    41,    68,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,    41,
+    41,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,    65,   nil,    65,    65,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   115,   nil,   nil,   nil,    65,   nil,
+   nil,   nil,   115,   nil,   nil,   nil,   115,   nil,   nil,   nil,
+   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    68,    65,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    68,   nil,    68,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    68,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,    68,    68,   nil,   nil,   nil,   nil,   nil,
+    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    68,    77,   nil,   115,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    77,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,    41,
+    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    68,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,    77,
+   nil,   nil,   nil,    68,   nil,   nil,    41,   nil,   nil,   nil,
+    68,   nil,   nil,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,    41,    41,    41,    41,    41,
+    41,    41,    41,    41,    41,   nil,   nil,   nil,   nil,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,    68,   nil,    68,    68,   nil,   nil,
+   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,   nil,   nil,
+   nil,    68,   nil,    41,   nil,   nil,   nil,    77,   nil,   nil,
+    41,   nil,    41,   nil,   nil,    41,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    77,    68,
+   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    77,    77,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,
+    41,   nil,    77,   nil,   nil,    77,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,   nil,   nil,    77,   nil,   nil,   nil,   nil,
+   nil,   nil,    77,   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,   nil,    77,   nil,   nil,   nil,    77,   nil,   nil,   nil,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,    41,    41,    41,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,    77,   nil,   nil,   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,    41,   nil,
+   nil,    41,   nil,    41,   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,    41,
+   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,   nil,   nil,    41,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+    41,    41,   nil,   nil,   nil,   nil,   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,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+    41,    41,   nil,   nil,   nil,    41,   nil,    41,    41,    41,
+    41,   nil,   nil,   nil,   nil,    41,    41,   nil,   nil,   nil,
+   nil,   nil,   nil,    41,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,    41,    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,   nil,   nil,
+   nil,   nil,   nil,   nil,   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,    41,   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,   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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,    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,   nil,   nil,   nil,   nil,   nil,   nil,    41,
+    41,    41,    41,    41,    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,   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,   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,   nil,   nil,   nil,   nil,   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,    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,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   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,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   nil,   nil,   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 ]
+
+racc_goto_pointer = [
+   nil,   158,    34,   167,   nil,   125,    -2,   133,    93,   132,
+  -117,   161,  -191,   164,  -482,  -547,  -674,  -741,   nil,  -418,
+  -152,    51,   182,    14,   -23,   118,    90,    18,  -162,   -29,
+   436,    55,  -124,    45,  1069,  -198,   479,     5,  1148,   135,
+     4,  3549,  1586,  1913,    -9,  -486,   -25,   -57,   -55,   -18,
+   nil,   182,   -83,  -367,   -37,  -442,   nil,  -655,   nil,   nil,
+   185,   -94,    42,  -224,  -451,  2420,  -370,   nil,  2653,    96,
+   106,   109,   995,   nil,   -11,    72,  -274,  2865,     3,  -396,
+   100,    61,   nil,    81,  -237,   165,    79,   nil,   -18,   168,
+  1287,   154,    42,  -268,   128,   -26,  -286,  -361,  -281,  -426,
+   nil,   675,  1104,  1238,  1780,  1883,  2040,  2144,  2185,   197,
+   nil,   124,  -164,   -62,   nil,  2464,   nil,  -380,  -797,   nil,
+  -797,   nil,   nil,   nil,  -367,  -648,   nil,   149,   nil,  -187,
+    29,   nil,   108,   164,   164,  -151,   164,  -439,  -440,  -810,
+  -178,   nil,   nil,   nil,   nil,   nil,   nil,  -807,  -426,  -383,
+  -810,  -717,  -714,  -706,   nil,  -498,  -769,   nil,   nil,  -448,
+   133,   333,  -882,  -763,   371,  -850,  -576,  -703,   nil,  -739,
+  -904,  -992,  -991,  -167,  -644,   160,  -420,  -118,   -27,  -194,
+   nil,   -53,   -53,   nil,  -556,  -384,   nil,  -304,  -866,  -757,
+  -990,  -592,  -917,  -115,  -542,  -568,  -445,  -798,   nil,  -682,
+   nil,  -682,  -495,  -490,   nil,   nil,  -676,  -490,  -490,   nil,
+  -796,  -843,  -840,   nil,  -688,  -687,   nil,   -82,   nil,   -33,
+   nil,  -622,   nil,   nil,  -514,  -430,  -631,   nil,   nil,   211,
+   207,   207,   207,  -257,   -46,   207,   208,   208,  -576,  -362,
+  -362,   nil,   nil,   215,  -343,  -175,  -114,   nil,   nil,  -458,
+  -406,  -237,  -688,   161,  -398,  -842,  -627, -1049,   nil,   nil,
+    37,  -519 ]
+
+racc_goto_default = [
+   nil,   nil,   nil,   nil,     5,   nil,   341,     7,   399,   344,
+   nil,   nil,   nil,   498,   nil,   nil,   nil,   nil,   340,   342,
+   nil,   nil,   nil,   nil,    14,    15,    23,   254,   nil,   nil,
+    17,   nil,   466,   255,   373,   nil,   nil,   671,   258,   nil,
+    28,    26,   259,   253,   543,   nil,   nil,   nil,   nil,   150,
+    27,   nil,   nil,   nil,   nil,   nil,   394,   nil,    29,    30,
+   nil,   854,   nil,   nil,   nil,   361,   nil,    31,   358,   481,
+    38,   nil,   nil,    40,    43,    42,   nil,   250,   251,   411,
+   nil,   489,   149,    95,   nil,   471,   111,    52,    55,   290,
+   332,   nil,   482,   nil,   483,   494,   506,   725,   598,   330,
+   315,    56,    57,    58,    59,    60,    61,    62,    63,    64,
+    66,   nil,   nil,   316,    70,    71,    72,   nil,   nil,    73,
+  1030,    74,    75,    76,   nil,   nil,    77,   nil,    78,   nil,
+   652,    79,   237,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   nil,   320,   308,   734,   934,   661,  1031,   752,   518,   nil,
+   753,   754,   504,   500,   501,   nil,  1234,   748,  1121,   nil,
+   505,   nil,   nil,   nil,   507,   nil,   509,   nil,  1009,   nil,
+   nil,   nil,   516,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
+   493,   nil,   nil,   832,   nil,   nil,   583,   nil,   nil,   nil,
+   nil,   nil,   nil,  1104,   nil,   777,   980,   779,   780,   784,
+   781,   782,   nil,   nil,   783,   785,   nil,   nil,   nil,   979,
+   981,   789,   nil,   791,   792,   793,   794,   nil,   798,   527,
+   799,   800,   801,   802,   nil,   nil,   nil,    94,    96,    98,
+   nil,   nil,   nil,   nil,   682,   nil,   nil,   nil,   nil,   nil,
+   nil,   107,   108,   nil,   nil,   238,   944,   241,   503,   nil,
+   508,   952,   521,   523,   524,  1132,   528,  1133,   531,   534,
+   nil,   335 ]
+
+racc_reduce_table = [
+  0, 0, :racc_error,
+  0, 150, :_reduce_1,
+  2, 148, :_reduce_2,
+  2, 149, :_reduce_3,
+  1, 151, :_reduce_none,
+  1, 151, :_reduce_none,
+  3, 151, :_reduce_6,
+  2, 151, :_reduce_none,
+  1, 154, :_reduce_none,
+  0, 158, :_reduce_9,
+  3, 154, :_reduce_10,
+  3, 157, :_reduce_11,
+  0, 164, :_reduce_12,
+  6, 159, :_reduce_13,
+  3, 159, :_reduce_14,
+  2, 160, :_reduce_15,
+  1, 165, :_reduce_none,
+  1, 165, :_reduce_none,
+  3, 165, :_reduce_18,
+  2, 165, :_reduce_19,
+  1, 166, :_reduce_none,
+  0, 167, :_reduce_21,
+  3, 166, :_reduce_22,
+  0, 178, :_reduce_23,
+  4, 156, :_reduce_24,
+  3, 156, :_reduce_25,
+  3, 156, :_reduce_26,
+  3, 156, :_reduce_27,
+  2, 156, :_reduce_28,
+  3, 156, :_reduce_29,
+  3, 156, :_reduce_30,
+  3, 156, :_reduce_31,
+  3, 156, :_reduce_32,
+  3, 156, :_reduce_33,
+  4, 156, :_reduce_34,
+  1, 156, :_reduce_none,
+  3, 156, :_reduce_36,
+  3, 156, :_reduce_37,
+  5, 156, :_reduce_38,
+  3, 156, :_reduce_39,
+  1, 156, :_reduce_none,
+  3, 171, :_reduce_41,
+  3, 171, :_reduce_42,
+  6, 171, :_reduce_43,
+  5, 171, :_reduce_44,
+  5, 171, :_reduce_45,
+  5, 171, :_reduce_46,
+  5, 171, :_reduce_47,
+  4, 171, :_reduce_48,
+  6, 171, :_reduce_49,
+  4, 171, :_reduce_50,
+  6, 171, :_reduce_51,
+  3, 171, :_reduce_52,
+  1, 179, :_reduce_53,
+  3, 179, :_reduce_54,
+  1, 179, :_reduce_none,
+  1, 177, :_reduce_none,
+  3, 177, :_reduce_57,
+  3, 177, :_reduce_58,
+  3, 177, :_reduce_59,
+  2, 177, :_reduce_60,
+  0, 194, :_reduce_61,
+  4, 177, :_reduce_62,
+  0, 195, :_reduce_63,
+  4, 177, :_reduce_64,
+  1, 177, :_reduce_none,
+  1, 193, :_reduce_66,
+  2, 185, :_reduce_67,
+  0, 200, :_reduce_68,
+  5, 189, :_reduce_69,
+  1, 170, :_reduce_70,
+  0, 203, :_reduce_71,
+  0, 204, :_reduce_72,
+  4, 201, :_reduce_73,
+  1, 173, :_reduce_none,
+  1, 173, :_reduce_none,
+  1, 205, :_reduce_none,
+  4, 205, :_reduce_77,
+  0, 213, :_reduce_78,
+  4, 210, :_reduce_79,
+  1, 212, :_reduce_80,
+  2, 187, :_reduce_81,
+  3, 187, :_reduce_82,
+  4, 187, :_reduce_83,
+  5, 187, :_reduce_84,
+  4, 187, :_reduce_85,
+  5, 187, :_reduce_86,
+  2, 187, :_reduce_87,
+  2, 187, :_reduce_88,
+  2, 187, :_reduce_89,
+  2, 187, :_reduce_90,
+  2, 187, :_reduce_91,
+  1, 172, :_reduce_none,
+  3, 172, :_reduce_93,
+  1, 218, :_reduce_none,
+  3, 218, :_reduce_95,
+  1, 217, :_reduce_96,
+  2, 217, :_reduce_97,
+  3, 217, :_reduce_98,
+  5, 217, :_reduce_99,
+  2, 217, :_reduce_100,
+  4, 217, :_reduce_101,
+  2, 217, :_reduce_102,
+  4, 217, :_reduce_103,
+  1, 217, :_reduce_104,
+  3, 217, :_reduce_105,
+  1, 221, :_reduce_none,
+  3, 221, :_reduce_107,
+  2, 220, :_reduce_108,
+  3, 220, :_reduce_109,
+  1, 223, :_reduce_110,
+  3, 223, :_reduce_111,
+  1, 222, :_reduce_112,
+  1, 222, :_reduce_113,
+  4, 222, :_reduce_114,
+  3, 222, :_reduce_115,
+  3, 222, :_reduce_116,
+  3, 222, :_reduce_117,
+  3, 222, :_reduce_118,
+  2, 222, :_reduce_119,
+  1, 222, :_reduce_120,
+  1, 174, :_reduce_121,
+  1, 174, :_reduce_122,
+  4, 174, :_reduce_123,
+  3, 174, :_reduce_124,
+  3, 174, :_reduce_125,
+  3, 174, :_reduce_126,
+  3, 174, :_reduce_127,
+  2, 174, :_reduce_128,
+  1, 174, :_reduce_129,
+  1, 226, :_reduce_130,
+  1, 226, :_reduce_none,
+  2, 227, :_reduce_132,
+  1, 227, :_reduce_133,
+  3, 227, :_reduce_134,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_none,
+  1, 196, :_reduce_138,
+  1, 196, :_reduce_none,
+  1, 168, :_reduce_140,
+  1, 168, :_reduce_none,
+  1, 169, :_reduce_142,
+  0, 231, :_reduce_143,
+  4, 169, :_reduce_144,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 228, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  1, 229, :_reduce_none,
+  3, 188, :_reduce_216,
+  3, 188, :_reduce_217,
+  6, 188, :_reduce_218,
+  5, 188, :_reduce_219,
+  5, 188, :_reduce_220,
+  5, 188, :_reduce_221,
+  5, 188, :_reduce_222,
+  4, 188, :_reduce_223,
+  3, 188, :_reduce_224,
+  3, 188, :_reduce_225,
+  3, 188, :_reduce_226,
+  2, 188, :_reduce_227,
+  2, 188, :_reduce_228,
+  2, 188, :_reduce_229,
+  2, 188, :_reduce_230,
+  3, 188, :_reduce_231,
+  3, 188, :_reduce_232,
+  3, 188, :_reduce_233,
+  3, 188, :_reduce_234,
+  3, 188, :_reduce_235,
+  3, 188, :_reduce_236,
+  4, 188, :_reduce_237,
+  2, 188, :_reduce_238,
+  2, 188, :_reduce_239,
+  3, 188, :_reduce_240,
+  3, 188, :_reduce_241,
+  3, 188, :_reduce_242,
+  3, 188, :_reduce_243,
+  1, 188, :_reduce_none,
+  3, 188, :_reduce_245,
+  3, 188, :_reduce_246,
+  3, 188, :_reduce_247,
+  3, 188, :_reduce_248,
+  3, 188, :_reduce_249,
+  2, 188, :_reduce_250,
+  2, 188, :_reduce_251,
+  3, 188, :_reduce_252,
+  3, 188, :_reduce_253,
+  3, 188, :_reduce_254,
+  3, 188, :_reduce_255,
+  3, 188, :_reduce_256,
+  6, 188, :_reduce_257,
+  4, 188, :_reduce_258,
+  6, 188, :_reduce_259,
+  4, 188, :_reduce_260,
+  6, 188, :_reduce_261,
+  1, 188, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  1, 236, :_reduce_none,
+  3, 234, :_reduce_267,
+  3, 234, :_reduce_268,
+  1, 237, :_reduce_269,
+  1, 238, :_reduce_none,
+  2, 238, :_reduce_271,
+  4, 238, :_reduce_272,
+  2, 238, :_reduce_273,
+  1, 232, :_reduce_none,
+  3, 232, :_reduce_275,
+  3, 242, :_reduce_276,
+  5, 242, :_reduce_277,
+  3, 242, :_reduce_278,
+  1, 244, :_reduce_none,
+  1, 244, :_reduce_none,
+  1, 182, :_reduce_none,
+  1, 182, :_reduce_none,
+  2, 182, :_reduce_283,
+  4, 182, :_reduce_284,
+  2, 182, :_reduce_285,
+  1, 216, :_reduce_286,
+  2, 216, :_reduce_287,
+  2, 216, :_reduce_288,
+  4, 216, :_reduce_289,
+  1, 216, :_reduce_290,
+  0, 247, :_reduce_291,
+  2, 209, :_reduce_292,
+  2, 246, :_reduce_293,
+  1, 246, :_reduce_294,
+  2, 245, :_reduce_295,
+  1, 245, :_reduce_none,
+  1, 239, :_reduce_297,
+  2, 239, :_reduce_298,
+  1, 239, :_reduce_299,
+  3, 239, :_reduce_300,
+  4, 239, :_reduce_301,
+  3, 239, :_reduce_302,
+  1, 176, :_reduce_303,
+  1, 176, :_reduce_304,
+  3, 175, :_reduce_305,
+  4, 175, :_reduce_306,
+  2, 175, :_reduce_307,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_none,
+  1, 235, :_reduce_318,
+  0, 280, :_reduce_319,
+  4, 235, :_reduce_320,
+  0, 281, :_reduce_321,
+  3, 235, :_reduce_322,
+  0, 282, :_reduce_323,
+  4, 235, :_reduce_324,
+  3, 235, :_reduce_325,
+  3, 235, :_reduce_326,
+  2, 235, :_reduce_327,
+  3, 235, :_reduce_328,
+  0, 283, :_reduce_329,
+  4, 235, :_reduce_330,
+  1, 235, :_reduce_331,
+  4, 235, :_reduce_332,
+  3, 235, :_reduce_333,
+  1, 235, :_reduce_334,
+  5, 235, :_reduce_335,
+  4, 235, :_reduce_336,
+  3, 235, :_reduce_337,
+  2, 235, :_reduce_338,
+  1, 235, :_reduce_none,
+  2, 235, :_reduce_340,
+  1, 235, :_reduce_341,
+  6, 235, :_reduce_342,
+  6, 235, :_reduce_343,
+  4, 235, :_reduce_344,
+  4, 235, :_reduce_345,
+  5, 235, :_reduce_346,
+  4, 235, :_reduce_347,
+  5, 235, :_reduce_348,
+  6, 235, :_reduce_349,
+  0, 284, :_reduce_350,
+  6, 235, :_reduce_351,
+  0, 285, :_reduce_352,
+  0, 286, :_reduce_353,
+  8, 235, :_reduce_354,
+  0, 287, :_reduce_355,
+  5, 235, :_reduce_356,
+  4, 235, :_reduce_357,
+  4, 235, :_reduce_358,
+  1, 235, :_reduce_359,
+  1, 235, :_reduce_360,
+  1, 235, :_reduce_361,
+  1, 235, :_reduce_362,
+  1, 181, :_reduce_363,
+  1, 257, :_reduce_none,
+  1, 263, :_reduce_none,
+  1, 266, :_reduce_none,
+  1, 268, :_reduce_none,
+  1, 269, :_reduce_none,
+  1, 270, :_reduce_none,
+  1, 273, :_reduce_none,
+  1, 275, :_reduce_371,
+  1, 278, :_reduce_372,
+  1, 197, :_reduce_373,
+  1, 288, :_reduce_none,
+  1, 289, :_reduce_none,
+  1, 290, :_reduce_none,
+  1, 291, :_reduce_none,
+  1, 292, :_reduce_none,
+  1, 162, :_reduce_none,
+  1, 293, :_reduce_none,
+  1, 258, :_reduce_none,
+  1, 215, :_reduce_none,
+  1, 264, :_reduce_none,
+  1, 264, :_reduce_none,
+  2, 264, :_reduce_none,
+  1, 202, :_reduce_none,
+  1, 202, :_reduce_none,
+  1, 265, :_reduce_none,
+  5, 265, :_reduce_389,
+  1, 267, :_reduce_none,
+  2, 267, :_reduce_391,
+  1, 274, :_reduce_none,
+  1, 274, :_reduce_393,
+  1, 294, :_reduce_394,
+  3, 294, :_reduce_395,
+  1, 297, :_reduce_396,
+  3, 297, :_reduce_397,
+  1, 296, :_reduce_398,
+  3, 296, :_reduce_399,
+  5, 296, :_reduce_400,
+  1, 296, :_reduce_401,
+  3, 296, :_reduce_402,
+  2, 298, :_reduce_403,
+  1, 298, :_reduce_404,
+  1, 299, :_reduce_none,
+  1, 299, :_reduce_none,
+  0, 304, :_reduce_407,
+  2, 302, :_reduce_none,
+  4, 303, :_reduce_409,
+  2, 303, :_reduce_410,
+  2, 303, :_reduce_411,
+  1, 303, :_reduce_412,
+  2, 308, :_reduce_413,
+  1, 308, :_reduce_none,
+  1, 309, :_reduce_415,
+  6, 310, :_reduce_416,
+  8, 310, :_reduce_417,
+  4, 310, :_reduce_418,
+  6, 310, :_reduce_419,
+  4, 310, :_reduce_420,
+  2, 310, :_reduce_421,
+  6, 310, :_reduce_422,
+  2, 310, :_reduce_423,
+  4, 310, :_reduce_424,
+  6, 310, :_reduce_425,
+  2, 310, :_reduce_426,
+  4, 310, :_reduce_427,
+  2, 310, :_reduce_428,
+  4, 310, :_reduce_429,
+  1, 310, :_reduce_430,
+  1, 314, :_reduce_431,
+  1, 314, :_reduce_432,
+  3, 315, :_reduce_433,
+  1, 315, :_reduce_434,
+  4, 315, :_reduce_435,
+  1, 316, :_reduce_none,
+  4, 316, :_reduce_437,
+  1, 317, :_reduce_438,
+  3, 317, :_reduce_439,
+  1, 318, :_reduce_440,
+  1, 318, :_reduce_none,
+  0, 322, :_reduce_442,
+  0, 323, :_reduce_443,
+  5, 262, :_reduce_444,
+  4, 320, :_reduce_445,
+  1, 320, :_reduce_446,
+  3, 321, :_reduce_447,
+  3, 321, :_reduce_448,
+  3, 325, :_reduce_449,
+  2, 206, :_reduce_450,
+  4, 206, :_reduce_451,
+  5, 206, :_reduce_452,
+  5, 206, :_reduce_453,
+  2, 261, :_reduce_454,
+  4, 261, :_reduce_455,
+  4, 261, :_reduce_456,
+  3, 261, :_reduce_457,
+  3, 261, :_reduce_458,
+  3, 261, :_reduce_459,
+  2, 261, :_reduce_460,
+  1, 261, :_reduce_461,
+  4, 261, :_reduce_462,
+  0, 328, :_reduce_463,
+  4, 260, :_reduce_464,
+  0, 329, :_reduce_465,
+  4, 260, :_reduce_466,
+  0, 330, :_reduce_467,
+  0, 331, :_reduce_468,
+  4, 211, :_reduce_469,
+  0, 333, :_reduce_470,
+  0, 334, :_reduce_471,
+  4, 326, :_reduce_472,
+  1, 332, :_reduce_473,
+  2, 332, :_reduce_474,
+  3, 332, :_reduce_475,
+  4, 332, :_reduce_476,
+  5, 271, :_reduce_477,
+  1, 335, :_reduce_none,
+  1, 335, :_reduce_none,
+  0, 338, :_reduce_480,
+  0, 339, :_reduce_481,
+  7, 272, :_reduce_482,
+  1, 337, :_reduce_none,
+  1, 337, :_reduce_none,
+  1, 336, :_reduce_none,
+  3, 336, :_reduce_486,
+  3, 336, :_reduce_487,
+  1, 192, :_reduce_none,
+  2, 192, :_reduce_489,
+  3, 192, :_reduce_490,
+  1, 192, :_reduce_491,
+  1, 192, :_reduce_492,
+  1, 192, :_reduce_493,
+  1, 340, :_reduce_none,
+  3, 345, :_reduce_495,
+  1, 345, :_reduce_none,
+  3, 347, :_reduce_497,
+  1, 347, :_reduce_none,
+  1, 349, :_reduce_499,
+  1, 350, :_reduce_500,
+  1, 348, :_reduce_none,
+  1, 348, :_reduce_none,
+  4, 348, :_reduce_503,
+  4, 348, :_reduce_504,
+  4, 348, :_reduce_505,
+  3, 348, :_reduce_506,
+  4, 348, :_reduce_507,
+  4, 348, :_reduce_508,
+  4, 348, :_reduce_509,
+  3, 348, :_reduce_510,
+  3, 348, :_reduce_511,
+  3, 348, :_reduce_512,
+  2, 348, :_reduce_513,
+  0, 354, :_reduce_514,
+  4, 348, :_reduce_515,
+  2, 348, :_reduce_516,
+  0, 355, :_reduce_517,
+  4, 348, :_reduce_518,
+  1, 341, :_reduce_519,
+  1, 341, :_reduce_520,
+  2, 341, :_reduce_521,
+  2, 341, :_reduce_522,
+  4, 341, :_reduce_523,
+  1, 341, :_reduce_none,
+  2, 356, :_reduce_525,
+  3, 356, :_reduce_526,
+  1, 343, :_reduce_527,
+  3, 343, :_reduce_528,
+  5, 342, :_reduce_529,
+  2, 358, :_reduce_530,
+  1, 358, :_reduce_531,
+  1, 359, :_reduce_none,
+  3, 359, :_reduce_533,
+  1, 357, :_reduce_534,
+  3, 344, :_reduce_535,
+  1, 344, :_reduce_536,
+  2, 344, :_reduce_537,
+  1, 344, :_reduce_538,
+  1, 360, :_reduce_none,
+  3, 360, :_reduce_540,
+  2, 362, :_reduce_541,
+  1, 362, :_reduce_542,
+  1, 363, :_reduce_543,
+  3, 363, :_reduce_544,
+  2, 365, :_reduce_545,
+  1, 365, :_reduce_546,
+  2, 367, :_reduce_547,
+  1, 361, :_reduce_none,
+  1, 361, :_reduce_none,
+  1, 351, :_reduce_none,
+  3, 351, :_reduce_551,
+  3, 351, :_reduce_552,
+  2, 351, :_reduce_553,
+  2, 351, :_reduce_554,
+  1, 351, :_reduce_none,
+  1, 351, :_reduce_none,
+  1, 351, :_reduce_none,
+  2, 351, :_reduce_558,
+  2, 351, :_reduce_559,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_none,
+  1, 368, :_reduce_564,
+  1, 368, :_reduce_565,
+  1, 368, :_reduce_566,
+  1, 368, :_reduce_567,
+  1, 368, :_reduce_568,
+  1, 368, :_reduce_none,
+  1, 346, :_reduce_570,
+  2, 369, :_reduce_571,
+  2, 369, :_reduce_572,
+  4, 370, :_reduce_573,
+  2, 352, :_reduce_574,
+  3, 352, :_reduce_575,
+  1, 352, :_reduce_576,
+  6, 161, :_reduce_577,
+  0, 161, :_reduce_578,
+  1, 372, :_reduce_579,
+  1, 372, :_reduce_none,
+  1, 372, :_reduce_none,
+  2, 373, :_reduce_582,
+  1, 373, :_reduce_none,
+  2, 163, :_reduce_584,
+  1, 163, :_reduce_none,
+  1, 248, :_reduce_586,
+  1, 248, :_reduce_none,
+  1, 249, :_reduce_588,
+  1, 375, :_reduce_589,
+  1, 375, :_reduce_none,
+  2, 375, :_reduce_591,
+  3, 376, :_reduce_592,
+  1, 376, :_reduce_593,
+  3, 250, :_reduce_594,
+  3, 251, :_reduce_595,
+  3, 252, :_reduce_596,
+  3, 252, :_reduce_597,
+  1, 379, :_reduce_598,
+  3, 379, :_reduce_599,
+  1, 380, :_reduce_none,
+  2, 380, :_reduce_601,
+  3, 254, :_reduce_602,
+  3, 254, :_reduce_603,
+  1, 382, :_reduce_604,
+  3, 382, :_reduce_605,
+  3, 253, :_reduce_606,
+  3, 253, :_reduce_607,
+  3, 255, :_reduce_608,
+  3, 255, :_reduce_609,
+  1, 383, :_reduce_610,
+  3, 383, :_reduce_611,
+  1, 384, :_reduce_612,
+  3, 384, :_reduce_613,
+  1, 364, :_reduce_614,
+  2, 364, :_reduce_615,
+  1, 377, :_reduce_616,
+  2, 377, :_reduce_617,
+  1, 378, :_reduce_618,
+  2, 378, :_reduce_619,
+  1, 381, :_reduce_620,
+  0, 386, :_reduce_621,
+  3, 381, :_reduce_622,
+  0, 387, :_reduce_623,
+  4, 381, :_reduce_624,
+  1, 385, :_reduce_625,
+  1, 385, :_reduce_626,
+  1, 385, :_reduce_627,
+  1, 385, :_reduce_none,
+  1, 230, :_reduce_none,
+  1, 230, :_reduce_none,
+  2, 388, :_reduce_631,
+  1, 388, :_reduce_632,
+  1, 390, :_reduce_none,
+  1, 390, :_reduce_none,
+  1, 390, :_reduce_none,
+  1, 390, :_reduce_none,
+  3, 389, :_reduce_637,
+  1, 374, :_reduce_none,
+  2, 374, :_reduce_639,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 233, :_reduce_none,
+  1, 371, :_reduce_644,
+  1, 371, :_reduce_645,
+  1, 371, :_reduce_646,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 224, :_reduce_none,
+  1, 225, :_reduce_652,
+  1, 225, :_reduce_653,
+  1, 225, :_reduce_654,
+  1, 225, :_reduce_655,
+  1, 225, :_reduce_656,
+  1, 225, :_reduce_657,
+  1, 225, :_reduce_658,
+  1, 256, :_reduce_659,
+  1, 256, :_reduce_660,
+  1, 180, :_reduce_661,
+  1, 180, :_reduce_662,
+  1, 190, :_reduce_663,
+  1, 190, :_reduce_664,
+  0, 391, :_reduce_665,
+  4, 276, :_reduce_666,
+  1, 276, :_reduce_667,
+  1, 186, :_reduce_none,
+  1, 186, :_reduce_669,
+  3, 392, :_reduce_670,
+  1, 279, :_reduce_none,
+  0, 394, :_reduce_672,
+  3, 279, :_reduce_673,
+  4, 393, :_reduce_674,
+  2, 393, :_reduce_675,
+  2, 393, :_reduce_676,
+  1, 393, :_reduce_none,
+  1, 393, :_reduce_none,
+  2, 396, :_reduce_679,
+  0, 396, :_reduce_680,
+  6, 324, :_reduce_681,
+  8, 324, :_reduce_682,
+  4, 324, :_reduce_683,
+  6, 324, :_reduce_684,
+  4, 324, :_reduce_685,
+  6, 324, :_reduce_686,
+  2, 324, :_reduce_687,
+  4, 324, :_reduce_688,
+  6, 324, :_reduce_689,
+  2, 324, :_reduce_690,
+  4, 324, :_reduce_691,
+  2, 324, :_reduce_692,
+  4, 324, :_reduce_693,
+  1, 324, :_reduce_694,
+  0, 324, :_reduce_695,
+  1, 243, :_reduce_696,
+  1, 319, :_reduce_697,
+  1, 319, :_reduce_698,
+  1, 319, :_reduce_699,
+  1, 319, :_reduce_700,
+  1, 295, :_reduce_none,
+  1, 295, :_reduce_702,
+  1, 398, :_reduce_none,
+  1, 399, :_reduce_none,
+  3, 399, :_reduce_705,
+  1, 311, :_reduce_706,
+  3, 311, :_reduce_707,
+  1, 400, :_reduce_708,
+  2, 401, :_reduce_709,
+  1, 401, :_reduce_710,
+  2, 402, :_reduce_711,
+  1, 402, :_reduce_712,
+  1, 305, :_reduce_none,
+  3, 305, :_reduce_714,
+  1, 395, :_reduce_none,
+  3, 395, :_reduce_716,
+  1, 366, :_reduce_none,
+  1, 366, :_reduce_none,
+  2, 301, :_reduce_719,
+  2, 300, :_reduce_720,
+  1, 300, :_reduce_721,
+  3, 403, :_reduce_722,
+  3, 404, :_reduce_723,
+  1, 312, :_reduce_724,
+  3, 312, :_reduce_725,
+  1, 397, :_reduce_726,
+  3, 397, :_reduce_727,
+  1, 405, :_reduce_none,
+  1, 405, :_reduce_none,
+  2, 313, :_reduce_730,
+  1, 313, :_reduce_731,
+  1, 406, :_reduce_none,
+  1, 406, :_reduce_none,
+  2, 307, :_reduce_734,
+  1, 307, :_reduce_735,
+  2, 306, :_reduce_736,
+  0, 306, :_reduce_737,
+  1, 198, :_reduce_none,
+  0, 407, :_reduce_739,
+  4, 198, :_reduce_740,
+  1, 259, :_reduce_741,
+  2, 259, :_reduce_none,
+  1, 241, :_reduce_none,
+  3, 241, :_reduce_744,
+  3, 408, :_reduce_745,
+  2, 408, :_reduce_746,
+  1, 408, :_reduce_747,
+  4, 408, :_reduce_748,
+  2, 408, :_reduce_749,
+  1, 408, :_reduce_750,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 214, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 208, :_reduce_none,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  1, 327, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 199, :_reduce_none,
+  1, 184, :_reduce_none,
+  1, 184, :_reduce_none,
+  1, 207, :_reduce_none,
+  1, 207, :_reduce_none,
+  0, 152, :_reduce_none,
+  1, 152, :_reduce_none,
+  0, 191, :_reduce_none,
+  1, 191, :_reduce_none,
+  2, 219, :_reduce_771,
+  2, 183, :_reduce_772,
+  2, 353, :_reduce_773,
+  0, 240, :_reduce_none,
+  1, 240, :_reduce_none,
+  1, 240, :_reduce_none,
+  1, 277, :_reduce_777,
+  1, 277, :_reduce_none,
+  1, 155, :_reduce_none,
+  2, 155, :_reduce_780,
+  0, 153, :_reduce_781 ]
+
+racc_reduce_n = 782
+
+racc_shift_n = 1291
+
+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,
+  :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,
+  :tQWORDS_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,
+  :tDSTAR => 134,
+  :tCHAR => 135,
+  :tSYMBOLS_BEG => 136,
+  :tQSYMBOLS_BEG => 137,
+  :tSTRING_DEND => 138,
+  :tRATIONAL => 139,
+  :tIMAGINARY => 140,
+  :tLABEL_END => 141,
+  :tLONELY => 142,
+  :tBDOT2 => 143,
+  :tBDOT3 => 144,
+  :tLOWEST => 145,
+  :tEQL => 146 }
+
+racc_nt_base = 147
+
+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 ]
+Ractor.make_shareable(Racc_arg) if defined?(Ractor)
+
+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",
+  "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",
+  "tNL",
+  "tEH",
+  "tCOLON",
+  "tCOMMA",
+  "tSPACE",
+  "tSEMI",
+  "tLAMBDA",
+  "tLAMBEG",
+  "tDSTAR",
+  "tCHAR",
+  "tSYMBOLS_BEG",
+  "tQSYMBOLS_BEG",
+  "tSTRING_DEND",
+  "tRATIONAL",
+  "tIMAGINARY",
+  "tLABEL_END",
+  "tLONELY",
+  "tBDOT2",
+  "tBDOT3",
+  "tLOWEST",
+  "tEQL",
+  "$start",
+  "program",
+  "top_compstmt",
+  "@1",
+  "top_stmts",
+  "opt_terms",
+  "none",
+  "top_stmt",
+  "terms",
+  "stmt",
+  "begin_block",
+  "@2",
+  "bodystmt",
+  "compstmt",
+  "opt_rescue",
+  "k_else",
+  "opt_ensure",
+  "@3",
+  "stmts",
+  "stmt_or_begin",
+  "@4",
+  "fitem",
+  "undef_list",
+  "expr_value",
+  "command_asgn",
+  "mlhs",
+  "command_call",
+  "lhs",
+  "mrhs",
+  "mrhs_arg",
+  "expr",
+  "@5",
+  "command_rhs",
+  "var_lhs",
+  "primary_value",
+  "opt_call_args",
+  "rbracket",
+  "call_op",
+  "defn_head",
+  "f_opt_paren_args",
+  "command",
+  "arg",
+  "defs_head",
+  "backref",
+  "opt_nl",
+  "p_top_expr_body",
+  "def_name",
+  "@6",
+  "@7",
+  "fname",
+  "k_def",
+  "singleton",
+  "dot_or_colon",
+  "@8",
+  "expr_value_do",
+  "do",
+  "@9",
+  "@10",
+  "block_command",
+  "block_call",
+  "call_op2",
+  "operation2",
+  "command_args",
+  "cmd_brace_block",
+  "brace_body",
+  "fcall",
+  "@11",
+  "operation",
+  "k_return",
+  "call_args",
+  "mlhs_basic",
+  "mlhs_inner",
+  "rparen",
+  "mlhs_head",
+  "mlhs_item",
+  "mlhs_node",
+  "mlhs_post",
+  "user_variable",
+  "keyword_variable",
+  "cname",
+  "cpath",
+  "op",
+  "reswords",
+  "symbol",
+  "@12",
+  "arg_rhs",
+  "simple_numeric",
+  "rel_expr",
+  "primary",
+  "relop",
+  "arg_value",
+  "aref_args",
+  "args",
+  "trailer",
+  "assocs",
+  "paren_args",
+  "args_forward",
+  "opt_paren_args",
+  "opt_block_arg",
+  "block_arg",
+  "@13",
+  "literal",
+  "strings",
+  "xstring",
+  "regexp",
+  "words",
+  "qwords",
+  "symbols",
+  "qsymbols",
+  "var_ref",
+  "k_begin",
+  "k_end",
+  "assoc_list",
+  "brace_block",
+  "method_call",
+  "lambda",
+  "k_if",
+  "then",
+  "if_tail",
+  "k_unless",
+  "opt_else",
+  "k_while",
+  "k_until",
+  "k_case",
+  "case_body",
+  "p_case_body",
+  "k_for",
+  "for_var",
+  "k_class",
+  "superclass",
+  "term",
+  "k_module",
+  "f_arglist",
+  "@14",
+  "@15",
+  "@16",
+  "@17",
+  "@18",
+  "@19",
+  "@20",
+  "@21",
+  "k_do",
+  "k_do_block",
+  "k_rescue",
+  "k_ensure",
+  "k_when",
+  "k_elsif",
+  "f_marg",
+  "f_norm_arg",
+  "f_margs",
+  "f_marg_list",
+  "f_rest_marg",
+  "f_any_kwrest",
+  "f_kwrest",
+  "f_no_kwarg",
+  "f_eq",
+  "block_args_tail",
+  "@22",
+  "f_block_kwarg",
+  "opt_f_block_arg",
+  "f_block_arg",
+  "opt_block_args_tail",
+  "excessed_comma",
+  "block_param",
+  "f_arg",
+  "f_block_optarg",
+  "f_rest_arg",
+  "opt_block_param",
+  "block_param_def",
+  "opt_bv_decl",
+  "bv_decls",
+  "bvar",
+  "f_bad_arg",
+  "f_larglist",
+  "lambda_body",
+  "@23",
+  "@24",
+  "f_args",
+  "do_block",
+  "do_body",
+  "operation3",
+  "@25",
+  "@26",
+  "@27",
+  "@28",
+  "case_args",
+  "@29",
+  "@30",
+  "cases",
+  "p_top_expr",
+  "p_cases",
+  "@31",
+  "@32",
+  "p_expr",
+  "p_args",
+  "p_find",
+  "p_args_tail",
+  "p_kwargs",
+  "p_as",
+  "p_variable",
+  "p_alt",
+  "p_expr_basic",
+  "p_lparen",
+  "p_lbracket",
+  "p_value",
+  "p_const",
+  "rbrace",
+  "@33",
+  "@34",
+  "p_args_head",
+  "p_arg",
+  "p_rest",
+  "p_args_post",
+  "p_kwarg",
+  "p_any_kwrest",
+  "p_kw",
+  "p_kw_label",
+  "string_contents",
+  "p_kwrest",
+  "kwrest_mark",
+  "p_kwnorest",
+  "p_primitive",
+  "p_var_ref",
+  "p_expr_ref",
+  "nonlocal_var",
+  "exc_list",
+  "exc_var",
+  "numeric",
+  "string",
+  "string1",
+  "xstring_contents",
+  "regexp_contents",
+  "word_list",
+  "word",
+  "string_content",
+  "symbol_list",
+  "qword_list",
+  "qsym_list",
+  "string_dvar",
+  "@35",
+  "@36",
+  "ssym",
+  "dsym",
+  "sym",
+  "@37",
+  "f_paren_args",
+  "args_tail",
+  "@38",
+  "f_kwarg",
+  "opt_args_tail",
+  "f_optarg",
+  "f_arg_asgn",
+  "f_arg_item",
+  "f_label",
+  "f_kw",
+  "f_block_kw",
+  "f_opt",
+  "f_block_opt",
+  "restarg_mark",
+  "blkarg_mark",
+  "@39",
+  "assoc" ]
+Ractor.make_shareable(Racc_token_to_s_table) if defined?(Ractor)
+
+Racc_debug_parser = false
+
+##### State transition tables end #####
+
+# reduce 0 omitted
+
+def _reduce_1(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_2(val, _values, result)
+                      result = new_compstmt val
+
+                      lexer.cond.pop # local_pop
+                      lexer.cmdarg.pop
+
+    result
+end
+
+def _reduce_3(val, _values, result)
+                      stmt, _ = val
+                      result = stmt
+
+    result
+end
+
+# reduce 4 omitted
+
+# reduce 5 omitted
+
+def _reduce_6(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 7 omitted
+
+# reduce 8 omitted
+
+def _reduce_9(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 1
+                        yyerror "BEGIN in method"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_10(val, _values, result)
+                      (_, lineno), _, iter = val
+                      iter.line lineno
+
+                      (_, preexe,) = iter
+                      preexe.line lineno
+
+                      result = iter
+
+    result
+end
+
+def _reduce_11(val, _values, result)
+                      (_, line), stmt, _ = val
+                      result = new_iter s(:preexe).line(line), 0, stmt
+
+    result
+end
+
+def _reduce_12(val, _values, result)
+                      res = _values[-2]
+                      yyerror "else without rescue is useless" unless res
+
+    result
+end
+
+def _reduce_13(val, _values, result)
+                      body, resc, _, _, els, ens = val
+
+                      result = new_body [body, resc, els, ens]
+
+    result
+end
+
+def _reduce_14(val, _values, result)
+                      body, resc, ens = val
+
+                      result = new_body [body, resc, nil, ens]
+
+    result
+end
+
+def _reduce_15(val, _values, result)
+                      result = new_compstmt val
+
+    result
+end
+
+# reduce 16 omitted
+
+# reduce 17 omitted
+
+def _reduce_18(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+def _reduce_19(val, _values, result)
+                      result = val[1]
+                      debug 2
+
+    result
+end
+
+# reduce 20 omitted
+
+def _reduce_21(val, _values, result)
+                      yyerror "BEGIN is permitted only at toplevel"
+
+    result
+end
+
+def _reduce_22(val, _values, result)
+                      result = val[2] # wtf?
+
+    result
+end
+
+def _reduce_23(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_24(val, _values, result)
+                      (_, line), lhs, _, rhs = val
+                      result = s(:alias, lhs, rhs).line(line).line line
+
+    result
+end
+
+def _reduce_25(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, rhs.to_sym).line line
+
+    result
+end
+
+def _reduce_26(val, _values, result)
+                      (_, line), (lhs, _), (rhs, _) = val
+                      result = s(:valias, lhs.to_sym, :"$#{rhs}").line line
+
+    result
+end
+
+def _reduce_27(val, _values, result)
+                      yyerror "can't make alias for the number variables"
+
+    result
+end
+
+def _reduce_28(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_29(val, _values, result)
+                      t, _, c = val
+                      result = new_if c, t, nil
+
+    result
+end
+
+def _reduce_30(val, _values, result)
+                      f, _, c = val
+                      result = new_if c, nil, f
+
+    result
+end
+
+def _reduce_31(val, _values, result)
+                      e, _, c = val
+                      result = new_while e, c, true
+
+    result
+end
+
+def _reduce_32(val, _values, result)
+                      e, _, c = val
+                      result = new_until e, c, true
+
+    result
+end
+
+def _reduce_33(val, _values, result)
+                      body, _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+                      result = new_rescue body, resbody
+
+    result
+end
+
+def _reduce_34(val, _values, result)
+                      (_, line), _, stmt, _ = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 3
+                        yyerror "END in method; use at_exit"
+                      end
+
+                      result = new_iter s(:postexe).line(line), 0, stmt
+
+    result
+end
+
+# reduce 35 omitted
+
+def _reduce_36(val, _values, result)
+                      result = new_masgn val[0], val[2], :wrap
+
+    result
+end
+
+def _reduce_37(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = new_assign lhs, s(:svalue, rhs).line(rhs.line)
+
+    result
+end
+
+def _reduce_38(val, _values, result)
+                      # unwraps s(:to_ary, rhs)
+                      lhs, _, (_, rhs), _, resbody = val
+
+                      resbody = new_resbody s(:array).line(resbody.line), resbody
+
+                      result = new_masgn lhs, new_rescue(rhs, resbody), :wrap
+
+    result
+end
+
+def _reduce_39(val, _values, result)
+                      result = new_masgn val[0], val[2]
+
+    result
+end
+
+# reduce 40 omitted
+
+def _reduce_41(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_42(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_43(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_44(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_45(val, _values, result)
+                      prim, (call_op, _), (id, _), (op_asgn, _), rhs = val
+
+                      result = s(:op_asgn, prim, rhs, id.to_sym, op_asgn.to_sym)
+                      result.sexp_type = :safe_op_asgn if call_op == '&.'
+                      result.line prim.line
+
+    result
+end
+
+def _reduce_46(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_47(val, _values, result)
+                      lhs1, _, (lhs2, line), (id, _), rhs = val
+
+                      result = s(:op_asgn, lhs1, rhs, lhs2.to_sym, id.to_sym).line line
+
+    result
+end
+
+def _reduce_48(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_49(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_50(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_51(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_52(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_53(val, _values, result)
+                      expr, = val
+                      result = value_expr expr
+
+    result
+end
+
+def _reduce_54(val, _values, result)
+                      expr, (_, line), resbody = val
+
+                      expr = value_expr expr
+                      ary  = s(:array).line line
+                      result = new_rescue(expr, new_resbody(ary, resbody))
+
+    result
+end
+
+# reduce 55 omitted
+
+# reduce 56 omitted
+
+def _reduce_57(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :and, lhs, rhs
+
+    result
+end
+
+def _reduce_58(val, _values, result)
+                      lhs, _, rhs = val
+                      result = logical_op :or, lhs, rhs
+
+    result
+end
+
+def _reduce_59(val, _values, result)
+                      (_, line), _, expr = val
+                      result = new_call(expr, :"!").line line
+                      # REFACTOR: call_uni_op
+
+    result
+end
+
+def _reduce_60(val, _values, result)
+                      _, cmd = val
+                      result = new_call(cmd, :"!").line cmd.line
+                      # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict
+                      # REFACTOR: call_uni_op -- see parse26.y
+
+    result
+end
+
+def _reduce_61(val, _values, result)
+                      # value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+
+    result
+end
+
+def _reduce_62(val, _values, result)
+                      lhs, _, in_kwarg, rhs = val
+
+                      self.env.unextend
+                      self.in_kwarg = in_kwarg
+
+                      rhs = new_in rhs, nil, nil, rhs.line
+                      result = new_case lhs, rhs, rhs.line
+
+    result
+end
+
+def _reduce_63(val, _values, result)
+                      # TODO? value_expr($1);
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.env.extend
+
+    result
+end
+
+def _reduce_64(val, _values, result)
+                      self.env.unextend
+
+                      expr, _, old_kwarg, pat = val
+
+                      expr = value_expr expr
+
+                      self.in_kwarg = old_kwarg
+                      pat_in = new_in pat, nil, nil, expr.line
+                      result = new_case expr, pat_in, expr.line
+
+    result
+end
+
+# reduce 65 omitted
+
+def _reduce_66(val, _values, result)
+                      # TODO: numparam_name(p, fname);
+
+                      (id, line), = val
+                      old_in_def = self.in_def
+
+                      self.in_def = true # group = local_push
+                      self.env.extend
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      result = [id.to_sym, line, old_in_def]
+
+    result
+end
+
+def _reduce_67(val, _values, result)
+                      result = val
+
+    result
+end
+
+def _reduce_68(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+                      self.in_argdef = true
+
+    result
+end
+
+def _reduce_69(val, _values, result)
+                      lexer.lex_state = EXPR_ENDFN|EXPR_LABEL
+                      self.in_single += 1 # TODO: remove?
+
+                      # self.in_def = true # local_push
+                      # self.env.extend
+                      # lexer.cmdarg.push false
+                      # lexer.cond.push false
+
+                      result = val
+
+    result
+end
+
+def _reduce_70(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+def _reduce_71(val, _values, result)
+                      lexer.cond.push true
+
+    result
+end
+
+def _reduce_72(val, _values, result)
+                      lexer.cond.pop
+
+    result
+end
+
+def _reduce_73(val, _values, result)
+                      _, expr, _, _ = val
+                      result = expr
+
+    result
+end
+
+# reduce 74 omitted
+
+# reduce 75 omitted
+
+# reduce 76 omitted
+
+def _reduce_77(val, _values, result)
+                      blk, _, (msg, _line), args = val
+                      result = new_call(blk, msg.to_sym, args).line blk.line
+
+    result
+end
+
+def _reduce_78(val, _values, result)
+                      # self.env.extend(:dynamic)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_79(val, _values, result)
+                      _, line, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      # self.env.unextend
+
+    result
+end
+
+def _reduce_80(val, _values, result)
+                      (msg, line), = val
+                      result = new_call(nil, msg.to_sym).line line
+
+    result
+end
+
+def _reduce_81(val, _values, result)
+                      call, args = val
+                      result = call.concat args.sexp_body
+
+    result
+end
+
+def _reduce_82(val, _values, result)
+                      call, args, block = val
+
+                      result = call.concat args.sexp_body
+
+                      if block then
+                        block_dup_check result, block
+
+                        result, operation = block, result
+                        result.insert 1, operation
+                      end
+
+    result
+end
+
+def _reduce_83(val, _values, result)
+                      lhs, callop, (op, _), args = val
+
+                      result = new_call lhs, op.to_sym, args, callop
+                      result.line lhs.line
+
+    result
+end
+
+def _reduce_84(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args, val[1]
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_85(val, _values, result)
+                      lhs, _, (id, line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+                      result.line line
+
+    result
+end
+
+def _reduce_86(val, _values, result)
+                      recv, _, (msg, _line), args, block = val
+                      call = new_call recv, msg.to_sym, args
+
+                      block_dup_check call, block
+
+                      block.insert 1, call
+                      result = block
+
+    result
+end
+
+def _reduce_87(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_88(val, _values, result)
+                      (_, line), args = val
+                      result = new_yield args
+                      result.line line # TODO: push to new_yield
+
+    result
+end
+
+def _reduce_89(val, _values, result)
+                      line = val[0].last
+                      result = s(:return, ret_args(val[1])).line(line)
+
+    result
+end
+
+def _reduce_90(val, _values, result)
+                      (_, line), args = val
+                      result = s(:break, ret_args(args)).line line
+
+    result
+end
+
+def _reduce_91(val, _values, result)
+                      line = val[0].last
+                      result = s(:next, ret_args(val[1])).line(line)
+
+    result
+end
+
+# reduce 92 omitted
+
+def _reduce_93(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 94 omitted
+
+def _reduce_95(val, _values, result)
+                      _, arg, _ = val
+                      l = arg.line
+
+                      result = s(:masgn, s(:array, arg).line(l)).line l
+
+    result
+end
+
+def _reduce_96(val, _values, result)
+                      head, = val
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_97(val, _values, result)
+                      lhs, rhs = val
+                      result = s(:masgn, lhs << rhs.compact).line lhs.line
+
+    result
+end
+
+def _reduce_98(val, _values, result)
+                      head, _, tail = val
+                      head << s(:splat, tail).line(tail.line)
+                      result = s(:masgn, head).line head.line
+
+    result
+end
+
+def _reduce_99(val, _values, result)
+                      ary1, _, splat, _, ary2 = val
+
+                      result = list_append ary1, s(:splat, splat).line(splat.line)
+                      result.concat ary2.sexp_body
+                      result = s(:masgn, result).line result.line
+
+    result
+end
+
+def _reduce_100(val, _values, result)
+                      head, _ = val
+                      l = head.line
+                      result = s(:masgn, head << s(:splat).line(l)).line l
+
+    result
+end
+
+def _reduce_101(val, _values, result)
+                      head, _, _, post = val
+                      ary = list_append head, s(:splat).line(head.line)
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_102(val, _values, result)
+                      _, node = val
+                      l = node.line
+                      splat  = s(:splat, node).line l
+                      ary    = s(:array, splat).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+def _reduce_103(val, _values, result)
+                      _, node, _, post = val
+
+                      splat = s(:splat, node).line node.line
+                      ary = s(:array, splat).line splat.line
+                      ary.concat post.sexp_body
+                      result = s(:masgn, ary).line ary.line
+
+    result
+end
+
+def _reduce_104(val, _values, result)
+                      (_, l), = val
+                      result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l
+
+    result
+end
+
+def _reduce_105(val, _values, result)
+                      _, _, post = val
+                      l = post.line
+
+                      splat = s(:splat).line l
+                      ary = s(:array, splat, *post.sexp_body).line l
+                      result = s(:masgn, ary).line l
+
+    result
+end
+
+# reduce 106 omitted
+
+def _reduce_107(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_108(val, _values, result)
+                      lhs, _ = val
+                      result = s(:array, lhs).line lhs.line
+
+    result
+end
+
+def _reduce_109(val, _values, result)
+                      result = val[0] << val[1].compact
+
+    result
+end
+
+def _reduce_110(val, _values, result)
+                      item, = val
+                      result = s(:array, item).line item.line
+
+    result
+end
+
+def _reduce_111(val, _values, result)
+                      result = list_append val[0], val[2]
+
+    result
+end
+
+def _reduce_112(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_113(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_114(val, _values, result)
+                      result = self.aryset val[0], val[2]
+
+    result
+end
+
+def _reduce_115(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_116(val, _values, result)
+                      recv, _, (id, _line) = val
+                      result = new_attrasgn recv, id
+
+    result
+end
+
+def _reduce_117(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_118(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 4
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      expr, _, (id, _line) = val
+                      l = expr.line
+
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l
+
+    result
+end
+
+def _reduce_119(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        debug 5
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      _, (id, l) = val
+
+                      result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_120(val, _values, result)
+                      ref, = val
+
+                      self.backref_assign_error ref
+
+    result
+end
+
+def _reduce_121(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+    result
+end
+
+def _reduce_122(val, _values, result)
+                      var, = val
+
+                      result = self.assignable var
+
+                      debug 6
+
+    result
+end
+
+def _reduce_123(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      result = self.aryset lhs, args
+
+    result
+end
+
+def _reduce_124(val, _values, result)
+                      lhs, op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, op
+
+    result
+end
+
+def _reduce_125(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_attrasgn lhs, id
+
+    result
+end
+
+def _reduce_126(val, _values, result)
+                      lhs, call_op, (id, _line) = val
+
+                      result = new_attrasgn lhs, id, call_op
+
+    result
+end
+
+def _reduce_127(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 7
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      l = expr.line
+                      result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_128(val, _values, result)
+                      _, (id, l) = val
+
+                      if (self.in_def || self.in_single > 0) then
+                        debug 8
+                        yyerror "dynamic constant assignment"
+                      end
+
+                      result = s(:const, s(:colon3, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_129(val, _values, result)
+                      self.backref_assign_error val[0]
+
+    result
+end
+
+def _reduce_130(val, _values, result)
+                      yyerror "class/module name must be CONSTANT"
+
+    result
+end
+
+# reduce 131 omitted
+
+def _reduce_132(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_133(val, _values, result)
+                      (id, line), = val
+                      result = [id.to_sym, line] # TODO: sexp?
+
+    result
+end
+
+def _reduce_134(val, _values, result)
+                      pval, _, (name, _line) = val
+
+                      result = s(:colon2, pval, name.to_sym)
+                      result.line pval.line
+
+    result
+end
+
+# reduce 135 omitted
+
+# reduce 136 omitted
+
+# reduce 137 omitted
+
+def _reduce_138(val, _values, result)
+                      lexer.lex_state = EXPR_END
+
+    result
+end
+
+# reduce 139 omitted
+
+def _reduce_140(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 141 omitted
+
+def _reduce_142(val, _values, result)
+                      result = new_undef val[0]
+
+    result
+end
+
+def _reduce_143(val, _values, result)
+                      lexer.lex_state = EXPR_FNAME
+
+    result
+end
+
+def _reduce_144(val, _values, result)
+                      result = new_undef val[0], val[3]
+
+    result
+end
+
+# 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
+
+# reduce 194 omitted
+
+# reduce 195 omitted
+
+# reduce 196 omitted
+
+# reduce 197 omitted
+
+# reduce 198 omitted
+
+# reduce 199 omitted
+
+# reduce 200 omitted
+
+# reduce 201 omitted
+
+# reduce 202 omitted
+
+# reduce 203 omitted
+
+# reduce 204 omitted
+
+# reduce 205 omitted
+
+# reduce 206 omitted
+
+# reduce 207 omitted
+
+# reduce 208 omitted
+
+# reduce 209 omitted
+
+# reduce 210 omitted
+
+# reduce 211 omitted
+
+# reduce 212 omitted
+
+# reduce 213 omitted
+
+# reduce 214 omitted
+
+# reduce 215 omitted
+
+def _reduce_216(val, _values, result)
+                      result = new_assign val[0], val[2]
+
+    result
+end
+
+def _reduce_217(val, _values, result)
+                      result = new_op_asgn val
+
+    result
+end
+
+def _reduce_218(val, _values, result)
+                      result = new_op_asgn1 val
+
+    result
+end
+
+def _reduce_219(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_220(val, _values, result)
+                      result = new_op_asgn2 val
+
+    result
+end
+
+def _reduce_221(val, _values, result)
+                      lhs, _, (id, _line), (op, _), rhs = val
+
+                      result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line
+
+    result
+end
+
+def _reduce_222(val, _values, result)
+                      lhs1, _, (lhs2, _line), op, rhs = val
+
+                      lhs = s(:colon2, lhs1, lhs2.to_sym).line lhs1.line
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_223(val, _values, result)
+                      _, lhs, op, rhs = val
+
+                      lhs = wrap :colon3, lhs
+                      result = new_const_op_asgn [lhs, op, rhs]
+
+    result
+end
+
+def _reduce_224(val, _values, result)
+                      # TODO: lhs = var_field val[0]
+                      asgn = new_op_asgn val
+                      result = self.backref_assign_error asgn
+
+    result
+end
+
+def _reduce_225(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)..(v2.last)).line v1.line
+                      else
+                        result = s(:dot2, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_226(val, _values, result)
+                      v1, v2 = val[0], val[2]
+                      if v1.sexp_type == :lit and v2.sexp_type == :lit and Integer === v1.last and Integer === v2.last then
+                        result = s(:lit, (v1.last)...(v2.last)).line v1.line
+                      else
+                        result = s(:dot3, v1, v2).line v1.line
+                      end
+
+    result
+end
+
+def _reduce_227(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot2, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_228(val, _values, result)
+                      v1, _ = val
+                      v2 = nil
+
+                      result = s(:dot3, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_229(val, _values, result)
+                      _, v2, = val
+                      v1 = nil
+
+                      result = s(:dot2, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_230(val, _values, result)
+                      _, v2 = val
+                      v1 = nil
+
+                      result = s(:dot3, v1, v2).line v2.line
+
+    result
+end
+
+def _reduce_231(val, _values, result)
+                      result = new_call val[0], :+, argl(val[2])
+
+    result
+end
+
+def _reduce_232(val, _values, result)
+                      result = new_call val[0], :-, argl(val[2])
+
+    result
+end
+
+def _reduce_233(val, _values, result)
+                      result = new_call val[0], :*, argl(val[2])
+
+    result
+end
+
+def _reduce_234(val, _values, result)
+                      result = new_call val[0], :"/", argl(val[2])
+
+    result
+end
+
+def _reduce_235(val, _values, result)
+                      result = new_call val[0], :"%", argl(val[2])
+
+    result
+end
+
+def _reduce_236(val, _values, result)
+                      result = new_call val[0], :**, argl(val[2])
+
+    result
+end
+
+def _reduce_237(val, _values, result)
+                      _, num, _, arg = val
+                      lit = wrap :lit, num
+                      result = new_call(new_call(lit, :"**", argl(arg)), :"-@")
+
+
+    result
+end
+
+def _reduce_238(val, _values, result)
+                      result = new_call val[1], :"+@"
+
+    result
+end
+
+def _reduce_239(val, _values, result)
+                      result = new_call val[1], :"-@"
+
+    result
+end
+
+def _reduce_240(val, _values, result)
+                      result = new_call val[0], :"|", argl(val[2])
+
+    result
+end
+
+def _reduce_241(val, _values, result)
+                      result = new_call val[0], :"^", argl(val[2])
+
+    result
+end
+
+def _reduce_242(val, _values, result)
+                      result = new_call val[0], :"&", argl(val[2])
+
+    result
+end
+
+def _reduce_243(val, _values, result)
+                      result = new_call val[0], :"<=>", argl(val[2])
+
+    result
+end
+
+# reduce 244 omitted
+
+def _reduce_245(val, _values, result)
+                      result = new_call val[0], :"==", argl(val[2])
+
+    result
+end
+
+def _reduce_246(val, _values, result)
+                      result = new_call val[0], :"===", argl(val[2])
+
+    result
+end
+
+def _reduce_247(val, _values, result)
+                      result = new_call val[0], :"!=", argl(val[2])
+
+    result
+end
+
+def _reduce_248(val, _values, result)
+                      lhs, _, rhs = val
+                      result = new_match lhs, rhs
+
+    result
+end
+
+def _reduce_249(val, _values, result)
+                      lhs, _, rhs = val
+                      result = s(:not, new_match(lhs, rhs)).line lhs.line
+
+    result
+end
+
+def _reduce_250(val, _values, result)
+                      _, arg = val
+                      result = new_call arg, :"!"
+                      result.line arg.line
+
+    result
+end
+
+def _reduce_251(val, _values, result)
+                      result = new_call value_expr(val[1]), :"~"
+
+    result
+end
+
+def _reduce_252(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :"\<\<", argl(val[2])
+
+    result
+end
+
+def _reduce_253(val, _values, result)
+                      val[0] = value_expr val[0]
+                      val[2] = value_expr val[2]
+                      result = new_call val[0], :">>", argl(val[2])
+
+    result
+end
+
+def _reduce_254(val, _values, result)
+                      result = logical_op :and, val[0], val[2]
+
+    result
+end
+
+def _reduce_255(val, _values, result)
+                      result = logical_op :or, val[0], val[2]
+
+    result
+end
+
+def _reduce_256(val, _values, result)
+                      (_, line), _, arg = val
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_257(val, _values, result)
+                      c, _, t, _, _, f = val
+                      result = s(:if, c, t, f).line c.line
+
+    result
+end
+
+def _reduce_258(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_259(val, _values, result)
+                      result = new_endless_defn val
+
+    result
+end
+
+def _reduce_260(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+def _reduce_261(val, _values, result)
+                      result = new_endless_defs val
+
+    result
+end
+
+# reduce 262 omitted
+
+# reduce 263 omitted
+
+# reduce 264 omitted
+
+# reduce 265 omitted
+
+# reduce 266 omitted
+
+def _reduce_267(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_268(val, _values, result)
+                      lhs, (op, _), rhs = val
+                      warn "comparison '%s' after comparison", op
+                      result = new_call lhs, op.to_sym, argl(rhs)
+
+    result
+end
+
+def _reduce_269(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 270 omitted
+
+def _reduce_271(val, _values, result)
+                      result = args [val[0]]
+
+    result
+end
+
+def _reduce_272(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_273(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+# reduce 274 omitted
+
+def _reduce_275(val, _values, result)
+                      body, (_, line), resbody = val
+                      body    = value_expr body
+                      resbody = remove_begin resbody
+
+                      ary = s(:array).line line
+                      result  = new_rescue(body, new_resbody(ary, resbody))
+
+    result
+end
+
+def _reduce_276(val, _values, result)
+                      _, args, (_, line_max) = val
+
+                      result = args
+                      result.line_max = line_max if args
+
+    result
+end
+
+def _reduce_277(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+def _reduce_278(val, _values, result)
+                      yyerror "Unexpected ..." unless
+                        self.lexer.is_local_id(:"*")  &&
+                        self.lexer.is_local_id(:"**") &&
+                        self.lexer.is_local_id(:"&")
+
+                      result = call_args val
+
+    result
+end
+
+# reduce 279 omitted
+
+# reduce 280 omitted
+
+# reduce 281 omitted
+
+# reduce 282 omitted
+
+def _reduce_283(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_284(val, _values, result)
+                      result = args [val[0], array_to_hash(val[2])]
+
+    result
+end
+
+def _reduce_285(val, _values, result)
+                      result = args [array_to_hash(val[0])]
+
+    result
+end
+
+def _reduce_286(val, _values, result)
+                      warning "parenthesize argument(s) for future version"
+                      result = call_args val
+
+    result
+end
+
+def _reduce_287(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_288(val, _values, result)
+                      result = call_args [array_to_hash(val[0]), val[1]]
+
+    result
+end
+
+def _reduce_289(val, _values, result)
+                      result = call_args [val[0], array_to_hash(val[2]), val[3]]
+
+    result
+end
+
+def _reduce_290(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_291(val, _values, result)
+                      # parse26.y line 2200
+
+                      # If call_args starts with a open paren '(' or
+                      # '[', look-ahead reading of the letters calls
+                      # CMDARG_PUSH(0), but the push must be done
+                      # after CMDARG_PUSH(1). So this code makes them
+                      # consistent by first cancelling the premature
+                      # CMDARG_PUSH(0), doing CMDARG_PUSH(1), and
+                      # finally redoing CMDARG_PUSH(0).
+
+                      result = yychar = self.last_token_type.first
+                      lookahead = [:tLPAREN, :tLPAREN_ARG, :tLPAREN2, :tLBRACK, :tLBRACK2].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.push true
+                      lexer.cmdarg.push false if lookahead
+
+    result
+end
+
+def _reduce_292(val, _values, result)
+                      yychar, args = val
+
+                      # call_args can be followed by tLBRACE_ARG (that
+                      # does CMDARG_PUSH(0) in the lexer) but the push
+                      # must be done after CMDARG_POP() in the parser.
+                      # So this code does CMDARG_POP() to pop 0 pushed
+                      # by tLBRACE_ARG, CMDARG_POP() to pop 1 pushed
+                      # by command_args, and CMDARG_PUSH(0) to restore
+                      # back the flag set by tLBRACE_ARG.
+
+                      lookahead = [:tLBRACE_ARG].include?(yychar)
+                      lexer.cmdarg.pop if lookahead
+                      lexer.cmdarg.pop
+                      lexer.cmdarg.push false if lookahead
+                      result = args
+
+    result
+end
+
+def _reduce_293(val, _values, result)
+                      _, arg = val
+                      result = s(:block_pass, arg).line arg.line
+
+    result
+end
+
+def _reduce_294(val, _values, result)
+                      (_, line), = val
+                      result = s(:block_pass).line line
+
+    result
+end
+
+def _reduce_295(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 296 omitted
+
+def _reduce_297(val, _values, result)
+                      arg, = val
+                      lineno = arg.line
+
+                      result = s(:array, arg).line lineno
+
+    result
+end
+
+def _reduce_298(val, _values, result)
+                      _, arg = val
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_299(val, _values, result)
+                      (_, line), = val
+                      result = s(:array, s(:splat).line(line)).line line
+
+    result
+end
+
+def _reduce_300(val, _values, result)
+                      args, _, id = val
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_301(val, _values, result)
+                      args, _, (_, line), id = val
+                      result = self.list_append args, s(:splat, id).line(line)
+
+    result
+end
+
+def _reduce_302(val, _values, result)
+                      args, _, (_, line) = val
+                      result = self.list_append args, s(:splat).line(line)
+
+    result
+end
+
+def _reduce_303(val, _values, result)
+                      result = new_masgn_arg val[0]
+
+    result
+end
+
+def _reduce_304(val, _values, result)
+                      result = new_masgn_arg val[0], :wrap
+
+    result
+end
+
+def _reduce_305(val, _values, result)
+                      result = val[0] << val[2]
+
+    result
+end
+
+def _reduce_306(val, _values, result)
+                      arg, _, _, splat = val
+                      result = self.arg_concat arg, splat
+
+    result
+end
+
+def _reduce_307(val, _values, result)
+                      _, arg = val
+                      result = s(:splat, arg).line arg.line
+
+    result
+end
+
+# reduce 308 omitted
+
+# reduce 309 omitted
+
+# reduce 310 omitted
+
+# reduce 311 omitted
+
+# reduce 312 omitted
+
+# reduce 313 omitted
+
+# reduce 314 omitted
+
+# reduce 315 omitted
+
+# reduce 316 omitted
+
+# reduce 317 omitted
+
+def _reduce_318(val, _values, result)
+                      (msg, line), = val
+                      result = new_call nil, msg.to_sym
+                      result.line line
+
+    result
+end
+
+def _reduce_319(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_320(val, _values, result)
+                      lexer.cmdarg.pop
+                      result = new_begin val
+
+    result
+end
+
+def _reduce_321(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_322(val, _values, result)
+                      (_, line), _, _ = val
+                      result = s(:begin).line line
+
+    result
+end
+
+def _reduce_323(val, _values, result)
+                      lexer.lex_state = EXPR_ENDARG
+
+    result
+end
+
+def _reduce_324(val, _values, result)
+                      _, stmt, _, _, = val
+                      # warning "(...) interpreted as grouped expression"
+                      result = stmt
+
+    result
+end
+
+def _reduce_325(val, _values, result)
+                      (_, line), stmt, _ = val
+                      result = stmt || s(:nil).line(line)
+                      result.paren = true
+
+    result
+end
+
+def _reduce_326(val, _values, result)
+                      expr, _, (id, _line) = val
+
+                      result = s(:colon2, expr, id.to_sym).line expr.line
+
+    result
+end
+
+def _reduce_327(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_328(val, _values, result)
+                      (_, line), args, (_, line_max) = val
+
+                      result = args || s(:array)
+                      result.sexp_type = :array # aref_args is :args
+                      result.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_329(val, _values, result)
+                      result = self.lexer.lineno
+
+    result
+end
+
+def _reduce_330(val, _values, result)
+                      result = new_hash val
+
+    result
+end
+
+def _reduce_331(val, _values, result)
+                      (_, line), = val
+                      result = s(:return).line line
+
+    result
+end
+
+def _reduce_332(val, _values, result)
+                      (_, line), _, args, _ = val
+
+                      result = new_yield(args).line line
+
+    result
+end
+
+def _reduce_333(val, _values, result)
+                      (_, line), _, _ = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_334(val, _values, result)
+                      (_, line), = val
+
+                      result = new_yield.line line
+
+    result
+end
+
+def _reduce_335(val, _values, result)
+                      (_, line), _, _, arg, _ = val
+
+                      result = s(:defined, arg).line line
+
+    result
+end
+
+def _reduce_336(val, _values, result)
+                      _, _, lhs, _ = val
+                      result = new_call lhs, :"!"
+
+    result
+end
+
+def _reduce_337(val, _values, result)
+                      debug 9
+
+    result
+end
+
+def _reduce_338(val, _values, result)
+                      call, iter = val
+
+                      iter.insert 1, call
+                      result = iter
+                      # FIX: probably not: call.line = iter.line
+
+    result
+end
+
+# reduce 339 omitted
+
+def _reduce_340(val, _values, result)
+                      call, iter = val[0], val[1]
+                      block_dup_check call, iter
+                      iter.insert 1, call # FIX
+                      result = iter
+
+    result
+end
+
+def _reduce_341(val, _values, result)
+                      expr, = val
+                      result = expr
+
+    result
+end
+
+def _reduce_342(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, t, f
+
+    result
+end
+
+def _reduce_343(val, _values, result)
+                      _, c, _, t, f, _ = val
+                      result = new_if c, f, t
+
+    result
+end
+
+def _reduce_344(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_while body, cond, true
+
+    result
+end
+
+def _reduce_345(val, _values, result)
+                      _, cond, body, _ = val
+                      result = new_until body, cond, true
+
+    result
+end
+
+def _reduce_346(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_347(val, _values, result)
+                      (_, line), _, body, _ = val
+                      result = new_case nil, body, line
+
+    result
+end
+
+def _reduce_348(val, _values, result)
+                      (_, line), expr, _, body, _ = val
+
+                      result = new_case expr, body, line
+
+    result
+end
+
+def _reduce_349(val, _values, result)
+                      _, var, _, iter, body, _ = val
+                      result = new_for iter, var, body
+
+    result
+end
+
+def _reduce_350(val, _values, result)
+                      if (self.in_def || self.in_single > 0) then
+                        yyerror "class definition in method body"
+                      end
+                      self.env.extend
+
+    result
+end
+
+def _reduce_351(val, _values, result)
+                      result = new_class val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_352(val, _values, result)
+                      result = self.in_def
+                      self.in_def = false
+
+    result
+end
+
+def _reduce_353(val, _values, result)
+                      result = self.in_single
+                      self.in_single = 0
+                      self.env.extend
+
+    result
+end
+
+def _reduce_354(val, _values, result)
+                      result = new_sclass val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_355(val, _values, result)
+                      yyerror "module definition in method body" if
+                        self.in_def or self.in_single > 0
+
+                      self.env.extend
+
+    result
+end
+
+def _reduce_356(val, _values, result)
+                      result = new_module val
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_357(val, _values, result)
+                      result, in_def = new_defn val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+    result
+end
+
+def _reduce_358(val, _values, result)
+                      result, in_def = new_defs val
+
+                      lexer.cond.pop # group = local_pop
+                      lexer.cmdarg.pop
+                      self.env.unextend
+                      self.in_def = in_def
+
+                      self.in_single -= 1
+
+                      # TODO: restore cur_arg ? what's cur_arg?
+
+    result
+end
+
+def _reduce_359(val, _values, result)
+                      (_, line), = val
+                      result = s(:break).line line
+
+    result
+end
+
+def _reduce_360(val, _values, result)
+                      (_, line), = val
+                      result = s(:next).line line
+
+    result
+end
+
+def _reduce_361(val, _values, result)
+                      (_, line), = val
+                      result = s(:redo).line line
+
+    result
+end
+
+def _reduce_362(val, _values, result)
+                      (_, line), = val
+                      result = s(:retry).line line
+
+    result
+end
+
+def _reduce_363(val, _values, result)
+                      result = value_expr(val[0])
+
+    result
+end
+
+# reduce 364 omitted
+
+# reduce 365 omitted
+
+# reduce 366 omitted
+
+# reduce 367 omitted
+
+# reduce 368 omitted
+
+# reduce 369 omitted
+
+# reduce 370 omitted
+
+def _reduce_371(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_372(val, _values, result)
+                      result << self.lexer.comment
+
+    result
+end
+
+def _reduce_373(val, _values, result)
+                      self.in_argdef = true
+                      result << self.lexer.comment
+
+    result
+end
+
+# reduce 374 omitted
+
+# reduce 375 omitted
+
+# reduce 376 omitted
+
+# reduce 377 omitted
+
+# reduce 378 omitted
+
+# reduce 379 omitted
+
+# reduce 380 omitted
+
+# reduce 381 omitted
+
+# reduce 382 omitted
+
+# reduce 383 omitted
+
+# reduce 384 omitted
+
+# reduce 385 omitted
+
+# reduce 386 omitted
+
+# reduce 387 omitted
+
+# reduce 388 omitted
+
+def _reduce_389(val, _values, result)
+                      (_, line), c, _, t, rest = val
+
+                      result = s(:if, c, t, rest).line line
+
+    result
+end
+
+# reduce 390 omitted
+
+def _reduce_391(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 392 omitted
+
+def _reduce_393(val, _values, result)
+                      val[0].delete_at 1 if val[0][1].nil? # HACK
+
+    result
+end
+
+def _reduce_394(val, _values, result)
+                      (sym, line), = val
+
+                      result = s(:dummy, sym).line line
+
+    result
+end
+
+def _reduce_395(val, _values, result)
+                      _, args, _ = val
+                      result = args
+
+    result
+end
+
+def _reduce_396(val, _values, result)
+                      arg, = val
+                      line = arg.line
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = s(:array, arg).line line
+
+    result
+end
+
+def _reduce_397(val, _values, result)
+                      args, _, arg = val
+
+                      arg = arg.last if arg.sexp_type == :dummy
+
+                      result = list_append args, arg
+
+    result
+end
+
+def _reduce_398(val, _values, result)
+                      args, = val
+
+                      result = block_var args
+
+    result
+end
+
+def _reduce_399(val, _values, result)
+                      args, _, rest = val
+
+                      result = block_var args, rest
+
+    result
+end
+
+def _reduce_400(val, _values, result)
+                      lhs, _, splat, _, rhs = val
+
+                      result = block_var lhs, splat, rhs
+
+    result
+end
+
+def _reduce_401(val, _values, result)
+                      rest, = val
+
+                      result = block_var rest
+
+    result
+end
+
+def _reduce_402(val, _values, result)
+                      splat, _, rest = val
+
+                      result = block_var splat, rest
+
+    result
+end
+
+def _reduce_403(val, _values, result)
+                      _, (id, line) = val
+
+                      result = args ["*#{id}".to_sym]
+                      result.line line
+
+    result
+end
+
+def _reduce_404(val, _values, result)
+                      (_, line), = val
+                      result = args([:*]).line line
+
+    result
+end
+
+# reduce 405 omitted
+
+# reduce 406 omitted
+
+def _reduce_407(val, _values, result)
+ self.in_argdef = false
+    result
+end
+
+# reduce 408 omitted
+
+def _reduce_409(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_410(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_411(val, _values, result)
+                      result = call_args val
+
+    result
+end
+
+def _reduce_412(val, _values, result)
+                      (id, line), = val
+                      result = call_args [id]
+                      result.line line
+
+    result
+end
+
+def _reduce_413(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 414 omitted
+
+def _reduce_415(val, _values, result)
+                      result = s(:WTF_COMMA!)
+
+    result
+end
+
+def _reduce_416(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_417(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_418(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_419(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_420(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_421(val, _values, result)
+                      arg, _ = val
+                      result = arg << nil
+
+    result
+end
+
+def _reduce_422(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_423(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_424(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_425(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_426(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_427(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_428(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_429(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_430(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_431(val, _values, result)
+ result = 0
+    result
+end
+
+def _reduce_432(val, _values, result)
+                      self.lexer.command_start = true
+
+    result
+end
+
+def _reduce_433(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+
+    result
+end
+
+def _reduce_434(val, _values, result)
+                      (_, line), = val
+
+                      result = s(:args).line line
+
+    result
+end
+
+def _reduce_435(val, _values, result)
+                      # TODO: current_arg = 0
+                      result = args val
+                      self.in_argdef = false
+
+    result
+end
+
+# reduce 436 omitted
+
+def _reduce_437(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_438(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_439(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_440(val, _values, result)
+                      result = wrap :shadow, val[0]
+
+    result
+end
+
+# reduce 441 omitted
+
+def _reduce_442(val, _values, result)
+                      self.env.extend :dynamic
+                      result = lexer.lpar_beg
+                      lexer.paren_nest += 1
+                      lexer.lpar_beg = lexer.paren_nest
+
+    result
+end
+
+def _reduce_443(val, _values, result)
+                      lexer.cmdarg.push false
+
+    result
+end
+
+def _reduce_444(val, _values, result)
+                      (_, line), lpar, args, _cmdarg, body = val
+                      lexer.lpar_beg = lpar
+
+                      lexer.cmdarg.pop
+
+                      call = s(:lambda).line line
+                      result = new_iter call, args, body
+                      result.line line
+                      self.env.unextend # TODO: dynapush & dynapop
+
+    result
+end
+
+def _reduce_445(val, _values, result)
+                      self.in_argdef = false
+                      result = args val
+
+    result
+end
+
+def _reduce_446(val, _values, result)
+                      self.in_argdef = false
+                      result = val[0]
+                      result = 0 if result == s(:args)
+
+    result
+end
+
+def _reduce_447(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_448(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_449(val, _values, result)
+                      (_, line), iter, _ = val
+                      result = iter.line line
+
+    result
+end
+
+def _reduce_450(val, _values, result)
+                      # TODO:
+                      ## if (nd_type($1) == NODE_YIELD) {
+                      ##     compile_error(PARSER_ARG "block given to yield");
+
+                      cmd, blk = val
+
+                      syntax_error "Both block arg and actual block given." if
+                        cmd.block_pass?
+
+                      if inverted? val then
+                        val = invert_block_call val
+                        cmd, blk = val
+                      end
+
+                      result = blk
+                      result.insert 1, cmd
+
+    result
+end
+
+def _reduce_451(val, _values, result)
+                      lhs, _, (id, _line), args = val
+
+                      result = new_call lhs, id.to_sym, args
+
+    result
+end
+
+def _reduce_452(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_453(val, _values, result)
+                      iter1, _, (name, _line), args, iter2 = val
+
+                      call = new_call iter1, name.to_sym, args
+                      iter2.insert 1, call
+
+                      result = iter2
+
+    result
+end
+
+def _reduce_454(val, _values, result)
+                      call, args = val
+
+                      result = call
+
+                      if args then
+                        call.concat args.sexp_body
+                        result.line_max = args.line_max
+                      end
+
+    result
+end
+
+def _reduce_455(val, _values, result)
+                      recv, call_op, (op, op_line), args = val
+
+                      result = new_call recv, op.to_sym, args, call_op
+                      result.line_max = op_line unless args
+
+    result
+end
+
+def _reduce_456(val, _values, result)
+                      recv, _, (op, _line), args = val
+
+                      result = new_call recv, op.to_sym, args
+
+    result
+end
+
+def _reduce_457(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      result = new_call lhs, id.to_sym
+
+    result
+end
+
+def _reduce_458(val, _values, result)
+                      result = new_call val[0], :call, val[2], val[1]
+
+    result
+end
+
+def _reduce_459(val, _values, result)
+                      result = new_call val[0], :call, val[2]
+
+    result
+end
+
+def _reduce_460(val, _values, result)
+                      result = new_super val[1]
+
+    result
+end
+
+def _reduce_461(val, _values, result)
+                      (_, line), = val
+                      result = s(:zsuper).line line
+
+    result
+end
+
+def _reduce_462(val, _values, result)
+                      result = new_aref val
+
+    result
+end
+
+def _reduce_463(val, _values, result)
+                      self.env.extend :dynamic
+
+    result
+end
+
+def _reduce_464(val, _values, result)
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_465(val, _values, result)
+                      self.env.extend :dynamic
+
+    result
+end
+
+def _reduce_466(val, _values, result)
+                      (_, line), _, body, _ = val
+
+                      result = body
+                      result.line line
+
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_467(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_468(val, _values, result)
+ result = lexer.cmdarg.store(false)
+    result
+end
+
+def _reduce_469(val, _values, result)
+                      line, cmdarg, param, cmpstmt = val
+
+                      result = new_brace_body param, cmpstmt, line
+                      self.env.unextend
+                      lexer.cmdarg.restore cmdarg
+                      lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ?
+
+    result
+end
+
+def _reduce_470(val, _values, result)
+ self.env.extend :dynamic; result = self.lexer.lineno
+    result
+end
+
+def _reduce_471(val, _values, result)
+ lexer.cmdarg.push false
+    result
+end
+
+def _reduce_472(val, _values, result)
+                      line, _cmdarg, param, cmpstmt = val
+
+                      result = new_do_body param, cmpstmt, line
+                      lexer.cmdarg.pop
+                      self.env.unextend
+
+    result
+end
+
+def _reduce_473(val, _values, result)
+                      arg, = val
+
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+def _reduce_474(val, _values, result)
+                      _, arg = val
+
+                      result = s(:array, s(:splat, arg).line(arg.line)).line arg.line
+
+    result
+end
+
+def _reduce_475(val, _values, result)
+                      args, _, id = val
+
+                      result = self.list_append args, id
+
+    result
+end
+
+def _reduce_476(val, _values, result)
+                      args, _, _, id = val
+
+                      result = self.list_append args, s(:splat, id).line(id.line)
+
+    result
+end
+
+def _reduce_477(val, _values, result)
+                      (_, line), case_args, _then, body, cases = val
+
+                      result = new_when case_args, body
+                      result.line line
+                      result << cases if cases
+
+    result
+end
+
+# reduce 478 omitted
+
+# reduce 479 omitted
+
+def _reduce_480(val, _values, result)
+                      self.lexer.lex_state = EXPR_BEG|EXPR_LABEL
+                      self.lexer.command_start = false
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      push_pvtbl
+                      push_pktbl
+
+    result
+end
+
+def _reduce_481(val, _values, result)
+                      pop_pktbl
+                      pop_pvtbl
+                      old_kwargs = _values[-3]
+                      self.in_kwarg = old_kwargs
+
+    result
+end
+
+def _reduce_482(val, _values, result)
+                      (_, line), _, pat, _, _, body, cases = val
+
+                      result = new_in pat, body, cases, line
+
+    result
+end
+
+# reduce 483 omitted
+
+# reduce 484 omitted
+
+# reduce 485 omitted
+
+def _reduce_486(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, body, nil).line body.line
+
+    result
+end
+
+def _reduce_487(val, _values, result)
+                      body, _, cond = val
+                      body = remove_begin body
+
+                      result = s(:if, cond, nil, body).line body.line
+
+    result
+end
+
+# reduce 488 omitted
+
+def _reduce_489(val, _values, result)
+                      expr, _ = val
+
+                      tail = new_array_pattern_tail nil, true, nil, nil
+                      result = new_array_pattern nil, expr, tail, expr.line
+
+    result
+end
+
+def _reduce_490(val, _values, result)
+                      expr, _, args = val
+
+                      result = new_array_pattern nil, expr, args, expr.line
+
+    result
+end
+
+def _reduce_491(val, _values, result)
+                      find, = val
+
+                      result = new_find_pattern nil, find
+
+    result
+end
+
+def _reduce_492(val, _values, result)
+                      args, = val
+                      result = new_array_pattern nil, nil, args, args.line
+
+    result
+end
+
+def _reduce_493(val, _values, result)
+                      kwargs, = val
+                      result = new_hash_pattern nil, kwargs, kwargs.line
+
+    result
+end
+
+# reduce 494 omitted
+
+def _reduce_495(val, _values, result)
+                      # NODE *n = NEW_LIST($1, &@$);
+                      # n = list_append(p, n, $3);
+                      # $$ = new_hash(p, n, &@$);
+
+                      expr, _, var = val
+
+                      id = var.last
+
+                      self.env[id] = :lvar # HACK: need to extend env
+                      lhs = s(:lasgn, id).line var.line
+
+                      result = new_assign lhs, expr
+
+    result
+end
+
+# reduce 496 omitted
+
+def _reduce_497(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = s(:or, lhs, rhs).line lhs.line
+
+    result
+end
+
+# reduce 498 omitted
+
+def _reduce_499(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_500(val, _values, result)
+ push_pktbl
+    result
+end
+
+# reduce 501 omitted
+
+# reduce 502 omitted
+
+def _reduce_503(val, _values, result)
+                      lhs, _, args, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern(lhs, nil, args, lhs.line)
+
+    result
+end
+
+def _reduce_504(val, _values, result)
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+
+    result
+end
+
+def _reduce_505(val, _values, result)
+                      lhs, _, kwargs, _ = val
+
+                      pop_pktbl
+                      result = new_hash_pattern(lhs, kwargs, lhs.line)
+
+    result
+end
+
+def _reduce_506(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_507(val, _values, result)
+                      const, _, pre_arg, _ = val
+
+                      pop_pktbl
+                      result = new_array_pattern const, nil, pre_arg, const.line
+
+    result
+end
+
+def _reduce_508(val, _values, result)
+                      const, _, find, _ = val
+
+                      pop_pktbl
+                      result = new_find_pattern(const, find).line const.line
+
+    result
+end
+
+def _reduce_509(val, _values, result)
+                      const, _, kwargs, _ = val
+
+                      result = new_hash_pattern const, kwargs, const.line
+
+    result
+end
+
+def _reduce_510(val, _values, result)
+                      const, _, _ = val
+
+                      tail = new_array_pattern_tail nil, nil, nil, nil
+                      result = new_array_pattern const, nil, tail, const.line
+
+    result
+end
+
+def _reduce_511(val, _values, result)
+                      _, pat, _ = val
+
+                      result = new_array_pattern nil, nil, pat, pat.line
+
+    result
+end
+
+def _reduce_512(val, _values, result)
+                      _, find, _ = val
+
+                      result = new_find_pattern nil, find
+
+    result
+end
+
+def _reduce_513(val, _values, result)
+                      (_, line), _ = val
+
+                      result = s(:array_pat).line line
+
+    result
+end
+
+def _reduce_514(val, _values, result)
+                      push_pktbl
+                      result = self.in_kwarg
+                      self.in_kwarg = false
+
+    result
+end
+
+def _reduce_515(val, _values, result)
+                      _, in_kwarg, kwargs, _ = val
+
+                      pop_pktbl
+                      self.in_kwarg = in_kwarg
+
+                      result = new_hash_pattern(nil, kwargs, kwargs.line)
+
+    result
+end
+
+def _reduce_516(val, _values, result)
+                      (_, line), _ = val
+
+                      tail = new_hash_pattern_tail nil, nil, line
+                      result = new_hash_pattern nil, tail, line
+
+    result
+end
+
+def _reduce_517(val, _values, result)
+ push_pktbl
+    result
+end
+
+def _reduce_518(val, _values, result)
+                      _, _, expr, _ = val
+
+                      pop_pktbl
+                      result = expr
+
+    result
+end
+
+def _reduce_519(val, _values, result)
+                      expr, = val
+
+                      ary = s(:array_TAIL, expr).line expr.line
+                      result = new_array_pattern_tail(ary, nil, nil, nil).line expr.line
+
+    result
+end
+
+def _reduce_520(val, _values, result)
+                      head, = val
+
+                      result = new_array_pattern_tail head, true, nil, nil
+
+    result
+end
+
+def _reduce_521(val, _values, result)
+                      head, tail = val
+
+                      both = array_pat_concat head, tail
+
+                      result = new_array_pattern_tail both, nil, nil, nil
+                      result.line head.line
+
+    result
+end
+
+def _reduce_522(val, _values, result)
+                      head, (rest, _) = val
+
+                      result = new_array_pattern_tail(head, true, rest, nil).line head.line
+
+    result
+end
+
+def _reduce_523(val, _values, result)
+                      head, (rest, _), _, post = val
+
+                      result = new_array_pattern_tail(head, true, rest, post).line head.line
+
+    result
+end
+
+# reduce 524 omitted
+
+def _reduce_525(val, _values, result)
+                      arg, _ = val
+                      result = arg
+
+    result
+end
+
+def _reduce_526(val, _values, result)
+                      head, tail, _ = val
+
+                      result = s(:PATTERN, *head.sexp_body, *tail.sexp_body)
+                      result.line head.line
+
+    result
+end
+
+def _reduce_527(val, _values, result)
+                      (id, line), = val
+
+                      result = new_array_pattern_tail nil, true, id, nil
+                      result.line line
+
+    result
+end
+
+def _reduce_528(val, _values, result)
+                      (id, line), _, rhs = val
+
+                      result = new_array_pattern_tail nil, true, id, rhs
+                      result.line line
+
+    result
+end
+
+def _reduce_529(val, _values, result)
+                      lhs, _, mid, _, rhs = val
+
+                      result = new_find_pattern_tail lhs, mid, rhs
+
+    result
+end
+
+def _reduce_530(val, _values, result)
+                      _, (id, line) = val
+
+                      result = [id.to_sym, line]
+
+    result
+end
+
+def _reduce_531(val, _values, result)
+                      (_id, line), = val
+
+                      result = [nil, line]
+
+    result
+end
+
+# reduce 532 omitted
+
+def _reduce_533(val, _values, result)
+                      lhs, _, rhs = val
+
+                      result = array_pat_concat lhs, rhs
+
+    result
+end
+
+def _reduce_534(val, _values, result)
+                      expr, = val
+                      expr = s(:array_TAIL, expr).line expr.line unless
+                        expr.sexp_type == :array_TAIL
+                      result = expr
+
+    result
+end
+
+def _reduce_535(val, _values, result)
+                      kw_arg, _, rest = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kw_arg, rest, kw_arg.line
+
+    result
+end
+
+def _reduce_536(val, _values, result)
+                      kwarg, = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_537(val, _values, result)
+                      kwarg, _ = val
+                      # TODO? new_unique_key_hash(p, $1, &@$)
+                      result = new_hash_pattern_tail kwarg, nil, kwarg.line
+
+    result
+end
+
+def _reduce_538(val, _values, result)
+                      rest, = val
+
+                      result = new_hash_pattern_tail nil, rest, rest.line
+
+    result
+end
+
+# reduce 539 omitted
+
+def _reduce_540(val, _values, result)
+                      kwarg, _, kw = val
+                      kwarg.concat kw.sexp_body
+                      result = kwarg
+
+    result
+end
+
+def _reduce_541(val, _values, result)
+                      # TODO: error_duplicate_pattern_key(p, get_id($1), &@1);
+                      lhs, rhs = val
+
+                      result = s(:PAIR, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_542(val, _values, result)
+                      lhs, = val
+
+                      # TODO: error_duplicate_pattern_variable(p, get_id($1), &@1);
+
+                      # TODO: if ($1 && !is_local_id(get_id($1))) {
+                      #     yyerror1(&@1, "key must be valid as local variables");
+                      # }
+
+                      # $$ = list_append(p, NEW_LIST(NEW_LIT(ID2SYM($1), &@$), &@$),
+                      #                     assignable(p, $1, 0, &@$));
+
+                      case lhs.sexp_type
+                      when :lit then
+                        assignable [lhs.value, lhs.line]
+                      else
+                        # TODO or done?
+                        debug 10
+                      end
+
+                      # TODO PAIR -> LIST ?
+                      result = s(:PAIR, lhs, nil).line lhs.line
+
+    result
+end
+
+def _reduce_543(val, _values, result)
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+def _reduce_544(val, _values, result)
+                      # you can't actually get here the way I lex labels
+                      debug 11
+
+    result
+end
+
+def _reduce_545(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = s(:kwrest, :"**#{name}").line line
+
+    result
+end
+
+def _reduce_546(val, _values, result)
+                      (_, line), = val
+
+                      result = s(:kwrest, :"**").line line
+
+    result
+end
+
+def _reduce_547(val, _values, result)
+                      (_, line), _ = val
+
+                      # TODO: or s(:norest)? s(:**nil)?
+                      result = s(:kwrest, :"**nil").line line
+
+    result
+end
+
+# reduce 548 omitted
+
+# reduce 549 omitted
+
+# reduce 550 omitted
+
+def _reduce_551(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot2, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_552(val, _values, result)
+                      lhs, _, rhs = val
+
+                      lhs = value_expr lhs
+                      rhs = value_expr rhs
+
+                      result = s(:dot3, lhs, rhs).line lhs.line
+
+    result
+end
+
+def _reduce_553(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot2, v1, nil).line v1.line
+
+    result
+end
+
+def _reduce_554(val, _values, result)
+                      v1, _ = val
+
+                      result = s(:dot3, v1, nil).line v1.line
+
+    result
+end
+
+# reduce 555 omitted
+
+# reduce 556 omitted
+
+# reduce 557 omitted
+
+def _reduce_558(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot2, nil, v1).line v1.line
+
+    result
+end
+
+def _reduce_559(val, _values, result)
+                      _, v1 = val
+
+                      result = s(:dot3, nil, v1).line v1.line
+
+    result
+end
+
+# reduce 560 omitted
+
+# reduce 561 omitted
+
+# reduce 562 omitted
+
+# reduce 563 omitted
+
+def _reduce_564(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_565(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_566(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_567(val, _values, result)
+                      result = ary_to_pat val[0]
+
+    result
+end
+
+def _reduce_568(val, _values, result)
+                      # TODO? if (!($$ = gettable(p, $1, &@$))) $$ = NEW_BEGIN(0, &@$);
+                      var, = val
+
+                      result = var
+
+    result
+end
+
+# reduce 569 omitted
+
+def _reduce_570(val, _values, result)
+                      # TODO: error_duplicate_pattern_variable(p, $1, &@1);
+                      # TODO: assignable(p, $1, 0, &@$);
+                      result = wrap :lasgn, val[0]
+
+    result
+end
+
+def _reduce_571(val, _values, result)
+                      # TODO: check id against env for lvar or dvar
+                      result = wrap :lvar, val[1]
+
+    result
+end
+
+def _reduce_572(val, _values, result)
+                      _, var = val
+                      result = var
+
+    result
+end
+
+def _reduce_573(val, _values, result)
+                      _, _, expr, _ = val
+                      result = expr # TODO? s(:begin, expr).line expr.line
+
+    result
+end
+
+def _reduce_574(val, _values, result)
+                      result = wrap :colon3, val[1]
+
+    result
+end
+
+def _reduce_575(val, _values, result)
+                      lhs, _, (id, _line) = val
+
+                      l = lhs.line
+                      result = s(:const, s(:colon2, lhs, id.to_sym).line(l)).line l
+
+    result
+end
+
+def _reduce_576(val, _values, result)
+                      # TODO $$ = gettable(p, $1, &@$);
+                      result = wrap :const, val[0]
+
+    result
+end
+
+def _reduce_577(val, _values, result)
+                      (_, line), klasses, var, _, body, rest = val
+
+                      klasses ||= s(:array)
+                      klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var
+                      klasses.line line
+
+                      result = new_resbody(klasses, body)
+                      result << rest if rest # UGH, rewritten above
+
+    result
+end
+
+def _reduce_578(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_579(val, _values, result)
+                      arg, = val
+                      result = s(:array, arg).line arg.line
+
+    result
+end
+
+# reduce 580 omitted
+
+# reduce 581 omitted
+
+def _reduce_582(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+# reduce 583 omitted
+
+def _reduce_584(val, _values, result)
+                      (_, line), body = val
+
+                      result = body || s(:nil).line(line)
+
+    result
+end
+
+# reduce 585 omitted
+
+def _reduce_586(val, _values, result)
+                      (lit, line), = val
+                      result = s(:lit, lit).line line
+
+    result
+end
+
+# reduce 587 omitted
+
+def _reduce_588(val, _values, result)
+                      str, = val
+                      str = s(:dstr, str.value) if str.sexp_type == :evstr
+                      result = str
+
+    result
+end
+
+def _reduce_589(val, _values, result)
+                      debug 12
+
+    result
+end
+
+# reduce 590 omitted
+
+def _reduce_591(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_592(val, _values, result)
+                      (_, line), str, (_, func) = val
+
+                      str = dedent str if func =~ RubyLexer::STR_FUNC_DEDENT
+
+                      result = str.line line
+
+    result
+end
+
+def _reduce_593(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_594(val, _values, result)
+                      result = new_xstring val
+                      # TODO: dedent?!?! SERIOUSLY?!?
+
+    result
+end
+
+def _reduce_595(val, _values, result)
+                      result = new_regexp val
+
+    result
+end
+
+def _reduce_596(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_597(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_598(val, _values, result)
+                      result = new_word_list
+
+    result
+end
+
+def _reduce_599(val, _values, result)
+                      result = val[0].dup << new_word_list_entry(val)
+
+    result
+end
+
+# reduce 600 omitted
+
+def _reduce_601(val, _values, result)
+                      result = self.literal_concat val[0], val[1]
+
+    result
+end
+
+def _reduce_602(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_603(val, _values, result)
+                      (_, line), list, (_, line_max), = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_604(val, _values, result)
+                      result = new_symbol_list
+
+    result
+end
+
+def _reduce_605(val, _values, result)
+                      list, * = val
+                      result = list.dup << new_symbol_list_entry(val)
+
+    result
+end
+
+def _reduce_606(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_607(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_608(val, _values, result)
+                      (_, line), _, (_, line_max) = val
+
+                      result = s(:array).line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_609(val, _values, result)
+                      (_, line), list, (_, line_max) = val
+
+                      result = list.line line
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_610(val, _values, result)
+                      result = new_qword_list
+
+    result
+end
+
+def _reduce_611(val, _values, result)
+                      result = val[0].dup << new_qword_list_entry(val)
+
+    result
+end
+
+def _reduce_612(val, _values, result)
+                      result = new_qsym_list
+
+    result
+end
+
+def _reduce_613(val, _values, result)
+                      result = val[0].dup << new_qsym_list_entry(val)
+
+    result
+end
+
+def _reduce_614(val, _values, result)
+                      line = prev_value_to_lineno _values.last
+                      result = s(:str, +"").line line
+
+    result
+end
+
+def _reduce_615(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_616(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_617(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_618(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_619(val, _values, result)
+                      v1, v2 = val
+                      result = literal_concat v1, v2
+
+    result
+end
+
+def _reduce_620(val, _values, result)
+                      result = new_string val
+
+    result
+end
+
+def _reduce_621(val, _values, result)
+                      result = lexer.lex_strterm
+
+                      lexer.lex_strterm = nil
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_622(val, _values, result)
+                      _, strterm, str = val
+                      lexer.lex_strterm = strterm
+                      result = s(:evstr, str).line str.line
+
+    result
+end
+
+def _reduce_623(val, _values, result)
+                      result = [lexer.lex_strterm,
+                                lexer.brace_nest,
+                                lexer.string_nest, # TODO: remove
+                                lexer.lex_state,
+                               ]
+
+                      lexer.cmdarg.push false
+                      lexer.cond.push false
+
+                      lexer.lex_strterm = nil
+                      lexer.brace_nest  = 0
+                      lexer.string_nest = 0
+
+                      lexer.lex_state   = EXPR_BEG
+
+    result
+end
+
+def _reduce_624(val, _values, result)
+                      (_, line), memo, stmt, _ = val
+
+                      lex_strterm, brace_nest, string_nest, oldlex_state = memo
+                      # TODO: heredoc_indent
+
+                      lexer.lex_strterm = lex_strterm
+                      lexer.brace_nest  = brace_nest
+                      lexer.string_nest = string_nest
+
+                      lexer.cond.pop
+                      lexer.cmdarg.pop
+
+                      lexer.lex_state = oldlex_state
+
+                      case stmt
+                      when Sexp then
+                        case stmt.sexp_type
+                        when :str, :dstr, :evstr then
+                          result = stmt
+                        else
+                          result = s(:evstr, stmt).line line
+                        end
+                      when nil then
+                        result = s(:evstr).line line
+                      else
+                        debug 13
+                        raise "unknown string body: #{stmt.inspect}"
+                      end
+
+    result
+end
+
+def _reduce_625(val, _values, result)
+                      result = wrap :gvar, val[0]
+
+    result
+end
+
+def _reduce_626(val, _values, result)
+                      result = wrap :ivar, val[0]
+
+    result
+end
+
+def _reduce_627(val, _values, result)
+                      result = wrap :cvar, val[0]
+
+    result
+end
+
+# reduce 628 omitted
+
+# reduce 629 omitted
+
+# reduce 630 omitted
+
+def _reduce_631(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[1]
+
+    result
+end
+
+def _reduce_632(val, _values, result)
+                      lexer.lex_state = EXPR_END
+                      result = wrap :lit, val[0]
+
+    result
+end
+
+# reduce 633 omitted
+
+# reduce 634 omitted
+
+# reduce 635 omitted
+
+# reduce 636 omitted
+
+def _reduce_637(val, _values, result)
+                      (_, line), result, _ = val
+
+                      lexer.lex_state = EXPR_END
+
+                      result ||= s(:str, "").line line
+
+                      case result.sexp_type
+                      when :dstr then
+                        result.sexp_type = :dsym
+                      when :str then
+                        result = s(:lit, result.last.to_sym).line result.line
+                      when :evstr then
+                        result = s(:dsym, "", result).line result.line
+                      else
+                        debug 14
+                      end
+
+    result
+end
+
+# reduce 638 omitted
+
+def _reduce_639(val, _values, result)
+                      _, (num, line) = val
+                      result = [-num, line]
+
+    result
+end
+
+# reduce 640 omitted
+
+# reduce 641 omitted
+
+# reduce 642 omitted
+
+# reduce 643 omitted
+
+def _reduce_644(val, _values, result)
+ result = wrap :ivar, val[0]
+    result
+end
+
+def _reduce_645(val, _values, result)
+ result = wrap :gvar, val[0]
+    result
+end
+
+def _reduce_646(val, _values, result)
+ result = wrap :cvar, val[0]
+    result
+end
+
+# reduce 647 omitted
+
+# reduce 648 omitted
+
+# reduce 649 omitted
+
+# reduce 650 omitted
+
+# reduce 651 omitted
+
+def _reduce_652(val, _values, result)
+ (_, line), = val; result = s(:nil).line line
+    result
+end
+
+def _reduce_653(val, _values, result)
+ (_, line), = val; result = s(:self).line line
+    result
+end
+
+def _reduce_654(val, _values, result)
+ (_, line), = val; result = s(:true).line line
+    result
+end
+
+def _reduce_655(val, _values, result)
+ (_, line), = val; result = s(:false).line line
+    result
+end
+
+def _reduce_656(val, _values, result)
+ (_, line), = val; result = s(:str, self.file).line line
+    result
+end
+
+def _reduce_657(val, _values, result)
+ (_, line), = val; result = s(:lit, line).line line
+    result
+end
+
+def _reduce_658(val, _values, result)
+                      (_, l), = val
+                      result =
+                        if defined? Encoding then
+                          s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l
+                        else
+                          s(:str, "Unsupported!").line l
+                        end
+
+    result
+end
+
+def _reduce_659(val, _values, result)
+                      raise "NO: #{val.inspect}" if Sexp === val.first
+                      (var, line), = val
+                      result = Sexp === var ? var : self.gettable(var)
+
+                      result.line line
+
+    result
+end
+
+def _reduce_660(val, _values, result)
+                      var = val[0]
+                      result = Sexp === var ? var : self.gettable(var)
+
+    result
+end
+
+def _reduce_661(val, _values, result)
+                      result = self.assignable val[0]
+
+    result
+end
+
+def _reduce_662(val, _values, result)
+                      result = self.assignable val[0]
+                      debug 15
+
+    result
+end
+
+def _reduce_663(val, _values, result)
+                      (ref, line), = val
+                      result = s(:nth_ref, ref).line line
+
+    result
+end
+
+def _reduce_664(val, _values, result)
+                      (ref, line), = val
+                      result = s(:back_ref, ref).line line
+
+    result
+end
+
+def _reduce_665(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+                      lexer.command_start = true
+
+    result
+end
+
+def _reduce_666(val, _values, result)
+                      result = val[2]
+
+    result
+end
+
+def _reduce_667(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 668 omitted
+
+def _reduce_669(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+def _reduce_670(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+# reduce 671 omitted
+
+def _reduce_672(val, _values, result)
+                      result = self.in_kwarg
+                      self.in_kwarg = true
+                      self.in_argdef = true
+                      self.lexer.lex_state |= EXPR_LABEL
+
+    result
+end
+
+def _reduce_673(val, _values, result)
+                      self.in_argdef = false
+                      result = end_args val
+
+    result
+end
+
+def _reduce_674(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_675(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_676(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 677 omitted
+
+# reduce 678 omitted
+
+def _reduce_679(val, _values, result)
+                      result = val[1]
+
+    result
+end
+
+def _reduce_680(val, _values, result)
+                      result = nil
+
+    result
+end
+
+def _reduce_681(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_682(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_683(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_684(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_685(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_686(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_687(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_688(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_689(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_690(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_691(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_692(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_693(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_694(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_695(val, _values, result)
+                      result = args val
+
+    result
+end
+
+def _reduce_696(val, _values, result)
+                      (_, line), = val
+                      result = s(:forward_args).line line
+
+    result
+end
+
+def _reduce_697(val, _values, result)
+                      yyerror "formal argument cannot be a constant"
+
+    result
+end
+
+def _reduce_698(val, _values, result)
+                      yyerror "formal argument cannot be an instance variable"
+
+    result
+end
+
+def _reduce_699(val, _values, result)
+                      yyerror "formal argument cannot be a global variable"
+
+    result
+end
+
+def _reduce_700(val, _values, result)
+                      yyerror "formal argument cannot be a class variable"
+
+    result
+end
+
+# reduce 701 omitted
+
+def _reduce_702(val, _values, result)
+                      (id, line), = val
+                      identifier = id.to_sym
+                      self.env[identifier] = :lvar
+
+                      result = [identifier, line]
+
+    result
+end
+
+# reduce 703 omitted
+
+# reduce 704 omitted
+
+def _reduce_705(val, _values, result)
+                      _, margs, _ = val
+
+                      result = margs
+
+    result
+end
+
+def _reduce_706(val, _values, result)
+                      result = new_arg val
+
+    result
+end
+
+def _reduce_707(val, _values, result)
+                      list, _, item = val
+
+                      if list.sexp_type == :args then
+                        result = list
+                      else
+                        result = s(:args, list).line list.line
+                      end
+
+                      if Sexp === item then
+                        line_max = item.line_max
+                      else
+                        item, line_max = item
+                      end
+
+                      result << item
+                      result.line_max = line_max
+
+    result
+end
+
+def _reduce_708(val, _values, result)
+                      label, = val
+                      # arg_var(p, formal_argument(p, $1));
+                      # p->cur_arg = get_id($1);
+                      # p->max_numparam = ORDINAL_PARAM;
+                      self.in_argdef = false
+                      result = label
+
+    result
+end
+
+def _reduce_709(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), arg = val
+
+                      identifier = label.to_sym
+                      self.env[identifier] = :lvar
+                      self.in_argdef = true
+
+                      kwarg  = s(:kwarg, identifier, arg).line line
+                      result = s(:array, kwarg).line line
+
+    result
+end
+
+def _reduce_710(val, _values, result)
+                      (label, line), = val
+
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+def _reduce_711(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), expr = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id, expr).line(line)).line line
+
+    result
+end
+
+def _reduce_712(val, _values, result)
+                      # TODO: new_kw_arg
+                      (label, line), = val
+                      id = label.to_sym
+                      self.env[id] = :lvar
+                      self.in_argdef = true
+
+                      result = s(:array, s(:kwarg, id).line(line)).line line
+
+    result
+end
+
+# reduce 713 omitted
+
+def _reduce_714(val, _values, result)
+                      list, _, item = val
+                      result = list << item.last
+
+    result
+end
+
+# reduce 715 omitted
+
+def _reduce_716(val, _values, result)
+                      result = args val
+
+    result
+end
+
+# reduce 717 omitted
+
+# reduce 718 omitted
+
+def _reduce_719(val, _values, result)
+                      (_, line), _ = val
+                      result = [:"**nil", line]
+
+    result
+end
+
+def _reduce_720(val, _values, result)
+                      _, (id, line) = val
+
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"**#{name}", line]
+
+    result
+end
+
+def _reduce_721(val, _values, result)
+                      (_, line), = val
+                      id = :"**"
+                      self.env[id] = :lvar
+                      result = [id, line]
+
+    result
+end
+
+def _reduce_722(val, _values, result)
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO: detect duplicate names
+                      # TODO? p->cur_arg = 0;
+
+    result
+end
+
+def _reduce_723(val, _values, result)
+                      lhs, _, rhs = val
+                      self.in_argdef = true
+                      result = self.assignable lhs, rhs
+                      # TODO? p->cur_arg = 0;
+
+    result
+end
+
+def _reduce_724(val, _values, result)
+                      optblk, = val
+                      result = s(:block, optblk).line optblk.line
+
+    result
+end
+
+def _reduce_725(val, _values, result)
+                      optarg, _, optblk = val
+                      result = optarg
+                      result << optblk
+
+    result
+end
+
+def _reduce_726(val, _values, result)
+                      opt, = val
+                      result = s(:block, opt).line opt.line
+
+    result
+end
+
+def _reduce_727(val, _values, result)
+                      result = self.block_append val[0], val[2]
+
+    result
+end
+
+# reduce 728 omitted
+
+# reduce 729 omitted
+
+def _reduce_730(val, _values, result)
+                      # TODO: differs from parse.y - needs tests
+                      _, (id, line) = val
+                      name = id.to_sym
+                      self.assignable [name, line]
+                      result = [:"*#{name}", line]
+
+    result
+end
+
+def _reduce_731(val, _values, result)
+                      (_, line), = val
+                      name = :"*"
+                      self.env[name] = :lvar
+                      result = [name, line]
+
+    result
+end
+
+# reduce 732 omitted
+
+# reduce 733 omitted
+
+def _reduce_734(val, _values, result)
+                      _, (id, line) = val
+                      identifier = id.to_sym
+
+                      self.env[identifier] = :lvar
+                      result = ["&#{identifier}".to_sym, line]
+
+    result
+end
+
+def _reduce_735(val, _values, result)
+                      (_, line), = val
+
+                      result = [:&, line]
+
+    result
+end
+
+def _reduce_736(val, _values, result)
+                      _, arg = val
+                      result = arg
+
+    result
+end
+
+def _reduce_737(val, _values, result)
+                      result = nil
+
+    result
+end
+
+# reduce 738 omitted
+
+def _reduce_739(val, _values, result)
+                      lexer.lex_state = EXPR_BEG
+
+    result
+end
+
+def _reduce_740(val, _values, result)
+                      result = val[2]
+                      yyerror "Can't define single method for literals." if
+                        result.sexp_type == :lit
+
+    result
+end
+
+def _reduce_741(val, _values, result)
+                      result = s(:array).line lexer.lineno
+
+    result
+end
+
+# reduce 742 omitted
+
+# reduce 743 omitted
+
+def _reduce_744(val, _values, result)
+                      list = val[0].dup
+                      more = val[2].sexp_body
+                      list.push(*more) unless more.empty?
+                      result = list
+                      result.sexp_type = :hash
+
+    result
+end
+
+def _reduce_745(val, _values, result)
+                      v1, _, v2 = val
+                      result = s(:array, v1, v2).line v1.line
+
+    result
+end
+
+def _reduce_746(val, _values, result)
+                      label, arg = val
+
+                      lit = wrap :lit, label
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_747(val, _values, result)
+                      lit = wrap :lit, val[0]
+                      arg = nil
+
+                      result = s(:array, lit, arg).line lit.line
+
+    result
+end
+
+def _reduce_748(val, _values, result)
+                      (_, line), sym, _, value = val
+
+                      sym.sexp_type = :dsym
+
+                      result = s(:array, sym, value).line line
+
+    result
+end
+
+def _reduce_749(val, _values, result)
+                      _, arg = val
+                      line = arg.line
+                      result = s(:array, s(:kwsplat, arg).line(line)).line line
+
+    result
+end
+
+def _reduce_750(val, _values, result)
+                      (_, line), = val
+                      result = s(:array, s(:kwsplat).line(line)).line line
+
+    result
+end
+
+# reduce 751 omitted
+
+# reduce 752 omitted
+
+# reduce 753 omitted
+
+# reduce 754 omitted
+
+# reduce 755 omitted
+
+# reduce 756 omitted
+
+# reduce 757 omitted
+
+# reduce 758 omitted
+
+# reduce 759 omitted
+
+# reduce 760 omitted
+
+# reduce 761 omitted
+
+# reduce 762 omitted
+
+# reduce 763 omitted
+
+# reduce 764 omitted
+
+# reduce 765 omitted
+
+# reduce 766 omitted
+
+# reduce 767 omitted
+
+# reduce 768 omitted
+
+# reduce 769 omitted
+
+# reduce 770 omitted
+
+def _reduce_771(val, _values, result)
+                      _, close = val # TODO: include lineno in close?
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_772(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+def _reduce_773(val, _values, result)
+                      _, close = val
+                      result = [close, lexer.lineno]
+
+    result
+end
+
+# reduce 774 omitted
+
+# reduce 775 omitted
+
+# reduce 776 omitted
+
+def _reduce_777(val, _values, result)
+ yyerrok
+    result
+end
+
+# reduce 778 omitted
+
+# reduce 779 omitted
+
+def _reduce_780(val, _values, result)
+ yyerrok
+    result
+end
+
+def _reduce_781(val, _values, result)
+ result = nil;
+    result
+end
+
+def _reduce_none(val, _values, result)
+  val[0]
+end
+
+end   # class Ruby33Parser
diff -pruN 3.20.0-2/lib/ruby_parser_extras.rb 3.21.1-1/lib/ruby_parser_extras.rb
--- 3.20.0-2/lib/ruby_parser_extras.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/lib/ruby_parser_extras.rb	2024-08-22 09:52:50.000000000 +0000
@@ -18,7 +18,7 @@ class Sexp
   end
 
   ##
-  # Returns the maximum line number of the children of self.
+  # Returns the minimum line number of the children of self.
 
   def line_min
     @line_min ||= [self.deep_each.map(&:line).min, self.line].compact.min
@@ -30,11 +30,11 @@ class Sexp
 end
 
 module RubyParserStuff
-  VERSION = "3.20.0"
+  VERSION = "3.21.1"
 
-  attr_accessor :lexer, :in_def, :in_single, :file
+  attr_accessor :lexer, :in_def, :in_single, :file, :in_argdef
   attr_accessor :in_kwarg
-  attr_reader :env, :comments
+  attr_reader :env
 
   ##
   # Canonicalize conditionals. Eg:
@@ -92,6 +92,7 @@ module RubyParserStuff
     [k, true]
   }.to_h
 
+  # TODO: remove
   has_enc = "".respond_to? :encoding
 
   # This is in sorted order of occurrence according to
@@ -122,9 +123,9 @@ module RubyParserStuff
     self.lexer = RubyLexer.new v && v.to_i
     self.lexer.parser = self
     self.in_kwarg = false
+    self.in_argdef = false
 
     @env = RubyParserStuff::Environment.new
-    @comments = []
 
     @canonicalize_conditions = true
 
@@ -153,6 +154,7 @@ module RubyParserStuff
       result.line lexer.lineno
     else
       result.line ss.first.line
+      result.line_max = ss.first.line_max
     end
 
     args.each do |arg|
@@ -330,9 +332,8 @@ module RubyParserStuff
     end
 
     args.each do |arg|
-      if arg.instance_of? Array and arg.size == 2 and arg.last.is_a? Numeric then
-        arg = arg.first
-      end
+      # ruby 3.0+ TODO: next if arg in [String, Integer] # eg ["(", 1]
+      next if arg.class == Array && arg.map(&:class) == [String, Integer]
 
       case arg
       when Sexp then
@@ -566,7 +567,7 @@ module RubyParserStuff
 
   def handle_encoding str
     str = str.dup
-    has_enc = str.respond_to? :encoding
+    has_enc = str.respond_to? :encoding # TODO: remove
     encoding = nil
 
     header = str.each_line.first(2)
@@ -663,6 +664,7 @@ module RubyParserStuff
       end
 
       if head.size == 2 and tail.size > 1 and tail[1].sexp_type == :str then
+        head[-1] = head[-1].dup if head[-1].frozen?
         head.last << tail[1].last
         head.sexp_type = :str if head.size == 2 # HACK ?
       else
@@ -794,6 +796,7 @@ module RubyParserStuff
     case lhs.sexp_type
     when :lasgn, :iasgn, :cdecl, :cvdecl, :gasgn, :cvasgn, :attrasgn, :safe_attrasgn then
       lhs << rhs
+      lhs.line_max = rhs.line_max
     when :const then
       lhs.sexp_type = :cdecl
       lhs << rhs
@@ -823,10 +826,10 @@ module RubyParserStuff
   end
 
   def new_begin val
-    _, lineno, body, _ = val
+    (_, line), _, body, _ = val
 
     result = body ? s(:begin, body) : s(:nil)
-    result.line lineno
+    result.line line
 
     result
   end
@@ -885,12 +888,13 @@ module RubyParserStuff
     # TODO: need a test with f(&b) to produce block_pass
     # TODO: need a test with f(&b) { } to produce warning
 
-    if args
+    if args then
       if ARG_TYPES[args.sexp_type] then
         result.concat args.sexp_body
       else
         result << args
       end
+      result.line_max = args.line_max
     end
 
     # line = result.grep(Sexp).map(&:line).compact.min
@@ -926,8 +930,7 @@ module RubyParserStuff
   end
 
   def new_class val
-    # TODO: get line from class keyword
-    line, path, superclass, body = val[1], val[2], val[3], val[5]
+    (_, line, comment), path, superclass, _, body, (_, line_max) = val
 
     path = path.first if path.instance_of? Array
 
@@ -942,7 +945,8 @@ module RubyParserStuff
     end
 
     result.line = line
-    result.comments = self.comments.pop
+    result.line_max = line_max
+    result.comments = comment if comment
     result
   end
 
@@ -970,13 +974,18 @@ module RubyParserStuff
   end
 
   def new_defn val
-    _, (name, line), in_def, args, body, _ = val
+    if val.size == 4 then
+      ((_, line, comment), (name, _line, in_def)), args, body, (_, line_max) = val
+    else
+      (_, line, comment), (name, line), in_def, args, body, (_, line_max) = val
+    end
 
     body ||= s(:nil).line line
 
     args.line line
 
     result = s(:defn, name.to_sym, args).line line
+    result.line_max = line_max
 
     if body.sexp_type == :block then
       result.push(*body.sexp_body)
@@ -984,13 +993,14 @@ module RubyParserStuff
       result.push body
     end
 
-    result.comments = self.comments.pop
+    result.comments = comment if comment
 
     [result, in_def]
   end
 
   def new_endless_defn val
-    (name, line, in_def), args, _, body, _, resbody = val
+    # not available in 2.x so we don't need to check size
+    ((_, line, comment), (name, _, in_def)), args, _, body, _, resbody = val
 
     result =
       if resbody then
@@ -1005,13 +1015,15 @@ module RubyParserStuff
     local_pop in_def
     endless_method_name result
 
-    result.comments = self.comments.pop
+    result.comments = comment if comment
 
     result
   end
 
   def new_endless_defs val
-    (recv, (name, line, in_def)), args, _, body, _, resbody = val
+    # not available in 2.x so we don't need to check size
+    ((_, line, comment), recv, _, _, (name, line, in_def)), \
+      args, _, body, _, resbody = val
 
     result =
       if resbody then
@@ -1027,19 +1039,26 @@ module RubyParserStuff
     local_pop in_def
     endless_method_name result
 
-    result.comments = self.comments.pop
+    result.comments = comment if comment
 
     result
   end
 
   def new_defs val
-    _, recv, (name, line), in_def, args, body, _ = val
+    if val.size == 4 then
+      ((_, line, comment), recv, _, _, (name, line, in_def)), \
+        args, body, (_, line_max) = val
+    else
+      (_, line, comment), recv, (name, _), in_def, \
+        args, body, (_, line_max) = val
+    end
 
     body ||= s(:nil).line line
 
     args.line line
 
     result = s(:defs, recv, name.to_sym, args).line line
+    result.line_max = line_max
 
     # TODO: remove_begin
     # TODO: reduce_nodes
@@ -1050,7 +1069,7 @@ module RubyParserStuff
       result.push body
     end
 
-    result.comments = self.comments.pop
+    result.comments = comment if comment
 
     [result, in_def]
   end
@@ -1204,12 +1223,12 @@ module RubyParserStuff
   end
 
   def new_module val
-    # TODO: get line from module keyword
-    line, path, body = val[1], val[2], val[4]
+    (_, line_min, comment), path, _, body, (_, line_max) = val
 
     path = path.first if path.instance_of? Array
 
-    result = s(:module, path).line line
+    result = s(:module, path).line line_min
+    result.line_max = line_max
 
     if body then # REFACTOR?
       if body.sexp_type == :block then
@@ -1219,7 +1238,7 @@ module RubyParserStuff
       end
     end
 
-    result.comments = self.comments.pop
+    result.comments = comment if comment
     result
   end
 
@@ -1291,9 +1310,10 @@ module RubyParserStuff
   end
 
   def new_regexp val
-    (_, line), node, (options, _) = val
+    (_, line), node, (options, line_max) = val
 
     node ||= s(:str, "").line line
+    node.line_max = line_max
 
     o, k = 0, nil
     options.split(//).uniq.each do |c| # FIX: this has a better home
@@ -1361,7 +1381,7 @@ module RubyParserStuff
   end
 
   def new_sclass val
-    recv, in_def, in_single, body = val[3], val[4], val[6], val[7]
+    (_, line), _, recv, in_def, _, in_single, body, _ = val
 
     result = s(:sclass, recv)
 
@@ -1373,7 +1393,7 @@ module RubyParserStuff
       end
     end
 
-    result.line = val[2]
+    result.line = line
     self.in_def = in_def
     self.in_single = in_single
     result
@@ -1512,11 +1532,16 @@ module RubyParserStuff
     end
   end
 
+  KEEP_COMMENT_TOKENS = [:kCLASS, :kMODULE, :kDEF, :tNL]
+
   def next_token
     token = self.lexer.next_token
 
     if token and token.first != RubyLexer::EOF then
       self.last_token_type = token
+
+      self.lexer.comment = nil unless KEEP_COMMENT_TOKENS.include? token.first
+
       return token
     elsif !token
       return self.lexer.next_token
@@ -1576,7 +1601,6 @@ module RubyParserStuff
     self.in_def = false
     self.in_single = 0
     self.env.reset
-    self.comments.clear
     self.last_token_type = nil
   end
 
Binary files 3.20.0-2/metadata.gz.sig and 3.21.1-1/metadata.gz.sig differ
diff -pruN 3.20.0-2/ruby_parser.gemspec 3.21.1-1/ruby_parser.gemspec
--- 3.20.0-2/ruby_parser.gemspec	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/ruby_parser.gemspec	2024-08-22 09:52:50.000000000 +0000
@@ -2,28 +2,28 @@
 # This file has been automatically generated by gem2tgz #
 #########################################################
 # -*- encoding: utf-8 -*-
-# stub: ruby_parser 3.20.0 ruby lib
+# stub: ruby_parser 3.21.1 ruby lib
 
 Gem::Specification.new do |s|
   s.name = "ruby_parser".freeze
-  s.version = "3.20.0"
+  s.version = "3.21.1"
 
   s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
   s.metadata = { "bug_tracker_uri" => "https://github.com/seattlerb/ruby_parser/issues", "homepage_uri" => "https://github.com/seattlerb/ruby_parser" } if s.respond_to? :metadata=
   s.require_paths = ["lib".freeze]
   s.authors = ["Ryan Davis".freeze]
-  s.cert_chain = ["-----BEGIN CERTIFICATE-----\nMIIDPjCCAiagAwIBAgIBBzANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu\nZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB\nGRYDY29tMB4XDTIzMDEwMTA3NTExN1oXDTI0MDEwMTA3NTExN1owRTETMBEGA1UE\nAwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS\nJomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda\nb9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx\ntaCPaLmfYIaFcHHCSY4hYDJijRQkLxPeB3xbOfzfLoBDbjvx5JxgJxUjmGa7xhcT\noOvjtt5P8+GSK9zLzxQP0gVLS/D0FmoE44XuDr3iQkVS2ujU5zZL84mMNqNB1znh\nGiadM9GHRaDiaxuX0cIUBj19T01mVE2iymf9I6bEsiayK/n6QujtyCbTWsAS9Rqt\nqhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV\ngBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw\nHQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBCwUAA4IB\nAQAkg3y+PBnBAPWdxxITm5sPHqdWQgSyCpRA20o4LTuWr8BWhSXBkfQNa7cY6fOn\nxyM34VPzBFbExv6XOGDfOMFBVaYTHuN9peC/5/umL7kLl+nflXzL2QA7K6LYj5Bg\nsM574Onr0dZDM6Vn69bzQ7rBIFDfK/OhlPzqKZad4nsdcsVH8ODCiT+ATMIZyz5K\nWCnNtqlyiWXI8tdTpahDgcUwfcN/oN7v4K8iU5IbLJX6HQ5DKgmKjfb6XyMth16k\nROfWo9Uyp8ba/j9eVG14KkYRaLydAY1MNQk2yd3R5CGfeOpD1kttxjoypoUJ2dOG\nnsNBRuQJ1UfiCG97a6DNm+Fr\n-----END CERTIFICATE-----\n".freeze]
-  s.date = "2023-03-04"
+  s.cert_chain = ["-----BEGIN CERTIFICATE-----\nMIIDPjCCAiagAwIBAgIBCDANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu\nZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB\nGRYDY29tMB4XDTI0MDEwMjIxMjEyM1oXDTI1MDEwMTIxMjEyM1owRTETMBEGA1UE\nAwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS\nJomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda\nb9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx\ntaCPaLmfYIaFcHHCSY4hYDJijRQkLxPeB3xbOfzfLoBDbjvx5JxgJxUjmGa7xhcT\noOvjtt5P8+GSK9zLzxQP0gVLS/D0FmoE44XuDr3iQkVS2ujU5zZL84mMNqNB1znh\nGiadM9GHRaDiaxuX0cIUBj19T01mVE2iymf9I6bEsiayK/n6QujtyCbTWsAS9Rqt\nqhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV\ngBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw\nHQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBCwUAA4IB\nAQCygvpmncmkiSs9r/Kceo4bBPDszhTv6iBi4LwMReqnFrpNLMOWJw7xi8x+3eL2\nXS09ZPNOt2zm70KmFouBMgOysnDY4k2dE8uF6B8JbZOO8QfalW+CoNBliefOTcn2\nbg5IOP7UoGM5lC174/cbDJrJnRG9bzig5FAP0mvsgA8zgTRXQzIUAZEo92D5K7p4\nB4/O998ho6BSOgYBI9Yk1ttdCtti6Y+8N9+fZESsjtWMykA+WXWeGUScHqiU+gH8\nS7043fq9EbQdBr2AXdj92+CDwuTfHI6/Hj5FVBDULufrJaan4xUgL70Hvc6pTTeW\ndeKfBjgVAq7EYHu1AczzlUly\n-----END CERTIFICATE-----\n".freeze]
+  s.date = "2024-07-09"
   s.description = "ruby_parser (RP) is a ruby parser written in pure ruby (utilizing\nracc--which does by default use a C extension). It outputs\ns-expressions which can be manipulated and converted back to ruby via\nthe ruby2ruby gem.\n\nAs an example:\n\n    def conditional1 arg1\n      return 1 if arg1 == 0\n      return 0\n    end\n\nbecomes:\n\n    s(:defn, :conditional1, s(:args, :arg1),\n      s(:if,\n        s(:call, s(:lvar, :arg1), :==, s(:lit, 0)),\n        s(:return, s(:lit, 1)),\n        nil),\n      s(:return, s(:lit, 0)))\n\nTested against 801,039 files from the latest of all rubygems (as of 2013-05):\n\n* 1.8 parser is at 99.9739% accuracy, 3.651 sigma\n* 1.9 parser is at 99.9940% accuracy, 4.013 sigma\n* 2.0 parser is at 99.9939% accuracy, 4.008 sigma\n* 2.6 parser is at 99.9972% accuracy, 4.191 sigma\n* 3.0 parser has a 100% parse rate.\n  * Tested against 2,672,412 unique ruby files across 167k gems.\n  * As do all the others now, basically.".freeze
   s.email = ["ryand-ruby@zenspider.com".freeze]
   s.executables = ["ruby_parse".freeze, "ruby_parse_extract_error".freeze]
   s.extra_rdoc_files = ["History.rdoc".freeze, "Manifest.txt".freeze, "README.rdoc".freeze, "debugging.md".freeze, "gauntlet.md".freeze]
-  s.files = [".autotest".freeze, "History.rdoc".freeze, "Manifest.txt".freeze, "README.rdoc".freeze, "Rakefile".freeze, "bin/ruby_parse".freeze, "bin/ruby_parse_extract_error".freeze, "compare/normalize.rb".freeze, "debugging.md".freeze, "gauntlet.md".freeze, "lib/.document".freeze, "lib/rp_extensions.rb".freeze, "lib/rp_stringscanner.rb".freeze, "lib/ruby20_parser.rb".freeze, "lib/ruby20_parser.y".freeze, "lib/ruby21_parser.rb".freeze, "lib/ruby21_parser.y".freeze, "lib/ruby22_parser.rb".freeze, "lib/ruby22_parser.y".freeze, "lib/ruby23_parser.rb".freeze, "lib/ruby23_parser.y".freeze, "lib/ruby24_parser.rb".freeze, "lib/ruby24_parser.y".freeze, "lib/ruby25_parser.rb".freeze, "lib/ruby25_parser.y".freeze, "lib/ruby26_parser.rb".freeze, "lib/ruby26_parser.y".freeze, "lib/ruby27_parser.rb".freeze, "lib/ruby27_parser.y".freeze, "lib/ruby30_parser.rb".freeze, "lib/ruby30_parser.y".freeze, "lib/ruby31_parser.rb".freeze, "lib/ruby31_parser.y".freeze, "lib/ruby32_parser.rb".freeze, "lib/ruby32_parser.y".freeze, "lib/ruby3_parser.yy".freeze, "lib/ruby_lexer.rb".freeze, "lib/ruby_lexer.rex".freeze, "lib/ruby_lexer.rex.rb".freeze, "lib/ruby_lexer_strings.rb".freeze, "lib/ruby_parser.rb".freeze, "lib/ruby_parser.yy".freeze, "lib/ruby_parser_extras.rb".freeze, "test/test_ruby_lexer.rb".freeze, "test/test_ruby_parser.rb".freeze, "test/test_ruby_parser_extras.rb".freeze, "tools/munge.rb".freeze, "tools/ripper.rb".freeze]
+  s.files = [".autotest".freeze, "History.rdoc".freeze, "Manifest.txt".freeze, "README.rdoc".freeze, "Rakefile".freeze, "bin/ruby_parse".freeze, "bin/ruby_parse_extract_error".freeze, "compare/normalize.rb".freeze, "debugging.md".freeze, "gauntlet.md".freeze, "lib/.document".freeze, "lib/rp_extensions.rb".freeze, "lib/rp_stringscanner.rb".freeze, "lib/ruby_lexer.rb".freeze, "lib/ruby_lexer.rex".freeze, "lib/ruby_lexer.rex.rb".freeze, "lib/ruby_lexer_strings.rb".freeze, "lib/ruby_parser.rb".freeze, "lib/ruby_parser2.yy".freeze, "lib/ruby_parser20.rb".freeze, "lib/ruby_parser21.rb".freeze, "lib/ruby_parser22.rb".freeze, "lib/ruby_parser23.rb".freeze, "lib/ruby_parser24.rb".freeze, "lib/ruby_parser25.rb".freeze, "lib/ruby_parser26.rb".freeze, "lib/ruby_parser27.rb".freeze, "lib/ruby_parser3.yy".freeze, "lib/ruby_parser30.rb".freeze, "lib/ruby_parser31.rb".freeze, "lib/ruby_parser32.rb".freeze, "lib/ruby_parser33.rb".freeze, "lib/ruby_parser_extras.rb".freeze, "test/test_ruby_lexer.rb".freeze, "test/test_ruby_parser.rb".freeze, "test/test_ruby_parser_extras.rb".freeze, "tools/munge.rb".freeze, "tools/ripper.rb".freeze]
   s.homepage = "https://github.com/seattlerb/ruby_parser".freeze
   s.licenses = ["MIT".freeze]
   s.rdoc_options = ["--main".freeze, "README.rdoc".freeze]
   s.required_ruby_version = Gem::Requirement.new([">= 2.6".freeze, "< 4".freeze])
-  s.rubygems_version = "3.2.5".freeze
+  s.rubygems_version = "3.3.15".freeze
   s.summary = "ruby_parser (RP) is a ruby parser written in pure ruby (utilizing racc--which does by default use a C extension)".freeze
 
   if s.respond_to? :specification_version then
@@ -31,14 +31,14 @@ Gem::Specification.new do |s|
   end
 
   if s.respond_to? :add_runtime_dependency then
-    s.add_development_dependency(%q<hoe>.freeze, ["~> 4.0"])
+    s.add_development_dependency(%q<hoe>.freeze, ["~> 4.2"])
     s.add_development_dependency(%q<oedipus_lex>.freeze, ["~> 2.6"])
-    s.add_development_dependency(%q<racc>.freeze, ["~> 1.5"])
+    s.add_runtime_dependency(%q<racc>.freeze, ["~> 1.5"])
     s.add_development_dependency(%q<rake>.freeze, [">= 10", "< 15"])
     s.add_development_dependency(%q<rdoc>.freeze, [">= 4.0", "< 7"])
     s.add_runtime_dependency(%q<sexp_processor>.freeze, ["~> 4.16"])
   else
-    s.add_dependency(%q<hoe>.freeze, ["~> 4.0"])
+    s.add_dependency(%q<hoe>.freeze, ["~> 4.2"])
     s.add_dependency(%q<oedipus_lex>.freeze, ["~> 2.6"])
     s.add_dependency(%q<racc>.freeze, ["~> 1.5"])
     s.add_dependency(%q<rake>.freeze, [">= 10", "< 15"])
diff -pruN 3.20.0-2/test/test_ruby_lexer.rb 3.21.1-1/test/test_ruby_lexer.rb
--- 3.20.0-2/test/test_ruby_lexer.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/test/test_ruby_lexer.rb	2024-08-22 09:52:50.000000000 +0000
@@ -584,7 +584,7 @@ class TestRubyLexer < Minitest::Test
                 :tNL,      nil, EXPR_BEG,
                 :tINTEGER, 2,   EXPR_NUM)
 
-    assert_equal "# one\n# two\n", @lex.comments
+    assert_equal "# one\n# two\n", @lex.comment
   end
 
   def test_yylex_comment_begin
@@ -592,13 +592,13 @@ class TestRubyLexer < Minitest::Test
                 nil,
                 :tINTEGER, 42, EXPR_NUM)
 
-    assert_equal "=begin\nblah\nblah\n=end\n", @lex.comments
+    assert_equal "=begin\nblah\nblah\n=end\n", @lex.comment
   end
 
   def test_yylex_comment_begin_bad
     refute_lex("=begin\nblah\nblah\n")
 
-    assert_equal "", @lex.comments
+    assert_nil @lex.comment
   end
 
   def test_yylex_comment_begin_not_comment
@@ -617,13 +617,13 @@ class TestRubyLexer < Minitest::Test
   def test_yylex_comment_begin_space
     assert_lex3("=begin blah\nblah\n=end\n", nil)
 
-    assert_equal "=begin blah\nblah\n=end\n", @lex.comments
+    assert_equal "=begin blah\nblah\n=end\n", @lex.comment
   end
 
   def test_yylex_comment_end_space_and_text
     assert_lex3("=begin blah\nblah\n=end blab\n", nil)
 
-    assert_equal "=begin blah\nblah\n=end blab\n", @lex.comments
+    assert_equal "=begin blah\nblah\n=end blab\n", @lex.comment
   end
 
   def test_yylex_comment_eos
diff -pruN 3.20.0-2/test/test_ruby_parser.rb 3.21.1-1/test/test_ruby_parser.rb
--- 3.20.0-2/test/test_ruby_parser.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/test/test_ruby_parser.rb	2024-08-22 09:52:50.000000000 +0000
@@ -15,11 +15,26 @@ class Sexp
   def == other # :nodoc:
     if other.class == self.class then
       super and
-        (line.nil? or other.line.nil? or line == other.line)
+        (line.nil?     or other.line.nil?     or line == other.line) and
+        (!defined?(@line_max) or @line_max.nil? or line_max == other.line_max)
+        # (line_max.nil? or other.line_max.nil? or line_max == other.line_max)
     else
       false
     end
   end
+
+  # convenience function just for testing
+  alias dead line_max
+  def line_max n = UNASSIGNED
+    if n != UNASSIGNED then
+      raise ArgumentError, "setting %p.line_max %p" % [self, n] unless Integer === n
+      @line_max = n
+      self
+    else
+      # raise "Accessing before @line_max defined" unless defined?(@line_max)
+      @line_max ||= self.deep_each.map(&:line).compact.max
+    end
+  end
 end
 
 module TestRubyParserShared
@@ -117,11 +132,13 @@ module TestRubyParserShared
     # for the array. Luckily, the arary elements all seemt to get the correct
     # line number.
     rb = "[\n'a',\n'b']\n1"
+
     pt = s(:block,
            s(:array,
              s(:str, "a").line(2),
-             s(:str, "b").line(3)),
+             s(:str, "b").line(3)).line(1),
            s(:lit, 1).line(4)).line 1
+
     assert_parse rb, pt
   end
 
@@ -483,7 +500,7 @@ module TestRubyParserShared
     exp = rb.strip + "\n"
 
     refute_parse rb
-    assert_equal exp, processor.lexer.comments
+    assert_equal exp, processor.lexer.comment
   end
 
   def test_bug_cond_pct
@@ -965,7 +982,12 @@ module TestRubyParserShared
   end
 
   def test_heredoc_with_extra_carriage_horrible_mix?
-    rb = "<<'eot'\r\nbody\r\neot\n"
+    rb = <<~RUBY
+      <<'eot'\r
+      body\r
+      eot
+    RUBY
+
     pt = s(:str, "body\r\n")
 
     assert_parse rb, pt
@@ -1051,9 +1073,9 @@ module TestRubyParserShared
   end
 
   def test_i_fucking_hate_line_numbers2
-    rb = <<-EOM.gsub(/^ {6}/, "")
+    rb = <<~EOM
       if true then
-        p('a')
+        p("a")
         b = 1
         p b
         c =1
@@ -1074,6 +1096,138 @@ module TestRubyParserShared
     assert_parse rb, pt
   end
 
+  line_max_array = s(:array,
+                     s(:lit, :line2).line(2),
+                     s(:lit, :line3).line(3)).line(1).line_max(4)
+  line_max_array_empty = s(:array).line(1).line_max(4)
+  [
+    [:plain_array,
+     "[\n:line2,\n:line3\n]",
+     line_max_array,
+    ],
+    [:pct_i,
+     "%i[\nline2\nline3\n]",
+     line_max_array,
+    ],
+    [:pct_i_empty,
+     "%i[\n\n\n]",
+     line_max_array_empty,
+    ],
+    [:pct_I,
+     "%I[\nline2\nline3\n]",
+     line_max_array,
+    ],
+    [:pct_I_empty,
+     "%I[\n\n\n]",
+     line_max_array_empty,
+    ],
+    [:call_parens,
+     "x(\n:line2,\n:line3\n)",
+     s(:call, nil, :x, *line_max_array.sexp_body).line(1).line_max(4),
+    ],
+    [:pct_w,
+     "%w[\nline2\nline3\n]",
+     s(:array,
+       s(:str, "line2").line(2),
+       s(:str, "line3").line(3)).line(1).line_max(4),
+    ],
+    [:pct_w_empty,
+     "%w[\n\n\n]",
+     line_max_array_empty,
+    ],
+    [:pct_W,
+     "%W[\nline2\nline3\n]",
+     s(:array,
+       s(:str, "line2").line(2),
+       s(:str, "line3").line(3)).line(1).line_max(4),
+    ],
+    [:pct_W_empty,
+     "%W[\n\n\n]",
+     line_max_array_empty,
+    ],
+    [:regexp,
+     "%r[\n\n\n]", # double-quotes to have the \n counted as lines on input
+     s(:lit, %r[#{"\n\n\n"}]).line(1).line_max(4),
+    ],
+    [:module,
+     <<~"RUBY",
+       module X   # line 1
+         module Y # line 2
+           Z = 42 # line 3
+         end      # line 4
+       end        # line 5
+     RUBY
+     s(:module, :X,
+       s(:module, :Y,
+         s(:cdecl, :Z, s(:lit, 42).line(3)).line(3).line_max(3)
+        ).line(2).line_max(4)
+      ).line(1).line_max(5)],
+    [:class,
+     <<~"RUBY",
+       class X    # line 1
+         class Y  # line 2
+           Z = 42 # line 3
+         end      # line 4
+       end        # line 5
+     RUBY
+     s(:class, :X, nil,
+       s(:class, :Y, nil,
+         s(:cdecl, :Z, s(:lit, 42).line(3)).line(3).line_max(3)
+        ).line(2).line_max(4)
+      ).line(1).line_max(5)],
+    [:cdecl,
+     <<~"RUBY",
+       module X
+         X = [
+           :line3,
+           :line4,
+         ]
+       end
+     RUBY
+     s(:module, :X,
+       s(:cdecl, :X,
+         s(:array,
+           s(:lit, :line3).line(3),
+           s(:lit, :line4).line(4)).line(2).line_max(5),
+        ).line(2).line_max(5),
+      ).line(1).line_max(6)
+    ],
+    [:defn,
+     <<~"RUBY",
+       class X    # line 1
+         def y(a, # line 2
+               b) # line 3
+           a + b  # line 4
+         end      # line 5
+       end        # line 6
+     RUBY
+     s(:class, :X, nil,
+       s(:defn, :y, s(:args, :a, :b).line(2).line_max(3),
+         s(:call, s(:lvar, :a).line(4), :+, s(:lvar, :b).line(4)).line(4)
+        ).line(2).line_max(5),
+      ).line(1).line_max(6),
+    ],
+    [:defs,
+     <<~"RUBY",
+       class X         # line 1
+         def self.y(a, # line 2
+               b)      # line 3
+           a + b       # line 4
+         end           # line 5
+       end             # line 6
+     RUBY
+     s(:class, :X, nil,
+       s(:defs, s(:self).line(2), :y, s(:args, :a, :b).line(2).line_max(3),
+         s(:call, s(:lvar, :a).line(4), :+, s(:lvar, :b).line(4)).line(4)
+        ).line(2).line_max(5),
+      ).line(1).line_max(6),
+    ],
+  ].each do |(name, rb, pt)|
+    define_method "test_line_numbers__max_line__#{name}" do
+      assert_parse rb, pt
+    end
+  end
+
   def test_if_elsif
     rb = "if 1; elsif 2; end"
     pt = s(:if, s(:lit, 1), nil, s(:if, s(:lit, 2), nil, nil))
@@ -1342,7 +1496,7 @@ module TestRubyParserShared
   end
 
   def test_magic_encoding_comment
-    rb = "# encoding: utf-8\nclass ExampleUTF8ClassNameVarietà; def self.è; così = :però; end\nend\n"
+    rb = +"# encoding: utf-8\nclass ExampleUTF8ClassNameVarietà; def self.è; così = :però; end\nend\n"
 
     rb.force_encoding "ASCII-8BIT" if rb.respond_to? :force_encoding
 
@@ -1568,11 +1722,10 @@ module TestRubyParserShared
 
     assert_equal "# class comment\n", sexp.comments
     act = sexp.find_nodes(:defn).map(&:comments)
-    exp = ["", "# Returns a list of things\n"]
+    exp = [nil, "# Returns a list of things\n"]
 
     assert_equal exp, act
-    assert_equal [], processor.comments
-    assert_equal "", processor.lexer.comments
+    assert_nil processor.lexer.comment
   end
 
   def test_parse_if_not_canonical
@@ -5402,6 +5555,14 @@ module TestRubyParserShared31Plus
     assert_case_in rb, pt
   end
 
+  def test_defn_forward_args__no_parens
+    rb = "def f ...\n  m(...)\nend"
+    pt = s(:defn, :f, s(:args, s(:forward_args)),
+          s(:call, nil, :m, s(:forward_args).line(2)).line(2))
+
+    assert_parse rb, pt
+  end
+
   def test_case_in_carat_nonlocal_vars
     processor.env[:a] = :lvar
 
@@ -5480,6 +5641,38 @@ end
 
 module TestRubyParserShared32Plus
   include TestRubyParserShared31Plus
+
+  def test_args_star__anon_solo
+    rb = "f(*)"
+    pt = s(:call, nil, :f, s(:splat))
+
+    assert_parse rb, pt
+  end
+
+  def test_args_star__anon_trailing
+    rb = "f(x, *)"
+    pt = s(:call, nil, :f, s(:call, nil, :x), s(:splat))
+
+    assert_parse rb, pt
+  end
+
+  def test_args_dstar__anon_solo
+    rb = "f(**)"
+    pt = s(:call, nil, :f, s(:hash, s(:kwsplat))) # TODO double check this
+
+    assert_parse rb, pt
+  end
+
+  def test_args_dstar__anon_trailing
+    rb = "f(x, **)"
+    pt = s(:call, nil, :f, s(:call, nil, :x), s(:hash, s(:kwsplat))) # TODO double check this
+
+    assert_parse rb, pt
+  end
+end
+
+module TestRubyParserShared33Plus
+  include TestRubyParserShared32Plus
 end
 
 class Minitest::Test
@@ -5503,28 +5696,17 @@ class TestRubyParser < Minitest::Test
     pt = s(:call, s(:call, nil, :a), :call)
 
     assert_equal pt, processor.parse(rb)
-
-    # bad syntax
-    e = assert_raises Racc::ParseError do
-      capture_io do
-        processor.parse "a.("
-      end
-    end
-
-    assert_includes e.message, 'parse error on value "$" ($end)'
   end
 
-  def test_parse_error_from_first
+  def test_parse_error
     processor = RubyParser.new
 
+    # bad syntax
     e = assert_raises Racc::ParseError do
-      capture_io do
-        processor.parse "a -> () {"
-      end
+      processor.parse "a.("
     end
 
-    # This is a 2.x error, will fail on 1.8/1.9.
-    assert_includes e.message, 'parse error on value "$" ($end)'
+    assert_match(/parse error on value \S+ ..end./, e.message)
   end
 end
 
@@ -5782,8 +5964,6 @@ class TestRubyParserV26 < RubyParserTest
 end
 
 class TestRubyParserV27 < RubyParserTestCase
-  make_my_diffs_pretty!
-
   include TestRubyParserShared27Plus
 
   def setup
@@ -5843,6 +6023,16 @@ class TestRubyParserV32 < RubyParserTest
   end
 end
 
+class TestRubyParserV33 < RubyParserTestCase
+  include TestRubyParserShared33Plus
+
+  def setup
+    super
+
+    self.processor = RubyParser::V33.new
+  end
+end
+
 RubyParser::VERSIONS.each do |klass|
   v = klass.version
   describe "block args arity #{v}" do
diff -pruN 3.20.0-2/tools/munge.rb 3.21.1-1/tools/munge.rb
--- 3.20.0-2/tools/munge.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/tools/munge.rb	2024-08-22 09:52:50.000000000 +0000
@@ -174,6 +174,10 @@ ARGF.each_line do |line|
     last_token = token
   when /^Reading a token: / then
     next # skip
+  when /^Reading a token$/ then # wtf?
+    next # skip
+  when /^(?:add_delayed_token|parser_dispatch)/ then # dunno what this is yet
+    next # skip
   when /^read\s+:(\w+)/ then # read    :tNL(tNL) nil
     token = munge $1
     next if last_token == token
@@ -212,7 +216,9 @@ ARGF.each_line do |line|
     reduce_line = nil
     stack.clear
   when /^reduce/ then # ruby_parser side
-    puts munge line.chomp
+    s = munge line.chomp
+    next if s =~ /reduce\s+(\w+) --> \1/
+    puts s
     puts
   when /^(\w+_stack)\.(\w+)/ then
     # TODO: make pretty, but still informative w/ line numbers etc
@@ -223,7 +229,7 @@ ARGF.each_line do |line|
     # puts line
     # TODO: make pretty, but still informative w/ line numbers etc
     puts line.gsub("true", "1").gsub("false", "0")
-  when /^lex_state: :?([\w|]+) -> :?([\w|]+)(?: (?:at|from) (.*))?/ then
+  when /^lex_state: :?([\w|()]+) -> :?([\w|]+)(?: (?:at|from) (.*))?/ then
     a, b, c = $1.upcase, $2.upcase, $3
     a.gsub!(/EXPR_/, "")
     b.gsub!(/EXPR_/, "")
diff -pruN 3.20.0-2/tools/ripper.rb 3.21.1-1/tools/ripper.rb
--- 3.20.0-2/tools/ripper.rb	2023-03-30 13:56:32.000000000 +0000
+++ 3.21.1-1/tools/ripper.rb	2024-08-22 09:52:50.000000000 +0000
@@ -21,18 +21,20 @@ end
 ARGV.each do |path|
   src = path == "-" ? $stdin.read : File.read(path)
 
-  sexp = if $b then
-           Ripper.sexp src
-         else
-           rip = MySexpBuilder.new src
-           rip.yydebug = $d
-           rip.parse
+  sexp = nil
 
-           if rip.error? then
-             warn "skipping"
-             next
-           end
-         end
+  if $b then
+    sexp = Ripper.sexp src
+  else
+    rip = MySexpBuilder.new src
+    rip.yydebug = $d
+    sexp = rip.parse
+
+    if rip.error? then
+      warn "skipping"
+      next
+    end
+  end
 
   puts "accept"
 
